Krisha.kz Scraper - Kazakhstan Property Listings & Prices avatar

Krisha.kz Scraper - Kazakhstan Property Listings & Prices

Pricing

from $1.32 / 1,000 property listings

Go to Apify Store
Krisha.kz Scraper - Kazakhstan Property Listings & Prices

Krisha.kz Scraper - Kazakhstan Property Listings & Prices

Krisha.kz property data: prices in tenge, rooms, area, floor, address, seller type and photos for Almaty, Astana and all Kazakhstan. JSON/CSV/Excel.

Pricing

from $1.32 / 1,000 property listings

Rating

0.0

(0)

Developer

SIÁN OÜ

SIÁN OÜ

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

11 days ago

Last modified

Share

Krisha.kz Scraper - Kazakhstan Property Listings & Prices 🚀

SIÁN Agency Store OLX Property Scraper Cian Scraper Kufar.by Scraper

🎉 Kazakhstan's largest property portal as a spreadsheet: 465,000 live krisha.kz adverts, with seller type on every row and building facts on most apartment rows

For analysts, agencies, developers and investors tracking Almaty, Astana, Shymkent and the regions

🔎 What is the Krisha.kz Scraper — and when should you use it?

The Krisha.kz Scraper turns public property adverts from krisha.kz, Kazakhstan's largest property portal into clean, structured rows you can filter, export and feed straight into a spreadsheet, database or AI agent. No account, no portal API key, no browser automation to maintain.

Use it when you need: Kazakh sale and rental adverts as rows. Each row carries the asking price or monthly rent in tenge, room count, floor area, floor and building height, plot size in sotka, city, district and street. It also names the seller type: owner, specialist, company, krisha.kz agent or developer, with the residential complex for new builds. Promotion badges, the mortgage flag, wall type, year built, ceiling height, condition and the lead photo come too. Switch on full details and each row adds GPS coordinates, the complete description, every photo, kitchen area and the date the advert was first published.

Use something else when: the property is not in Kazakhstan, or you need adverts that are only on OLX. Use OLX Property Scraper for olx.kz property adverts, mostly private sellers. Use Cian Scraper for Russia's largest property portal. Use Kufar.by Scraper for Belarus property adverts. This actor covers every property section krisha.kz publishes: apartments, houses and dachas, land plots, commercial premises, garages and parking, industrial bases, ready businesses and property abroad for sale, and apartments, houses, rooms, commercial premises, garages and industrial bases for rent. Phone numbers sit behind krisha.kz's own click-to-call and are never read. The site shows only current prices, so there is no price history, and it stops any one search at page 1,000 (about 20,000 adverts).

🤖 Use with AI agents

Already connected to the Apify MCP server? Just ask for this Actor by name: sian.agency/krisha-property-scraper

Your agent can pay for its own runs. This Actor is eligible for agentic payments, so an agent can discover it, run it and settle the bill over x402 (USDC on Base) or Skyfire — without an Apify account or API token of its own. Billing is the same either way: per successful row, never for errors.

Otherwise copy this prompt into Claude, ChatGPT, Cursor or any MCP-enabled assistant:

I want property listings and asking prices from krisha.kz using the Apify Actor `sian.agency/krisha-property-scraper`.
Use it when I need: Kazakh sale and rental adverts as rows. Each row carries the asking price or monthly rent in tenge, room count, floor area, floor and building height, plot size in sotka, city, district and street. It also names the seller type: owner, specialist, company, krisha.kz agent or developer, with the residential complex for new builds. Promotion badges, the mortgage flag, wall type, year built, ceiling height, condition and the lead photo come too. Switch on full details and each row adds GPS coordinates, the complete description, every photo, kitchen area and the date the advert was first published.
Don't use it when: the property is not in Kazakhstan, or you need adverts that are only on OLX — use olx-property-scraper or cian-property-scraper or kufar-property-scraper instead.
How to call it: set `dealType` to `sale` or `rent` and `propertyType` to one of `apartments`, `houses`, `land`, `commercial`, `garages`, `industrial`, `business`, `rooms` or `abroad`. Set `location` to `kazakhstan`, a city such as `almaty`, `astana` or `shymkent`, or a region such as `almatinskaja-oblast`. Narrow with `minPrice`/`maxPrice` in tenge, `rooms` (1-5, 5 = five or more), `minArea`/`maxArea` in m², `minPlotSotka`/`maxPlotSotka`, `ownersOnly` and `withPhotosOnly`. A filter the chosen section does not support stops the run before any advert is billed. `sortBy` takes `newest`, `cheapest` or `most-expensive`, and `maxResults` caps the rows. `includeDetails` opens each advert for GPS, the complete text and every photo, for an extra charge per advert read. To reuse a search built on the site, paste its address into `searchUrls`.
Start with this input:
{
"dealType": "sale",
"propertyType": "apartments",
"location": "almaty",
"rooms": [
"2"
],
"maxResults": 200
}
Ask me which city or region to cover, whether they want sale or rental adverts and of which property type, and whether GPS and the full description are worth the extra per-advert charge, then run the Actor and summarise the results as a table.

