PropData SpainDEVELOPER DOCUMENTATION
COUNTRY = ESLAUNCH CERTIFICATION
Spain HomePricingSpain Dashboard
PROPDATA SPAIN · COMPLETE COUNTRY REFERENCE

Ship Spain without owning the Catastro plumbing.Lanza España sin mantener toda la fontanería del Catastro.

PropData Spain converts official cadastral identity, parcels, addresses, buildings, geometry, non-protected property detail, authority routing and source provenance into one country-scoped contract for software. These docs cover the integration surface from the first authenticated request through production coverage handling.PropData España convierte identidad catastral, parcelas, direcciones, edificios, geometría, detalle no protegido, enrutamiento de autoridad y procedencia en un contrato único para software. Esta referencia cubre desde la primera solicitud autenticada hasta el manejo de cobertura en producción.

78.94Mofficial DGC cadastral real-estate records · source scale
7,610DGC municipalities · common territory
CP · AD · BUofficial INSPIRE source families
REFCATnative cadastral identity spine
01 · QUICKSTART

Make a Spain-scoped property request.

Direct REST requests go to the PropData production edge. Keep your API key in a trusted server-side secret and send it only in the x-api-key header. The country selector is country=ES.

CURL · PROPERTY LOOKUP
curl "https://propdata-api-worker.sales-fd3.workers.dev/v1/property?country=ES&address=YOUR_SPANISH_ADDRESS" \
  -H "x-api-key: $PROPDATA_API_KEY"
NODE.JS · SERVER-SIDE FETCH
const url = new URL(
  "https://propdata-api-worker.sales-fd3.workers.dev/v1/property"
);
url.searchParams.set("country", "ES");
url.searchParams.set("address", "YOUR_SPANISH_ADDRESS");

const controller = new AbortController();
const timeout = setTimeout(() => controller.abort(), 10_000);

try {
  const response = await fetch(url, {
    headers: { "x-api-key": process.env.PROPDATA_API_KEY },
    signal: controller.signal
  });

  if (!response.ok) {
    throw new Error(`PropData ${response.status}`);
  }

  const property = await response.json();
  console.log(property);
} finally {
  clearTimeout(timeout);
}
PYTHON · REQUESTS
import os
import requests

response = requests.get(
    "https://propdata-api-worker.sales-fd3.workers.dev/v1/property",
    params={"country": "ES", "address": "YOUR_SPANISH_ADDRESS"},
    headers={"x-api-key": os.environ["PROPDATA_API_KEY"]},
    timeout=10,
)
response.raise_for_status()
property_record = response.json()
Spain availability is still certification-gated. A globally available route does not mean every Spain municipality or layer is already promoted. Always interpret match, coverage and provenance separately.
02 · AUTHENTICATION

Credentials stay server-side.

Static REST authentication uses the x-api-key header. Do not put a production key in query parameters, browser bundles, repositories, screenshots, analytics, frontend environment variables or MCP authorization flows.

RESTx-api-key

Use a PropData API key from a trusted backend, edge function or server.

DASHBOARDExplicit account connection

The Spain Dashboard validates a user-supplied key against live usage before treating it as connected.

MCPOAuth

AI-native MCP access is a separate OAuth flow. Do not paste a static REST key into MCP.

Never expose a production key in client code. The browser-based Spain Dashboard is an explicit account-holder testing surface, not the recommended credential pattern for your customer-facing application.
03 · COUNTRY SCOPE

country=ES selects the Spain adapter.

Country scope tells PropData to apply Spain-native identity, authority, coverage and source semantics rather than a U.S.-centric or generic property model.

INPUTAddress, coordinates or supported cadastral identity.
COUNTRYES selects the Spain contract.
AUTHORITYDGC common territory or the appropriate separate foral system.
GRAPHREFCAT · CP · AD · BU · property detail · provenance.

Do not remove country scope and assume a Spanish address will always route correctly. Explicit country selection is the stable integration pattern.

04 · DATA MODEL

The Spanish property graph.

PropData does not reduce Spain to a flat parcel table. The country model preserves official identities and relationships so downstream systems can tell which property, parcel, address, building and source evidence they are using.

