scrapebadger 0.36.0 → 0.37.0

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/dist/index.js CHANGED
@@ -9,7 +9,7 @@ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
9
9
  var WebSocket__default = /*#__PURE__*/_interopDefault(WebSocket);
10
10
 
11
11
  // src/internal/version.ts
12
- var SDK_VERSION = "0.36.0";
12
+ var SDK_VERSION = "0.37.0";
13
13
 
14
14
  // src/internal/exceptions.ts
15
15
  var ScrapeBadgerError = class _ScrapeBadgerError extends Error {
@@ -2478,7 +2478,7 @@ var TwitterClient = class {
2478
2478
  this.stream = new StreamClient(client);
2479
2479
  this.spaces = new SpacesClient(client);
2480
2480
  }
2481
- // --- generated by sdk/codegen/facade — do not edit ---
2481
+ // --- BEGIN generated by sdk/codegen/facade — do not edit ---
2482
2482
  /** Delete filter rule. Generated from the OpenAPI spec; returns the raw response object. */
2483
2483
  async deleteFilterRule(ruleId, body, params = {}) {
2484
2484
  return this._gen.request(`/v1/twitter/stream/filter-rules/${ruleId}`, {
@@ -2531,6 +2531,7 @@ var TwitterClient = class {
2531
2531
  body
2532
2532
  });
2533
2533
  }
2534
+ // --- END generated by sdk/codegen/facade ---
2534
2535
  };
2535
2536
 
2536
2537
  // src/web/client.ts
@@ -2654,7 +2655,7 @@ var WebClient = class {
2654
2655
  body
2655
2656
  });
2656
2657
  }
2657
- // --- generated by sdk/codegen/facade — do not edit ---
2658
+ // --- BEGIN generated by sdk/codegen/facade — do not edit ---
2658
2659
  /** Submit batch scraping job. Generated from the OpenAPI spec; returns the raw response object. */
