API Documentation

Complete cadastral API reference

Base URL

https://api.parcelgps.com/v1

OpenAPI 3.1 specification

Every endpoint on this page in machine-readable form, for Postman, Insomnia or client generators:

https://api.parcelgps.com/v1/openapi.json

Units pages and address searches carry an ETag: with If-None-Match the answer is 304 with no body and costs no quota.

apartmentGuide: import a homeowners' association in 3 calls

Country codes

The endpoints accept ?country=XX. It is optional: without it the API detects the country from the shape of the reference across the 27 countries with reference search (Greece, Ireland and digit-only Latvian references need the country). An ambiguous reference returns 300 CNV_AMBIGUOUS with the candidates; a country we do not cover yet, 422 CNV_COVERAGE; something that looks like a place name, 422 CNV_PLACE_NAME with the geocoded point. Mainland Spain uses ES, but the Basque Country and Navarre run their own (foral) cadastres and need their own code: with ES their parcels are not found.

ES · SpainPV · Basque CountryNA · NavarrePT · PortugalFR · FranceIT · ItalyDE · GermanyAT · AustriaPL · PolandNL · NetherlandsCZ · CzechiaFI · FinlandBE · BelgiumEE · EstoniaSI · SloveniaLT · LithuaniaLU · LuxembourgSK · SlovakiaBG · BulgariaCY · CyprusIS · IcelandLI · LiechtensteinCH · Switzerland

Endpoint reference

MethodEndpointAuthDescription
GET/v1/resolve?q=TEXTNo keyClassifies any input: reference (and country), coordinates or place name. Not metered.
GET/v1/search/address/candidates?q=TEXT&country=XXAPI KeyAddress → parcel with ranked candidates: Spain and 25 more European countries
GET/v1/search/coordinates?lat=LAT&lng=LNG&country=XXAPI KeyPoint → parcel (lat/lng in the query string)
POST/v1/search/coordinatesAPI KeyPoint → parcel (JSON body)
POST/v1/search/addressAPI KeySpanish address by parts (province, municipality, street, number) → parcel
POST/v1/search/address/parseAPI KeySpanish address as free text → parcel
GET/v1/locations/provincesAPI KeySpanish provinces (names for address search)
GET/v1/locations/municipalities?region=XAPI KeyMunicipalities of a Spanish province
GET/v1/locations/streets?region=X&municipality=X&name=XAPI KeyStreets of a Spanish municipality
GET/v1/parcels/:referenceAPI KeyParcel lookup
GET/v1/parcels/:reference14/unitsAPI KeyAll units of a finca (dwellings, premises, garages) — Spain
GET/v1/parcels/:reference/polygon?country=XXAPI KeyParcel geometry (GeoJSON)
GET/v1/parcels/:reference/terrain?country=XXAPI KeyParcel relief (elevation, slope, orientation) and Natura 2000 / protected areas
GET/v1/parcels/:reference/ground-motion?country=XXAPI KeyGround motion (subsidence or uplift in mm/year, 2020-2024) measured by satellite
GET/v1/parcels/:reference/solar?country=XXAPI KeySolar potential
GET/v1/parcels/:reference/agriculture?country=XXAPI KeyAgricultural land data
GET/v1/parcels/:reference/subparcels?lang=XXAPI KeyCrops and land use inside the parcel, with outline (Spain and 19 more European countries)
GET/v1/parcels/:reference/sigpac?lang=XX&format=geojsonAPI KeySIGPAC enclosures of the parcel with their geometry (Spain), downloadable as GeoJSON
GET/v1/reference/crops?lang=XXNo keyCrop code catalogue (free)
GET/v1/parcels/:reference/market?country=XXAPI KeyPremium (paid plans only): rural land prices, €/ha by crop (ES)
GET/v1/parcels/:reference/score?country=XXAPI KeyInvestment score 0-100 with rating and factors
GET/v1/parcels/:reference/value-history?country=XXAPI KeyPremium (paid plans only): Recorded history of the parcel (area, use, cadastral value)
GET/v1/parcels/:reference/neighbors?country=XXAPI KeyAdjoining parcels, each with its reference and centre point
POST/v1/parcels/compareAPI KeyCompare 2 or 3 parcels side by side
GET/v1/export/kml?reference=X&country=XAPI KeyExport KML (Google Earth)
GET/v1/export/gpx?reference=X&country=XAPI KeyExport GPX (GPS navigators)

Reliability

What we serve from our own infrastructure and what depends on a public authority. Worth reading before you go to production.

EndpointWhere the data comes from
/parcels/:reference (ES)Our own copy of the cadastre (50.9M parcels). Does not depend on the Catastro to answer.
/polygon · /search/address · /search/coordinatesCatastro (public authority). Can fail without notice.
/agricultureSIGPAC
/solarPVGIS

Errors and retries

A 503 means an official source is not answering right now: retry with backoff and it will clear on its own. A quota 429 means the quota and the prepaid balance are used up, and retrying will not fix it — top up, change plan or wait for the reset on the 1st. A 404 is a reference that does not exist and should not be retried.

Status page

We publish the health of our API and of the nine cadastral sources we depend on, checked every five minutes and hosted off this API so it stays trustworthy during an outage: catastrogps.es/status.

Authentication

All API requests require an API key sent in the X-API-Key header.

curl -H "X-API-Key: YOUR_API_KEY" \
  "https://api.parcelgps.com/v1/parcels/9872023VH5797S"

Get your free API key at your developer dashboard.

Error codes

StatusCodeDescription
200—OK — The request completed successfully.
400VALIDATION_ERRORBad Request — Invalid parameters or a cadastral reference with the wrong format.
401UNAUTHORIZEDUnauthorized — Invalid, expired or missing API key.
404NOT_FOUNDNot Found — No parcel was found for the given reference or coordinates. It does not count against your quota.
429KEY_AUTH_004Quota Exceeded — The monthly quota and the prepaid balance are used up (or overage is switched off). X-Quota-Remaining and X-Quota-Reset tell you what is left and when it resets. Top up in your dashboard or wait for the reset on the 1st.
429RATE_LIMIT_EXCEEDED / DAILY_LIMIT_REACHEDToo Many Requests — KEY_RATE_002: you went over your key's per-minute burst limit (Free 10, Developer 60, Startup 120, Growth 300). RATE_LIMIT_EXCEEDED: too many requests from the same IP. Both carry X-RateLimit-* and Retry-After. DAILY_LIMIT_REACHED: daily limit of free searches without an API key.
500INTERNAL_ERRORInternal Server Error — Error on our side. If it persists, contact support.
503SERVICE_UNAVAILABLEService Unavailable — The external cadastral service of the requested country is temporarily down. These services are run by public authorities (Catastro, DGT, Géoportail, Agenzia Entrate, ALKIS...) and are outside our control. Retry in a few minutes.

Quota and rate limit headers

There are two families of headers and they measure different things. X-Quota-* is the monthly quota of your plan: the one that runs out with KEY_AUTH_004.

HeaderDescription
X-Quota-LimitCalls included per month in your plan (e.g. 5000).
X-Quota-RemainingCalls left this month.
X-Quota-ResetMonthly quota reset date (ISO 8601, UTC).
X-Quota-TierName of the current tier (free, basic, pro, business).

X-RateLimit-* is your key's per-minute burst limit, set by plan: Free 10, Developer 60, Startup 120 and Growth 300 requests every 60 seconds. It has nothing to do with the monthly quota.

HeaderDescription
X-RateLimit-LimitRequests allowed per minute with your key (depends on your plan).
X-RateLimit-RemainingRequests left in the current minute.
X-RateLimit-ResetSeconds until the one-minute window resets.

What counts as a unit

Each plan includes units per month. A lookup with data costs 1; if it returns no data, it costs nothing.

RequestUnits
GET /v1/parcels/{reference}Parcel by cadastral reference1 (0 if there is no data)
POST /v1/search/coordinatesParcel by coordinates1 (0 if there is no data)
/solar · /agriculture · /score · /marketSolar, agriculture, score or market for a parcel1 each (0 if there is no data)
GET /v1/search/address/candidatesAddress search1 if there are candidates
GET /v1/parcels/{reference14}/unitsDwellings and premises in a building1 per unit served
POST /v1/parcels/compareCompare parcels1 per parcel found
304 · 300 · 4xx · 5xxNot modified, ambiguous, client or server errors0

Guides by use case

Four real jobs done with API calls. Every step has the call in cURL, with the JavaScript SDK and with the Python SDK, and the real response production returned.

Check a property before buying it

From the address in the listing to what the cadastre says and what the satellite sees: which finca it is, what is inside, whether it falls in a protected area and whether the ground moves. Each step uses a different parcel to show a case with data; in your flow it is the same reference from start to end.

Countries: ES

1. From the address to the finca

A free-text address returns candidates ranked by confidence (0 to 1) with the 14-character reference, the use, the dwellings and the year. From 0.75 up, number and municipality match. It costs 1 unit only when there are candidates.

curl -G "https://api.parcelgps.com/v1/search/address/candidates" \
  --data-urlencode "q=Avenida José Rodríguez de la Borbolla Camoyán 10, Dos Hermanas" \
  --data-urlencode "limit=3" \
  -H "X-API-Key: $CATASTROGPS_API_KEY"

Real response

{
  "success": true,
  "data": {
    "query": {
      "text": "Avenida José Rodríguez de la Borbolla Camoyán 10, Dos Hermanas",
      "street": "Avenida José Rodríguez de la Borbolla Camoyán",
      "number": 10,
      "municipality": "Dos Hermanas"
    },
    "candidates": [
      {
        "reference": "0745901TG4304N",
        "country": "ES",
        "address": "AVENIDA JOSE RGUEZ BORBOLLA CAMOY 10",
        "number": 10,
        "postalCode": "41704",
        "municipality": "Dos Hermanas",
        "region": "Sevilla",
        "latitude": 37.31947088654626,
        "longitude": -5.926788955974699,
        "confidence": 0.93,
        "numberMatches": true,
        "municipalityMatches": true,
        "inOwnCopy": true,
        "cadastreAddress": "AV JOSE RGUEZ BORBOLLA CAMOY 10",
        "use": "Residencial",
        "dwellings": 346,
        "yearBuilt": 2023
      },
      {
        "reference": "0747201TG4304N",
        "country": "ES",
        "address": "BULEVAR JOSE RODRIGUEZ DE LA BORBOLLA CAMOYAN 11",
        "number": 11,
        "confidence": 0.55,
        "numberMatches": false,
        "municipalityMatches": true,
        "inOwnCopy": true
      }
    ],
    "attribution": "CartoCiudad (Instituto Geográfico Nacional) y Dirección General del Catastro"
  },
  "remainingSearches": 2894
}

2. What is inside: dwellings, premises and annexes

With the 14-character reference you get every unit of the finca with use, area, floor, door and participation coefficient. Use it to check that the area and use in the listing match the cadastre. It costs 1 unit per unit served.

curl "https://api.parcelgps.com/v1/parcels/0745901TG4304N/units" \
  -H "X-API-Key: $CATASTROGPS_API_KEY"

Real response

HTTP/2 200
etag: "5ab6bd3d95f85dddba81818bcb0cb65e"
cache-control: private, max-age=21600
x-quota-remaining: 2893

{
  "success": true,
  "data": {
    "reference": "0745901TG4304N",
    "address": "AV JOSE RGUEZ BORBOLLA CAMOY 10",
    "postalCode": "41704",
    "municipality": "DOS HERMANAS",
    "region": "Sevilla",
    "mainUse": "Residencial",
    "totalArea": 32789,
    "yearBuilt": 2023,
    "unitCount": 200,
    "propertyUnitCount": 365,
    "units": [
      {
        "reference": "0745901TG4304N0002KH",
        "staircase": "",
        "floor": "01",
        "door": "B",
        "use": "Residencial",
        "area": 155,
        "description": "Planta 01, Pta. B - Residencial",
        "ownershipShare": 0.279543,
        "yearBuilt": 2023,
        "address": "AV JOSE RGUEZ BORBOLLA CAMOY 10 Pl:01 Pt:B"
      },
      {
        "reference": "0745901TG4304N0003LJ",
        "staircase": "",
        "floor": "01",
        "door": "C",
        "use": "Residencial",
        "area": 163,
        "description": "Planta 01, Pta. C - Residencial",
        "ownershipShare": 0.293879,
        "yearBuilt": 2023,
        "address": "AV JOSE RGUEZ BORBOLLA CAMOY 10 Pl:01 Pt:C"
      }
    ],
    "truncated": true,
    "nextCursor": "0745901TG4304N0201MZ",
    "dataSource": "clone",
    "dataDate": "2026-01-23",
    "attribution": "Dirección General del Catastro"
  },
  "remainingSearches": 2893
}

3. Protected areas: Natura 2000 and parks

Before buying rural land it pays to know whether it lies inside a protected area: it limits what can be built or planted. /terrain intersects the parcel outline with Natura 2000 and the national protected areas (CDDA) and says which share of the parcel is inside. Real example: a parcel fully inside the Monfragüe National Park.

curl "https://api.parcelgps.com/v1/parcels/10194A00110004/terrain?country=ES" \
  -H "X-API-Key: $CATASTROGPS_API_KEY"

Real response, trimmed

{
  "success": true,
  "data": {
    "reference": "10194A00110004",
    "country": "ES",
    "protectedAreas": {
      "status": "ok",
      "intersects": true,
      "inside": true,
      "maxOverlapPct": 100,
      "natura2000": [
        {
          "code": "ES0000014",
          "name": "Monfragüe y las Dehesas del Entorno",
          "type": "SPA",
          "country": "ES",
          "overlapPct": 100
        },
        {
          "code": "ES4320077",
          "name": "Monfragüe",
          "type": "SCI",
          "country": "ES",
          "overlapPct": 100
        }
      ],
      "national": [
        {
          "code": "4820",
          "name": "Monfragüe",
          "designation": "National Park",
          "country": "ES",
          "overlapPct": 100
        }
      ],
      "method": "parcel",
      "sources": [
        {
          "name": "Natura 2000",
          "license": "CC BY 4.0",
          "edition": "end 2024"
        },
        {
          "name": "Nationally designated areas (CDDA)",
          "license": "CC BY 4.0",
          "edition": "2025"
        }
      ]
    }
  }
}

4. Whether the ground is sinking

/ground-motion gives the vertical velocity of the ground measured by the Sentinel-1 radar (Copernicus EGMS, 2020-2024) over the parcel. Real example: a parcel in Murcia sinking 40.9 mm a year, class severe_subsidence. When the satellite has no reflectors (open fields, forest, water) it answers status no_data instead of guessing.

curl "https://api.parcelgps.com/v1/parcels/30024A16000286/ground-motion?country=ES" \
  -H "X-API-Key: $CATASTROGPS_API_KEY"

Real response

{
  "success": true,
  "data": {
    "reference": "30024A16000286",
    "country": "ES",
    "status": "ok",
    "period": { "from": "2020-01", "to": "2024-12", "label": "2020-2024" },
    "groundMotion": {
      "class": "severe_subsidence",
      "worstClass": "severe_subsidence",
      "vertical": {
        "meanMmYear": -40.9, "maxSubsidenceMmYear": -40.9, "maxUpliftMmYear": 0,
        "stdMmYear": 0.1, "accelerationMmYear2": -0.7, "rmseMm": 2.3
      },
      "eastWest": { "meanMmYear": -5.1, "stdMmYear": 0.1 },
      "yearlyDisplacement": [
        { "year": 2020, "mm": -17.9 }, { "year": 2021, "mm": -57.2 }, { "year": 2022, "mm": -95.8 },
        { "year": 2023, "mm": -141.8 }, { "year": 2024, "mm": -179.8 }
      ],
      "cellsWithData": 1, "cellsConsidered": 1, "coveragePct": 100,
      "basis": "parcel", "cellSizeM": 100
    },
    "source": {
      "name": "European Ground Motion Service (EGMS) L3 Ortho",
      "license": "Copernicus data policy (Regulation (EU) No 1159/2013): free, commercial use allowed with attribution",
      "attribution": "Contains modified Copernicus Land Monitoring Service information, European Ground Motion Service 2020-2024 (© European Union, Copernicus Land Monitoring Service, EEA)",
      "resolution": "100 m"
    },
    "calculatedAt": "2026-10-01T08:13:58Z",
    "provenance": "2"
  },
  "remainingSearches": 4320
}

A property manager's portfolio

Import every finca you manage with its units and check them again every month without paying twice for what did not change.

Countries: ES

1. First import

Loop over your list of 14-character references. Each page carries up to 200 units and a nextCursor; the SDKs follow the cursor for you. Store the ETag of each page with the finca. The quota you have left comes in the X-Quota-Remaining header and in the SDK's lastQuota.

curl -i "https://api.parcelgps.com/v1/parcels/0745901TG4304N/units" \
  -H "X-API-Key: $CATASTROGPS_API_KEY"

curl -i "https://api.parcelgps.com/v1/parcels/0745901TG4304N/units?cursor=0745901TG4304N0201MZ" \
  -H "X-API-Key: $CATASTROGPS_API_KEY"

Real response

HTTP/2 200
etag: "5ab6bd3d95f85dddba81818bcb0cb65e"
cache-control: private, max-age=21600
x-quota-remaining: 2893

{
  "success": true,
  "data": {
    "reference": "0745901TG4304N",
    "address": "AV JOSE RGUEZ BORBOLLA CAMOY 10",
    "postalCode": "41704",
    "municipality": "DOS HERMANAS",
    "region": "Sevilla",
    "mainUse": "Residencial",
    "totalArea": 32789,
    "yearBuilt": 2023,
    "unitCount": 200,
    "propertyUnitCount": 365,
    "units": [
      {
        "reference": "0745901TG4304N0002KH",
        "staircase": "",
        "floor": "01",
        "door": "B",
        "use": "Residencial",
        "area": 155,
        "description": "Planta 01, Pta. B - Residencial",
        "ownershipShare": 0.279543,
        "yearBuilt": 2023,
        "address": "AV JOSE RGUEZ BORBOLLA CAMOY 10 Pl:01 Pt:B"
      },
      {
        "reference": "0745901TG4304N0003LJ",
        "staircase": "",
        "floor": "01",
        "door": "C",
        "use": "Residencial",
        "area": 163,
        "description": "Planta 01, Pta. C - Residencial",
        "ownershipShare": 0.293879,
        "yearBuilt": 2023,
        "address": "AV JOSE RGUEZ BORBOLLA CAMOY 10 Pl:01 Pt:C"
      }
    ],
    "truncated": true,
    "nextCursor": "0745901TG4304N0201MZ",
    "dataSource": "clone",
    "dataDate": "2026-01-23",
    "attribution": "Dirección General del Catastro"
  },
  "remainingSearches": 2893
}

2. Monthly check with ETag

Repeat the call with If-None-Match and the stored ETag. If the finca did not change, the answer is 304 Not Modified and costs nothing. With the SDK, pass the previous result: changed tells you whether anything moved. Keep to your plan's per-minute limit (Free 10, Developer 60, Startup 120, Growth 300): the SDKs retry a 429 on their own.

curl -i "https://api.parcelgps.com/v1/parcels/0745901TG4304N/units" \
  -H "X-API-Key: $CATASTROGPS_API_KEY" \
  -H 'If-None-Match: "5ab6bd3d95f85dddba81818bcb0cb65e"'

HTTP/2 304
x-quota-remaining: 2929
Full guide to import a homeowners' association

Solar feasibility of a parcel

Estimated output from PVGIS, savings, payback and, for ground-mounted panels, the real slope and orientation of the land. /solar covers Spain (with the Basque Country and Navarre), Portugal, France, Italy and Germany; elsewhere it answers 422 CNV_COVERAGE.

Countries: ESPVNAPTFRITDE

1. Output and economics of the installation

The answer carries the installable kWp, the kWh a year, the savings, the payback, the CO2 avoided and an economics block with self-consumption, surplus, net income, payback and IRR. When there is no solar data it answers disponible false and costs nothing.

curl "https://api.parcelgps.com/v1/parcels/9872023VH5797S/solar" \
  -H "X-API-Key: $CATASTROGPS_API_KEY"

Real response

{
  "success": true,
  "data": {
    "available": true,
    "status": "ok",
    "annualProductionKwh": 23749.9,
    "installableKw": 17.86,
    "annualSavingsEur": 1473.18,
    "paybackYears": 12.13,
    "co2AvoidedKg": 5533.73,
    "irradiationKwhM2": 1807.08,
    "solarGrade": 5,
    "optimalOrientation": "south",
    "tiltAngleDeg": 34,
    "installationCostEur": 17865,
    "source": "PVGIS (JRC)",
    "economics": {
      "selfConsumptionKwhYear": 5000,
      "surplusKwhYear": 18749.9,
      "netAnnualIncomeEur": 1473.18,
      "paybackYears": 12.13,
      "irrPct": 6.56,
      "totalReturn25YearsEur": 18964.5,
      "landLeaseAvailable": false
    }
  },
  "remainingSearches": 4319
}

2. Slope and orientation of the land

For a ground-mounted installation, /terrain gives the mean and maximum slope with its class and the dominant orientation over the real outline (Copernicus DEM GLO-30, 30 m). Real example: a very steep north-facing hillside, a poor candidate for ground-mounted panels.

curl "https://api.parcelgps.com/v1/parcels/10194A00110004/terrain?country=ES" \
  -H "X-API-Key: $CATASTROGPS_API_KEY"

Real response, trimmed

