Salla APIsalla.com ↗
Access Salla e-commerce stores, product catalogs, categories, and pricing data. Search stores, list products, and retrieve detailed product info via 6 endpoints.
What is the Salla API?
The Salla API provides 6 endpoints for extracting store and product data from any merchant hosted on the Salla platform. Starting with search_stores to locate stores by keyword, you can resolve a store's numeric ID, fetch its settings and availability, enumerate product categories with full hierarchy, and page through product listings filtered by category or search query down to individual product detail records.
curl -X GET 'https://api.parse.bot/scraper/8ec3a1c5-5f1e-487b-bae0-8dfd674b87f8/search_stores?query=site%3Asalla.sa' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace salla-com-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
"""Walkthrough: Salla Stores API — browse products on any Salla-hosted store."""
from parse_apis.salla_stores_api import Salla, Url, StoreNotFound
client = Salla()
# Construct a store from a known ID (constructible) and fetch its info.
store = client.store(store_id="2146415531")
info = store.info()
print(info.store_status, info.availability)
# List categories for the store (single-page, bounded).
for cat in store.categories(limit=3):
print(cat.name, cat.numeric_id)
# Search products by keyword, iterate with a total-items cap.
product = store.products(query="chair", limit=1).first()
if product:
print(product.name, product.price, product.currency, product.is_available)
# Drill into full product details via the sub-resource.
if product:
try:
detail = store.product_details.get(product_id=product.id)
print(detail.name, detail.price, detail.quantity, detail.is_on_sale)
except StoreNotFound as exc:
print(f"product gone: {exc}")
print("exercised: store.info / store.categories / store.products / store.product_details.get")
Search for stores on the Salla platform. Returns a list of matching store URLs and names based on the provided query, supplemented by search engine results.
| Param | Type | Description |
|---|---|---|
| query | string | Search query to find stores on Salla platform. |
{
"type": "object",
"fields": {
"stores": "array of store objects, each with 'url' (string) and optionally 'name' (string)"
},
"sample": {
"data": {
"stores": [
{
"url": "https://homesfurniture.sa",
"name": "Homes Furniture"
},
{
"url": "https://salla.sa/designflow-furniture-",
"name": "Design Flow"
},
{
"url": "https://modernhousez.com",
"name": "Modern Housez"
},
{
"url": "https://mnzli.com",
"name": "Mnzli"
}
]
},
"status": "success"
}
}About the Salla API
Store Discovery and Identification
The search_stores endpoint accepts a text query and returns an array of store objects, each carrying a url and optional name. Once you have a candidate URL, pass it to get_store_id to resolve the numeric store_id that all remaining endpoints require. get_store_info then returns that store's languages object (default language plus a supported-languages array), an availability boolean, and a store_status string such as 'active'.
Category and Product Browsing
list_categories takes a store_id and returns a data array of category objects, each with id, name, url, icon, image, and a sub_categories array for nested hierarchies. To browse products, call list_products with the same store_id. Optional parameters include a keyword query, a category_id pulled from list_categories results, per_page, and a cursor string for paginating through large catalogs. Each product object in the data array carries id, name, description, url, price, sale_price, regular_price, currency, image, category, and tags.
Product Detail
get_product_details accepts a store_id and product_id and returns a single data object with the full product record, including quantity and additional metadata not present in list results. All product and category endpoints return status (upstream HTTP code) and a success boolean, making it straightforward to detect partial failures without parsing error messages.
The Salla API is a managed, monitored endpoint for salla.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when salla.com 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 salla.com 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?+
- Aggregate and compare pricing across multiple Salla merchants for a specific product category
- Build a category-level inventory snapshot for a single store using list_categories and list_products with category_id filtering
- Monitor store availability and supported languages for a set of tracked Salla stores via get_store_info
- Construct a product feed for price-comparison tools using price, sale_price, regular_price, and currency fields
- Index full product descriptions and tags from get_product_details for search or recommendation engines
- Discover Salla stores in a niche by keyword using search_stores and then enumerate their catalogs
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does Salla have an official developer API?+
How does pagination work in list_products?+
cursor object with the current page number and a next field containing the URL for the following page. Pass that next value as the cursor input on your next call to advance through the catalog. The per_page parameter controls how many product objects appear in each data array.