scrapebadger 0.16.0 → 0.17.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/README.md +1 -0
- package/dist/index.d.cts +573 -107
- package/dist/index.d.ts +573 -107
- package/dist/index.js +140 -0
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +136 -1
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -6228,6 +6228,138 @@ var ImmobiliareClient = class {
|
|
|
6228
6228
|
}
|
|
6229
6229
|
};
|
|
6230
6230
|
|
|
6231
|
+
// src/loopnet/search.ts
|
|
6232
|
+
var SearchClient12 = class {
|
|
6233
|
+
client;
|
|
6234
|
+
constructor(client) {
|
|
6235
|
+
this.client = client;
|
|
6236
|
+
}
|
|
6237
|
+
/**
|
|
6238
|
+
* Search LoopNet for for-lease / for-sale / auction commercial listings.
|
|
6239
|
+
*
|
|
6240
|
+
* Costs 10 credits.
|
|
6241
|
+
*
|
|
6242
|
+
* @param params - Search parameters including location, filters, and pagination.
|
|
6243
|
+
* @returns Search results with listing cards and pagination metadata.
|
|
6244
|
+
* @throws AuthenticationError - If the API key is invalid.
|
|
6245
|
+
* @throws ValidationError - If the parameters are invalid.
|
|
6246
|
+
*/
|
|
6247
|
+
async search(params) {
|
|
6248
|
+
return this.client.request("/v1/loopnet/search", {
|
|
6249
|
+
params: {
|
|
6250
|
+
location: params.location,
|
|
6251
|
+
market: params.market,
|
|
6252
|
+
listing_type: params.listing_type,
|
|
6253
|
+
property_type: params.property_type,
|
|
6254
|
+
page: params.page,
|
|
6255
|
+
min_price: params.min_price,
|
|
6256
|
+
max_price: params.max_price,
|
|
6257
|
+
price_type: params.price_type,
|
|
6258
|
+
min_size: params.min_size,
|
|
6259
|
+
max_size: params.max_size
|
|
6260
|
+
}
|
|
6261
|
+
});
|
|
6262
|
+
}
|
|
6263
|
+
};
|
|
6264
|
+
|
|
6265
|
+
// src/loopnet/listings.ts
|
|
6266
|
+
var ListingsClient2 = class {
|
|
6267
|
+
client;
|
|
6268
|
+
constructor(client) {
|
|
6269
|
+
this.client = client;
|
|
6270
|
+
}
|
|
6271
|
+
/**
|
|
6272
|
+
* Get a single LoopNet listing's full detail by listing id.
|
|
6273
|
+
*
|
|
6274
|
+
* Costs 12 credits.
|
|
6275
|
+
*
|
|
6276
|
+
* @param listingId - The LoopNet listing id.
|
|
6277
|
+
* @param params - Optional market selector.
|
|
6278
|
+
* @returns Listing detail response.
|
|
6279
|
+
* @throws NotFoundError - If the listing doesn't exist.
|
|
6280
|
+
*/
|
|
6281
|
+
async get(listingId, params = {}) {
|
|
6282
|
+
return this.client.request(`/v1/loopnet/listings/${listingId}`, {
|
|
6283
|
+
params: { market: params.market }
|
|
6284
|
+
});
|
|
6285
|
+
}
|
|
6286
|
+
};
|
|
6287
|
+
|
|
6288
|
+
// src/loopnet/brokers.ts
|
|
6289
|
+
var BrokersClient = class {
|
|
6290
|
+
client;
|
|
6291
|
+
constructor(client) {
|
|
6292
|
+
this.client = client;
|
|
6293
|
+
}
|
|
6294
|
+
/**
|
|
6295
|
+
* Get a LoopNet broker's profile and their active listings.
|
|
6296
|
+
*
|
|
6297
|
+
* Costs 8 credits.
|
|
6298
|
+
*
|
|
6299
|
+
* @param slug - The broker's profile URL slug.
|
|
6300
|
+
* @param brokerId - The LoopNet broker id.
|
|
6301
|
+
* @param params - Optional market selector.
|
|
6302
|
+
* @returns Broker profile response with the broker and their listings.
|
|
6303
|
+
* @throws NotFoundError - If the broker doesn't exist.
|
|
6304
|
+
*/
|
|
6305
|
+
async get(slug, brokerId, params = {}) {
|
|
6306
|
+
return this.client.request(`/v1/loopnet/brokers/${slug}/${brokerId}`, {
|
|
6307
|
+
params: { market: params.market }
|
|
6308
|
+
});
|
|
6309
|
+
}
|
|
6310
|
+
};
|
|
6311
|
+
|
|
6312
|
+
// src/loopnet/reference.ts
|
|
6313
|
+
var ReferenceClient10 = class {
|
|
6314
|
+
client;
|
|
6315
|
+
constructor(client) {
|
|
6316
|
+
this.client = client;
|
|
6317
|
+
}
|
|
6318
|
+
/**
|
|
6319
|
+
* List LoopNet coverage markets (us, ca, uk, fr, es).
|
|
6320
|
+
*
|
|
6321
|
+
* Free — costs 0 credits.
|
|
6322
|
+
*
|
|
6323
|
+
* @returns Markets response with all supported coverage markets.
|
|
6324
|
+
*/
|
|
6325
|
+
async markets() {
|
|
6326
|
+
return this.client.request("/v1/loopnet/markets");
|
|
6327
|
+
}
|
|
6328
|
+
/**
|
|
6329
|
+
* List LoopNet property-type facets (Office, Retail, Industrial, …).
|
|
6330
|
+
*
|
|
6331
|
+
* Free — costs 0 credits.
|
|
6332
|
+
*
|
|
6333
|
+
* @returns Property-types response with all searchable property-type slugs.
|
|
6334
|
+
*/
|
|
6335
|
+
async propertyTypes() {
|
|
6336
|
+
return this.client.request("/v1/loopnet/property-types");
|
|
6337
|
+
}
|
|
6338
|
+
};
|
|
6339
|
+
|
|
6340
|
+
// src/loopnet/client.ts
|
|
6341
|
+
var LoopNetClient = class {
|
|
6342
|
+
/** Client for for-lease / for-sale / auction commercial-listing search */
|
|
6343
|
+
search;
|
|
6344
|
+
/** Client for listing detail (by listing id) */
|
|
6345
|
+
listings;
|
|
6346
|
+
/** Client for broker profile and their active listings */
|
|
6347
|
+
brokers;
|
|
6348
|
+
/** Client for reference data (markets, property types) */
|
|
6349
|
+
reference;
|
|
6350
|
+
/**
|
|
6351
|
+
* Create a new LoopNet client.
|
|
6352
|
+
*
|
|
6353
|
+
* @param client - The base HTTP client for making requests.
|
|
6354
|
+
*/
|
|
6355
|
+
constructor(client) {
|
|
6356
|
+
this.search = new SearchClient12(client);
|
|
6357
|
+
this.listings = new ListingsClient2(client);
|
|
6358
|
+
this.brokers = new BrokersClient(client);
|
|
6359
|
+
this.reference = new ReferenceClient10(client);
|
|
6360
|
+
}
|
|
6361
|
+
};
|
|
6362
|
+
|
|
6231
6363
|
// src/client.ts
|
|
6232
6364
|
var ScrapeBadger = class {
|
|
6233
6365
|
baseClient;
|
|
@@ -6259,6 +6391,8 @@ var ScrapeBadger = class {
|
|
|
6259
6391
|
zillow;
|
|
6260
6392
|
/** Immobiliare scraper API client — 8 endpoints across 4 markets (it, es, gr, lu) */
|
|
6261
6393
|
immobiliare;
|
|
6394
|
+
/** LoopNet scraper API client — commercial real estate across US/CA/UK/FR/ES (search, listing, broker, markets, property types) */
|
|
6395
|
+
loopnet;
|
|
6262
6396
|
/**
|
|
6263
6397
|
* Create a new ScrapeBadger client.
|
|
6264
6398
|
*
|
|
@@ -6307,9 +6441,10 @@ var ScrapeBadger = class {
|
|
|
6307
6441
|
this.leboncoin = new LeboncoinClient(this.baseClient);
|
|
6308
6442
|
this.zillow = new ZillowClient(this.baseClient);
|
|
6309
6443
|
this.immobiliare = new ImmobiliareClient(this.baseClient);
|
|
6444
|
+
this.loopnet = new LoopNetClient(this.baseClient);
|
|
6310
6445
|
}
|
|
6311
6446
|
};
|
|
6312
6447
|
|
|
6313
|
-
export { AccountRestrictedError, AmazonClient, ListingsClient as AmazonListingsClient, ProductsClient2 as AmazonProductsClient, ReferenceClient2 as AmazonReferenceClient, SearchClient4 as AmazonSearchClient, SellersClient as AmazonSellersClient, AuthenticationError, CommunitiesClient, ConflictError, CategoriesClient as EbayCategoriesClient, EbayClient, ItemsClient2 as EbayItemsClient, ReferenceClient5 as EbayReferenceClient, SearchClient7 as EbaySearchClient, SellersClient2 as EbaySellersClient, GeoClient, AiModeClient as GoogleAiModeClient, AutocompleteClient as GoogleAutocompleteClient, GoogleClient, FinanceClient as GoogleFinanceClient, FlightsClient as GoogleFlightsClient, HotelsClient as GoogleHotelsClient, ImagesClient as GoogleImagesClient, JobsClient as GoogleJobsClient, LensClient as GoogleLensClient, MapsClient as GoogleMapsClient, NewsClient as GoogleNewsClient, PatentsClient as GooglePatentsClient, ProductsClient as GoogleProductsClient, ScholarClient as GoogleScholarClient, SearchClient2 as GoogleSearchClient, ShoppingClient as GoogleShoppingClient, ShortsClient as GoogleShortsClient, TrendsClient2 as GoogleTrendsClient, VideosClient as GoogleVideosClient, ImmobiliareClient, InsufficientCreditsError, AdsClient2 as LeboncoinAdsClient, LeboncoinClient, ReferenceClient8 as LeboncoinReferenceClient, SearchClient10 as LeboncoinSearchClient, SellersClient3 as LeboncoinSellersClient, ListsClient, NotFoundError, RateLimitError, RealtorClient, PropertiesClient as RealtorPropertiesClient, ReferenceClient7 as RealtorReferenceClient, SearchClient9 as RealtorSearchClient, RedditClient, PostsClient as RedditPostsClient, SearchClient3 as RedditSearchClient, SubredditsClient as RedditSubredditsClient, UsersClient3 as RedditUsersClient, ScrapeBadger, ScrapeBadgerError, ServerError, ShopeeClient, ProductsClient3 as ShopeeProductsClient, ReferenceClient3 as ShopeeReferenceClient, ReviewsClient as ShopeeReviewsClient, SearchClient5 as ShopeeSearchClient, SpacesClient, StreamClient, AdsClient as TikTokAdsClient, TikTokClient, HashtagsClient as TikTokHashtagsClient, MusicClient as TikTokMusicClient, ReferenceClient4 as TikTokReferenceClient, SearchClient6 as TikTokSearchClient, TrendingClient as TikTokTrendingClient, UsersClient4 as TikTokUsersClient, VideosClient2 as TikTokVideosClient, TimeoutError, TrendsClient, TweetsClient, TwitterClient, UsersClient, ValidationError, VintedClient, ItemsClient as VintedItemsClient, ReferenceClient as VintedReferenceClient, SearchClient as VintedSearchClient, UsersClient2 as VintedUsersClient, WebClient, WebSocketStreamError, ChannelsClient as YoutubeChannelsClient, YoutubeClient, CommunityClient as YoutubeCommunityClient, MusicClient2 as YoutubeMusicClient, PlaylistsClient as YoutubePlaylistsClient, ReferenceClient6 as YoutubeReferenceClient, SearchClient8 as YoutubeSearchClient, ShortsClient2 as YoutubeShortsClient, TrendingClient2 as YoutubeTrendingClient, VideosClient3 as YoutubeVideosClient, AgentClient as ZillowAgentClient, ZillowClient, PropertiesClient2 as ZillowPropertiesClient, ReferenceClient9 as ZillowReferenceClient, SearchClient11 as ZillowSearchClient, collectAll, verifyWebhookSignature };
|
|
6448
|
+
export { AccountRestrictedError, AmazonClient, ListingsClient as AmazonListingsClient, ProductsClient2 as AmazonProductsClient, ReferenceClient2 as AmazonReferenceClient, SearchClient4 as AmazonSearchClient, SellersClient as AmazonSellersClient, AuthenticationError, CommunitiesClient, ConflictError, CategoriesClient as EbayCategoriesClient, EbayClient, ItemsClient2 as EbayItemsClient, ReferenceClient5 as EbayReferenceClient, SearchClient7 as EbaySearchClient, SellersClient2 as EbaySellersClient, GeoClient, AiModeClient as GoogleAiModeClient, AutocompleteClient as GoogleAutocompleteClient, GoogleClient, FinanceClient as GoogleFinanceClient, FlightsClient as GoogleFlightsClient, HotelsClient as GoogleHotelsClient, ImagesClient as GoogleImagesClient, JobsClient as GoogleJobsClient, LensClient as GoogleLensClient, MapsClient as GoogleMapsClient, NewsClient as GoogleNewsClient, PatentsClient as GooglePatentsClient, ProductsClient as GoogleProductsClient, ScholarClient as GoogleScholarClient, SearchClient2 as GoogleSearchClient, ShoppingClient as GoogleShoppingClient, ShortsClient as GoogleShortsClient, TrendsClient2 as GoogleTrendsClient, VideosClient as GoogleVideosClient, ImmobiliareClient, InsufficientCreditsError, AdsClient2 as LeboncoinAdsClient, LeboncoinClient, ReferenceClient8 as LeboncoinReferenceClient, SearchClient10 as LeboncoinSearchClient, SellersClient3 as LeboncoinSellersClient, ListsClient, BrokersClient as LoopNetBrokersClient, LoopNetClient, ListingsClient2 as LoopNetListingsClient, ReferenceClient10 as LoopNetReferenceClient, SearchClient12 as LoopNetSearchClient, NotFoundError, RateLimitError, RealtorClient, PropertiesClient as RealtorPropertiesClient, ReferenceClient7 as RealtorReferenceClient, SearchClient9 as RealtorSearchClient, RedditClient, PostsClient as RedditPostsClient, SearchClient3 as RedditSearchClient, SubredditsClient as RedditSubredditsClient, UsersClient3 as RedditUsersClient, ScrapeBadger, ScrapeBadgerError, ServerError, ShopeeClient, ProductsClient3 as ShopeeProductsClient, ReferenceClient3 as ShopeeReferenceClient, ReviewsClient as ShopeeReviewsClient, SearchClient5 as ShopeeSearchClient, SpacesClient, StreamClient, AdsClient as TikTokAdsClient, TikTokClient, HashtagsClient as TikTokHashtagsClient, MusicClient as TikTokMusicClient, ReferenceClient4 as TikTokReferenceClient, SearchClient6 as TikTokSearchClient, TrendingClient as TikTokTrendingClient, UsersClient4 as TikTokUsersClient, VideosClient2 as TikTokVideosClient, TimeoutError, TrendsClient, TweetsClient, TwitterClient, UsersClient, ValidationError, VintedClient, ItemsClient as VintedItemsClient, ReferenceClient as VintedReferenceClient, SearchClient as VintedSearchClient, UsersClient2 as VintedUsersClient, WebClient, WebSocketStreamError, ChannelsClient as YoutubeChannelsClient, YoutubeClient, CommunityClient as YoutubeCommunityClient, MusicClient2 as YoutubeMusicClient, PlaylistsClient as YoutubePlaylistsClient, ReferenceClient6 as YoutubeReferenceClient, SearchClient8 as YoutubeSearchClient, ShortsClient2 as YoutubeShortsClient, TrendingClient2 as YoutubeTrendingClient, VideosClient3 as YoutubeVideosClient, AgentClient as ZillowAgentClient, ZillowClient, PropertiesClient2 as ZillowPropertiesClient, ReferenceClient9 as ZillowReferenceClient, SearchClient11 as ZillowSearchClient, collectAll, verifyWebhookSignature };
|
|
6314
6449
|
//# sourceMappingURL=index.mjs.map
|
|
6315
6450
|
//# sourceMappingURL=index.mjs.map
|