scrapebadger 0.35.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.mjs CHANGED
@@ -3,7 +3,7 @@ import { EventEmitter } from 'events';
3
3
  import WebSocket from 'ws';
4
4
 
5
5
  // src/internal/version.ts
6
- var SDK_VERSION = "0.33.1";
6
+ var SDK_VERSION = "0.37.0";
7
7
 
8
8
  // src/internal/exceptions.ts
9
9
  var ScrapeBadgerError = class _ScrapeBadgerError extends Error {
@@ -2439,6 +2439,7 @@ var SpacesClient = class {
2439
2439
 
2440
2440
  // src/twitter/client.ts
2441
2441
  var TwitterClient = class {
2442
+ _gen;
2442
2443
  /** Client for tweet operations */
2443
2444
  tweets;
2444
2445
  /** Client for user operations */
@@ -2461,6 +2462,7 @@ var TwitterClient = class {
2461
2462
  * @param client - The base HTTP client for making requests.
2462
2463
  */
2463
2464
  constructor(client) {
2465
+ this._gen = client;
2464
2466
  this.tweets = new TweetsClient(client);
2465
2467
  this.users = new UsersClient(client);
2466
2468
  this.lists = new ListsClient(client);
@@ -2470,12 +2472,68 @@ var TwitterClient = class {
2470
2472
  this.stream = new StreamClient(client);
2471
2473
  this.spaces = new SpacesClient(client);
2472
2474
  }
2475
+ // --- BEGIN generated by sdk/codegen/facade — do not edit ---
2476
+ /** Delete filter rule. Generated from the OpenAPI spec; returns the raw response object. */
2477
+ async deleteFilterRule(ruleId, body, params = {}) {
2478
+ return this._gen.request(`/v1/twitter/stream/filter-rules/${ruleId}`, {
2479
+ method: "DELETE",
2480
+ params,
2481
+ body
2482
+ });
2483
+ }
2484
+ /** Update filter rule. Generated from the OpenAPI spec; returns the raw response object. */
2485
+ async updateFilterRule(ruleId, body, params = {}) {
2486
+ return this._gen.request(`/v1/twitter/stream/filter-rules/${ruleId}`, {
2487
+ method: "PATCH",
2488
+ params,
2489
+ body
2490
+ });
2491
+ }
2492
+ /** Delete stream monitor. Generated from the OpenAPI spec; returns the raw response object. */
2493
+ async deleteStreamMonitor(monitorId, body, params = {}) {
2494
+ return this._gen.request(`/v1/twitter/stream/monitors/${monitorId}`, {
2495
+ method: "DELETE",
2496
+ params,
2497
+ body
2498
+ });
2499
+ }
2500
+ /** Update stream monitor. Generated from the OpenAPI spec; returns the raw response object. */
2501
+ async updateStreamMonitor(monitorId, body, params = {}) {
2502
+ return this._gen.request(`/v1/twitter/stream/monitors/${monitorId}`, {
2503
+ method: "PATCH",
2504
+ params,
2505
+ body
2506
+ });
2507
+ }
2508
+ /** List webhooks. Generated from the OpenAPI spec; returns the raw response object. */
2509
+ async listWebhooks(params = {}) {
2510
+ return this._gen.request("/v1/twitter/stream/webhooks", { params });
2511
+ }
2512
+ /** Configure webhook on a monitor. Generated from the OpenAPI spec; returns the raw response object. */
2513
+ async configureWebhookOnAMonitor(body, params = {}) {
2514
+ return this._gen.request("/v1/twitter/stream/webhooks", { method: "POST", params, body });
2515
+ }
2516
+ /** Test webhook delivery. Generated from the OpenAPI spec; returns the raw response object. */
2517
+ async testWebhookDelivery(body, params = {}) {
2518
+ return this._gen.request("/v1/twitter/stream/webhooks/test", { method: "POST", params, body });
2519
+ }
2520
+ /** Remove webhook from monitor. Generated from the OpenAPI spec; returns the raw response object. */
2521
+ async removeWebhookFromMonitor(webhookId, body, params = {}) {
2522
+ return this._gen.request(`/v1/twitter/stream/webhooks/${webhookId}`, {
2523
+ method: "DELETE",
2524
+ params,
2525
+ body
2526
+ });
2527
+ }
2528
+ // --- END generated by sdk/codegen/facade ---
2473
2529
  };
2474
2530
 
2475
2531
  // src/web/client.ts
2476
2532
  var WebClient = class {
2533
+ _gen;
2477
2534
  client;
2478
2535
  constructor(client) {
2536
+ this._gen = client;
2479
2537
  this.client = client;
2480
2538
  }
2481
2539
  /**
@@ -2591,6 +2649,28 @@ var WebClient = class {
2591
2649
  body
2592
2650
  });
2593
2651
  }
2652
+ // --- BEGIN generated by sdk/codegen/facade — do not edit ---
2653
+ /** Submit batch scraping job. Generated from the OpenAPI spec; returns the raw response object. */
2654
+ async submitBatchScrapingJob(body, params = {}) {
2655
+ return this._gen.request("/v1/web/batch", { method: "POST", params, body });
2656
+ }
2657
+ /** Get batch job status. Generated from the OpenAPI spec; returns the raw response object. */
2658
+ async getBatchJobStatus(jobId, params = {}) {
2659
+ return this._gen.request(`/v1/web/batch/${jobId}`, { params });
2660
+ }
2661
+ /** Extract structured data. Generated from the OpenAPI spec; returns the raw response object. */
2662
+ async extractStructuredData(body, params = {}) {
2663
+ return this._gen.request("/v1/web/extract", { method: "POST", params, body });
2664
+ }
2665
+ /** Take a screenshot. Generated from the OpenAPI spec; returns the raw response object. */
2666
+ async takeAScreenshot(body, params = {}) {
2667
+ return this._gen.request("/v1/web/screenshot", { method: "POST", params, body });
2668
+ }
2669
+ /** Poll an auto-unblock discovery job. Generated from the OpenAPI spec; returns the raw response object. */
2670
+ async pollAnAutoUnblockDiscoveryJob(jobId, params = {}) {
2671
+ return this._gen.request(`/v1/web/unblock/${jobId}`, { params });
2672
+ }
2673
+ // --- END generated by sdk/codegen/facade ---
2594
2674
  };
2595
2675
 
2596
2676
  // src/vinted/search.ts
@@ -2686,10 +2766,9 @@ var ItemsClient = class {
2686
2766
  * ```
2687
2767
  */
2688
2768
  async get(itemId, options = {}) {
2689
- return this.client.request(
2690
- `/v1/vinted/items/${itemId}`,
2691
- { params: { market: options.market } }
2692
- );
2769
+ return this.client.request(`/v1/vinted/items/${itemId}`, {
2770
+ params: { market: options.market }
2771
+ });
2693
2772
  }
2694
2773
  };
2695
2774
 
@@ -2719,10 +2798,9 @@ var UsersClient2 = class {
2719
2798
  * ```
2720
2799
  */
2721
2800
  async getProfile(userId, options = {}) {
2722
- return this.client.request(
2723
- `/v1/vinted/users/${userId}`,
2724
- { params: { market: options.market } }
2725
- );
2801
+ return this.client.request(`/v1/vinted/users/${userId}`, {
2802
+ params: { market: options.market }
2803
+ });
2726
2804
  }
2727
2805
  /**
2728
2806
  * Get items listed by a user.
@@ -2750,16 +2828,13 @@ var UsersClient2 = class {
2750
2828
  * ```
2751
2829
  */
2752
2830
  async getItems(userId, options = {}) {
2753
- return this.client.request(
2754
- `/v1/vinted/users/${userId}/items`,
2755
- {
2756
- params: {
2757
- market: options.market,
2758
- page: options.page,
2759
- per_page: options.per_page
2760
- }
2831
+ return this.client.request(`/v1/vinted/users/${userId}/items`, {
2832
+ params: {
2833
+ market: options.market,
2834
+ page: options.page,
2835
+ per_page: options.per_page
2761
2836
  }
2762
- );
2837
+ });
2763
2838
  }
2764
2839
  };
2765
2840
 
@@ -3348,6 +3423,7 @@ var VideosClient = class {
3348
3423
 
3349
3424
  // src/google/client.ts
3350
3425
  var GoogleClient = class {
3426
+ _gen;
3351
3427
  /** Google Web Search (SERP) — with optional deferred AI Overview follow-up. */
3352
3428
  search;
3353
3429
  /** Google Maps — places, reviews, photos, posts. */
@@ -3385,6 +3461,7 @@ var GoogleClient = class {
3385
3461
  /** Google Products — immersive product detail. */
3386
3462
  products;
3387
3463
  constructor(client) {
3464
+ this._gen = client;
3388
3465
  this.search = new SearchClient2(client);
3389
3466
  this.maps = new MapsClient(client);
3390
3467
  this.news = new NewsClient(client);
@@ -3404,6 +3481,104 @@ var GoogleClient = class {
3404
3481
  this.flights = new FlightsClient(client);
3405
3482
  this.products = new ProductsClient(client);
3406
3483
  }
3484
+ // --- BEGIN generated by sdk/codegen/facade — do not edit ---
3485
+ /** Google AI Overview (inline SERP block). Generated from the OpenAPI spec; returns the raw response object. */
3486
+ async googleAiOverviewInlineSerpBlock(params = {}) {
3487
+ return this._gen.request("/v1/google/ai-overview", { params });
3488
+ }
3489
+ /** Google Flights calendar — cheapest fare per date. Generated from the OpenAPI spec; returns the raw response object. */
3490
+ async googleFlightsCalendarCheapestFarePerDate(params = {}) {
3491
+ return this._gen.request("/v1/google/flights/calendar", { params });
3492
+ }
3493
+ // --- END generated by sdk/codegen/facade ---
3494
+ };
3495
+
3496
+ // src/google_play/client.ts
3497
+ var GooglePlayClient = class {
3498
+ client;
3499
+ constructor(client) {
3500
+ this.client = client;
3501
+ }
3502
+ /** Get app detail. Generated from the OpenAPI spec; returns the raw response object. */
3503
+ async getAppDetail(appId, params = {}) {
3504
+ return this.client.request(`/v1/google-play/apps/${appId}`, { params });
3505
+ }
3506
+ /** Get app permissions. Generated from the OpenAPI spec; returns the raw response object. */
3507
+ async getAppPermissions(appId, params = {}) {
3508
+ return this.client.request(`/v1/google-play/apps/${appId}/permissions`, { params });
3509
+ }
3510
+ /** Get app reviews. Generated from the OpenAPI spec; returns the raw response object. */
3511
+ async getAppReviews(appId, params = {}) {
3512
+ return this.client.request(`/v1/google-play/apps/${appId}/reviews`, { params });
3513
+ }
3514
+ /** Get similar apps. Generated from the OpenAPI spec; returns the raw response object. */
3515
+ async getSimilarApps(appId, params = {}) {
3516
+ return this.client.request(`/v1/google-play/apps/${appId}/similar`, { params });
3517
+ }
3518
+ /** List categories. Generated from the OpenAPI spec; returns the raw response object. */
3519
+ async listCategories(params = {}) {
3520
+ return this.client.request("/v1/google-play/categories", { params });
3521
+ }
3522
+ /** Browse a category. Generated from the OpenAPI spec; returns the raw response object. */
3523
+ async browseACategory(categoryId, params = {}) {
3524
+ return this.client.request(`/v1/google-play/categories/${categoryId}`, { params });
3525
+ }
3526
+ /** Top charts. Generated from the OpenAPI spec; returns the raw response object. */
3527
+ async topCharts(collection, params = {}) {
3528
+ return this.client.request(`/v1/google-play/collections/${collection}`, { params });
3529
+ }
3530
+ /** Get developer apps. Generated from the OpenAPI spec; returns the raw response object. */
3531
+ async getDeveloperApps(developer, params = {}) {
3532
+ return this.client.request(`/v1/google-play/developers/${developer}`, { params });
3533
+ }
3534
+ /** List markets. Generated from the OpenAPI spec; returns the raw response object. */
3535
+ async listMarkets(params = {}) {
3536
+ return this.client.request("/v1/google-play/markets", { params });
3537
+ }
3538
+ /** Search apps. Generated from the OpenAPI spec; returns the raw response object. */
3539
+ async searchApps(params = {}) {
3540
+ return this.client.request("/v1/google-play/search", { params });
3541
+ }
3542
+ };
3543
+
3544
+ // src/idealista/client.ts
3545
+ var IdealistaClient = class {
3546
+ client;
3547
+ constructor(client) {
3548
+ this.client = client;
3549
+ }
3550
+ /** Agency by phone. Generated from the OpenAPI spec; returns the raw response object. */
3551
+ async agencyByPhone(phone, params = {}) {
3552
+ return this.client.request(`/v1/idealista/agency/by-phone/${phone}`, { params });
3553
+ }
3554
+ /** Agency profile + listings. Generated from the OpenAPI spec; returns the raw response object. */
3555
+ async agencyProfileListings(shortName, params = {}) {
3556
+ return this.client.request(`/v1/idealista/agency/${shortName}`, { params });
3557
+ }
3558
+ /** List markets. Generated from the OpenAPI spec; returns the raw response object. */
3559
+ async listMarkets(params = {}) {
3560
+ return this.client.request("/v1/idealista/markets", { params });
3561
+ }
3562
+ /** Get property detail. Generated from the OpenAPI spec; returns the raw response object. */
3563
+ async getPropertyDetail(propertyCode, params = {}) {
3564
+ return this.client.request(`/v1/idealista/properties/${propertyCode}`, { params });
3565
+ }
3566
+ /** Get listing engagement stats. Generated from the OpenAPI spec; returns the raw response object. */
3567
+ async getListingEngagementStats(propertyCode, params = {}) {
3568
+ return this.client.request(`/v1/idealista/properties/${propertyCode}/stats`, { params });
3569
+ }
3570
+ /** Search listings. Generated from the OpenAPI spec; returns the raw response object. */
3571
+ async searchListings(params = {}) {
3572
+ return this.client.request("/v1/idealista/search", { params });
3573
+ }
3574
+ /** Search all (beats result cap). Generated from the OpenAPI spec; returns the raw response object. */
3575
+ async searchAllBeatsResultCap(params = {}) {
3576
+ return this.client.request("/v1/idealista/search/all", { params });
3577
+ }
3578
+ /** Resolve locations. Generated from the OpenAPI spec; returns the raw response object. */
3579
+ async resolveLocations(params = {}) {
3580
+ return this.client.request("/v1/idealista/suggest", { params });
3581
+ }
3407
3582
  };
3408
3583
 
3409
3584
  // src/reddit/search.ts
@@ -3473,16 +3648,13 @@ var SearchClient3 = class {
3473
3648
  * ```
3474
3649
  */
3475
3650
  async subreddits(options) {
3476
- return this.client.request(
3477
- "/v1/reddit/search/subreddits",
3478
- {
3479
- params: {
3480
- query: options.query,
3481
- after: options.after,
3482
- limit: options.limit
3483
- }
3651
+ return this.client.request("/v1/reddit/search/subreddits", {
3652
+ params: {
3653
+ query: options.query,
3654
+ after: options.after,
3655
+ limit: options.limit
3484
3656
  }
3485
- );
3657
+ });
3486
3658
  }
3487
3659
  /**
3488
3660
  * Search Reddit users.
@@ -3507,16 +3679,13 @@ var SearchClient3 = class {
3507
3679
  * ```
3508
3680
  */
3509
3681
  async users(options) {
3510
- return this.client.request(
3511
- "/v1/reddit/search/users",
3512
- {
3513
- params: {
3514
- query: options.query,
3515
- after: options.after,
3516
- limit: options.limit
3517
- }
3682
+ return this.client.request("/v1/reddit/search/users", {
3683
+ params: {
3684
+ query: options.query,
3685
+ after: options.after,
3686
+ limit: options.limit
3518
3687
  }
3519
- );
3688
+ });
3520
3689
  }
3521
3690
  /**
3522
3691
  * Get Reddit posts linking to a specific domain.
@@ -3545,18 +3714,15 @@ var SearchClient3 = class {
3545
3714
  * ```
3546
3715
  */
3547
3716
  async domainPosts(options) {
3548
- return this.client.request(
3549
- "/v1/reddit/search/domain",
3550
- {
3551
- params: {
3552
- domain: options.domain,
3553
- sort: options.sort,
3554
- time: options.time,
3555
- after: options.after,
3556
- limit: options.limit
3557
- }
3717
+ return this.client.request("/v1/reddit/search/domain", {
3718
+ params: {
3719
+ domain: options.domain,
3720
+ sort: options.sort,
3721
+ time: options.time,
3722
+ after: options.after,
3723
+ limit: options.limit
3558
3724
  }
3559
- );
3725
+ });
3560
3726
  }
3561
3727
  };
3562
3728
 
@@ -3620,10 +3786,9 @@ var PostsClient = class {
3620
3786
  * ```
3621
3787
  */
3622
3788
  async get(postId, options = {}) {
3623
- return this.client.request(
3624
- `/v1/reddit/posts/${postId}`,
3625
- { params: { subreddit: options.subreddit } }
3626
- );
3789
+ return this.client.request(`/v1/reddit/posts/${postId}`, {
3790
+ params: { subreddit: options.subreddit }
3791
+ });
3627
3792
  }
3628
3793
  /**
3629
3794
  * Get comments for a Reddit post.
@@ -3651,17 +3816,14 @@ var PostsClient = class {
3651
3816
  * ```
3652
3817
  */
3653
3818
  async comments(postId, options = {}) {
3654
- return this.client.request(
3655
- `/v1/reddit/posts/${postId}/comments`,
3656
- {
3657
- params: {
3658
- subreddit: options.subreddit,
3659
- sort: options.sort,
3660
- depth: options.depth,
3661
- limit: options.limit
3662
- }
3819
+ return this.client.request(`/v1/reddit/posts/${postId}/comments`, {
3820
+ params: {
3821
+ subreddit: options.subreddit,
3822
+ sort: options.sort,
3823
+ depth: options.depth,
3824
+ limit: options.limit
3663
3825
  }
3664
- );
3826
+ });
3665
3827
  }
3666
3828
  /**
3667
3829
  * Get cross-posts and duplicate submissions of a Reddit post.
@@ -3685,15 +3847,12 @@ var PostsClient = class {
3685
3847
  * ```
3686
3848
  */
3687
3849
  async duplicates(postId, options = {}) {
3688
- return this.client.request(
3689
- `/v1/reddit/posts/${postId}/duplicates`,
3690
- {
3691
- params: {
3692
- after: options.after,
3693
- limit: options.limit
3694
- }
3850
+ return this.client.request(`/v1/reddit/posts/${postId}/duplicates`, {
3851
+ params: {
3852
+ after: options.after,
3853
+ limit: options.limit
3695
3854
  }
3696
- );
3855
+ });
3697
3856
  }
3698
3857
  };
3699
3858
 
@@ -3893,9 +4052,7 @@ var UsersClient3 = class {
3893
4052
  * ```
3894
4053
  */
3895
4054
  async get(username) {
3896
- return this.client.request(
3897
- `/v1/reddit/users/${username}`
3898
- );
4055
+ return this.client.request(`/v1/reddit/users/${username}`);
3899
4056
  }
3900
4057
  /**
3901
4058
  * Get posts submitted by a Reddit user.
@@ -3923,17 +4080,14 @@ var UsersClient3 = class {
3923
4080
  * ```
3924
4081
  */
3925
4082
  async posts(username, options = {}) {
3926
- return this.client.request(
3927
- `/v1/reddit/users/${username}/posts`,
3928
- {
3929
- params: {
3930
- sort: options.sort,
3931
- time: options.time,
3932
- after: options.after,
3933
- limit: options.limit
3934
- }
4083
+ return this.client.request(`/v1/reddit/users/${username}/posts`, {
4084
+ params: {
4085
+ sort: options.sort,
4086
+ time: options.time,
4087
+ after: options.after,
4088
+ limit: options.limit
3935
4089
  }
3936
- );
4090
+ });
3937
4091
  }
3938
4092
  /**
3939
4093
  * Get comments made by a Reddit user.
@@ -3960,17 +4114,14 @@ var UsersClient3 = class {
3960
4114
  * ```
3961
4115
  */
3962
4116
  async comments(username, options = {}) {
3963
- return this.client.request(
3964
- `/v1/reddit/users/${username}/comments`,
3965
- {
3966
- params: {
3967
- sort: options.sort,
3968
- time: options.time,
3969
- after: options.after,
3970
- limit: options.limit
3971
- }
4117
+ return this.client.request(`/v1/reddit/users/${username}/comments`, {
4118
+ params: {
4119
+ sort: options.sort,
4120
+ time: options.time,
4121
+ after: options.after,
4122
+ limit: options.limit
3972
4123
  }
3973
- );
4124
+ });
3974
4125
  }
3975
4126
  /**
3976
4127
  * Get subreddits moderated by a Reddit user.
@@ -3989,9 +4140,7 @@ var UsersClient3 = class {
3989
4140
  * ```
3990
4141
  */
3991
4142
  async moderated(username) {
3992
- return this.client.request(
3993
- `/v1/reddit/users/${username}/moderated`
3994
- );
4143
+ return this.client.request(`/v1/reddit/users/${username}/moderated`);
3995
4144
  }
3996
4145
  /**
3997
4146
  * Get trophies awarded to a Reddit user.
@@ -4010,9 +4159,7 @@ var UsersClient3 = class {
4010
4159
  * ```
4011
4160
  */
4012
4161
  async trophies(username) {
4013
- return this.client.request(
4014
- `/v1/reddit/users/${username}/trophies`
4015
- );
4162
+ return this.client.request(`/v1/reddit/users/${username}/trophies`);
4016
4163
  }
4017
4164
  };
4018
4165
 
@@ -4086,6 +4233,48 @@ var ApartmentsClient = class {
4086
4233
  }
4087
4234
  throw new Error("Provide either url, or both slug and propertyId");
4088
4235
  }
4236
+ // --- BEGIN generated by sdk/codegen/facade — do not edit ---
4237
+ /** Get property detail by slug + id. Generated from the OpenAPI spec; returns the raw response object. */
4238
+ async getPropertyDetailBySlugId(slug, propertyId, params = {}) {
4239
+ return this.client.request(`/v1/apartments/properties/${slug}/${propertyId}`, { params });
4240
+ }
4241
+ // --- END generated by sdk/codegen/facade ---
4242
+ };
4243
+
4244
+ // src/app_store/client.ts
4245
+ var AppStoreClient = class {
4246
+ client;
4247
+ constructor(client) {
4248
+ this.client = client;
4249
+ }
4250
+ /** Get app detail. Generated from the OpenAPI spec; returns the raw response object. */
4251
+ async getAppDetail(appId, params = {}) {
4252
+ return this.client.request(`/v1/app-store/apps/${appId}`, { params });
4253
+ }
4254
+ /** Get app reviews. Generated from the OpenAPI spec; returns the raw response object. */
4255
+ async getAppReviews(appId, params = {}) {
4256
+ return this.client.request(`/v1/app-store/apps/${appId}/reviews`, { params });
4257
+ }
4258
+ /** Top charts. Generated from the OpenAPI spec; returns the raw response object. */
4259
+ async topCharts(params = {}) {
4260
+ return this.client.request("/v1/app-store/charts", { params });
4261
+ }
4262
+ /** Get developer apps. Generated from the OpenAPI spec; returns the raw response object. */
4263
+ async getDeveloperApps(artistId, params = {}) {
4264
+ return this.client.request(`/v1/app-store/developers/${artistId}`, { params });
4265
+ }
4266
+ /** List genres. Generated from the OpenAPI spec; returns the raw response object. */
4267
+ async listGenres(params = {}) {
4268
+ return this.client.request("/v1/app-store/genres", { params });
4269
+ }
4270
+ /** List markets. Generated from the OpenAPI spec; returns the raw response object. */
4271
+ async listMarkets(params = {}) {
4272
+ return this.client.request("/v1/app-store/markets", { params });
4273
+ }
4274
+ /** Search apps. Generated from the OpenAPI spec; returns the raw response object. */
4275
+ async searchApps(params = {}) {
4276
+ return this.client.request("/v1/app-store/search", { params });
4277
+ }
4089
4278
  };
4090
4279
 
4091
4280
  // src/instagram/users.ts
@@ -4103,15 +4292,11 @@ var UsersClient4 = class {
4103
4292
  * @deprecated Temporarily unavailable — authenticated data is temporarily offline.
4104
4293
  */
4105
4294
  async about(username) {
4106
- return this.client.request(
4107
- `/v1/instagram/users/${username}/about`
4108
- );
4295
+ return this.client.request(`/v1/instagram/users/${username}/about`);
4109
4296
  }
4110
4297
  /** Get accounts related/suggested for a user. */
4111
4298
  async related(username) {
4112
- return this.client.request(
4113
- `/v1/instagram/users/${username}/related`
4114
- );
4299
+ return this.client.request(`/v1/instagram/users/${username}/related`);
4115
4300
  }
4116
4301
  /** Get a user's timeline posts. */
4117
4302
  async posts(username, options = {}) {
@@ -4143,9 +4328,7 @@ var UsersClient4 = class {
4143
4328
  * @deprecated Temporarily unavailable — authenticated data is temporarily offline.
4144
4329
  */
4145
4330
  async pinned(username) {
4146
- return this.client.request(
4147
- `/v1/instagram/users/${username}/pinned`
4148
- );
4331
+ return this.client.request(`/v1/instagram/users/${username}/pinned`);
4149
4332
  }
4150
4333
  /**
4151
4334
  * @deprecated Temporarily unavailable — authenticated data is temporarily offline.
@@ -4158,26 +4341,22 @@ var UsersClient4 = class {
4158
4341
  * @param options.order - Ordering hint (e.g. "default", "date_followed_earliest").
4159
4342
  */
4160
4343
  async followers(username, options = {}) {
4161
- return this.client.request(
4162
- `/v1/instagram/users/${username}/followers`,
4163
- {
4164
- params: {
4165
- amount: options.amount,
4166
- cursor: options.cursor,
4167
- order: options.order
4168
- }
4344
+ return this.client.request(`/v1/instagram/users/${username}/followers`, {
4345
+ params: {
4346
+ amount: options.amount,
4347
+ cursor: options.cursor,
4348
+ order: options.order
4169
4349
  }
4170
- );
4350
+ });
4171
4351
  }
4172
4352
  /**
4173
4353
  * Get the accounts a user follows.
4174
4354
  * @deprecated Temporarily unavailable — authenticated data is temporarily offline.
4175
4355
  */
4176
4356
  async following(username, options = {}) {
4177
- return this.client.request(
4178
- `/v1/instagram/users/${username}/following`,
4179
- { params: { amount: options.amount, cursor: options.cursor } }
4180
- );
4357
+ return this.client.request(`/v1/instagram/users/${username}/following`, {
4358
+ params: { amount: options.amount, cursor: options.cursor }
4359
+ });
4181
4360
  }
4182
4361
  /**
4183
4362
  * Search within a user's followers by name/username.
@@ -4196,18 +4375,14 @@ var UsersClient4 = class {
4196
4375
  * @deprecated Temporarily unavailable — authenticated data is temporarily offline.
4197
4376
  */
4198
4377
  async stories(username) {
4199
- return this.client.request(
4200
- `/v1/instagram/users/${username}/stories`
4201
- );
4378
+ return this.client.request(`/v1/instagram/users/${username}/stories`);
4202
4379
  }
4203
4380
  /**
4204
4381
  * Get a user's story highlights.
4205
4382
  * @deprecated Temporarily unavailable — authenticated data is temporarily offline.
4206
4383
  */
4207
4384
  async highlights(username) {
4208
- return this.client.request(
4209
- `/v1/instagram/users/${username}/highlights`
4210
- );
4385
+ return this.client.request(`/v1/instagram/users/${username}/highlights`);
4211
4386
  }
4212
4387
  async media(path, options) {
4213
4388
  return this.client.request(path, {
@@ -4236,19 +4411,16 @@ var MediaClient = class {
4236
4411
  }
4237
4412
  /** Get top-level comments on a media. */
4238
4413
  async comments(code, options = {}) {
4239
- return this.client.request(
4240
- `/v1/instagram/media/${code}/comments`,
4241
- { params: { amount: options.amount, cursor: options.cursor } }
4242
- );
4414
+ return this.client.request(`/v1/instagram/media/${code}/comments`, {
4415
+ params: { amount: options.amount, cursor: options.cursor }
4416
+ });
4243
4417
  }
4244
4418
  /**
4245
4419
  * Get the users who liked a media.
4246
4420
  * @deprecated Temporarily unavailable — authenticated data is temporarily offline.
4247
4421
  */
4248
4422
  async likers(code) {
4249
- return this.client.request(
4250
- `/v1/instagram/media/${code}/likers`
4251
- );
4423
+ return this.client.request(`/v1/instagram/media/${code}/likers`);
4252
4424
  }
4253
4425
  /**
4254
4426
  * Get replies to a comment.
@@ -4279,47 +4451,42 @@ var SearchClient4 = class {
4279
4451
  * @deprecated Temporarily unavailable — authenticated data is temporarily offline.
4280
4452
  */
4281
4453
  async users(query) {
4282
- return this.client.request(
4283
- "/v1/instagram/search/users",
4284
- { params: { query } }
4285
- );
4454
+ return this.client.request("/v1/instagram/search/users", {
4455
+ params: { query }
4456
+ });
4286
4457
  }
4287
4458
  /** Search hashtags. */
4288
4459
  async hashtags(query) {
4289
- return this.client.request(
4290
- "/v1/instagram/search/hashtags",
4291
- { params: { query } }
4292
- );
4460
+ return this.client.request("/v1/instagram/search/hashtags", {
4461
+ params: { query }
4462
+ });
4293
4463
  }
4294
4464
  /**
4295
4465
  * Search places/locations.
4296
4466
  * @deprecated Temporarily unavailable — authenticated data is temporarily offline.
4297
4467
  */
4298
4468
  async places(query) {
4299
- return this.client.request(
4300
- "/v1/instagram/search/places",
4301
- { params: { query } }
4302
- );
4469
+ return this.client.request("/v1/instagram/search/places", {
4470
+ params: { query }
4471
+ });
4303
4472
  }
4304
4473
  /**
4305
4474
  * Search reels.
4306
4475
  * @deprecated Temporarily unavailable — authenticated data is temporarily offline.
4307
4476
  */
4308
4477
  async reels(query) {
4309
- return this.client.request(
4310
- "/v1/instagram/search/reels",
4311
- { params: { query } }
4312
- );
4478
+ return this.client.request("/v1/instagram/search/reels", {
4479
+ params: { query }
4480
+ });
4313
4481
  }
4314
4482
  /**
4315
4483
  * Search music/audio tracks.
4316
4484
  * @deprecated Temporarily unavailable — authenticated data is temporarily offline.
4317
4485
  */
4318
4486
  async music(query) {
4319
- return this.client.request(
4320
- "/v1/instagram/search/music",
4321
- { params: { query } }
4322
- );
4487
+ return this.client.request("/v1/instagram/search/music", {
4488
+ params: { query }
4489
+ });
4323
4490
  }
4324
4491
  /** Get blended "top" results (users, hashtags, and places). */
4325
4492
  async top(query) {
@@ -4332,10 +4499,9 @@ var SearchClient4 = class {
4332
4499
  * @deprecated Temporarily unavailable — authenticated data is temporarily offline.
4333
4500
  */
4334
4501
  async autocomplete(query) {
4335
- return this.client.request(
4336
- "/v1/instagram/search/autocomplete",
4337
- { params: { query } }
4338
- );
4502
+ return this.client.request("/v1/instagram/search/autocomplete", {
4503
+ params: { query }
4504
+ });
4339
4505
  }
4340
4506
  };
4341
4507
 
@@ -4363,22 +4529,14 @@ var HashtagsClient = class {
4363
4529
  }
4364
4530
  /** Get the most recent media for a hashtag. */
4365
4531
  async recent(tag, options = {}) {
4366
- return mediaFeed(
4367
- this.client,
4368
- `/v1/instagram/hashtags/${tag}/recent`,
4369
- options
4370
- );
4532
+ return mediaFeed(this.client, `/v1/instagram/hashtags/${tag}/recent`, options);
4371
4533
  }
4372
4534
  /**
4373
4535
  * Get reels for a hashtag.
4374
4536
  * @deprecated Temporarily unavailable — authenticated data is temporarily offline.
4375
4537
  */
4376
4538
  async reels(tag, options = {}) {
4377
- return mediaFeed(
4378
- this.client,
4379
- `/v1/instagram/hashtags/${tag}/reels`,
4380
- options
4381
- );
4539
+ return mediaFeed(this.client, `/v1/instagram/hashtags/${tag}/reels`, options);
4382
4540
  }
4383
4541
  };
4384
4542
  var LocationsClient = class {
@@ -4405,21 +4563,16 @@ var LocationsClient = class {
4405
4563
  * @deprecated Temporarily unavailable — authenticated data is temporarily offline.
4406
4564
  */
4407
4565
  async recent(pk, options = {}) {
4408
- return mediaFeed(
4409
- this.client,
4410
- `/v1/instagram/locations/${pk}/recent`,
4411
- options
4412
- );
4566
+ return mediaFeed(this.client, `/v1/instagram/locations/${pk}/recent`, options);
4413
4567
  }
4414
4568
  /**
4415
4569
  * Search locations by name.
4416
4570
  * @deprecated Temporarily unavailable — authenticated data is temporarily offline.
4417
4571
  */
4418
4572
  async search(query) {
4419
- return this.client.request(
4420
- "/v1/instagram/locations/search",
4421
- { params: { query } }
4422
- );
4573
+ return this.client.request("/v1/instagram/locations/search", {
4574
+ params: { query }
4575
+ });
4423
4576
  }
4424
4577
  };
4425
4578
  var AudioClient = class {
@@ -4439,11 +4592,7 @@ var AudioClient = class {
4439
4592
  * @deprecated Temporarily unavailable — authenticated data is temporarily offline.
4440
4593
  */
4441
4594
  async media(audioId, options = {}) {
4442
- return mediaFeed(
4443
- this.client,
4444
- `/v1/instagram/audio/${audioId}/media`,
4445
- options
4446
- );
4595
+ return mediaFeed(this.client, `/v1/instagram/audio/${audioId}/media`, options);
4447
4596
  }
4448
4597
  /**
4449
4598
  * Get currently-trending audio tracks.
@@ -4456,6 +4605,7 @@ var AudioClient = class {
4456
4605
 
4457
4606
  // src/instagram/client.ts
4458
4607
  var InstagramClient = class {
4608
+ _gen;
4459
4609
  /** Client for user operations (profile, posts, followers, stories, highlights) */
4460
4610
  users;
4461
4611
  /** Client for media operations (detail, comments, replies, likers, oEmbed) */
@@ -4474,6 +4624,7 @@ var InstagramClient = class {
4474
4624
  * @param client - The base HTTP client for making requests.
4475
4625
  */
4476
4626
  constructor(client) {
4627
+ this._gen = client;
4477
4628
  this.users = new UsersClient4(client);
4478
4629
  this.media = new MediaClient(client);
4479
4630
  this.search = new SearchClient4(client);
@@ -4481,12 +4632,20 @@ var InstagramClient = class {
4481
4632
  this.locations = new LocationsClient(client);
4482
4633
  this.audio = new AudioClient(client);
4483
4634
  }
4635
+ // --- BEGIN generated by sdk/codegen/facade — do not edit ---
4636
+ /** Get location. Generated from the OpenAPI spec; returns the raw response object. */
4637
+ async getLocation(locationPk, params = {}) {
4638
+ return this._gen.request(`/v1/instagram/locations/${locationPk}`, { params });
4639
+ }
4640
+ // --- END generated by sdk/codegen/facade ---
4484
4641
  };
4485
4642
 
4486
4643
  // src/redfin/client.ts
4487
4644
  var RedfinClient = class {
4645
+ _gen;
4488
4646
  client;
4489
4647
  constructor(client) {
4648
+ this._gen = client;
4490
4649
  this.client = client;
4491
4650
  }
4492
4651
  /**
@@ -4576,6 +4735,56 @@ var RedfinClient = class {
4576
4735
  async listMarkets() {
4577
4736
  return this.client.request("/v1/redfin/markets");
4578
4737
  }
4738
+ // --- BEGIN generated by sdk/codegen/facade — do not edit ---
4739
+ /** Get property detail. Generated from the OpenAPI spec; returns the raw response object. */
4740
+ async getPropertyDetail(propertyId, params = {}) {
4741
+ return this._gen.request(`/v1/redfin/property/${propertyId}`, { params });
4742
+ }
4743
+ // --- END generated by sdk/codegen/facade ---
4744
+ };
4745
+
4746
+ // src/account/client.ts
4747
+ var AccountClient = class {
4748
+ client;
4749
+ constructor(client) {
4750
+ this.client = client;
4751
+ }
4752
+ /** Get account info. Generated from the OpenAPI spec; returns the raw response object. */
4753
+ async getAccountInfo(params = {}) {
4754
+ return this.client.request("/v1/account/me", { params });
4755
+ }
4756
+ };
4757
+
4758
+ // src/airbnb/client.ts
4759
+ var AirbnbClient = class {
4760
+ client;
4761
+ constructor(client) {
4762
+ this.client = client;
4763
+ }
4764
+ /** Search experiences. Generated from the OpenAPI spec; returns the raw response object. */
4765
+ async searchExperiences(params = {}) {
4766
+ return this.client.request("/v1/airbnb/experiences", { params });
4767
+ }
4768
+ /** Get experience detail. Generated from the OpenAPI spec; returns the raw response object. */
4769
+ async getExperienceDetail(experienceId, params = {}) {
4770
+ return this.client.request(`/v1/airbnb/experiences/${experienceId}`, { params });
4771
+ }
4772
+ /** Get listing detail. Generated from the OpenAPI spec; returns the raw response object. */
4773
+ async getListingDetail(roomId, params = {}) {
4774
+ return this.client.request(`/v1/airbnb/listings/${roomId}`, { params });
4775
+ }
4776
+ /** Get availability calendar. Generated from the OpenAPI spec; returns the raw response object. */
4777
+ async getAvailabilityCalendar(roomId, params = {}) {
4778
+ return this.client.request(`/v1/airbnb/listings/${roomId}/calendar`, { params });
4779
+ }
4780
+ /** Get listing reviews. Generated from the OpenAPI spec; returns the raw response object. */
4781
+ async getListingReviews(roomId, params = {}) {
4782
+ return this.client.request(`/v1/airbnb/listings/${roomId}/reviews`, { params });
4783
+ }
4784
+ /** Search stays. Generated from the OpenAPI spec; returns the raw response object. */
4785
+ async searchStays(params = {}) {
4786
+ return this.client.request("/v1/airbnb/search", { params });
4787
+ }
4579
4788
  };
4580
4789
 
4581
4790
  // src/amazon/search.ts
@@ -4636,16 +4845,13 @@ var ProductsClient2 = class {
4636
4845
  * @throws NotFoundError - If the product doesn't exist.
4637
4846
  */
4638
4847
  async get(asin, options = {}) {
4639
- return this.client.request(
4640
- `/v1/amazon/products/${asin}`,
4641
- {
4642
- params: {
4643
- domain: options.domain,
4644
- zip: options.zip,
4645
- language: options.language
4646
- }
4848
+ return this.client.request(`/v1/amazon/products/${asin}`, {
4849
+ params: {
4850
+ domain: options.domain,
4851
+ zip: options.zip,
4852
+ language: options.language
4647
4853
  }
4648
- );
4854
+ });
4649
4855
  }
4650
4856
  /**
4651
4857
  * Get all-seller offers (and the buybox winner) for an ASIN.
@@ -4655,10 +4861,9 @@ var ProductsClient2 = class {
4655
4861
  * @returns Offers response with the buybox winner and full offer list.
4656
4862
  */
4657
4863
  async offers(asin, options = {}) {
4658
- return this.client.request(
4659
- `/v1/amazon/products/${asin}/offers`,
4660
- { params: { domain: options.domain, zip: options.zip } }
4661
- );
4864
+ return this.client.request(`/v1/amazon/products/${asin}/offers`, {
4865
+ params: { domain: options.domain, zip: options.zip }
4866
+ });
4662
4867
  }
4663
4868
  /**
4664
4869
  * Get product reviews for an ASIN.
@@ -4668,19 +4873,16 @@ var ProductsClient2 = class {
4668
4873
  * @returns Reviews response with reviews, aggregate rating, and breakdown.
4669
4874
  */
4670
4875
  async reviews(asin, options = {}) {
4671
- return this.client.request(
4672
- `/v1/amazon/products/${asin}/reviews`,
4673
- {
4674
- params: {
4675
- domain: options.domain,
4676
- page: options.page,
4677
- sort_by: options.sort_by,
4678
- star: options.star,
4679
- verified_only: options.verified_only,
4680
- media_only: options.media_only
4681
- }
4876
+ return this.client.request(`/v1/amazon/products/${asin}/reviews`, {
4877
+ params: {
4878
+ domain: options.domain,
4879
+ page: options.page,
4880
+ sort_by: options.sort_by,
4881
+ star: options.star,
4882
+ verified_only: options.verified_only,
4883
+ media_only: options.media_only
4682
4884
  }
4683
- );
4885
+ });
4684
4886
  }
4685
4887
  };
4686
4888
 
@@ -4768,10 +4970,9 @@ var SellersClient = class {
4768
4970
  * @throws NotFoundError - If the seller doesn't exist.
4769
4971
  */
4770
4972
  async get(sellerId, options = {}) {
4771
- return this.client.request(
4772
- `/v1/amazon/sellers/${sellerId}`,
4773
- { params: { domain: options.domain } }
4774
- );
4973
+ return this.client.request(`/v1/amazon/sellers/${sellerId}`, {
4974
+ params: { domain: options.domain }
4975
+ });
4775
4976
  }
4776
4977
  /**
4777
4978
  * Get a seller's storefront listings.
@@ -4781,10 +4982,9 @@ var SellersClient = class {
4781
4982
  * @returns Seller products response with result rows and pagination.
4782
4983
  */
4783
4984
  async products(sellerId, options = {}) {
4784
- return this.client.request(
4785
- `/v1/amazon/sellers/${sellerId}/products`,
4786
- { params: { domain: options.domain, page: options.page } }
4787
- );
4985
+ return this.client.request(`/v1/amazon/sellers/${sellerId}/products`, {
4986
+ params: { domain: options.domain, page: options.page }
4987
+ });
4788
4988
  }
4789
4989
  /**
4790
4990
  * Get buyer feedback entries for a seller.
@@ -4794,10 +4994,9 @@ var SellersClient = class {
4794
4994
  * @returns Seller feedback response with feedback entries and pagination.
4795
4995
  */
4796
4996
  async feedback(sellerId, options = {}) {
4797
- return this.client.request(
4798
- `/v1/amazon/sellers/${sellerId}/feedback`,
4799
- { params: { domain: options.domain, page: options.page } }
4800
- );
4997
+ return this.client.request(`/v1/amazon/sellers/${sellerId}/feedback`, {
4998
+ params: { domain: options.domain, page: options.page }
4999
+ });
4801
5000
  }
4802
5001
  };
4803
5002
 
@@ -4886,17 +5085,14 @@ var SearchClient6 = class {
4886
5085
  * @throws ValidationError - If the category ID or market is invalid.
4887
5086
  */
4888
5087
  async categoryItems(categoryId, options = {}) {
4889
- return this.client.request(
4890
- `/v1/shopee/category/${categoryId}/items`,
4891
- {
4892
- params: {
4893
- market: options.market,
4894
- limit: options.limit,
4895
- offset: options.offset,
4896
- sort_by: options.sort_by
4897
- }
5088
+ return this.client.request(`/v1/shopee/category/${categoryId}/items`, {
5089
+ params: {
5090
+ market: options.market,
5091
+ limit: options.limit,
5092
+ offset: options.offset,
5093
+ sort_by: options.sort_by
4898
5094
  }
4899
- );
5095
+ });
4900
5096
  }
4901
5097
  };
4902
5098
 
@@ -4918,10 +5114,9 @@ var ProductsClient3 = class {
4918
5114
  * @throws ValidationError - If the market code is invalid.
4919
5115
  */
4920
5116
  async get(shopId, itemId, options = {}) {
4921
- return this.client.request(
4922
- `/v1/shopee/product/${shopId}/${itemId}`,
4923
- { params: { market: options.market } }
4924
- );
5117
+ return this.client.request(`/v1/shopee/product/${shopId}/${itemId}`, {
5118
+ params: { market: options.market }
5119
+ });
4925
5120
  }
4926
5121
  };
4927
5122
 
@@ -4943,18 +5138,15 @@ var ReviewsClient = class {
4943
5138
  * @throws ValidationError - If the parameters are invalid.
4944
5139
  */
4945
5140
  async get(shopId, itemId, options = {}) {
4946
- return this.client.request(
4947
- `/v1/shopee/product/${shopId}/${itemId}/reviews`,
4948
- {
4949
- params: {
4950
- market: options.market,
4951
- limit: options.limit,
4952
- offset: options.offset,
4953
- rating: options.rating,
4954
- filter: options.filter
4955
- }
5141
+ return this.client.request(`/v1/shopee/product/${shopId}/${itemId}/reviews`, {
5142
+ params: {
5143
+ market: options.market,
5144
+ limit: options.limit,
5145
+ offset: options.offset,
5146
+ rating: options.rating,
5147
+ filter: options.filter
4956
5148
  }
4957
- );
5149
+ });
4958
5150
  }
4959
5151
  };
4960
5152
 
@@ -5351,10 +5543,9 @@ var TrendingClient = class {
5351
5543
  * @returns The trending hashtags response.
5352
5544
  */
5353
5545
  async hashtags(options = {}) {
5354
- return this.client.request(
5355
- "/v1/tiktok/trending/hashtags",
5356
- { params: { region: options.region, period: options.period, count: options.count } }
5357
- );
5546
+ return this.client.request("/v1/tiktok/trending/hashtags", {
5547
+ params: { region: options.region, period: options.period, count: options.count }
5548
+ });
5358
5549
  }
5359
5550
  /**
5360
5551
  * Get trending songs/sounds (mobile hot-music feed — ranked by usage).
@@ -5363,10 +5554,9 @@ var TrendingClient = class {
5363
5554
  * @returns The trending songs response.
5364
5555
  */
5365
5556
  async songs(options = {}) {
5366
- return this.client.request(
5367
- "/v1/tiktok/trending/songs",
5368
- { params: { region: options.region, period: options.period, count: options.count } }
5369
- );
5557
+ return this.client.request("/v1/tiktok/trending/songs", {
5558
+ params: { region: options.region, period: options.period, count: options.count }
5559
+ });
5370
5560
  }
5371
5561
  };
5372
5562
 
@@ -5396,6 +5586,37 @@ var AdsClient = class {
5396
5586
  }
5397
5587
  });
5398
5588
  }
5589
+ /**
5590
+ * Look up advertiser business ids by name.
5591
+ *
5592
+ * Feed the returned `id` into {@link search} as `advertiser_id` to list all of an
5593
+ * advertiser's ads. Matching is on the legal entity name, so a brand may appear under
5594
+ * several legal entities.
5595
+ *
5596
+ * @param params - `query` (required), plus optional `region` and `count`.
5597
+ * @returns Matching advertisers, each with a business `id`.
5598
+ */
5599
+ async searchAdvertisers(params) {
5600
+ return this.client.request("/v1/tiktok/ads/advertisers", {
5601
+ params: {
5602
+ query: params.query,
5603
+ region: params.region,
5604
+ count: params.count
5605
+ }
5606
+ });
5607
+ }
5608
+ /**
5609
+ * Get a single ad's advertiser, creatives, and full targeting/impression breakdown.
5610
+ *
5611
+ * @param adId - Ad id from a {@link search} result.
5612
+ * @param params - Optional `region` (EU-only, default "DE").
5613
+ * @returns The ad, its advertiser, and per-region age/gender impression targeting.
5614
+ */
5615
+ async getDetail(adId, params = {}) {
5616
+ return this.client.request(`/v1/tiktok/ads/${adId}`, {
5617
+ params: { region: params.region }
5618
+ });
5619
+ }
5399
5620
  };
5400
5621
 
5401
5622
  // src/tiktok/reference.ts
@@ -5424,6 +5645,7 @@ var ReferenceClient4 = class {
5424
5645
 
5425
5646
  // src/tiktok/client.ts
5426
5647
  var TikTokClient = class {
5648
+ _gen;
5427
5649
  /** Client for profiles, videos, followers, following, liked, reposts */
5428
5650
  users;
5429
5651
  /** Client for video detail, comments, replies, related, transcript, oEmbed */
@@ -5446,6 +5668,7 @@ var TikTokClient = class {
5446
5668
  * @param client - The base HTTP client for making requests.
5447
5669
  */
5448
5670
  constructor(client) {
5671
+ this._gen = client;
5449
5672
  this.users = new UsersClient5(client);
5450
5673
  this.videos = new VideosClient2(client);
5451
5674
  this.search = new SearchClient7(client);
@@ -5455,6 +5678,16 @@ var TikTokClient = class {
5455
5678
  this.ads = new AdsClient(client);
5456
5679
  this.reference = new ReferenceClient4(client);
5457
5680
  }
5681
+ // --- BEGIN generated by sdk/codegen/facade — do not edit ---
5682
+ /** Search TikTok advertisers. Generated from the OpenAPI spec; returns the raw response object. */
5683
+ async searchTiktokAdvertisers(params = {}) {
5684
+ return this._gen.request("/v1/tiktok/ads/advertisers", { params });
5685
+ }
5686
+ /** Get TikTok ad detail. Generated from the OpenAPI spec; returns the raw response object. */
5687
+ async getTiktokAdDetail(adId, params = {}) {
5688
+ return this._gen.request(`/v1/tiktok/ads/${adId}`, { params });
5689
+ }
5690
+ // --- END generated by sdk/codegen/facade ---
5458
5691
  };
5459
5692
 
5460
5693
  // src/ebay/search.ts
@@ -5538,10 +5771,9 @@ var ItemsClient2 = class {
5538
5771
  * @throws NotFoundError - If the item doesn't exist.
5539
5772
  */
5540
5773
  async get(itemId, options = {}) {
5541
- return this.client.request(
5542
- `/v1/ebay/items/${itemId}`,
5543
- { params: { domain: options.domain } }
5544
- );
5774
+ return this.client.request(`/v1/ebay/items/${itemId}`, {
5775
+ params: { domain: options.domain }
5776
+ });
5545
5777
  }
5546
5778
  /**
5547
5779
  * Get the catalog product reviews shown on an eBay listing.
@@ -5551,16 +5783,13 @@ var ItemsClient2 = class {
5551
5783
  * @returns Reviews response with reviews, aggregate rating, and histogram.
5552
5784
  */
5553
5785
  async reviews(itemId, options = {}) {
5554
- return this.client.request(
5555
- `/v1/ebay/items/${itemId}/reviews`,
5556
- {
5557
- params: {
5558
- domain: options.domain,
5559
- page: options.page,
5560
- product_id: options.productId
5561
- }
5786
+ return this.client.request(`/v1/ebay/items/${itemId}/reviews`, {
5787
+ params: {
5788
+ domain: options.domain,
5789
+ page: options.page,
5790
+ product_id: options.productId
5562
5791
  }
5563
- );
5792
+ });
5564
5793
  }
5565
5794
  };
5566
5795
 
@@ -5579,10 +5808,9 @@ var SellersClient2 = class {
5579
5808
  * @throws NotFoundError - If the seller doesn't exist.
5580
5809
  */
5581
5810
  async get(username, options = {}) {
5582
- return this.client.request(
5583
- `/v1/ebay/sellers/${username}`,
5584
- { params: { domain: options.domain } }
5585
- );
5811
+ return this.client.request(`/v1/ebay/sellers/${username}`, {
5812
+ params: { domain: options.domain }
5813
+ });
5586
5814
  }
5587
5815
  /**
5588
5816
  * List the active listings of a single eBay seller.
@@ -5592,17 +5820,14 @@ var SellersClient2 = class {
5592
5820
  * @returns Seller items response with result cards and pagination.
5593
5821
  */
5594
5822
  async items(username, options = {}) {
5595
- return this.client.request(
5596
- `/v1/ebay/sellers/${username}/items`,
5597
- {
5598
- params: {
5599
- domain: options.domain,
5600
- query: options.query,
5601
- page: options.page,
5602
- per_page: options.per_page
5603
- }
5823
+ return this.client.request(`/v1/ebay/sellers/${username}/items`, {
5824
+ params: {
5825
+ domain: options.domain,
5826
+ query: options.query,
5827
+ page: options.page,
5828
+ per_page: options.per_page
5604
5829
  }
5605
- );
5830
+ });
5606
5831
  }
5607
5832
  /**
5608
5833
  * Get a seller's recent feedback comments.
@@ -5612,10 +5837,9 @@ var SellersClient2 = class {
5612
5837
  * @returns Seller feedback response with feedback entries and pagination.
5613
5838
  */
5614
5839
  async feedback(username, options = {}) {
5615
- return this.client.request(
5616
- `/v1/ebay/sellers/${username}/feedback`,
5617
- { params: { domain: options.domain, page: options.page } }
5618
- );
5840
+ return this.client.request(`/v1/ebay/sellers/${username}/feedback`, {
5841
+ params: { domain: options.domain, page: options.page }
5842
+ });
5619
5843
  }
5620
5844
  };
5621
5845
 
@@ -5633,19 +5857,16 @@ var CategoriesClient = class {
5633
5857
  * @returns Category response with result cards, facets, and pagination.
5634
5858
  */
5635
5859
  async browse(categoryId, options = {}) {
5636
- return this.client.request(
5637
- `/v1/ebay/categories/${categoryId}/items`,
5638
- {
5639
- params: {
5640
- domain: options.domain,
5641
- page: options.page,
5642
- per_page: options.per_page,
5643
- sort_by: options.sort_by,
5644
- min_price: options.min_price,
5645
- max_price: options.max_price
5646
- }
5860
+ return this.client.request(`/v1/ebay/categories/${categoryId}/items`, {
5861
+ params: {
5862
+ domain: options.domain,
5863
+ page: options.page,
5864
+ per_page: options.per_page,
5865
+ sort_by: options.sort_by,
5866
+ min_price: options.min_price,
5867
+ max_price: options.max_price
5647
5868
  }
5648
- );
5869
+ });
5649
5870
  }
5650
5871
  /**
5651
5872
  * List eBay's reference top-level category ids.
@@ -5699,6 +5920,110 @@ var EbayClient = class {
5699
5920
  }
5700
5921
  };
5701
5922
 
5923
+ // src/facebook/client.ts
5924
+ var FacebookClient = class {
5925
+ client;
5926
+ constructor(client) {
5927
+ this.client = client;
5928
+ }
5929
+ /** Search advertiser pages. Generated from the OpenAPI spec; returns the raw response object. */
5930
+ async searchAdvertiserPages(params = {}) {
5931
+ return this.client.request("/v1/facebook/ads/pages/search", { params });
5932
+ }
5933
+ /** Get advertiser page info. Generated from the OpenAPI spec; returns the raw response object. */
5934
+ async getAdvertiserPageInfo(pageId, params = {}) {
5935
+ return this.client.request(`/v1/facebook/ads/pages/${pageId}`, { params });
5936
+ }
5937
+ /** Search the Ad Library. Generated from the OpenAPI spec; returns the raw response object. */
5938
+ async searchTheAdLibrary(params = {}) {
5939
+ return this.client.request("/v1/facebook/ads/search", { params });
5940
+ }
5941
+ /** Get an ad. Generated from the OpenAPI spec; returns the raw response object. */
5942
+ async getAnAd(adArchiveId, params = {}) {
5943
+ return this.client.request(`/v1/facebook/ads/${adArchiveId}`, { params });
5944
+ }
5945
+ /** Get group detail. Generated from the OpenAPI spec; returns the raw response object. */
5946
+ async getGroupDetail(groupId, params = {}) {
5947
+ return this.client.request(`/v1/facebook/groups/${groupId}`, { params });
5948
+ }
5949
+ /** Get group posts. Generated from the OpenAPI spec; returns the raw response object. */
5950
+ async getGroupPosts(groupId, params = {}) {
5951
+ return this.client.request(`/v1/facebook/groups/${groupId}/posts`, { params });
5952
+ }
5953
+ /** List categories. Generated from the OpenAPI spec; returns the raw response object. */
5954
+ async listCategories(params = {}) {
5955
+ return this.client.request("/v1/facebook/marketplace/categories", { params });
5956
+ }
5957
+ /** Browse a Marketplace category. Generated from the OpenAPI spec; returns the raw response object. */
5958
+ async browseAMarketplaceCategory(category, params = {}) {
5959
+ return this.client.request(`/v1/facebook/marketplace/category/${category}`, { params });
5960
+ }
5961
+ /** Get a Marketplace item. Generated from the OpenAPI spec; returns the raw response object. */
5962
+ async getAMarketplaceItem(itemId, params = {}) {
5963
+ return this.client.request(`/v1/facebook/marketplace/item/${itemId}`, { params });
5964
+ }
5965
+ /** List locations. Generated from the OpenAPI spec; returns the raw response object. */
5966
+ async listLocations(params = {}) {
5967
+ return this.client.request("/v1/facebook/marketplace/locations", { params });
5968
+ }
5969
+ /** Search Marketplace. Generated from the OpenAPI spec; returns the raw response object. */
5970
+ async searchMarketplace(params = {}) {
5971
+ return this.client.request("/v1/facebook/marketplace/search", { params });
5972
+ }
5973
+ /** Get page detail. Generated from the OpenAPI spec; returns the raw response object. */
5974
+ async getPageDetail(identifier, params = {}) {
5975
+ return this.client.request(`/v1/facebook/pages/${identifier}`, { params });
5976
+ }
5977
+ /** Get page posts. Generated from the OpenAPI spec; returns the raw response object. */
5978
+ async getPagePosts(identifier, params = {}) {
5979
+ return this.client.request(`/v1/facebook/pages/${identifier}/posts`, { params });
5980
+ }
5981
+ /** Get post detail. Generated from the OpenAPI spec; returns the raw response object. */
5982
+ async getPostDetail(postId, params = {}) {
5983
+ return this.client.request(`/v1/facebook/posts/${postId}`, { params });
5984
+ }
5985
+ /** Get post comments. Generated from the OpenAPI spec; returns the raw response object. */
5986
+ async getPostComments(postId, params = {}) {
5987
+ return this.client.request(`/v1/facebook/posts/${postId}/comments`, { params });
5988
+ }
5989
+ /** Get profile detail. Generated from the OpenAPI spec; returns the raw response object. */
5990
+ async getProfileDetail(identifier, params = {}) {
5991
+ return this.client.request(`/v1/facebook/profiles/${identifier}`, { params });
5992
+ }
5993
+ /** Get profile posts. Generated from the OpenAPI spec; returns the raw response object. */
5994
+ async getProfilePosts(identifier, params = {}) {
5995
+ return this.client.request(`/v1/facebook/profiles/${identifier}/posts`, { params });
5996
+ }
5997
+ /** Search everything. Generated from the OpenAPI spec; returns the raw response object. */
5998
+ async searchEverything(params = {}) {
5999
+ return this.client.request("/v1/facebook/search", { params });
6000
+ }
6001
+ /** Search events. Generated from the OpenAPI spec; returns the raw response object. */
6002
+ async searchEvents(params = {}) {
6003
+ return this.client.request("/v1/facebook/search/events", { params });
6004
+ }
6005
+ /** Search groups. Generated from the OpenAPI spec; returns the raw response object. */
6006
+ async searchGroups(params = {}) {
6007
+ return this.client.request("/v1/facebook/search/groups", { params });
6008
+ }
6009
+ /** Search Pages. Generated from the OpenAPI spec; returns the raw response object. */
6010
+ async searchPages(params = {}) {
6011
+ return this.client.request("/v1/facebook/search/pages", { params });
6012
+ }
6013
+ /** Search people. Generated from the OpenAPI spec; returns the raw response object. */
6014
+ async searchPeople(params = {}) {
6015
+ return this.client.request("/v1/facebook/search/people", { params });
6016
+ }
6017
+ /** Search places. Generated from the OpenAPI spec; returns the raw response object. */
6018
+ async searchPlaces(params = {}) {
6019
+ return this.client.request("/v1/facebook/search/places", { params });
6020
+ }
6021
+ /** Search posts. Generated from the OpenAPI spec; returns the raw response object. */
6022
+ async searchPosts(params = {}) {
6023
+ return this.client.request("/v1/facebook/search/posts", { params });
6024
+ }
6025
+ };
6026
+
5702
6027
  // src/walmart/search.ts
5703
6028
  var SearchClient9 = class {
5704
6029
  constructor(client) {
@@ -5805,10 +6130,9 @@ var ProductsClient4 = class {
5805
6130
  * @remarks 10 reviews per page — Walmart's page size, not adjustable.
5806
6131
  */
5807
6132
  async reviews(itemId, params = {}) {
5808
- return this.client.request(
5809
- `/v1/walmart/products/${itemId}/reviews`,
5810
- { params: { page: params.page, sort: params.sort } }
5811
- );
6133
+ return this.client.request(`/v1/walmart/products/${itemId}/reviews`, {
6134
+ params: { page: params.page, sort: params.sort }
6135
+ });
5812
6136
  }
5813
6137
  };
5814
6138
 
@@ -5842,10 +6166,9 @@ var SellersClient3 = class {
5842
6166
  * @param params - Optional page (1-10) and sort.
5843
6167
  */
5844
6168
  async products(sellerId, query, params = {}) {
5845
- return this.client.request(
5846
- `/v1/walmart/sellers/${sellerId}/products`,
5847
- { params: { query, page: params.page, sort: params.sort } }
5848
- );
6169
+ return this.client.request(`/v1/walmart/sellers/${sellerId}/products`, {
6170
+ params: { query, page: params.page, sort: params.sort }
6171
+ });
5849
6172
  }
5850
6173
  };
5851
6174
 
@@ -6601,10 +6924,9 @@ var VideosClient3 = class {
6601
6924
  * @returns Related results with a continuation token.
6602
6925
  */
6603
6926
  async related(videoId, options = {}) {
6604
- return this.client.request(
6605
- `/v1/youtube/videos/${videoId}/related`,
6606
- { params: { continuation: options.continuation, gl: options.gl, hl: options.hl } }
6607
- );
6927
+ return this.client.request(`/v1/youtube/videos/${videoId}/related`, {
6928
+ params: { continuation: options.continuation, gl: options.gl, hl: options.hl }
6929
+ });
6608
6930
  }
6609
6931
  /**
6610
6932
  * Get a page of top-level comments for a video.
@@ -6614,17 +6936,14 @@ var VideosClient3 = class {
6614
6936
  * @returns A page of comments with sorting tokens and a continuation token.
6615
6937
  */
6616
6938
  async comments(videoId, options = {}) {
6617
- return this.client.request(
6618
- `/v1/youtube/videos/${videoId}/comments`,
6619
- {
6620
- params: {
6621
- sort_by: options.sort_by,
6622
- continuation: options.continuation,
6623
- gl: options.gl,
6624
- hl: options.hl
6625
- }
6939
+ return this.client.request(`/v1/youtube/videos/${videoId}/comments`, {
6940
+ params: {
6941
+ sort_by: options.sort_by,
6942
+ continuation: options.continuation,
6943
+ gl: options.gl,
6944
+ hl: options.hl
6626
6945
  }
6627
- );
6946
+ });
6628
6947
  }
6629
6948
  /**
6630
6949
  * Get a page of replies to a single comment.
@@ -6648,10 +6967,9 @@ var VideosClient3 = class {
6648
6967
  * @returns The transcript with timed segments and full text.
6649
6968
  */
6650
6969
  async transcript(videoId, options = {}) {
6651
- return this.client.request(
6652
- `/v1/youtube/videos/${videoId}/transcript`,
6653
- { params: { language: options.language, gl: options.gl, hl: options.hl } }
6654
- );
6970
+ return this.client.request(`/v1/youtube/videos/${videoId}/transcript`, {
6971
+ params: { language: options.language, gl: options.gl, hl: options.hl }
6972
+ });
6655
6973
  }
6656
6974
  /**
6657
6975
  * List a video's available caption tracks.
@@ -6661,10 +6979,9 @@ var VideosClient3 = class {
6661
6979
  * @returns The available caption tracks and translation languages.
6662
6980
  */
6663
6981
  async captions(videoId, options = {}) {
6664
- return this.client.request(
6665
- `/v1/youtube/videos/${videoId}/captions`,
6666
- { params: { gl: options.gl, hl: options.hl } }
6667
- );
6982
+ return this.client.request(`/v1/youtube/videos/${videoId}/captions`, {
6983
+ params: { gl: options.gl, hl: options.hl }
6984
+ });
6668
6985
  }
6669
6986
  /**
6670
6987
  * Get a video's stream / format metadata (best-effort; URLs may be PO-token gated).
@@ -6674,10 +6991,9 @@ var VideosClient3 = class {
6674
6991
  * @returns Streaming metadata with muxed and adaptive formats.
6675
6992
  */
6676
6993
  async streams(videoId, options = {}) {
6677
- return this.client.request(
6678
- `/v1/youtube/videos/${videoId}/streams`,
6679
- { params: { gl: options.gl, client: options.client } }
6680
- );
6994
+ return this.client.request(`/v1/youtube/videos/${videoId}/streams`, {
6995
+ params: { gl: options.gl, client: options.client }
6996
+ });
6681
6997
  }
6682
6998
  /**
6683
6999
  * Get a page of live-chat (or chat-replay) messages for a video.
@@ -6687,17 +7003,14 @@ var VideosClient3 = class {
6687
7003
  * @returns A page of live-chat messages with a continuation token.
6688
7004
  */
6689
7005
  async liveChat(videoId, options = {}) {
6690
- return this.client.request(
6691
- `/v1/youtube/videos/${videoId}/live_chat`,
6692
- {
6693
- params: {
6694
- continuation: options.continuation,
6695
- replay: options.replay,
6696
- gl: options.gl,
6697
- hl: options.hl
6698
- }
7006
+ return this.client.request(`/v1/youtube/videos/${videoId}/live_chat`, {
7007
+ params: {
7008
+ continuation: options.continuation,
7009
+ replay: options.replay,
7010
+ gl: options.gl,
7011
+ hl: options.hl
6699
7012
  }
6700
- );
7013
+ });
6701
7014
  }
6702
7015
  /**
6703
7016
  * Fetch detail for up to 50 videos concurrently.
@@ -6744,10 +7057,9 @@ var ChannelsClient = class {
6744
7057
  * @returns A page of video cards with a continuation token.
6745
7058
  */
6746
7059
  async videos(channelId, options = {}) {
6747
- return this.client.request(
6748
- `/v1/youtube/channels/${channelId}/videos`,
6749
- { params: { continuation: options.continuation, gl: options.gl, hl: options.hl } }
6750
- );
7060
+ return this.client.request(`/v1/youtube/channels/${channelId}/videos`, {
7061
+ params: { continuation: options.continuation, gl: options.gl, hl: options.hl }
7062
+ });
6751
7063
  }
6752
7064
  /**
6753
7065
  * Get a page of a channel's Shorts.
@@ -6757,10 +7069,9 @@ var ChannelsClient = class {
6757
7069
  * @returns A page of Shorts cards with a continuation token.
6758
7070
  */
6759
7071
  async shorts(channelId, options = {}) {
6760
- return this.client.request(
6761
- `/v1/youtube/channels/${channelId}/shorts`,
6762
- { params: { continuation: options.continuation, gl: options.gl, hl: options.hl } }
6763
- );
7072
+ return this.client.request(`/v1/youtube/channels/${channelId}/shorts`, {
7073
+ params: { continuation: options.continuation, gl: options.gl, hl: options.hl }
7074
+ });
6764
7075
  }
6765
7076
  /**
6766
7077
  * Get a page of a channel's live streams.
@@ -6770,10 +7081,9 @@ var ChannelsClient = class {
6770
7081
  * @returns A page of stream cards with a continuation token.
6771
7082
  */
6772
7083
  async streams(channelId, options = {}) {
6773
- return this.client.request(
6774
- `/v1/youtube/channels/${channelId}/streams`,
6775
- { params: { continuation: options.continuation, gl: options.gl, hl: options.hl } }
6776
- );
7084
+ return this.client.request(`/v1/youtube/channels/${channelId}/streams`, {
7085
+ params: { continuation: options.continuation, gl: options.gl, hl: options.hl }
7086
+ });
6777
7087
  }
6778
7088
  /**
6779
7089
  * Get a page of a channel's playlists.
@@ -6783,10 +7093,9 @@ var ChannelsClient = class {
6783
7093
  * @returns A page of playlist cards with a continuation token.
6784
7094
  */
6785
7095
  async playlists(channelId, options = {}) {
6786
- return this.client.request(
6787
- `/v1/youtube/channels/${channelId}/playlists`,
6788
- { params: { continuation: options.continuation, gl: options.gl, hl: options.hl } }
6789
- );
7096
+ return this.client.request(`/v1/youtube/channels/${channelId}/playlists`, {
7097
+ params: { continuation: options.continuation, gl: options.gl, hl: options.hl }
7098
+ });
6790
7099
  }
6791
7100
  /**
6792
7101
  * Get a page of a channel's community posts.
@@ -6796,10 +7105,9 @@ var ChannelsClient = class {
6796
7105
  * @returns A page of community posts with a continuation token.
6797
7106
  */
6798
7107
  async community(channelId, options = {}) {
6799
- return this.client.request(
6800
- `/v1/youtube/channels/${channelId}/community`,
6801
- { params: { continuation: options.continuation, gl: options.gl, hl: options.hl } }
6802
- );
7108
+ return this.client.request(`/v1/youtube/channels/${channelId}/community`, {
7109
+ params: { continuation: options.continuation, gl: options.gl, hl: options.hl }
7110
+ });
6803
7111
  }
6804
7112
  /**
6805
7113
  * Get a channel's lightweight about payload.
@@ -6809,10 +7117,9 @@ var ChannelsClient = class {
6809
7117
  * @returns The channel about payload.
6810
7118
  */
6811
7119
  async about(channelId, options = {}) {
6812
- return this.client.request(
6813
- `/v1/youtube/channels/${channelId}/about`,
6814
- { params: { gl: options.gl, hl: options.hl } }
6815
- );
7120
+ return this.client.request(`/v1/youtube/channels/${channelId}/about`, {
7121
+ params: { gl: options.gl, hl: options.hl }
7122
+ });
6816
7123
  }
6817
7124
  /**
6818
7125
  * Get a channel's subscriber count (fast).
@@ -6835,17 +7142,14 @@ var ChannelsClient = class {
6835
7142
  * @returns A page of search results scoped to the channel.
6836
7143
  */
6837
7144
  async search(channelId, options) {
6838
- return this.client.request(
6839
- `/v1/youtube/channels/${channelId}/search`,
6840
- {
6841
- params: {
6842
- query: options.query,
6843
- continuation: options.continuation,
6844
- gl: options.gl,
6845
- hl: options.hl
6846
- }
7145
+ return this.client.request(`/v1/youtube/channels/${channelId}/search`, {
7146
+ params: {
7147
+ query: options.query,
7148
+ continuation: options.continuation,
7149
+ gl: options.gl,
7150
+ hl: options.hl
6847
7151
  }
6848
- );
7152
+ });
6849
7153
  }
6850
7154
  /**
6851
7155
  * Resolve a @handle or URL to canonical YouTube ids.
@@ -6887,10 +7191,9 @@ var PlaylistsClient = class {
6887
7191
  * @returns A page of playlist items with a continuation token.
6888
7192
  */
6889
7193
  async items(playlistId, options = {}) {
6890
- return this.client.request(
6891
- `/v1/youtube/playlists/${playlistId}/items`,
6892
- { params: { continuation: options.continuation, gl: options.gl, hl: options.hl } }
6893
- );
7194
+ return this.client.request(`/v1/youtube/playlists/${playlistId}/items`, {
7195
+ params: { continuation: options.continuation, gl: options.gl, hl: options.hl }
7196
+ });
6894
7197
  }
6895
7198
  /**
6896
7199
  * Resolve an auto-generated mix / radio (RD…) queue.
@@ -6933,10 +7236,9 @@ var CommunityClient = class {
6933
7236
  * @returns A page of comments with a continuation token.
6934
7237
  */
6935
7238
  async comments(postId, options = {}) {
6936
- return this.client.request(
6937
- `/v1/youtube/posts/${postId}/comments`,
6938
- { params: { continuation: options.continuation, gl: options.gl, hl: options.hl } }
6939
- );
7239
+ return this.client.request(`/v1/youtube/posts/${postId}/comments`, {
7240
+ params: { continuation: options.continuation, gl: options.gl, hl: options.hl }
7241
+ });
6940
7242
  }
6941
7243
  };
6942
7244
 
@@ -6967,10 +7269,9 @@ var ShortsClient2 = class {
6967
7269
  * @returns A page of Shorts cards with a continuation token.
6968
7270
  */
6969
7271
  async bySound(soundId, options = {}) {
6970
- return this.client.request(
6971
- `/v1/youtube/shorts/by_sound/${soundId}`,
6972
- { params: { continuation: options.continuation, gl: options.gl, hl: options.hl } }
6973
- );
7272
+ return this.client.request(`/v1/youtube/shorts/by_sound/${soundId}`, {
7273
+ params: { continuation: options.continuation, gl: options.gl, hl: options.hl }
7274
+ });
6974
7275
  }
6975
7276
  };
6976
7277
 
@@ -7309,10 +7610,9 @@ var AdsClient2 = class {
7309
7610
  * @returns Similar-ads response.
7310
7611
  */
7311
7612
  async similar(listId, options = {}) {
7312
- return this.client.request(
7313
- `/v1/leboncoin/ads/${listId}/similar`,
7314
- { params: { limit: options.limit } }
7315
- );
7613
+ return this.client.request(`/v1/leboncoin/ads/${listId}/similar`, {
7614
+ params: { limit: options.limit }
7615
+ });
7316
7616
  }
7317
7617
  };
7318
7618
 
@@ -7330,9 +7630,7 @@ var SellersClient4 = class {
7330
7630
  * @throws NotFoundError - If the seller doesn't exist.
7331
7631
  */
7332
7632
  async get(userId) {
7333
- return this.client.request(
7334
- `/v1/leboncoin/sellers/${userId}`
7335
- );
7633
+ return this.client.request(`/v1/leboncoin/sellers/${userId}`);
7336
7634
  }
7337
7635
  /**
7338
7636
  * List a Leboncoin seller's active ads.
@@ -7342,10 +7640,9 @@ var SellersClient4 = class {
7342
7640
  * @returns Seller listings response with ads and pagination.
7343
7641
  */
7344
7642
  async listings(userId, options = {}) {
7345
- return this.client.request(
7346
- `/v1/leboncoin/sellers/${userId}/listings`,
7347
- { params: { page: options.page, limit: options.limit } }
7348
- );
7643
+ return this.client.request(`/v1/leboncoin/sellers/${userId}/listings`, {
7644
+ params: { page: options.page, limit: options.limit }
7645
+ });
7349
7646
  }
7350
7647
  };
7351
7648
 
@@ -7378,10 +7675,9 @@ var ReferenceClient13 = class {
7378
7675
  * @returns Departments response.
7379
7676
  */
7380
7677
  async departments(options = {}) {
7381
- return this.client.request(
7382
- "/v1/leboncoin/departments",
7383
- { params: { region_id: options.region_id } }
7384
- );
7678
+ return this.client.request("/v1/leboncoin/departments", {
7679
+ params: { region_id: options.region_id }
7680
+ });
7385
7681
  }
7386
7682
  /**
7387
7683
  * Resolve a place name to Leboncoin location ids (for building filters).
@@ -7390,10 +7686,9 @@ var ReferenceClient13 = class {
7390
7686
  * @returns Location search response with suggestions.
7391
7687
  */
7392
7688
  async locations(query) {
7393
- return this.client.request(
7394
- "/v1/leboncoin/locations/search",
7395
- { params: { q: query } }
7396
- );
7689
+ return this.client.request("/v1/leboncoin/locations/search", {
7690
+ params: { q: query }
7691
+ });
7397
7692
  }
7398
7693
  /**
7399
7694
  * List the supported Leboncoin markets (France is the single market).
@@ -7550,6 +7845,7 @@ var ReferenceClient14 = class {
7550
7845
 
7551
7846
  // src/zillow/client.ts
7552
7847
  var ZillowClient = class {
7848
+ _gen;
7553
7849
  /** Client for property search and location autocomplete */
7554
7850
  search;
7555
7851
  /** Client for full property detail */
@@ -7564,11 +7860,18 @@ var ZillowClient = class {
7564
7860
  * @param client - The base HTTP client for making requests.
7565
7861
  */
7566
7862
  constructor(client) {
7863
+ this._gen = client;
7567
7864
  this.search = new SearchClient17(client);
7568
7865
  this.properties = new PropertiesClient2(client);
7569
7866
  this.agent = new AgentClient(client);
7570
7867
  this.reference = new ReferenceClient14(client);
7571
7868
  }
7869
+ // --- BEGIN generated by sdk/codegen/facade — do not edit ---
7870
+ /** Get property detail by URL. Generated from the OpenAPI spec; returns the raw response object. */
7871
+ async getPropertyDetailByUrl(params = {}) {
7872
+ return this._gen.request("/v1/zillow/property", { params });
7873
+ }
7874
+ // --- END generated by sdk/codegen/facade ---
7572
7875
  };
7573
7876
 
7574
7877
  // src/immobiliare/client.ts
@@ -7833,10 +8136,36 @@ var LoopNetClient = class {
7833
8136
  }
7834
8137
  };
7835
8138
 
8139
+ // src/perplexity/client.ts
8140
+ var PerplexityClient = class {
8141
+ client;
8142
+ constructor(client) {
8143
+ this.client = client;
8144
+ }
8145
+ /** Ask Perplexity a question. Generated from the OpenAPI spec; returns the raw response object. */
8146
+ async askPerplexityAQuestion(params = {}) {
8147
+ return this.client.request("/v1/perplexity/ask", { params });
8148
+ }
8149
+ /** Ask Perplexity a question (POST). Generated from the OpenAPI spec; returns the raw response object. */
8150
+ async askPerplexityAQuestionPost(body, params = {}) {
8151
+ return this.client.request("/v1/perplexity/ask", { method: "POST", params, body });
8152
+ }
8153
+ /** Measure a brand's visibility in a Perplexity answer. Generated from the OpenAPI spec; returns the raw response object. */
8154
+ async measureABrandSVisibilityInAPerplexityAnswer(params = {}) {
8155
+ return this.client.request("/v1/perplexity/brand-visibility", { params });
8156
+ }
8157
+ /** Measure a brand's visibility in a Perplexity answer (POST). Generated from the OpenAPI spec; returns the raw response object. */
8158
+ async measureABrandSVisibilityInAPerplexityAnswerPost(body, params = {}) {
8159
+ return this.client.request("/v1/perplexity/brand-visibility", { method: "POST", params, body });
8160
+ }
8161
+ };
8162
+
7836
8163
  // src/depop/client.ts
7837
8164
  var DepopClient = class {
8165
+ _gen;
7838
8166
  client;
7839
8167
  constructor(client) {
8168
+ this._gen = client;
7840
8169
  this.client = client;
7841
8170
  }
7842
8171
  /**
@@ -7928,6 +8257,12 @@ var DepopClient = class {
7928
8257
  async listMarkets() {
7929
8258
  return this.client.request("/v1/depop/markets");
7930
8259
  }
8260
+ // --- BEGIN generated by sdk/codegen/facade — do not edit ---
8261
+ /** Get product detail. Generated from the OpenAPI spec; returns the raw response object. */
8262
+ async getProductDetail(productId, params = {}) {
8263
+ return this._gen.request(`/v1/depop/products/${productId}`, { params });
8264
+ }
8265
+ // --- END generated by sdk/codegen/facade ---
7931
8266
  };
7932
8267
 
7933
8268
  // src/linkedin/client.ts
@@ -8222,6 +8557,7 @@ var ReferenceClient16 = class {
8222
8557
 
8223
8558
  // src/chatgpt/client.ts
8224
8559
  var ChatGPTClient = class {
8560
+ _gen;
8225
8561
  /** Client for asking ChatGPT a question */
8226
8562
  ask;
8227
8563
  /** Client for AEO/GEO brand-visibility analysis */
@@ -8234,10 +8570,21 @@ var ChatGPTClient = class {
8234
8570
  * @param client - The base HTTP client for making requests.
8235
8571
  */
8236
8572
  constructor(client) {
8573
+ this._gen = client;
8237
8574
  this.ask = new AskClient(client);
8238
8575
  this.brand = new BrandClient(client);
8239
8576
  this.reference = new ReferenceClient16(client);
8240
8577
  }
8578
+ // --- BEGIN generated by sdk/codegen/facade — do not edit ---
8579
+ /** Ask ChatGPT a question (POST). Generated from the OpenAPI spec; returns the raw response object. */
8580
+ async askChatgptAQuestionPost(body, params = {}) {
8581
+ return this._gen.request("/v1/chatgpt/ask", { method: "POST", params, body });
8582
+ }
8583
+ /** Measure a brand's visibility in a ChatGPT answer (POST). Generated from the OpenAPI spec; returns the raw response object. */
8584
+ async measureABrandSVisibilityInAChatgptAnswerPost(body, params = {}) {
8585
+ return this._gen.request("/v1/chatgpt/brand-visibility", { method: "POST", params, body });
8586
+ }
8587
+ // --- END generated by sdk/codegen/facade ---
8241
8588
  };
8242
8589
 
8243
8590
  // src/gemini/ask.ts
@@ -8331,6 +8678,7 @@ var BrandClient2 = class {
8331
8678
 
8332
8679
  // src/gemini/client.ts
8333
8680
  var GeminiClient = class {
8681
+ _gen;
8334
8682
  /** Client for asking Gemini a question */
8335
8683
  ask;
8336
8684
  /** Client for AEO/GEO brand-visibility analysis */
@@ -8341,9 +8689,20 @@ var GeminiClient = class {
8341
8689
  * @param client - The base HTTP client for making requests.
8342
8690
  */
8343
8691
  constructor(client) {
8692
+ this._gen = client;
8344
8693
  this.ask = new AskClient2(client);
8345
8694
  this.brand = new BrandClient2(client);
8346
8695
  }
8696
+ // --- BEGIN generated by sdk/codegen/facade — do not edit ---
8697
+ /** Ask Gemini a question (POST). Generated from the OpenAPI spec; returns the raw response object. */
8698
+ async askGeminiAQuestionPost(body, params = {}) {
8699
+ return this._gen.request("/v1/gemini/ask", { method: "POST", params, body });
8700
+ }
8701
+ /** Measure a brand's visibility in a Gemini answer (POST). Generated from the OpenAPI spec; returns the raw response object. */
8702
+ async measureABrandSVisibilityInAGeminiAnswerPost(body, params = {}) {
8703
+ return this._gen.request("/v1/gemini/brand-visibility", { method: "POST", params, body });
8704
+ }
8705
+ // --- END generated by sdk/codegen/facade ---
8347
8706
  };
8348
8707
 
8349
8708
  // src/client.ts
@@ -8357,15 +8716,25 @@ var ScrapeBadger = class {
8357
8716
  vinted;
8358
8717
  /** Google Scraper API client — 19 Google product APIs */
8359
8718
  google;
8719
+ /** Google_Play API client. (Generated from the OpenAPI spec.) */
8720
+ google_play;
8721
+ /** Idealista API client. (Generated from the OpenAPI spec.) */
8722
+ idealista;
8360
8723
  /** Reddit scraper API client */
8361
8724
  reddit;
8362
8725
  /** Apartments.com scraper API client — search + property with unit-level pricing (US) */
8363
8726
  apartments;
8727
+ /** App_Store API client. (Generated from the OpenAPI spec.) */
8728
+ app_store;
8364
8729
  /** Instagram scraper API client — users, media, search, hashtags, locations, audio */
8365
8730
  instagram;
8366
8731
  /** Redfin scraper API client — search, property, agent, autocomplete, markets (redfin.com, US) */
8367
8732
  redfin;
8368
8733
  /** Amazon scraper API client — 14 endpoints */
8734
+ /** Account API client. (Generated from the OpenAPI spec.) */
8735
+ account;
8736
+ /** Airbnb API client. (Generated from the OpenAPI spec.) */
8737
+ airbnb;
8369
8738
  amazon;
8370
8739
  /** Shopee scraper API client — 6 endpoints across 11 markets */
8371
8740
  shopee;
@@ -8373,6 +8742,8 @@ var ScrapeBadger = class {
8373
8742
  tiktok;
8374
8743
  /** eBay scraper API client — 12 endpoints across 18 markets */
8375
8744
  ebay;
8745
+ /** Facebook API client. (Generated from the OpenAPI spec.) */
8746
+ facebook;
8376
8747
  /** Walmart scraper API client — 11 endpoints (walmart.com, US-only) */
8377
8748
  walmart;
8378
8749
  /** DuckDuckGo scraper API client — search, images, news, videos, autocomplete, instant, regions */
@@ -8397,6 +8768,8 @@ var ScrapeBadger = class {
8397
8768
  immobiliare;
8398
8769
  /** LoopNet scraper API client — commercial real estate across US/CA/UK/FR/ES (search, listing, broker, markets, property types) */
8399
8770
  loopnet;
8771
+ /** Perplexity API client. (Generated from the OpenAPI spec.) */
8772
+ perplexity;
8400
8773
  /** Depop scraper API client — search, product, user, user products, markets (www.depop.com, 10 markets) */
8401
8774
  depop;
8402
8775
  /** LinkedIn scraper API client — 11 no-auth endpoints (jobs, company, school, profile, post, article, learning, geo) */
@@ -8443,14 +8816,20 @@ var ScrapeBadger = class {
8443
8816
  this.web = new WebClient(this.baseClient);
8444
8817
  this.vinted = new VintedClient(this.baseClient);
8445
8818
  this.google = new GoogleClient(this.baseClient);
8819
+ this.google_play = new GooglePlayClient(this.baseClient);
8820
+ this.idealista = new IdealistaClient(this.baseClient);
8446
8821
  this.reddit = new RedditClient(this.baseClient);
8447
8822
  this.apartments = new ApartmentsClient(this.baseClient);
8823
+ this.app_store = new AppStoreClient(this.baseClient);
8448
8824
  this.instagram = new InstagramClient(this.baseClient);
8449
8825
  this.redfin = new RedfinClient(this.baseClient);
8826
+ this.account = new AccountClient(this.baseClient);
8827
+ this.airbnb = new AirbnbClient(this.baseClient);
8450
8828
  this.amazon = new AmazonClient(this.baseClient);
8451
8829
  this.shopee = new ShopeeClient(this.baseClient);
8452
8830
  this.tiktok = new TikTokClient(this.baseClient);
8453
8831
  this.ebay = new EbayClient(this.baseClient);
8832
+ this.facebook = new FacebookClient(this.baseClient);
8454
8833
  this.walmart = new WalmartClient(this.baseClient);
8455
8834
  this.duckduckgo = new DuckDuckGoClient(this.baseClient);
8456
8835
  this.bing = new BingClient(this.baseClient);
@@ -8463,6 +8842,7 @@ var ScrapeBadger = class {
8463
8842
  this.zillow = new ZillowClient(this.baseClient);
8464
8843
  this.immobiliare = new ImmobiliareClient(this.baseClient);
8465
8844
  this.loopnet = new LoopNetClient(this.baseClient);
8845
+ this.perplexity = new PerplexityClient(this.baseClient);
8466
8846
  this.depop = new DepopClient(this.baseClient);
8467
8847
  this.linkedin = new LinkedInClient(this.baseClient);
8468
8848
  this.chatgpt = new ChatGPTClient(this.baseClient);