{
  "success": true,
  "data": {
    "reference": "10194A00110004",
    "country": "ES",
    "relief": {
      "status": "ok",
      "elevationM": {
        "mean": 359.5,
        "min": 216.2,
        "max": 506.6
      },
      "slope": {
        "meanPct": 37.3,
        "meanDeg": 20.5,
        "maxPct": 71.6,
        "class": "very_steep",
        "maxClass": "very_steep",
        "shareOver10Pct": 99,
        "classesPct": {
          "flat": 0.1,
          "gentle": 1,
          "moderate": 5.6,
          "steep": 18.8,
          "very_steep": 74.7
        }
      },
      "aspect": {
        "dominant": "N",
        "dominantSharePct": 77.1,
        "meanDeg": 359,
        "flatSharePct": 0.1,
        "sectorsPct": {
          "N": 77.1,
          "NE": 9,
          "E": 0.1,
          "SE": 0,
          "S": 0,
          "SW": 1,
          "W": 1.4,
          "NW": 11.2
        }
      },
      "sample": {
        "method": "parcel",
        "cells": 1365,
        "resolutionM": 31
      },
      "source": {
        "name": "Copernicus DEM GLO-30",
        "license": "Copernicus DEM licence (free, commercial use allowed)",
        "attribution": "© DLR e.V. 2010-2014 and © Airbus Defence and Space GmbH 2014-2018 provided under COPERNICUS by the European Union and ESA; all rights reserved"
      }
    }
  }
}

Parcel risk for an insurer

Three signals per parcel from open European sources: ground subsidence (EGMS), relief and protected areas (Copernicus DEM, EEA) and climate (ERA5-Land). It works across the EGMS coverage (EEA-39) wherever we have the outline; outside Spain, Portugal, France, Italy and Germany pass lat and lng as well.

Countries: EEA-39

1. Subsidence and acceleration

class and worst_class sum up the motion (stable, slow_subsidence, notable_subsidence, severe_subsidence and their uplift equivalents). vertical carries the mean, the fastest subsidence, the acceleration and the cumulative displacement of each year. Every answer includes the Copernicus attribution you have to display.

curl "https://api.parcelgps.com/v1/parcels/30024A16000286/ground-motion?country=ES" \
  -H "X-API-Key: $CATASTROGPS_API_KEY"

Real response

{
  "success": true,
  "data": {
    "reference": "30024A16000286",
    "country": "ES",
    "status": "ok",
    "period": { "from": "2020-01", "to": "2024-12", "label": "2020-2024" },
    "groundMotion": {
      "class": "severe_subsidence",
      "worstClass": "severe_subsidence",
      "vertical": {
        "meanMmYear": -40.9, "maxSubsidenceMmYear": -40.9, "maxUpliftMmYear": 0,
        "stdMmYear": 0.1, "accelerationMmYear2": -0.7, "rmseMm": 2.3
      },
      "eastWest": { "meanMmYear": -5.1, "stdMmYear": 0.1 },
      "yearlyDisplacement": [
        { "year": 2020, "mm": -17.9 }, { "year": 2021, "mm": -57.2 }, { "year": 2022, "mm": -95.8 },
        { "year": 2023, "mm": -141.8 }, { "year": 2024, "mm": -179.8 }
      ],
      "cellsWithData": 1, "cellsConsidered": 1, "coveragePct": 100,
      "basis": "parcel", "cellSizeM": 100
    },
    "source": {
      "name": "European Ground Motion Service (EGMS) L3 Ortho",
      "license": "Copernicus data policy (Regulation (EU) No 1159/2013): free, commercial use allowed with attribution",
      "attribution": "Contains modified Copernicus Land Monitoring Service information, European Ground Motion Service 2020-2024 (© European Union, Copernicus Land Monitoring Service, EEA)",
      "resolution": "100 m"
    },
    "calculatedAt": "2026-10-01T08:13:58Z",
    "provenance": "2"
  },
  "remainingSearches": 4320
}

2. Relief, protected areas and climate

The same /terrain call brings the relief, the protected areas and the climate block with the ERA5-Land normals: mean temperature, annual rainfall, frost days and days above 35 degrees over a reference period against recent years. The ERA5-Land grid is loading: until it finishes, climate answers status unavailable and the rest of the response comes as usual. The example uses a Belgian reference, which has a slash and goes encoded as %2F.

curl "https://api.parcelgps.com/v1/parcels/21802B1307%2F00B000/terrain?country=BE&lat=50.848139&lng=4.353613" \
  -H "X-API-Key: $CATASTROGPS_API_KEY"

The climate block while the ERA5-Land grid is loading

"climate": {
  "status": "unavailable",
  "source": {
    "name": "ERA5-Land",
    "provider": "Copernicus Climate Change Service (C3S) / ECMWF",
    "license": "CC BY 4.0",
    "attribution": "Contains modified Copernicus Climate Change Service information; …",
    "url": "https://cds.climate.copernicus.eu/datasets/reanalysis-era5-land-monthly-means",
    "resolution": "0.1° (~9 km)"
  }
}

SDKs and MCP

Official clients for JavaScript/TypeScript and Python, and an MCP server so an AI assistant can look up parcels with your key. All three read the key from the CATASTROGPS_API_KEY environment variable.

JavaScript and TypeScript (npm)

npm install catastrogps
import { CatastroGPS } from 'catastrogps'

const client = new CatastroGPS({ apiKey: process.env.CATASTROGPS_API_KEY })

const parcel = await client.parcels.get('9872023VH5797S0001WX')
const inWarsaw = await client.parcels.atPoint({ lat: 52.2297, lng: 21.0122 })
const terrain = await client.request('GET', '/v1/parcels/10194A00110004/terrain', { query: { country: 'ES' } })
console.log(parcel.municipality, inWarsaw.reference, terrain.relief.slope.class, client.lastQuota)

Python (PyPI)

pip install catastrogps
from catastrogps import CatastroGPS

client = CatastroGPS()

parcel = client.parcels.get("9872023VH5797S0001WX")
in_warsaw = client.parcels.at_point(52.2297, 21.0122)
terrain = client.request("GET", "/v1/parcels/10194A00110004/terrain", query={"country": "ES"})
print(parcel["municipality"], in_warsaw["reference"], terrain["relief"]["slope"]["class"], client.last_quota)

For an endpoint without its own SDK method, such as /terrain or /ground-motion, use client.request: it signs the call, retries 429 and 5xx answers and updates the quota like every other method.

Connect the MCP server to an assistant

The catastro-gps-mcp server (npm) exposes the API as tools for Claude, Cursor, VS Code and any MCP client. Every tool call is one API call against your quota.

Package on npm · npx -y catastro-gps-mcp · Get your free API key at your developer dashboard

Claude Desktop: add this to claude_desktop_config.json and restart the app.

{
  "mcpServers": {
    "catastro-gps": {
      "command": "npx",
      "args": ["-y", "catastro-gps-mcp"],
      "env": { "CATASTROGPS_API_KEY": "pk_live_your_key_here" }
    }
  }
}

Claude Code: one command in the terminal.

claude mcp add catastro-gps --env CATASTROGPS_API_KEY=pk_live_your_key_here -- npx -y catastro-gps-mcp

Cursor, Windsurf, VS Code and other MCP clients: the same command with CATASTROGPS_API_KEY in the environment.

npx -y catastro-gps-mcp

Tools

get_parcelsearch_addressget_boundariesget_solar_potentialget_terrainget_agricultureget_market_dataget_investment_scoreget_value_historycompare_parcels

Try asking

  • Find the cadastral parcel at Calle Mallorca 213, Barcelona, and give me its area and outline.
  • What is the parcel at 52.2297, 21.0122? What is its area?
  • Look up the Polish parcel 146510_8.0502.1/3 and tell me its area.

Spain (ES)

Spanish Cadastre — Dirección General del Catastro

GET/v1/search/address/candidates

Geocodes a Spanish address with CartoCiudad (IGN) and returns the matching building entrances ranked by confidence, with their 14-character reference and, when they are in our copy, use, dwellings and year. Does not depend on the Catastro. Costs 1 quota unit.

Parameters

qstringFree-text address: street and number, municipality (and postcode if you have it).
street / number / municipality / postcode / limitstringOptional: street, number, municipality, postcode (override what is read from q) and limit (1-10, default 5).
curl -G "https://api.parcelgps.com/v1/search/address/candidates" \
  --data-urlencode "q=Avenida José Rodríguez de la Borbolla Camoyán 10, Dos Hermanas" \
  --data-urlencode "limit=3" \
  -H "X-API-Key: $CATASTROGPS_API_KEY"

Response example

200 OK
{
  "success": true,
  "data": {
    "query": {
      "text": "Avenida José Rodríguez de la Borbolla Camoyán 10, Dos Hermanas",
      "street": "Avenida José Rodríguez de la Borbolla Camoyán",
      "number": 10,
      "municipality": "Dos Hermanas"
    },
    "candidates": [
      {
        "reference": "0745901TG4304N",
        "country": "ES",
        "address": "AVENIDA JOSE RGUEZ BORBOLLA CAMOY 10",
        "number": 10,
        "postalCode": "41704",
        "municipality": "Dos Hermanas",
        "region": "Sevilla",
        "latitude": 37.31947088654626,
        "longitude": -5.926788955974699,
        "confidence": 0.93,
        "numberMatches": true,
        "municipalityMatches": true,
        "inOwnCopy": true,
        "cadastreAddress": "AV JOSE RGUEZ BORBOLLA CAMOY 10",
        "use": "Residencial",
        "dwellings": 346,
        "yearBuilt": 2023
      },
      {
        "reference": "0747201TG4304N",
        "country": "ES",
        "address": "BULEVAR JOSE RODRIGUEZ DE LA BORBOLLA CAMOYAN 11",
        "number": 11,
        "confidence": 0.55,
        "numberMatches": false,
        "municipalityMatches": true,
        "inOwnCopy": true
      }
    ],
    "attribution": "CartoCiudad (Instituto Geográfico Nacional) y Dirección General del Catastro"
  },
  "remainingSearches": 2894
}

Possible errors

CodeHTTPDescription
VALIDATION_ERROR400The reference does not have a valid format for the country.
NOT_FOUND404No building entrance with a cadastral reference matches the address.
KEY_AUTH_004429Monthly API key quota exhausted (see the X-Quota-* headers).
SERVICE_UNAVAILABLE503CartoCiudad is not answering. Retry after Retry-After.
GET/v1/parcels/:reference

Get parcel data by cadastral reference (14 or 20 characters).

Parameters

:referencestringCadastral reference (e.g. 9872023VH5797S0001WX)
langstringLanguage of crop names: es, ca, en, pt, fr, it, de, pl, nl or cs. Falls back to Accept-Language, then English
curl -H "X-API-Key: YOUR_API_KEY" \
  "https://api.parcelgps.com/v1/parcels/9872023VH5797S0001WX"

Response example

200 OK
{
  "success": true,
  "data": {
    "reference": "9872023VH5797S0001WX",
    "country": "ES",
    "address": "CL GLORIA 51",
    "postalCode": "13730",
    "municipality": "SANTA CRUZ DE MUDELA",
    "region": "CIUDAD REAL",
    "latitude": 38.640143,
    "longitude": -3.463284,
    "googleMapsUrl": "https://www.google.com/maps?q=38.640143,-3.463284",
    "use": "Residencial",
    "landClass": "Urbano",
    "builtArea": 308,
    "parcelArea": 397,
    "yearBuilt": 1980,
    "ownershipShare": 100,
    "polygon": [ /* parcel outline */ ],
    "availableFields": {
      "use": true, "landClass": true, "yearBuilt": true,
      "builtArea": true, "ownershipShare": true,
      "address": true, "addressSearch": true
    }
  },
  "remainingSearches": 4321
}

Crop summary

Spanish parcels only, foral territories included. No geometry: use /subparcels for the outlines. Without subparcels the fields are omitted.

subparcelCountintegerNumber of crop subparcels
cropSummary[].cropCodestringStable code: the Catastro code in Spain (G-, NR); elsewhere prefixed with its source (NA:1501, AT:41, FR:RPG:BTH, BE:311). Full list in GET /v1/reference/crops
cropSummary[].cropstringCrop in the requested language (lang or Accept-Language; English by default)
cropSummary[].cropOriginalstringCrop or land use exactly as the source writes it, in its own language
cropSummary[].areaintegerTotal area of the crop in m²
cropSummary[].sharenumberShare of the parcel area (0-100, one decimal)

Example with crops (46063A00100121, Benimodo)

200 OK
{
  "success": true,
  "data": {
    "reference": "46063A00100121",
    "country": "ES",
    "address": "PL NUMERO    1 121",
    "municipality": "BENIMODO",
    "region": "Valencia",
    "latitude": 39.2106519,
    "longitude": -0.5652185,
    "googleMapsUrl": "https://www.google.com/maps?q=39.210652,-0.565218",
    "use": "Agrario",
    "landClass": "Rústico",
    "builtArea": 73,
    "parcelArea": 8814,
    "yearBuilt": 2003,
    "ruralPolygon": "1",
    "ruralParcel": "121",
    "placeName": "EL TOSSAL",
    "polygon": [ /* parcel outline */ ],
    "subparcelCount": 3,
    "cropSummary": [
      { "cropCode": "G-", "crop": "Rainfed carob", "cropOriginal": "Algarrobo secano", "area": 6623, "share": 75.1 },
      { "cropCode": "NR", "crop": "Irrigated citrus", "cropOriginal": "Agrios regadío", "area": 2118, "share": 24.0 }
    ]
  },
  "remainingSearches": 4321
}

Possible errors

CodeHTTPDescription
VALIDATION_ERROR400The reference does not have a valid format for the country.
NOT_FOUND404Reference not found. An unsupported ?country is treated as Spain (ES) and usually returns NOT_FOUND; use ES/PT/FR/IT/DE/PV/NA. For foral cadastres (NA, PV) the message field adds a format hint.
RATE_LIMIT_EXCEEDED / DAILY_LIMIT_REACHED429KEY_RATE_002: your key's per-minute burst limit. RATE_LIMIT_EXCEEDED: too many requests from the same IP. DAILY_LIMIT_REACHED: daily limit of free searches without an API key.
KEY_AUTH_004429Monthly API key quota exhausted (see the X-Quota-* headers).
SERVICE_UNAVAILABLE503The official cadastral service of the country is down or under maintenance. Retry.
GET/v1/parcels/:reference14/units

Every unit of a Spanish finca from its 14-character reference, in a single call (up to 200 per page, with a cursor). Each unit carries use, floor area, participation coefficient, year and staircase/floor/door. Costs 1 quota unit per unit returned (minimum 1). Requires an API key or a signed-in account. Source: Dirección General del Catastro.

Parameters

:reference14string14-character cadastral reference of the finca (e.g. 0745901TG4304N)
cursorstringOptional. The nextCursor of the previous page when truncated is true.
curl -H "X-API-Key: YOUR_API_KEY" \
  "https://api.parcelgps.com/v1/parcels/0745901TG4304N/units"

Response example

200 OK
{
  "success": true,
  "data": {
    "reference": "0745901TG4304N",
    "address": "AV JOSE RGUEZ BORBOLLA CAMOY 10",
    "postalCode": "41704",
    "municipality": "DOS HERMANAS",
    "region": "Sevilla",
    "mainUse": "Residencial",
    "totalArea": 32789,
    "yearBuilt": 2023,
    "unitCount": 200,
    "propertyUnitCount": 365,
    "truncated": true,
    "nextCursor": "0745901TG4304N0201MZ",
    "dataSource": "clone",
    "dataDate": "2026-08-19",
    "attribution": "Dirección General del Catastro",
    "units": [
      {
        "reference": "0745901TG4304N0002KH",
        "floor": "01",
        "door": "B",
        "use": "Residencial",
        "area": 155,
        "ownershipShare": 0.279543,
        "yearBuilt": 2023,
        "description": "Planta 01, Pta. B - Residencial"
      }
    ]
  }
}

Possible errors

CodeHTTPDescription
VALIDATION_ERROR400The cursor is not a 20-character reference of that finca.
UNAUTHORIZED / UNT_001401No organisation API key and no signed-in account.
NOT_FOUND404The finca is neither in our copy of the Catastro nor in the Catastro.
KEY_AUTH_004429Monthly API key quota exhausted (see the X-Quota-* headers).
SERVICE_UNAVAILABLE503The official cadastral service of the country is down or under maintenance. Retry.
GET/v1/parcels/:reference/terrain

Relief computed over the parcel polygon from Copernicus DEM GLO-30 (30 m): mean, minimum and maximum elevation, mean and maximum slope with class and distribution, share of the area steeper than 10 % and dominant orientation. Plus the intersection with Natura 2000 (EEA, end 2024) and nationally designated areas (CDDA 2025): name, code, type (SPA, SCI) and share of the parcel inside each site. Each block carries its source and licence. status = ok, no_data (no coverage) or unavailable (temporary failure, retry). Same parcel, same quota unit as the lookup.

Parameters

:referencestringCadastral reference
countrystringOptional. ES, PV, NA, PT, FR, IT, DE; inferred from the reference when missing.
lat, lngnumberOnly for the other countries with our own geometry: approximate parcel position used to find its outline.
curl -H "X-API-Key: YOUR_API_KEY" \
  "https://api.parcelgps.com/v1/parcels/10194A00110004/terrain?country=ES"

Response example

200 OK
{
  "success": true,
  "data": {
    "reference": "10194A00110004",
    "country": "ES",
    "relief": {
      "status": "ok",
      "elevationM": { "mean": 359.5, "min": 216.2, "max": 506.6 },
      "slope": {
        "meanPct": 37.3, "meanDeg": 20.5, "maxPct": 71.6,
        "class": "very_steep", "maxClass": "very_steep", "shareOver10Pct": 99,
        "classesPct": { "flat": 0.1, "gentle": 1, "moderate": 5.6, "steep": 18.8, "very_steep": 74.7 }
      },
      "aspect": {
        "dominant": "N", "dominantSharePct": 77.1, "meanDeg": 359, "flatSharePct": 0.1,
        "sectorsPct": { "N": 77.1, "NE": 9, "E": 0.1, "SE": 0, "S": 0, "SW": 1, "W": 1.4, "NW": 11.2 }
      },
      "sample": { "method": "parcel", "cells": 1365, "resolutionM": 31 },
      "source": { "name": "Copernicus DEM GLO-30", "license": "Copernicus DEM licence (free, commercial use allowed)", "attribution": "© DLR e.V. 2010-2014 and © Airbus Defence and Space GmbH 2014-2018 provided under COPERNICUS by the European Union and ESA; all rights reserved" }
    },
    "protectedAreas": {
      "status": "ok",
      "intersects": true,
      "inside": true,
      "maxOverlapPct": 100,
      "natura2000": [
        { "code": "ES0000014", "name": "Monfragüe y las Dehesas del Entorno", "type": "SPA", "country": "ES", "overlapPct": 100 },
        { "code": "ES4320077", "name": "Monfragüe", "type": "SCI", "country": "ES", "overlapPct": 100 }
      ],
      "national": [
        { "code": "4820", "name": "Monfragüe", "designation": "National Park", "country": "ES", "overlapPct": 100 }
      ],
      "method": "parcel",
      "sources": [
        { "name": "Natura 2000", "license": "CC BY 4.0", "edition": "end 2024" },
        { "name": "Nationally designated areas (CDDA)", "license": "CC BY 4.0", "edition": "2025" }
      ]
    },
    "calculatedAt": "2026-09-30T19:45:02Z",
    "provenance": "3"
  },
  "remainingSearches": 4321
}

Possible errors

CodeHTTPDescription
UNAUTHORIZED401No organisation API key and no signed-in account.
NOT_FOUND404The parcel does not exist or, outside the seven main countries, there is no outline at that position.
KEY_AUTH_004429Monthly API key quota exhausted (see the X-Quota-* headers).
TRN_040503The official cadastral service of the country is down or under maintenance. Retry.
GET/v1/parcels/:reference/ground-motion

Vertical and east-west ground velocity over the parcel polygon from the Copernicus European Ground Motion Service (EGMS L3 Ortho, Sentinel-1 radar, 100 m grid, 2020-2024): mean, fastest subsidence, fastest uplift, class (stable, slow_subsidence, notable_subsidence, severe_subsidence, slow_uplift, notable_uplift), cells with data and the mean displacement of each year. When the satellite finds no reflectors (fields, forest, water) it answers status = no_data with reason = no_reflectors instead of guessing. All of the EGMS coverage (EEA-39). Carries the source, licence and the attribution to display. Same parcel, same quota unit as the lookup.

Parameters

:referencestringCadastral reference
countrystringOptional. ES, PV, NA, PT, FR, IT, DE; inferred from the reference when missing.
lat, lngnumberOnly for the other countries with our own geometry: approximate parcel position used to find its outline.
curl -H "X-API-Key: YOUR_API_KEY" \
  "https://api.parcelgps.com/v1/parcels/30024A16000286/ground-motion?country=ES"

Response example

200 OK
{
  "success": true,
  "data": {
    "reference": "30024A16000286",
    "country": "ES",
    "status": "ok",
    "period": { "from": "2020-01", "to": "2024-12", "label": "2020-2024" },
    "groundMotion": {
      "class": "severe_subsidence",
      "worstClass": "severe_subsidence",
      "vertical": {
        "meanMmYear": -40.9, "maxSubsidenceMmYear": -40.9, "maxUpliftMmYear": 0,
        "stdMmYear": 0.1, "accelerationMmYear2": -0.7, "rmseMm": 2.3
      },
      "eastWest": { "meanMmYear": -5.1, "stdMmYear": 0.1 },
      "yearlyDisplacement": [
        { "year": 2020, "mm": -17.9 }, { "year": 2021, "mm": -57.2 }, { "year": 2022, "mm": -95.8 },
        { "year": 2023, "mm": -141.8 }, { "year": 2024, "mm": -179.8 }
      ],
      "cellsWithData": 1, "cellsConsidered": 1, "coveragePct": 100,
      "basis": "parcel", "cellSizeM": 100
    },
    "source": {
      "name": "European Ground Motion Service (EGMS) L3 Ortho",
      "license": "Copernicus data policy (Regulation (EU) No 1159/2013): free, commercial use allowed with attribution",
      "attribution": "Contains modified Copernicus Land Monitoring Service information, European Ground Motion Service 2020-2024 (© European Union, Copernicus Land Monitoring Service, EEA)",
      "resolution": "100 m"
    },
    "calculatedAt": "2026-10-01T08:13:58Z",
    "provenance": "2"
  },
  "remainingSearches": 4320
}