DOMAINOFFICIAL CONCEPTPROPDATA ROLEWHY IT MATTERS
IdentityReferencia catastralDurable cadastral property identity.Stable join point for downstream workflows.
AuthorityMunicipality / cadastral authorityRoutes source and territorial contract.Prevents cross-authority fabrication.
CPCadastral ParcelParcel identity, boundary, geometry and surface context.Spatial spine for maps and coordinate workflows.
ADAddressOfficial structured address identity and point context.Connects human-readable location to cadastral identity.
BUBuilding / BuildingPartBuilding footprints, parts and related construction geometry where published.Built-environment context beyond the land parcel.
DetailNon-protected property informationSurface, use/destination, cultivation/use class, construction quality and related published context.Transforms an identifier into a usable property object.
ProvenanceSource family / revisionEvidence lineage behind returned facts.Makes answers traceable and governable.
CoverageLayer / authority availabilityExplicit availability state, separate from match.Prevents missing data from becoming false certainty.
05 · IDENTITY

REFCAT is the spine, not the whole property.

The referencia catastral is the official cadastral identity anchor. PropData preserves it rather than replacing it with a vendor-only ID, then connects the evidence around it: parcel geometry, official address context, buildings, municipality/authority, source revision and coverage state.

Integration rule: treat cadastral identity and address strings as different concepts. A normalized address can help resolve a property, but the durable downstream anchor is the resolved cadastral identity and its source context.

Identity resolution should fail closed

  • Do not convert an ambiguous candidate into an exact property match.
  • Do not attach property detail to a parcel identity that has not been established.
  • Do not treat a coordinate containment result as proof of an exact postal address.
  • Do not synthesize ownership or value attributes from surrounding records.
06 · OFFICIAL SOURCE FAMILIES

CP, AD and BU form the open INSPIRE backbone.

CPCadastral Parcels

Parcel identity, boundary geometry, surface and cadastral spatial context where published and promoted.

ADAddresses

Official address identities and point context linked back to cadastral geography.

BUBuildings

Buildings, building parts and other construction geometry published through the official building family.

The commercial product is not the act of downloading these public sources. It is the normalization, deterministic identity, authority routing, cross-family relationships, source revision handling, coverage semantics, quality gates and software delivery layer built on top.

07 · NON-PROTECTED PROPERTY DETAIL

More than boundaries.

Spain’s public non-protected cadastral information can include property location, cadastral reference, surface, use/destination, cultivation/use class, construction quality and cadastral cartography. PropData attaches these only where the source and exact property identity support them.

CONCEPTOPEN CONTRACTBEHAVIOR
Property locationEligible non-protected informationReturn when source publishes and identity resolves.
Cadastral referenceCore identityPreserve exactly as the source identity.
SurfaceEligible non-protected informationKeep source meaning and units explicit where returned.
Use / destinationEligible non-protected informationPreserve source semantics; do not remap into unsupported categories.
Cultivation / use classEligible non-protected informationRelevant especially to rural context; return only where published.
Construction qualityEligible non-protected informationReturn as source-supported property context where available.
CartographyEligible non-protected informationGeometry remains coverage- and revision-aware.
08 · GEOMETRY & COORDINATES

Point → parcel → property, only when evidence supports it.

The source geometry contract must remain intact even when the API boundary accepts WGS84 coordinates. PropData separates coordinate input, source geometry, parcel containment and exact property identity rather than treating them as interchangeable.

CURL · COORDINATE RESOLUTION
curl "https://propdata-api-worker.sales-fd3.workers.dev/v1/property/by-location?country=ES&lat=40.4168&lng=-3.7038" \
  -H "x-api-key: $PROPDATA_API_KEY"
  • Use WGS84 latitude and longitude at the API boundary.
  • Return parcel context only where promoted geometry supports deterministic containment.
  • Do not invent a boundary if only address/property identity exists.
  • Keep source, authority, municipality and revision evidence with geometry where available.
  • Use the coordinate coverage-check route before depending on a spatial workflow at scale.
09 · COVERAGE

One Spain product. Different cadastral authorities.

The Dirección General del Catastro covers Spain’s common territory. País Vasco and Navarra operate separate cadastral systems. PropData treats this jurisdiction split as part of the country contract.

DGC COMMON TERRITORY7,610 municipalities

