Get listings by id
GET/listings/batch
Up to 100 listings in one call, in the order requested. Ids that are no longer active (sold, rented, removed, or merged as a duplicate) come back in missing_ids.
- Authentication
- Send a data key (dk_live_… or dk_test_…) as a Bearer token.
- Scope
listings- Cost
- NaN units per call
Parameters
| Name | Type | Description |
|---|---|---|
idsrequiredquery | integer[] | Comma-separated listing ids. |
Response
The data field is a list; each item has these fields.
| Name | Type | Description |
|---|---|---|
idrequired | integer | |
urlrequired | string | The listing's page on kite.sa. |
titlerequired | string | null | The advertiser's title, as posted. Null for sources that don't have titles (for example Aqar); use |
headlinerequired | string | A short English description built from the listing's fields. Always present. |
descriptionrequired | string | null | As posted (usually Arabic). |
description_enrequired | string | null | English translation, where available. |
listing_typerequired | string | |
listing_categoryrequired | string | null | |
property_typerequired | string | |
pricerequired | object | |
financingrequired | object | |
bedroomsrequired | integer | null | |
bathroomsrequired | integer | null | |
livingsrequired | integer | null | Living rooms. |
area_sqmrequired | number | null | |
floorrequired | string | null | |
age_yearsrequired | integer | null | |
furnishedrequired | boolean | null | |
amenitiesrequired | string[] | |
locationrequired | object | |
compound_namerequired | string | null | |
project_idrequired | integer | null | Off-plan project this unit belongs to, if linked. |
imagesrequired | string[] | Image URLs on Kite's CDN. |
image_countrequired | integer | |
advertiserrequired | object | |
verified_by_sourcerequired | boolean | null | The source marks this ad as verified. |
sourcerequired | object | |
also_listed_onrequired | string[] | Other sources carrying the same property. Kite shows one listing per property. |
first_seen_atrequired | string (date-time) | null | When Kite first saw the listing. |
updated_atrequired | string (date-time) | null | Last update at the source, or the last time Kite saw the listing if the source doesn't publish update times. Drives |
last_seen_atrequired | string (date-time) | null | Last time Kite confirmed the listing is live. |
days_on_marketrequired | integer | null |
Example request
curl "https://api.kite.sa/v1/listings/batch?ids=128647%2C128650" \
-H "Authorization: Bearer $KITE_API_KEY"import { Kite } from "@kite-sa/sdk";
const kite = new Kite(); // reads KITE_API_KEY
const result = await kite.listings.batch({ ids: [128647,128650] });from kite_sa import Kite
kite = Kite() # reads KITE_API_KEY
result = kite.listings.batch(ids=[128647,128650])Open in the interactive reference
Related endpoints
- Search listings
GET /listings - Count listings
GET /listings/count - Get a listing
GET /listings/{id} - Get a listing's price history
GET /listings/{id}/price-history