Possible errors

CodeHTTPDescription
UNAUTHORIZED401No organisation API key and no signed-in account.
NOT_FOUND404The parcel does not exist or, outside the seven main countries, there is no outline at that position.
KEY_AUTH_004429Monthly API key quota exhausted (see the X-Quota-* headers).
GMV_040503The official cadastral service of the country is down or under maintenance. Retry.
POST/v1/search/coordinates

Reverse geocode: find the cadastral parcel at given GPS coordinates.

Parameters

latitudenumberLatitude (WGS84)
longitudenumberLongitude (WGS84)
countrystringCountry code (optional: detected from the reference)
curl -X POST -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"latitude": 40.4196, "longitude": -3.7029, "country": "ES"}' \
  "https://api.parcelgps.com/v1/search/coordinates"

Response example

200 OK
{
  "success": true,
  "data": {
    "reference": "0447502VK4704G",
    "parcelReference": "0447502VK4704G",
    "country": "ES",
    "address": "CL TRES CRUCES 7",
    "postalCode": "28013",
    "municipality": "MADRID",
    "latitude": 40.4196984,
    "longitude": -3.7028067,
    "googleMapsUrl": "https://www.google.com/maps?q=40.419698,-3.702807",
    "propertyType": "Urbano"
  },
  "remainingSearches": 4321
}

Possible errors

CodeHTTPDescription
VALIDATION_ERROR400Coordinates outside the bounds of the given or detected country, or lat/lng missing or malformed.
NOT_FOUND404There is no parcel at those coordinates.
RATE_LIMIT_EXCEEDED / DAILY_LIMIT_REACHED429KEY_RATE_002: your key's per-minute burst limit. RATE_LIMIT_EXCEEDED: too many requests from the same IP. DAILY_LIMIT_REACHED: daily limit of free searches without an API key.
SERVICE_UNAVAILABLE503Cadastral service temporarily unavailable.
POST/v1/search/address/parse

Search cadastral parcel by postal address.

Parameters

addressstringFree-text address (Spain only). Recommended format: «Calle, Número, Municipio» — e.g. «Calle Mallorca, 213, Barcelona». The house number may also be attached to the street («Gran Vía 1, Madrid»).
curl -X POST -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"address": "Gran Via 1, Madrid"}' \
  "https://api.parcelgps.com/v1/search/address/parse"

Response example

200 OK
{
  "success": true,
  "data": {
    "reference": "0847106VK4704F",
    "parcelReference": "0847106VK4704F",
    "address": "CL GRAN VIA, 1, Madrid",
    "streetType": "CL",
    "streetName": "GRAN VIA",
    "number": 1,
    "municipality": "Madrid",
    "region": "MADRID"
  },
  "remainingSearches": 4321
}

Possible errors

CodeHTTPDescription
VALIDATION_ERROR400Invalid request body (missing fields or malformed JSON).
NOT_FOUND404Address not found (street, municipality or number does not exist, or has no cadastral match). Address search is available in Spain only.
RATE_LIMIT_EXCEEDED / DAILY_LIMIT_REACHED429KEY_RATE_002: your key's per-minute burst limit. RATE_LIMIT_EXCEEDED: too many requests from the same IP. DAILY_LIMIT_REACHED: daily limit of free searches without an API key.
GET/v1/search/coordinates

The same reverse lookup as POST /v1/search/coordinates, with the point in the query string (lat/lng; latitude, lon and longitude are also accepted). Covers every country with coordinate coverage. Costs 1 unit.

Parameters

latnumberLatitude (WGS84)
lngnumberLongitude (WGS84)
countrystringCountry code (optional: detected from the reference)
curl -G -H "X-API-Key: YOUR_API_KEY" \
  "https://api.parcelgps.com/v1/search/coordinates" \
  -d lat=40.4196 -d lng=-3.7029

Response example

200 OK
{
  "success": true,
  "data": {
    "reference": "0447502VK4704G",
    "parcelReference": "0447502VK4704G",
    "country": "ES",
    "address": "CL TRES CRUCES 7",
    "postalCode": "28013",
    "municipality": "MADRID",
    "latitude": 40.4196984,
    "longitude": -3.7028067,
    "googleMapsUrl": "https://www.google.com/maps?q=40.419698,-3.702807",
    "propertyType": "Urbano"
  }
}

Possible errors

CodeHTTPDescription
VALIDATION_ERROR400Coordinates outside the bounds of the given or detected country, or lat/lng missing or malformed.
NOT_FOUND404There is no parcel at those coordinates.
CNV_COVERAGE422Coordinates outside the bounds of the given or detected country, or lat/lng missing or malformed.
KEY_AUTH_004429Monthly API key quota exhausted (see the X-Quota-* headers).
SERVICE_UNAVAILABLE503Cadastral service temporarily unavailable.
POST/v1/search/address

Spain only: the parcel at a structured address. Take the province, municipality and street names from /v1/locations/* so they match the cadastre. Costs 1 unit.

Parameters

regionstringProvince name as returned by /v1/locations/provinces (e.g. CIUDAD REAL)
municipalitystringMunicipality name as returned by /v1/locations/municipalities
streetType / streetName / numberstring / string / integerstreetType (e.g. CL) and streetName as returned by /v1/locations/streets, and the house number
curl -X POST -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"region": "MADRID", "municipality": "MADRID", "streetType": "CL", "streetName": "GRAN VIA", "number": 1}' \
  "https://api.parcelgps.com/v1/search/address"

Response example

200 OK
{
  "success": true,
  "data": {
    "reference": "0847106VK4704F",
    "parcelReference": "0847106VK4704F",
    "address": "CL GRAN VIA, 1, Madrid",
    "region": "MADRID",
    "municipality": "Madrid",
    "streetType": "CL",
    "streetName": "GRAN VIA",
    "number": 1
  }
}

Possible errors

CodeHTTPDescription
VALIDATION_ERROR400Invalid request body (missing fields or malformed JSON).
NOT_FOUND404Address not found (street, municipality or number does not exist, or has no cadastral match). Address search is available in Spain only.
KEY_AUTH_004429Monthly API key quota exhausted (see the X-Quota-* headers).
SERVICE_UNAVAILABLE503Cadastral service temporarily unavailable.
GET/v1/locations/provinces

Provinces of the Spanish cadastre, with the names that /v1/locations/municipalities, /v1/locations/streets and POST /v1/search/address expect as region. Common territory only: the Basque Country and Navarra have their own cadastres. Costs 1 unit.

curl -G -H "X-API-Key: YOUR_API_KEY" \
  "https://api.parcelgps.com/v1/locations/provinces"

Response example

200 OK
{
  "success": true,
  "data": {
    "total": 3,
    "provinces": [
      {
        "code": "2",
        "name": "ALBACETE"
      },
      {
        "code": "3",
        "name": "ALICANTE"
      },
      {
        "code": "13",
        "name": "CIUDAD REAL"
      }
    ]
  }
}

Possible errors

CodeHTTPDescription
UNAUTHORIZED401No organisation API key and no signed-in account.
KEY_AUTH_004429Monthly API key quota exhausted (see the X-Quota-* headers).
SERVICE_UNAVAILABLE503Cadastral service temporarily unavailable.
GET/v1/locations/municipalities

Municipalities of one Spanish province, with the cadastre code and the INE code. Costs 1 unit.

Parameters

regionstringProvince name as returned by /v1/locations/provinces (e.g. CIUDAD REAL)
curl -G -H "X-API-Key: YOUR_API_KEY" \
  "https://api.parcelgps.com/v1/locations/municipalities" \
  --data-urlencode "region=CIUDAD REAL"

Response example

200 OK
{
  "success": true,
  "data": {
    "total": 3,
    "municipalities": [
      {
        "code": "1",
        "ineCode": "001",
        "name": "ABENOJAR"
      },
      {
        "code": "2",
        "ineCode": "002",
        "name": "AGUDO"
      },
      {
        "code": "77",
        "ineCode": "077",
        "name": "SANTA CRUZ DE MUDELA"
      }
    ]
  }
}

Possible errors

CodeHTTPDescription
VALIDATION_ERROR400A required parameter (region or municipality) is missing.
UNAUTHORIZED401No organisation API key and no signed-in account.
KEY_AUTH_004429Monthly API key quota exhausted (see the X-Quota-* headers).
SERVICE_UNAVAILABLE503Cadastral service temporarily unavailable.
GET/v1/locations/streets

Streets of one Spanish municipality, optionally filtered by part of the name. type and name are what POST /v1/search/address expects as streetType and streetName. Costs 1 unit.

Parameters

regionstringProvince name as returned by /v1/locations/provinces (e.g. CIUDAD REAL)
municipalitystringMunicipality name as returned by /v1/locations/municipalities
namestringOptional. Part of the street name to filter by
curl -G -H "X-API-Key: YOUR_API_KEY" \
  "https://api.parcelgps.com/v1/locations/streets" \
  --data-urlencode "region=CIUDAD REAL" --data-urlencode "municipality=SANTA CRUZ DE MUDELA" -d name=GLORIA

Response example

200 OK
{
  "success": true,
  "data": {
    "total": 1,
    "streets": [
      {
        "code": "33",
        "type": "CL",
        "name": "GLORIA",
        "fullName": "CL GLORIA"
      }
    ]
  }
}

Possible errors

CodeHTTPDescription
VALIDATION_ERROR400A required parameter (region or municipality) is missing.
UNAUTHORIZED401No organisation API key and no signed-in account.
KEY_AUTH_004429Monthly API key quota exhausted (see the X-Quota-* headers).
SERVICE_UNAVAILABLE503Cadastral service temporarily unavailable.

Basque Country (PV)

Foral cadastres — Araba/Álava, Bizkaia and Gipuzkoa (INSPIRE WFS)

GET/v1/parcels/:reference?country=PV

Parcel lookup in the three foral territories. Requires country=PV: their parcels have their own cadastre and are not in the central Catastro.

Parameters

:referencestringForal reference. Bizkaia with dots (48.020.1611.02001); Álava and Gipuzkoa in digits (64010007, 8594149).
countrystringRequired: PV.
curl -H "X-API-Key: YOUR_API_KEY" \
  "https://api.parcelgps.com/v1/parcels/48.020.1611.02001?country=PV"

Response example

200 OK
{
  "success": true,
  "data": {
    "reference": "48.020.1611.02001",
    "country": "PV",
    "municipality": "Bizkaia",
    "region": "Bizkaia",
    "latitude": 43.263633,
    "longitude": -2.935856,
    "parcelArea": 3061,
    "googleMapsUrl": "https://www.google.com/maps?q=43.263633,-2.935856",
    "polygon": [ /* parcel outline */ ]
  }
}

With country=ES (incorrect)

404
{
  "success": false,
  "code": "NOT_FOUND",
  "message": "No parcel was found for this reference or location."
}

Portugal (PT)

Portuguese Cadastre — Direção-Geral do Território

GET/v1/parcels/:reference?country=PT

Get Portuguese parcel data by cadastral reference.

Parameters

:referencestringPortuguese reference: NIC (e.g. AAA000587359), BUPi process (BUPI-905571) or artigo with freguesia (R-218 Palaçoulo). Covers 5.5 million DGT and BUPi plots; Lisbon, Porto and other cities have no geometric cadastre yet.
countrystringRequired: PT.
curl -H "X-API-Key: YOUR_API_KEY" \
  "https://api.parcelgps.com/v1/parcels/AAA000587359?country=PT"

Response example

200 OK
{
  "success": true,
  "data": {
    "reference": "AAA000587359",
    "country": "PT",
    "municipality": "TAVIRA, Tavira (Santa Maria e Santiago)",
    "latitude": 37.127156,
    "longitude": -7.648066,
    "parcelArea": 49,
    "googleMapsUrl": "https://www.google.com/maps?q=37.127156,-7.648066",
    "polygon": [ /* parcel outline */ ]
  }
}

France (FR)

French Cadastre — Cadastre / Géoplateforme

GET/v1/search/address/candidates?country=FR

Turns a French address into the cadastral parcel (14-character IDU) under it: geocodes with the Base Adresse Nationale and queries the official cadastre at that point. Candidates ranked by confidence (0 to 1). Costs 1 quota unit only when it returns candidates.

Parameters

qstringFree-text address: street and number, municipality (and postcode if you have it).
countrystringRequired: FR.
street / number / municipality / postcode / limitstringOptional: street, number, municipality, postcode (override what is read from q) and limit (1-10, default 5).
curl -G -H "X-API-Key: YOUR_API_KEY" \
  "https://api.parcelgps.com/v1/search/address/candidates" \
  --data-urlencode "q=8 boulevard du Port, Amiens" -d country=FR

Response example

200 OK
{
  "success": true,
  "data": {
    "query": { "text": "8 boulevard du Port, Amiens", "street": "boulevard du Port", "number": 8, "municipality": "Amiens" },
    "candidates": [
      {
        "reference": "80021000VA0065",
        "country": "FR",
        "address": "8 Boulevard du Port 80000 Amiens",
        "number": 8,
        "postalCode": "80000",
        "municipality": "Amiens",
        "region": "Somme",
        "latitude": 49.897442,
        "longitude": 2.290084,
        "confidence": 0.99,
        "numberMatches": true,
        "municipalityMatches": true,
        "inOwnCopy": false
      }
    ],
    "attribution": "Base Adresse Nationale (data.gouv.fr); Plan cadastral (DGFiP, Géoplateforme IGN)"
  }
}

Possible errors

CodeHTTPDescription
VALIDATION_ERROR400The reference does not have a valid format for the country.
NOT_FOUND404No building entrance with a cadastral reference matches the address.
CNV_COVERAGE422The country has no address search (SE, HR or a country without coverage)
KEY_AUTH_004429Monthly API key quota exhausted (see the X-Quota-* headers).
SERVICE_UNAVAILABLE503CartoCiudad is not answering. Retry after Retry-After.
GET/v1/parcels/:reference?country=FR

Get French parcel data by cadastral reference.

Parameters

:referencestringFrench cadastral reference (e.g. 75104000AE0003)
countrystringRequired: FR.
curl -H "X-API-Key: YOUR_API_KEY" \
  "https://api.parcelgps.com/v1/parcels/75104000AE0003?country=FR"

Response example

200 OK
{
  "success": true,
  "data": {
    "reference": "75104000AE0003",
    "country": "FR",
    "municipality": "Paris",
    "region": "75",
    "latitude": 48.856347,
    "longitude": 2.352415,
    "parcelArea": 15168,
    "googleMapsUrl": "https://www.google.com/maps?q=48.856347,2.352415",
    "polygon": [ /* parcel outline */ ]
  }
}

Italy (IT)

Italian Cadastre — Agenzia delle Entrate

GET/v1/search/address/candidates?country=IT

Turns an Italian address into the cadastral particella under it: geocodes with OpenStreetMap (Photon, with Nominatim as backup) and queries the Agenzia delle Entrate at that point. Never returns streets or waters (STRADA, ACQUA): when the point falls on the street it takes the nearest parcel. Costs 1 quota unit only when it returns candidates.

Parameters

qstringFree-text address: street and number, municipality (and postcode if you have it).
countrystringRequired: IT.
street / number / municipality / postcode / limitstringOptional: street, number, municipality, postcode (override what is read from q) and limit (1-10, default 5).
curl -G -H "X-API-Key: YOUR_API_KEY" \
  "https://api.parcelgps.com/v1/search/address/candidates" \
  --data-urlencode "q=Via Toledo 256, Napoli" -d country=IT

Response example

200 OK
{
  "success": true,
  "data": {
    "query": { "text": "Via Toledo 256, Napoli", "street": "Via Toledo", "number": 256, "municipality": "Napoli" },
    "candidates": [
      {
        "reference": "F839_019800.166",
        "country": "IT",
        "address": "Via Toledo 256, 80132 Napoli",
        "number": 256,
        "postalCode": "80132",
        "municipality": "Napoli",
        "region": "Napoli",
        "latitude": 40.8386034,
        "longitude": 14.248223,
        "confidence": 1,
        "numberMatches": true,
        "municipalityMatches": true,
        "inOwnCopy": false
      }
    ],
    "attribution": "OpenStreetMap contributors (ODbL); Agenzia delle Entrate, cartografia catastale (CC BY 4.0)"
  }
}

Possible errors

CodeHTTPDescription
VALIDATION_ERROR400The reference does not have a valid format for the country.
NOT_FOUND404No building entrance with a cadastral reference matches the address.
CNV_COVERAGE422The country has no address search (SE, HR or a country without coverage)
KEY_AUTH_004429Monthly API key quota exhausted (see the X-Quota-* headers).
SERVICE_UNAVAILABLE503CartoCiudad is not answering. Retry after Retry-After.
GET/v1/parcels/:reference?country=IT

Get Italian parcel data by cadastral reference.

Parameters

:referencestringItalian cadastral reference (foglio/particella, e.g. H501A048100.A)
countrystringRequired: IT.
curl -H "X-API-Key: YOUR_API_KEY" \
  "https://api.parcelgps.com/v1/parcels/H501A048100.A?country=IT"

Response example

200 OK
{
  "success": true,
  "data": {
    "reference": "H501A048100.A",
    "country": "IT",
    "municipality": "H501",
    "region": "H501",
    "latitude": 41.902698,
    "longitude": 12.496247,
    "parcelArea": 1059,
    "googleMapsUrl": "https://www.google.com/maps?q=41.902698,12.496247",
    "polygon": [ /* parcel outline */ ]
  }
}

Germany (DE)

German Cadastre — ALKIS (15 of 16 Bundesländer). In Bavaria, no parcel numbers: by coordinates, the declared agricultural parcel (InVeKoS)

GET/v1/parcels/:reference?country=DE

Get German parcel data by cadastral reference.

Parameters

:referencestringGerman cadastral reference (Flurstückskennzeichen)
countrystringRequired: DE.
curl -H "X-API-Key: YOUR_API_KEY" \
  "https://api.parcelgps.com/v1/parcels/05495803101122?country=DE"

Response example

200 OK
{
  "success": true,
  "data": {
    "reference": "05495803101122",
    "country": "DE",
    "latitude": 50.937566,
    "longitude": 6.960140,
    "parcelArea": 54,
    "googleMapsUrl": "https://www.google.com/maps?q=50.937566,6.960140",
    "polygon": [ /* parcel outline */ ]
  }
}

Austria (AT)

Austrian Cadastre — BEV (Katastralgemeinde / Grundstück)

GET/v1/parcels/:reference?country=AT

Parcel lookup in Austria. Requires country=AT. The reference is KATASTRALGEMEINDE-GRUNDSTÜCK. Partial coverage, expanding.

Parameters

:referencestringKatastralgemeinde-Grundstück format (e.g. 01004-1711).
countrystringRequired: AT.
curl -H "X-API-Key: YOUR_API_KEY" \
  "https://api.parcelgps.com/v1/parcels/01004-1711?country=AT"

Response example

200 OK
{
  "success": true,
  "data": {
    "reference": "01004-1711",
    "country": "AT",
    "municipality": "Innere Stadt",
    "region": "Wien",
    "latitude": 48.208478,
    "longitude": 16.372810,
    "use": "Gebäude, Straßenverkehrsanlagen",
    "parcelArea": 10641,
    "googleMapsUrl": "https://www.google.com/maps?q=48.208478,16.372810",
    "polygon": [ /* parcel outline */ ]
  }
}

With country=ES (incorrect)

400
{
  "success": false,
  "code": "VALIDATION_ERROR",
  "message": "A Spanish cadastral reference has at least 14 characters. For any other country add ?country=XX (coverage: https://parcelgps.com/developers)."
}

Rest of Europe (address)

Address search works the same way in 26 countries: in the Netherlands, Switzerland, Poland, Czechia, Estonia, Denmark and Flanders with the official address register; elsewhere with OpenStreetMap. The parcel always comes from each country's official cadastre. Sweden and Croatia do not have it.

GET/v1/search/address/candidates?country=NL

Turns a European address into the cadastral parcel under it: geocodes with the national address register (PDOK in the Netherlands) or OpenStreetMap and queries the country's official cadastre at that point. Candidates ranked by confidence (0 to 1). Costs 1 quota unit only when it returns candidates.

Parameters

qstringFree-text address: street and number, municipality (and postcode if you have it).
countrystringRequired: NL.
street / number / municipality / postcode / limitstringOptional: street, number, municipality, postcode (override what is read from q) and limit (1-10, default 5).
curl -G -H "X-API-Key: YOUR_API_KEY" \
  "https://api.parcelgps.com/v1/search/address/candidates" \
  --data-urlencode "q=Damrak 1, 1012 LG Amsterdam" -d country=NL

Response example

200 OK
{
  "success": true,
  "data": {
    "query": { "text": "Damrak 1, 1012 LG Amsterdam", "street": "Damrak", "number": 1, "municipality": "Amsterdam", "postalCode": "1012 LG" },
    "candidates": [
      {
        "reference": "ASD04-F-3937",
        "country": "NL",
        "address": "Damrak 1, 1012LG Amsterdam",
        "number": 1,
        "postalCode": "1012LG",
        "municipality": "Amsterdam",
        "region": "Noord-Holland",
        "latitude": 52.37714446,
        "longitude": 4.89803846,
        "confidence": 1,
        "numberMatches": true,
        "municipalityMatches": true,
        "inOwnCopy": false
      }
    ],
    "attribution": "PDOK Locatieserver (Kadaster, BAG); Kadaster, Basisregistratie Kadaster (PDOK, CC BY 4.0)"
  }
}

