Small API.
Big possibilities.
Everything you need to make property search feel natural. Live Queryfill inference supports an initial UAE schema in English and Arabic.
Make your first request
Send a property search sentence. Get structured filters and any parts that need clarification.
curl https://nabdaq.dev/api/v1/parse \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"query":"Furnished 2-bed in Dubai Marina under AED 150k/year","locale":"en"}'Your key, your usage
Include your key as a Bearer token in the Authorization header. Get a free key with your name, email and domain. Confirm your email to receive the key automatically.
Use HTTPS. Never place your key in browser code, URL parameters, or a public repository.
What comes back
Every response includes a request ID, schema version, status, filter array and unresolved items. A partial result means some requirements still need attention.
{
"request_id": "req_...",
"status": "resolved",
"schema_version": "1",
"mode": "live",
"filters": [
{
"field": "purpose",
"operator": "eq",
"value": "rent"
},
{
"field": "location",
"operator": "eq",
"value": "dubai_marina"
}
],
"unresolved": []
}Use the exact values
The API returns stable field/value pairs such as location=dubai_marina and property_type=apartment. Use them to map a parsed request to your own inventory. Names and aliases below help people write natural-language queries; send sentences to the parse endpoint, not these IDs as a replacement for a sentence.
UAE places
The 22 curated locations resolve directly. Queryfill can also return a GeoNames ID when the sentence names an imported place exactly and gives its matching emirate, such as Abu Al Abyad Island, Abu Dhabi. Ambiguous, mismatched, and unqualified imported names stay unresolved. Projects, buildings, and developers are not published yet.
location=dubailocation=dubai_marinalocation=jvclocation=jltlocation=downtown_dubailocation=business_baylocation=palm_jumeirahlocation=dubai_hillslocation=dubai_creek_harbourlocation=arabian_rancheslocation=jumeirahlocation=al_barshalocation=dubai_southlocation=abu_dhabilocation=al_reem_islandlocation=yas_islandlocation=saadiyat_islandlocation=sharjahlocation=ajmanlocation=ras_al_khaimahlocation=fujairahlocation=umm_al_quwainThese place names come from a GeoNames UAE snapshot under CC BY 4.0, with Nabdaq’s curated additions. Points are approximate gazetteer data, not property boundaries or listing availability.
Published schema values
Browse property types, rent periods, furnishing, views, ownership, and analytics values. Analytics-only fields are labeled separately.
purposeSearch + analyticsbuyrentproperty_categorySearch + analyticsresidentialcommercialindustriallandproperty_typeSearch + analyticsapartmentvillatownhousepenthouseduplexstudiohotel_apartmentofficeshopwarehouseplotrent_periodSearch + analyticsyearmonthweekdayfurnishingSearch + analyticsfurnishedunfurnishedpartly_furnishedcompletion_statusSearch + analyticsreadyoff_planunder_constructiontenureSearch + analyticsfreeholdleaseholdproperty_conditionSearch + analyticsnewrenovatedneeds_renovationpayment_methodSearch + analyticscashmortgageinstallmentsviewSearch + analyticsseaparkcitygolflocationAnalytics onlydubaidubai_marinajvcjltdowntown_dubaibusiness_baypalm_jumeirahdubai_hillsdubai_creek_harbourarabian_ranchesjumeirahal_barshadubai_southabu_dhabial_reem_islandyas_islandsaadiyat_islandsharjahajmanras_al_khaimahfujairahumm_al_quwainanalysis_metricAnalytics onlysale_priceannual_rentrental_yieldtransaction_countaggregationAnalytics onlyaveragemediancountyearAnalytics only202220232024202520262027Fetch the complete versioned reference with GET /api/entities?kind=values. Paginate place names with GET /api/entities?status=source_only&limit=30&offset=0; search using q and filter by emirate.
What amenities can I ask for?
Browse the UAE English and Arabic amenity vocabulary. Live filter means the current API schema can return that field. Catalog only means we document the intent but do not yet offer a dedicated filter. A returned filter describes the search request; whether a listing has that field depends on your inventory.
A generic pool filter does not promise a private pool. The same applies to garden access. If a request adds an unsupported qualifier, the response keeps that part unresolved.
poolPools and waterpool.privatePools and waterpool.sharedPools and waterpool.childrenPools and waterpool.indoorPools and waterpool.rooftopPools and waterpool.temperature_controlledPools and waterpool.infinityPools and waterjacuzziPools and waterbeach.accessPools and waterbeach.privatePools and waterwaterfrontPools and watergymFitness and wellnessgym.privateFitness and wellnesssaunaFitness and wellnesssteam_roomFitness and wellnessspaFitness and wellnesswellness.yogaFitness and wellnesscommunity.walking_tracksFitness and wellnesscommunity.cycling_tracksFitness and wellnesssports.tennisFitness and wellnesssports.padelFitness and wellnesssports.basketballFitness and wellnesssports.squashFitness and wellnesssports.golfFitness and wellnessbalconyOutdoor spacegardenOutdoor spacegarden.privateOutdoor spacegarden.landscapedOutdoor spaceterraceOutdoor spacecourtyardOutdoor spacerooftop.privateOutdoor spaceoutdoor.barbecueOutdoor spaceoutdoor.kitchenOutdoor spacecommunity.parkOutdoor spacecommunity.playgroundFamily and communitycommunity.nurseryFamily and communitycommunity.clubhouseFamily and communitycommunity.hallFamily and communitycommunity.gatedFamily and communitycommunity.groceryFamily and communitycommunity.pharmacyFamily and communitycommunity.cafeFamily and communitycommunity.prayer_roomFamily and communitycommunity.coworkingFamily and communitymaid_roomRooms and interiorsstudyRooms and interiorsstorage_roomRooms and interiorsinterior.laundry_roomRooms and interiorsinterior.walk_in_closetRooms and interiorsinterior.built_in_wardrobesRooms and interiorsinterior.fitted_kitchenRooms and interiorsinterior.kitchen_appliancesRooms and interiorswindows.double_glazedRooms and interiorswindows.floor_to_ceilingRooms and interiorsparking_spacesParking and transportparking.coveredParking and transportparking.private_garageParking and transportparking.visitorParking and transportparking.ev_chargingParking and transportparking.accessibleParking and transportparking.bicycle_storageParking and transportparking.valetParking and transporttransport.shuttleParking and transportbuilding.security_staffSecurity and building servicesbuilding.cctvSecurity and building servicesbuilding.controlled_accessSecurity and building servicesbuilding.conciergeSecurity and building servicesbuilding.lobbySecurity and building servicesbuilding.elevatorsSecurity and building servicesbuilding.service_elevatorSecurity and building servicesbuilding.maintenance_serviceSecurity and building servicesbuilding.cleaning_serviceSecurity and building servicesbuilding.waste_disposalSecurity and building serviceschiller_freeUtilities and climateutilities.central_acUtilities and climateutilities.central_heatingUtilities and climateutilities.backup_powerUtilities and climateutilities.gasUtilities and climateutilities.water_storageUtilities and climatebills_includedUtilities and climateutilities.district_coolingUtilities and climateutilities.solarUtilities and climateaccess.step_freeAccessibility and technologyaccess.wheelchairAccessibility and technologyaccess.bathroomAccessibility and technologysmart_home.featuresAccessibility and technologysmart_home.lockAccessibility and technologytechnology.intercomAccessibility and technologyinternet.readyAccessibility and technologyinternet.fiberAccessibility and technologytechnology.tvAccessibility and technologypet_friendlyLifestyle and businesscommunity.pet_parkLifestyle and businessbusiness.centerLifestyle and businessbusiness.meeting_roomLifestyle and businessbusiness.conferenceLifestyle and businesscommunity.restaurantLifestyle and businesscommunity.retailLifestyle and businessservices.hotelLifestyle and businessThe same versioned list is available as JSON at GET /api/amenities. No finite list can cover every property feature; send missing terms through the contact form.
Help people find the words
Call GET /api/v1/suggestions?query=Dubai%20Mar with your Bearer key for a short list of catalog completions. This endpoint is separate from parsing.
Generous to start
The default account allowance is 1,000 parses and 10,000 suggestions per day, resetting at 00:00 UTC. The monthly operating budget and infrastructure availability may limit available parses sooner. Admins can adjust limits per key.
Easy to recover
Errors include a stable code and a short message. A 401 means the key is missing or inactive, 422 means the input needs attention, 429 means the daily allowance is reached, and 503 means the parser or service budget is temporarily unavailable.