Things you can ask your agent for:

  • Pull two-room flats for sale in Almaty under 40 million tenge and rank the districts by median price per square metre.
  • Find owner-listed apartments for rent in Astana posted this week, with GPS points for each.
  • List the developers advertising new builds in Shymkent and the starting price of each residential complex.

Machine-readable API, MCP config and OpenAPI definition for this Actor are published at apify.com/sian.agency/krisha-property-scraper.md.

📋 Overview

Krisha.kz (крыша кз) is where Kazakhstan goes to find a flat, a house or an office. It carries about 465,000 live adverts, and 223,000 of them are apartments for sale. This Actor turns any krisha.kz search into clean rows: price in tenge, rooms, floor area, floor, district, seller type and the building facts the site prints in each description.

What you get:

  • ✅ Every section krisha.kz publishes: apartments, houses and dachas, land, commercial premises, garages, industrial bases, ready businesses and property abroad for sale, plus six sections for rent.
  • ⚡ 20 adverts per page, read straight from the search results. A 1,000-row market extract is 50 pages.
  • 🎯 Up to 39 fields per advert from the search alone, and 48 with full details switched on.
  • 💰 $1.50 per 1,000 adverts on a paid Apify plan, plus $0.005 per run start. Promoted adverts that break your price, rooms, area or plot filters are dropped before billing.
  • 💎 Building facts as columns: wall type, year built, ceiling height, condition and residential complex, split out of the description text.
  • ✨ NEW: optional full details with GPS coordinates, every photo, the first-published date and days on market.

✨ Features

  • 🏢 14 section and deal combinations: eight sale sections and six rent sections. Each row is labelled with its deal type and property type.
  • 📍 52 locations: all of Kazakhstan, 34 cities from Almaty and Astana to Baikonur, and all 17 regions.
  • 💵 Tenge prices parsed properly: the number, the text as shown, a flag for a developer's "from" price, the rent period and the price per m².
  • 👤 Seller type on every row: owner, specialist, company, krisha.kz agent or developer. New builds also carry the complex and developer name.
  • 🔥 Promotion badges: hot, raised to top, urgent, the badge text, and whether a mortgage is offered.
  • 🧱 Building facts: panel, brick or monolithic walls, year built, ceiling height, condition and residential complex.
  • 🎚️ Filters krisha.kz applies itself: price, rooms, floor area, plot size in sotka, owners only, with photos only and three sort orders.
  • 🛑 No quietly unfiltered results: if a section does not support a filter, the run stops before any charge and says why.
  • 🌐 Paste your own search: build it on krisha.kz, copy the address bar, and its filters come along.
  • 📄 Full details on demand: GPS, complete description, every photo, kitchen area and the full parameter list.

🎬 Quick Start

Pick a deal type, a property type and a location. Add filters if you want a narrower slice. Press Start, then download the rows as JSON, CSV or Excel.

curl -X POST 'https://api.apify.com/v2/acts/sian.agency~krisha-property-scraper/runs?token=YOUR_TOKEN' \
-H 'Content-Type: application/json' \
-d '{"dealType": "sale", "propertyType": "apartments", "location": "almaty", "maxResults": 100}'

🚀 Getting Started (3 Simple Steps)

Pick For sale or For rent, then a property type such as Apartments, Houses and dachas or Commercial premises.

Step 2: Choose where

Pick a city, a region or all of Kazakhstan, and set how many adverts you want.

Step 3: Press Start

Filters are optional. The default run returns 100 Almaty apartments for sale, newest first (25 on a free Apify plan).

A default run takes about 15 seconds and gives you:

  • A table of adverts with price in tenge, rooms, floor area, floor and district
  • The seller type on every row, with the complex and developer for new builds
  • Building age, wall type and condition, ready to group and chart
  • A run report with the totals and exactly what you paid

📥 Input Configuration

