{"openapi":"3.1.0","info":{"title":"Hirescrape Scrapers","version":"1.0.0","description":"Pay-per-call web scrapers for AI agents. 5 tools covering Reddit, job boards (LinkedIn/Indeed/Glassdoor/+5), Google Maps, TikTok/Douyin/Bilibili, and multi-platform trend research. Both x402 (Base USDC) and MPP (Tempo) payment protocols supported.","x-guidance":"Discover tools at GET /openapi.json. Every POST /api/tools/{tool} returns HTTP 402 if no payment header is present, with BOTH x402 and MPP challenges — pick your protocol. Pay the advertised amount, resubmit with the payment header, receive the dataset plus a payment receipt. Pricing is dynamic (min–max in the manifest) and a concrete quote is returned in each 402 body. No accounts, no API keys."},"servers":[{"url":"http://localhost:3000"}],"x-discovery":{"ownershipProofs":[]},"paths":{"/api/tools/reddit":{"post":{"operationId":"scrape_reddit","summary":"Reddit Deep Scraper","description":"Scrape Reddit posts, comments, AI Answers, subreddits, and search. TLS fingerprinting, no API key.","tags":["Social"],"x-payment-info":{"price":{"mode":"dynamic","currency":"USD","min":"0.020000","max":"0.520000"},"protocols":[{"x402":{"network":"base-sepolia","asset":"USDC"}},{"mpp":{"method":"usdc","intent":"scrape","currency":"USD"}}]},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"action":{"type":"string","description":"Choose your action — then scroll down and fill only the fields marked for that action:\n\n• **Scrape Subreddit** → ✅ Subreddit\n• **Search Posts** → ✅ Query + ⚠️ Subreddit (optional)\n• **Search Comments** → ✅ Query + ⚠️ Subreddit (optional)\n• **Find Subreddits** → ✅ Query\n• **Fetch Post** → ✅ Post URL\n• **Reddit AI Answers** → ✅ Query","enum":["scrape_subreddit","search_posts","search_comments","search_subreddits","fetch_post","reddit_answers"],"default":"scrape_subreddit","title":"What do you want to scrape?"},"subreddit":{"type":"string","description":"**Subreddit name without the r/ prefix**\n\n✅ Required for: Scrape Subreddit\n⚠️ Optional for: Search Posts, Search Comments\n❌ Ignore for: Find Subreddits, Fetch Post, Reddit AI Answers\n\nExample: `technology` (not `r/technology`)","title":"Subreddit Name"},"query":{"type":"string","description":"**Keyword to search or question to ask**\n\n✅ Required for: Search Posts, Search Comments, Find Subreddits, Reddit AI Answers\n❌ Ignore for: Scrape Subreddit, Fetch Post\n\nExamples:\n• `best web scraping tools 2026`\n• `how to learn Python`\n• `AI automation`","title":"Search Query / Question"},"postUrl":{"type":"string","description":"**Full Reddit post URL**\n\n✅ Required for: Fetch Single Post\n❌ Ignore for: All other actions\n\nExample: `https://www.reddit.com/r/technology/comments/abc123/my_post/`","title":"Post URL"},"sort":{"type":"string","description":"**How to sort results**\n\nFor Scrape Subreddit:\n• 🔥 **hot** (trending now)\n• ✨ **new** (newest first)\n• 🏆 **top** (highest rated)\n• 📈 **rising** (gaining traction)\n• ⚡ **controversial** (most debated)\n\nFor Search:\n• 🎯 **relevance** (best match)\n• ✨ **new** (newest first)\n• 🏆 **top** (highest rated)\n• 💬 **comments** (most discussed)","enum":["hot","new","top","rising","controversial","relevance","comments"],"default":"hot","title":"Sort Order"},"timeFilter":{"type":"string","description":"**Time range for results**\n\n⚠️ Only applies when Sort = **top** or **controversial**\n\nOptions: past hour, day, week, month, year, or all time","enum":["hour","day","week","month","year","all"],"default":"week","title":"Time Filter"},"limit":{"type":"integer","description":"**Maximum number of posts/results to return**\n\n⚠️ Higher = more data but slower and costs more\n💰 Each post with comments costs more than posts only\n\nRecommended:\n• 🟢 Quick test: 10-25\n• 🟡 Normal: 50-100\n• 🔴 Large: 200-500","default":50,"minimum":1,"maximum":500,"title":"Max Results"},"includeComments":{"type":"boolean","description":"**Fetch full comment trees for each post**\n\n✅ Enabled: Get complete discussions with nested replies\n❌ Disabled: Posts only (faster, cheaper)\n\n⚠️ Only applies to: **Scrape Subreddit**\n💰 Comments significantly increase cost and time\n📊 A post with 500 comments = 500 API calls","default":false,"title":"Include Comments"},"threads":{"type":"integer","description":"**Number of parallel workers**\n\n🟢 Low (1-5): Slower but safer, less proxy bandwidth\n🟡 Medium (6-10): Balanced speed and reliability\n🔴 High (11-20): Fastest but uses more proxy bandwidth\n\n⚠️ Only applies to: **Scrape Subreddit**, **Find Subreddits**\n💡 Higher = faster but may trigger rate limits","default":10,"minimum":1,"maximum":20,"title":"Concurrency (Threads)"},"proxyConfiguration":{"type":"object","description":"**Reddit requires residential proxies for best results**\n\n📌 **Default Setup (Recommended):**\n• ✅ Use Residential Proxy\n• 🏠 Residential proxies (best success rate)\n• 💰 Costs: $8/GB\n\n💡 **Alternative:**\n• 🏢 BUYPROXIES94952 (free datacenter, 5 IPs)\n• ⚠️ Higher chance of Reddit blocks\n• 💵 Free but less reliable","default":{"useProxy":true,"proxyGroups":["RESIDENTIAL"]},"title":"Proxy Configuration"}},"required":["action"]}}}},"responses":{"200":{"description":"Scraped dataset.","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","description":"Array of scraped items. Shape varies per tool — see each tool's documentation.","items":{"type":"object"}},"runId":{"type":"string","description":"Run ID for debugging/audit."},"duration":{"type":"integer","description":"Run duration in seconds."}},"required":["items"]}}}},"402":{"description":"Payment Required. The response includes an x402 `PAYMENT-REQUIRED` header and an MPP `WWW-Authenticate: Payment` header; pick whichever protocol your wallet supports."}}}},"/api/tools/jobs":{"post":{"operationId":"scrape_jobs","summary":"Multi Job Board Scraper","description":"Scrape jobs from LinkedIn, Indeed, Glassdoor, Google Jobs, ZipRecruiter, Bayt, BDJobs, and Naukri in one call.","tags":["Jobs"],"x-payment-info":{"price":{"mode":"dynamic","currency":"USD","min":"0.050000","max":"1.650000"},"protocols":[{"x402":{"network":"base-sepolia","asset":"USDC"}},{"mpp":{"method":"usdc","intent":"scrape","currency":"USD"}}]},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"searchTerm":{"type":"string","description":"Job title, keyword, or skill to search for. Examples: 'software engineer', 'data analyst', 'python developer', 'product manager'","title":"Search Term"},"location":{"type":"string","description":"City, state, or country to search in. Examples: 'New York', 'London', 'San Francisco, CA', 'Remote'. Leave empty to search globally.","title":"Location"},"sites":{"type":"array","description":"Which job boards to scrape. Choose from: linkedin, indeed, glassdoor, google, zip_recruiter, bayt, bdjobs, naukri. Defaults to all 8 boards.","default":["linkedin","indeed","glassdoor","google","zip_recruiter","bayt","bdjobs","naukri"],"items":{"type":"string"},"title":"Job Boards"},"maxResults":{"type":"integer","description":"Maximum number of job listings to scrape per job board (1–100). Total results = maxResults × number of sites selected.","default":20,"minimum":1,"maximum":100,"title":"Max Results Per Site"},"isRemote":{"type":"boolean","description":"Filter to only return remote job listings. Cannot be combined with hoursOld on Indeed.","default":false,"title":"Remote Jobs Only"},"jobType":{"type":"string","description":"Filter by employment type. Leave as 'Any' to return all types. Note: Cannot be combined with hoursOld on Indeed.","enum":["","fulltime","parttime","contract","internship","temporary"],"default":"","title":"Job Type"},"hoursOld":{"type":"integer","description":"Only return jobs posted within the last N hours. Examples: 24 = last 24 hours, 72 = last 3 days, 168 = last week. Leave empty for all time. ⚠️ Cannot be combined with easyApply on LinkedIn or Indeed.","minimum":1,"maximum":8760,"title":"Posted Within (hours)"},"countryIndeed":{"type":"string","description":"Country code for Indeed and Glassdoor searches. Examples: usa, uk, canada, australia, germany, france, india, singapore, uae. Full list: https://github.com/speedyapply/JobSpy","default":"usa","title":"Country (Indeed & Glassdoor)"},"googleSearchTerm":{"type":"string","description":"Custom search term for Google Jobs only. For best results: open Google Jobs in your browser → apply your filters → copy the exact search query shown. Leave empty to use the main Search Term above.","title":"Google Jobs Search Term"},"distance":{"type":"integer","description":"Search radius in miles from the specified location. Use 0 for exact location only.","default":50,"minimum":0,"maximum":200,"title":"Search Radius (miles)"},"offset":{"type":"integer","description":"Skip the first N results — useful for paginating through large result sets. Example: set offset=20 on the second run to get the next page.","minimum":0,"title":"Results Offset (Pagination)"},"easyApply":{"type":"boolean","description":"Only return jobs that can be applied to directly on the job board (one-click / quick apply). ⚠️ Cannot be combined with hoursOld on LinkedIn or Indeed.","default":false,"title":"Easy Apply Only"},"linkedinFetchDescription":{"type":"boolean","description":"Fetch complete job descriptions and direct apply URLs from LinkedIn. Enables richer data but increases the number of requests made (slower + more proxy usage).","default":false,"title":"LinkedIn: Fetch Full Descriptions"},"linkedinCompanyIds":{"type":"array","description":"Restrict LinkedIn search to specific companies by their LinkedIn company ID. Find IDs in the company's LinkedIn URL. Example: [\"1441\", \"2382910\"] for Google and Apple. Leave empty to search all companies.","items":{"type":"string"},"title":"LinkedIn: Target Company IDs"},"descriptionFormat":{"type":"string","description":"Format for job description text in the output. Markdown is cleaner for reading; HTML preserves original styling.","enum":["markdown","html"],"default":"markdown","title":"Description Format"},"enforceAnnualSalary":{"type":"boolean","description":"Convert all salary figures to annual equivalents. Hourly → × 2080, monthly → × 12. Makes salary comparison across jobs easier.","default":false,"title":"Normalize to Annual Salary"},"userAgent":{"type":"string","description":"Override the default browser User-Agent header. Useful if a specific job board is blocking the default agent. Leave empty to use the built-in default.","title":"Custom User Agent"},"caCert":{"type":"string","description":"File path to a CA certificate for proxy authentication. Only needed for enterprise proxies that require certificate-based auth. Leave empty if not required.","title":"CA Certificate Path (Proxy Auth)"},"proxyConfiguration":{"type":"object","description":"Proxy settings. ⚠️ Residential proxies are strongly recommended for LinkedIn (rate-limited after ~100 results per IP). Datacenter proxies work for Indeed and Google Jobs.","default":{"useProxy":true,"proxyGroups":["RESIDENTIAL"]},"title":"Proxy Configuration"}},"required":["searchTerm"]}}}},"responses":{"200":{"description":"Scraped dataset.","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","description":"Array of scraped items. Shape varies per tool — see each tool's documentation.","items":{"type":"object"}},"runId":{"type":"string","description":"Run ID for debugging/audit."},"duration":{"type":"integer","description":"Run duration in seconds."}},"required":["items"]}}}},"402":{"description":"Payment Required. The response includes an x402 `PAYMENT-REQUIRED` header and an MPP `WWW-Authenticate: Payment` header; pick whichever protocol your wallet supports."}}}},"/api/tools/google-maps":{"post":{"operationId":"scrape_google_maps","summary":"Google Maps Scraper","description":"Extract business listings — name, address, phone, website, reviews, hours, coordinates.","tags":["Lead Gen"],"x-payment-info":{"price":{"mode":"dynamic","currency":"USD","min":"0.030000","max":"1.530000"},"protocols":[{"x402":{"network":"base-sepolia","asset":"USDC"}},{"mpp":{"method":"usdc","intent":"scrape","currency":"USD"}}]},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"query":{"type":"string","description":"**What to search on Google Maps**\n\nExamples:\n• `restaurants in New York`\n• `dentists in London`\n• `coffee shops near Times Square`\n• `plumbers in Austin Texas`\n• `hotels in Paris France`","title":"Search Query"},"maxResults":{"type":"integer","description":"**Maximum number of places to scrape**\n\n🟢 Quick test: 5–20\n🟡 Normal: 20–100\n🔴 Large: 100–500\n\n⚠️ Google Maps shows ~120 results per search query. Use a specific location for more focused results.","default":20,"minimum":1,"maximum":500,"title":"Max Results"},"concurrency":{"type":"integer","description":"**Number of places to scrape in parallel**\n\n⚡ Higher = faster. Default 5 works well with residential proxies.\n\n🔴 Warning: above 10 may trigger rate limiting.","default":5,"minimum":1,"maximum":10,"title":"Concurrency"},"scrapeReviews":{"type":"boolean","description":"**Extract top 10 reviews for each place**\n\n✅ Enabled: Get reviewer name, rating, date, and review text\n❌ Disabled: Skip reviews (faster, cheaper)\n\n⚠️ Adds ~3s per place","default":false,"title":"Scrape Reviews"},"proxyConfiguration":{"type":"object","description":"**Proxy settings for reliable scraping**\n\n📌 Recommended: Residential Proxy Residential proxies\n• Best success rate against Google's anti-bot\n• 💰 ~$8/GB\n\n💡 Tip: Use country-specific sessions to get localized results","default":{"useProxy":true,"proxyGroups":["RESIDENTIAL"]},"title":"Proxy Configuration"}},"required":["query"]}}}},"responses":{"200":{"description":"Scraped dataset.","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","description":"Array of scraped items. Shape varies per tool — see each tool's documentation.","items":{"type":"object"}},"runId":{"type":"string","description":"Run ID for debugging/audit."},"duration":{"type":"integer","description":"Run duration in seconds."}},"required":["items"]}}}},"402":{"description":"Payment Required. The response includes an x402 `PAYMENT-REQUIRED` header and an MPP `WWW-Authenticate: Payment` header; pick whichever protocol your wallet supports."}}}},"/api/tools/tiktok":{"post":{"operationId":"scrape_tiktok","summary":"TikTok · Douyin · Bilibili Scraper","description":"Videos, profiles, comments, likes, live rooms, trending across all three platforms.","tags":["Social"],"x-payment-info":{"price":{"mode":"dynamic","currency":"USD","min":"0.020000","max":"1.020000"},"protocols":[{"x402":{"network":"base-sepolia","asset":"USDC"}},{"mpp":{"method":"usdc","intent":"scrape","currency":"USD"}}]},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"mode":{"type":"string","description":"What to scrape. Each mode supports different platforms — see the table in the README.","enum":["video_detail","user_posts","user_profile","video_comments","user_likes","live_info","trending"],"default":"video_detail","title":"Mode"},"platform":{"type":"string","description":"Target platform. Use 'auto' to detect from the URL automatically.","enum":["auto","tiktok","douyin","bilibili"],"default":"auto","title":"Platform"},"url":{"type":"string","description":"A single URL — video, user profile, live room, or hot feed page. Use this OR 'urls' below for bulk mode.","title":"URL"},"urls":{"type":"array","description":"List of URLs for bulk scraping. One URL per line. Leave empty if using 'url' above.","items":{"type":"string"},"title":"URLs (bulk)"},"maxItems":{"type":"integer","description":"Maximum items to return per input URL (for paginated modes: user_posts, video_comments, user_likes, trending). Ignored for single-item modes.","default":100,"minimum":1,"maximum":5000,"title":"Max Items"},"includeComments":{"type":"boolean","description":"When mode=video_detail, also fetch the first page of comments. Adds one extra API call per video.","default":false,"title":"Include Comments (video_detail mode)"},"downloadVideos":{"type":"boolean","description":"Include direct MP4 URLs without watermark in the output (available for TikTok/Douyin).","default":true,"title":"Include No-Watermark Video URLs"},"cookie":{"type":"string","description":"Optional browser cookie string for gated content (private user collections, some Douyin feeds). Paste the full Cookie header. Leave empty to run without login.","title":"Cookie (optional)"},"proxyConfiguration":{"type":"object","description":"Proxy settings. Residential proxies are strongly recommended for high-volume scraping and to bypass regional restrictions.","default":{"useProxy":true,"proxyGroups":["RESIDENTIAL"]},"title":"Proxy Configuration"}},"required":["mode"]}}}},"responses":{"200":{"description":"Scraped dataset.","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","description":"Array of scraped items. Shape varies per tool — see each tool's documentation.","items":{"type":"object"}},"runId":{"type":"string","description":"Run ID for debugging/audit."},"duration":{"type":"integer","description":"Run duration in seconds."}},"required":["items"]}}}},"402":{"description":"Payment Required. The response includes an x402 `PAYMENT-REQUIRED` header and an MPP `WWW-Authenticate: Payment` header; pick whichever protocol your wallet supports."}}}},"/api/tools/trend-intel":{"post":{"operationId":"research_topic","summary":"30Days Trend Intel","description":"Research a topic across Reddit, TikTok, YouTube, Instagram, HN, Polymarket. Ranked + clustered.","tags":["Research"],"x-payment-info":{"price":{"mode":"dynamic","currency":"USD","min":"0.150000","max":"1.500000"},"protocols":[{"x402":{"network":"base-sepolia","asset":"USDC"}},{"mpp":{"method":"usdc","intent":"scrape","currency":"USD"}}]},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"topic":{"type":"string","description":"Any topic, person, company, product, event, or trend. Examples: 'OpenAI vs Anthropic', 'Taylor Swift Eras Tour', 'best CRM tools 2026', 'Peter Steinberger'","title":"Research Topic"},"depth":{"type":"string","description":"Quick ($0.15) = Reddit + HN + Polymarket. Standard ($0.35) = + TikTok, Instagram, YouTube. Deep ($0.75) = more results per source. Full ($1.50) = everything + Perplexity web grounding.","enum":["quick","standard","deep","full"],"default":"standard","title":"Report Depth"},"timeframe":{"type":"string","description":"How far back to search","enum":["7d","14d","30d","90d"],"default":"30d","title":"Timeframe"},"sources":{"type":"array","description":"Select specific platforms to search, or leave empty for all available","items":{"type":"string","enum":["reddit","tiktok","instagram","youtube","hackernews","polymarket","github","threads","pinterest","bluesky"],"enumTitles":["Reddit","TikTok","Instagram","YouTube","Hacker News","Polymarket","GitHub","Threads","Pinterest","Bluesky"]},"title":"Sources (optional — leave empty for all)"},"aiSynthesis":{"type":"boolean","description":"Generate an AI-powered executive summary with key findings, sentiment, and best takes","default":true,"title":"AI Synthesis"},"outputFormat":{"type":"string","description":"JSON for programmatic use, Markdown for readable reports","enum":["json","markdown"],"default":"json","title":"Output Format"},"proxyConfiguration":{"type":"object","description":"Residential proxies prevent Reddit/platform 403 blocks.\n\n📌 Default: Residential Proxy ($8/GB)\n💡 Alternative: BUYPROXIES94952 (free datacenter, less reliable)","default":{"useProxy":true,"proxyGroups":["RESIDENTIAL"]},"title":"Proxy Configuration"}},"required":["topic"]}}}},"responses":{"200":{"description":"Scraped dataset.","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","description":"Array of scraped items. Shape varies per tool — see each tool's documentation.","items":{"type":"object"}},"runId":{"type":"string","description":"Run ID for debugging/audit."},"duration":{"type":"integer","description":"Run duration in seconds."}},"required":["items"]}}}},"402":{"description":"Payment Required. The response includes an x402 `PAYMENT-REQUIRED` header and an MPP `WWW-Authenticate: Payment` header; pick whichever protocol your wallet supports."}}}},"/api/tools/instagram":{"post":{"operationId":"scrape_instagram","summary":"Instagram Scraper","description":"Instagram profiles, posts, reels, comments, highlights, transcripts, reel search.","tags":["Social"],"x-payment-info":{"price":{"mode":"dynamic","currency":"USD","min":"0.050000","max":"2.000000"},"protocols":[{"x402":{"network":"base-sepolia","asset":"USDC"}},{"mpp":{"method":"usdc","intent":"scrape","currency":"USD"}}]},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"mode":{"type":"string","description":"Which endpoint to call. Options: profile, basic_profile, user_posts, post, transcript, search_reels, post_comments, user_reels, highlights, highlight_detail, song_reels, embed.","enum":["profile","basic_profile","user_posts","post","transcript","search_reels","post_comments","user_reels","highlights","highlight_detail","song_reels","embed"],"default":"profile"},"handle":{"type":"string","description":"Username / handle (without @)."},"trim":{"type":"boolean","description":"Return a condensed response."},"userId":{"type":"string","description":"Instagram user ID."},"next_max_id":{"type":"string","description":"Pagination token."},"url":{"type":"string","description":"Full URL of the target object."},"region":{"type":"string","description":"Proxy / market region (e.g. US)."},"download_media":{"type":"boolean","description":"Return permanent media URLs."},"query":{"type":"string","description":"Search keyword."},"date_posted":{"type":"string","description":"Posting timeframe."},"page":{"type":"integer","description":"Page number (default 1)."},"cursor":{"type":"string","description":"Pagination cursor."},"user_id":{"type":"string","description":"Platform user ID (often faster than handle)."},"max_id":{"type":"string","description":"Pagination token."},"id":{"type":"string","description":"Object ID (ad / highlight / etc)."},"audio_id":{"type":"string","description":"Instagram audio/song ID."},"limit":{"type":"integer","description":"Max items to collect (applies to paginated modes).","default":20,"minimum":1,"maximum":500}}}}}},"responses":{"200":{"description":"Scraped dataset.","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","description":"Array of scraped items. Shape varies per tool — see each tool's documentation.","items":{"type":"object"}},"runId":{"type":"string","description":"Run ID for debugging/audit."},"duration":{"type":"integer","description":"Run duration in seconds."}},"required":["items"]}}}},"402":{"description":"Payment Required. The response includes an x402 `PAYMENT-REQUIRED` header and an MPP `WWW-Authenticate: Payment` header; pick whichever protocol your wallet supports."}}}},"/api/tools/youtube":{"post":{"operationId":"scrape_youtube","summary":"YouTube Scraper","description":"YouTube channels, videos, shorts, transcripts, comments, keyword + hashtag search, playlists, community posts.","tags":["Social"],"x-payment-info":{"price":{"mode":"dynamic","currency":"USD","min":"0.050000","max":"2.000000"},"protocols":[{"x402":{"network":"base-sepolia","asset":"USDC"}},{"mpp":{"method":"usdc","intent":"scrape","currency":"USD"}}]},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"mode":{"type":"string","description":"Which endpoint to call. Options: channel, channel_videos, channel_shorts, video, transcript, search, search_hashtag, video_comments, comment_replies, trending_shorts, playlist, community_post.","enum":["channel","channel_videos","channel_shorts","video","transcript","search","search_hashtag","video_comments","comment_replies","trending_shorts","playlist","community_post"],"default":"channel"},"channelId":{"type":"string","description":"YouTube channel ID."},"handle":{"type":"string","description":"Username / handle (without @)."},"url":{"type":"string","description":"Full URL of the target object."},"sort":{"type":"string","description":"Sort order (depends on endpoint)."},"continuationToken":{"type":"string","description":"Pagination token."},"includeExtras":{"type":"boolean","description":"Include engagement + full descriptions."},"language":{"type":"string","description":"2-letter language code."},"query":{"type":"string","description":"Search keyword."},"uploadDate":{"type":"string","description":"Upload time filter."},"sortBy":{"type":"string","description":"Sort key (depends on endpoint)."},"filter":{"type":"string","description":"Content filter (e.g. shorts)."},"region":{"type":"string","description":"Proxy / market region (e.g. US)."},"hashtag":{"type":"string","description":"Hashtag (without #)."},"type":{"type":"string","description":"Content type (all or shorts)."},"order":{"type":"string","description":"Comment order: top or newest."},"playlist_id":{"type":"string","description":"YouTube playlist ID."},"limit":{"type":"integer","description":"Max items to collect (applies to paginated modes).","default":20,"minimum":1,"maximum":500}}}}}},"responses":{"200":{"description":"Scraped dataset.","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","description":"Array of scraped items. Shape varies per tool — see each tool's documentation.","items":{"type":"object"}},"runId":{"type":"string","description":"Run ID for debugging/audit."},"duration":{"type":"integer","description":"Run duration in seconds."}},"required":["items"]}}}},"402":{"description":"Payment Required. The response includes an x402 `PAYMENT-REQUIRED` header and an MPP `WWW-Authenticate: Payment` header; pick whichever protocol your wallet supports."}}}},"/api/tools/linkedin":{"post":{"operationId":"scrape_linkedin","summary":"LinkedIn Scraper","description":"LinkedIn person profiles, company pages, paginated company posts, individual post details.","tags":["Social"],"x-payment-info":{"price":{"mode":"dynamic","currency":"USD","min":"0.050000","max":"2.000000"},"protocols":[{"x402":{"network":"base-sepolia","asset":"USDC"}},{"mpp":{"method":"usdc","intent":"scrape","currency":"USD"}}]},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"mode":{"type":"string","description":"Which endpoint to call. Options: profile, company, company_posts, post.","enum":["profile","company","company_posts","post"],"default":"profile"},"url":{"type":"string","description":"Full URL of the target object."},"page":{"type":"integer","description":"Page number (default 1)."},"limit":{"type":"integer","description":"Max items to collect (applies to paginated modes).","default":20,"minimum":1,"maximum":500}}}}}},"responses":{"200":{"description":"Scraped dataset.","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","description":"Array of scraped items. Shape varies per tool — see each tool's documentation.","items":{"type":"object"}},"runId":{"type":"string","description":"Run ID for debugging/audit."},"duration":{"type":"integer","description":"Run duration in seconds."}},"required":["items"]}}}},"402":{"description":"Payment Required. The response includes an x402 `PAYMENT-REQUIRED` header and an MPP `WWW-Authenticate: Payment` header; pick whichever protocol your wallet supports."}}}},"/api/tools/facebook":{"post":{"operationId":"scrape_facebook","summary":"Facebook Scraper","description":"Facebook profiles, posts, photos, reels, group posts, comments, transcripts.","tags":["Social"],"x-payment-info":{"price":{"mode":"dynamic","currency":"USD","min":"0.050000","max":"2.000000"},"protocols":[{"x402":{"network":"base-sepolia","asset":"USDC"}},{"mpp":{"method":"usdc","intent":"scrape","currency":"USD"}}]},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"mode":{"type":"string","description":"Which endpoint to call. Options: profile, profile_reels, profile_photos, profile_posts, group_posts, post, post_transcript, post_comments.","enum":["profile","profile_reels","profile_photos","profile_posts","group_posts","post","post_transcript","post_comments"],"default":"profile"},"url":{"type":"string","description":"Full URL of the target object."},"get_business_hours":{"type":"boolean","description":"Include business hours."},"next_page_id":{"type":"string","description":"Pagination token."},"cursor":{"type":"string","description":"Pagination cursor."},"pageId":{"type":"string","description":"Page or ad-library page ID."},"group_id":{"type":"string","description":"Facebook group ID."},"sort_by":{"type":"string","description":"Sort key (depends on endpoint)."},"get_comments":{"type":"boolean","description":"Include comments in the response."},"get_transcript":{"type":"boolean","description":"Include transcript in the response."},"feedback_id":{"type":"string","description":"Facebook feedback identifier."},"limit":{"type":"integer","description":"Max items to collect (applies to paginated modes).","default":20,"minimum":1,"maximum":500}}}}}},"responses":{"200":{"description":"Scraped dataset.","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","description":"Array of scraped items. Shape varies per tool — see each tool's documentation.","items":{"type":"object"}},"runId":{"type":"string","description":"Run ID for debugging/audit."},"duration":{"type":"integer","description":"Run duration in seconds."}},"required":["items"]}}}},"402":{"description":"Payment Required. The response includes an x402 `PAYMENT-REQUIRED` header and an MPP `WWW-Authenticate: Payment` header; pick whichever protocol your wallet supports."}}}},"/api/tools/twitter":{"post":{"operationId":"scrape_twitter","summary":"X / Twitter Scraper","description":"X (Twitter) profiles, user tweets, tweet details + transcripts, community metadata and tweets.","tags":["Social"],"x-payment-info":{"price":{"mode":"dynamic","currency":"USD","min":"0.050000","max":"2.000000"},"protocols":[{"x402":{"network":"base-sepolia","asset":"USDC"}},{"mpp":{"method":"usdc","intent":"scrape","currency":"USD"}}]},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"mode":{"type":"string","description":"Which endpoint to call. Options: profile, user_tweets, tweet, tweet_transcript, community, community_tweets.","enum":["profile","user_tweets","tweet","tweet_transcript","community","community_tweets"],"default":"profile"},"handle":{"type":"string","description":"Username / handle (without @)."},"trim":{"type":"boolean","description":"Return a condensed response."},"url":{"type":"string","description":"Full URL of the target object."},"limit":{"type":"integer","description":"Max items to collect (applies to paginated modes).","default":20,"minimum":1,"maximum":500}}}}}},"responses":{"200":{"description":"Scraped dataset.","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","description":"Array of scraped items. Shape varies per tool — see each tool's documentation.","items":{"type":"object"}},"runId":{"type":"string","description":"Run ID for debugging/audit."},"duration":{"type":"integer","description":"Run duration in seconds."}},"required":["items"]}}}},"402":{"description":"Payment Required. The response includes an x402 `PAYMENT-REQUIRED` header and an MPP `WWW-Authenticate: Payment` header; pick whichever protocol your wallet supports."}}}},"/api/tools/threads":{"post":{"operationId":"scrape_threads","summary":"Threads Scraper","description":"Meta Threads profiles, user posts, post details, keyword + user search (with date filters).","tags":["Social"],"x-payment-info":{"price":{"mode":"dynamic","currency":"USD","min":"0.050000","max":"2.000000"},"protocols":[{"x402":{"network":"base-sepolia","asset":"USDC"}},{"mpp":{"method":"usdc","intent":"scrape","currency":"USD"}}]},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"mode":{"type":"string","description":"Which endpoint to call. Options: profile, user_posts, post, search, search_users.","enum":["profile","user_posts","post","search","search_users"],"default":"profile"},"handle":{"type":"string","description":"Username / handle (without @)."},"trim":{"type":"boolean","description":"Return a condensed response."},"url":{"type":"string","description":"Full URL of the target object."},"query":{"type":"string","description":"Search keyword."},"start_date":{"type":"string","description":"Start date (YYYY-MM-DD)."},"end_date":{"type":"string","description":"End date (YYYY-MM-DD)."},"limit":{"type":"integer","description":"Max items to collect (applies to paginated modes).","default":20,"minimum":1,"maximum":500}}}}}},"responses":{"200":{"description":"Scraped dataset.","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","description":"Array of scraped items. Shape varies per tool — see each tool's documentation.","items":{"type":"object"}},"runId":{"type":"string","description":"Run ID for debugging/audit."},"duration":{"type":"integer","description":"Run duration in seconds."}},"required":["items"]}}}},"402":{"description":"Payment Required. The response includes an x402 `PAYMENT-REQUIRED` header and an MPP `WWW-Authenticate: Payment` header; pick whichever protocol your wallet supports."}}}},"/api/tools/bluesky":{"post":{"operationId":"scrape_bluesky","summary":"Bluesky Scraper","description":"Bluesky profiles, user posts, individual post details.","tags":["Social"],"x-payment-info":{"price":{"mode":"dynamic","currency":"USD","min":"0.050000","max":"2.000000"},"protocols":[{"x402":{"network":"base-sepolia","asset":"USDC"}},{"mpp":{"method":"usdc","intent":"scrape","currency":"USD"}}]},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"mode":{"type":"string","description":"Which endpoint to call. Options: profile, user_posts, post.","enum":["profile","user_posts","post"],"default":"profile"},"handle":{"type":"string","description":"Username / handle (without @)."},"user_id":{"type":"string","description":"Platform user ID (often faster than handle)."},"url":{"type":"string","description":"Full URL of the target object."},"limit":{"type":"integer","description":"Max items to collect (applies to paginated modes).","default":20,"minimum":1,"maximum":500}}}}}},"responses":{"200":{"description":"Scraped dataset.","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","description":"Array of scraped items. Shape varies per tool — see each tool's documentation.","items":{"type":"object"}},"runId":{"type":"string","description":"Run ID for debugging/audit."},"duration":{"type":"integer","description":"Run duration in seconds."}},"required":["items"]}}}},"402":{"description":"Payment Required. The response includes an x402 `PAYMENT-REQUIRED` header and an MPP `WWW-Authenticate: Payment` header; pick whichever protocol your wallet supports."}}}},"/api/tools/pinterest":{"post":{"operationId":"scrape_pinterest","summary":"Pinterest Scraper","description":"Pinterest keyword search, pin details, user boards, full board contents.","tags":["Social"],"x-payment-info":{"price":{"mode":"dynamic","currency":"USD","min":"0.050000","max":"2.000000"},"protocols":[{"x402":{"network":"base-sepolia","asset":"USDC"}},{"mpp":{"method":"usdc","intent":"scrape","currency":"USD"}}]},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"mode":{"type":"string","description":"Which endpoint to call. Options: search, pin, user_boards, board.","enum":["search","pin","user_boards","board"],"default":"search"},"query":{"type":"string","description":"Search keyword."},"cursor":{"type":"string","description":"Pagination cursor."},"trim":{"type":"boolean","description":"Return a condensed response."},"url":{"type":"string","description":"Full URL of the target object."},"handle":{"type":"string","description":"Username / handle (without @)."},"limit":{"type":"integer","description":"Max items to collect (applies to paginated modes).","default":20,"minimum":1,"maximum":500}}}}}},"responses":{"200":{"description":"Scraped dataset.","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","description":"Array of scraped items. Shape varies per tool — see each tool's documentation.","items":{"type":"object"}},"runId":{"type":"string","description":"Run ID for debugging/audit."},"duration":{"type":"integer","description":"Run duration in seconds."}},"required":["items"]}}}},"402":{"description":"Payment Required. The response includes an x402 `PAYMENT-REQUIRED` header and an MPP `WWW-Authenticate: Payment` header; pick whichever protocol your wallet supports."}}}},"/api/tools/truth-social":{"post":{"operationId":"scrape_truth_social","summary":"Truth Social Scraper","description":"Truth Social profiles, user posts, individual post details.","tags":["Social"],"x-payment-info":{"price":{"mode":"dynamic","currency":"USD","min":"0.050000","max":"2.000000"},"protocols":[{"x402":{"network":"base-sepolia","asset":"USDC"}},{"mpp":{"method":"usdc","intent":"scrape","currency":"USD"}}]},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"mode":{"type":"string","description":"Which endpoint to call. Options: profile, user_posts, post.","enum":["profile","user_posts","post"],"default":"profile"},"handle":{"type":"string","description":"Username / handle (without @)."},"user_id":{"type":"string","description":"Platform user ID (often faster than handle)."},"next_max_id":{"type":"string","description":"Pagination token."},"trim":{"type":"boolean","description":"Return a condensed response."},"url":{"type":"string","description":"Full URL of the target object."},"limit":{"type":"integer","description":"Max items to collect (applies to paginated modes).","default":20,"minimum":1,"maximum":500}}}}}},"responses":{"200":{"description":"Scraped dataset.","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","description":"Array of scraped items. Shape varies per tool — see each tool's documentation.","items":{"type":"object"}},"runId":{"type":"string","description":"Run ID for debugging/audit."},"duration":{"type":"integer","description":"Run duration in seconds."}},"required":["items"]}}}},"402":{"description":"Payment Required. The response includes an x402 `PAYMENT-REQUIRED` header and an MPP `WWW-Authenticate: Payment` header; pick whichever protocol your wallet supports."}}}},"/api/tools/twitch":{"post":{"operationId":"scrape_twitch","summary":"Twitch Scraper","description":"Twitch streamer profiles and clip details.","tags":["Social"],"x-payment-info":{"price":{"mode":"dynamic","currency":"USD","min":"0.050000","max":"2.000000"},"protocols":[{"x402":{"network":"base-sepolia","asset":"USDC"}},{"mpp":{"method":"usdc","intent":"scrape","currency":"USD"}}]},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"mode":{"type":"string","description":"Which endpoint to call. Options: profile, clip.","enum":["profile","clip"],"default":"profile"},"handle":{"type":"string","description":"Username / handle (without @)."},"url":{"type":"string","description":"Full URL of the target object."},"limit":{"type":"integer","description":"Max items to collect (applies to paginated modes).","default":20,"minimum":1,"maximum":500}}}}}},"responses":{"200":{"description":"Scraped dataset.","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","description":"Array of scraped items. Shape varies per tool — see each tool's documentation.","items":{"type":"object"}},"runId":{"type":"string","description":"Run ID for debugging/audit."},"duration":{"type":"integer","description":"Run duration in seconds."}},"required":["items"]}}}},"402":{"description":"Payment Required. The response includes an x402 `PAYMENT-REQUIRED` header and an MPP `WWW-Authenticate: Payment` header; pick whichever protocol your wallet supports."}}}},"/api/tools/kick":{"post":{"operationId":"scrape_kick","summary":"Kick Scraper","description":"Kick.com clip details.","tags":["Social"],"x-payment-info":{"price":{"mode":"dynamic","currency":"USD","min":"0.050000","max":"2.000000"},"protocols":[{"x402":{"network":"base-sepolia","asset":"USDC"}},{"mpp":{"method":"usdc","intent":"scrape","currency":"USD"}}]},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"mode":{"type":"string","description":"Which endpoint to call. Options: clip.","enum":["clip"],"default":"clip"},"url":{"type":"string","description":"Full URL of the target object."},"limit":{"type":"integer","description":"Max items to collect (applies to paginated modes).","default":20,"minimum":1,"maximum":500}}}}}},"responses":{"200":{"description":"Scraped dataset.","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","description":"Array of scraped items. Shape varies per tool — see each tool's documentation.","items":{"type":"object"}},"runId":{"type":"string","description":"Run ID for debugging/audit."},"duration":{"type":"integer","description":"Run duration in seconds."}},"required":["items"]}}}},"402":{"description":"Payment Required. The response includes an x402 `PAYMENT-REQUIRED` header and an MPP `WWW-Authenticate: Payment` header; pick whichever protocol your wallet supports."}}}},"/api/tools/snapchat":{"post":{"operationId":"scrape_snapchat","summary":"Snapchat Scraper","description":"Snapchat public user profiles.","tags":["Social"],"x-payment-info":{"price":{"mode":"dynamic","currency":"USD","min":"0.050000","max":"2.000000"},"protocols":[{"x402":{"network":"base-sepolia","asset":"USDC"}},{"mpp":{"method":"usdc","intent":"scrape","currency":"USD"}}]},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"mode":{"type":"string","description":"Which endpoint to call. Options: profile.","enum":["profile"],"default":"profile"},"handle":{"type":"string","description":"Username / handle (without @)."},"limit":{"type":"integer","description":"Max items to collect (applies to paginated modes).","default":20,"minimum":1,"maximum":500}}}}}},"responses":{"200":{"description":"Scraped dataset.","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","description":"Array of scraped items. Shape varies per tool — see each tool's documentation.","items":{"type":"object"}},"runId":{"type":"string","description":"Run ID for debugging/audit."},"duration":{"type":"integer","description":"Run duration in seconds."}},"required":["items"]}}}},"402":{"description":"Payment Required. The response includes an x402 `PAYMENT-REQUIRED` header and an MPP `WWW-Authenticate: Payment` header; pick whichever protocol your wallet supports."}}}},"/api/tools/tiktok-shop":{"post":{"operationId":"scrape_tiktok_shop","summary":"TikTok Shop Scraper","description":"TikTok Shop keyword search, shop product lists, product details + reviews, creator showcases.","tags":["Commerce"],"x-payment-info":{"price":{"mode":"dynamic","currency":"USD","min":"0.050000","max":"2.000000"},"protocols":[{"x402":{"network":"base-sepolia","asset":"USDC"}},{"mpp":{"method":"usdc","intent":"scrape","currency":"USD"}}]},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"mode":{"type":"string","description":"Which endpoint to call. Options: search, products, product, reviews, showcase.","enum":["search","products","product","reviews","showcase"],"default":"search"},"query":{"type":"string","description":"Search keyword."},"page":{"type":"integer","description":"Page number (default 1)."},"region":{"type":"string","description":"Proxy / market region (e.g. US)."},"url":{"type":"string","description":"Full URL of the target object."},"cursor":{"type":"string","description":"Pagination cursor."},"product_id":{"type":"string","description":"Product ID."},"handle":{"type":"string","description":"Username / handle (without @)."},"limit":{"type":"integer","description":"Max items to collect (applies to paginated modes).","default":20,"minimum":1,"maximum":500}}}}}},"responses":{"200":{"description":"Scraped dataset.","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","description":"Array of scraped items. Shape varies per tool — see each tool's documentation.","items":{"type":"object"}},"runId":{"type":"string","description":"Run ID for debugging/audit."},"duration":{"type":"integer","description":"Run duration in seconds."}},"required":["items"]}}}},"402":{"description":"Payment Required. The response includes an x402 `PAYMENT-REQUIRED` header and an MPP `WWW-Authenticate: Payment` header; pick whichever protocol your wallet supports."}}}},"/api/tools/fb-ad-library":{"post":{"operationId":"scrape_fb_ad_library","summary":"Facebook Ad Library Scraper","description":"Meta Ad Library — search ads by keyword or company, get single-ad details, filter by country, status, media type, date range.","tags":["Ads"],"x-payment-info":{"price":{"mode":"dynamic","currency":"USD","min":"0.050000","max":"2.000000"},"protocols":[{"x402":{"network":"base-sepolia","asset":"USDC"}},{"mpp":{"method":"usdc","intent":"scrape","currency":"USD"}}]},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"mode":{"type":"string","description":"Which endpoint to call. Options: ad, search_ads, company_ads, search_companies.","enum":["ad","search_ads","company_ads","search_companies"],"default":"ad"},"id":{"type":"string","description":"Object ID (ad / highlight / etc)."},"url":{"type":"string","description":"Full URL of the target object."},"get_transcript":{"type":"boolean","description":"Include transcript in the response."},"trim":{"type":"boolean","description":"Return a condensed response."},"query":{"type":"string","description":"Search keyword."},"sort_by":{"type":"string","description":"Sort key (depends on endpoint)."},"search_type":{"type":"string","description":"Keyword or exact phrase search."},"ad_type":{"type":"string","description":"All or political/issue ads."},"country":{"type":"string","description":"Country code (e.g. US, GB)."},"status":{"type":"string","description":"ACTIVE / INACTIVE / ALL."},"media_type":{"type":"string","description":"IMAGE / VIDEO / MEME."},"start_date":{"type":"string","description":"Start date (YYYY-MM-DD)."},"end_date":{"type":"string","description":"End date (YYYY-MM-DD)."},"cursor":{"type":"string","description":"Pagination cursor."},"pageId":{"type":"string","description":"Page or ad-library page ID."},"companyName":{"type":"string","description":"Company name."},"language":{"type":"string","description":"2-letter language code."},"limit":{"type":"integer","description":"Max items to collect (applies to paginated modes).","default":20,"minimum":1,"maximum":500}}}}}},"responses":{"200":{"description":"Scraped dataset.","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","description":"Array of scraped items. Shape varies per tool — see each tool's documentation.","items":{"type":"object"}},"runId":{"type":"string","description":"Run ID for debugging/audit."},"duration":{"type":"integer","description":"Run duration in seconds."}},"required":["items"]}}}},"402":{"description":"Payment Required. The response includes an x402 `PAYMENT-REQUIRED` header and an MPP `WWW-Authenticate: Payment` header; pick whichever protocol your wallet supports."}}}},"/api/tools/google-ad-library":{"post":{"operationId":"scrape_google_ad_library","summary":"Google Ad Library Scraper","description":"Google's Ads Transparency Center — advertiser search, full company ad history (with topic/region/date filters), single-ad details.","tags":["Ads"],"x-payment-info":{"price":{"mode":"dynamic","currency":"USD","min":"0.050000","max":"2.000000"},"protocols":[{"x402":{"network":"base-sepolia","asset":"USDC"}},{"mpp":{"method":"usdc","intent":"scrape","currency":"USD"}}]},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"mode":{"type":"string","description":"Which endpoint to call. Options: company_ads, ad, search_advertisers.","enum":["company_ads","ad","search_advertisers"],"default":"company_ads"},"domain":{"type":"string","description":"Company domain."},"advertiser_id":{"type":"string","description":"Advertiser ID."},"topic":{"type":"string","description":"all or political."},"region":{"type":"string","description":"Proxy / market region (e.g. US)."},"start_date":{"type":"string","description":"Start date (YYYY-MM-DD)."},"end_date":{"type":"string","description":"End date (YYYY-MM-DD)."},"get_ad_details":{"type":"boolean","description":"Include full ad details (higher cost)."},"cursor":{"type":"string","description":"Pagination cursor."},"url":{"type":"string","description":"Full URL of the target object."},"query":{"type":"string","description":"Search keyword."},"limit":{"type":"integer","description":"Max items to collect (applies to paginated modes).","default":20,"minimum":1,"maximum":500}}}}}},"responses":{"200":{"description":"Scraped dataset.","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","description":"Array of scraped items. Shape varies per tool — see each tool's documentation.","items":{"type":"object"}},"runId":{"type":"string","description":"Run ID for debugging/audit."},"duration":{"type":"integer","description":"Run duration in seconds."}},"required":["items"]}}}},"402":{"description":"Payment Required. The response includes an x402 `PAYMENT-REQUIRED` header and an MPP `WWW-Authenticate: Payment` header; pick whichever protocol your wallet supports."}}}},"/api/tools/linkedin-ad-library":{"post":{"operationId":"scrape_linkedin_ad_library","summary":"LinkedIn Ad Library Scraper","description":"LinkedIn ads search by company name / ID / keyword with country + date filters, plus single-ad details.","tags":["Ads"],"x-payment-info":{"price":{"mode":"dynamic","currency":"USD","min":"0.050000","max":"2.000000"},"protocols":[{"x402":{"network":"base-sepolia","asset":"USDC"}},{"mpp":{"method":"usdc","intent":"scrape","currency":"USD"}}]},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"mode":{"type":"string","description":"Which endpoint to call. Options: search_ads, ad.","enum":["search_ads","ad"],"default":"search_ads"},"company":{"type":"string","description":"Company name."},"keyword":{"type":"string","description":"Search keyword."},"companyId":{"type":"string","description":"Numeric company ID."},"countries":{"type":"string","description":"Comma-separated country codes."},"startDate":{"type":"string","description":"Start date (YYYY-MM-DD)."},"endDate":{"type":"string","description":"End date (YYYY-MM-DD)."},"paginationToken":{"type":"string","description":"Pagination token."},"url":{"type":"string","description":"Full URL of the target object."},"limit":{"type":"integer","description":"Max items to collect (applies to paginated modes).","default":20,"minimum":1,"maximum":500}}}}}},"responses":{"200":{"description":"Scraped dataset.","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","description":"Array of scraped items. Shape varies per tool — see each tool's documentation.","items":{"type":"object"}},"runId":{"type":"string","description":"Run ID for debugging/audit."},"duration":{"type":"integer","description":"Run duration in seconds."}},"required":["items"]}}}},"402":{"description":"Payment Required. The response includes an x402 `PAYMENT-REQUIRED` header and an MPP `WWW-Authenticate: Payment` header; pick whichever protocol your wallet supports."}}}},"/api/tools/google-search":{"post":{"operationId":"scrape_google_search","summary":"Google Search Scraper","description":"Plain Google search — organic results for a keyword with region, freshness, and pagination.","tags":["Search"],"x-payment-info":{"price":{"mode":"dynamic","currency":"USD","min":"0.050000","max":"2.000000"},"protocols":[{"x402":{"network":"base-sepolia","asset":"USDC"}},{"mpp":{"method":"usdc","intent":"scrape","currency":"USD"}}]},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"mode":{"type":"string","description":"Which endpoint to call. Options: search.","enum":["search"],"default":"search"},"query":{"type":"string","description":"Search keyword."},"region":{"type":"string","description":"Proxy / market region (e.g. US)."},"date_posted":{"type":"string","description":"Posting timeframe."},"page":{"type":"integer","description":"Page number (default 1)."},"limit":{"type":"integer","description":"Max items to collect (applies to paginated modes).","default":20,"minimum":1,"maximum":500}}}}}},"responses":{"200":{"description":"Scraped dataset.","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","description":"Array of scraped items. Shape varies per tool — see each tool's documentation.","items":{"type":"object"}},"runId":{"type":"string","description":"Run ID for debugging/audit."},"duration":{"type":"integer","description":"Run duration in seconds."}},"required":["items"]}}}},"402":{"description":"Payment Required. The response includes an x402 `PAYMENT-REQUIRED` header and an MPP `WWW-Authenticate: Payment` header; pick whichever protocol your wallet supports."}}}},"/api/tools/amazon-shop":{"post":{"operationId":"scrape_amazon_shop","summary":"Amazon Shop Scraper","description":"Amazon storefront / shop page extraction — products, prices, metadata.","tags":["Commerce"],"x-payment-info":{"price":{"mode":"dynamic","currency":"USD","min":"0.050000","max":"2.000000"},"protocols":[{"x402":{"network":"base-sepolia","asset":"USDC"}},{"mpp":{"method":"usdc","intent":"scrape","currency":"USD"}}]},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"mode":{"type":"string","description":"Which endpoint to call. Options: shop.","enum":["shop"],"default":"shop"},"url":{"type":"string","description":"Full URL of the target object."},"limit":{"type":"integer","description":"Max items to collect (applies to paginated modes).","default":20,"minimum":1,"maximum":500}}}}}},"responses":{"200":{"description":"Scraped dataset.","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","description":"Array of scraped items. Shape varies per tool — see each tool's documentation.","items":{"type":"object"}},"runId":{"type":"string","description":"Run ID for debugging/audit."},"duration":{"type":"integer","description":"Run duration in seconds."}},"required":["items"]}}}},"402":{"description":"Payment Required. The response includes an x402 `PAYMENT-REQUIRED` header and an MPP `WWW-Authenticate: Payment` header; pick whichever protocol your wallet supports."}}}},"/api/tools/age-gender":{"post":{"operationId":"detect_age_gender","summary":"Age & Gender Detection","description":"Estimate age bucket + gender from a social profile's avatar.","tags":["Intelligence"],"x-payment-info":{"price":{"mode":"dynamic","currency":"USD","min":"0.050000","max":"2.000000"},"protocols":[{"x402":{"network":"base-sepolia","asset":"USDC"}},{"mpp":{"method":"usdc","intent":"scrape","currency":"USD"}}]},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"mode":{"type":"string","description":"Which endpoint to call. Options: detect.","enum":["detect"],"default":"detect"},"url":{"type":"string","description":"Full URL of the target object."},"limit":{"type":"integer","description":"Max items to collect (applies to paginated modes).","default":20,"minimum":1,"maximum":500}}}}}},"responses":{"200":{"description":"Scraped dataset.","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","description":"Array of scraped items. Shape varies per tool — see each tool's documentation.","items":{"type":"object"}},"runId":{"type":"string","description":"Run ID for debugging/audit."},"duration":{"type":"integer","description":"Run duration in seconds."}},"required":["items"]}}}},"402":{"description":"Payment Required. The response includes an x402 `PAYMENT-REQUIRED` header and an MPP `WWW-Authenticate: Payment` header; pick whichever protocol your wallet supports."}}}},"/api/tools/linktree":{"post":{"operationId":"scrape_linktree","summary":"Linktree Scraper","description":"Extract all links + metadata from a Linktree profile.","tags":["Creator"],"x-payment-info":{"price":{"mode":"dynamic","currency":"USD","min":"0.050000","max":"2.000000"},"protocols":[{"x402":{"network":"base-sepolia","asset":"USDC"}},{"mpp":{"method":"usdc","intent":"scrape","currency":"USD"}}]},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"mode":{"type":"string","description":"Which endpoint to call. Options: default.","enum":["default"],"default":"default"},"url":{"type":"string","description":"Full URL of the target object."},"limit":{"type":"integer","description":"Max items to collect (applies to paginated modes).","default":20,"minimum":1,"maximum":500}}}}}},"responses":{"200":{"description":"Scraped dataset.","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","description":"Array of scraped items. Shape varies per tool — see each tool's documentation.","items":{"type":"object"}},"runId":{"type":"string","description":"Run ID for debugging/audit."},"duration":{"type":"integer","description":"Run duration in seconds."}},"required":["items"]}}}},"402":{"description":"Payment Required. The response includes an x402 `PAYMENT-REQUIRED` header and an MPP `WWW-Authenticate: Payment` header; pick whichever protocol your wallet supports."}}}},"/api/tools/komi":{"post":{"operationId":"scrape_komi","summary":"Komi Scraper","description":"Extract creator link-in-bio data from Komi pages.","tags":["Creator"],"x-payment-info":{"price":{"mode":"dynamic","currency":"USD","min":"0.050000","max":"2.000000"},"protocols":[{"x402":{"network":"base-sepolia","asset":"USDC"}},{"mpp":{"method":"usdc","intent":"scrape","currency":"USD"}}]},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"mode":{"type":"string","description":"Which endpoint to call. Options: default.","enum":["default"],"default":"default"},"url":{"type":"string","description":"Full URL of the target object."},"limit":{"type":"integer","description":"Max items to collect (applies to paginated modes).","default":20,"minimum":1,"maximum":500}}}}}},"responses":{"200":{"description":"Scraped dataset.","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","description":"Array of scraped items. Shape varies per tool — see each tool's documentation.","items":{"type":"object"}},"runId":{"type":"string","description":"Run ID for debugging/audit."},"duration":{"type":"integer","description":"Run duration in seconds."}},"required":["items"]}}}},"402":{"description":"Payment Required. The response includes an x402 `PAYMENT-REQUIRED` header and an MPP `WWW-Authenticate: Payment` header; pick whichever protocol your wallet supports."}}}},"/api/tools/pillar":{"post":{"operationId":"scrape_pillar","summary":"Pillar Scraper","description":"Extract creator link-in-bio data from Pillar pages.","tags":["Creator"],"x-payment-info":{"price":{"mode":"dynamic","currency":"USD","min":"0.050000","max":"2.000000"},"protocols":[{"x402":{"network":"base-sepolia","asset":"USDC"}},{"mpp":{"method":"usdc","intent":"scrape","currency":"USD"}}]},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"mode":{"type":"string","description":"Which endpoint to call. Options: default.","enum":["default"],"default":"default"},"url":{"type":"string","description":"Full URL of the target object."},"limit":{"type":"integer","description":"Max items to collect (applies to paginated modes).","default":20,"minimum":1,"maximum":500}}}}}},"responses":{"200":{"description":"Scraped dataset.","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","description":"Array of scraped items. Shape varies per tool — see each tool's documentation.","items":{"type":"object"}},"runId":{"type":"string","description":"Run ID for debugging/audit."},"duration":{"type":"integer","description":"Run duration in seconds."}},"required":["items"]}}}},"402":{"description":"Payment Required. The response includes an x402 `PAYMENT-REQUIRED` header and an MPP `WWW-Authenticate: Payment` header; pick whichever protocol your wallet supports."}}}},"/api/tools/linkbio":{"post":{"operationId":"scrape_linkbio","summary":"lnk.bio Scraper","description":"Extract creator link-in-bio data from lnk.bio pages.","tags":["Creator"],"x-payment-info":{"price":{"mode":"dynamic","currency":"USD","min":"0.050000","max":"2.000000"},"protocols":[{"x402":{"network":"base-sepolia","asset":"USDC"}},{"mpp":{"method":"usdc","intent":"scrape","currency":"USD"}}]},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"mode":{"type":"string","description":"Which endpoint to call. Options: default.","enum":["default"],"default":"default"},"url":{"type":"string","description":"Full URL of the target object."},"limit":{"type":"integer","description":"Max items to collect (applies to paginated modes).","default":20,"minimum":1,"maximum":500}}}}}},"responses":{"200":{"description":"Scraped dataset.","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","description":"Array of scraped items. Shape varies per tool — see each tool's documentation.","items":{"type":"object"}},"runId":{"type":"string","description":"Run ID for debugging/audit."},"duration":{"type":"integer","description":"Run duration in seconds."}},"required":["items"]}}}},"402":{"description":"Payment Required. The response includes an x402 `PAYMENT-REQUIRED` header and an MPP `WWW-Authenticate: Payment` header; pick whichever protocol your wallet supports."}}}},"/api/tools/linkme":{"post":{"operationId":"scrape_linkme","summary":"link.me Scraper","description":"Extract creator link-in-bio data from link.me pages.","tags":["Creator"],"x-payment-info":{"price":{"mode":"dynamic","currency":"USD","min":"0.050000","max":"2.000000"},"protocols":[{"x402":{"network":"base-sepolia","asset":"USDC"}},{"mpp":{"method":"usdc","intent":"scrape","currency":"USD"}}]},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"mode":{"type":"string","description":"Which endpoint to call. Options: default.","enum":["default"],"default":"default"},"url":{"type":"string","description":"Full URL of the target object."},"limit":{"type":"integer","description":"Max items to collect (applies to paginated modes).","default":20,"minimum":1,"maximum":500}}}}}},"responses":{"200":{"description":"Scraped dataset.","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","description":"Array of scraped items. Shape varies per tool — see each tool's documentation.","items":{"type":"object"}},"runId":{"type":"string","description":"Run ID for debugging/audit."},"duration":{"type":"integer","description":"Run duration in seconds."}},"required":["items"]}}}},"402":{"description":"Payment Required. The response includes an x402 `PAYMENT-REQUIRED` header and an MPP `WWW-Authenticate: Payment` header; pick whichever protocol your wallet supports."}}}}}}