Possible errors

CodeHTTPDescription
VALIDATION_ERROR400The reference does not have a valid format for the country.
NOT_FOUND404No building entrance with a cadastral reference matches the address.
CNV_COVERAGE422The country has no address search (SE, HR or a country without coverage)
KEY_AUTH_004429Monthly API key quota exhausted (see the X-Quota-* headers).
SERVICE_UNAVAILABLE503CartoCiudad is not answering. Retry after Retry-After.

Parcel intelligence and exports

Geometry, terrain, solar potential, agricultural data, market prices, investment score, value history, neighbours, comparison and KML/GPX exports, all with your API key.

GET/v1/parcels/:reference/polygon

Get the GeoJSON polygon of a parcel.

Parameters

:referencestringCadastral reference
countrystringCountry code (query param, default: ES)
curl -H "X-API-Key: YOUR_API_KEY" \
  "https://api.parcelgps.com/v1/parcels/9872023VH5797S/polygon"

Response example

200 OK
{
  "success": true,
  "data": {
    "reference": "9872023VH5797S",
    "centroid": { "latitude": 38.6401435, "longitude": -3.4632835 },
    "area": 397,
    "geojson": {
      "type": "Feature",
      "geometry": {
        "type": "Polygon",
        "coordinates": [ [ [-3.463190, 38.640339], [-3.463165, 38.640142], /* ... */ ] ]
      },
      "properties": { "reference": "9872023VH5797S", "area": 397, "centroid": { "latitude": 38.6401435, "longitude": -3.4632835 } }
    },
    "officialRecordUrl": "https://www1.sedecatastro.gob.es/CYCBienInmueble/OVCConCiworker.aspx?tipo=RC&rc=9872023VH5797S",
    "cadastreUrl": "https://www1.sedecatastro.gob.es/CYCBienInmueble/OVCConCiWorker.aspx?Vigession=PAN&RefC=9872023VH5797S",
    "googleMapsUrl": "https://www.google.com/maps?q=38.640144,-3.463284"
  },
  "remainingSearches": 4321
}

Monthly quota exhausted

429
{
  "success": false,
  "code": "KEY_AUTH_004",
  "message": "Monthly quota used up (5000/5000). Upgrade at https://parcelgps.com/developers"
}
GET/v1/parcels/:reference/solar

Get solar potential data (PVGIS) for any European parcel.

Parameters

:referencestringCadastral reference
countrystringCountry code (query param, default: ES)
curl -H "X-API-Key: YOUR_API_KEY" \
  "https://api.parcelgps.com/v1/parcels/9872023VH5797S/solar"

Response example

200 OK
{
  "success": true,
  "data": {
    "available": true,
    "status": "ok",
    "annualProductionKwh": 23749.9,
    "installableKw": 17.86,
    "annualSavingsEur": 1473.18,
    "paybackYears": 12.13,
    "co2AvoidedKg": 5533.73,
    "irradiationKwhM2": 1807.08,
    "solarGrade": 5,
    "optimalOrientation": "south",
    "tiltAngleDeg": 34,
    "installationCostEur": 17865,
    "source": "PVGIS (JRC)",
    "economics": {
      "selfConsumptionKwhYear": 5000,
      "surplusKwhYear": 18749.9,
      "netAnnualIncomeEur": 1473.18,
      "paybackYears": 12.13,
      "irrPct": 6.56,
      "totalReturn25YearsEur": 18964.5,
      "landLeaseAvailable": false
    }
  },
  "remainingSearches": 4319
}

Parcel without solar data

200
{
  "success": true,
  "data": { "available": false, "status": "no_data" }
}
GET/v1/parcels/:reference/market

Paid plans only (premium): a Free-plan key gets 403 KEY_PLAN_001 and spends no unit. Only for rural land: agricultural parcels, small agricultural buildings allowed (sheds, farm stores, ponds, greenhouses). Housing, industrial or any other non-agricultural property is not supported and returns 422 MKT_001 with no charge; there is no charge either when we have no price for the parcel. Spain (also the Basque Country and Navarre): the official price per hectare by crop (cropPrices) and the province farmland price per hectare. It is the price of the land: buildings are not valued. Figures in the example are illustrative. Costs 1 unit only when it returns a price.

Parameters

:referencestringCadastral reference
countrystringCountry code (query param, default: ES)
curl -H "X-API-Key: YOUR_API_KEY" \
  "https://api.parcelgps.com/v1/parcels/46250A01200034/market"

Response example

200 OK
{
  "success": true,
  "data": {
    "available": true,
    "status": "available",
    "estimatedPriceEur": 0,
    "pricePerM2Eur": 0,
    "salesCount": 0,
    "granularity": "parcel",
    "zonePrices": {
      "zone": "Valencia",
      "zoneLevel": "province",
      "municipality": "VALENCIA",
      "rural": {
        "pricePerM2Eur": 2,
        "pricePerHaEur": 20000,
        "statistic": "Official farmland price",
        "authority": "Official statistics",
        "period": "2024"
      }
    },
    "cropPrices": [
      {
        "cropGroup": "CIT",
        "cropGroupName": "Citrus",
        "landUseCodes": ["NR"],
        "basis": "cadastral_subparcels",
        "areaHa": 1.5,
        "pricePerHaEur": 45000,
        "salesCount": 30,
        "level": "agricultural_zone",
        "zone": "46-03",
        "period": "2026",
        "authority": "Official statistics",
        "statistic": "Official price per hectare by crop"
      }
    ],
    "priceNote": "Price of the land per hectare by crop; buildings on the parcel are not valued."
  },
  "remainingSearches": 4321
}

cropPrices

Spain only (common regime), rustic parcels: official price per hectare by crop, for each crop group of the parcel in its rural market area, with the number of sales behind the figure. When the area has no figure for a crop, the province median. A reference price, not a valuation of the parcel. The cost does not change.

