scavio 0.30.1 → 0.32.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 +104 -2
- package/dist/index.cjs +577 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +829 -1
- package/dist/index.d.ts +829 -1
- package/dist/index.js +566 -1
- package/dist/index.js.map +1 -1
- package/package.json +12 -2
package/dist/index.js
CHANGED
|
@@ -145,7 +145,7 @@ function parseRetryAfter(header) {
|
|
|
145
145
|
var BASE_URL = "https://api.scavio.dev";
|
|
146
146
|
var DEFAULT_TIMEOUT = 3e4;
|
|
147
147
|
var DEFAULT_MAX_RETRIES = 2;
|
|
148
|
-
var SDK_VERSION = true ? "0.
|
|
148
|
+
var SDK_VERSION = true ? "0.32.0" : "0.0.0";
|
|
149
149
|
var USER_AGENT = `scavio-js/${SDK_VERSION}`;
|
|
150
150
|
function isServerRuntime() {
|
|
151
151
|
const g = globalThis;
|
|
@@ -2799,6 +2799,540 @@ var SpecsNamespace = class {
|
|
|
2799
2799
|
}
|
|
2800
2800
|
};
|
|
2801
2801
|
|
|
2802
|
+
// src/namespaces/lowes.ts
|
|
2803
|
+
var LowesNamespace = class {
|
|
2804
|
+
constructor(client) {
|
|
2805
|
+
this.client = client;
|
|
2806
|
+
}
|
|
2807
|
+
client;
|
|
2808
|
+
/**
|
|
2809
|
+
* Search Lowe's by keyword or category at one store: the store's price,
|
|
2810
|
+
* was-price and savings with the sale end date, brand, model number, rating,
|
|
2811
|
+
* review count, and stock for pickup, truck delivery, parcel shipping and
|
|
2812
|
+
* same-day delivery. Pass query or category_id; on_sale returns that
|
|
2813
|
+
* store's deals.
|
|
2814
|
+
*
|
|
2815
|
+
* Costs 2 credits.
|
|
2816
|
+
*/
|
|
2817
|
+
async search(options) {
|
|
2818
|
+
return this.client._post("/api/v1/lowes/search", options);
|
|
2819
|
+
}
|
|
2820
|
+
/**
|
|
2821
|
+
* One Lowe's item at one store: price, was-price and savings, on-hand stock
|
|
2822
|
+
* with lead time per fulfillment method, stock at nearby stores, aisle and
|
|
2823
|
+
* bay, grouped specifications, UPC, dimensions, weight, rating, images, and
|
|
2824
|
+
* the store's hours.
|
|
2825
|
+
*
|
|
2826
|
+
* Costs 2 credits.
|
|
2827
|
+
*/
|
|
2828
|
+
async product(options) {
|
|
2829
|
+
return this.client._post("/api/v1/lowes/product", options);
|
|
2830
|
+
}
|
|
2831
|
+
/**
|
|
2832
|
+
* Lowe's stores near a ZIP code, nearest first: store_id, name, address,
|
|
2833
|
+
* phone, coordinates, distance, time zone, opening hours and features.
|
|
2834
|
+
*
|
|
2835
|
+
* Costs 2 credits.
|
|
2836
|
+
*/
|
|
2837
|
+
async stores(options) {
|
|
2838
|
+
return this.client._post("/api/v1/lowes/stores", options);
|
|
2839
|
+
}
|
|
2840
|
+
/**
|
|
2841
|
+
* One page of an item's customer reviews (10 per page): rating, title, text,
|
|
2842
|
+
* date, reviewer, recommended, helpful votes, verified and incentivized
|
|
2843
|
+
* flags, photos and brand replies, plus the average rating and count per star.
|
|
2844
|
+
*
|
|
2845
|
+
* Costs 1 credit.
|
|
2846
|
+
*/
|
|
2847
|
+
async reviews(options) {
|
|
2848
|
+
return this.client._post("/api/v1/lowes/reviews", options);
|
|
2849
|
+
}
|
|
2850
|
+
};
|
|
2851
|
+
|
|
2852
|
+
// src/namespaces/sams-club.ts
|
|
2853
|
+
var SamsClubNamespace = class {
|
|
2854
|
+
constructor(client) {
|
|
2855
|
+
this.client = client;
|
|
2856
|
+
}
|
|
2857
|
+
client;
|
|
2858
|
+
/**
|
|
2859
|
+
* Search Sam's Club: item_id, price, was_price, savings_amount, unit price,
|
|
2860
|
+
* Instant Savings (amount, end date, purchase limit), rating, review count,
|
|
2861
|
+
* stock, pickup/delivery/shipping availability and aisle. The club is picked
|
|
2862
|
+
* by location and returned in data.club.
|
|
2863
|
+
*
|
|
2864
|
+
* Costs 1 credit.
|
|
2865
|
+
*/
|
|
2866
|
+
async search(options) {
|
|
2867
|
+
return this.client._post("/api/v1/samsclub/search", options);
|
|
2868
|
+
}
|
|
2869
|
+
/**
|
|
2870
|
+
* One Sam's Club item: online price and the club shelf price (club_price)
|
|
2871
|
+
* with was price, savings and unit price, Instant Savings, rating histogram,
|
|
2872
|
+
* UPC, model, specifications, and per-method fulfillment with stock and
|
|
2873
|
+
* aisle. Pass club_id to price and stock a specific club.
|
|
2874
|
+
*
|
|
2875
|
+
* Costs 1 credit.
|
|
2876
|
+
*/
|
|
2877
|
+
async product(options) {
|
|
2878
|
+
return this.client._post("/api/v1/samsclub/product", options);
|
|
2879
|
+
}
|
|
2880
|
+
/**
|
|
2881
|
+
* Sam's Club clubs near a US ZIP, nearest first: club_id, name, address,
|
|
2882
|
+
* coordinates, distance in miles, phone, opening hours, services and whether
|
|
2883
|
+
* the club is temporarily closed.
|
|
2884
|
+
*
|
|
2885
|
+
* Costs 1 credit.
|
|
2886
|
+
*/
|
|
2887
|
+
async clubs(options) {
|
|
2888
|
+
return this.client._post("/api/v1/samsclub/clubs", options);
|
|
2889
|
+
}
|
|
2890
|
+
/**
|
|
2891
|
+
* Every item on Sam's Club Instant Savings, paged: price, was price and
|
|
2892
|
+
* savings amount, plus each offer's amount, end date, purchase limit and
|
|
2893
|
+
* channels.
|
|
2894
|
+
*
|
|
2895
|
+
* Costs 1 credit.
|
|
2896
|
+
*/
|
|
2897
|
+
async savings(options = {}) {
|
|
2898
|
+
return this.client._post("/api/v1/samsclub/savings", options);
|
|
2899
|
+
}
|
|
2900
|
+
/**
|
|
2901
|
+
* Products in a Sam's Club category, paged, with the same fields as
|
|
2902
|
+
* search(). Clearance is category "1150109".
|
|
2903
|
+
*
|
|
2904
|
+
* Costs 1 credit.
|
|
2905
|
+
*/
|
|
2906
|
+
async category(options) {
|
|
2907
|
+
return this.client._post("/api/v1/samsclub/category", options);
|
|
2908
|
+
}
|
|
2909
|
+
/**
|
|
2910
|
+
* Customer reviews for a Sam's Club item, 10 per page: rating, title, text,
|
|
2911
|
+
* author, date, verified purchase and helpful votes, plus the average rating,
|
|
2912
|
+
* total count and 1-5 star breakdown.
|
|
2913
|
+
*
|
|
2914
|
+
* Costs 1 credit.
|
|
2915
|
+
*/
|
|
2916
|
+
async reviews(options) {
|
|
2917
|
+
return this.client._post("/api/v1/samsclub/reviews", options);
|
|
2918
|
+
}
|
|
2919
|
+
};
|
|
2920
|
+
|
|
2921
|
+
// src/namespaces/canadian-tire.ts
|
|
2922
|
+
var CanadianTireNamespace = class {
|
|
2923
|
+
constructor(client) {
|
|
2924
|
+
this.client = client;
|
|
2925
|
+
}
|
|
2926
|
+
client;
|
|
2927
|
+
/**
|
|
2928
|
+
* Search Canadian Tire by keyword or category at one store: the store's
|
|
2929
|
+
* price and regular price (CAD), price range for multi-variant items,
|
|
2930
|
+
* savings, badges (clearance, sale, rebate), rating, review count, brand,
|
|
2931
|
+
* part number, SKU, and stock at the store and online.
|
|
2932
|
+
*
|
|
2933
|
+
* Costs 1 credit.
|
|
2934
|
+
*/
|
|
2935
|
+
async search(options) {
|
|
2936
|
+
return this.client._post("/api/v1/canadiantire/search", options);
|
|
2937
|
+
}
|
|
2938
|
+
/**
|
|
2939
|
+
* One product by code at one store: breadcrumb, images, rating, review
|
|
2940
|
+
* count, descriptions, features, specifications, price and regular price,
|
|
2941
|
+
* warranty, manuals, variants with their SKUs, and the store's price, stock,
|
|
2942
|
+
* and pickup and ship-to-home dates.
|
|
2943
|
+
*
|
|
2944
|
+
* Costs 1 credit.
|
|
2945
|
+
*/
|
|
2946
|
+
async product(options) {
|
|
2947
|
+
return this.client._post("/api/v1/canadiantire/product", options);
|
|
2948
|
+
}
|
|
2949
|
+
/**
|
|
2950
|
+
* Canadian Tire stores near a postal code or coordinates, nearest first:
|
|
2951
|
+
* store_id, name, address, phone, coordinates, distance, weekly hours and
|
|
2952
|
+
* services. Pass sku to get each store's stock quantity and aisle for it.
|
|
2953
|
+
*
|
|
2954
|
+
* Costs 1 credit.
|
|
2955
|
+
*/
|
|
2956
|
+
async stores(options) {
|
|
2957
|
+
return this.client._post("/api/v1/canadiantire/stores", options);
|
|
2958
|
+
}
|
|
2959
|
+
/**
|
|
2960
|
+
* Up to 50 SKUs at one store in one call: the store's price and regular
|
|
2961
|
+
* price, clearance and sale flags, price valid-until date, stock quantity,
|
|
2962
|
+
* aisle, online stock, and pickup and delivery dates. Unknown SKUs are
|
|
2963
|
+
* listed in not_found.
|
|
2964
|
+
*
|
|
2965
|
+
* Costs 1 credit.
|
|
2966
|
+
*/
|
|
2967
|
+
async availability(options) {
|
|
2968
|
+
return this.client._post("/api/v1/canadiantire/availability", options);
|
|
2969
|
+
}
|
|
2970
|
+
/**
|
|
2971
|
+
* Every clearance item at one store, 100 per page, with clearance price,
|
|
2972
|
+
* regular price, stock at the store and the same fields as search().
|
|
2973
|
+
* In-stock items only by default.
|
|
2974
|
+
*
|
|
2975
|
+
* Costs 1 credit.
|
|
2976
|
+
*/
|
|
2977
|
+
async clearance(options) {
|
|
2978
|
+
return this.client._post("/api/v1/canadiantire/clearance", options);
|
|
2979
|
+
}
|
|
2980
|
+
/**
|
|
2981
|
+
* Items on a deal at one store, 100 per page: sale prices, instant rebates,
|
|
2982
|
+
* special buys or Triangle Rewards loyalty offers, with the same fields as
|
|
2983
|
+
* search().
|
|
2984
|
+
*
|
|
2985
|
+
* Costs 1 credit.
|
|
2986
|
+
*/
|
|
2987
|
+
async deals(options) {
|
|
2988
|
+
return this.client._post("/api/v1/canadiantire/deals", options);
|
|
2989
|
+
}
|
|
2990
|
+
};
|
|
2991
|
+
|
|
2992
|
+
// src/namespaces/dollar-general.ts
|
|
2993
|
+
var DollarGeneralNamespace = class {
|
|
2994
|
+
constructor(client) {
|
|
2995
|
+
this.client = client;
|
|
2996
|
+
}
|
|
2997
|
+
client;
|
|
2998
|
+
/**
|
|
2999
|
+
* Search Dollar General at one store: that store's price and original price,
|
|
3000
|
+
* available_quantity (units on hand at that store), inventory_status,
|
|
3001
|
+
* rating, review count, categories, digital coupons and promotions, UPC and
|
|
3002
|
+
* product URL.
|
|
3003
|
+
*
|
|
3004
|
+
* Costs 1 credit.
|
|
3005
|
+
*/
|
|
3006
|
+
async search(options) {
|
|
3007
|
+
return this.client._post("/api/v1/dollargeneral/search", options);
|
|
3008
|
+
}
|
|
3009
|
+
/**
|
|
3010
|
+
* One product by UPC at one store: price, original price,
|
|
3011
|
+
* available_quantity, stock_status, nearby_stores_with_stock, rating, review
|
|
3012
|
+
* count, SKU, brand, description, highlights, images, categories, digital
|
|
3013
|
+
* coupons and promotions. An unknown UPC or store number is a 404.
|
|
3014
|
+
*
|
|
3015
|
+
* Costs 1 credit.
|
|
3016
|
+
*/
|
|
3017
|
+
async product(options) {
|
|
3018
|
+
return this.client._post("/api/v1/dollargeneral/product", options);
|
|
3019
|
+
}
|
|
3020
|
+
/**
|
|
3021
|
+
* Dollar General stores near a US ZIP code or coordinates, nearest first (up
|
|
3022
|
+
* to 25): store_id, address, phone, coordinates, distance in miles, opening
|
|
3023
|
+
* hours and services. Pass upc and each store also carries its unit count of
|
|
3024
|
+
* that product.
|
|
3025
|
+
*
|
|
3026
|
+
* Costs 1 credit.
|
|
3027
|
+
*/
|
|
3028
|
+
async stores(options) {
|
|
3029
|
+
return this.client._post("/api/v1/dollargeneral/stores", options);
|
|
3030
|
+
}
|
|
3031
|
+
/**
|
|
3032
|
+
* Products on sale or on clearance, priced and stocked at one store, 24 per
|
|
3033
|
+
* page. available_quantity > 0 means in stock at that store; the listing
|
|
3034
|
+
* covers the whole chain. Clearance items carry the current price only (no
|
|
3035
|
+
* was-price).
|
|
3036
|
+
*
|
|
3037
|
+
* Costs 1 credit.
|
|
3038
|
+
*/
|
|
3039
|
+
async deals(options) {
|
|
3040
|
+
return this.client._post("/api/v1/dollargeneral/deals", options);
|
|
3041
|
+
}
|
|
3042
|
+
/**
|
|
3043
|
+
* Dollar General's current digital coupons, 30 per page: offer id and code,
|
|
3044
|
+
* summary, description, brand, company, value, offer type, category, minimum
|
|
3045
|
+
* quantity, start and expiration dates, and whether it is a manufacturer
|
|
3046
|
+
* coupon.
|
|
3047
|
+
*
|
|
3048
|
+
* Costs 1 credit.
|
|
3049
|
+
*/
|
|
3050
|
+
async coupons(options = {}) {
|
|
3051
|
+
return this.client._post("/api/v1/dollargeneral/coupons", options);
|
|
3052
|
+
}
|
|
3053
|
+
};
|
|
3054
|
+
|
|
3055
|
+
// src/namespaces/sephora.ts
|
|
3056
|
+
var SephoraNamespace = class {
|
|
3057
|
+
constructor(client) {
|
|
3058
|
+
this.client = client;
|
|
3059
|
+
}
|
|
3060
|
+
client;
|
|
3061
|
+
/**
|
|
3062
|
+
* Search sephora.com products, 60 per page: product id, sku id, brand, name,
|
|
3063
|
+
* URL, image, price, list and sale price (with a price range when sizes are
|
|
3064
|
+
* priced differently), value price for sets, rating, review count, extra
|
|
3065
|
+
* colors, and bestseller, new, exclusive, online-only, limited-edition and
|
|
3066
|
+
* sponsored flags. Pass zip for same-day delivery eligibility. Also returns
|
|
3067
|
+
* category facets and related searches.
|
|
3068
|
+
*
|
|
3069
|
+
* Costs 1 credit.
|
|
3070
|
+
*/
|
|
3071
|
+
async search(options) {
|
|
3072
|
+
return this.client._post("/api/v1/sephora/search", options);
|
|
3073
|
+
}
|
|
3074
|
+
/**
|
|
3075
|
+
* Products in a sephora.com category, 60 per page, in the same shape as
|
|
3076
|
+
* search(), plus the category's id, name and URL, total product count,
|
|
3077
|
+
* parent category, subcategories with product counts and breadcrumbs. An
|
|
3078
|
+
* unknown category is a 404.
|
|
3079
|
+
*
|
|
3080
|
+
* Costs 1 credit.
|
|
3081
|
+
*/
|
|
3082
|
+
async category(options) {
|
|
3083
|
+
return this.client._post("/api/v1/sephora/category", options);
|
|
3084
|
+
}
|
|
3085
|
+
/**
|
|
3086
|
+
* One sephora.com product: rating, review count, loves count, price range,
|
|
3087
|
+
* description, suggested usage, breadcrumbs, a summary of what reviews say
|
|
3088
|
+
* with pro and con sentiment counts (no review text), and every shade or
|
|
3089
|
+
* size as a sku with price, list and sale price, in_stock, only_few_left,
|
|
3090
|
+
* ingredients, images, and pickup and same-day eligibility. An unknown
|
|
3091
|
+
* product is a 404.
|
|
3092
|
+
*
|
|
3093
|
+
* Costs 1 credit.
|
|
3094
|
+
*/
|
|
3095
|
+
async product(options) {
|
|
3096
|
+
return this.client._post("/api/v1/sephora/product", options);
|
|
3097
|
+
}
|
|
3098
|
+
};
|
|
3099
|
+
|
|
3100
|
+
// src/namespaces/ulta.ts
|
|
3101
|
+
var UltaNamespace = class {
|
|
3102
|
+
constructor(client) {
|
|
3103
|
+
this.client = client;
|
|
3104
|
+
}
|
|
3105
|
+
client;
|
|
3106
|
+
/**
|
|
3107
|
+
* Search Ulta Beauty by keyword, 64 products per page plus sponsored
|
|
3108
|
+
* placements: product_id, sku_id, brand, name, URL, image, list and sale
|
|
3109
|
+
* price (low end and range when shades are priced differently), discount,
|
|
3110
|
+
* promo text, rating, review count, badge, variant label, limited-stock and
|
|
3111
|
+
* sponsored flags.
|
|
3112
|
+
*
|
|
3113
|
+
* Costs 1 credit.
|
|
3114
|
+
*/
|
|
3115
|
+
async search(options) {
|
|
3116
|
+
return this.client._post("/api/v1/ulta/search", options);
|
|
3117
|
+
}
|
|
3118
|
+
/**
|
|
3119
|
+
* Products in an Ulta Beauty category, 64 per page plus sponsored
|
|
3120
|
+
* placements, with the category title and total_results and the same
|
|
3121
|
+
* product fields as search().
|
|
3122
|
+
*
|
|
3123
|
+
* Costs 1 credit.
|
|
3124
|
+
*/
|
|
3125
|
+
async category(options) {
|
|
3126
|
+
return this.client._post("/api/v1/ulta/category", options);
|
|
3127
|
+
}
|
|
3128
|
+
/**
|
|
3129
|
+
* One Ulta Beauty product for the selected shade or size: list and sale
|
|
3130
|
+
* price, discount, availability, GTIN, rating, review count, badges,
|
|
3131
|
+
* description, usage, ingredients, breadcrumbs, images, every shade or size
|
|
3132
|
+
* variant, ship / pickup / same-day eligibility and the five most recent
|
|
3133
|
+
* customer reviews. An unknown product is a 404.
|
|
3134
|
+
*
|
|
3135
|
+
* Costs 1 credit.
|
|
3136
|
+
*/
|
|
3137
|
+
async product(options) {
|
|
3138
|
+
return this.client._post("/api/v1/ulta/product", options);
|
|
3139
|
+
}
|
|
3140
|
+
/**
|
|
3141
|
+
* In-store pickup availability of one shade or size at the 10 Ulta Beauty
|
|
3142
|
+
* stores nearest a US ZIP: store id, name, address, distance in miles, open
|
|
3143
|
+
* now and hours label, curbside label, in_stock and the availability label.
|
|
3144
|
+
* In stock / out of stock per store, not unit counts.
|
|
3145
|
+
*
|
|
3146
|
+
* Costs 1 credit.
|
|
3147
|
+
*/
|
|
3148
|
+
async stores(options) {
|
|
3149
|
+
return this.client._post("/api/v1/ulta/stores", options);
|
|
3150
|
+
}
|
|
3151
|
+
};
|
|
3152
|
+
|
|
3153
|
+
// src/namespaces/aldi.ts
|
|
3154
|
+
var AldiNamespace = class {
|
|
3155
|
+
constructor(client) {
|
|
3156
|
+
this.client = client;
|
|
3157
|
+
}
|
|
3158
|
+
client;
|
|
3159
|
+
/**
|
|
3160
|
+
* Search ALDI US at one store (store_id, or the nearest store to a zip):
|
|
3161
|
+
* product_id, name, brand, size, price and was_price for that store and
|
|
3162
|
+
* service_type, discount label, unit price, in_stock and stock_level,
|
|
3163
|
+
* category, in-store aisle location, ALDI exclusive-brand flag, dietary
|
|
3164
|
+
* labels, image and URL. Exact matches only unless include_related is set.
|
|
3165
|
+
*
|
|
3166
|
+
* Costs 1 credit.
|
|
3167
|
+
*/
|
|
3168
|
+
async search(options) {
|
|
3169
|
+
return this.client._post("/api/v1/aldi/search", options);
|
|
3170
|
+
}
|
|
3171
|
+
/**
|
|
3172
|
+
* One ALDI US product by id or aldi.us URL at one store: price and
|
|
3173
|
+
* was_price for that store and service_type, unit price, stock, category,
|
|
3174
|
+
* brand, size, description, ingredients, allergen warnings, dietary labels
|
|
3175
|
+
* and images. An unknown product id is a 404.
|
|
3176
|
+
*
|
|
3177
|
+
* Costs 1 credit.
|
|
3178
|
+
*/
|
|
3179
|
+
async product(options) {
|
|
3180
|
+
return this.client._post("/api/v1/aldi/product", options);
|
|
3181
|
+
}
|
|
3182
|
+
/**
|
|
3183
|
+
* ALDI US stores near a ZIP code, nearest first: store_id (for search and
|
|
3184
|
+
* product), name, street address, city, state, ZIP, coordinates and
|
|
3185
|
+
* distance in miles.
|
|
3186
|
+
*
|
|
3187
|
+
* Costs 1 credit.
|
|
3188
|
+
*/
|
|
3189
|
+
async stores(options) {
|
|
3190
|
+
return this.client._post("/api/v1/aldi/stores", options);
|
|
3191
|
+
}
|
|
3192
|
+
};
|
|
3193
|
+
|
|
3194
|
+
// src/namespaces/micro-center.ts
|
|
3195
|
+
var MicroCenterNamespace = class {
|
|
3196
|
+
constructor(client) {
|
|
3197
|
+
this.client = client;
|
|
3198
|
+
}
|
|
3199
|
+
client;
|
|
3200
|
+
/**
|
|
3201
|
+
* Search Micro Center by keyword or category at one store, up to 96 per
|
|
3202
|
+
* page: product_id, SKU, name, brand, category, price and original price,
|
|
3203
|
+
* image, URL, highlights, and that store's stock (label as printed,
|
|
3204
|
+
* quantity, quantity_capped at 25+, in_stock, not_carried). Open-box count
|
|
3205
|
+
* and lowest price, rebate text and an in_store_only flag where shown.
|
|
3206
|
+
*
|
|
3207
|
+
* Costs 2 credits.
|
|
3208
|
+
*/
|
|
3209
|
+
async search(options) {
|
|
3210
|
+
return this.client._post("/api/v1/microcenter/search", options);
|
|
3211
|
+
}
|
|
3212
|
+
/**
|
|
3213
|
+
* One product by id or URL: SKU, MPN, UPC, description, price, original
|
|
3214
|
+
* price, ship and pickup flags, images, rating, up to 10 recent reviews,
|
|
3215
|
+
* breadcrumbs and the full spec table. selected_store carries the store's
|
|
3216
|
+
* stock and each open-box unit (condition, warranty, price); stores_in_stock
|
|
3217
|
+
* is a yes/no per Micro Center store, not a unit count. An unknown product
|
|
3218
|
+
* id is a 404.
|
|
3219
|
+
*
|
|
3220
|
+
* Costs 2 credits.
|
|
3221
|
+
*/
|
|
3222
|
+
async product(options) {
|
|
3223
|
+
return this.client._post("/api/v1/microcenter/product", options);
|
|
3224
|
+
}
|
|
3225
|
+
/**
|
|
3226
|
+
* Every Micro Center store with its 3-digit store_id, name, city, state and
|
|
3227
|
+
* store page URL; street address and ZIP where known. Optionally filtered by
|
|
3228
|
+
* state. The web store 029 is not listed but is accepted as a store_id.
|
|
3229
|
+
*
|
|
3230
|
+
* Costs 1 credit.
|
|
3231
|
+
*/
|
|
3232
|
+
async stores(options = {}) {
|
|
3233
|
+
return this.client._post("/api/v1/microcenter/stores", options);
|
|
3234
|
+
}
|
|
3235
|
+
};
|
|
3236
|
+
|
|
3237
|
+
// src/namespaces/walgreens.ts
|
|
3238
|
+
var WalgreensNamespace = class {
|
|
3239
|
+
constructor(client) {
|
|
3240
|
+
this.client = client;
|
|
3241
|
+
}
|
|
3242
|
+
client;
|
|
3243
|
+
/**
|
|
3244
|
+
* Search Walgreens retail products, up to 70 per page: product id, SKU, UPC,
|
|
3245
|
+
* name, brand, size, regular and sale price, unit price, promotion, coupon,
|
|
3246
|
+
* loyalty and rebate messages, rating, review count, image, URL,
|
|
3247
|
+
* ship/pickup/delivery availability, online stock status and clearance flag.
|
|
3248
|
+
* Prices are national. Pass store_id for that store's availability text.
|
|
3249
|
+
*
|
|
3250
|
+
* Costs 2 credits.
|
|
3251
|
+
*/
|
|
3252
|
+
async search(options) {
|
|
3253
|
+
return this.client._post("/api/v1/walgreens/search", options);
|
|
3254
|
+
}
|
|
3255
|
+
/**
|
|
3256
|
+
* One Walgreens retail product by id or URL: SKU, UPC, GTIN, brand, size,
|
|
3257
|
+
* regular and sale price, savings, unit price, rewards and rebate offers,
|
|
3258
|
+
* description, ingredients, warnings, rating, review count, category path,
|
|
3259
|
+
* images, ship and pickup availability and clearance flag. Prices are
|
|
3260
|
+
* national. An unknown id is a 404.
|
|
3261
|
+
*
|
|
3262
|
+
* Costs 2 credits.
|
|
3263
|
+
*/
|
|
3264
|
+
async product(options) {
|
|
3265
|
+
return this.client._post("/api/v1/walgreens/product", options);
|
|
3266
|
+
}
|
|
3267
|
+
/**
|
|
3268
|
+
* Walgreens and Duane Reade stores near a US ZIP or coordinates, nearest
|
|
3269
|
+
* first: store_number, name, brand, address, phone, coordinates, distance in
|
|
3270
|
+
* miles, opening and closing time, time zone and store page URL. Paged with
|
|
3271
|
+
* total_results, total_pages and has_more.
|
|
3272
|
+
*
|
|
3273
|
+
* Costs 2 credits.
|
|
3274
|
+
*/
|
|
3275
|
+
async stores(options) {
|
|
3276
|
+
return this.client._post("/api/v1/walgreens/stores", options);
|
|
3277
|
+
}
|
|
3278
|
+
/**
|
|
3279
|
+
* Live in-store stock of one product at up to 20 stores: per store the
|
|
3280
|
+
* status (In Stock, Out of Stock, or Not Available when the store does not
|
|
3281
|
+
* carry it), the unit count and in_stock. Store numbers Walgreens does not
|
|
3282
|
+
* recognise are listed in unknown_store_ids. An unknown product is a 404.
|
|
3283
|
+
*
|
|
3284
|
+
* Costs 4 credits.
|
|
3285
|
+
*/
|
|
3286
|
+
async stock(options) {
|
|
3287
|
+
return this.client._post("/api/v1/walgreens/stock", options);
|
|
3288
|
+
}
|
|
3289
|
+
};
|
|
3290
|
+
|
|
3291
|
+
// src/namespaces/cvs.ts
|
|
3292
|
+
var CVS_PRODUCT_TIMEOUT = 12e4;
|
|
3293
|
+
var CvsNamespace = class {
|
|
3294
|
+
constructor(client) {
|
|
3295
|
+
this.client = client;
|
|
3296
|
+
}
|
|
3297
|
+
client;
|
|
3298
|
+
/**
|
|
3299
|
+
* Search CVS front-store products: product_id and sku_id, name, brand, URL,
|
|
3300
|
+
* regular and sale price, unit price, promotion text, rating, review count,
|
|
3301
|
+
* size, image, coupons (ExtraBucks rewards and manufacturer coupons) and
|
|
3302
|
+
* stock at one store (in store, pickup, same-day delivery) plus online ship
|
|
3303
|
+
* availability. Sponsored placements are excluded. Includes brand,
|
|
3304
|
+
* price-range and rating facets.
|
|
3305
|
+
*
|
|
3306
|
+
* Costs 1 credit.
|
|
3307
|
+
*/
|
|
3308
|
+
async search(options) {
|
|
3309
|
+
return this.client._post("/api/v1/cvs/search", options);
|
|
3310
|
+
}
|
|
3311
|
+
/**
|
|
3312
|
+
* One CVS product by URL or id: regular and sale price, unit price,
|
|
3313
|
+
* promotion and its end date, rating, review count, UPC, size, description,
|
|
3314
|
+
* highlights, ingredients, directions, warnings, attributes, breadcrumbs,
|
|
3315
|
+
* images and every variant (SKU id, UPC, size, price, rating). An unknown
|
|
3316
|
+
* product is a 404. Can take 10-30+ seconds.
|
|
3317
|
+
*
|
|
3318
|
+
* Costs 1 credit.
|
|
3319
|
+
*/
|
|
3320
|
+
async product(options) {
|
|
3321
|
+
return this.client._post("/api/v1/cvs/product", options, void 0, CVS_PRODUCT_TIMEOUT);
|
|
3322
|
+
}
|
|
3323
|
+
/**
|
|
3324
|
+
* Units available at one CVS store for up to 20 SKUs: in_store (on the
|
|
3325
|
+
* shelf), pickup and ship (online stock, chain-wide). same_day_delivery is
|
|
3326
|
+
* always null here; search returns same-day units. An unknown SKU or store
|
|
3327
|
+
* number reads as 0.
|
|
3328
|
+
*
|
|
3329
|
+
* Costs 1 credit.
|
|
3330
|
+
*/
|
|
3331
|
+
async stock(options) {
|
|
3332
|
+
return this.client._post("/api/v1/cvs/stock", options);
|
|
3333
|
+
}
|
|
3334
|
+
};
|
|
3335
|
+
|
|
2802
3336
|
// src/namespaces/trustpilot.ts
|
|
2803
3337
|
var TrustpilotNamespace = class {
|
|
2804
3338
|
constructor(client) {
|
|
@@ -3314,6 +3848,16 @@ var Scavio = class extends ScavioCore {
|
|
|
3314
3848
|
kroger;
|
|
3315
3849
|
decathlon;
|
|
3316
3850
|
specs;
|
|
3851
|
+
lowes;
|
|
3852
|
+
samsClub;
|
|
3853
|
+
canadianTire;
|
|
3854
|
+
dollarGeneral;
|
|
3855
|
+
sephora;
|
|
3856
|
+
ulta;
|
|
3857
|
+
aldi;
|
|
3858
|
+
microCenter;
|
|
3859
|
+
walgreens;
|
|
3860
|
+
cvs;
|
|
3317
3861
|
trustpilot;
|
|
3318
3862
|
chatgpt;
|
|
3319
3863
|
gemini;
|
|
@@ -3377,6 +3921,16 @@ var Scavio = class extends ScavioCore {
|
|
|
3377
3921
|
this.kroger = new KrogerNamespace(this);
|
|
3378
3922
|
this.decathlon = new DecathlonNamespace(this);
|
|
3379
3923
|
this.specs = new SpecsNamespace(this);
|
|
3924
|
+
this.lowes = new LowesNamespace(this);
|
|
3925
|
+
this.samsClub = new SamsClubNamespace(this);
|
|
3926
|
+
this.canadianTire = new CanadianTireNamespace(this);
|
|
3927
|
+
this.dollarGeneral = new DollarGeneralNamespace(this);
|
|
3928
|
+
this.sephora = new SephoraNamespace(this);
|
|
3929
|
+
this.ulta = new UltaNamespace(this);
|
|
3930
|
+
this.aldi = new AldiNamespace(this);
|
|
3931
|
+
this.microCenter = new MicroCenterNamespace(this);
|
|
3932
|
+
this.walgreens = new WalgreensNamespace(this);
|
|
3933
|
+
this.cvs = new CvsNamespace(this);
|
|
3380
3934
|
this.trustpilot = new TrustpilotNamespace(this);
|
|
3381
3935
|
this.chatgpt = new ChatgptNamespace(this);
|
|
3382
3936
|
this.gemini = new GeminiNamespace(this);
|
|
@@ -3487,15 +4041,20 @@ async function getSubtle() {
|
|
|
3487
4041
|
export {
|
|
3488
4042
|
AI_PROMPT_TIMEOUT,
|
|
3489
4043
|
AirbnbNamespace,
|
|
4044
|
+
AldiNamespace,
|
|
3490
4045
|
AmazonNamespace,
|
|
3491
4046
|
AppStoreNamespace,
|
|
3492
4047
|
BadRequestError,
|
|
3493
4048
|
BookingNamespace,
|
|
4049
|
+
CVS_PRODUCT_TIMEOUT,
|
|
4050
|
+
CanadianTireNamespace,
|
|
3494
4051
|
CapterraNamespace,
|
|
3495
4052
|
ChatgptNamespace,
|
|
3496
4053
|
CompaniesHouseNamespace,
|
|
3497
4054
|
CostcoNamespace,
|
|
4055
|
+
CvsNamespace,
|
|
3498
4056
|
DEFAULT_MAX_REQUESTS_PER_SECOND,
|
|
4057
|
+
DollarGeneralNamespace,
|
|
3499
4058
|
EbayNamespace,
|
|
3500
4059
|
ExtractNamespace,
|
|
3501
4060
|
G2Namespace,
|
|
@@ -3513,9 +4072,11 @@ export {
|
|
|
3513
4072
|
KrogerNamespace,
|
|
3514
4073
|
KuaishouNamespace,
|
|
3515
4074
|
LinkedInNamespace,
|
|
4075
|
+
LowesNamespace,
|
|
3516
4076
|
MAX_REQUESTS_PER_SECOND,
|
|
3517
4077
|
MercadoLibreNamespace,
|
|
3518
4078
|
MetaAdsNamespace,
|
|
4079
|
+
MicroCenterNamespace,
|
|
3519
4080
|
MissingAPIKeyError,
|
|
3520
4081
|
NotFoundError,
|
|
3521
4082
|
RateLimitError,
|
|
@@ -3524,18 +4085,22 @@ export {
|
|
|
3524
4085
|
RedfinNamespace,
|
|
3525
4086
|
RightmoveNamespace,
|
|
3526
4087
|
SECNamespace,
|
|
4088
|
+
SamsClubNamespace,
|
|
3527
4089
|
Scavio,
|
|
3528
4090
|
ScavioAPIError,
|
|
3529
4091
|
ScavioConnectionError,
|
|
3530
4092
|
ScavioError,
|
|
3531
4093
|
ScavioJobTimeoutError,
|
|
3532
4094
|
ScavioTimeoutError,
|
|
4095
|
+
SephoraNamespace,
|
|
3533
4096
|
TargetNamespace,
|
|
3534
4097
|
ThreadsNamespace,
|
|
3535
4098
|
TikTokNamespace,
|
|
3536
4099
|
TikTokShopNamespace,
|
|
3537
4100
|
TripadvisorNamespace,
|
|
3538
4101
|
TrustpilotNamespace,
|
|
4102
|
+
UltaNamespace,
|
|
4103
|
+
WalgreensNamespace,
|
|
3539
4104
|
WalmartNamespace,
|
|
3540
4105
|
XNamespace,
|
|
3541
4106
|
YelpNamespace,
|