FieldTypeRequiredDescription
operationstringNosearch (Property Listings). The only operation, and the default.
dealTypestringNosale or rent. Default sale.
propertyTypestringNoapartments, houses, land, commercial, garages, industrial, business, rooms or abroad. Default apartments.
locationstringNokazakhstan, a city such as almaty, astana or shymkent, or a region such as almatinskaja-oblast. Default almaty.
maxResultsintegerNoStop after this many adverts, 1 to 20,000. Default 100.
minPrice / maxPriceintegerNoPrice range in tenge. For rentals this is the monthly rent. Not available for property abroad.
roomsarrayNoRoom counts "1" to "5" (5 means five or more). Apartments and houses.
minArea / maxAreaintegerNoFloor area in m². Apartments, houses, rooms, commercial premises and businesses.
minPlotSotka / maxPlotSotkaintegerNoPlot size in sotka (1 sotka = 100 m²). Houses, land and industrial bases.
ownersOnlybooleanNoKeep only adverts posted by the owner.
withPhotosOnlybooleanNoSkip adverts without photos.
sortBystringNonewest, cheapest or most-expensive. Default newest.
includeDetailsbooleanNoOpen each advert's page for GPS, full text, all photos and every parameter. Billed per advert read.
searchUrlsarrayNokrisha.kz search addresses to use instead of the form.

Land plots, ready businesses and property abroad are sale-only, and rooms are rent-only. If you pick a pair krisha.kz does not publish, the run stops before any advert is billed (only the run-start fee applies).

Example: two- and three-room flats in Astana between 20 and 40 million tenge, owners only:

{
"dealType": "sale",
"propertyType": "apartments",
"location": "astana",
"minPrice": 20000000,
"maxPrice": 40000000,
"rooms": ["2", "3"],
"ownersOnly": true,
"sortBy": "cheapest",
"maxResults": 500
}

Example: reuse searches you built on krisha.kz:

{
"searchUrls": [
{ "url": "https://krisha.kz/prodazha/kvartiry/almaty/?das[live.rooms]=2" },
{ "url": "https://krisha.kz/arenda/kvartiry/astana/" }
],
"maxResults": 1000
}

maxResults is one budget for the whole run: the URLs are read in order, so a big first search can use it all before the second one starts.


📤 Output

Every advert is one flat row with up to 48 fields. Fields the advert does not have are left out of the row instead of being filled with nulls. Export as JSON, CSV, Excel or XML, or read the rows through the API.

FieldTypeDescription
listingIdintegerkrisha.kz advert ID
urlstringLink to the advert
propertyTitlestringThe title line krisha.kz builds: rooms, area and floor
pricenumberAsking price, or the rent for rentals, in tenge
priceTextstringThe price exactly as the site shows it
priceIsFrombooleanTrue for a developer's "from" starting price
pricePeriodstringmonth, day or hour for rentals, total for a commercial whole-unit price, empty for a plain sale price
pricePerSqmnumberPrice per m² in tenge: the figure krisha.kz prints (for commercial rents, the monthly rent per m²), otherwise price ÷ area for a single sale price; empty for "from" prices and flat rents
rooms / areaSqm / plotSotkanumberRoom count, floor area in m², plot size in sotka
floor / floorsTotalintegerFloor, and the number of floors in the building
city / district / addressstringCity, district and street as published
buildingTypestringpanel, brick, monolithic, other or a rarer wall type
yearBuilt / ceilingHeightM / conditionmixedYear built, ceiling height in metres, condition as written
residentialComplex / developer / complexUrlstringNew-build complex, its developer and its krisha.kz page
sellerType / sellerLabelstringowner, specialist, company, krisha-agent or developer, plus the site's own label
isHot / isTop / isUrgent / badgeTextmixedPromotion flags and the badge text
mortgageAvailablebooleanThe advert offers a mortgage
photoUrl / photoCountmixedLead photo and number of photos
postedDatestringDate posted, or last raised to the top
dealType / propertyType / searchUrlstringWhich search produced the row

Added by full details (includeDetails): latitude, longitude, fullDescription, photoUrls, kitchenAreaSqm and detailParameters, which holds every parameter krisha.kz lists. You also get createdDate (first published), daysOnMarket and detailStatus, which reads ok, removed or unavailable.

Example row (Almaty apartment for sale):

