Italian cadastre

All cadastral data and property owners in Italy

Access all information on buildings, land and owners in real time

All the knowledge you need

Here you can find some advice to consider to approach this API. If you prefer, we provide code samples, OAS3 documentation, the ability to try the API live via the Swagger UI or import the entire collection into Postman. We also offer a Sandbox environment where you can experiment with all kinds of requests completely free of charge.

Useful tips to start with Italian cadastre

Get the token in the appropriate section before you start.

Use the the online tool or generate it via API. Set the expire date, a usefull name and now add a bunch of scopes to limit the possible actions your token can do.

Catasto (1.0.0)

Web service that allows you to consult the land and buildings cadastre of the Italian territory.

Territorio

Methods that allows you to consult provinces, municipalities and sections of the Italian territory

Allows you to consult the Italian territory

This method allows you to see all the provinces of Italy; if the tipo_catasto is not passed, the buildings database is shown.

Authorizations:
bearerAuth
query Parameters
tipo_catasto
string
Enum: "T" "F"
Example: tipo_catasto=F

cadastre type; F for buildings, T for land

Responses

Response Schema: application/json
Array of objects
success
boolean
message
string
error
integer

Request samples

CURL *hnd = curl_easy_init();

curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "GET");
curl_easy_setopt(hnd, CURLOPT_URL, "https://catasto.openapi.it/territorio?tipo_catasto=F");

struct curl_slist *headers = NULL;
headers = curl_slist_append(headers, "Authorization: Bearer REPLACE_BEARER_TOKEN");
curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers);

CURLcode ret = curl_easy_perform(hnd);

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "success": true,
  • "message": "",
  • "error": null
}

Detail of the province

Allows you to see the detail of the province with the municipalities; if the tipo_catasto is not passed, the buildings database is shown.

Authorizations:
bearerAuth
path Parameters
provincia_or_nome_provincia_or_id
required
string
Example: TR

Province, province name or id

query Parameters
tipo_catasto
string
Enum: "T" "F"
Example: tipo_catasto=F

cadastre type; F for buildings, T for land

Responses

Response Schema: application/json
Array of objects (Provincia)
success
boolean
message
string
error
integer

Request samples

CURL *hnd = curl_easy_init();

curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "GET");
curl_easy_setopt(hnd, CURLOPT_URL, "https://catasto.openapi.it/territorio/%7Bprovincia_or_nome_provincia_or_id%7D?tipo_catasto=F");

struct curl_slist *headers = NULL;
headers = curl_slist_append(headers, "Authorization: Bearer REPLACE_BEARER_TOKEN");
curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers);

CURLcode ret = curl_easy_perform(hnd);

Response samples

Content type
application/json
{
  • "data": {
    },
  • "success": true,
  • "message": "",
  • "error": null
}

Detail of the municipality

Allows you to see the detail of the municipality; if the tipo_catasto is not passed, the buildings database is shown.

Authorizations:
bearerAuth
path Parameters
provincia_or_nome_provincia_or_id
required
string
Example: TR

Province, province name or id

comune
required
string
Example: TERNI

City name

query Parameters
tipo_catasto
string
Enum: "T" "F"
Example: tipo_catasto=F

cadastre type; F for buildings, T for land

Responses

Response Schema: application/json
Array of objects (Provincia)
success
boolean
message
string
error
integer

Request samples

CURL *hnd = curl_easy_init();

curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "GET");
curl_easy_setopt(hnd, CURLOPT_URL, "https://catasto.openapi.it/territorio/%7Bprovincia_or_nome_provincia_or_id%7D/%7Bcomune%7D?tipo_catasto=F");

struct curl_slist *headers = NULL;
headers = curl_slist_append(headers, "Authorization: Bearer REPLACE_BEARER_TOKEN");
curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers);

CURLcode ret = curl_easy_perform(hnd);

Response samples

Content type
application/json
{
  • "data": {
    },
  • "success": true,
  • "message": "",
  • "error": null
}

Richiesta

Methods that allow you to create and view a request for information regarding buildings or land to the land registry

Creates a request

This method allows you to create a request to receive information on subjects and properties in the Italian land registry

Authorizations:
bearerAuth
path Parameters
endpoint
required
string
Enum: "elenco_immobili" "prospetto_catastale" "ricerca_persona" "ricerca_nazionale" "indirizzo"

Type of service requested

Request Body schema: application/json
One of
object (Callback)
tipo_catasto
required
string
Enum: "T" "F"
provincia
required
string
comune
required
string
sezione
string
sezione_urbana
string
required
string or integer
required
string or integer

Responses

Response Schema: application/json
object (Richiesta)
success
boolean
message
string
error
integer

Request samples

Content type
application/json
Example
{
  • "tipo_catasto": "F",
  • "provincia": "RM",
  • "comune": "ROMA",
  • "sezione": "",
  • "foglio": "872",
  • "particella": "405"
}

Response samples

Content type
application/json
Example
{
  • "data": {
    },
  • "success": true,
  • "message": "",
  • "error": null
}

Extracts all requests

This method allows you to see all the requests you have made

Authorizations:
bearerAuth

Responses

Response Schema: application/json
Array of objects (Richieste)
success
boolean
message
string
error
integer

Request samples

CURL *hnd = curl_easy_init();

curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "GET");
curl_easy_setopt(hnd, CURLOPT_URL, "https://catasto.openapi.it/richiesta");

