YouTube Region Availability Checker
Pricing
from $2.99 / 1,000 region availabilities
YouTube Region Availability Checker
Check public YouTube video playability in selected ISO 3166-1 country contexts and return per-country availability evidence, restrictions, and video metadata without inferring untested coverage.
Pricing
from $2.99 / 1,000 region availabilities
Rating
0.0
(0)
Developer
w3crawler
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
YouTube Public Region Restriction Checker
Compare the playability status returned by public YouTube watch pages for a bounded list of country contexts. The actor requests https://www.youtube.com/watch?v=...&hl=en&gl=XX, parses the embedded public player response, and records only countries that returned an observable player status.
Dataset
Each video record contains the submitted reference, video/channel metadata, description, keywords, duration, views, thumbnails, captions and streaming-format counts when the public response exposes them, plus per-country playability observations. It also includes requested/tested/failed country counts, accessible and blocked lists, percentages, baseline status, evidence mode, and source provenance.
Country evidence is labeled explicitly:
country-matched Apify Proxy IP plus public watch-page gl parametermeans an Apify country route was requested for that country.Apify Proxy IP plus public watch-page gl parameter; country match not independently verifiedmeans a proxy was used without a country-specific route.public watch-page gl parameter only; request IP country not controlledmeans only the public page's locale parameter was varied.
These are point-in-time observations, not proof of permanent global licensing or availability. A mixed result means the tested public responses differed; it does not infer untested countries.
Blocked or failed country requests are summarized in bounded run logs and OUTPUT; diagnostic rows are never written to the dataset. OUTPUT.status reports SUCCEEDED when rows were saved or checks completed without observations, and FAILED only when an actual failure occurs before any row is saved. dataStatus distinguishes COMPLETE, PARTIAL, NO_RESULTS, and FAILED.
Input
| Field | Default | Description |
|---|---|---|
videoUrls | required | Public YouTube watch, Shorts, embed, youtu.be URLs, or 11-character IDs. |
countryCodes | US, GB, DE, IN, JP | ISO alpha-2 country contexts, 1–20. |
maxItems | 10 | Maximum unique videos, 1–50. |
proxyConfiguration | none | Optional account-authorized Apify Proxy. Country-specific routes are used when the configuration requests Apify Proxy. |
enableProxyFallback | true | After a direct page failure, try one ordinary Apify Proxy route. |
requestDelayMs / requestTimeoutSecs | 250 / 60 | Pacing and bounded page timeout. |
Example
{"videoUrls": ["https://www.youtube.com/watch?v=dQw4w9WgXcQ"],"countryCodes": ["US", "GB", "DE"],"maxItems": 1,"enableProxyFallback": true,"proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"]}}
Safety and limits
- Uses a fixed ordinary User-Agent and public watch-page HTML only.
- Does not call
youtubeiendpoints, rotate client identities, spoof fingerprints, patch browser stealth, bypass CAPTCHA/login, or store cookies, credentials, proxy URLs, or request identity fields in dataset records. - YouTube may return a generic or blocked response even when a video is public. The actor preserves that limitation in logs and OUTPUT rather than treating missing data as unrestricted or unavailable.
- Proxy usage consumes account resources; a country route is evidence of the requested route, not an independently measured IP assertion.
Local verification
npm testnpx --yes apify validate-schema$env:APIFY_LOCAL_STORAGE_DIR = 'storage'npx --yes apify run --purge --input-file INPUT.jsonnode validate-datasets.js