cropPrices[].cropGroupstringCrop group (TAS, TAR, OLS, OLR, VIS, FSS…) and its name
cropPrices[].landUseCodesstring[]Cadastral crops (or SIGPAC:XX) of the parcel grouped here, where they come from (basis) and their area in ha
cropPrices[].pricePerHaEurnumberOfficial €/ha and the number of sales behind the figure
cropPrices[].levelstringagricultural_zone (the municipality's area, code in zone) or province_median; with the period, authority and statistic

Errors

4xx
{
  "success": false,
  "code": "MKT_001",
  "message": "A price cannot be estimated for this parcel. Price data only covers rural land (agricultural parcels; small agricultural buildings such as sheds, ponds or greenhouses are allowed); housing, industrial or any other non-agricultural property is not supported. No unit was charged.",
  "details": {
    "country": "ES",
    "reference": "0847106VK4704F",
    "feature": "market",
    "reason": "not_rural_land"
  }
}

Possible errors

CodeHTTPDescription
KEY_PLAN_001403The key belongs to the Free plan; price data is for paid plans. Nothing is charged
NOT_FOUND404Reference not found. An unsupported ?country is treated as Spain (ES) and usually returns NOT_FOUND; use ES/PT/FR/IT/DE/PV/NA. For foral cadastres (NA, PV) the message field adds a format hint.
MKT_001422The parcel is not rural land (housing, industrial or any other non-agricultural building or use) or its country has no rural land prices; details.reason says which. Nothing is charged
MKT_001422Rural land with no price for it (details.reason: no_rural_price). Nothing is charged
KEY_AUTH_004429Monthly API key quota exhausted (see the X-Quota-* headers).
GET/v1/parcels/:reference/score

Investment score 0-100 for a parcel, with rating, recommendation, component scores (solar, agriculture, market, accessibility, risk) and qualitative risk and opportunity factors. Costs 1 unit when it returns data.

Parameters

:referencestringCadastral reference
countrystringCountry code (query param, default: ES)
curl -H "X-API-Key: YOUR_API_KEY" \
  "https://api.parcelgps.com/v1/parcels/0847106VK4704F/score"

Response example

200 OK
{
  "success": true,
  "data": {
    "score": 78.3,
    "rating": "good",
    "recommendation": "Good investment potential. Several indicators are favourable.",
    "components": {
      "solar": 8,
      "agriculture": 0,
      "market": 0,
      "accessibility": 10,
      "risk": 7
    },
    "availableComponents": {
      "solar": true,
      "agriculture": false,
      "market": false,
      "accessibility": true,
      "risk": true
    },
    "riskFactors": [
      "No real-estate market data"
    ],
    "opportunityFactors": [
      "Good solar irradiation"
    ]
  },
  "remainingSearches": 4321
}
GET/v1/parcels/:reference/agriculture

Agricultural use of a parcel from each country’s official register: SIGPAC in Spain, RPG in France and, in Austria, the Netherlands, Czechia and Poland, the crop declared to the paying agency (LPIS/GSA). Main crop, land use and area; slope and altitude in Spain. Urban parcels return "mainCrop": "urbano".

Parameters

:referencestringCadastral reference
countrystringCountry code (query param, default: ES)
curl -H "X-API-Key: YOUR_API_KEY" \
  "https://api.parcelgps.com/v1/parcels/23058A00700036/agriculture"

Response example

200 OK
{
  "success": true,
  "data": {
    "landUse": "Asociación olivar - viñedo",
    "mainCrop": "olivar",
    "areaHa": 10.6045,
    "irrigationCoefficient": 1,
    "plot": {
      "province": 23, "municipality": 58, "polygon": 7, "parcel": 36, "enclosure": 1,
      "meanSlopePct": 12.3, "altitudeM": 559
    },
    "parcel": { "country": "ES", "id": "23:58:0:0:7:36:1", "source": "SIGPAC" },
    "ndvi": { "mean": 0.25, "cropHealth": "low", "updatedAt": "2026-09-20T00:00:00Z", "method": "official" },
    "cropPrice": { "pricePerKgEur": 8.5, "method": "reference_table", "isEstimate": true, "referenceDate": "2025" },
    "nitrateVulnerableZone": { "status": "ok", "intersects": false, "inside": false, "method": "parcel" }
  },
  "remainingSearches": 4321
}

Monthly quota exhausted

429
{
  "success": false,
  "code": "KEY_AUTH_004",
  "message": "Monthly quota used up (5000/5000). Upgrade at https://parcelgps.com/developers"
}
GET/v1/parcels/:reference/subparcels

What is on each part of a parcel: crop subparcels, cadastral land uses or declared crops, with outline when the source has one. Costs 1 unit; 0 when the parcel has none.

Parameters

:referencestringCadastral reference
countrystringCountry code (ES, PV, NA, AT, DE, FR, BE…). Detected from the reference when omitted
langstringLanguage of crop names: es, ca, en, pt, fr, it, de, pl, nl or cs. Falls back to Accept-Language, then English
curl -H "X-API-Key: YOUR_API_KEY" \
  "https://api.parcelgps.com/v1/parcels/46063A00100121/subparcels?lang=en"

Response example

200 OK
{
  "success": true,
  "data": {
    "reference": "46063A00100121",
    "country": "ES",
    "parcelArea": 8814,
    "count": 3,
    "subparcels": [
      {
        "id": "a",
        "cropCode": "G-",
        "crop": "Rainfed carob",
        "cropOriginal": "Algarrobo secano",
        "intensity": 1,
        "area": 6623,
        "geometry": {
          "type": "MultiPolygon",
          "coordinates": [[[[-0.565562, 39.210146], [-0.565712, 39.210254], [-0.565744, 39.210311], [-0.565826, 39.210521], [-0.565927, 39.210772], [-0.565921, 39.21078], [-0.565903, 39.210805], [-0.565932, 39.21084], [-0.565821, 39.210869], [-0.5658, 39.210875], [-0.565665, 39.210902], [-0.565637, 39.210908], [-0.56556, 39.210926], [-0.565212, 39.211014], [-0.565218, 39.211031], [-0.564608, 39.211198], [-0.564595, 39.211177], [-0.564563, 39.211127], [-0.564428, 39.210915], [-0.564683, 39.210791], [-0.564801, 39.210712], [-0.564921, 39.210566], [-0.564944, 39.210435], [-0.564992, 39.210336], [-0.565183, 39.210377], [-0.565354, 39.210393], [-0.565393, 39.21018], [-0.565562, 39.210146]], [[-0.565776, 39.210862], [-0.565752, 39.210796], [-0.565582, 39.210833], [-0.565606, 39.210899], [-0.565776, 39.210862]], [[-0.565497, 39.21036], [-0.565554, 39.210352], [-0.565535, 39.210276], [-0.565478, 39.210284], [-0.565497, 39.21036]], [[-0.565395, 39.210336], [-0.565472, 39.210325], [-0.565462, 39.210286], [-0.565385, 39.210298], [-0.565395, 39.210336]], [[-0.565303, 39.210607], [-0.565372, 39.210614], [-0.56539, 39.210498], [-0.565322, 39.210491], [-0.565325, 39.210468], [-0.565141, 39.210451], [-0.565115, 39.210611], [-0.565299, 39.210629], [-0.565303, 39.210607]], [[-0.565311, 39.21045], [-0.56532, 39.210401], [-0.565171, 39.210384], [-0.565162, 39.210433], [-0.565311, 39.21045]], [[-0.565006, 39.210963], [-0.565075, 39.210963], [-0.565075, 39.210846], [-0.565005, 39.210846], [-0.565005, 39.210823], [-0.56482, 39.210824], [-0.56482, 39.210986], [-0.565006, 39.210985], [-0.565006, 39.210963]], [[-0.564814, 39.211051], [-0.564794, 39.211004], [-0.564651, 39.211042], [-0.564672, 39.211089], [-0.564814, 39.211051]]]]
        }
      },
      {
        "id": "b",
        "cropCode": "NR",
        "crop": "Irrigated citrus",
        "cropOriginal": "Agrios regadío",
        "intensity": 4,
        "area": 1103,
        "geometry": {
          "type": "MultiPolygon",
          "coordinates": [[[[-0.564992, 39.210336], [-0.565022, 39.210273], [-0.565006, 39.210088], [-0.565524, 39.210093], [-0.565562, 39.210146], [-0.565393, 39.21018], [-0.565354, 39.210393], [-0.565183, 39.210377], [-0.564992, 39.210336]]]]
        }
      },
      {
        "id": "c",
        "cropCode": "NR",
        "crop": "Irrigated citrus",
        "cropOriginal": "Agrios regadío",
        "intensity": 4,
        "area": 1015,
        "geometry": {
          "type": "MultiPolygon",
          "coordinates": [[[[-0.565218, 39.211031], [-0.565276, 39.211221], [-0.565148, 39.211217], [-0.564696, 39.21136], [-0.564669, 39.211311], [-0.564608, 39.211198], [-0.565218, 39.211031]]]]
        }
      }
    ]
  }
}

subparcels fields

Spain: every crop subparcel with its outline, foral territories included (Gipuzkoa without outline). Cadastral land use: Austria, Germany (North Rhine-Westphalia, Brandenburg, Lower Saxony, Saxony, Mecklenburg-Western Pomerania, Rhineland-Palatinate and Hamburg), Czechia, Estonia and Greece. Declared crops crossed with the parcel: France, Portugal, Sweden, Switzerland, Finland, Belgium, Ireland, Estonia, Poland, Denmark, Slovakia and Italy (South Tyrol). Land cover crossed with the parcel: Netherlands, Slovenia and Bulgaria. Estonian land types and Greece come without outline. In other countries the answer is count 0 and nothing is charged.

countintegerNumber of subparcels (0 when there are none; the list is empty)
subparcels[].idstringSubparcel code (a, b, c…)
subparcels[].cropCodestringStable code: the Catastro code in Spain (G-, NR); elsewhere prefixed with its source (NA:1501, AT:41, FR:RPG:BTH, BE:311). Full list in GET /v1/reference/crops
subparcels[].cropstringCrop in the requested language (lang or Accept-Language; English by default)
subparcels[].cropOriginalstringCrop or land use exactly as the source writes it, in its own language
subparcels[].intensityintegerProductive intensity (integer). Optional
subparcels[].areaintegerArea in m² (integer)
subparcels[].landTypestringLand type (dry, irrigated…). Foral territories only
subparcels[].landClassstringLand class. Foral territories only
subparcels[].kindstringWhat the row is: cadastral (official part of the parcel), declaredCrop (a declared farm field crossed with the parcel) or landCover (mapped cover crossed with the parcel)
subparcels[].useClassstringCommon land-use class across countries (arable, grassland, forest…; list in GET /v1/reference/crops)
subparcels[].useClassNamestringuseClass in the requested language
subparcels[].sourcestringWho publishes the data, its licence and the date. Not sent in Spain outside the foral territories
subparcels[].geometryGeoJSONGeoJSON polygon (Polygon or MultiPolygon) in WGS84. Omitted when there is no geometry

Possible errors

CodeHTTPDescription
VALIDATION_ERROR400The reference does not have a valid format for the country.
NOT_FOUND404Reference not found in the official cadastre
CNV_COVERAGE422The reference is in a country we do not cover
KEY_AUTH_004429Monthly API key quota exhausted (see the X-Quota-* headers).
SUB_001503The source of the subparcels did not answer. Nothing is charged; retry in a few seconds
SERVICE_UNAVAILABLE503The official cadastral service of the country is down or under maintenance. Retry.
GET/v1/parcels/:reference/sigpac

Every SIGPAC enclosure of the parcel: identifier, SIGPAC land use in 10 languages, area, irrigation coefficient, slope, altitude, CAP data, incidents and the GeoJSON outline of each enclosure. With format=geojson you download a FeatureCollection. Costs 1 unit; 0 when there are no enclosures.

Parameters

:referencestringCadastral reference
countrystringES, PV or NA. Detected from the reference when omitted
langstringLanguage of crop names: es, ca, en, pt, fr, it, de, pl, nl or cs. Falls back to Accept-Language, then English
formatstringgeojson: downloads a FeatureCollection (application/geo+json) instead of the JSON
curl -H "X-API-Key: YOUR_API_KEY" \
  "https://api.parcelgps.com/v1/parcels/46063A00100121/sigpac?format=geojson" -o recintos.geojson

Response example

200 OK
{
  "success": true,
  "data": {
    "reference": "46063A00100121",
    "country": "ES",
    "sigpacParcel": {
      "province": 46,
      "municipality": 63,
      "aggregate": 0,
      "zone": 0,
      "polygon": 1,
      "parcel": 121
    },
    "match": "reference",
    "count": 9,
    "totalAreaHa": 0.8815,
    "crs": "EPSG:4258 (ETRS89, lon/lat; equal to WGS84 within about 1 m)",
    "retrievedAt": "2026-10-22T18:12:16Z",
    "source": {
      "name": "SIGPAC — Sistema de Información Geográfica de Parcelas Agrícolas",
      "provider": "Fondo Español de Garantía Agraria (FEGA), Ministerio de Agricultura, Pesca y Alimentación",
      "license": "Free reuse citing the source, without altering the content (Ley 37/2007; FEGA legal notice)",
      "attribution": "Fuente: FEGA — SIGPAC",
      "url": "https://sigpac-hubcloud.es/servicioconsultassigpac/"
    },
    "enclosures": [ /* 9 enclosures; 2 shown */
      {
        "id": "46:63:0:0:1:121:2",
        "province": 46,
        "municipality": 63,
        "aggregate": 0,
        "zone": 0,
        "polygon": 1,
        "parcel": 121,
        "enclosure": 2,
        "landUseCode": "FY",
        "landUse": "Fruit trees",
        "cropCode": "SIGPAC:FY",
        "useClass": "orchard",
        "useClassName": "Orchard",
        "areaHa": 0.0513,
        "irrigationPct": 0,
        "meanSlopePct": 7.6,
        "altitudeM": 117,
        "pastureEligibilityPct": null,
        "capRegion": 12,
        "incidents": [
          {
            "code": 199,
            "description": "Recinto inactivo"
          }
        ],
        "geometry": {
          "type": "Polygon",
          "coordinates": [
            [
              [
                -0.565456,
                39.210781
              ],
              [
                -0.565454,
                39.21083
              ],
              [
                -0.56541,
                39.210832
              ],
              [
                -0.565421,
                39.210875
              ],
              [
                -0.565424,
                39.210884
              ],
              [
                -0.565079,
                39.210985
              ],
              [
                -0.565081,
                39.210839
              ],
              [
                -0.565052,
                39.210838
              ],
              [
                -0.565049,
                39.210816
              ],
              [
                -0.565069,
                39.21079
              ],
              [
                -0.565456,
                39.210781
              ]
            ]
          ]
        }
      },
      {
        "id": "46:63:0:0:1:121:9",
        "province": 46,
        "municipality": 63,
        "aggregate": 0,
        "zone": 0,
        "polygon": 1,
        "parcel": 121,
        "enclosure": 9,
        "landUseCode": "CI",
        "landUse": "Citrus",
        "cropCode": "SIGPAC:CI",
        "useClass": "orchard",
        "useClassName": "Orchard",
        "areaHa": 0.0039,
        "irrigationPct": 100,
        "meanSlopePct": 12.8,
        "altitudeM": 116,
        "pastureEligibilityPct": null,
        "capRegion": 12,
        "incidents": [
          {
            "code": 199,
            "description": "Recinto inactivo"
          },
          {
            "code": 74,
            "description": "Información de uso SIGPAC aportada por la Comunidad Autónoma"
          },
          {
            "code": 75,
            "description": "Información del sistema de explotación aportada por la Comunidad Autónoma"
          }
        ],
        "geometry": {
          "type": "Polygon",
          "coordinates": [
            [
              [
                -0.565492,
                39.210857
              ],
              [
                -0.565514,
                39.210906
              ],
              [
                -0.565439,
                39.210926
              ],
              [
                -0.565424,
                39.210884
              ],
              [
                -0.565421,
                39.210875
              ],
              [
                -0.565492,
                39.210857
              ]
            ]
          ]
        }
      }
    ]
  },
  "remainingSearches": 4321
}

sigpac

Spain, the Basque Country and Navarre. Source: FEGA SIGPAC, free reuse citing the source. For rustic references we read the SIGPAC parcel with the same polygon and parcel; otherwise the one under the cadastral parcel's point (match). It usually matches the cadastral parcel but may differ after recent cadastral changes.

countintegerNumber of enclosures (0 when there are none; the list is empty)
matchstringreference: same parcel as the cadastral reference. point: the SIGPAC parcel under the parcel's point
enclosures[].idstringIdentifier province:municipality:aggregate:zone:polygon:parcel:enclosure (each part also on its own)
enclosures[].landUseCodestringSIGPAC land-use code (TA, OV, VI, FY, PS…) and its name in your language; cropCode is the code in GET /v1/reference/crops
enclosures[].areaHanumberArea of the enclosure in hectares
enclosures[].irrigationPctnumber | nullIrrigation coefficient of the enclosure, 0–100. 0 = rainfed; null when SIGPAC does not apply one
enclosures[].meanSlopePctnumber | nullMean slope (%) and altitude (m)
enclosures[].pastureEligibilityPctnumber | nullCAP pasture eligibility coefficient (0–100) and CAP region; null where it does not apply
enclosures[].incidentsarraySIGPAC incidents: code and official FEGA text (in Spanish)
enclosures[].geometryGeoJSONGeoJSON outline of the enclosure (Polygon or MultiPolygon), lon/lat ETRS89
sourceobjectSource, licence and attribution (FEGA SIGPAC)

Possible errors

CodeHTTPDescription
VALIDATION_ERROR400The reference does not have a valid format for the country.
NOT_FOUND404Reference not found in the official cadastre
CNV_COVERAGE422The reference is not in Spain (SIGPAC covers Spain only)
KEY_AUTH_004429Monthly API key quota exhausted (see the X-Quota-* headers).
SIG_001503SIGPAC did not answer. Nothing is charged; retry in a few seconds
SERVICE_UNAVAILABLE503The official cadastral service of the country is down or under maintenance. Retry.
GET/v1/reference/crops

Crop code catalogue with names in the 10 languages. Free, no API key, no units; cacheable for a day.

Parameters

langstringLanguage of crop names: es, ca, en, pt, fr, it, de, pl, nl or cs. Falls back to Accept-Language, then English
curl "https://api.parcelgps.com/v1/reference/crops?lang=en"

Response example

200 OK
{
  "success": true,
  "data": {
    "locale": "en",
    "locales": [
      "es",
      "ca",
      "en",
      "pt",
      "fr",
      "it",
      "de",
      "pl",
      "nl",
      "cs"
    ],
    "sources": [
      "ES",
      "AL",
      "BI",
      "GI",
      "NA"
    ],
    "count": 256,
    "crops": [
      {
        "code": "G-",
        "source": "ES",
        "name": "Rainfed carob",
        "original": "Algarrobo secano",
        "labels": {"es": "Algarrobo de secano", "ca": "Garrofer de secà", "en": "Rainfed carob", "pt": "Alfarrobeiral de sequeiro", "fr": "Caroubier en sec", "it": "Carrubeto asciutto", "de": "Johannisbrot (Trockenbau)", "pl": "Szarańczyn nienawadniany", "nl": "Johannesbrood (droog)", "cs": "Rohovník bez závlahy"}
      },
      {
        "code": "NR",
        "source": "ES",
        "name": "Irrigated citrus",
        "original": "Agrios regadío",
        "labels": {"es": "Cítricos de regadío", "ca": "Cítrics de regadiu", "en": "Irrigated citrus", "pt": "Citrinos de regadio", "fr": "Agrumes irrigués", "it": "Agrumeto irriguo", "de": "Zitrus (bewässert)", "pl": "Cytrusy nawadniane", "nl": "Citrus (geïrrigeerd)", "cs": "Citrusy se závlahou"}
      },
      {
        "code": "NA:1501",
        "source": "NA",
        "name": "Rainfed arable land",
        "original": "T. labor secano",
        "labels": {"es": "Tierra de labor de secano", "ca": "Terra de conreu de secà", "en": "Rainfed arable land", "pt": "Terra arável de sequeiro", "fr": "Terre arable en sec", "it": "Seminativo asciutto", "de": "Ackerland (Trockenbau)", "pl": "Grunty orne nienawadniane", "nl": "Akkerland (droog)", "cs": "Orná půda bez závlahy"}
      }
    ]
  }
}
Show the 256 codes

Every cropCode the API can return, with its name in each language.

CodeSourceCadastre labelescaenptfritdeplnlcs
C-ESLabor o Labradío secanoTierra de labor de secanoTerra de conreu de secàRainfed arable landTerra arável de sequeiroTerre arable en secSeminativo asciuttoAckerland (Trockenbau)Grunty orne nienawadnianeAkkerland (droog)Orná půda bez závlahy
E-ESPastosPastosPasturesPasturePastagensPâturagesPascoloWeidePastwiskaWeilandPastviny
MTESMatorralMatorralMatollScrublandMatoBroussaillesMacchiaGestrüppZaroślaStruikgewasKřoviny
PDESPrados o praderasPrados o praderasPratsMeadowsPradosPrairiesPratiWiesenŁąkiGraslandenLouky
I-ESImproductivoImproductivoImproductiuUnproductive landImprodutivoImproductifImproduttivoUnproduktive FlächeNieużytkiOnproductiefNeplodná půda
MMESPinar maderablePinar maderablePineda per a fustaTimber pine forestPinhal para madeiraPinède à boisPineta da legnameKiefernwald (Holz)Bór sosnowy (drewno)Dennenbos (hout)Borový les (dřevo)
O-ESOlivos secanoOlivar de secanoOlivera de secàRainfed olive groveOlival de sequeiroOliveraie en secOliveto asciuttoOlivenhain (Trockenbau)Gaj oliwny nienawadnianyOlijfgaard (droog)Olivový háj bez závlahy
CRESLabor o labradío regadíoTierra de labor de regadíoTerra de conreu de regadiuIrrigated arable landTerra arável de regadioTerre arable irriguéeSeminativo irriguoAckerland (bewässert)Grunty orne nawadnianeAkkerland (geïrrigeerd)Orná půda se závlahou
MBESMonte bajoMonte bajoBosc baixLow woodlandMata baixaTaillisBosco ceduoNiederwaldLas niskiHakhoutNízký les
VTESVía de comunicación de dominio públicoVía de comunicación públicaVia de comunicació públicaPublic roadVia de comunicação públicaVoie publiqueStrada pubblicaÖffentlicher VerkehrswegDroga publicznaOpenbare wegVeřejná komunikace
V-ESViña secanoViña de secanoVinya de secàRainfed vineyardVinha de sequeiroVigne en secVigneto asciuttoWeinberg (Trockenbau)Winnica nienawadnianaWijngaard (droog)Vinice bez závlahy
EUESEucaliptusEucaliptosEucaliptusEucalyptusEucaliptalEucalyptusEucaliptoEukalyptusEukaliptusEucalyptusEukalyptus
AMESAlmendro secanoAlmendro de secanoAmetller de secàRainfed almondAmendoal de sequeiroAmandier en secMandorleto asciuttoMandeln (Trockenbau)Migdałowiec nienawadnianyAmandel (droog)Mandloně bez závlahy
FGESRobledalRobledalRouredaOak woodlandCarvalhalChênaieQuercetoEichenwaldDąbrowaEikenbosDoubrava
NRESAgrios regadíoCítricos de regadíoCítrics de regadiuIrrigated citrusCitrinos de regadioAgrumes irriguésAgrumeto irriguoZitrus (bewässert)Cytrusy nawadnianeCitrus (geïrrigeerd)Citrusy se závlahou
RIESArboles de riberaÁrboles de riberaArbres de riberaRiverside treesGaleria ripícolaRipisylveVegetazione riparialeAuwaldZadrzewienia nadrzeczneOeverbosBřehové porosty
HGESHidrografía natural (río,laguna,arroyo.)Hidrografía natural (río, laguna, arroyo)Hidrografia natural (riu, llacuna, rierol)Natural water (river, lagoon, stream)Hidrografia natural (rio, lagoa, ribeiro)Eaux naturelles (rivière, lagune, ruisseau)Idrografia naturale (fiume, laguna, torrente)Natürliches Gewässer (Fluss, Lagune, Bach)Wody naturalne (rzeka, laguna, strumień)Natuurlijk water (rivier, lagune, beek)Přírodní vody (řeka, laguna, potok)
F-ESFrutales secanoFrutales de secanoFruiters de secàRainfed fruit treesPomar de sequeiroVergers en secFrutteto asciuttoObstbäume (Trockenbau)Sad nienawadnianyFruitbomen (droog)Sad bez závlahy
PRESPrado o Praderas de regadíoPrados de regadíoPrats de regadiuIrrigated meadowsPrados de regadioPrairies irriguéesPrati irriguiWiesen (bewässert)Łąki nawadnianeGraslanden (geïrrigeerd)Louky se závlahou
FRESFrutales regadíoFrutales de regadíoFruiters de regadiuIrrigated fruit treesPomar de regadioVergers irriguésFrutteto irriguoObstbäume (bewässert)Sad nawadnianyFruitbomen (geïrrigeerd)Sad se závlahou
ORESOlivos regadíoOlivar de regadíoOlivera de regadiuIrrigated olive groveOlival de regadioOliveraie irriguéeOliveto irriguoOlivenhain (bewässert)Gaj oliwny nawadnianyOlijfgaard (geïrrigeerd)Olivový háj se závlahou
FCESCastañarCastañarCastanyedaChestnut groveSoutoChâtaigneraieCastagnetoKastanienhainGaj kasztanowyKastanjebosKaštanový háj
HRESHuerta regadíoHuerta de regadíoHorta de regadiuIrrigated vegetable gardenHorta de regadioPotager irriguéOrto irriguoGemüsegarten (bewässert)Ogród warzywny nawadnianyMoestuin (geïrrigeerd)Zelinářská zahrada se závlahou
FEESEncinarEncinarAlzinarHolm oak woodlandAzinhalChênaie verteLeccetaSteineichenwaldLas dębu ostrolistnegoSteeneikenbosLes dubu cesmínovitého
MRESPinar resinablePinar resineroPineda resineraResin pine forestPinhal para resinaPinède à résinePineta da resinaKiefernwald (Harz)Bór sosnowy (żywica)Dennenbos (hars)Borový les (pryskyřice)
G-ESAlgarrobo secanoAlgarrobo de secanoGarrofer de secàRainfed carobAlfarrobeiral de sequeiroCaroubier en secCarrubeto asciuttoJohannisbrot (Trockenbau)Szarańczyn nienawadnianyJohannesbrood (droog)Rohovník bez závlahy
HCESHidrografía construida (embalse,canal..)Hidrografía construida (embalse, canal)Hidrografia construïda (embassament, canal)Built water (reservoir, canal)Hidrografia construída (albufeira, canal)Eaux aménagées (retenue, canal)Idrografia artificiale (invaso, canale)Künstliches Gewässer (Stausee, Kanal)Wody sztuczne (zbiornik, kanał)Aangelegd water (stuwmeer, kanaal)Umělé vody (nádrž, kanál)
MFESEspecies mezcladasEspecies mezcladasEspècies barrejadesMixed speciesEspécies mistasEssences mélangéesSpecie misteMischbestandGatunki mieszaneGemengde soortenSmíšené dřeviny
ARESAlmendro regadíoAlmendro de regadíoAmetller de regadiuIrrigated almondAmendoal de regadioAmandier irriguéMandorleto irriguoMandeln (bewässert)Migdałowiec nawadnianyAmandel (geïrrigeerd)Mandloně se závlahou
VRESViñedos regadíoViña de regadíoVinya de regadiuIrrigated vineyardVinha de regadioVigne irriguéeVigneto irriguoWeinberg (bewässert)Winnica nawadnianaWijngaard (geïrrigeerd)Vinice se závlahou
CEESLabor o labradío con encinas secanoTierra de labor con encinas de secanoTerra de conreu amb alzines de secàRainfed arable land with holm oaksTerra arável com azinheiras de sequeiroTerre arable avec chênes verts en secSeminativo arborato a leccio asciuttoAckerland mit Steineichen (Trockenbau)Grunty orne z dębem ostrolistnym nienawadnianeAkkerland met steeneiken (droog)Orná půda s duby cesmínovitými bez závlahy
IHESInvernaderos hortalizasInvernadero de hortalizasHivernacle d'hortalissesVegetable greenhouseEstufa de hortícolasSerre maraîchèreSerra di ortaggiGemüse-GewächshausSzklarnia warzywnaGroentekasSkleník se zeleninou
FSESAlcornocalAlcornocalSuredaCork oak woodlandMontado de sobroSuberaieSugheretaKorkeichenwaldLas dębu korkowegoKurkeikenbosLes korkového dubu
MPESPinar pinea o de frutoPinar piñoneroPineda de pi pinyerStone pine forestPinhal mansoPinède de pins pignonsPineta di pino domesticoPinienwaldBór sosny piniiParasoldennenbosLes borovice pinie
A-ESArrozales regadíoArrozal de regadíoArrossar de regadiuIrrigated rice fieldArrozal de regadioRizière irriguéeRisaia irriguaReisfeld (bewässert)Pole ryżowe nawadnianeRijstveld (geïrrigeerd)Rýžové pole se závlahou
FAESFrutales Tropicales o SubtropicalesFrutales tropicales o subtropicalesFruiters tropicals o subtropicalsTropical or subtropical fruit treesFruteiras tropicais ou subtropicaisArbres fruitiers tropicaux ou subtropicauxFrutteti tropicali o subtropicaliTropische oder subtropische ObstbäumeDrzewa owocowe tropikalne lub subtropikalneTropische of subtropische fruitbomenTropické nebo subtropické ovocné stromy
ATESEspartizal o atocharEspartizal o atocharEspartarEsparto grasslandEsparteiralSteppe à alfaSpartetoEspartograsflurMurawa ostrzycowa (esparto)EspartograslandPorost kavylu esparto
PTESPlátanos regadíoPlataneras de regadíoPlataners de regadiuIrrigated banana plantationBananal de regadioBananeraie irriguéeBananeto irriguoBananenplantage (bewässert)Plantacja bananów nawadnianaBananenplantage (geïrrigeerd)Banánová plantáž se závlahou
CFESLabor o labradío con frutales regadíoTierra de labor con frutales de regadíoTerra de conreu amb fruiters de regadiuIrrigated arable land with fruit treesTerra arável com fruteiras de regadioTerre arable avec arbres fruitiers irriguéeSeminativo arborato a frutteto irriguoAckerland mit Obstbäumen (bewässert)Grunty orne z drzewami owocowymi nawadnianeAkkerland met fruitbomen (geïrrigeerd)Orná půda s ovocnými stromy se závlahou
VOESViña olivar secanoViña y olivar de secanoVinya i olivera de secàRainfed vineyard and olive groveVinha e olival de sequeiroVigne et oliveraie en secVigneto e oliveto asciuttoWein und Oliven (Trockenbau)Winnica z oliwkami nienawadnianaWijngaard en olijfgaard (droog)Vinice s olivami bez závlahy
HEESHuerta especialHuerta especialHorta especialSpecial vegetable gardenHorta especialPotager spécialOrto specialeSondergemüsegartenOgród warzywny specjalnyBijzondere moestuinZvláštní zelinářská zahrada
EEESPastos con encinasPastos con encinasPastures amb alzinesPasture with holm oaksPastagens com azinheirasPâturages avec chênes vertsPascolo arborato a leccioWeide mit SteineichenPastwiska z dębem ostrolistnymWeiland met steeneikenPastviny s duby cesmínovitými
AVESAvellano regadíoAvellano de regadíoAvellaner de regadiuIrrigated hazelnutAveleira de regadioNoisetier irriguéNoccioleto irriguoHaselnuss (bewässert)Leszczyna nawadnianaHazelaar (geïrrigeerd)Líska se závlahou
R-ESHigueras secanoHigueras de secanoFigueres de secàRainfed fig treesFigueiral de sequeiroFiguiers en secFicheto asciuttoFeigenbäume (Trockenbau)Figowce nienawadnianeVijgenbomen (droog)Fíkovníky bez závlahy
FFESVía férreaVía férreaVia fèrriaRailwayVia férreaVoie ferréeFerroviaBahnstreckeLinia kolejowaSpoorwegŽeleznice
OTESOtrosOtrosAltresOtherOutrosAutresAltroSonstigeInneOverigOstatní
FHESHayaHayedoFagedaBeech forestFaialHêtraieFaggetaBuchenwaldBuczynaBeukenbosBukový les
VPESParrales regadíoParral de regadíoParral de regadiuIrrigated trellised vinesLatada de regadioTreille irriguéePergolato irriguoPergolareben (bewässert)Winorośl na pergoli nawadnianaPergoladruiven (geïrrigeerd)Pergolová vinná réva se závlahou
MIESMimbreras o cañaveralesMimbreras o cañaveralesVimeneres o canyarsOsier beds or reed bedsVimeiros ou canaviaisOseraies ou roselièresVincheti o cannetiWeidenkulturen oder RöhrichtWikliny lub trzcinowiskaGriendhout of rietlandVrbiny nebo rákosiny
PZESPozos,Balsas,Charcas,SondeosPozos, balsas, charcas y sondeosPous, basses, tolls i sondejosWells, ponds, pools and boreholesPoços, charcas e furosPuits, bassins, mares et foragesPozzi, vasche, stagni e sondaggiBrunnen, Becken, Tümpel und BohrungenStudnie, zbiorniki, oczka i odwiertyPutten, bekkens, poelen en boringenStudny, nádrže, tůně a vrty
ZEESEncinas derecho vueloEncinas (derecho de vuelo)Alzines (dret de vol)Holm oaks (rights over the trees)Azinheiras (direito sobre o arvoredo)Chênes verts (droit sur les arbres)Lecci (diritto sugli alberi)Steineichen (Recht an den Bäumen)Dęby ostrolistne (prawo do drzew)Steeneiken (recht op de bomen)Duby cesmínovité (právo ke stromům)
CXESDerecho de siembraDerecho de siembraDret de sembraSowing rightsDireito de sementeiraDroit d'ensemencementDiritto di seminaSaatrechtPrawo do zasiewuZaairechtPrávo osevu
ZCESCastaños derecho vueloCastaños (derecho de vuelo)Castanyers (dret de vol)Chestnut trees (rights over the trees)Castanheiros (direito sobre o arvoredo)Châtaigniers (droit sur les arbres)Castagni (diritto sugli alberi)Kastanien (Recht an den Bäumen)Kasztany (prawo do drzew)Kastanjes (recht op de bomen)Kaštanovníky (právo ke stromům)
CPESDerecho de pastosDerecho de pastosDret de pasturesGrazing rightsDireito de pastagemDroit de pâturageDiritto di pascoloWeiderechtPrawo wypasuWeiderechtPrávo pastvy
CKESCereal riego agua compradaCereal de regadío con agua compradaCereal de regadiu amb aigua compradaCereal irrigated with bought waterCereal de regadio com água compradaCéréales irriguées à l'eau achetéeCereali irrigui con acqua acquistataGetreide (bewässert, Zukaufwasser)Zboże nawadniane wodą kupowanąGraan (geïrrigeerd, gekocht water)Obilí zavlažované kupovanou vodou
HSESHuerta secanoHuerta de secanoHorta de secàRainfed vegetable gardenHorta de sequeiroPotager en secOrto asciuttoGemüsegarten (Trockenbau)Ogród warzywny nienawadnianyMoestuin (droog)Zelinářská zahrada bez závlahy
CNESCereal secano abancaladoCereal de secano en bancalesCereal de secà en feixesRainfed terraced cerealCereal de sequeiro em socalcosCéréales en sec en terrassesCereali asciutti terrazzatiGetreide auf Terrassen (Trockenbau)Zboże tarasowe nienawadnianeGraan op terrassen (droog)Obilí na terasách bez závlahy
CQESCereal secano boqueraCereal de secano de boqueraCereal de secà de boqueraRainfed cereal with flood channelsCereal de sequeiro com levadasCéréales en sec à irrigation par crueCereali asciutti a irrigazione di pienaGetreide mit Flutbewässerung (Trockenbau)Zboże nienawadniane z kanałami zalewowymiGraan met vloedirrigatie (droog)Obilí s přívalovou závlahou
MSESSabinaSabinarSavinarJuniper woodlandZimbralGenévrièreGinepretoWacholderwaldLas jałowcowyJeneverbesbosJalovcový porost
CHESChumberas secanoChumberas de secanoFigueres de moro de secàRainfed prickly pearFigueira-da-índia de sequeiroFiguiers de Barbarie en secFicodindieto asciuttoFeigenkakteen (Trockenbau)Opuncja nienawadnianaVijgcactus (droog)Opuncie bez závlahy
CGESLabor o labradío con robles secanoTierra de labor con robles de secanoTerra de conreu amb roures de secàRainfed arable land with oaksTerra arável com carvalhos de sequeiroTerre arable avec chênes en secSeminativo arborato a quercia asciuttoAckerland mit Eichen (Trockenbau)Grunty orne z dębami nienawadnianeAkkerland met eiken (droog)Orná půda s duby bez závlahy
INESInvernaderos en generalInvernaderos en generalHivernacles en generalGreenhouses (general)Estufas em geralSerres (général)Serre in genereGewächshäuser (allgemein)Szklarnie (ogólne)Kassen (algemeen)Skleníky (obecně)
NKESAgrios riego agua compradaCítricos de regadío con agua compradaCítrics de regadiu amb aigua compradaCitrus irrigated with bought waterCitrinos de regadio com água compradaAgrumes irrigués à l'eau achetéeAgrumi irrigui con acqua acquistataZitrus (bewässert, Zukaufwasser)Cytrusy nawadniane wodą kupowanąCitrus (geïrrigeerd, gekocht water)Citrusy zavlažované kupovanou vodou
SEESEncinas derecho sueloEncinas (derecho de suelo)Alzines (dret de sòl)Holm oaks (rights over the land)Azinheiras (direito sobre o solo)Chênes verts (droit sur le sol)Lecci (diritto sul suolo)Steineichen (Recht am Boden)Dęby ostrolistne (prawo do gruntu)Steeneiken (recht op de grond)Duby cesmínovité (právo k půdě)
CAESCanteraCanteraPedreraQuarryPedreiraCarrièreCavaSteinbruchKamieniołomGroeveLom
IRESPlantas industriales regadíoCultivos industriales de regadíoConreus industrials de regadiuIrrigated industrial cropsCulturas industriais de regadioCultures industrielles irriguéesColture industriali irrigueIndustriepflanzen (bewässert)Rośliny przemysłowe nawadnianeIndustriegewassen (geïrrigeerd)Technické plodiny se závlahou
RRESHigueras regadíoHigueras de regadíoFigueres de regadiuIrrigated fig treesFigueiral de regadioFiguiers irriguésFicheto irriguoFeigenbäume (bewässert)Figowce nawadnianeVijgenbomen (geïrrigeerd)Fíkovníky se závlahou
AOESAvellanos secanoAvellanos de secanoAvellaners de secàRainfed hazelnutAveleiras de sequeiroNoisetiers en secNoccioleto asciuttoHaselnuss (Trockenbau)Leszczyna nienawadnianaHazelaar (droog)Líska bez závlahy
TOESOlivos pies sueltosOlivos (pies sueltos)Oliveres (peus solts)Olive trees (scattered trees)Oliveiras (árvores dispersas)Oliviers (arbres épars)Olivi (piante sparse)Olivenbäume (Einzelbäume)Oliwki (drzewa rozproszone)Olijfbomen (verspreide bomen)Olivovníky (roztroušené stromy)
KEESEncinar pies sueltosEncinas (pies sueltos)Alzines (peus solts)Holm oaks (scattered trees)Azinheiras (árvores dispersas)Chênes verts (arbres épars)Lecci (piante sparse)Steineichen (Einzelbäume)Dęby ostrolistne (drzewa rozproszone)Steeneiken (verspreide bomen)Duby cesmínovité (roztroušené stromy)
PMESPalmera secanoPalmeras de secanoPalmeres de secàRainfed palm treesPalmeiras de sequeiroPalmiers en secPalmeto asciuttoPalmen (Trockenbau)Palmy nienawadnianePalmen (droog)Palmy bez závlahy
HKESHuerta riego agua compradaHuerta de regadío con agua compradaHorta de regadiu amb aigua compradaVegetable garden irrigated with bought waterHorta de regadio com água compradaPotager irrigué à l'eau achetéeOrto irriguo con acqua acquistataGemüsegarten (bewässert, Zukaufwasser)Ogród warzywny nawadniany wodą kupowanąMoestuin (geïrrigeerd, gekocht water)Zelinářská zahrada zavlažovaná kupovanou vodou
OZESOlivar secano -vuelo-Olivar de secano (derecho de vuelo)Olivera de secà (dret de vol)Rainfed olive grove (rights over the trees)Olival de sequeiro (direito sobre o arvoredo)Oliveraie en sec (droit sur les arbres)Oliveto asciutto (diritto sugli alberi)Olivenhain, Trockenbau (Recht an den Bäumen)Gaj oliwny nienawadniany (prawo do drzew)Olijfgaard, droog (recht op de bomen)Olivový háj bez závlahy (právo ke stromům)
OYESOlivar -suelo-Olivar (derecho de suelo)Olivera (dret de sòl)Olive grove (rights over the land)Olival (direito sobre o solo)Oliveraie (droit sur le sol)Oliveto (diritto sul suolo)Olivenhain (Recht am Boden)Gaj oliwny (prawo do gruntu)Olijfgaard (recht op de grond)Olivový háj (právo k půdě)
EAESEdificaciones agrariasEdificaciones agrariasEdificacions agràriesFarm buildingsEdificações agrícolasBâtiments agricolesFabbricati ruraliLandwirtschaftliche GebäudeBudynki gospodarczeLandbouwgebouwenZemědělské stavby
GRESAlgarrobos de regadíoAlgarrobos de regadíoGarrofers de regadiuIrrigated carobAlfarrobeiral de regadioCaroubiers irriguésCarrubeto irriguoJohannisbrot (bewässert)Szarańczyn nawadnianyJohannesbrood (geïrrigeerd)Rohovník se závlahou
EOESPastos con OlivosPastos con olivosPastures amb oliveresPasture with olive treesPastagens com oliveirasPâturages avec oliviersPascolo arborato a olivoWeide mit OlivenbäumenPastwiska z oliwkamiWeiland met olijfbomenPastviny s olivovníky
ESESErial -suelo-Erial (derecho de suelo)Erm (dret de sòl)Wasteland (rights over the land)Baldio (direito sobre o solo)Friche (droit sur le sol)Incolto (diritto sul suolo)Ödland (Recht am Boden)Nieużytek (prawo do gruntu)Braakland (recht op de grond)Úhor (právo k půdě)
CBESCereal riego agua elevadaCereal de regadío con agua elevadaCereal de regadiu amb aigua elevadaCereal irrigated with pumped waterCereal de regadio com água elevadaCéréales irriguées à l'eau pompéeCereali irrigui con acqua sollevataGetreide (bewässert, Pumpwasser)Zboże nawadniane wodą pompowanąGraan (geïrrigeerd, opgepompt water)Obilí zavlažované čerpanou vodou
VKESParral riego agua compradaParral de regadío con agua compradaParral de regadiu amb aigua compradaTrellised vines irrigated with bought waterLatada de regadio com água compradaTreille irriguée à l'eau achetéePergolato irriguo con acqua acquistataPergolareben (bewässert, Zukaufwasser)Winorośl na pergoli nawadniana wodą kupowanąPergoladruiven (geïrrigeerd, gekocht water)Pergolová réva zavlažovaná kupovanou vodou
IFESInvernaderos floresInvernadero de floresHivernacle de florsFlower greenhouseEstufa de floresSerre floraleSerra di fioriBlumen-GewächshausSzklarnia kwiatowaBloemenkasSkleník s květinami
ABESHuerta riego arenada agua elevadaHuerta enarenada de regadío con agua elevadaHorta enarenada de regadiu amb aigua elevadaSand-mulched vegetable garden irrigated with pumped waterHorta enareada de regadio com água elevadaPotager sablé irrigué à l'eau pompéeOrto sabbiato irriguo con acqua sollevataSandbedeckter Gemüsegarten (bewässert, Pumpwasser)Ogród warzywny na piasku nawadniany wodą pompowanąMoestuin met zandlaag (geïrrigeerd, opgepompt water)Zelinářská zahrada s pískovým mulčem zavlažovaná čerpanou vodou
PAESPlantas aromáticasPlantas aromáticasPlantes aromàtiquesAromatic plantsPlantas aromáticasPlantes aromatiquesPiante aromaticheGewürzpflanzenRośliny aromatyczneAromatische plantenAromatické rostliny
SCESCastaños derecho sueloCastaños (derecho de suelo)Castanyers (dret de sòl)Chestnut trees (rights over the land)Castanheiros (direito sobre o solo)Châtaigniers (droit sur le sol)Castagni (diritto sul suolo)Kastanien (Recht am Boden)Kasztany (prawo do gruntu)Kastanjes (recht op de grond)Kaštanovníky (právo k půdě)
FKESFrutales riego agua compradaFrutales de regadío con agua compradaFruiters de regadiu amb aigua compradaFruit trees irrigated with bought waterPomar de regadio com água compradaVergers irrigués à l'eau achetéeFrutteto irriguo con acqua acquistataObstbäume (bewässert, Zukaufwasser)Sad nawadniany wodą kupowanąFruitbomen (geïrrigeerd, gekocht water)Sad zavlažovaný kupovanou vodou
NBESAgrios riego agua elevadaCítricos de regadío con agua elevadaCítrics de regadiu amb aigua elevadaCitrus irrigated with pumped waterCitrinos de regadio com água elevadaAgrumes irrigués à l'eau pompéeAgrumi irrigui con acqua sollevataZitrus (bewässert, Pumpwasser)Cytrusy nawadniane wodą pompowanąCitrus (geïrrigeerd, opgepompt water)Citrusy zavlažované čerpanou vodou
HBESHuerta riego agua elevadaHuerta de regadío con agua elevadaHorta de regadiu amb aigua elevadaVegetable garden irrigated with pumped waterHorta de regadio com água elevadaPotager irrigué à l'eau pompéeOrto irriguo con acqua sollevataGemüsegarten (bewässert, Pumpwasser)Ogród warzywny nawadniany wodą pompowanąMoestuin (geïrrigeerd, opgepompt water)Zelinářská zahrada zavlažovaná čerpanou vodou
VBESParral riego agua elevadaParral de regadío con agua elevadaParral de regadiu amb aigua elevadaTrellised vines irrigated with pumped waterLatada de regadio com água elevadaTreille irriguée à l'eau pompéePergolato irriguo con acqua sollevataPergolareben (bewässert, Pumpwasser)Winorośl na pergoli nawadniana wodą pompowanąPergoladruiven (geïrrigeerd, opgepompt water)Pergolová réva zavlažovaná čerpanou vodou
SMESSalinas marítimasSalinas marítimasSalines marítimesSea salt pansSalinas marinhasSalines maritimesSaline marittimeMeeressalinenWarzelnie soli morskiejZoutpannen aan zeeMořské solivary
MAESAbetoAbetalAvetosaFir forestAbetalSapinièreAbetinaTannenwaldLas jodłowyZilversparrenbosJedlový les
STESSalinas continentalesSalinas de interiorSalines d'interiorInland salt pansSalinas interioresSalines continentalesSaline interneBinnensalinenWarzelnie soli śródlądoweZoutpannen in het binnenlandVnitrozemské solivary
CTESCereal secano -suelo-Cereal de secano (derecho de suelo)Cereal de secà (dret de sòl)Rainfed cereal (rights over the land)Cereal de sequeiro (direito sobre o solo)Céréales en sec (droit sur le sol)Cereali asciutti (diritto sul suolo)Getreide, Trockenbau (Recht am Boden)Zboże nienawadniane (prawo do gruntu)Graan, droog (recht op de grond)Obilí bez závlahy (právo k půdě)
VSESViña sueloViña (derecho de suelo)Vinya (dret de sòl)Vineyard (rights over the land)Vinha (direito sobre o solo)Vigne (droit sur le sol)Vigneto (diritto sul suolo)Weinberg (Recht am Boden)Winnica (prawo do gruntu)Wijngaard (recht op de grond)Vinice (právo k půdě)
PEESPiscifactorías EsterosPiscifactorías y esterosPiscifactories i esterosFish farms and tidal pondsPisciculturas e esteirosPiscicultures et maraisPiscicolture e stagni salmastriFischzucht und Salzwiesen-TeicheHodowle ryb i stawy pływoweViskwekerijen en getijdenvijversRybí farmy a přílivové nádrže
CVESCereal secano -vuelo-Cereal de secano (derecho de vuelo)Cereal de secà (dret de vol)Rainfed cereal (rights over the crop)Cereal de sequeiro (direito sobre a cultura)Céréales en sec (droit sur la culture)Cereali asciutti (diritto sulla coltura)Getreide, Trockenbau (Recht am Aufwuchs)Zboże nienawadniane (prawo do uprawy)Graan, droog (recht op het gewas)Obilí bez závlahy (právo k porostu)
VVESViña vueloViña (derecho de vuelo)Vinya (dret de vol)Vineyard (rights over the vines)Vinha (direito sobre as videiras)Vigne (droit sur les ceps)Vigneto (diritto sulle viti)Weinberg (Recht an den Reben)Winnica (prawo do krzewów)Wijngaard (recht op de wijnstokken)Vinice (právo k révě)
PPESPrados -derecho pastos-Prados (derecho de pastos)Prats (dret de pastures)Meadows (grazing rights)Prados (direito de pastagem)Prairies (droit de pâturage)Prati (diritto di pascolo)Wiesen (Weiderecht)Łąki (prawo wypasu)Graslanden (weiderecht)Louky (právo pastvy)
TFESFrutales pies sueltosFrutales (pies sueltos)Fruiters (peus solts)Fruit trees (scattered trees)Fruteiras (árvores dispersas)Arbres fruitiers (arbres épars)Alberi da frutto (piante sparse)Obstbäume (Einzelbäume)Drzewa owocowe (rozproszone)Fruitbomen (verspreide bomen)Ovocné stromy (roztroušené)
PLESPalmitarPalmitarMargallonerDwarf palm scrubPalmitalPalmeraie nainePalmeto nanoZwergpalmenbestandZarośla palmy karłowatejDwergpalmstruweelPorost palmy žumary
RZESArboles de ribera -vuelo-Árboles de ribera (derecho de vuelo)Arbres de ribera (dret de vol)Riverside trees (rights over the trees)Galeria ripícola (direito sobre o arvoredo)Ripisylve (droit sur les arbres)Vegetazione ripariale (diritto sugli alberi)Auwald (Recht an den Bäumen)Zadrzewienia nadrzeczne (prawo do drzew)Oeverbos (recht op de bomen)Břehové porosty (právo ke stromům)
FYESFrutales secano -suelo-Frutales de secano (derecho de suelo)Fruiters de secà (dret de sòl)Rainfed fruit trees (rights over the land)Pomar de sequeiro (direito sobre o solo)Vergers en sec (droit sur le sol)Frutteto asciutto (diritto sul suolo)Obstbäume, Trockenbau (Recht am Boden)Sad nienawadniany (prawo do gruntu)Fruitbomen, droog (recht op de grond)Sad bez závlahy (právo k půdě)
KCESCastaños pies sueltosCastaños (pies sueltos)Castanyers (peus solts)Chestnut trees (scattered trees)Castanheiros (árvores dispersas)Châtaigniers (arbres épars)Castagni (piante sparse)Kastanien (Einzelbäume)Kasztany (drzewa rozproszone)Kastanjes (verspreide bomen)Kaštanovníky (roztroušené stromy)
U-ESZona urbana y diseminado urbanoZona urbana y diseminadoZona urbana i disseminatUrban area and scattered housingZona urbana e povoamento dispersoZone urbaine et habitat disperséZona urbana e case sparseSiedlungsgebiet und StreusiedlungTeren miejski i zabudowa rozproszonaStedelijk gebied en verspreide bebouwingZastavěné území a rozptýlená zástavba
ZSESAlcornoques derecho vueloAlcornoques (derecho de vuelo)Suros (dret de vol)Cork oaks (rights over the trees)Sobreiros (direito sobre o arvoredo)Chênes-lièges (droit sur les arbres)Querce da sughero (diritto sugli alberi)Korkeichen (Recht an den Bäumen)Dęby korkowe (prawo do drzew)Kurkeiken (recht op de bomen)Korkové duby (právo ke stromům)
FTESFrutales riego -suelo-Frutales de regadío (derecho de suelo)Fruiters de regadiu (dret de sòl)Irrigated fruit trees (rights over the land)Pomar de regadio (direito sobre o solo)Vergers irrigués (droit sur le sol)Frutteto irriguo (diritto sul suolo)Obstbäume, bewässert (Recht am Boden)Sad nawadniany (prawo do gruntu)Fruitbomen, geïrrigeerd (recht op de grond)Sad se závlahou (právo k půdě)
SSESAlcornoques derecho sueloAlcornoques (derecho de suelo)Suros (dret de sòl)Cork oaks (rights over the land)Sobreiros (direito sobre o solo)Chênes-lièges (droit sur le sol)Querce da sughero (diritto sul suolo)Korkeichen (Recht am Boden)Dęby korkowe (prawo do gruntu)Kurkeiken (recht op de grond)Korkové duby (právo k půdě)
FZESFrutales secano -vuelo-Frutales de secano (derecho de vuelo)Fruiters de secà (dret de vol)Rainfed fruit trees (rights over the trees)Pomar de sequeiro (direito sobre o arvoredo)Vergers en sec (droit sur les arbres)Frutteto asciutto (diritto sugli alberi)Obstbäume, Trockenbau (Recht an den Bäumen)Sad nienawadniany (prawo do drzew)Fruitbomen, droog (recht op de bomen)Sad bez závlahy (právo ke stromům)
KSESAlcornoques pies sueltosAlcornoques (pies sueltos)Suros (peus solts)Cork oaks (scattered trees)Sobreiros (árvores dispersas)Chênes-lièges (arbres épars)Querce da sughero (piante sparse)Korkeichen (Einzelbäume)Dęby korkowe (drzewa rozproszone)Kurkeiken (verspreide bomen)Korkové duby (roztroušené stromy)
OKESOlivos riego agua compradaOlivar de regadío con agua compradaOlivera de regadiu amb aigua compradaOlive grove irrigated with bought waterOlival de regadio com água compradaOliveraie irriguée à l'eau achetéeOliveto irriguo con acqua acquistataOlivenhain (bewässert, Zukaufwasser)Gaj oliwny nawadniany wodą kupowanąOlijfgaard (geïrrigeerd, gekocht water)Olivový háj zavlažovaný kupovanou vodou
KGESRobles pies sueltosRobles (pies sueltos)Roures (peus solts)Oaks (scattered trees)Carvalhos (árvores dispersas)Chênes (arbres épars)Querce (piante sparse)Eichen (Einzelbäume)Dęby (drzewa rozproszone)Eiken (verspreide bomen)Duby (roztroušené stromy)
RYESArboles de ribera -suelo-Árboles de ribera (derecho de suelo)Arbres de ribera (dret de sòl)Riverside trees (rights over the land)Galeria ripícola (direito sobre o solo)Ripisylve (droit sur le sol)Vegetazione ripariale (diritto sul suolo)Auwald (Recht am Boden)Zadrzewienia nadrzeczne (prawo do gruntu)Oeverbos (recht op de grond)Břehové porosty (právo k půdě)
FWESFrutales especialesFrutales especialesFruiters especialsSpecial fruit treesFruteiras especiaisArbres fruitiers spéciauxFrutteti specialiSonderobstbäumeSpecjalne drzewa owocoweBijzondere fruitbomenZvláštní ovocné stromy
BIESSuperficie mínima BICE eólico/solarSuperficie mínima BICE eólica o solarSuperfície mínima BICE eòlica o solarMinimum area of wind or solar BICEÁrea mínima BICE eólica ou solarSurface minimale BICE éolien ou solaireSuperficie minima BICE eolico o solareMindestfläche BICE Wind oder SolarMinimalna powierzchnia BICE wiatrowa lub słonecznaMinimumoppervlak BICE wind of zonMinimální plocha BICE větrná nebo solární
AL:10ALEraEraEraThreshing floorEiraAire de battageAiaDreschplatzKlepiskoDorsvloerMlat
AL:11ALErial a pastosErial a pastosErm de pasturesGrazed wastelandBaldio de pastagemFriche pâturéeIncolto a pascoloÖdland mit WeideNieużytek pastwiskowyBraakland met begrazingÚhor s pastvou
AL:12ALFrutales secanoFrutales de secanoFruiters de secàRainfed fruit treesPomar de sequeiroVergers en secFrutteto asciuttoObstbäume (Trockenbau)Sad nienawadnianyFruitbomen (droog)Sad bez závlahy
AL:13ALHuertaHuertaHortaVegetable gardenHortaPotagerOrtoGemüsegartenOgród warzywnyMoestuinZelinářská zahrada
AL:14ALImproductivoImproductivoImproductiuUnproductive landImprodutivoImproductifImproduttivoUnproduktive FlächeNieużytkiOnproductiefNeplodná půda
AL:16ALMonte altoMonte altoBosc altHigh forestMata altaFutaieFustaiaHochwaldLas wysokopiennyOpgaand bosVysoký les
AL:17ALMonte bajoMonte bajoBosc baixLow woodlandMata baixaTaillisBosco ceduoNiederwaldLas niskiHakhoutNízký les
AL:18ALOlivar regadíoOlivar de regadíoOlivera de regadiuIrrigated olive groveOlival de regadioOliveraie irriguéeOliveto irriguoOlivenhain (bewässert)Gaj oliwny nawadnianyOlijfgaard (geïrrigeerd)Olivový háj se závlahou
AL:19ALOlivar regadío eventualOlivar de regadío eventualOlivera de regadiu eventualOccasionally irrigated olive groveOlival de regadio ocasionalOliveraie à irrigation occasionnelleOliveto a irrigazione saltuariaOlivenhain (gelegentlich bewässert)Gaj oliwny okresowo nawadnianyOlijfgaard (af en toe geïrrigeerd)Olivový háj s občasnou závlahou
AL:2ALAlmendrosAlmendrosAmetllersAlmond treesAmendoeirasAmandiersMandorletoMandelbäumeMigdałowceAmandelbomenMandloně
AL:20ALOlivar secanoOlivar de secanoOlivera de secàRainfed olive groveOlival de sequeiroOliveraie en secOliveto asciuttoOlivenhain (Trockenbau)Gaj oliwny nienawadnianyOlijfgaard (droog)Olivový háj bez závlahy
AL:21ALPastizalPastizalPasturaGrasslandPastagemPelouse pâturéePascoloGrünlandMurawa pastwiskowaGraslandTravní porost
AL:22ALPinarPinarPinedaPine forestPinhalPinèdePinetaKiefernwaldBór sosnowyDennenbosBorový les
AL:23ALViña regadíoViña de regadíoVinya de regadiuIrrigated vineyardVinha de regadioVigne irriguéeVigneto irriguoWeinberg (bewässert)Winnica nawadnianaWijngaard (geïrrigeerd)Vinice se závlahou
AL:24ALViña regadío agua elevadaViña de regadío con agua elevadaVinya de regadiu amb aigua elevadaVineyard irrigated with pumped waterVinha de regadio com água elevadaVigne irriguée à l'eau pompéeVigneto irriguo con acqua sollevataWeinberg (bewässert, Pumpwasser)Winnica nawadniana wodą pompowanąWijngaard (geïrrigeerd, opgepompt water)Vinice zavlažovaná čerpanou vodou
AL:25ALViña regadío eventualViña de regadío eventualVinya de regadiu eventualOccasionally irrigated vineyardVinha de regadio ocasionalVigne à irrigation occasionnelleVigneto a irrigazione saltuariaWeinberg (gelegentlich bewässert)Winnica okresowo nawadnianaWijngaard (af en toe geïrrigeerd)Vinice s občasnou závlahou
AL:26ALViña secanoViña de secanoVinya de secàRainfed vineyardVinha de sequeiroVigne en secVigneto asciuttoWeinberg (Trockenbau)Winnica nienawadnianaWijngaard (droog)Vinice bez závlahy
AL:27ALViveroViveroViverNurseryViveiroPépinièreVivaioBaumschuleSzkółkaKwekerijŠkolka
AL:28ALPradosPradosPratsMeadowsPradosPrairiesPratiWiesenŁąkiGraslandenLouky
AL:29ALNogalesNogalesNoguersWalnut treesNogueirasNoyersNocetoWalnussbäumeOrzechy włoskieWalnotenbomenOřešáky
AL:3ALCastañosCastañosCastanyersChestnut treesCastanheirosChâtaigniersCastagniKastanienbäumeKasztanyKastanjebomenKaštanovníky
AL:30ALFrutales regadíoFrutales de regadíoFruiters de regadiuIrrigated fruit treesPomar de regadioVergers irriguésFrutteto irriguoObstbäume (bewässert)Sad nawadnianyFruitbomen (geïrrigeerd)Sad se závlahou
AL:4ALCultivo regadíoCultivo de regadíoConreu de regadiuIrrigated croplandCultura de regadioCulture irriguéeColtura irriguaAckerbau (bewässert)Uprawa nawadnianaAkkerbouw (geïrrigeerd)Plodina se závlahou
AL:5ALCultivo regadío agua elevadaCultivo de regadío con agua elevadaConreu de regadiu amb aigua elevadaCropland irrigated with pumped waterCultura de regadio com água elevadaCulture irriguée à l'eau pompéeColtura irrigua con acqua sollevataAckerbau (bewässert, Pumpwasser)Uprawa nawadniana wodą pompowanąAkkerbouw (geïrrigeerd, opgepompt water)Plodina zavlažovaná čerpanou vodou
AL:6ALCultivo regadío eventualCultivo de regadío eventualConreu de regadiu eventualOccasionally irrigated croplandCultura de regadio ocasionalCulture à irrigation occasionnelleColtura a irrigazione saltuariaAckerbau (gelegentlich bewässert)Uprawa okresowo nawadnianaAkkerbouw (af en toe geïrrigeerd)Plodina s občasnou závlahou
AL:7ALCultivo regadío frutalesCultivo de regadío con frutalesConreu de regadiu amb fruitersIrrigated cropland with fruit treesCultura de regadio com fruteirasCulture irriguée avec arbres fruitiersColtura irrigua con alberi da fruttoAckerbau mit Obstbäumen (bewässert)Uprawa nawadniana z drzewami owocowymiAkkerbouw met fruitbomen (geïrrigeerd)Plodina se závlahou a ovocnými stromy
AL:8ALCultivo secanoCultivo de secanoConreu de secàRainfed croplandCultura de sequeiroCulture en secColtura asciuttaAckerbau (Trockenbau)Uprawa nienawadnianaAkkerbouw (droog)Plodina bez závlahy
AL:9ALChoperaChoperaPollancredaPoplar plantationChoupalPeupleraiePioppetoPappelpflanzungPlantacja topoliPopulierenaanplantTopolová plantáž
BI:F:frutalesBIFrutalesFrutalesFruitersFruit treesFruteirasArbres fruitiersAlberi da fruttoObstbäumeDrzewa owocoweFruitbomenOvocné stromy
BI:F:kiwiBIKiwiKiwiKiwiKiwiKiwiKiwiKiwiKiwiKiwiKiwiKiwi
BI:F:manzanosBIManzanosManzanosPomeresApple treesMacieirasPommiersMeliApfelbäumeJabłonieAppelbomenJabloně
BI:F:nogalesBINogalesNogalesNoguersWalnut treesNogueirasNoyersNociWalnussbäumeOrzechy włoskieWalnotenbomenOřešáky
BI:F:pequenos-frutosBIPequeños frutosFrutos rojosFruits del boscBerriesPequenos frutosPetits fruitsPiccoli fruttiBeerenobstOwoce jagodoweKleinfruitDrobné ovoce
BI:F:peralesBIPeralesPeralesPereresPear treesPereirasPoiriersPeriBirnbäumeGruszePerenbomenHrušně
BI:G:pastizalBIPastizalPastizalPasturaGrasslandPastagemPelouse pâturéePascoloGrünlandMurawa pastwiskowaGraslandTravní porost
BI:H:eucaliptar-costaBIEucaliptar costaEucaliptal de costaEucaliptar de costaCoastal eucalyptus plantationEucaliptal costeiroEucalyptaie côtièreEucalipteto costieroEukalyptuspflanzung (Küste)Plantacja eukaliptusa (wybrzeże)Eucalyptusaanplant (kust)Eukalyptová plantáž (pobřeží)
BI:H:eucaliptar-interiorBIEucaliptar interiorEucaliptal de interiorEucaliptar d'interiorInland eucalyptus plantationEucaliptal interiorEucalyptaie intérieureEucalipteto internoEukalyptuspflanzung (Binnenland)Plantacja eukaliptusa (śródlądowa)Eucalyptusaanplant (binnenland)Eukalyptová plantáž (vnitrozemí)
BI:J:camino-de-servidumbreBICamino de servidumbreCamino de servidumbreCamí de servitudEasement trackCaminho de servidãoChemin de servitudeStrada di servitùDienstbarkeitswegDroga służebnaErfdienstbaarheidspadSlužebná cesta
BI:J:lamina-aguaBILámina aguaLámina de aguaLàmina d'aiguaWater surfacePlano de águaPlan d'eauSpecchio d'acquaWasserflächeLustro wodyWateroppervlakVodní plocha
BI:J:suelo-anegableBISuelo anegableSuelo inundableSòl inundableFloodable landSolo inundávelTerrain inondableTerreno allagabileÜberschwemmungsflächeGrunt zalewowyOverstroombare grondZaplavovaná půda
BI:J:suelo-edif-rusticaBISuelo edif. rústicaSuelo con edificación rústicaSòl amb edificació rústicaLand with rural buildingsSolo com edificação rústicaTerrain avec bâti ruralTerreno con fabbricato ruraleFläche mit ländlicher BebauungGrunt z zabudową wiejskąGrond met landelijke bebouwingPozemek s venkovskou stavbou
BI:J:suelo-ocupadoBISuelo ocupadoSuelo ocupadoSòl ocupatOccupied landSolo ocupadoTerrain occupéTerreno occupatoBelegte FlächeGrunt zajętyBezette grondZastavěná plocha
BI:J:suelo-rocosoBISuelo rocosoSuelo rocosoSòl rocósRocky landSolo rochosoTerrain rocheuxTerreno rocciosoFelsflächeGrunt skalistyRotsachtige grondSkalnatá půda
BI:J:zona-urbanizadaBIZona urbanizadaZona urbanizadaZona urbanitzadaBuilt-up areaZona urbanizadaZone urbaniséeZona urbanizzataBebautes GebietTeren zabudowanyBebouwd gebiedZastavěné území
BI:M:argomalBIArgomalArgomalArgelagarGorse scrubTojalLande à ajoncsGinestreto spinosoStechginsterheideZarośla janowca kolczastegoGaspeldoornstruweelPorost hlodáše
BI:M:matorralBIMatorralMatorralMatollScrublandMatoBroussaillesMacchiaGestrüppZaroślaStruikgewasKřoviny
BI:N:abedularBIAbedularAbedularBedollarBirch woodlandVidoalBoulaieBetuletoBirkenwaldBrzezinaBerkenbosBřezový les
BI:N:alisedaBIAlisedaAlisedaVernedaAlder woodlandAmialAulnaieOntanetoErlenwaldOlszynaElzenbosOlšina
BI:N:bosques-de-riberaBIBosques de riberaBosques de riberaBoscos de riberaRiverside woodlandMatas ribeirinhasForêts riverainesBoschi riparialiAuwälderLasy łęgoweOeverbossenLužní lesy
BI:N:castanarBICastañarCastañarCastanyedaChestnut groveSoutoChâtaigneraieCastagnetoKastanienhainGaj kasztanowyKastanjebosKaštanový háj
BI:N:cerezosBICerezosCerezosCirerersCherry treesCerejeirasCerisiersCiliegiKirschbäumeCzereśnieKersenbomenTřešně
BI:N:encinarBIEncinarEncinarAlzinarHolm oak woodlandAzinhalChênaie verteLeccetaSteineichenwaldLas dębu ostrolistnegoSteeneikenbosLes dubu cesmínovitého
BI:N:falsa-acaciaBIFalsa acaciaFalsa acaciaRobíniaBlack locustRobíniaRobinierRobiniaRobinieRobinia akacjowaRobiniaTrnovník akát
BI:N:frondosas-crec-lentoBIFrondosas crec.lentoFrondosas de crecimiento lentoFrondoses de creixement lentSlow-growing broadleavesFolhosas de crescimento lentoFeuillus à croissance lenteLatifoglie a crescita lentaLangsam wachsende LaubbäumeLiściaste wolno rosnąceLangzaam groeiend loofhoutPomalu rostoucí listnáče
BI:N:frondosas-crec-medBIFrondosas crec.med.Frondosas de crecimiento medioFrondoses de creixement mitjàMedium-growth broadleavesFolhosas de crescimento médioFeuillus à croissance moyenneLatifoglie a crescita mediaMittelwüchsige LaubbäumeLiściaste średnio rosnąceMiddelmatig groeiend loofhoutStředně rychle rostoucí listnáče
BI:N:hayedoBIHayedoHayedoFagedaBeech forestFaialHêtraieFaggetaBuchenwaldBuczynaBeukenbosBukový les
BI:N:roble-americanoBIRoble americanoRoble americanoRoure americàRed oakCarvalho-americanoChêne rouge d'AmériqueQuercia rossaRoteicheDąb czerwonyAmerikaanse eikDub červený
BI:N:robledalBIRobledalRobledalRouredaOak woodlandCarvalhalChênaieQuercetoEichenwaldDąbrowaEikenbosDoubrava
BI:N:tuliperoBITuliperoTuliperoTuliperTulip treeTulipeiroTulipierAlbero dei tulipaniTulpenbaumTulipanowiecTulpenboomLiliovník
BI:Ñ:invernaderoBIInvernaderoInvernaderoHivernacleGreenhouseEstufaSerreSerraGewächshausSzklarniaKasSkleník
BI:Q:abeto-douglasBIAbeto douglasAbeto DouglasAvet de DouglasDouglas firPseudotsugaDouglasDouglasiaDouglasieDaglezjaDouglassparDouglaska
BI:Q:alerceBIAlerceAlerceLàrixLarchLarícioMélèzeLariceLärcheModrzewLariksModřín
BI:Q:choperaBIChoperaChoperaPollancredaPoplar plantationChoupalPeupleraiePioppetoPappelpflanzungPlantacja topoliPopulierenaanplantTopolová plantáž
BI:Q:cipres-de-lawsonBICiprés de LawsonCiprés de LawsonXiprer de LawsonLawson cypressCipreste-de-lawsonCyprès de LawsonCipresso di LawsonLawsons ScheinzypresseCyprysik LawsonaLawsoncipresCypřišek Lawsonův
BI:Q:conifera-crec-medBIConifera crec. Med.Coníferas de crecimiento medioConíferes de creixement mitjàMedium-growth conifersResinosas de crescimento médioRésineux à croissance moyenneConifere a crescita mediaMittelwüchsige NadelbäumeIglaste średnio rosnąceMiddelmatig groeiende naaldbomenStředně rychle rostoucí jehličnany
BI:Q:conifera-frondosaBIConÍfera-frondosaMixto de coníferas y frondosasMixt de coníferes i frondosesMixed conifers and broadleavesMisto de resinosas e folhosasMixte résineux et feuillusMisto conifere e latifoglieNadel-Laub-MischwaldLas mieszany iglasto-liściastyGemengd naald- en loofbosSmíšený jehličnato-listnatý les
BI:Q:pino-laricioBIPino laricioPino laricioPinassaBlack pinePinheiro-larícioPin laricioPino laricioSchwarzkieferSosna czarnaCorsicaanse denBorovice černá
BI:Q:pino-maritimoBIPino maritimoPino marítimoPinastreMaritime pinePinheiro-bravoPin maritimePino marittimoStrandkieferSosna nadmorskaZeedenBorovice přímořská
BI:Q:pino-radiataBIPino radiataPino radiataPi insigneMonterey pinePinheiro-insignePin de MontereyPino insigneMonterey-KieferSosna kalifornijskaMontereydenBorovice montereyská
BI:Q:pino-silvestreBIPino silvestrePino silvestrePi roigScots pinePinheiro-silvestrePin sylvestrePino silvestreWaldkieferSosna zwyczajnaGrove denBorovice lesní
BI:U:praderaBIPraderaPraderaPratMeadowPradoPrairiePratoWieseŁąkaGraslandLouka
BI:W:cultivo-horticolaBICultivo horticolaCultivo hortícolaConreu hortícolaHorticultural cropCultura hortícolaCulture maraîchèreColtura orticolaGemüsebauUprawa warzywnaTuinbouwgewasZelinářská plodina
BI:W:huerta-de-laborBIHuerta de laborHuerta de laborHorta de conreuVegetable plotHorta de cultivoPotager cultivéOrto coltivatoGemüseackerOgród uprawnyMoestuinZelinářský pozemek
BI:W:jardinBIJardinJardínJardíGardenJardimJardinGiardinoGartenOgródTuinZahrada
BI:W:vivero-planta-forestalBIVivero planta forestalVivero forestalViver forestalForest nurseryViveiro florestalPépinière forestièreVivaio forestaleForstbaumschuleSzkółka leśnaBosboomkwekerijLesní školka
BI:X:canteraBICanteraCanteraPedreraQuarryPedreiraCarrièreCavaSteinbruchKamieniołomGroeveLom
BI:X:obra-hidraulicaBIObra hidraulicaObra hidráulicaObra hidràulicaHydraulic worksObra hidráulicaOuvrage hydrauliqueOpera idraulicaWasserbauwerkBudowla hydrotechnicznaWaterbouwkundig werkVodní dílo
BI:X:suelo-constr-biceBISuelo constr. BICESuelo de construcción BICESòl de construcció BICEBICE construction landSolo de construção BICETerrain de construction BICETerreno edificato BICEBICE-BauflächeGrunt zabudowy BICEBICE-bouwgrondStavební pozemek BICE
BI:Z:vinedoBIViñedoViñedoVinyaVineyardVinhaVignobleVignetoWeinbergWinnicaWijngaardVinice
GI:CGILabrantíoTierra de laborTerra de conreuArable landTerra arávelTerre arableSeminativoAckerlandGrunty orneAkkerlandOrná půda
GI:CGGIConstrucción ganaderaConstrucción ganaderaConstrucció ramaderaLivestock buildingConstrução pecuáriaBâtiment d'élevageFabbricato zootecnicoStallgebäudeBudynek inwentarskiVeestalHospodářská stavba pro zvířata
GI:CRGIConstrucción rústicaConstrucción rústicaConstrucció rústicaRural buildingConstrução rústicaConstruction ruraleFabbricato ruraleLändliches GebäudeBudynek wiejskiLandelijk gebouwVenkovská stavba
GI:CSGICaseríoCaseríoMasFarmhouseCasalFermeCasaleBauernhofZagrodaBoerderijStatek
GI:EGIPastizalPastizalPasturaGrasslandPastagemPelouse pâturéePascoloGrünlandMurawa pastwiskowaGraslandTravní porost
GI:FGIFrutalesFrutalesFruitersFruit treesFruteirasArbres fruitiersAlberi da fruttoObstbäumeDrzewa owocoweFruitbomenOvocné stromy
GI:IGIImproductivoImproductivoImproductiuUnproductive landImprodutivoImproductifImproduttivoUnproduktive FlächeNieużytkiOnproductiefNeplodná půda
GI:INGIInvernaderoInvernaderoHivernacleGreenhouseEstufaSerreSerraGewächshausSzklarniaKasSkleník
GI:MBGIMonte bajoMonte bajoBosc baixLow woodlandMata baixaTaillisBosco ceduoNiederwaldLas niskiHakhoutNízký les
GI:MFGIMonte de frondosasBosque de frondosasBosc de frondosesBroadleaf forestFloresta de folhosasForêt de feuillusBosco di latifoglieLaubwaldLas liściastyLoofbosListnatý les
GI:MMGIConíferas (pino)Coníferas (pino)Coníferes (pi)Conifers (pine)Resinosas (pinheiro)Résineux (pin)Conifere (pino)Nadelbäume (Kiefer)Iglaste (sosna)Naaldbomen (den)Jehličnany (borovice)
GI:MTGIMatorralMatorralMatollScrublandMatoBroussaillesMacchiaGestrüppZaroślaStruikgewasKřoviny
GI:PDGIPraderaPraderaPratMeadowPradoPrairiePratoWieseŁąkaGraslandLouka
GI:RIGIÁrboles de riberaÁrboles de riberaArbres de riberaRiverside treesGaleria ripícolaRipisylveVegetazione riparialeAuwaldZadrzewienia nadrzeczneOeverbosBřehové porosty
GI:VIGIViñedoViñedoVinyaVineyardVinhaVignobleVignetoWeinbergWinnicaWijngaardVinice
NA:0001NAConstruccionConstrucciónConstruccióBuildingConstruçãoConstructionCostruzioneGebäudeZabudowaBebouwingStavba
NA:0002NACaminoCaminoCamíTrackCaminhoCheminStradaWegDrogaPadCesta
NA:0003NACañadaCañadaCarreradaDrove roadCanadaDrailleTratturoViehtriebwegSzlak pędu bydłaVeedrijfpadDobytčí stezka
NA:0004NACascajeraGraveraGraveraGravel pitCascalheiraGravièreCava di ghiaiaKiesgrubeŻwirowniaGrindgroeveŠtěrkovna
NA:0005NACanteraCanteraPedreraQuarryPedreiraCarrièreCavaSteinbruchKamieniołomGroeveLom
NA:0006NABalsaBalsaBassaPondCharcaBassinVascaBeckenZbiornik wodnyVijverNádrž
NA:0007NAImproductivoImproductivoImproductiuUnproductive landImprodutivoImproductifImproduttivoUnproduktive FlächeNieużytkiOnproductiefNeplodná půda
NA:0008NACamino de santiagoCamino de SantiagoCamí de Sant JaumeWay of St JamesCaminho de SantiagoChemin de Saint-JacquesCammino di SantiagoJakobswegDroga św. JakubaCamino de SantiagoSvatojakubská cesta
NA:1000NAInvernaderoInvernaderoHivernacleGreenhouseEstufaSerreSerraGewächshausSzklarniaKasSkleník
NA:1030NAViña (pie madre)Viña (pie madre)Vinya (peu mare)Vineyard (mother stock)Vinha (pé-mãe)Vigne (pied-mère)Vigneto (piante madri)Weinberg (Mutterreben)Winnica (mateczne)Wijngaard (moederstokken)Vinice (matečnice)
NA:1100NAHuertoHuertoHortVegetable gardenHortaPotagerOrtoGemüsegartenOgród warzywnyMoestuinZelinářská zahrada
NA:1200NAT. labor regadioTierra de labor de regadíoTerra de conreu de regadiuIrrigated arable landTerra arável de regadioTerre arable irriguéeSeminativo irriguoAckerland (bewässert)Grunty orne nawadnianeAkkerland (geïrrigeerd)Orná půda se závlahou
NA:1300NAFrutales en regadioFrutales de regadíoFruiters de regadiuIrrigated fruit treesPomar de regadioVergers irriguésFrutteto irriguoObstbäume (bewässert)Sad nawadnianyFruitbomen (geïrrigeerd)Sad se závlahou
NA:1330NAFrutales-olivar regadioFrutales y olivar de regadíoFruiters i olivera de regadiuIrrigated fruit trees and olivesPomar e olival de regadioVergers et oliveraie irriguésFrutteto e oliveto irriguiObst und Oliven (bewässert)Sad i gaj oliwny nawadnianeFruit en olijven (geïrrigeerd)Sad a olivový háj se závlahou
NA:1410NAViña en regadioViña de regadíoVinya de regadiuIrrigated vineyardVinha de regadioVigne irriguéeVigneto irriguoWeinberg (bewässert)Winnica nawadnianaWijngaard (geïrrigeerd)Vinice se závlahou
NA:1420NAOlivar en regadioOlivar de regadíoOlivera de regadiuIrrigated olive groveOlival de regadioOliveraie irriguéeOliveto irriguoOlivenhain (bewässert)Gaj oliwny nawadnianyOlijfgaard (geïrrigeerd)Olivový háj se závlahou
NA:1430NAViña-olivar en regadioViña y olivar de regadíoVinya i olivera de regadiuIrrigated vineyard and olivesVinha e olival de regadioVigne et oliveraie irriguéesVigneto e oliveto irriguiWein und Oliven (bewässert)Winnica i gaj oliwny nawadnianeWijngaard en olijven (geïrrigeerd)Vinice a olivový háj se závlahou
NA:1440NAViña-frutales regadioViña y frutales de regadíoVinya i fruiters de regadiuIrrigated vineyard and fruit treesVinha e pomar de regadioVigne et vergers irriguésVigneto e frutteto irriguiWein und Obst (bewässert)Winnica i sad nawadnianeWijngaard en fruit (geïrrigeerd)Vinice a sad se závlahou
NA:1501NAT. labor secanoTierra de labor de secanoTerra de conreu de secàRainfed arable landTerra arável de sequeiroTerre arable en secSeminativo asciuttoAckerland (Trockenbau)Grunty orne nienawadnianeAkkerland (droog)Orná půda bez závlahy
NA:1502NAViñaViñaVinyaVineyardVinhaVigneVignetoWeinbergWinnicaWijngaardVinice
NA:1503NAOlivarOlivarOliveraOlive groveOlivalOliveraieOlivetoOlivenhainGaj oliwnyOlijfgaardOlivový háj
NA:1504NAViña y olivarViña y olivarVinya i oliveraVineyard and olivesVinha e olivalVigne et oliveraieVigneto e olivetoWein und OlivenWinnica i gaj oliwnyWijngaard en olijvenVinice a olivový háj
NA:1505NAPradoPradoPratMeadowPradoPrairiePratoWieseŁąkaGraslandLouka
NA:1506NAManzanalManzanalPomerarApple orchardPomar de macieirasPommeraieMeletoApfelplantageSad jabłoniowyAppelboomgaardJabloňový sad
NA:1507NAAlmendrosAlmendrosAmetllersAlmond treesAmendoeirasAmandiersMandorletoMandelbäumeMigdałowceAmandelbomenMandloně
NA:1508NANogalesNogalesNoguersWalnut treesNogueirasNoyersNocetoWalnussbäumeOrzechy włoskieWalnotenbomenOřešáky
NA:1509NAFrutales diversosFrutales diversosFruiters diversosMixed fruit treesFruteiras diversasArbres fruitiers diversFrutteti mistiGemischte ObstbäumeRóżne drzewa owocoweGemengde fruitbomenRůzné ovocné stromy
NA:1510NAEsparragosEspárragosEspàrrecsAsparagusEspargosAspergesAsparagiSpargelSzparagiAspergesChřest
NA:1511NAViña y frutalesViña y frutalesVinya i fruitersVineyard and fruit treesVinha e pomarVigne et vergersVigneto e fruttetoWein und ObstWinnica i sadWijngaard en fruitVinice a sad
NA:1512NAOlivar y almendrosOlivar y almendrosOlivera i ametllersOlives and almondsOlival e amendoalOliveraie et amandiersOliveto e mandorletoOliven und MandelnGaj oliwny i migdałowceOlijven en amandelenOlivy a mandloně
NA:1514NAPacharanEndrinos (pacharán)Aranyoner (patxaran)Blackthorn (pacharán)Abrunheiro (pacharán)Prunellier (pacharán)Prugnolo (pacharán)Schlehe (Pacharán)Tarnina (pacharán)Sleedoorn (pacharán)Trnka (pacharán)
NA:1515NAFrutales y olivarFrutales y olivarFruiters i oliveraFruit trees and olivesPomar e olivalVergers et oliveraieFrutteto e olivetoObst und OlivenSad i gaj oliwnyFruit en olijvenSad a olivový háj
NA:1516NAViña-frutos secosViña y frutos secosVinya i fruita secaVineyard and nut treesVinha e frutos secosVigne et fruits à coqueVigneto e frutta seccaWein und NüsseWinnica i orzechyWijngaard en notenVinice a ořechy
NA:1517NAFrutales-frutos secosFrutales y frutos secosFruiters i fruita secaFruit and nut treesPomar e frutos secosVergers et fruits à coqueFrutteto e frutta seccaObst und NüsseSad i orzechyFruit en notenSad a ořechy
NA:2000NAPastizalPastizalPasturaGrasslandPastagemPelouse pâturéePascoloGrünlandMurawa pastwiskowaGraslandTravní porost
NA:2100NASotoSotoSoto de riberaRiverside groveSouto ribeirinhoBois riverainBosco riparialeAuengehölzŁęgOeverbosjeLužní háj
NA:2300NAPastosPastosPasturesPasturePastagensPâturagesPascoloWeidePastwiskaWeilandPastviny
NA:2400NAPastos y olivarPastos y olivarPastures i oliveraPasture and olivesPastagens e olivalPâturages et oliveraiePascolo e olivetoWeide und OlivenPastwiska i gaj oliwnyWeiland en olijvenPastviny a olivy
NA:3010NAAlamedasAlamedasAlberedesPoplar grovesAlamedasPeupleraiesPioppetiPappelhaineTopolowe gajePopulierenbossenTopolové háje
NA:3030NACastañalCastañarCastanyedaChestnut groveSoutoChâtaigneraieCastagnetoKastanienhainGaj kasztanowyKastanjebosKaštanový háj
NA:3040NARobledalRobledalRouredaOak woodlandCarvalhalChênaieQuercetoEichenwaldDąbrowaEikenbosDoubrava
NA:3060NAEncinarEncinarAlzinarHolm oak woodlandAzinhalChênaie verteLeccetaSteineichenwaldLas dębu ostrolistnegoSteeneikenbosLes dubu cesmínovitého
NA:3070NAPinarPinarPinedaPine forestPinhalPinèdePinetaKiefernwaldBór sosnowyDennenbosBorový les
NA:3080NAHayedoHayedoFagedaBeech forestFaialHêtraieFaggetaBuchenwaldBuczynaBeukenbosBukový les
NA:3700NAHelechalHelechalFalguerarBrackenFetalFougeraieFelcetoFarnflurPaprociowiskoVarenveldKapradiny
NA:3800NAPastos y arboladoPastos con arboladoPastures amb arbratWooded pasturePastagens com arvoredoPâturages boisésPascolo arboratoWeide mit BaumbestandPastwiska zadrzewioneWeiland met bomenPastviny se stromy
NA:4000NAArbolado diversoArbolado diversoArbrat diversMixed woodlandArvoredo diversoBoisement diversBosco mistoGemischter BaumbestandZadrzewienia mieszaneGemengd bosSmíšený porost
NA:5000NAArbustivoArbustivoArbustiuShrublandArbustivoArbustesArbustetoStrauchlandZarośla krzewiasteStruweelKřoviny
NA:9999NADesconocidoDesconocidoDesconegutUnknownDesconhecidoInconnuSconosciutoUnbekanntNieznaneOnbekendNeznámé
GET/v1/export/kml?reference=:reference

Export parcel data in KML format (Google Earth).

Parameters

referencestringCadastral reference
countrystringCountry code (optional: detected from the reference)
curl -H "X-API-Key: YOUR_API_KEY" \
  "https://api.parcelgps.com/v1/export/kml?reference=9872023VH5797S" -o parcel.kml

Response example

200 OK
<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2">
  <Document>
    <Placemark>
      <name>9872023VH5797S</name>
      ...
    </Placemark>
  </Document>
</kml>
GET/v1/export/gpx?reference=:reference

Export parcel data in GPX format (GPS navigators).

Parameters

referencestringCadastral reference
countrystringCountry code (optional: detected from the reference)
curl -H "X-API-Key: YOUR_API_KEY" \
  "https://api.parcelgps.com/v1/export/gpx?reference=9872023VH5797S" -o parcel.gpx

Response example

200 OK
<?xml version="1.0" encoding="UTF-8"?>
<gpx version="1.1">
  <wpt lat="40.4168" lon="-3.7038">
    <name>9872023VH5797S</name>
  </wpt>
</gpx>
GET/v1/parcels/:reference/neighbors

Parcels that touch or surround this one (up to 60), each with its reference and centre point. Spain from the official cadastre and our own copy; other countries from our own copy where we hold one. Where neighbours cannot be listed the answer is 200 with supported: false and an empty list. Costs 1 unit.

Parameters

:referencestringCadastral reference
countrystringCountry code (optional: detected from the reference)
curl -G -H "X-API-Key: YOUR_API_KEY" \
  "https://api.parcelgps.com/v1/parcels/9872023VH5797S/neighbors"

Response example

200 OK
{
  "success": true,
  "data": {
    "country": "ES",
    "supported": true,
    "count": 3,
    "neighbors": [
      {
        "reference": "9871005VH5797S",
        "latitude": 38.64006766816304,
        "longitude": -3.4631630104475426
      },
      {
        "reference": "9871006VH5797S",
        "latitude": 38.640078126778526,
        "longitude": -3.4630479499563753
      },
      {
        "reference": "9872022VH5797S",
        "latitude": 38.64012999246921,
        "longitude": -3.4631042361034168
      }
    ]
  }
}

Possible errors

CodeHTTPDescription
NOT_FOUND404The reference does not match any parcel.
UNAUTHORIZED401No organisation API key and no signed-in account.
KEY_AUTH_004429Monthly API key quota exhausted (see the X-Quota-* headers).
SERVICE_UNAVAILABLE503Cadastral service temporarily unavailable.
GET/v1/parcels/:reference/value-history

Paid plans only (premium); a Free-plan key gets 403 KEY_PLAN_001 and spends no unit. Snapshots of the parcel recorded over time: area, use and cadastral value when known, plus the change in area between the first and the last one. Costs 1 unit.

Parameters

:referencestringCadastral reference
countrystringCountry code (optional: detected from the reference)
curl -G -H "X-API-Key: YOUR_API_KEY" \
  "https://api.parcelgps.com/v1/parcels/9872023VH5797S/value-history"

Response example

200 OK
{
  "success": true,
  "data": {
    "reference": "9872023VH5797S",
    "country": "ES",
    "entries": [
      {
        "id": "8e82345c-2d7a-4963-8d5f-b4ec845091f4",
        "reference": "9872023VH5797S",
        "country": "ES",
        "cadastralValueEur": 0,
        "area": 397,
        "use": "Residencial",
        "capturedOn": "2026-09-29",
        "source": "catastro_api",
        "createdAt": "2026-09-29T18:36:08.508744+00:00"
      }
    ],
    "totalEntries": 1,
    "areaChangePct": null
  }
}

Possible errors

CodeHTTPDescription
UNAUTHORIZED401No organisation API key and no signed-in account.
KEY_AUTH_004429Monthly API key quota exhausted (see the X-Quota-* headers).
SERVICE_UNAVAILABLE503Cadastral service temporarily unavailable.
POST/v1/parcels/compare

Location, solar potential, agricultural use and score of 2 or 3 parcels in one call (ES, PT, FR, IT, DE). A parcel that is not found comes back with error and the others are still compared. Costs 1 unit per parcel found.

Parameters

parcelsarray2 or 3 objects with reference and country (country defaults to ES)
curl -X POST -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"parcels": [{"reference": "9872023VH5797S", "country": "ES"}, {"reference": "0447502VK4704G", "country": "ES"}]}' \
  "https://api.parcelgps.com/v1/parcels/compare"