{
"listingId": 1014118238,
"url": "https://krisha.kz/a/show/1014118238",
"propertyTitle": "3-комнатная квартира · 80.9 м² · 9/9 этаж",
"propertyKind": "3-комнатная квартира",
"rooms": 3,
"areaSqm": 80.9,
"floor": 9,
"floorsTotal": 9,
"price": 51000000,
"priceText": "51 000 000 ₸",
"priceIsFrom": false,
"pricePerSqm": 630408,
"currency": "KZT",
"city": "Алматы",
"district": "Ауэзовский р-н",
"address": "мкр Аксай-2 — Елемесова",
"descriptionPreview": "панельный дом, 1984 г.п., состояние: требует ремонта, потолки 2м., санузел раздельный, …",
"buildingType": "panel",
"yearBuilt": 1984,
"ceilingHeightM": 2,
"condition": "требует ремонта",
"sellerType": "krisha-agent",
"sellerLabel": "Крыша Агент",
"isHot": true,
"isTop": true,
"isUrgent": false,
"mortgageAvailable": false,
"photoUrl": "https://krisha-photos.kcdn.online/webp/7d/7d8bc43d-248e-45e9-8691-d95cb986caf1/51-full.jpg",
"photoCount": 25,
"postedDate": "2026-09-27",
"dealType": "sale",
"propertyType": "apartments",
"searchUrl": "https://krisha.kz/prodazha/kvartiry/almaty/",
"status": "success"
}

Full-details fields for another Almaty flat (advert 1015089009):

{
"latitude": 43.234608,
"longitude": 76.82925,
"kitchenAreaSqm": 11.5,
"createdDate": "2026-08-24",
"daysOnMarket": 34,
"detailParameters": {
"flat.building": "панельный",
"house.year": "1989",
"flat.toilet": "2 с/у и более",
"flat.flooring": "ламинат",
"ceiling": "2.8 м"
},
"detailStatus": "ok"
}

Each run also saves a report (report.html) next to the dataset. It shows the totals, any search that returned nothing, and an itemised statement of what the run cost.


💼 Use Cases & Examples

1. Almaty and Astana Price Tracking

Property analysts watching asking prices move, district by district.

Input: Apartments for sale in Almaty, two rooms, newest first, scheduled weekly Output: Price, price per m², district and building age for each new advert Use: Chart the median price per square metre by district without cleaning a single cell

2. Rental Yield Research

Investors working out where a flat pays for itself.

Input: The same city run twice, once for sale and once for rent Output: Asking prices and monthly rents with rooms, area and district Use: Compare gross yield by room count across Almaty, Astana or Shymkent

3. Agency and Developer Lead Lists

Proptech and mortgage sales teams building a prospect list.

Input: Any city and section, all sellers Output: The seller type on every row, with the developer and complex for new builds Use: Group developer rows by complex to see who is building where, or keep the owner rows for private sellers

4. New-Build Market Monitoring

Developers and their marketing agencies keeping an eye on the competition.

Input: Apartments or houses for sale in a city, newest first Output: Complex name, its krisha.kz page, the developer and the "from" price Use: Track which complexes are advertising and how their entry price shifts over the season

5. Commercial and Land Deal Sourcing

Brokers and buyers shortlisting sites before the first phone call.

Input: Commercial premises with a floor-area range, or land with a plot range in sotka Output: Total price, price per m², plot size, district and address Use: Build a shortlist across a whole region in one run

6. Owner-Direct Acquisition

Buy-to-let investors who want to reach private sellers first.

Input: ownersOnly switched on, a price ceiling and a room count Output: Owner-posted adverts only, with the posted date Use: Run it every morning and call the newest owners before an agency signs them

7. Housing Market Research and Journalism

Researchers and data journalists who need a dated snapshot of supply.

Input: One section across all of Kazakhstan, split by region Output: A repeatable table of adverts with building age, wall type and condition Use: Compare Soviet-era panel stock with new monolithic builds, city by city


🔗 Integration Examples

