3atir API3atir.co ↗
Access 3atir.co's Saudi perfume catalog via API. Retrieve products, best sellers, categories, and brands with prices, availability, and SKUs.
What is the 3atir API?
The 3atir.co API provides structured access to a Saudi perfume e-commerce store through 4 endpoints covering the full product catalog, best sellers, categories, and brands. The list_products endpoint returns paginated product records including price, sale status, SKU, availability, and image URL. All endpoints return Arabic-market product data from 3atir (عاطر للعطور الأصلية والنادرة), a Salla-powered specialty retailer of authentic and rare fragrances.
curl -X GET 'https://api.parse.bot/scraper/f57997e9-da85-4f25-86a5-40cac2fc1a8d/list_products?page=1&per_page=5' \ -H 'X-API-Key: $PARSE_API_KEY'
List all products in the store with cursor-based pagination. Returns product details including name, price, availability, category, and brand. Products are returned in the store's default order.
| Param | Type | Description |
|---|---|---|
| page | integer | Page number for pagination. |
| per_page | integer | Number of products per page. Maximum 50. |
{
"type": "object",
"fields": {
"page": "current page number",
"has_next": "boolean indicating if more pages exist",
"products": "array of product objects with id, name, price, regular_price, sale_price, currency, is_available, is_on_sale, sku, url, image_url, category, brand, brand_id"
},
"sample": {
"data": {
"page": 1,
"has_next": true,
"products": [
{
"id": "2131569661",
"sku": "533179",
"url": "https://3atir.co/en/عطر-lacoste-eau-de-lacoste-l1212-jaune-من-لاكوست-للرجال-او-دو-تواليت-بدون-كرتون/p2131569661",
"name": "عطر Lacoste Eau De Lacoste L.12.12 Jaune من لاكوست للرجال - او دو تواليت - بدون كرتون",
"brand": "Lacoste",
"price": 439.94,
"brand_id": "1219272246",
"category": "Men's Perfumes",
"currency": "SAR",
"image_url": "https://cdn.salla.sa/ypRXO/eLuA0ahKiOBQnS31MCtSZk7TZimsh6Oj5NrRSrbQ.jpg",
"is_on_sale": false,
"sale_price": 0,
"is_available": false,
"regular_price": 439.94
}
]
},
"status": "success"
}
}About the 3atir API
Product Catalog and Pagination
The list_products endpoint returns an array of product objects, each containing id, name, price, regular_price, sale_price, currency, is_available, is_on_sale, sku, url, and image_url. Pagination is controlled with the page and per_page parameters (max 50 per page), and the has_next boolean indicates whether additional pages exist. Products are returned in the store's default sort order.
Best Sellers and Curated Collections
The get_best_sellers endpoint returns the store's homepage-curated top sellers with no input parameters required. It returns the same product object shape as list_products — including is_on_sale, sale_price, and is_available fields — alongside a count field indicating how many best sellers are returned. This reflects the store owner's manual curation rather than a computed sales rank.
Categories and Brands
The list_categories endpoint returns all product categories with id, name, url, and a sub_categories array for nested taxonomies. Navigation items such as offer pages, brand indexes, and blog links are excluded, so the results reflect the actual product taxonomy. The list_brands endpoint supports the same page and per_page pagination as list_products, returning brand id, name, logo, and description fields — useful for building brand-filtered browsing experiences or populating a brand directory.
The 3atir API is a managed, monitored endpoint for 3atir.co — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when 3atir.co changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official 3atir.co API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Track price changes and sale status across the 3atir.co perfume catalog using
regular_priceandsale_pricefields. - Build a brand directory for Middle Eastern niche perfumes using
list_brandslogo and description data. - Monitor which products are marked
is_available: falseto detect out-of-stock fragrances. - Display a curated 'top sellers' section in a fragrance discovery app using
get_best_sellers. - Map the store's category taxonomy including sub-categories for building faceted navigation.
- Aggregate SKU and URL data from
list_productsfor cross-store fragrance price comparison tools. - Identify discounted fragrances by filtering on
is_on_saleacross the full paginated product catalog.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 200 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
| Team | $300/mo | 20,000 | 300 req/min |
| Company | $1,000/mo | 100,000 | 500 req/min |
Each endpoint has a fixed posted price per successful call — most fall between 1 and 10 credits — shown on this API's page before you run it. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does 3atir.co have an official developer API?+
What does `get_best_sellers` return, and how is 'best seller' defined?+
list_products (price, availability, SKU, etc.) plus a count field.Does `list_products` support filtering by category or brand?+
list_products endpoint returns all products in the store's default order and supports only page and per_page parameters. Filtering by category ID or brand ID is not currently available. The API covers full catalog retrieval and pagination. You can fork it on Parse and revise to add a category_id or brand_id filter parameter.Does the API return customer reviews or ratings for products?+
Are product descriptions or fragrance notes included in the product objects?+
list_products and get_best_sellers responses do not include a description or notes field — the product object covers identifiers, pricing, availability, SKU, and media. You can fork this API on Parse and revise it to pull extended product detail fields from individual product pages.