Response example

200 OK
{
  "success": true,
  "data": {
    "parcels": [
      {
        "reference": "9872023VH5797S",
        "country": "ES",
        "parcel": {
          "reference": "9872023VH5797S0001WX",
          "country": "ES",
          "address": "CL GLORIA 51 Pl:OD Pt:OS",
          "postalCode": "13730",
          "municipality": "SANTA CRUZ DE MUDELA",
          "region": "Ciudad Real",
          "latitude": 38.6401435,
          "longitude": -3.4632835,
          "googleMapsUrl": "https://www.google.com/maps?q=38.640144,-3.463284",
          "use": "Residencial",
          "landClass": "Urbano",
          "builtArea": 308,
          "parcelArea": 397,
          "yearBuilt": 1980,
          "ownershipShare": 100,
          "floor": "OD",
          "door": "OS",
          "polygon": [
            [
              38.64033960550103,
              -3.463190495967865
            ],
            [
              38.64014267310775,
              -3.4631650149822235
            ],
            [
              38.640120675306825,
              -3.463370203971863
            ],
            [
              38.64025580454876,
              -3.4633876383304596
            ]
          ],
          "availableFields": {
            "use": true,
            "landClass": true,
            "yearBuilt": true,
            "builtArea": true,
            "ownershipShare": true,
            "dwellings": true,
            "floors": false,
            "address": true,
            "addressSearch": true
          }
        },
        "solar": {
          "available": true,
          "status": "ok",
          "annualProductionKwh": 23749.9,
          "installableKw": 17.86,
          "annualSavingsEur": 1473.18,
          "paybackYears": 12.13,
          "co2AvoidedKg": 5533.73,
          "irradiationKwhM2": 1807.08,
          "solarGrade": 5,
          "optimalOrientation": "south",
          "tiltAngleDeg": 34,
          "installationCostEur": 17865,
          "source": "PVGIS (JRC)",
          "economics": {
            "selfConsumptionKwhYear": 5000,
            "selfConsumptionSavingsEur": 750,
            "surplusKwhYear": 18749.9,
            "surplusPriceEurKwh": 0.05,
            "surplusIncomeEur": 937.5,
            "capexEur": 17865,
            "annualMaintenanceEur": 214.32,
            "netAnnualIncomeEur": 1473.18,
            "paybackYears": 12.13,
            "irrPct": 6.56,
            "totalReturn25YearsEur": 18964.5,
            "landLeaseAvailable": false,
            "landLeaseEurPerHaYear": 0,
            "landLeaseTotalEurYear": 0,
            "note": "Indicative estimate. Electricity selling prices are at historic lows (surplus ~0.04-0.10 EUR/kWh, wholesale market ~44 EUR/MWh and close to 0 at midday), so the return depends mostly on self-consumption, which only uses the energy consumed on site. This is not an offer.",
            "sources": [
              "PVGIS (European Commission)",
              "IDAE / OMIE market 2026",
              "2026 cost and installation references"
            ]
          }
        },
        "agriculture": {
          "available": true,
          "status": "ok",
          "isAgricultural": false,
          "landUse": "Zona urbana",
          "cropGroup": "urbano",
          "areaHa": 142.5377
        },
        "score": {
          "available": true,
          "score": 72.2,
          "rating": "good"
        }
      },
      {
        "reference": "0447502VK4704G",
        "country": "ES",
        "parcel": {
          "reference": "0447502VK4704G",
          "country": "ES",
          "address": "CL TRES CRUCES 7",
          "postalCode": "28013",
          "municipality": "MADRID",
          "region": "Madrid",
          "latitude": 40.4196984,
          "longitude": -3.7028067,
          "googleMapsUrl": "https://www.google.com/maps?q=40.419698,-3.702807",
          "use": "Residencial",
          "landClass": "Urbano",
          "builtArea": 3020,
          "parcelArea": 370,
          "yearBuilt": 1928,
          "polygon": [
            [
              40.419746919387734,
              -3.702990710735321
            ],
            [
              40.41970710026562,
              -3.702711760997772
            ],
            [
              40.41953557147021,
              -3.7028364837169647
            ],
            [
              40.41959887381467,
              -3.7030041217803955
            ]
          ]
        },
        "solar": {
          "available": true,
          "status": "ok",
          "annualProductionKwh": 21955.86,
          "installableKw": 16.65,
          "annualSavingsEur": 1397.99,
          "paybackYears": 11.91,
          "co2AvoidedKg": 5115.72,
          "irradiationKwhM2": 1784.7,
          "solarGrade": 5,
          "optimalOrientation": "south",
          "tiltAngleDeg": 35,
          "installationCostEur": 16650,
          "source": "PVGIS (JRC)",
          "economics": {
            "selfConsumptionKwhYear": 5000,
            "selfConsumptionSavingsEur": 750,
            "surplusKwhYear": 16955.86,
            "surplusPriceEurKwh": 0.05,
            "surplusIncomeEur": 847.79,
            "capexEur": 16650,
            "annualMaintenanceEur": 199.8,
            "netAnnualIncomeEur": 1397.99,
            "paybackYears": 11.91,
            "irrPct": 6.76,
            "totalReturn25YearsEur": 18299.75,
            "landLeaseAvailable": false,
            "landLeaseEurPerHaYear": 0,
            "landLeaseTotalEurYear": 0,
            "note": "Indicative estimate. Electricity selling prices are at historic lows (surplus ~0.04-0.10 EUR/kWh, wholesale market ~44 EUR/MWh and close to 0 at midday), so the return depends mostly on self-consumption, which only uses the energy consumed on site. This is not an offer.",
            "sources": [
              "PVGIS (European Commission)",
              "IDAE / OMIE market 2026",
              "2026 cost and installation references"
            ]
          }
        },
        "agriculture": {
          "available": true,
          "status": "ok",
          "isAgricultural": false,
          "landUse": "Zona urbana",
          "cropGroup": "urbano",
          "areaHa": 4189.1257
        },
        "score": {
          "available": true,
          "score": 72.2,
          "rating": "good"
        }
      }
    ],
    "total": 2
  }
}