JavaScript/Node.js

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_TOKEN' });
const run = await client.actor('sian.agency/krisha-property-scraper').call({
dealType: 'sale',
propertyType: 'apartments',
location: 'almaty',
rooms: ['2'],
maxResults: 100,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items[0].propertyTitle, items[0].price, items[0].district);

Python

from apify_client import ApifyClient
client = ApifyClient('YOUR_TOKEN')
run = client.actor('sian.agency/krisha-property-scraper').call(
run_input={
'dealType': 'rent',
'propertyType': 'apartments',
'location': 'astana',
'maxResults': 200,
}
)
for item in client.dataset(run['defaultDatasetId']).iterate_items():
print(item['propertyTitle'], item.get('price'), item.get('pricePeriod'))

cURL

curl -X POST 'https://api.apify.com/v2/acts/sian.agency~krisha-property-scraper/runs?token=YOUR_TOKEN' \
-H 'Content-Type: application/json' \
-d '{"dealType": "sale", "propertyType": "commercial", "location": "almaty", "minArea": 40, "includeDetails": true, "maxResults": 50}'

Automation Workflows (N8N / Zapier / Make)

  1. Trigger: A schedule, for example every morning at 08:00 Almaty time
  2. HTTP Request: Call this Actor's API with your saved input, sorted newest first
  3. Process: Drop the listingId values you already have
  4. Action: Append the new adverts to Google Sheets or a database, or post them to Slack or email

📊 Performance & Pricing

FREE Tier (Try It Now)

  • 25 adverts per run, with every field and every filter
  • No credit card required
  • Enough to check the columns against your own spreadsheet before you commit
  • Up to 20,000 adverts per run, from one search or several pasted ones
  • 20 adverts per page, so a 1,000-row extract finishes in a minute or two
  • Pay per event: no advert charge for an empty search or a failed row
EventStarter planFree plan
Run start$0.005$0.02
Property listing (per 1,000)$1.50$6.00
Full details, optional (per 1,000)$5.00$20.00

Higher Apify plans pay less, down to $1.17 per 1,000 listings and $3.90 per 1,000 details. Full details are billed only when the advert page was actually read.

💰 $1.50 per 1,000 krisha.kz adverts, and seller type, promotion badges and building facts are included at that price.

🔗 View current pricing


❓ Frequently Asked Questions (FAQ)

Q: Do I need a krisha.kz account or any setup? A: No. Pick a deal type, a property type and a location and press Start. The listing rows need nothing else.

Q: Which cities and regions can I search? A: All of Kazakhstan, 34 cities from Almaty, Astana and Shymkent down to Baikonur and Kulsary, and all 17 regions. A region includes every town in it.

Q: How many adverts can one run return? A: krisha.kz shows at most 1,000 pages of 20 per search, so one search reaches about 20,000 adverts. Almaty apartments for sale alone hold about 42,600. Split a market that size by price range or rooms and run it in parts.

Q: What do full details add? A: GPS coordinates, the complete description, every photo, kitchen area, the date the advert was first published, days on market and krisha.kz's full parameter list. The Actor opens one extra page per advert and bills a Listing Details event only when that page was read.

Q: Can I get the seller's phone number? A: No. krisha.kz hides numbers behind its own click-to-call, and this Actor never reads them. You get the seller type and, for developers, the company name.

Q: Is there a price history? A: krisha.kz shows the current price only. Schedule the same search daily or weekly and you build the history yourself, keyed on listingId.

Q: Are prices in tenge? A: Yes. Every row carries the number, the text as the site shows it, and whether it is a starting price, a monthly rent or a total.

Q: What does the posted date mean? A: postedDate is the day the advert was posted or last paid to be raised to the top. The real first-publication date comes with full details, as createdDate.

Q: Can I reuse a search I built on the site? A: Yes. Paste the address from your browser into Search URLs and its filters are kept, including ones the form does not offer. Tracking tags and a few keys krisha.kz asks automated visitors to avoid (such as raion and sub_cat) are dropped, and the run log names them.

Q: What output formats are available? A: JSON, CSV, Excel, XML and HTML, straight from the Apify dataset or through the API.


🐛 Troubleshooting

The run stopped before any charge with a filter message

  • That filter does not exist for the section on krisha.kz. Rooms work for apartments and houses only, and plot size for houses, land and industrial bases.
  • Clear the filter or pick another property type. No advert was billed; only the run-start fee applies.

The run returned fewer adverts than Max results

  • On a free Apify plan every run stops at 25 adverts, and there is a daily run allowance that resets at 00:00 UTC.
  • The search may simply have fewer matches. The log prints the total krisha.kz reports on page 1.

Some rows show detailStatus: unavailable

  • That advert page could not be read during the run. The listing row is still delivered, with no detail charge.
  • If many advert pages in a row cannot be read, the run switches full details off, keeps delivering listings and stops billing details.

A row shows detailStatus: removed

  • The advert was taken down between the search and the detail read. Popular Almaty flats can go within hours.

A search URL was skipped


Our actors are ethical and do not extract any private user data, such as email addresses, phone numbers or personal contact details. They only extract what the user has chosen to share publicly. We therefore believe that our actors, when used for ethical purposes by Apify users, are safe.

However, you should be aware that your results could contain personal data. Personal data is protected by the GDPR in the European Union and by other regulations around the world. You should not scrape personal data unless you have a legitimate reason to do so. If you're unsure whether your reason is legitimate, consult your lawyers.

You can also read Apify's blog post on the legality of web scraping.

Krisha.kz is a trademark of its owner. This actor is not affiliated with, endorsed by, or sponsored by Krisha.kz or Kolesa Group.


🤝 Support

Support


Built by SIÁN Agency | More Tools