Official CP / AD / BU and non-protected property-detail certification path.

PAÍS VASCOSeparate foral sources

Álava, Bizkaia and Gipuzkoa require their own source integrations and promotion gates.

NAVARRASeparate foral system

Never substitute DGC data for a Navarra property. Route correctly or return explicit unavailability.

Match, coverage and provenance are separate

SIGNALQUESTION IT ANSWERSDO NOT CONFUSE WITH
MatchWhat property/parcel/geometry did this request resolve to?Whether every downstream field or layer exists.
CoverageIs the requested layer promoted for this authority and municipality?A favorable property fact.
ProvenanceWhich source family, authority and revision supports this fact?A generic national source label.
No cross-authority fabrication. A DGC route must never be used to imply property-level truth for a separate foral cadastral authority.
10 · PROVENANCE

Answers should carry evidence, not just values.

PropData’s Spain adapter is designed to keep the context necessary to explain a returned fact: source family, municipality, authority, source revision and coverage state where the response contract exposes them.

When you persist PropData records, preserve source/provenance fields alongside property facts instead of discarding them after initial ingestion. That gives your system a path to audit changes, distinguish updates from source drift and explain why a value became unavailable.

11 · PROTECTED DATA

Ownership and individualized cadastral value are outside the open contract.

Spain’s Catastro distinguishes public non-protected information from protected cadastral information. Protected data include cadastral ownership identity and individualized cadastral value, including individualized land and construction values.

Launch rule: do not request, infer, reconstruct or expose protected ownership/value fields through the open Spain path. If PropData later obtains a separate lawful entitlement for a protected-data workflow, that would be a distinct contract and access boundary.
12 · RESPONSE INTERPRETATION

Truthful nulls are part of the API contract.

A successful HTTP response does not mean every property layer exists. Treat missing/unavailable enrichment separately from a failed property lookup, and inspect response coverage/status context before interpreting nulls.

FOUNDProperty identity resolved

Use returned source and coverage context to determine what attached layers are supported.

PARTIALBase property with unavailable layer

Do not convert a missing geometry, building or detail field into a zero or fabricated value.

NO MATCH / UNAVAILABLEExplicit uncertainty

Handle as a distinct state in product UX and downstream rules rather than silently broadening geography.

13 · ROUTE CATALOG

Spain-facing production routes.

These are existing PropData routes that participate in the country-aware framework. Spain-specific data availability remains controlled by the promotion contract described above.

GET/v1/property
AUTHCOUNTRY=ESPROPERTY

Primary Spain property resolver. Resolve by address or a supported canonical property/parcel identity. Use enrich=full only where the connected plan and promoted Spain layers support it.

GET/v1/property/by-location
AUTHCOUNTRY=ESGEOSPATIAL

WGS84 coordinates to containing property/parcel context where promoted geometry supports deterministic containment.

GET/v1/property/by-location/coverage-check
AUTHCOVERAGE

Probe coordinate coverage before depending on spatial resolution in production.

GET/v1/parcel-geometry
AUTHCOUNTRY=ESGEOMETRY

Return promoted parcel geometry for a supported canonical property/parcel identity. Geometry availability is not implied by property identity alone.

GET/v1/countries
PUBLICDISCOVERY

Discover the country-aware framework and supported market capability context.

GET/v1/auth/usage
AUTHACCOUNT

Authoritative account usage and current limits. Prefer this route over hardcoded plan assumptions.

GET/v1/health
PUBLICOPS

Production service health. Do not treat global service health as proof of Spain property-layer coverage.

GET/v1/stats
PUBLICOPS

Platform statistics and global operating proof points. Do not use global counts as property-specific Spain coverage.

GET/v1/changelog
PUBLICRELEASES

Production API and promoted-data changes.

14 · ERRORS & RETRIES

Handle failures by category.

Do not retry every non-2xx response blindly. Separate authentication, entitlement, validation, not-found/coverage, rate-limit and upstream timeout behavior in your integration.

