keepa.models.backend.DealRequest#
- pydantic model keepa.models.backend.DealRequest#
Backend
DealRequestmodel generated from the Keepa Java schema.- Fields:
- field author: list[str | None] | None = None#
Include only products by the specified author (applicable to books, music, etc.).
Example: [“Neil Gaiman”]
- field binding: list[str | None] | None = None#
Include only products with the specified binding type (e.g., “paperback”).
Example: [“hardcover”]
- field brand: list[str | None] | None = None#
Include only products from the specified brand.
Example: [“Apple”, “Samsung”]
- field brandStoreName: list[str | None] | None = None#
Include only products sold under the specified Brand Store name on Amazon.
Example: [“Amazon Basics”]
- field brandStoreUrlName: list[str | None] | None = None#
Include only products sold under the specified URL-friendly Brand Store identifier.
Example: [“amazonbasics”]
- field color: list[str | None] | None = None#
Include only products matching the specified color attribute.
Example: [“black”, “navy”]
- field currentRange: list[int | None] | None = None#
Limit the range of the current value of the price type.
Example: [105,50000] (= minimum price $1.05, maximum price $500, or a rank between 105 and 50000).
- field dateRange: int | None = None#
Our deals are divided in different sets, determined by the time interval in which the product changed. The shorter the interval, the more recent the change; which is good for big price drops but bad for slow incremental drops that accumulate over a longer period. For most deals the shorter intervals can be considered as subsets of the longer intervals. To find more deals use the longer intervals.
Possible values:
0 - day: the last 24 hours 1 - week: the last 24 * 7 hours 2 - month: the last 24 * 31 hours 3 - 90 days: the last 24 * 90 hours
- field deltaLastRange: list[int | None] | None = None#
Limit the range of the absolute difference between the current value and previous one.
Example: [100,500] (= last change between one $1 and $5)
- field deltaPercentRange: list[int | None] | None = None#
Same as deltaRange, but given in percent instead of absolute values. Minimum percent is 10, for Sales Rank it is 80.
Example: [30,80] (= between 30% and 80%).
- field deltaRange: list[int | None] | None = None#
Limit the range of the absolute difference between the current value and the one at the beginning of the chosen dateRange interval.
Example: [0,999] (= no minimum difference, maximum difference of $9.99).
- field edition: list[str | None] | None = None#
Include only products matching the specified edition (e.g., “first edition”, “standard edition”).
Example: [“first edition”]
- field excludeCategories: list[int | None] | None = None#
Used to exclude products that are listed in these categories. If it is a sub category the product must be directly listed in this category. It will not exclude products in child categories of the specified ones, unless it is a root category. Array with category node ids14.
- field format: list[str | None] | None = None#
Include only products in the specified format (e.g., “kindle ebook”, “import”, “dvd”).
Example: [“paperback”]
- field hasReviews: bool | None = None#
If true excludes all products with no reviews. If false the filter is inactive.
- field includeCategories: list[int | None] | None = None#
Used to only include products that are listed in these categories. If it is a sub category the product must be directly listed in this category. It will not include products in child categories of the specified ones, unless it is a root category. Array with category node ids14.
- field isBackInStock: bool | None = None#
Only include products which were out of stock within the last 24 hours and can now be ordered.
- field isLowest: bool | None = None#
Include only products for which the specified price type is at its lowest value (since tracking began).
- field isLowest90: bool | None = None#
Include only products for which the specified price type is at its lowest value in the past 90 days.
- field isLowestOffer: bool | None = None#
Include only products if the selected price type is the lowest of all New offers (applicable to Amazon and Marketplace New).
- field isOutOfStock: bool | None = None#
Only include products which were available to order within the last 24 hours and now out of stock.
- field isPrimeExclusive: bool | None = None#
Include only products flagged as Prime Exclusive.
Example: true
- field itemForm: list[str | None] | None = None#
Include only products matching the specified item form (e.g., “liquid”, “sheet”).
Example: [“liquid”]
- field itemTypeKeyword: list[str | None] | None = None#
Include only products matching the specified item type keyword (custom search term).
Example: [“books”, “prints”]
- field languages: list[str | None] | None = None#
Include only products available in the specified languages (use language names).
Example: [“English”, “German”]
- field manufacturer: list[str | None] | None = None#
Include only products from the specified manufacturer.
Example: [“Sony”]
- field material: list[str | None] | None = None#
Include only products made of the specified materials (e.g., “cotton”).
Example: [“cotton”, “polyester”]
- field minRating: int | None = None#
Minimum product rating to include.
Integer from 0 to 50 (e.g., 45 = 4.5 stars) Use -1 to disable the filter
Example: 20 // ≥ 2.0 stars
- field model: list[str | None] | None = None#
Include only products matching the specified model identifier.
Example: [“A2179”]
- field mustHaveAmazonOffer: bool | None = None#
Include only products that currently have an offer sold and fulfilled by Amazon.
Example: true
- field mustNotHaveAmazonOffer: bool | None = None#
Include only products that currently have no offer sold and fulfilled by Amazon.
Example: true
- field page: int | None = None#
Most deal queries have more than 150 results (which is the maximum page size). To browse all deals found by a query (which is cached for 120 seconds) you iterate the page parameter and keep all other parameters identical. You start with page 0 and stop when the response contains less than 150 results.
- field pattern: list[str | None] | None = None#
Include only products matching the specified pattern (e.g., “striped”, “solid”).
Example: [“striped”]
- field priceTypes: list[int | None] | None = None#
Determines the type of the deal. Even though it is an integer array, it can contain only one entry. Multiple types per query are not yet supported. Uses Product.CsvType coding. Only those applicable with Product.CsvType.isDealRelevant set to true.
- field productGroup: list[str | None] | None = None#
Include only products in the specified Amazon product group (e.g., “home”, “book”).
Example: [“book”]
- field salesRankDisplayGroup: list[str | None] | None = None#
Include only products belonging to the specified sales rank display group (e.g., “fashiondisplayon_website”).
Example: [“fashiondisplayon_website”]
- field salesRankRange: list[int | None] | None = None#
Limit the Sales Rank range of the product. Identical to currentRange if price type is set to Sales Rank. If you want to keep the upper bound open, you can specify -1 (which will translate to the maximum signed integer value).
Important note: Once this range option is used all products with no Sales Rank will be excluded. Set it to null to not use it.
Examples:
[0,5000] (= only products which have a sales rank between 0 and 5000)
[5000,-1] (= higher than 5000)
- field scent: list[str | None] | None = None#
Include only products with the specified scent (e.g., “lavender”, “citrus”).
Example: [“lavender”]
- field singleVariation: bool | None = None#
If multiple variations match, return only a single (random) variation.
Example: true
- field size: list[str | None] | None = None#
Include only products matching the specified size (e.g., “small”, “one size”).
Example: [“M”, “L”]
- field sortType: int | None = None#
Determines the sort order of the retrieved deals. To invert the sort order use negative values.
Possible sort by values:
1 - deal age. Newest deals first, not invertible. 2 - absolute delta. (the difference between the current value and the one at the beginning of the chosen dateRange interval). Sort order is highest delta to lowest. 3 - sales rank. Sort order is lowest rank o highest. 4 - percentage delta (the percentage difference between the current value and the one at the beginning of the chosen dateRange interval). Sort order is highest percent to lowest.
- field style: list[str | None] | None = None#
Include only products matching the specified style attribute (e.g., “modern”, “vintage”).
Example: [“modern”]
- field targetAudienceKeyword: list[str | None] | None = None#
Include only products targeting the specified audience (e.g., “kids”, “professional”).
Example: [“kids”]
- field titleSearch: str | None = None#
Select deals by a keywords based product title search. The search is case-insensitive and supports multiple keywords which, if specified and separated by a space, must all match.
Examples: “samsung galaxy” matches all products which have the character sequences “samsung” AND “galaxy” within their title
- field type: list[str | None] | None = None#
Include only products matching the specified type (e.g., “shirt”, “dress”).
Example: [“shirt”]
- field unitType: list[str | None] | None = None#
Include only products with the specified unit type (e.g., “count”, “ounce”).
Example: [“count”]
- field warehouseConditions: list[int | None] | None = None#
Include only Amazon Warehouse deals that match these condition codes.
Use integer-coded conditions such as: 1 = New, 2 = Used - Like New, 3 = Used - Very Good, 24 = Used - Good, 5 = Used - Acceptable.
Example: [1, 2]
Note: API expects integers; choose a numeric type that fits your model.