2659
2660
  async submitBatchScrapingJob(body, params = {}) {
2660
2661
  return this._gen.request("/v1/web/batch", { method: "POST", params, body });
@@ -2675,6 +2676,7 @@ var WebClient = class {
2675
2676
  async pollAnAutoUnblockDiscoveryJob(jobId, params = {}) {
2676
2677
  return this._gen.request(`/v1/web/unblock/${jobId}`, { params });
2677
2678
  }
2679
+ // --- END generated by sdk/codegen/facade ---
2678
2680
  };
2679
2681
 
2680
2682
  // src/vinted/search.ts
@@ -3485,7 +3487,7 @@ var GoogleClient = class {
3485
3487
  this.flights = new FlightsClient(client);
3486
3488
  this.products = new ProductsClient(client);
3487
3489
  }
3488
- // --- generated by sdk/codegen/facade — do not edit ---
3490
+ // --- BEGIN generated by sdk/codegen/facade — do not edit ---
3489
3491
  /** Google AI Overview (inline SERP block). Generated from the OpenAPI spec; returns the raw response object. */
3490
3492
  async googleAiOverviewInlineSerpBlock(params = {}) {
3491
3493
  return this._gen.request("/v1/google/ai-overview", { params });
@@ -3494,6 +3496,55 @@ var GoogleClient = class {
3494
3496
  async googleFlightsCalendarCheapestFarePerDate(params = {}) {
3495
3497
  return this._gen.request("/v1/google/flights/calendar", { params });
3496
3498
  }
3499
+ // --- END generated by sdk/codegen/facade ---
3500
+ };
3501
+
3502
+ // src/google_play/client.ts
3503
+ var GooglePlayClient = class {
3504
+ client;
3505
+ constructor(client) {
3506
+ this.client = client;
3507
+ }
3508
+ /** Get app detail. Generated from the OpenAPI spec; returns the raw response object. */
3509
+ async getAppDetail(appId, params = {}) {
3510
+ return this.client.request(`/v1/google-play/apps/${appId}`, { params });
3511
+ }
3512
+ /** Get app permissions. Generated from the OpenAPI spec; returns the raw response object. */
3513
+ async getAppPermissions(appId, params = {}) {
3514
+ return this.client.request(`/v1/google-play/apps/${appId}/permissions`, { params });
3515
+ }
3516
+ /** Get app reviews. Generated from the OpenAPI spec; returns the raw response object. */
3517
+ async getAppReviews(appId, params = {}) {
3518
+ return this.client.request(`/v1/google-play/apps/${appId}/reviews`, { params });
3519
+ }
3520
+ /** Get similar apps. Generated from the OpenAPI spec; returns the raw response object. */
3521
+ async getSimilarApps(appId, params = {}) {
3522
+ return this.client.request(`/v1/google-play/apps/${appId}/similar`, { params });
3523
+ }
3524
+ /** List categories. Generated from the OpenAPI spec; returns the raw response object. */
3525
+ async listCategories(params = {}) {
3526
+ return this.client.request("/v1/google-play/categories", { params });
3527
+ }
3528
+ /** Browse a category. Generated from the OpenAPI spec; returns the raw response object. */
3529
+ async browseACategory(categoryId, params = {}) {
3530
+ return this.client.request(`/v1/google-play/categories/${categoryId}`, { params });
3531
+ }
3532
+ /** Top charts. Generated from the OpenAPI spec; returns the raw response object. */
3533
+ async topCharts(collection, params = {}) {
3534
+ return this.client.request(`/v1/google-play/collections/${collection}`, { params });
3535
+ }
3536
+ /** Get developer apps. Generated from the OpenAPI spec; returns the raw response object. */
3537
+ async getDeveloperApps(developer, params = {}) {
3538
+ return this.client.request(`/v1/google-play/developers/${developer}`, { params });
3539
+ }
3540
+ /** List markets. Generated from the OpenAPI spec; returns the raw response object. */
3541
+ async listMarkets(params = {}) {
3542
+ return this.client.request("/v1/google-play/markets", { params });
3543
+ }
3544
+ /** Search apps. Generated from the OpenAPI spec; returns the raw response object. */
3545
+ async searchApps(params = {}) {
3546
+ return this.client.request("/v1/google-play/search", { params });
3547
+ }
3497
3548
  };
3498
3549
 
3499
3550
  // src/idealista/client.ts
@@ -4188,11 +4239,48 @@ var ApartmentsClient = class {
4188
4239
  }
4189
4240
  throw new Error("Provide either url, or both slug and propertyId");
4190
4241
  }
4191
- // --- generated by sdk/codegen/facade — do not edit ---
4242
+ // --- BEGIN generated by sdk/codegen/facade — do not edit ---
4192
4243
  /** Get property detail by slug + id. Generated from the OpenAPI spec; returns the raw response object. */
4193
4244
  async getPropertyDetailBySlugId(slug, propertyId, params = {}) {
4194
4245
  return this.client.request(`/v1/apartments/properties/${slug}/${propertyId}`, { params });
4195
4246
  }
4247
+ // --- END generated by sdk/codegen/facade ---
4248
+ };
4249
+
4250
+ // src/app_store/client.ts
4251
+ var AppStoreClient = class {
4252
+ client;
4253
+ constructor(client) {
4254
+ this.client = client;
4255
+ }
4256
+ /** Get app detail. Generated from the OpenAPI spec; returns the raw response object. */
4257
+ async getAppDetail(appId, params = {}) {
4258
+ return this.client.request(`/v1/app-store/apps/${appId}`, { params });
4259
+ }
4260
+ /** Get app reviews. Generated from the OpenAPI spec; returns the raw response object. */
4261
+ async getAppReviews(appId, params = {}) {
4262
+ return this.client.request(`/v1/app-store/apps/${appId}/reviews`, { params });
4263
+ }
4264
+ /** Top charts. Generated from the OpenAPI spec; returns the raw response object. */
4265
+ async topCharts(params = {}) {
4266
+ return this.client.request("/v1/app-store/charts", { params });
4267
+ }
4268
+ /** Get developer apps. Generated from the OpenAPI spec; returns the raw response object. */
4269
+ async getDeveloperApps(artistId, params = {}) {
4270
+ return this.client.request(`/v1/app-store/developers/${artistId}`, { params });
4271
+ }
4272
+ /** List genres. Generated from the OpenAPI spec; returns the raw response object. */
4273
+ async listGenres(params = {}) {
4274
+ return this.client.request("/v1/app-store/genres", { params });
4275
+ }
4276
+ /** List markets. Generated from the OpenAPI spec; returns the raw response object. */
4277
+ async listMarkets(params = {}) {
4278
+ return this.client.request("/v1/app-store/markets", { params });
4279
+ }
4280
+ /** Search apps. Generated from the OpenAPI spec; returns the raw response object. */
4281
+ async searchApps(params = {}) {
4282
+ return this.client.request("/v1/app-store/search", { params });
4283
+ }
4196
4284
  };
