Search projects (GET /projects) — Kite API
KitePlatform
Use casesDocsGuidesPricing
Browse endpoints
All endpoints

Reference data

  • List cities
  • List neighborhoods
  • List city directions
  • List enumerated values
  • Get this key's limits
  • What the API covers

Listings

  • Search listings
  • Count listings
  • Get listings by id
  • Get a listing
  • Get a listing's price history

Market data

  • Market summary
  • Price distribution
  • Area distribution
  • New supply
  • Vacancy indicator
  • Prices by neighborhood
  • Commercial rent per m² by neighborhood

Official data

  • Registered rents (REGA)
  • Kite Property Index

Analytics

  • Get comparable listings
  • Get a listing's market position
  • Get a listing's nearby asking-price band
  • Find below-market listings
  • Find below-market listings (old path)
  • Get gross rental yield
  • Get price trends
  • Compare neighborhoods

Registered transactions

  • Search registered deals
  • Registered deal statistics
  • Land prices per m²

Off-plan projects

  • Search projects
  • Get a project
  • List a project's units
  • Search project units
  • List developers

Exports

  • Create an export
  • List exports
  • Get an export

Administration

  • Get your organization
  • List data keys
  • Create a data key
  • Revoke a key
  • List projects
  • Daily usage
  • List members and invitations
  • List audit events
  • List request logs
  • Create a webhook endpoint
  • List webhook endpoints
  • Delete a webhook endpoint
  • List deliveries
  • Replay a delivery

Interactive reference

All endpoints

Reference data

  • List cities
  • List neighborhoods
  • List city directions
  • List enumerated values
  • Get this key's limits
  • What the API covers

Listings

  • Search listings
  • Count listings
  • Get listings by id
  • Get a listing
  • Get a listing's price history

Market data

  • Market summary
  • Price distribution
  • Area distribution
  • New supply
  • Vacancy indicator
  • Prices by neighborhood

Off-plan projects

Search projects

GET/projects

Off-plan and newly built residential and commercial projects from Saudi developers and portals, one entry per project (copies from several sources are merged). Prices are developer-advertised purchase prices in SAR. Paginate with cursor.

Authentication
Send a data key (dk_live_… or dk_test_…) as a Bearer token.
Scope
projects
Cost
NaN units per call

Parameters

NameTypeDescription
cityquerystring

Omit for all cities.

neighborhood_idqueryinteger[]

Neighborhood ids from GET /cities/{city}/neighborhoods. Only projects mapped to a neighborhood match.

developerquerystring

Exact developer name, as returned by GET /developers.

statusquerystring[]

One or more, comma-separated.

Kite API

Saudi real estate data for developers.

Product
  • API reference
  • Data coverage
  • Pricing
  • Valuation checks
  • Changelog
  • Status
Company
  • kite.sa
  • Contact
  • Security
Legal
  • Terms
  • Subprocessors
© Kite
  • Commercial rent per m² by neighborhood
  • Official data

    • Registered rents (REGA)
    • Kite Property Index

    Analytics

    • Get comparable listings
    • Get a listing's market position
    • Get a listing's nearby asking-price band
    • Find below-market listings
    • Find below-market listings (old path)
    • Get gross rental yield
    • Get price trends
    • Compare neighborhoods

    Registered transactions

    • Search registered deals
    • Registered deal statistics
    • Land prices per m²

    Off-plan projects

    • Search projects
    • Get a project
    • List a project's units
    • Search project units
    • List developers

    Exports

    • Create an export
    • List exports
    • Get an export

    Administration

    • Get your organization
    • List data keys
    • Create a data key
    • Revoke a key
    • List projects
    • Daily usage
    • List members and invitations
    • List audit events
    • List request logs
    • Create a webhook endpoint
    • List webhook endpoints
    • Delete a webhook endpoint
    • List deliveries
    • Replay a delivery

    Interactive reference

    One of: available, coming_soon, not_started, under_construction, completed, sold_out

    project_typequerystring

    One of: off_plan, ready

    listing_categoryquerystring

    Omit for both.

    One of: residential, commercial

    featuresquerystring[]

    Only projects with all of these, see GET /enums.

    banksquerystring[]

    Only projects financed by all of these, see GET /enums.

    qquerystring

    Matches project or developer name (Arabic or English), case-insensitive.

    price_minqueryinteger

    Minimum starting price, SAR. Projects without a published price are excluded.

    price_maxqueryinteger
    sortquerystring

    updated_desc (most recently refreshed), price_asc/price_desc (by starting price, projects without one last).

    One of: updated_desc, price_asc, price_desc

    limitqueryinteger
    cursorquerystring

    Response

    The data field is a list; each item has these fields.

    NameTypeDescription
    idrequiredinteger
    urlrequiredstring | null

    The project's page on kite.sa.

    name_arrequiredstring | null
    name_enrequiredstring | null
    developerrequiredstring | null

    Developer name as published. Pass as developer to filter; see GET /developers.

    statusrequiredstring | null

    Sales/construction status. Null when the source doesn't say.

    project_typerequiredstring | null

    off_plan (sold before completion) or ready. Null when unknown.

    listing_categoryrequiredstring
    locationrequiredobject
    pricerequiredobject

    Developer-advertised purchase prices in SAR (total price, not yearly). Null when not published or implausibly low.

    area_sqmrequiredobject

    Advertised unit size range in square meters.

    advertised_unit_countrequiredinteger | null

    Total units in the project, as the developer advertises it.

    linked_unitsrequiredobject
    cover_imagerequiredstring | null

    First image on Kite's CDN, if mirrored.

    last_seen_atrequiredstring (date-time) | null

    Last time Kite refreshed the project from its source.

    Example request

    curl
    curl "https://api.kite.sa/v1/projects" \
      -H "Authorization: Bearer $KITE_API_KEY"
    JavaScript (@kite-sa/sdk)
    import { Kite } from "@kite-sa/sdk";
    
    const kite = new Kite(); // reads KITE_API_KEY
    const result = await kite.projects.search();
    Python (kite-sa)
    from kite_sa import Kite
    
    kite = Kite()  # reads KITE_API_KEY
    result = kite.projects.search()

    Open in the interactive reference

    Related endpoints

    • Get a project GET /projects/{id}
    • List a project's units GET /projects/{id}/units
    • Search project units GET /project-units
    • List developers GET /developers

    Guides

    • Quickstart
    • Searching and filtering
    • Limits and quotas
    • Pagination
    • Errors