CATEGORYCLIENT BEHAVIOR
AuthenticationVerify the key is present in x-api-key, active and associated with the intended account.
EntitlementDo not retry until the account plan/access state changes.
ValidationFix country, identifier or coordinate formatting before retrying.
Not found / coverageInterpret returned match/coverage state. Do not broaden or fabricate.
Rate limitHonor returned rate-limit context and use bounded backoff.
Timeout / transient upstreamUse bounded retries with jitter and a request timeout. Avoid retry storms.
SERVER-SIDE RETRY SHAPE · ILLUSTRATIVE
for (let attempt = 0; attempt < 3; attempt++) {
  const response = await fetch(url, { headers, signal });

  if (response.ok) return response.json();

  // Do not retry validation/auth/entitlement failures blindly.
  if (![429, 502, 503, 504].includes(response.status)) {
    throw new Error(`PropData ${response.status}`);
  }

  await new Promise(r => setTimeout(r, 250 * (2 ** attempt)));
}
throw new Error("PropData retry budget exhausted");
15 · USAGE & QUOTAS

Read the account contract live.

Use GET /v1/auth/usage as the authoritative account usage surface. Plan snapshots on marketing pages can change and contracted/legacy accounts may differ.

  • Read live usage rather than hardcoding remaining quota.
  • Use returned rate-limit headers/context for quota-aware applications.
  • One Full Enrich property call is accounted according to the PropData request contract; do not infer internal subcalls from the response size.
  • The Spain Dashboard reads this route directly after the account holder connects a valid credential.
Open account usage in Spain Dashboard
16 · OAUTH MCP

AI-native access is OAuth-protected.

PropData MCP is separate from static-key REST authentication. Compatible AI clients authorize through OAuth. Do not reuse or paste a REST API key into an MCP authorization flow.

Product architecture: REST and MCP can expose the same governed property intelligence, but credential handling and client authorization are deliberately different.
17 · SPAIN DASHBOARD

A country-native operating surface.

The Spain Dashboard is not a redirect to the global site. It is a Spain-locked workspace for account validation, live usage, country-scoped request testing, response inspection, coverage, billing and developer handoff.

OVERVIEWSpain operating context

Source scale, graph layers, plan and live account usage.

REQUEST LABcountry=ES enforced

Property, coordinate, geometry, coverage and account endpoints.

ACCOUNTLive validation

Credential validation against /v1/auth/usage before treating an account as connected.

Open Spain Dashboard →
18 · LAUNCH CERTIFICATION

Promotion is earned.

Spain is in launch certification. The latest verified municipality-scale proof on 4 September 2026 selected 500 existing canonical parcels in DGC municipality 02001. All 500 completed the fetch path; 499 emitted direct property detail; one correctly returned no property detail.

REQUESTS500 / 500

Canonical parcel requests completed.

DETAIL499

Direct property-detail records emitted.

PROTECTED / WRITES0 / 0

Zero protected-field hits and zero production writes in the proof run.

  • Exact existing parcel identity required before detail attaches.
  • Ownership requested: false.
  • Cadastral value requested: false.
  • Abort write on fetch error: true.
  • Production promotion remains separate from preview/certification evidence.
19 · SOURCES & LICENCE

Official Catastro source, transformed into a value-added product.

DGC INSPIRE is the official common-territory source basis for cadastral parcels (CP), addresses (AD) and buildings (BU), with official ATOM/WMS/WFS services. DGC’s public-use licensing permits public and commercial use of transformed value-added products; it does not mean unchanged raw supplied cadastral information should simply be republished as a commercial feed.

PropData’s commercial value is the transformed operating layer: country routing, identity, relationships, deterministic joins, geometry handling, source reconciliation, coverage semantics, quality gates, provenance and software delivery.

20 · PRODUCTION CHECKLIST

Before you ship.

Set country=ES explicitly on Spain-aware property requests.
Keep PROPDATA_API_KEY server-side and send only via x-api-key.
Apply a client timeout and bounded retry policy for transient failures.
Read match, coverage and provenance as separate signals.
Preserve truthful nulls instead of defaulting absent fields to zero/false.
Do not infer DGC coverage for País Vasco or Navarra.
Do not expose or reconstruct protected ownership/value data.
Use /v1/auth/usage for authoritative account quota context.
Persist source/provenance context with property facts where useful.
Use the Spain Dashboard for canaries before scaling a new workflow.
Launch-state reminder: production route availability and Spain data promotion are separate concepts. Confirm the returned coverage/status contract for the exact workflow you are shipping.