EmlakIQ Data API
Turn scattered property records into production-ready JSON output.
The Data API normalizes local address text, coordinates, parcel information, zoning records, building data, market activity and macro credit indicators through a single data gateway. Your product receives clean, versioned, sourced payloads with confidence levels.
Unified data gateway
Local data chaos, reduced to a single API contract.
In Turkey, the same property fragments across address text, parcel ID, local coordinates, municipal zoning records, building data, sales activity and periodic credit indicators. EmlakIQ Data API resolves, cleans and matches these records, then returns them to your application with field-level source and confidence information.
Endpoint family
Resolve, enrich, query, monitor.
| Endpoint | Purpose | Returns |
|---|---|---|
POST /v1/resolve | Resolve address, coordinate, parcel or internal ID | emlakiq_id, coverage, confidence, unresolved reasoning |
POST /v1/enrich | Add context to a resolved property | zoning, risk, market, macro, physical context |
GET /v1/property/{id} | Canonical property object | Stable property profile |
GET /v1/property/{id}/zoning | Zoning context | Function, density, height, source |
GET /v1/property/{id}/risk | Risk context | Seismic/geological context, confidence, limitations |
GET /v1/property/{id}/market-context | Market activity | Level, period, activity metrics, source |
POST /v1/dossier | Evidence artifact generation | Dossier JSON, snapshot ID, render model |
POST /v1/batch-audit | Inventory record audit | Resolution rate, anomalies, missing fields |
GET /v1/coverage | Supported field verification | Geographic support and source readiness status |
GET /v1/changes | Change monitoring | Zoning/source/profile change events |
Payload example
Request / response contract.
Request
{
"input": {
"address": "Caferağa Mah. ... Kadıköy / İstanbul",
"parcel": "...",
"client_reference": "crm_8411"
},
"requested_outputs": [
"identity", "zoning",
"risk", "market_context"
]
} Response
{
"emlakiq_id": "tr_34_kadikoy_...",
"client_reference": "crm_8411",
"resolved_scope": "building",
"identity_status": "bounded_match",
"confidence": {
"score": 0.86,
"code": "bounded"
},
"zoning": {
"status": "known",
"coverage": "supported",
"source_freshness": "2026-06-20"
},
"risk_context": {
"status": "available",
"method": "geospatial_join",
"limitations": [
"not_structural_engineering_certificate"
]
},
"market_context": {
"grain": "district_month",
"period": "2026-04"
},
"missing_fields": ["energy_class"],
"provenance_refs": ["manifest:..."],
"snapshot_id": "dos_2026_..."
} API guarantees
We don't present data as more certain than it is.
Every field returns with its coverage, source, confidence and support status. Missing or unsupported fields aren't hidden — they're explicitly flagged.
Security and data rights
Data rights boundary and security approach.
No source resale
Raw source data (TKGM, municipality, BDDK, TÜİK) is never passed directly to the customer. Output always goes through the EmlakIQ normalization and coverage layer.
Data rights tagging
Every field is tagged with a `data_rights` attribute where licensing restrictions apply. The output contract carries these tags in the API response.
Mandatory coverage check
Before production integration, supported geography and field readiness must be checked via `GET /v1/coverage`.
Deprecation policy
Endpoints or fields are never removed without at least 90 days' notice. Versioned API paths are isolated from breaking changes.
Masked test environment
Sandbox responses never contain real property data. All sandbox identity and address data is synthetic or public-domain.
Access control
API-key based authentication. Institutional integrations have access to IP allowlisting and role-based access control mechanisms.
API Sandbox and Documentation
Test with one record. Prove it with 100.
Try it in the sandbox
Enter an address or a sample record. See the JSON payload output. Base your integration decision on real data, not a demo.
Request Sandbox AccessProve it with 100 records
Submit 100 masked records from your real inventory. Get back a resolution rate, missing fields and an anomaly report.
Explore EmlakIQ 100Move to a production pilot
Once you have technical proof, start a pilot conversation for full production integration.
Start a Pilot Conversation// Select a sample and click Run. Sample files