## AmazonPricing


An `amazon_pricing` job, which scrapes the offers of one product.


Usage

``` python
AmazonPricing()
```


The model takes no `currency`, because the API bills it with no effect. [What a live test shows about the Amazon models](https://github.com/ozanozbeker/oxyscraper/blob/main/docs/research/live-amazon.md) records the run that checked it.


## Attributes


`query: Annotated[str, Field(max_length=10)]`  
An ASIN. One longer than 10 characters raises, because the API bills a 404 page for it. The API rejects a shorter one, or one with lowercase letters, for free, and bills a 404 page for one that does not exist.

`domain: _AmazonDomain | None`  
The marketplace, `com` by default. `co.za` works, although no docs page lists it, and every `cn` job faulted.

`locale: _AmazonLocale | None`  
The page's language, which the API rejects for free unless the domain lists it. Without it, `ae` returns its Arabic page.

`geo_location: str | None`  
A postal code inside the domain's country, or an ISO 3166-1 alpha-2 code outside it, which the API rejects for free if it does not fit. `ae`, `com.be`, `eg`, `ie`, `pl`, `sa`, `se` and `sg` run no check, so a wrong value may bill. `99999` on `com` faults after 120 seconds.

`start_page: PositiveInt | None`  
A page past the last bills.

`pages: PositiveInt | None`  
The API rejects more than 20 for free.

`user_agent_type: _UserAgentType | None`  
It raises with `render`, because a rendered job ignores it and still bills.