4197
4285
 
4198
4286
  // src/instagram/users.ts
@@ -4550,11 +4638,12 @@ var InstagramClient = class {
4550
4638
  this.locations = new LocationsClient(client);
4551
4639
  this.audio = new AudioClient(client);
4552
4640
  }
4553
- // --- generated by sdk/codegen/facade — do not edit ---
4641
+ // --- BEGIN generated by sdk/codegen/facade — do not edit ---
4554
4642
  /** Get location. Generated from the OpenAPI spec; returns the raw response object. */
4555
4643
  async getLocation(locationPk, params = {}) {
4556
4644
  return this._gen.request(`/v1/instagram/locations/${locationPk}`, { params });
4557
4645
  }
4646
+ // --- END generated by sdk/codegen/facade ---
4558
4647
  };
4559
4648
 
4560
4649
  // src/redfin/client.ts
@@ -4652,11 +4741,12 @@ var RedfinClient = class {
4652
4741
  async listMarkets() {
4653
4742
  return this.client.request("/v1/redfin/markets");
4654
4743
  }
4655
- // --- generated by sdk/codegen/facade — do not edit ---
4744
+ // --- BEGIN generated by sdk/codegen/facade — do not edit ---
4656
4745
  /** Get property detail. Generated from the OpenAPI spec; returns the raw response object. */
4657
4746
  async getPropertyDetail(propertyId, params = {}) {
4658
4747
  return this._gen.request(`/v1/redfin/property/${propertyId}`, { params });
4659
4748
  }
4749
+ // --- END generated by sdk/codegen/facade ---
4660
4750
  };
4661
4751
 
4662
4752
  // src/account/client.ts
@@ -4671,6 +4761,38 @@ var AccountClient = class {
4671
4761
  }
4672
4762
  };
4673
4763
 
4764
+ // src/airbnb/client.ts
4765
+ var AirbnbClient = class {
4766
+ client;
4767
+ constructor(client) {
4768
+ this.client = client;
4769
+ }
4770
+ /** Search experiences. Generated from the OpenAPI spec; returns the raw response object. */
4771
+ async searchExperiences(params = {}) {
4772
+ return this.client.request("/v1/airbnb/experiences", { params });
4773
+ }
4774
+ /** Get experience detail. Generated from the OpenAPI spec; returns the raw response object. */
4775
+ async getExperienceDetail(experienceId, params = {}) {
4776
+ return this.client.request(`/v1/airbnb/experiences/${experienceId}`, { params });
4777
+ }
4778
+ /** Get listing detail. Generated from the OpenAPI spec; returns the raw response object. */
4779
+ async getListingDetail(roomId, params = {}) {
4780
+ return this.client.request(`/v1/airbnb/listings/${roomId}`, { params });
4781
+ }
4782
+ /** Get availability calendar. Generated from the OpenAPI spec; returns the raw response object. */
4783
+ async getAvailabilityCalendar(roomId, params = {}) {
4784
+ return this.client.request(`/v1/airbnb/listings/${roomId}/calendar`, { params });
4785
+ }
4786
+ /** Get listing reviews. Generated from the OpenAPI spec; returns the raw response object. */
4787
+ async getListingReviews(roomId, params = {}) {
4788
+ return this.client.request(`/v1/airbnb/listings/${roomId}/reviews`, { params });
4789
+ }
4790
+ /** Search stays. Generated from the OpenAPI spec; returns the raw response object. */
4791
+ async searchStays(params = {}) {
4792
+ return this.client.request("/v1/airbnb/search", { params });
4793
+ }
4794
+ };
4795
+
4674
4796
  // src/amazon/search.ts
