Search Haraj ads

GET https://api.api.sh/haraj/v1/search
1 credit / call e-commerce try it in the playground →

Haraj (Saudi Arabia) classified ads for an Arabic or English keyword, or a tag (category): title, text, price (SAR), city, district and neighbourhood, posting and update times, tags, attributes, car and real-estate details, photos and comment counts. The newest matching ads (about 20 a page); has_more tells whether the site has more, and page fetches the next ones. Filter by city, price range (min_price / max_price, keyword searches) and sort=newest (newest posted first); with any of these the response also echoes page, city, min_price, max_price and sort. Private sellers' names, phone numbers and email addresses are never returned (masked in ad text).

Every response includes credits_used: the credits this call cost.

Parameters

nametypedescription
q string Keywords (Arabic or English). Example: ايفون
tag string A Haraj tag (category) instead of keywords, e.g. حراج السيارات.
page integer Results page, 1-100 (about 20 ads a page). Pass page+1 while has_more is true.
city string Only ads in this city, as Haraj names it (Arabic), e.g. الرياض, جده, الدمام.
min_price number Lowest price (SAR). Needs q.
max_price number Highest price (SAR). Needs q.
sort default | newest default (the site's order) or newest (newest posted first).

Every endpoint also takes fresh, raw, fields (see lean responses and caching).

Example

curl "https://api.api.sh/haraj/v1/search?q=%D8%A7%D9%8A%D9%81%D9%88%D9%86" \
  -H "x-api-key: $APISH_KEY"

Response

A JSON object with the fields described above, plus raw (the source's own data), cached, fetched_at and credits_used. Errors return {"success": false, "error": "…"} with the HTTP status (see errors). A lookup that ran but found nothing (404) costs the price above; refused calls and errors on our side are free (what's charged).

The fastest way to see the full response is the playground: it runs this endpoint with your account and shows the exact JSON.