Adresse
App · 10 actions
Geocode French addresses with the national address base: turn an address into coordinates and its official form, one at a time or a thousand at once, find the address at a GPS position, suggest addresses as they are typed, find town halls, stations, schools and landmarks, and look up land parcels in the cadastre. Covers all of France, overseas included, from the Base Adresse Nationale and IGN's Géoplateforme. Free, and no account or API key is required.
Actions
| Action | What it does |
|---|---|
| Find cadastral parcels | Look up land parcels in the French cadastre, by their 14-character reference or by commune, section and number, and get each one's location and boundary. |
| Find places near a point | List the places of interest around a latitude and longitude in France, nearest first, each with its distance: the landmark at a spot, or the town halls, stations or schools near it when a category is given. |
| Find the address at a point | Find the French addresses nearest a latitude and longitude, nearest first, each with how many metres away it is. |
| Find the addresses at a list of points | Find the nearest French address to each of up to 1,000 latitude and longitude pairs in one request, in the order given, with the distance to each. |
| Find the parcel at a point | Find the cadastral parcel a latitude and longitude falls in, with its reference, section, number, commune and boundary. |
| Geocode a list of addresses | Geocode up to 1,000 French addresses in one request, such as the rows of a spreadsheet, and get each back in the same order with its coordinates, official form and score. |
| Geocode an address | Turn a French address into map coordinates and a clean, official form: the best match in the Base Adresse Nationale, with its postcode, INSEE commune code, department and region, and a score saying how sure the match is. |
| Search addresses | List every French address, street, locality or town that matches some text, best match first, each with its coordinates, postcode, INSEE code and score. |
| Search places | Find places in France by name from IGN's map of points of interest: town halls, stations, schools, hospitals, museums, monuments, lakes and summits, with their category and coordinates, and their outline if wanted. |
| Suggest addresses as typed | Complete a partly typed French address or place name, as a search box would ('73 avenue de par'), with up to 15 suggestions and their coordinates. |
Find cadastral parcels
Look up land parcels in the French cadastre, by their 14-character reference or by commune, section and number, and get each one's location and boundary. Give the section alone to list its parcels. No API key required.
Inputs
- Parcel reference
parcel_idtext - The parcel's full 14-character cadastral reference, as on a land registry extract. Leave empty to search by commune, section and number instead.
- Commune (INSEE code)
citycodetext - The commune's five-character INSEE code, when searching by section and number. An arrondissement's code works for Paris, Lyon and Marseille.
- Section
sectiontext - The cadastral section: one or two letters or digits, such as AB or 0D.
- Parcel number
numbertext - The parcel's number within its section, up to four digits.
- Sheet
sheettext - The map sheet, for a section drawn on more than one. Rarely needed.
- Max results
limitnumber - How many parcels to return, from 1 to 50.From 1 to 50. Default:
10. - Include outlines
include_outlinetrue/false - Also return each parcel's boundary as a GeoJSON polygon in 'outline'.Default:
true.
Outputs
countnumberfoundtrue/falseparcel_idtextresultslist
Example output
{
"count": 1,
"found": true,
"parcel_id": "940670000D0014",
"results": [
{
"city": "Saint-Mand\u00e9",
"citycode": "94067",
"department_code": "94",
"distance_meters": null,
"district_code": "000",
"id": "940670000D0014",
"label": "Parcel 0D 0014, Saint-Mand\u00e9",
"latitude": 48.845687,
"longitude": 2.42439,
"map_url": "https://www.openstreetmap.org/?mlat=48.845687&mlon=2.42439#map=18/48.845687/2.42439",
"municipality_code": "067",
"number": "0014",
"old_municipality_code": "000",
"outline": {
"coordinates": [
[
[
2.424518,
48.845617
],
[
2.424172,
48.845658
],
[
2.424188,
48.845743
],
[
2.424536,
48.845712
],
[
2.424535,
48.845707
],
[
2.424518,
48.845617
]
]
],
"type": "Polygon"
},
"score": null,
"section": "0D",
"sheet": "01"
}
]
}Find places near a point
List the places of interest around a latitude and longitude in France, nearest first, each with its distance: the landmark at a spot, or the town halls, stations or schools near it when a category is given. No API key required.
Inputs
- Latitude
latitudenumberRequired - Latitude of the point, in decimal degrees, such as 48.8457.From -90 to 90.
- Longitude
longitudenumberRequired - Longitude of the point, in decimal degrees, such as 2.4245.From -180 to 180.
- Category
categorytext - Only return places of this kind, in French as the IGN's BD TOPO names them: a broad group such as 'transport' or 'administratif', or a precise kind such as 'mairie', 'gare voyageurs uniquement', 'collège', 'hôpital', 'musée' or 'monument'. Up to ten, separated by commas.
- Max results
limitnumber - How many places to return, from 1 to 50. With outlines included the geocoder sends at most 20.From 1 to 50. Default:
10. - Include outlines
include_outlinetrue/false - Also return each place's shape as GeoJSON in 'outline' (a building's footprint, a park's boundary), for drawing on a map. Off by default, since outlines can be large.Default:
false.
Outputs
countnumberfoundtrue/falselatitudenumberlongitudenumbernearestobjectnotetextresultslist- The places, nearest first.
Example output
{
"count": 2,
"found": true,
"latitude": 48.8584,
"longitude": 2.2945,
"nearest": {
"bdtopo_id": "SURFACTI0000000000142427",
"categories": [
"monument",
"zone d'activit\u00e9 ou d'int\u00e9r\u00eat"
],
"category": "monument",
"cities": [
"Paris",
"Paris 7e Arrondissement"
],
"city": "Paris",
"citycode": "75056",
"citycodes": [
"75056",
"75107"
],
"classification": 1,
"department_code": "75",
"distance_meters": 24,
"district": "Paris 7e Arrondissement",
"label": "Tour Eiffel, Paris 7e Arrondissement",
"latitude": 48.858264,
"longitude": 2.29424,
"map_url": "https://www.openstreetmap.org/?mlat=48.858264&mlon=2.29424#map=18/48.858264/2.29424",
"name": "Tour Eiffel",
"names": [
"Tour Eiffel"
],
"outline": null,
"postcode": "75007",
"postcodes": [
"75007"
],
"score": 0.9976,
"territory": "METROPOLE",
"toponym": "Tour Eiffel"
},
"note": null,
"results": [
{
"bdtopo_id": "SURFACTI0000000000142427",
"categories": [
"monument",
"zone d'activit\u00e9 ou d'int\u00e9r\u00eat"
],
"category": "monument",
"cities": [
"Paris",
"Paris 7e Arrondissement"
],
"city": "Paris",
"citycode": "75056",
"citycodes": [
"75056",
"75107"
],
"classification": 1,
"department_code": "75",
"distance_meters": 24,
"district": "Paris 7e Arrondissement",
"label": "Tour Eiffel, Paris 7e Arrondissement",
"latitude": 48.858264,
"longitude": 2.29424,
"map_url": "https://www.openstreetmap.org/?mlat=48.858264&mlon=2.29424#map=18/48.858264/2.29424",
"name": "Tour Eiffel",
"names": [
"Tour Eiffel"
],
"outline": null,
"postcode": "75007",
"postcodes": [
"75007"
],
"score": 0.9976,
"territory": "METROPOLE",
"toponym": "Tour Eiffel"
},
{
"bdtopo_id": "PAIHABIT0000000000148269",
"categories": [
"quartier",
"zone d'habitation"
],
"category": "quartier",
"cities": [
"Paris",
"Paris 7e Arrondissement"
],
"city": "Paris",
"citycode": "75056",
"citycodes": [
"75056",
"75107"
],
"classification": 7,
"department_code": "75",
"distance_meters": 547,
"district": "Paris 7e Arrondissement",
"label": "Gros Caillou, Paris 7e Arrondissement",
"latitude": 48.857364,
"longitude": 2.30181,
"map_url": "https://www.openstreetmap.org/?mlat=48.857364&mlon=2.30181#map=18/48.857364/2.30181",
"name": "Gros Caillou",
"names": [
"Gros Caillou"
],
"outline": null,
"postcode": "75007",
"postcodes": [
"75007"
],
"score": 0.9453,
"territory": "METROPOLE",
"toponym": "Gros Caillou"
}
]
}Find the address at a point
Find the French addresses nearest a latitude and longitude, nearest first, each with how many metres away it is. Use it to put an address on a GPS position, a delivery scan or a photo's location. No API key required.
Inputs
- Latitude
latitudenumberRequired - Latitude of the point, in decimal degrees, such as 48.8457.From -90 to 90.
- Longitude
longitudenumberRequired - Longitude of the point, in decimal degrees, such as 2.4245.From -180 to 180.
- Kind of result
address_typetext - Only return this kind of result: a numbered address, a whole street, a locality (a named place with no streets, a lieu-dit) or a town.One of:
any(Any kind),housenumber(A numbered address),street(A street),locality(A locality (lieu-dit)),municipality(A town or city). Default:any. - Max results
limitnumber - How many addresses to return, from 1 to 50.From 1 to 50. Default:
5.
Outputs
countnumberfoundtrue/falselatitudenumberlongitudenumbernearestobject- The nearest address.
notetextresultslist- Every address found, nearest first.
Example output
{
"count": 2,
"found": true,
"latitude": 48.845726,
"longitude": 2.424573,
"nearest": {
"ban_id": "7b81888d-7f55-4f01-b048-9cdb47a674fb",
"city": "Saint-Mand\u00e9",
"citycode": "94067",
"context": "94, Val-de-Marne, \u00cele-de-France",
"department": "Val-de-Marne",
"department_code": "94",
"distance_meters": 0,
"district": null,
"housenumber": "73",
"id": "94067_7115_00073",
"importance": 0.6161,
"label": "73 Avenue de Paris 94160 Saint-Mand\u00e9",
"latitude": 48.845726,
"locality": null,
"longitude": 2.424573,
"map_url": "https://www.openstreetmap.org/?mlat=48.845726&mlon=2.424573#map=18/48.845726/2.424573",
"name": "73 Avenue de Paris",
"old_city": null,
"old_citycode": null,
"population": null,
"postcode": "94160",
"projected_x": 657770.33,
"projected_y": 6860785.03,
"region": "\u00cele-de-France",
"score": 1.0,
"street": "Avenue de Paris",
"type": "housenumber"
},
"note": null,
"results": [
{
"ban_id": "7b81888d-7f55-4f01-b048-9cdb47a674fb",
"city": "Saint-Mand\u00e9",
"citycode": "94067",
"context": "94, Val-de-Marne, \u00cele-de-France",
"department": "Val-de-Marne",
"department_code": "94",
"distance_meters": 0,
"district": null,
"housenumber": "73",
"id": "94067_7115_00073",
"importance": 0.6161,
"label": "73 Avenue de Paris 94160 Saint-Mand\u00e9",
"latitude": 48.845726,
"locality": null,
"longitude": 2.424573,
"map_url": "https://www.openstreetmap.org/?mlat=48.845726&mlon=2.424573#map=18/48.845726/2.424573",
"name": "73 Avenue de Paris",
"old_city": null,
"old_citycode": null,
"population": null,
"postcode": "94160",
"projected_x": 657770.33,
"projected_y": 6860785.03,
"region": "\u00cele-de-France",
"score": 1.0,
"street": "Avenue de Paris",
"type": "housenumber"
},
{
"ban_id": "39023ee1-fc04-497e-8bfb-2a7a0c562c2b",
"city": "Vincennes",
"citycode": "94080",
"context": "94, Val-de-Marne, \u00cele-de-France",
"department": "Val-de-Marne",
"department_code": "94",
"distance_meters": 27,
"district": null,
"housenumber": "73",
"id": "94080_7115_00073",
"importance": 0.7264,
"label": "73 Avenue de Paris 94300 Vincennes",
"latitude": 48.84585,
"locality": null,
"longitude": 2.424256,
"map_url": "https://www.openstreetmap.org/?mlat=48.84585&mlon=2.424256#map=18/48.84585/2.424256",
"name": "73 Avenue de Paris",
"old_city": null,
"old_citycode": null,
"population": null,
"postcode": "94300",
"projected_x": 657747.17,
"projected_y": 6860798.99,
"region": "\u00cele-de-France",
"score": 0.9973,
"street": "Avenue de Paris",
"type": "housenumber"
}
]
}Find the addresses at a list of points
Find the nearest French address to each of up to 1,000 latitude and longitude pairs in one request, in the order given, with the distance to each. A row that is not a valid point is reported, not fatal. No API key required.
Inputs
- Points
pointslistRequired - The points, one row each, with a reference of your own if you like. Rows from an earlier step work too: columns named latitude and longitude (or lat and lon) are read. Up to 1,000 rows.
Outputs
countnumberfound_countnumbernot_found_countnumberresultslist- Every point, in the order given.
Example output
{
"count": 3,
"found_count": 2,
"not_found_count": 1,
"results": [
{
"ban_id": "7b81888d-7f55-4f01-b048-9cdb47a674fb",
"city": "Saint-Mand\u00e9",
"citycode": "94067",
"context": "94, Val-de-Marne, \u00cele-de-France",
"department": "Val-de-Marne",
"department_code": "94",
"distance_meters": 0,
"district": null,
"found": true,
"housenumber": "73",
"id": "94067_7115_00073",
"label": "73 Avenue de Paris 94160 Saint-Mand\u00e9",
"latitude": 48.845726,
"longitude": 2.424573,
"map_url": "https://www.openstreetmap.org/?mlat=48.845726&mlon=2.424573#map=18/48.845726/2.424573",
"name": "73 Avenue de Paris",
"note": null,
"old_city": null,
"old_citycode": null,
"postcode": "94160",
"reference": "IGN",
"region": "\u00cele-de-France",
"row": 1,
"status": "found",
"street": "Avenue de Paris",
"type": "housenumber"
},
{
"ban_id": "bc7a80e6-37ad-4040-9849-3d9272659935",
"city": "Marseille",
"citycode": "13202",
"context": "13, Bouches-du-Rh\u00f4ne, Provence-Alpes-C\u00f4te d'Azur",
"department": "Bouches-du-Rh\u00f4ne",
"department_code": "13",
"distance_meters": 34,
"district": "Marseille 2e Arrondissement",
"found": true,
"housenumber": "15",
"id": "13202_5329_00015",
"label": "15 Rue de la loge 13002 Marseille",
"latitude": 43.2965,
"longitude": 5.3698,
"map_url": "https://www.openstreetmap.org/?mlat=43.2965&mlon=5.3698#map=18/43.2965/5.3698",
"name": "15 Rue de la loge",
"note": null,
"old_city": null,
"old_citycode": null,
"postcode": "13002",
"reference": "Vieux-Port",
"region": "Provence-Alpes-C\u00f4te d'Azur",
"row": 2,
"status": "found",
"street": "Rue de la loge",
"type": "housenumber"
},
{
"ban_id": null,
"city": null,
"citycode": null,
"context": null,
"department": null,
"department_code": null,
"distance_meters": null,
"district": null,
"found": false,
"housenumber": null,
"id": null,
"label": null,
"latitude": 47.0,
"longitude": -30.0,
"map_url": "https://www.openstreetmap.org/?mlat=47.0&mlon=-30.0#map=18/47.0/-30.0",
"name": null,
"note": "No address is near this point.",
"old_city": null,
"old_citycode": null,
"postcode": null,
"reference": "Atlantic",
"region": null,
"row": 3,
"status": "not_found",
"street": null,
"type": null
}
]
}Find the parcel at a point
Find the cadastral parcel a latitude and longitude falls in, with its reference, section, number, commune and boundary. Use it to tie a site visit or a building to its land registry entry. No API key required.
Inputs
- Latitude
latitudenumberRequired - Latitude of the point, in decimal degrees, such as 48.8457.From -90 to 90.
- Longitude
longitudenumberRequired - Longitude of the point, in decimal degrees, such as 2.4245.From -180 to 180.
- Include outlines
include_outlinetrue/false - Also return each parcel's boundary as a GeoJSON polygon in 'outline'.Default:
true.
Outputs
citytextcitycodetext- The commune's INSEE code.
department_codetextdistance_metersnumber- How far the parcel is from the point asked about; 0 when the point is inside it.
district_codetext- The arrondissement, in Paris, Lyon and Marseille; 000 elsewhere.
foundtrue/falseidtext- The parcel's 14-character cadastral reference.
labeltextlatitudenumber- The parcel's centre.
longitudenumbermap_urltextmunicipality_codetextnotetextnumbertextold_municipality_codetextoutlineobject- The parcel's boundary as a GeoJSON polygon, when outlines were asked for.
scorenumbersectiontextsheettext
Example output
{
"city": "Saint-Mand\u00e9",
"citycode": "94067",
"department_code": "94",
"distance_meters": 8,
"district_code": "000",
"found": true,
"id": "940670000D0014",
"label": "Parcel 0D 0014, Saint-Mand\u00e9",
"latitude": 48.845687,
"longitude": 2.42439,
"map_url": "https://www.openstreetmap.org/?mlat=48.845687&mlon=2.42439#map=18/48.845687/2.42439",
"municipality_code": "067",
"note": null,
"number": "0014",
"old_municipality_code": "000",
"outline": {
"coordinates": [
[
[
2.424518,
48.845617
],
[
2.424172,
48.845658
],
[
2.424188,
48.845743
],
[
2.424536,
48.845712
],
[
2.424535,
48.845707
],
[
2.424518,
48.845617
]
]
],
"type": "Polygon"
},
"score": 0.9992,
"section": "0D",
"sheet": "01"
}Geocode a list of addresses
Geocode up to 1,000 French addresses in one request, such as the rows of a spreadsheet, and get each back in the same order with its coordinates, official form and score. Rows that did not match well enough are listed again on their own so they can be checked by hand. No API key required.
Inputs
- Addresses
addresseslistRequired - The addresses, one row each: the address, and if known its postcode or INSEE code to narrow the search, and a reference of your own to tell the results apart. Rows from an earlier step work too: columns named address, postcode, citycode and reference (or id) are read, in any case. Up to 1,000 rows.
- Minimum score
minimum_scorenumber - How sure the match has to be, from 0 to 1, to count as matched. The geocoder always proposes something, even for nonsense, so the score is what tells a real address from a guess. 0.5 suits most addresses; raise it to 0.7 or more when a wrong match would be costly.From 0 to 1. Default:
0.5.
Outputs
countnumbermatched_countnumberminimum_scorenumberresultslist- Every address, in the order given.
unmatchedlist- The rows that did not match, to check.
unmatched_countnumber
Example output
{
"count": 4,
"matched_count": 2,
"minimum_score": 0.5,
"results": [
{
"ambiguous": false,
"ban_id": "7b81888d-7f55-4f01-b048-9cdb47a674fb",
"city": "Saint-Mand\u00e9",
"citycode": "94067",
"context": "94, Val-de-Marne, \u00cele-de-France",
"department": "Val-de-Marne",
"department_code": "94",
"district": null,
"housenumber": "73",
"id": "94067_7115_00073",
"label": "73 Avenue de Paris 94160 Saint-Mand\u00e9",
"latitude": 48.845726,
"longitude": 2.424573,
"map_url": "https://www.openstreetmap.org/?mlat=48.845726&mlon=2.424573#map=18/48.845726/2.424573",
"matched": true,
"name": "73 Avenue de Paris",
"next_best_score": null,
"note": null,
"old_city": null,
"old_citycode": null,
"postcode": "94160",
"query": "73 avenue de Paris",
"reference": "IGN",
"region": "\u00cele-de-France",
"row": 1,
"score": 0.9651,
"status": "matched",
"street": "Avenue de Paris",
"type": "housenumber"
},
{
"ambiguous": true,
"ban_id": "8e6b04d7-f6fd-48a1-80be-4ec984a286e8",
"city": "Cergy",
"citycode": "95127",
"context": "95, Val-d'Oise, \u00cele-de-France",
"department": "Val-d'Oise",
"department_code": "95",
"district": null,
"housenumber": "8",
"id": "95127_1448_00008",
"label": "8 Boulevard du Port 95000 Cergy",
"latitude": 49.031624,
"longitude": 2.062821,
"map_url": "https://www.openstreetmap.org/?mlat=49.031624&mlon=2.062821#map=18/49.031624/2.062821",
"matched": true,
"name": "8 Boulevard du Port",
"next_best_score": 0.5401,
"note": "Another address scored almost as well (0.5401); check this one, or add its postcode.",
"old_city": null,
"old_citycode": null,
"postcode": "95000",
"query": "8 bd du port",
"reference": "Depot",
"region": "\u00cele-de-France",
"row": 2,
"score": 0.5403,
"status": "matched",
"street": "Boulevard du Port",
"type": "housenumber"
},
{
"ambiguous": false,
"ban_id": null,
"city": null,
"citycode": null,
"context": null,
"department": null,
"department_code": null,
"district": null,
"housenumber": null,
"id": null,
"label": null,
"latitude": null,
"longitude": null,
"map_url": null,
"matched": false,
"name": null,
"next_best_score": null,
"note": "No address matched.",
"old_city": null,
"old_citycode": null,
"postcode": null,
"query": "zzzz qqqq xxxx",
"reference": "Typo",
"region": null,
"row": 3,
"score": null,
"status": "not_found",
"street": null,
"type": null
},
{
"ambiguous": false,
"ban_id": null,
"city": null,
"citycode": null,
"context": null,
"department": null,
"department_code": null,
"district": null,
"housenumber": null,
"id": null,
"label": null,
"latitude": null,
"longitude": null,
"map_url": null,
"matched": false,
"name": null,
"next_best_score": null,
"note": "The geocoder skipped this row: an address needs 3 to 200 characters, starting with a letter or a digit.",
"old_city": null,
"old_citycode": null,
"postcode": null,
"query": "ab",
"reference": "Blank",
"region": null,
"row": 4,
"score": null,
"status": "skipped",
"street": null,
"type": null
}
],
"unmatched": [
{
"note": "No address matched.",
"query": "zzzz qqqq xxxx",
"reference": "Typo",
"row": 3,
"status": "not_found"
},
{
"note": "The geocoder skipped this row: an address needs 3 to 200 characters, starting with a letter or a digit.",
"query": "ab",
"reference": "Blank",
"row": 4,
"status": "skipped"
}
],
"unmatched_count": 2
}Geocode an address
Turn a French address into map coordinates and a clean, official form: the best match in the Base Adresse Nationale, with its postcode, INSEE commune code, department and region, and a score saying how sure the match is. Says whether it passed the minimum score, and flags it as ambiguous when another address scored almost as well ('8 bd du port' is in both Cergy and Amiens). No API key required.
Inputs
- Address
addresstextRequired - The address to find, written as one line. Spelling, accents and abbreviations ('bd', 'av', 'st') are forgiven. Include the postcode or city when you have it: many towns share a street name.
- Only in postcode
postcodetext - Only return results with this five-digit postcode. Several can be given, separated by commas. A postcode read out of a spreadsheet as a number (1000) is padded back (01000).
- Only in commune (INSEE code)
citycodetext - Only return results in the commune with this INSEE code: five characters such as 75056 for Paris or 2A004 for Ajaccio. It is not the postcode. Several can be given, separated by commas.
- Only in department
departmenttext - Only return results in this department, by its number: 75, 2A, or 971 for Guadeloupe. Up to ten, separated by commas.
- Only in city
citytext - Only return results in a town or city with this name.
- Kind of result
address_typetext - Only return this kind of result: a numbered address, a whole street, a locality (a named place with no streets, a lieu-dit) or a town.One of:
any(Any kind),housenumber(A numbered address),street(A street),locality(A locality (lieu-dit)),municipality(A town or city). Default:any. - Prefer results near latitude
near_latitudenumber - With 'Prefer results near longitude', ranks results closer to this point higher. It does not exclude anything further away.From -90 to 90.
- Prefer results near longitude
near_longitudenumber - The longitude of the point to favour results near.From -180 to 180.
- Minimum score
minimum_scorenumber - How sure the match has to be, from 0 to 1, to count as matched. The geocoder always proposes something, even for nonsense, so the score is what tells a real address from a guess. 0.5 suits most addresses; raise it to 0.7 or more when a wrong match would be costly.From 0 to 1. Default:
0.5.
Outputs
ambiguoustrue/false- Whether the next best match scored within 0.05 of it.
ban_idtext- The address's permanent BAN identifier (a UUID).
citytextcitycodetext- The commune's INSEE code (not the postcode).
contexttext- Department number, department and region, as one text.
departmenttextdepartment_codetextdistance_metersnumber- How far the address is from the point asked about.
districttext- The arrondissement, in Paris, Lyon and Marseille.
foundtrue/false- Whether anything came back at all.
housenumbertext- The number, with any suffix such as 'bis' or 'B'.
idtext- The address's key in the Base Adresse Nationale.
importancenumberlabeltext- The whole address as it is written: number, street, postcode and city.
latitudenumberlocalitytextlongitudenumbermap_urltextmatchedtrue/false- Whether the best match reached the minimum score.
minimum_scorenumbernametext- Number and street, or the locality's name.
next_best_labeltextnext_best_scorenumbernotetext- Why the match is missing, weak or ambiguous, when it is.
old_citytext- The former commune, where communes have merged.
old_citycodetextpopulationnumber- For a town or city: how many people live there.
postcodetextprojected_xnumber- Easting in France's legal projection (Lambert-93 in mainland France), in metres. Not a longitude.
projected_ynumber- Northing in the legal projection, in metres.
querytextregiontext- The region; an overseas territory's own name.
scorenumber- How well this matches the search, from 0 to 1.
streettexttypetext- housenumber, street, locality or municipality.
Example output
{
"ambiguous": true,
"ban_id": "8e6b04d7-f6fd-48a1-80be-4ec984a286e8",
"city": "Cergy",
"citycode": "95127",
"context": "95, Val-d'Oise, \u00cele-de-France",
"department": "Val-d'Oise",
"department_code": "95",
"distance_meters": null,
"district": null,
"found": true,
"housenumber": "8",
"id": "95127_1448_00008",
"importance": 0.6798,
"label": "8 Boulevard du Port 95000 Cergy",
"latitude": 49.031624,
"locality": null,
"longitude": 2.062821,
"map_url": "https://www.openstreetmap.org/?mlat=49.031624&mlon=2.062821#map=18/49.031624/2.062821",
"matched": true,
"minimum_score": 0.5,
"name": "8 Boulevard du Port",
"next_best_label": "8 Boulevard du Port 80000 Amiens",
"next_best_score": 0.5401,
"note": "8 Boulevard du Port 80000 Amiens scored almost as well (0.5401). Add the postcode or city to be sure which one is meant.",
"old_city": null,
"old_citycode": null,
"population": null,
"postcode": "95000",
"projected_x": 631468.28,
"projected_y": 6881710.34,
"query": "8 bd du port",
"region": "\u00cele-de-France",
"score": 0.5403,
"street": "Boulevard du Port",
"type": "housenumber"
}Search addresses
List every French address, street, locality or town that matches some text, best match first, each with its coordinates, postcode, INSEE code and score. Use it to offer a choice, or to see every Rue de Rivoli in Paris. No API key required.
Inputs
- Search for
querytextRequired - What to search for: an address, a street, a locality or a town, from 3 to 200 characters.
- Max results
limitnumber - How many results to return, from 1 to 50.From 1 to 50. Default:
10. - Kind of result
address_typetext - Only return this kind of result: a numbered address, a whole street, a locality (a named place with no streets, a lieu-dit) or a town.One of:
any(Any kind),housenumber(A numbered address),street(A street),locality(A locality (lieu-dit)),municipality(A town or city). Default:any. - Only in postcode
postcodetext - Only return results with this five-digit postcode. Several can be given, separated by commas. A postcode read out of a spreadsheet as a number (1000) is padded back (01000).
- Only in commune (INSEE code)
citycodetext - Only return results in the commune with this INSEE code: five characters such as 75056 for Paris or 2A004 for Ajaccio. It is not the postcode. Several can be given, separated by commas.
- Only in department
departmenttext - Only return results in this department, by its number: 75, 2A, or 971 for Guadeloupe. Up to ten, separated by commas.
- Only in city
citytext - Only return results in a town or city with this name.
- Prefer results near latitude
near_latitudenumber - With 'Prefer results near longitude', ranks results closer to this point higher. It does not exclude anything further away.From -90 to 90.
- Prefer results near longitude
near_longitudenumber - The longitude of the point to favour results near.From -180 to 180.
- Treat the last word as unfinished
autocompletetrue/false - Read the last word as the start of a word, as a search box does while someone types ('rue de riv'). Leave off for addresses written out in full: it is more accurate.Default:
false.
Outputs
countnumberfoundtrue/falsequerytextresultslist- The matches, best first.
Example output
{
"count": 2,
"found": true,
"query": "rue de rivoli",
"results": [
{
"ban_id": "7941e7a8-f63c-4619-a6df-d407225effcb",
"city": "Paris",
"citycode": "75101",
"context": "75, Paris, \u00cele-de-France",
"department": "Paris",
"department_code": "75",
"distance_meters": null,
"district": "Paris 1er Arrondissement",
"housenumber": null,
"id": "75101_8249",
"importance": 0.6747,
"label": "Rue de Rivoli 75001 Paris",
"latitude": 48.862442,
"locality": null,
"longitude": 2.3362,
"map_url": "https://www.openstreetmap.org/?mlat=48.862442&mlon=2.3362#map=18/48.862442/2.3362",
"name": "Rue de Rivoli",
"old_city": null,
"old_citycode": null,
"population": null,
"postcode": "75001",
"projected_x": 651300.54,
"projected_y": 6862694.59,
"region": "\u00cele-de-France",
"score": 0.9704,
"street": "Rue de Rivoli",
"type": "street"
},
{
"ban_id": "b37e6e25-05d7-4b1c-aa27-cf11864b4d55",
"city": "Paris",
"citycode": "75104",
"context": "75, Paris, \u00cele-de-France",
"department": "Paris",
"department_code": "75",
"distance_meters": null,
"district": "Paris 4e Arrondissement",
"housenumber": null,
"id": "75104_8249",
"importance": 0.6717,
"label": "Rue de Rivoli 75004 Paris",
"latitude": 48.856705,
"locality": null,
"longitude": 2.355124,
"map_url": "https://www.openstreetmap.org/?mlat=48.856705&mlon=2.355124#map=18/48.856705/2.355124",
"name": "Rue de Rivoli",
"old_city": null,
"old_citycode": null,
"population": null,
"postcode": "75004",
"projected_x": 652683.66,
"projected_y": 6862045.18,
"region": "\u00cele-de-France",
"score": 0.9702,
"street": "Rue de Rivoli",
"type": "street"
}
]
}Search places
Find places in France by name from IGN's map of points of interest: town halls, stations, schools, hospitals, museums, monuments, lakes and summits, with their category and coordinates, and their outline if wanted. No API key required.
Inputs
- Search for
querytextRequired - The place's name, from 3 to 200 characters.
- Category
categorytext - Only return places of this kind, in French as the IGN's BD TOPO names them: a broad group such as 'transport' or 'administratif', or a precise kind such as 'mairie', 'gare voyageurs uniquement', 'collège', 'hôpital', 'musée' or 'monument'. Up to ten, separated by commas.
- Only in postcode
postcodetext - Only return results with this five-digit postcode. Several can be given, separated by commas. A postcode read out of a spreadsheet as a number (1000) is padded back (01000).
- Only in commune (INSEE code)
citycodetext - Only return results in the commune with this INSEE code: five characters such as 75056 for Paris or 2A004 for Ajaccio. It is not the postcode. Several can be given, separated by commas.
- Only in department
departmenttext - Only return results in this department, by its number: 75, 2A, or 971 for Guadeloupe. Up to ten, separated by commas.
- Only in city
citytext - Only return results in a town or city with this name.
- Prefer results near latitude
near_latitudenumber - With 'Prefer results near longitude', ranks results closer to this point higher. It does not exclude anything further away.From -90 to 90.
- Prefer results near longitude
near_longitudenumber - The longitude of the point to favour results near.From -180 to 180.
- Max results
limitnumber - How many places to return, from 1 to 50. With outlines included the geocoder sends at most 20.From 1 to 50. Default:
10. - Include outlines
include_outlinetrue/false - Also return each place's shape as GeoJSON in 'outline' (a building's footprint, a park's boundary), for drawing on a map. Off by default, since outlines can be large.Default:
false.
Outputs
countnumberfoundtrue/falsenotetextquerytextresultslist- The places, best match first.
Example output
{
"count": 2,
"found": true,
"note": null,
"query": "mus\u00e9e du louvre",
"results": [
{
"bdtopo_id": "SURFACTI0000000314845912",
"categories": [
"mus\u00e9e",
"zone d'activit\u00e9 ou d'int\u00e9r\u00eat"
],
"category": "mus\u00e9e",
"cities": [
"Lens"
],
"city": "Lens",
"citycode": "62498",
"citycodes": [
"62498"
],
"classification": 1,
"department_code": "62",
"distance_meters": null,
"district": null,
"label": "Mus\u00e9e du Louvre-Lens, Lens",
"latitude": 50.43059,
"longitude": 2.805775,
"map_url": "https://www.openstreetmap.org/?mlat=50.43059&mlon=2.805775#map=18/50.43059/2.805775",
"name": "Mus\u00e9e du Louvre-Lens",
"names": [
"Mus\u00e9e du Louvre-Lens"
],
"outline": null,
"postcode": "62300",
"postcodes": [
"62300"
],
"score": 0.9091,
"territory": "METROPOLE",
"toponym": "Mus\u00e9e du Louvre-Lens"
},
{
"bdtopo_id": "SURFACTI0000000000142364",
"categories": [
"mus\u00e9e",
"zone d'activit\u00e9 ou d'int\u00e9r\u00eat"
],
"category": "mus\u00e9e",
"cities": [
"Paris 1er Arrondissement",
"Paris"
],
"city": "Paris",
"citycode": "75101",
"citycodes": [
"75101",
"75056"
],
"classification": 1,
"department_code": "75",
"distance_meters": null,
"district": "Paris 1er Arrondissement",
"label": "Mus\u00e9e du Louvre, Paris 1er Arrondissement",
"latitude": 48.860849,
"longitude": 2.336264,
"map_url": "https://www.openstreetmap.org/?mlat=48.860849&mlon=2.336264#map=18/48.860849/2.336264",
"name": "Mus\u00e9e du Louvre",
"names": [
"Mus\u00e9e du Louvre"
],
"outline": null,
"postcode": "75001",
"postcodes": [
"75001"
],
"score": 0.9091,
"territory": "METROPOLE",
"toponym": "Mus\u00e9e du Louvre"
}
]
}Suggest addresses as typed
Complete a partly typed French address or place name, as a search box would ('73 avenue de par'), with up to 15 suggestions and their coordinates. Use it to check what someone typed into a form. No API key required.
Inputs
- Text typed
texttextRequired - The start of an address or place name.
- Suggest
suggesttext - Whether to suggest addresses, places, or both.One of:
all(Addresses and places),addresses(Addresses only),places(Places only). Default:all. - Max suggestions
limitnumber - How many suggestions to return, from 1 to 15.From 1 to 15. Default:
10. - Only in
territorytext - Only suggest within METROPOLE (mainland France and Corsica), DOMTOM (overseas), or mainland department numbers such as 75, 69. For one overseas department, use its postcode instead.
- Only in postcode
postcodetext - Only return results with this five-digit postcode. Several can be given, separated by commas. A postcode read out of a spreadsheet as a number (1000) is padded back (01000).
- Only in commune (INSEE code)
citycodetext - Only return results in the commune with this INSEE code: five characters such as 75056 for Paris or 2A004 for Ajaccio. It is not the postcode. Several can be given, separated by commas.
- Prefer results near latitude
near_latitudenumber - With 'Prefer results near longitude', ranks results closer to this point higher. It does not exclude anything further away.From -90 to 90.
- Prefer results near longitude
near_longitudenumber - The longitude of the point to favour results near.From -180 to 180.
Outputs
countnumberfoundtrue/falsesuggestionslisttexttext
Example output
{
"count": 2,
"found": true,
"suggestions": [
{
"city": "Saint-Mand\u00e9",
"in_mainland_france": true,
"is_address": true,
"kind": "housenumber",
"latitude": 48.845726,
"longitude": 2.424573,
"map_url": "https://www.openstreetmap.org/?mlat=48.845726&mlon=2.424573#map=18/48.845726/2.424573",
"name": null,
"place_types": [],
"postcode": "94160",
"postcodes": [
"94160"
],
"street": "Avenue de Paris",
"text": "73 Avenue de Paris, 94160 Saint-Mand\u00e9"
},
{
"city": "Saint-Mand\u00e9",
"in_mainland_france": true,
"is_address": true,
"kind": "street",
"latitude": 48.845698,
"longitude": 2.420464,
"map_url": "https://www.openstreetmap.org/?mlat=48.845698&mlon=2.420464#map=18/48.845698/2.420464",
"name": null,
"place_types": [],
"postcode": "94160",
"postcodes": [
"94160"
],
"street": "Rue du Parc",
"text": "Rue du Parc, 94160 Saint-Mand\u00e9"
}
],
"text": "73 avenue de par"
}