4675
4797
  var SearchClient5 = class {
4676
4798
  client;
@@ -5470,6 +5592,37 @@ var AdsClient = class {
5470
5592
  }
5471
5593
  });
5472
5594
  }
5595
+ /**
5596
+ * Look up advertiser business ids by name.
5597
+ *
5598
+ * Feed the returned `id` into {@link search} as `advertiser_id` to list all of an
5599
+ * advertiser's ads. Matching is on the legal entity name, so a brand may appear under
5600
+ * several legal entities.
5601
+ *
5602
+ * @param params - `query` (required), plus optional `region` and `count`.
5603
+ * @returns Matching advertisers, each with a business `id`.
5604
+ */
5605
+ async searchAdvertisers(params) {
5606
+ return this.client.request("/v1/tiktok/ads/advertisers", {
5607
+ params: {
5608
+ query: params.query,
5609
+ region: params.region,
5610
+ count: params.count
5611
+ }
5612
+ });
5613
+ }
5614
+ /**
5615
+ * Get a single ad's advertiser, creatives, and full targeting/impression breakdown.
5616
+ *
5617
+ * @param adId - Ad id from a {@link search} result.
5618
+ * @param params - Optional `region` (EU-only, default "DE").
5619
+ * @returns The ad, its advertiser, and per-region age/gender impression targeting.
5620
+ */
5621
+ async getDetail(adId, params = {}) {
5622
+ return this.client.request(`/v1/tiktok/ads/${adId}`, {
5623
+ params: { region: params.region }
5624
+ });
5625
+ }
5473
5626
  };
5474
5627
 
5475
5628
  // src/tiktok/reference.ts
