How to scrape YouTube Video Sponsors with Swift
Video Sponsors This tutorial gets it with a short Swift program and the YouTube Video Sponsors API. Each successful call costs 1 credit; errors and not-found answers are free.
1. Get an API key
Sign in to get a key and 100 free credits, no card. Then put the key in an environment variable so it stays out of your code:
export SCRAPEIO_API_KEY="your_key_here"2. Set up Swift
Swift 5.7 or newer (macOS or Linux)3. Write the code
Save this as main.swift. Replace PASTE_URL_HERE with a real url.
import Foundation
#if canImport(FoundationNetworking)
import FoundationNetworking
#endif
var components = URLComponents(string: "https://scrapeio.com/v1/youtube/video/sponsors")!
components.queryItems = [URLQueryItem(name: "url", value: "PASTE_URL_HERE")]
var request = URLRequest(url: components.url!)
request.setValue(ProcessInfo.processInfo.environment["SCRAPEIO_API_KEY"], forHTTPHeaderField: "x-api-key")
let done = DispatchSemaphore(value: 0)
URLSession.shared.dataTask(with: request) { data, response, error in
defer { done.signal() }
guard let data = data, (response as? HTTPURLResponse)?.statusCode == 200 else {
print("Request failed:", error?.localizedDescription ?? "HTTP \((response as? HTTPURLResponse)?.statusCode ?? 0)")
return
}
print(String(data: data, encoding: .utf8) ?? "")
}.resume()
done.wait()4. Run it
swift main.swiftThe response has the same envelope on every endpoint: success, cached, credits_used, credits_remaining and data. Shared fields such as handle, followers, plays, likes and created_at have the same names on every platform.
Parameters
| Name | Type | Description |
|---|---|---|
url (required) | string | YouTube video or short URL |
language | string | 2 letter language code used for transcript lookup, ie 'en', 'es', 'fr' etc. |
Errors and what you pay
| Status | Meaning | Charged |
|---|---|---|
200 | Success | Yes, unless cached |
400 | A parameter is missing or wrong | No |
401 | The key is missing or invalid | No |
402 | Not enough credits | No |
403 | The account or post is private | No |
404 | Not found on the platform | No |
429 | More than 300 requests a minute | No |
502 | Every source is down; retry shortly | No |
Same endpoint in other languages
Python · Node.js · JavaScript · TypeScript · Go · Rust · Java · C# · PHP · Ruby · Kotlin · R
Prefer no code?
Connect the MCP server to Claude Code, Cursor or Codex and ask in plain English. The agent uses call_endpoint with path /v1/youtube/video/sponsors for you.
100 free credits, no card. Credits never expire.
Get API keyMore YouTube tutorials in Swift
- How to scrape YouTube Channel with Swift
- How to scrape YouTube Channel Videos with Swift
- How to scrape YouTube Video with Swift
- How to scrape YouTube Comments with Swift
- How to scrape YouTube Search with Swift
- How to scrape YouTube Download with Swift
- How to scrape YouTube Transcript with Swift
- How to scrape YouTube Playlist with Swift
- How to scrape YouTube Channel Playlists with Swift
- How to scrape YouTube Channel Shorts with Swift
- How to scrape YouTube Channel Lives with Swift
- How to scrape YouTube Comment Replies with Swift
- How to scrape YouTube Search Typeahead with Swift
- How to scrape YouTube Community Posts with Swift
- How to scrape YouTube Community Post with Swift
- How to scrape YouTube Channel Search with Swift
- How to scrape YouTube Search Hashtag with Swift
- How to scrape YouTube Shorts Trending with Swift