scrapercity 1.0.26 → 1.0.28

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/AGENT_DOCS.txt CHANGED
@@ -23,6 +23,7 @@ PRICING (auto-generated from the live catalog - do not edit)
23
23
  | `search_criminal_records` | /api/v1/scrape/criminal-records | $1.00 per search (only charged if records found) |
24
24
  | `scrape_store_leads` | /api/v1/scrape/store-leads | $0.0039 per lead |
25
25
  | `scrape_builtwith` | /api/v1/scrape/techstack | $4.99 per technology |
26
+ | `scrape_signals` | /api/v1/scrape/signals | $0.10 per company running ads, $0.03 per website checked, $0.05 per company hiring; every search is charged at least twice its processing cost |
26
27
  | `find_emails` | /api/v1/scrape/email-finder | $0.05 per email found (FREE if not found) |
27
28
  | `find_mobiles` | /api/v1/scrape/mobile-finder | $0.25 per number found (FREE if not found) |
28
29
  <!-- GENERATED:pricing:end -->
@@ -53,7 +54,7 @@ apollo
53
54
  filters already in the Lead Database (ones you don't have), a dashboard link, and the
54
55
  /api/v1/database/leads call that returns them now.
55
56
  Cost: $0.0039/lead | Min 500, max 50000
56
- DELIVERY: UP TO 4 DAYS. Use webhook, not polling.
57
+ DELIVERY: usually 15-30 minutes, some lists take longer. Use webhook, not polling.
57
58
  To filter by title/location/industry without a URL, use the Lead Database (below).
58
59
 
59
60
  maps
@@ -309,7 +310,7 @@ WORKFLOW EXAMPLES
309
310
 
310
311
  2. APOLLO SCRAPE (slow):
311
312
  POST /api/v1/scrape/apollo → get runId → configure webhook → wait for callback
312
- Do NOT poll Apollo in a tight loop. Check once per hour at most.
313
+ Do NOT poll Apollo in a tight loop. Start after 15 minutes and check every few minutes.
313
314
 
314
315
  3. ENRICH PIPELINE:
315
316
  Apollo/Maps → download CSV → extract emails → POST email-validator → download validated CSV
package/README.md CHANGED
@@ -122,6 +122,7 @@ Both SDKs carry the same tool list as the MCP server, regenerated from the live
122
122
  | `search_criminal_records` | /api/v1/scrape/criminal-records | $1.00 per search (only charged if records found) |
123
123
  | `scrape_store_leads` | /api/v1/scrape/store-leads | $0.0039 per lead |
124
124
  | `scrape_builtwith` | /api/v1/scrape/techstack | $4.99 per technology |
125
+ | `scrape_signals` | /api/v1/scrape/signals | $0.10 per company running ads, $0.03 per website checked, $0.05 per company hiring; every search is charged at least twice its processing cost |
125
126
  | `find_emails` | /api/v1/scrape/email-finder | $0.05 per email found (FREE if not found) |
126
127
  | `find_mobiles` | /api/v1/scrape/mobile-finder | $0.25 per number found (FREE if not found) |
127
128
  <!-- GENERATED:pricing:end -->
@@ -148,7 +149,7 @@ Both SDKs carry the same tool list as the MCP server, regenerated from the live
148
149
  2. **Poll status** (or use webhooks) → wait for `SUCCEEDED`
149
150
  3. **Download CSV** → leads with full contact info
150
151
 
151
- Apollo scrapes take 11-48+ hours. All other scrapers: 1-30 minutes. Store leads are instant.
152
+ Apollo scrapes usually take 15-30 minutes. All other scrapers: 1-30 minutes. Store leads are instant.
152
153
 
153
154
  ## Authentication
154
155
 
package/SKILL.md CHANGED
@@ -37,6 +37,7 @@ Auth: `Authorization: Bearer $SCRAPERCITY_API_KEY` on all requests.
37
37
  | `search_criminal_records` | /api/v1/scrape/criminal-records | $1.00 per search (only charged if records found) |
38
38
  | `scrape_store_leads` | /api/v1/scrape/store-leads | $0.0039 per lead |
39
39
  | `scrape_builtwith` | /api/v1/scrape/techstack | $4.99 per technology |
40
+ | `scrape_signals` | /api/v1/scrape/signals | $0.10 per company running ads, $0.03 per website checked, $0.05 per company hiring; every search is charged at least twice its processing cost |
40
41
  | `find_emails` | /api/v1/scrape/email-finder | $0.05 per email found (FREE if not found) |
41
42
  | `find_mobiles` | /api/v1/scrape/mobile-finder | $0.25 per number found (FREE if not found) |
42
43
  <!-- GENERATED:pricing:end -->
@@ -45,7 +46,7 @@ Auth: `Authorization: Bearer $SCRAPERCITY_API_KEY` on all requests.
45
46
 
46
47
  | Slug | Input | Cost | Speed |
47
48
  |------|-------|------|-------|
48
- | `apollo` | `{url, count, fileName}` | $0.0039/lead | ~4 DAYS (use webhook) |
49
+ | `apollo` | `{url, count, fileName}` | $0.0039/lead | usually 15-30 min (use webhook) |
49
50
  | `maps` | `{searchStringsArray:["query"], locationQuery, maxCrawledPlacesPerSearch}` | $0.01/place | 5-30 min |
50
51
  | `email-validator` | `{emails:["a@b.com"]}` | $0.0036/email | 1-10 min |
51
52
  | `email-finder` | `{contacts:[{first_name,last_name,domain}], autoValidateEmails, autoFindMobiles}` | $0.05/contact | 1-10 min |
@@ -65,10 +66,10 @@ Auth: `Authorization: Bearer $SCRAPERCITY_API_KEY` on all requests.
65
66
  | `property-lookup` | `{addresses:["123 Main St, City, ST 12345"], includeOwnerContact:false}` | $0.15/address | 2-10 min |
66
67
 
67
68
  ## ⚠ Apollo Delivery
68
- Apollo scrapes take **up to 4 days** to deliver. Do NOT poll in a loop.
69
+ Apollo scrapes usually take **15-30 minutes** to deliver; some lists take longer. Do NOT poll in a loop.
69
70
  - Set up a webhook at `app.scrapercity.com/dashboard/webhooks`
70
71
  - Webhook fires when results are ready with `{runId, fileName, leadsCount}`
71
- - If you must poll, check once per hour max
72
+ - If you must poll, start after 15 minutes and check every few minutes, not in a tight loop
72
73
 
73
74
  ## Other Endpoints
74
75
 
package/bin/cli.mjs CHANGED
@@ -94,7 +94,7 @@ async function main() {
94
94
  console.log(`✓ Apollo scrape started`)
95
95
  console.log(` Run ID: ${r.runId}`)
96
96
  console.log(` ${r.message || ''}`)
97
- console.log(` Note: Apollo takes up to 4 days. Set up a webhook at app.scrapercity.com/dashboard/webhooks to get notified.`)
97
+ console.log(` Note: Apollo usually takes 15-30 minutes. Set up a webhook at app.scrapercity.com/dashboard/webhooks to get notified.`)
98
98
  console.log(` Check: scrapercity status ${r.runId}`)
99
99
  break
100
100
  }
@@ -1,6 +1,6 @@
1
1
  // AUTO-GENERATED by scripts/generate.mjs — DO NOT EDIT BY HAND.
2
2
  // Source of truth: scraperConfigs.ts (+ src/config/scrapers.ts). Regenerate: npm run generate
3
- // Generated: 2026-10-30T16:16:19.694Z
3
+ // Generated: 2026-10-31T04:11:49.837Z
4
4
  export const TOOLS = [
5
5
  {
6
6
  "name": "scrape_apollo",
@@ -554,6 +554,75 @@ export const TOOLS = [
554
554
  ]
555
555
  }
556
556
  },
557
+ {
558
+ "name": "scrape_signals",
559
+ "description": "Find companies showing a buying signal right now. type \"ads\": companies running ads on Meta (Facebook and Instagram), Google, LinkedIn and TikTok, found by keyword and location or checked from your own list of websites. type \"hiring\": companies hiring for a role on LinkedIn Jobs and Indeed. One row per company with its website, the signal (platforms and ad links, or the job and its link) and a decision maker contact from the Lead Database where one matches. Set replaceContacts to swap contacts who have left for the person in that role now before the file is delivered. Cost: $0.10 per company running ads, $0.03 per website checked, $0.05 per company hiring; every search is charged at least twice its processing cost.",
560
+ "inputSchema": {
561
+ "type": "object",
562
+ "properties": {
563
+ "type": {
564
+ "type": "string",
565
+ "description": "ads (companies running ads) or hiring (companies hiring for a role)"
566
+ },
567
+ "keyword": {
568
+ "type": "string",
569
+ "description": "type ads: find advertisers for this keyword (send keyword OR domains). Meta and LinkedIn search their ad libraries; for Google, the businesses matching the keyword and location in the Local Business Database, and every website the other platforms found, are looked up in the Google ad library."
570
+ },
571
+ "domains": {
572
+ "type": "array",
573
+ "items": {
574
+ "type": "string"
575
+ },
576
+ "description": "type ads: check these websites instead (send keyword OR domains). Every website gets a row, with running_ads_on empty when no ads were found."
577
+ },
578
+ "platforms": {
579
+ "type": "array",
580
+ "items": {
581
+ "type": "string"
582
+ },
583
+ "description": "type ads: any of meta, google, linkedin, tiktok (default: all). TikTok publishes ads for EU countries, the UK, Switzerland and Turkey only, and is searched by keyword only."
584
+ },
585
+ "jobTitle": {
586
+ "type": "string",
587
+ "description": "type hiring: the role companies are hiring for (required for hiring)"
588
+ },
589
+ "postedWithin": {
590
+ "type": "string",
591
+ "description": "type hiring: 24h, 7d or 30d (Indeed: at most the last 14 days)"
592
+ },
593
+ "sources": {
594
+ "type": "array",
595
+ "items": {
596
+ "type": "string"
597
+ },
598
+ "description": "type hiring: job boards, linkedin and/or indeed (default: both)"
599
+ },
600
+ "includeAgencies": {
601
+ "type": "boolean",
602
+ "description": "type hiring: keep staffing and recruiting agencies"
603
+ },
604
+ "location": {
605
+ "type": "string",
606
+ "description": "City, state or region (ads: added to the keyword search; hiring: where the jobs are)"
607
+ },
608
+ "country": {
609
+ "type": "string",
610
+ "description": "Two-letter country code"
611
+ },
612
+ "maxCompanies": {
613
+ "type": "number",
614
+ "description": "The most companies to return (default 200 for ads by keyword, 500 for hiring)"
615
+ },
616
+ "replaceContacts": {
617
+ "type": "boolean",
618
+ "description": "Replace contacts who have left with the person in that role now, before the file is delivered. Unlimited and free on the $649 plan, otherwise $0.02 per contact replaced."
619
+ }
620
+ },
621
+ "required": [
622
+ "type"
623
+ ]
624
+ }
625
+ },
557
626
  {
558
627
  "name": "find_emails",
559
628
  "description": "Find verified work email addresses from a person's name and company domain. Every email found is automatically validated for deliverability. Cost: $0.05 per email found (FREE if not found).",
@@ -633,6 +702,7 @@ export const ENDPOINT_BY_TOOL = {
633
702
  "search_criminal_records": "/api/v1/scrape/criminal-records",
634
703
  "scrape_store_leads": "/api/v1/scrape/store-leads",
635
704
  "scrape_builtwith": "/api/v1/scrape/techstack",
705
+ "scrape_signals": "/api/v1/scrape/signals",
636
706
  "find_emails": "/api/v1/scrape/email-finder",
637
707
  "find_mobiles": "/api/v1/scrape/mobile-finder"
638
708
  }
@@ -654,6 +724,7 @@ export const ENDPOINTS = {
654
724
  "criminal-records": "/api/v1/scrape/criminal-records",
655
725
  "store-leads": "/api/v1/scrape/store-leads",
656
726
  "builtwith": "/api/v1/scrape/techstack",
727
+ "signals": "/api/v1/scrape/signals",
657
728
  "email-finder": "/api/v1/scrape/email-finder",
658
729
  "mobile-finder": "/api/v1/scrape/mobile-finder",
659
730
  "buy-credits": "/api/v1/buy-credits",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "scrapercity",
3
- "version": "1.0.26",
3
+ "version": "1.0.28",
4
4
  "description": "ScraperCity SDK, CLI & MCP Server - B2B lead generation for AI agents and developers",
5
5
  "type": "module",
6
6
  "main": "./lib/index.mjs",