Possible errors

CodeHTTPDescription
VALIDATION_ERROR400Fewer than 2 or more than 3 parcels, or a malformed body.
UNAUTHORIZED401No organisation API key and no signed-in account.
KEY_AUTH_004429Monthly API key quota exhausted (see the X-Quota-* headers).
GET/v1/resolve

Tells whether a text is a cadastral reference (and of which country), coordinates or a place name. Use it before a lookup when you do not know what the user typed. No API key needed and free.

Parameters

qstringAny text: a reference, coordinates or a place name
hintstringOptional. Country to prefer when the text is ambiguous
curl -G "https://api.parcelgps.com/v1/resolve" --data-urlencode "q=9872023VH5797S0001WX"

Response example

200 OK
{
  "success": true,
  "data": {
    "input": "9872023VH5797S0001WX",
    "ambiguous": false,
    "candidates": [
      {
        "country": "ES",
        "kind": "reference",
        "normalized": "9872023VH5797S0001WX",
        "confidence": 1,
        "supported": true
      }
    ]
  }
}

Possible errors

CodeHTTPDescription
RSV_001400q is missing.

Changelog

What shipped in the API this week, with the change number in the repository. The old /api routes keep their field names; /v1 answers with English ones.

  • New English contract under https://api.parcelgps.com/v1: /v1/parcels/:reference and its sub-resources, /v1/search/*, /v1/resolve and /v1/export/*, with English field names (reference, country, municipality, region, latitude, longitude, parcelArea, yearBuilt…) and errors as code + message. The old /api routes keep answering exactly as before and now carry Deprecation and Link headers pointing to this page. Changes: #238

  • /v1/parcels/:reference/units now serves Basque Country and Navarre fincas from our copy of the foral cadastres, with the same contract as common territory (200 per page, cursor, ETag, 1 quota unit per unit), the attribution of each foral authority and no participation coefficient, which the foral open data do not publish. Álava is still loading. Changes: #101, #102, #103

  • Address to parcel in 26 European countries with /v1/search/address/candidates?country=XX: the official address register where there is one (Netherlands, Switzerland, Poland, Czechia, Estonia, Denmark, Flanders) and OpenStreetMap elsewhere, with at most 10 seconds per point. Changes: #93, #94
  • New /v1/parcels/:reference/ground-motion: vertical and east-west ground velocity from Copernicus EGMS 2020-2024 across its coverage, including the republished tiles of the Netherlands, Belgium and the Pyrenees. Changes: #80, #91
  • climate block in /terrain with the ERA5-Land normals. The grid is loading: until it finishes it answers status unavailable. Changes: #78
  • Outside Spain: availableFields says what each answer carries, empty answers cost nothing, /solar /agriculture /score answer 422 CNV_COVERAGE where there is no data, ambiguous digits answer 300 CNV_AMBIGUOUS, the reference comes back in full and Belgium returns latitude and longitude in the right order. Changes: #76
  • With an API key, error texts come in English; the code field does not change. Changes: #77
  • Address to parcel in France (Base Adresse Nationale) and Italy; Germany and Austria by coordinates with area and outline; Cyprus in under a second; /terrain and /ground-motion find the outline in the rest of Europe. Changes: #83, #84, #85, #86
  • POST /v1/search/coordinates routes every country like the GET. Changes: #79
  • /terrain and /ground-motion decode references with a slash (Belgium, Czechia, Poland): the reference field no longer comes back as %2F. Changes: #95

  • New /v1/parcels/:reference/terrain: relief over the outline (Copernicus DEM GLO-30) and intersection with Natura 2000 and national protected areas (CDDA), without repeating the sites that are in both lists. Changes: #67, #69, #70
  • New /v1/parcels/:reference14/units: every unit of a Spanish finca, 200 per page with a cursor, at 1 quota unit per unit served and never more than you have left; the Basque Country and Navarre answer 422 CNV_COVERAGE. Changes: #53, #55, #73, #74, #75
  • Address to finca in Spain with CartoCiudad candidates, ETag and free 304 re-imports, and the OpenAPI 3.1 spec at /v1/openapi.json. Changes: #72
  • X-Quota-Limit, X-Quota-Remaining, X-Quota-Reset and X-Quota-Tier headers with the monthly quota, and a per-key per-minute limit by plan. Changes: #52, #58