@@ -5498,6 +5651,7 @@ var ReferenceClient4 = class {
5498
5651
 
5499
5652
  // src/tiktok/client.ts
5500
5653
  var TikTokClient = class {
5654
+ _gen;
5501
5655
  /** Client for profiles, videos, followers, following, liked, reposts */
5502
5656
  users;
5503
5657
  /** Client for video detail, comments, replies, related, transcript, oEmbed */
@@ -5520,6 +5674,7 @@ var TikTokClient = class {
5520
5674
  * @param client - The base HTTP client for making requests.
5521
5675
  */
5522
5676
  constructor(client) {
5677
+ this._gen = client;
5523
5678
  this.users = new UsersClient5(client);
5524
5679
  this.videos = new VideosClient2(client);
5525
5680
  this.search = new SearchClient7(client);
@@ -5529,6 +5684,16 @@ var TikTokClient = class {
5529
5684
  this.ads = new AdsClient(client);
5530
5685
  this.reference = new ReferenceClient4(client);
5531
5686
  }
5687
+ // --- BEGIN generated by sdk/codegen/facade — do not edit ---
5688
+ /** Search TikTok advertisers. Generated from the OpenAPI spec; returns the raw response object. */
5689
+ async searchTiktokAdvertisers(params = {}) {
5690
+ return this._gen.request("/v1/tiktok/ads/advertisers", { params });
5691
+ }
5692
+ /** Get TikTok ad detail. Generated from the OpenAPI spec; returns the raw response object. */
5693
+ async getTiktokAdDetail(adId, params = {}) {
5694
+ return this._gen.request(`/v1/tiktok/ads/${adId}`, { params });
5695
+ }
5696
+ // --- END generated by sdk/codegen/facade ---
5532
5697
  };
5533
5698
 
5534
5699
  // src/ebay/search.ts
@@ -5767,6 +5932,14 @@ var FacebookClient = class {
5767
5932
  constructor(client) {
5768
5933
  this.client = client;
5769
5934
  }
5935
+ /** Search advertiser pages. Generated from the OpenAPI spec; returns the raw response object. */
5936
+ async searchAdvertiserPages(params = {}) {
5937
+ return this.client.request("/v1/facebook/ads/pages/search", { params });
5938
+ }
5939
+ /** Get advertiser page info. Generated from the OpenAPI spec; returns the raw response object. */
5940
+ async getAdvertiserPageInfo(pageId, params = {}) {
5941
+ return this.client.request(`/v1/facebook/ads/pages/${pageId}`, { params });
5942
+ }
5770
5943
  /** Search the Ad Library. Generated from the OpenAPI spec; returns the raw response object. */
5771
5944
  async searchTheAdLibrary(params = {}) {
5772
5945
  return this.client.request("/v1/facebook/ads/search", { params });
@@ -7699,11 +7872,12 @@ var ZillowClient = class {
7699
7872
  this.agent = new AgentClient(client);
7700
7873
  this.reference = new ReferenceClient14(client);
7701
7874
  }
7702
- // --- generated by sdk/codegen/facade — do not edit ---
7875
+ // --- BEGIN generated by sdk/codegen/facade — do not edit ---
7703
7876
  /** Get property detail by URL. Generated from the OpenAPI spec; returns the raw response object. */
7704
7877
  async getPropertyDetailByUrl(params = {}) {
7705
7878
  return this._gen.request("/v1/zillow/property", { params });
7706
7879
  }
7880
+ // --- END generated by sdk/codegen/facade ---
7707
7881
  };
7708
7882
 
7709
7883
  // src/immobiliare/client.ts
@@ -8089,11 +8263,12 @@ var DepopClient = class {
8089
8263
  async listMarkets() {
8090
8264
  return this.client.request("/v1/depop/markets");
8091
8265
  }
8092
- // --- generated by sdk/codegen/facade — do not edit ---
8266
+ // --- BEGIN generated by sdk/codegen/facade — do not edit ---
8093
8267
  /** Get product detail. Generated from the OpenAPI spec; returns the raw response object. */
8094
8268
  async getProductDetail(productId, params = {}) {
8095
8269
  return this._gen.request(`/v1/depop/products/${productId}`, { params });
8096
8270
  }
8271
+ // --- END generated by sdk/codegen/facade ---
8097
8272
  };
8098
8273
 
8099
8274
  // src/linkedin/client.ts
@@ -8406,7 +8581,7 @@ var ChatGPTClient = class {
8406
8581
  this.brand = new BrandClient(client);
8407
8582
  this.reference = new ReferenceClient16(client);
8408
8583
  }
8409
- // --- generated by sdk/codegen/facade — do not edit ---
8584
+ // --- BEGIN generated by sdk/codegen/facade — do not edit ---
8410
8585
  /** Ask ChatGPT a question (POST). Generated from the OpenAPI spec; returns the raw response object. */
8411
8586
  async askChatgptAQuestionPost(body, params = {}) {
8412
8587
  return this._gen.request("/v1/chatgpt/ask", { method: "POST", params, body });
@@ -8415,6 +8590,7 @@ var ChatGPTClient = class {
8415
8590
  async measureABrandSVisibilityInAChatgptAnswerPost(body, params = {}) {
8416
8591
  return this._gen.request("/v1/chatgpt/brand-visibility", { method: "POST", params, body });
8417
8592
  }
8593
+ // --- END generated by sdk/codegen/facade ---
8418
8594
  };
8419
8595
 
8420
8596
  // src/gemini/ask.ts
@@ -8523,7 +8699,7 @@ var GeminiClient = class {
8523
8699
  this.ask = new AskClient2(client);
8524
8700
  this.brand = new BrandClient2(client);
8525
8701
  }
8526
- // --- generated by sdk/codegen/facade — do not edit ---
8702
+ // --- BEGIN generated by sdk/codegen/facade — do not edit ---
8527
8703
  /** Ask Gemini a question (POST). Generated from the OpenAPI spec; returns the raw response object. */
8528
8704
  async askGeminiAQuestionPost(body, params = {}) {
8529
8705
  return this._gen.request("/v1/gemini/ask", { method: "POST", params, body });
@@ -8532,6 +8708,7 @@ var GeminiClient = class {
8532
8708
  async measureABrandSVisibilityInAGeminiAnswerPost(body, params = {}) {
8533
8709
  return this._gen.request("/v1/gemini/brand-visibility", { method: "POST", params, body });
8534
8710
  }
8711
+ // --- END generated by sdk/codegen/facade ---
8535
8712
  };
8536
8713
 
8537
8714
  // src/client.ts
@@ -8545,12 +8722,16 @@ var ScrapeBadger = class {
8545
8722
  vinted;
8546
8723
  /** Google Scraper API client — 19 Google product APIs */
8547
8724
  google;
8725
+ /** Google_Play API client. (Generated from the OpenAPI spec.) */
8726
+ google_play;
8548
8727
  /** Idealista API client. (Generated from the OpenAPI spec.) */
8549
8728
  idealista;
8550
8729
  /** Reddit scraper API client */
8551
8730
  reddit;
8552
8731
  /** Apartments.com scraper API client — search + property with unit-level pricing (US) */
8553
8732
  apartments;
8733
+ /** App_Store API client. (Generated from the OpenAPI spec.) */
8734
+ app_store;
8554
8735
  /** Instagram scraper API client — users, media, search, hashtags, locations, audio */
8555
8736
  instagram;
8556
8737
  /** Redfin scraper API client — search, property, agent, autocomplete, markets (redfin.com, US) */
@@ -8558,6 +8739,8 @@ var ScrapeBadger = class {
8558
8739
  /** Amazon scraper API client — 14 endpoints */
8559
8740
  /** Account API client. (Generated from the OpenAPI spec.) */
8560
8741
  account;
8742
+ /** Airbnb API client. (Generated from the OpenAPI spec.) */
8743
+ airbnb;
8561
8744
  amazon;
8562
8745
  /** Shopee scraper API client — 6 endpoints across 11 markets */
8563
8746
  shopee;
@@ -8639,12 +8822,15 @@ var ScrapeBadger = class {
8639
8822
  this.web = new WebClient(this.baseClient);
8640
8823
  this.vinted = new VintedClient(this.baseClient);
8641
8824
  this.google = new GoogleClient(this.baseClient);
8825
+ this.google_play = new GooglePlayClient(this.baseClient);
8642
8826
  this.idealista = new IdealistaClient(this.baseClient);
8643
8827
  this.reddit = new RedditClient(this.baseClient);
8644
8828
  this.apartments = new ApartmentsClient(this.baseClient);
8829
+ this.app_store = new AppStoreClient(this.baseClient);
8645
8830
  this.instagram = new InstagramClient(this.baseClient);
8646
8831
  this.redfin = new RedfinClient(this.baseClient);
8647
8832
  this.account = new AccountClient(this.baseClient);
8833
+ this.airbnb = new AirbnbClient(this.baseClient);
8648
8834
  this.amazon = new AmazonClient(this.baseClient);
8649
8835
  this.shopee = new ShopeeClient(this.baseClient);
8650
8836
  this.tiktok = new TikTokClient(this.baseClient);