struct curl_slist *headers = NULL;
headers = curl_slist_append(headers, "Authorization: Bearer REPLACE_BEARER_TOKEN");
curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers);

CURLcode ret = curl_easy_perform(hnd);

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "success": true,
  • "message": "",
  • "error": null
}

Detail of the request

Allows you to see the detail of the request identified by the id

Authorizations:
bearerAuth
path Parameters
id
required
string
Example: 60e580f1617b512c3450d3c7

Request id

Responses

Response Schema: application/json
object (Richiesta)
success
boolean
message
string
error
integer

Request samples

CURL *hnd = curl_easy_init();

curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "GET");
curl_easy_setopt(hnd, CURLOPT_URL, "https://catasto.openapi.it/richiesta/%7Bid%7D");

struct curl_slist *headers = NULL;
headers = curl_slist_append(headers, "Authorization: Bearer REPLACE_BEARER_TOKEN");
curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers);

CURLcode ret = curl_easy_perform(hnd);

Response samples

Content type
application/json
{
  • "data": {
    },
  • "success": true,
  • "message": "",
  • "error": null
}

Indirizzo

Method that allows you to search for an address

Search for an address

Allows you to extract the id_indirizzo through a search, which will then serve as a parameter for the POST/richiesta/indirizzo

Authorizations:
bearerAuth
query Parameters
provincia
required
string
Example: provincia=TR

Province

comune
required
string
Example: comune=TERNI

City

sezione
string
Example: sezione=Q

Section of the city if it is present

indirizzo
required
string
Example: indirizzo=del rivo

Address searched; enter only the address and not the toponym

Responses

Response Schema: application/json
object
success
boolean
message
string
error
integer

Request samples

CURL *hnd = curl_easy_init();

curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "GET");
curl_easy_setopt(hnd, CURLOPT_URL, "https://catasto.openapi.it/indirizzo?provincia=TR&comune=TERNI&sezione=Q&indirizzo=del%20rivo");

struct curl_slist *headers = NULL;
headers = curl_slist_append(headers, "Authorization: Bearer REPLACE_BEARER_TOKEN");
curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers);

CURLcode ret = curl_easy_perform(hnd);

Response samples

Content type
application/json
{
  • "data": {
    },
  • "success": true,
  • "message": "",
  • "error": null
}

Visura Catastale

Methods that make it possible to obtain a Visura Catastale

Creates a request

This method allows you to create a request to obtain a visura catastale

Authorizations:
bearerAuth
Request Body schema: application/json
One of
One of
entita
required
string
Value: "immobile"
id_immobile
required
string
tipo_visura
required
string
Enum: "ordinaria" "storica"
richiedente
string
object (Callback)

Responses

Response Schema: application/json
object (Visura)
success
boolean
message
string
error
integer

Request samples

Content type
application/json
Example
{
  • "entita": "immobile",
  • "id_immobile": "MTY1NjcyOCMxNjU2NzI4I0YjODcyIzQwNSNINTAxIzIyNTkyNjkjNDgjICNST01B",
  • "tipo_visura": "ordinaria",
  • "richiedente": "jane doe"
}

Response samples

Content type
application/json
Example
{
  • "data": {
    },
  • "success": true,
  • "message": "",
  • "error": null
}

Extracts all visure

This method allows you to see all the visure you have made

Authorizations:
bearerAuth

Responses

Response Schema: application/json
Array of objects (Visure)
success
boolean
message
string
error
integer

Request samples

CURL *hnd = curl_easy_init();

curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "GET");
curl_easy_setopt(hnd, CURLOPT_URL, "https://catasto.openapi.it/visura_catastale");

struct curl_slist *headers = NULL;
headers = curl_slist_append(headers, "Authorization: Bearer REPLACE_BEARER_TOKEN");
curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers);

CURLcode ret = curl_easy_perform(hnd);

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "success": true,
  • "message": "",
  • "error": null
}

Detail of the visura

Allows you to see the detail of the visura identified by the id

Authorizations:
bearerAuth
path Parameters
id
required
string
Example: 628e41900e304d63044f857d

Visura id

Responses

Response Schema: application/json
object (Visura)
success
boolean
message
string
error
integer

Request samples

CURL *hnd = curl_easy_init();

curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "GET");
curl_easy_setopt(hnd, CURLOPT_URL, "https://catasto.openapi.it/visura_catastale/%7Bid%7D");

struct curl_slist *headers = NULL;
headers = curl_slist_append(headers, "Authorization: Bearer REPLACE_BEARER_TOKEN");
curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers);

CURLcode ret = curl_easy_perform(hnd);

Response samples

Content type
application/json
{
  • "data": {
    },
  • "success": true,
  • "message": "",
  • "error": null
}

Download visura

This method allows you to directly download the document

Authorizations:
bearerAuth
path Parameters
id
required
string
Example: 628e41900e304d63044f857d

Visura id

Responses

Response Schema: application/pdf
string <binary>

Request samples

CURL *hnd = curl_easy_init();

curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "GET");
curl_easy_setopt(hnd, CURLOPT_URL, "https://catasto.openapi.it/visura_catastale/%7Bid%7D/documento");

struct curl_slist *headers = NULL;
headers = curl_slist_append(headers, "Authorization: Bearer REPLACE_BEARER_TOKEN");
curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers);

CURLcode ret = curl_easy_perform(hnd);

Response samples

Content type
application/json
{
  • "success": false,
  • "message": "Wrong id",
  • "error": 286,
  • "data": null
}