Israel's #1 classifieds as JSON: cars, real estate and listings
The Yad2 API returns Israel's largest classifieds site as clean JSON in five actions: cars/search for cars, motorcycles, scooters, trucks and watercraft, real_estate/search for property for sale, for rent and commercial property, products/search for the second-hand products section, locations for Yad2's own place names and ids, and listing for the full record of any ad.
5 active endpoints. Every call is 1 credit.
- POST/yad2/v1/cars/search
- POST/yad2/v1/real_estate/search
- POST/yad2/v1/products/search
- POST/yad2/v1/locations
- POST/yad2/v1/listing
What Yad2 endpoints does ReefAPI ship?
5 live read endpoints. Read-only data API: no writes, no account actions, no dashboard access on the target site.
Yad2 API
4 of 5 endpoints, ready to run
Yad2 property for sale or rent: price or monthly rent, earlier price after a drop, property type, rooms, size, floor, street, neighbourhood and coordinates, private owner or agency, and photos.
{ "ok": true, "meta": { "api": "yad2", "endpoint": "real_estate/search", "mode": "live", "latency_ms": 775.3, "record_count": 40, "cache_hit": false }, "data": { "listings": [ { "ad_id": "a12rg96x", "url": "https://www.yad2.co.il/realestate/item/a12rg96x", "vertical": "real_estate", "deal_type": "rent", "title": "דירה, השוק, פלורנטין, תל אביב יפו", "price": 8600, "currency": "ILS", "price_not_published": false, "price_placeholder": false, "price_published_raw": null, "price_period": "month", "price_before_drop": 9500, "price_dropped": true, "property_type": "דירה", "rooms": 3, "size_m2": 80, "built_size_m2": 80, "property_condition_id": 2, "location": { "region": { "id": 3, "name": "תל אביב והסביבה" }, "top_area": null, "area": { "id": null, "name": "אזור תל אביב יפו" }, "city": { "id": null, "name": "תל אביב יפו" }, "neighborhood": { "id": null, "name": "פלורנטין" }, "street": "השוק", "house_number": "37", "floor": 3, "latitude": 32.057571, "longitude": 34.771557 }, "seller_type": "private", "agency": null, "is_exclusive": null, "promotion_tier": 3, "is_sponsored": false, "tags": [ "נוף פתוח לעיר", "ממ\"ד", "בהזדמנות" ], "images": [ "https://img.yad2.co.il/Pic/202609/15/2_2/o/y2_1_04427_20260915211229.jpeg", "https://img.yad2.co.il/Pic/202609/15/2_2/o/y2_2_01403_20260915211232.jpeg", "https://img.yad2.co.il/Pic/202609/12/2_2/o/y2_3_09770_20260912164352.jpeg" ], "video": null, "image_count": 7 }, { "ad_id": "6x6u57na", "url": "https://www.yad2.co.il/realestate/item/6x6u57na", "vertical": "real_estate", "deal_type": "rent", "title": "דירה, זבולון, פלורנטין, תל אביב יפו", "price": 4450, "currency": "ILS", "price_not_published": false, "price_placeholder": false, "price_published_raw": null, "price_period": "month", "price_before_drop": null, "price_dropped": false, "property_type": "דירה", "rooms": 2, "size_m2": 38, "built_size_m2": null, "property_condition_id": 2, "location": { "region": { "id": 3, "name": "תל אביב והסביבה" }, "top_area": null, "area": { "id": null, "name": "אזור תל אביב יפו" }, "city": { "id": null, "name": "תל אביב יפו" }, "neighborhood": { "id": null, "name": "פלורנטין" }, "street": "זבולון", "house_number": "48", "floor": 0, "latitude": 32.05725, "longitude": 34.772126 }, "seller_type": "private", "agency": null, "is_exclusive": null, "promotion_tier": 3, "is_sponsored": false, "tags": [], "images": [ "https://img.yad2.co.il/Pic/202609/15/2_2/o/y2_1pa_010775_20260915155345.jpeg", "https://img.yad2.co.il/Pic/202609/15/2_2/o/y2_1pa_010079_20260915155348.jpeg", "https://img.yad2.co.il/Pic/202609/15/2_2/o/y2_1pa_010830_20260915155359.jpeg" ], "video": null, "image_count": 9 }, { "ad_id": "n248qlsd", "url": "https://www.yad2.co.il/realestate/item/n248qlsd", "vertical": "real_estate", "deal_type": "rent", "title": "דירה, זבולון, פלורנטין, תל אביב יפו", "price": 9400, "currency": "ILS", "price_not_published": false, "price_placeholder": false, "price_published_raw": null, "price_period": "month", "price_before_drop": 9900, "price_dropped": true, "property_type": "דירה", "rooms": 3, "size_m2": 129, "built_size_m2": 75, "property_condition_id": 3, "location": { "region": { "id": 3, "name": "תל אביב והסביבה" }, "top_area": null, "area": { "id": null, "name": "אזור תל אביב יפו" }, "city": { "id": null, "name": "תל אביב יפו" }, "neighborhood": { "id": null, "name": "פלורנטין" }, "street": "זבולון", "house_number": "20", "floor": 2, "latitude": 32.059217, "longitude": 34.772656 }, "seller_type": "private", "agency": null, "is_exclusive": null, "promotion_tier": 3, "is_sponsored": false, "tags": [ "4 כיווני אוויר", "2 מרפסות", "ממ\"ד" ], "images": [ "https://img.yad2.co.il/Pic/202608/17/2_2/o/y2_1_06909_20260817213719.jpeg", "https://img.yad2.co.il/Pic/202608/11/2_2/o/y2_1pa_010184_20260811204710.jpeg", "https://img.yad2.co.il/Pic/202608/17/2_2/o/y2_3_07110_20260817213723.jpeg" ], "video": "https://yad2.cdnwiz.com/p/102/sp/10200/playManifest/entryId/0_1gvl0tlx/format/url/protocol/http", "image_count": 6 } ], "total": 209, "total_pages": 9, "private_count": 20, "agency_count": 20, "sponsored_dropped": 4, "projects_dropped": 9, "count": 40, "page": 1, "has_more": true, "deal_type": "rent", "placeholder_price_dropped": 0, "location_resolved": { "label": "פלורנטין, תל אביב יפו", "kind": "neighborhood", "kind_label": "שכונה", "region_id": 3, "top_area_id": 2, "area_id": 1, "city_id": "5000", "neighborhood_id": "205", "street_id": null } } }
How the Yad2 API works
Yad2 is a normal ReefAPI surface — the same four rules that hold for every other engine on the key.
No OAuth app, no request signing, no per-site account. One key covers all 252 engines.
Every route is a POST with a JSON body. Parameters are validated against the published schema before anything is charged.
Credits, not seats. Failed and blocked calls are never charged, and cache hits cost nothing.
One envelope everywhere. meta carries latency_ms, record_count and the endpoint that answered.
Two-room rentals in Florentin, then the full record of one
locations finds the neighbourhood, real_estate/search narrows the market with a price that is really a price, and listing opens one ad in full.
{"query": "פלורנטין"}The Tel Aviv neighbourhood and the streets of the same name elsewhere, each with its ids.
{"deal_type": "rent", "location": "פלורנטין", "rooms_min": 2, "rooms_max": 2, "price_max": 9000}Monthly rent, size, floor, street and coordinates on every row; ads without a real price are left out and counted. Take listings[].ad_id.
{"ad_id": "<ad_id from step 2>"}Amenities such as a safe room, elevator and parking, entry date, building floors, distance to a shelter, and the agency's name and licence number when an agency lists it.
A filtered view of one neighbourhood's rental market with every price labelled for what it is.
curl -X POST https://api.reefapi.com/yad2/v1/real_estate/search \
-H "x-api-key: $REEF_KEY" \
-H "content-type: application/json" \
-d '{"deal_type":"rent","region":3}'{
"ok": true,
"data": { … },
"meta": {
"api": "yad2",
"endpoint": "real_estate/search",
"mode": "live",
"latency_ms": …,
"record_count": …
},
"error": null
}Five Yad2 prices that are not simply a price
A Yad2 ad can show a price of 1 shekel, no price at all but monthly payments, a rent that is really a placeholder, or a price that has already been cut. Each looks like an ordinary number. This engine labels every one.
| Listing (section) | price | flag | the catch |
|---|---|---|---|
| Toyota Yaris Cross 2026, dealer car | null | price_placeholder: true, price_published_raw: 1 | Dealers publish 1 shekel to mean 'call us'; anything under 100 shekels is never returned as a price |
| Toyota RAV4 2026, dealer car | null | price_not_published: true + payment_installments | No price, only monthly payments - and Yad2's own 'with price' filter still lets it through; this engine does not |
| Warehouse, 1,150 m², Tel Aviv, commercial rent | null | price_placeholder: true, price_published_raw: 45 | 45 shekels a month for 1,150 m² is not a rent; the number is kept in price_published_raw |
| Apartment, 4.5 rooms, agency sale | 4250000 | price_before_drop: 4500000 | The earlier price is its own field and never replaces the price |
| Jerusalem rental, 5 rooms | 15400 | price_period: month, price_before_drop: 16500 | Rents are monthly; this one was cut from 16,500 and is paid 13 times a year |
Measured on 2026-09-16. Yad2's own price filter keeps ads without a price: a furniture search up to 500 shekels returned 10 unpriced ads in 36. With a price filter, this engine removes them and says how many it removed. Classified ads come and go - the rows above are dated.
What was checked, and what Yad2 leaves out
Measured on 2026-09-16: 112 live calls across the five actions with no failure, 113 controlled checks including every filter, and 20 listings compared with Yad2's own second listing record. Four of these lines go against us.
Vehicles (cars, motorcycles, scooters, trucks, watercraft), property for sale, rent and commercial use, and the second-hand products section. Israel only, Hebrew text, prices in shekels.
Each filter was run against its unfiltered total in the same minute and every returned row checked: Toyota cars, 4,188, became 1,248 first-hand and 732 from 2018 to 2020; homes for sale in Tel Aviv-Yafo, 10,179, became 5,601 with 3 to 4 rooms.
On 20 listings across cars, motorcycles, trucks, homes for sale, rentals, offices, appliances and furniture, the price, city, mileage, hand, year, rooms, size, floor and listing date matched Yad2's second listing record on every one.
Missing prices, token prices such as 1 shekel, earlier prices after a drop, monthly rents and dealer payment plans each have their own field, and unpriced ads never slip into a price-filtered result.
Median across 112 calls: a vehicle search 0.7 seconds, a property search 1.4 seconds, a products search 0.7 seconds, a listing 1.3 seconds, a place-name lookup 0.9 seconds. The slowest call measured took 9.3 seconds.
A private seller's name and a broker's personal name are left out on purpose, and phone numbers are never returned. Dealers and agencies are named, with logo and licence number.
Yad2 offers dealers-only for vehicles and agencies-only for property, but no filter for private sellers. Every row says who is selling.
Vehicles are searched by make, model and specifications, second-hand products by category; property has free-text search but Yad2 applies no sort order to it.
The second-hand products section lists business sellers. Created, updated and expiry dates come with listing, not with vehicle or property search rows.
What people build with Yad2
The jobs this data is most often used for.
endpoints
credit per call
Car dealers and valuation tools track used-car prices by make, model, year, hand and mileage across Israel with cars/search, with placeholder prices and payment offers kept apart.
Property analysts follow asking prices, monthly rents and price drops by city, neighbourhood, rooms and size with real_estate/search.
Real-estate and lead-generation teams map which agencies advertise where, without collecting private owners' names.
Market researchers compare private and dealer supply, paid placement and new-project promotion across Yad2's sections.
What Yad2 data costs
The cheapest call here is 1 credit, so $15/mo (Pro) buys 10,000 of them — $1.50 per 1,000 credits. Credits roll over and never expire, and failed or blocked calls are not charged.
Full pricing →- 1,000 free credits on signup, no card
- One key, all 252 APIs, one credit pool
- Failed and blocked calls are never charged
- Credits roll over and never expire
Call it in two lines
Sign up, get 1,000 credits and one key that works on every engine. Then this is the whole protocol.
curl -X POST https://api.reefapi.com/yad2/v1/real_estate/search \
-H "x-api-key: $REEF_KEY" \
-H "content-type: application/json" \
-d '{"deal_type":"rent","region":3}'import requests
r = requests.post(
"https://api.reefapi.com/yad2/v1/real_estate/search",
headers={"x-api-key": REEF_KEY},
json={
"deal_type": "rent",
"region": 3
},
)
print(r.json()["data"])Have a question? We got answers.
The questions people actually ask before wiring up Yad2.
Get a free key →Which parts of Yad2 does the API cover?▾
Vehicles - cars, motorcycles, scooters, trucks and watercraft - with cars/search; property for sale, for rent and commercial property with real_estate/search; and Yad2's second-hand products section with products/search. listing returns the full record of an ad from any of them, and locations turns a Hebrew place name into the region, city, neighbourhood and street ids the searches accept. On 2026-09-16 Yad2 listed 60,147 cars, 8,868 rentals in the Tel Aviv region and 10,179 homes for sale in Tel Aviv-Yafo. Yad2 is Israeli only; text is in Hebrew and prices are in shekels (ILS).
Is a private seller's name or phone number included?▾
No. A private seller's name is withheld, and so is the personal name of an agency's broker; phone numbers are never returned. The listing still says whether the seller is private, a dealer or an agency. A dealer's or agency's name, logo and licence number are returned. The address and map position of a property are returned because Yad2 publishes them on every property ad.
How do I tell a missing price, a placeholder price and a price drop apart?▾
By the fields on every row. No price published: price null and price_not_published true. A token price such as 1 shekel, or anything under 100 shekels: price null, price_placeholder true, and the number in price_published_raw. A price that was cut: price is the current price and price_before_drop the earlier one. Rents carry price_period month. Monthly-payment offers on dealer cars come separately as payment_installments.
Are paid placements marked?▾
Yes. Property searches carry three paid 'platinum' ads per page on Yad2; they are left out of the results by default and counted in sponsored_dropped, and include_sponsored returns them separately. New-project promotions are counted in projects_dropped. Vehicle results keep Yad2's own order, which puts paid tiers first, and every row carries promotion_tier - on 2026-09-16 the first page of Toyota ads was all dealers, with private sellers starting deeper in the list.
Do the filters really narrow the results?▾
Each one was checked live on 2026-09-16: the filtered total had to be smaller than the unfiltered one, and every returned row had to match where the row shows the value. Toyota cars (4,188): 2018 to 2020 732, 50,000 to 90,000 shekels 1,065, first hand 1,248, manual 96, electric 19. Homes for sale in Tel Aviv-Yafo (10,179): 3 to 4 rooms 5,601, 2 to 3 million shekels 1,360, floors 5 to 10 2,346. Rentals in the Tel Aviv region (8,868): agencies 5,361, price dropped 1,256. A filter Yad2 does not offer for a vehicle type - a make filter for trucks, mileage for boats - is rejected with an error instead of being silently ignored.
Can I search by city or neighbourhood name?▾
Yes. real_estate/search accepts a Hebrew place name as location - a city, neighbourhood, area or street - and resolves it with Yad2's own address search; the match used comes back as location_resolved. The locations action lists every match with its ids. Florentin resolved to the Tel Aviv neighbourhood and returned its 250 rentals; Haifa returned 4,496 homes for sale.
Can I look up an ad by its URL?▾
listing accepts the Yad2 ad id (the token at the end of the URL) or the full vehicle or property URL. Every search row carries its ad id. An ad that has been removed returns NOT_FOUND.
What does Yad2 not publish?▾
A private-sellers-only filter - vehicles can be limited to dealers and property to agencies, and every row says who is selling. A keyword search for vehicles or second-hand products (property has one). Sorting for property searches. Dates on search rows - listing carries created, updated, re-promoted and expiry dates. Fuel and gearbox for motorcycles, and rooms for most commercial property. The second-hand products section is made up of business sellers.
What is the Yad2 API?▾
Yad2 API is a ReefAPI endpoint group for israel's #1 classifieds: cars, real estate and second-hand listings as json. It returns live JSON through POST requests under /yad2/v1.
Is the Yad2 API free to try?▾
Yes. ReefAPI starts with 1,000 free credits, no card required. Yad2 calls use the same shared credit balance as every other ReefAPI engine.
Do I need a Yad2 login or account?▾
No login to Yad2 is needed for the API response. You call ReefAPI with your x-api-key header, and the playground can run live examples before you create a production key.
How fresh is the Yad2 data?▾
The page example is captured from a live cars/search call, and production requests fetch live data through ReefAPI rather than a static sample.
How many credits does the Yad2 API use?▾
Yad2 actions currently cost 1 credit per successful call. Failed or blocked calls are free, and all APIs draw from one credit pool.
Can I call Yad2 from an AI assistant or MCP client?▾
Yes. Connect ReefAPI once through MCP and your assistant can call yad2 actions with the same key, credit pool and JSON envelope used by normal REST requests.
16 Classifieds & Second-hand APIs on the same key
One key, one credit pool, one response envelope. If you are pulling Yad2, you are one call away from the rest of the category — no second contract, no second integration.
Need something this API does not do?
Name the endpoint, the field, or a source we do not carry yet. We ship new APIs every week and you would be first to get the key. Real people read every message and reply the same day.
Try it on your own data before you pay anything
The call above is the real endpoint, not a recording. A free key gives you 1,000 credits, the other 251 APIs, and the same envelope everywhere.
Endpoints, parameters and credit costs on this page are read from the live catalog and cannot drift from what the API accepts. Field notes were captured on 2026-09-16.