]> git.openstreetmap.org Git - nominatim.git/blobdiff - docs/api/Lookup.md
split up large setup function
[nominatim.git] / docs / api / Lookup.md
index 3b6472ad4861601376f1ca630b57205eaac30880..937292623f60c58ff1cb45882d09002a64bd08d3 100644 (file)
@@ -1,47 +1,96 @@
-## Address lookup
+# Address lookup
 
-Lookup the address of one or multiple OSM objects like node, way or relation.
+The lookup API allows to query the address and other details of one or
+multiple OSM objects like node, way or relation.
+
+## Parameters
+
+The lookup API has the following format:
 
-### Parameters
 ```
-  https://nominatim.openstreetmap.org/lookup?<query>
+  https://nominatim.openstreetmap.org/lookup?osm_ids=[N|W|R]<value>,…,…,&<params>
 ```
 
-* `format=[xml|json]`
+`osm_ids` is mandatory and must contain a comma-separated list of OSM ids each
+prefixed with its type, one of node(N), way(W) or relation(R). Up to 50 ids
+can be queried at the same time.
+
+Additional optional parameters are explained below.
+
+### Output format
 
-    * Output format
+* `format=[xml|json|jsonv2|geojson|geocodejson]`
+
+See [Place Output Formats](Output.md) for details on each format. (Default: xml)
 
 * `json_callback=<string>`
 
-    * Wrap json output in a callback function (JSONP) i.e. `<string>(<json>)` 
+Wrap JSON output in a callback function (JSONP) i.e. `<string>(<json>)`.
+Only has an effect for JSON output formats.
+
+### Output details
+
+* `addressdetails=[0|1]`
+
+Include a breakdown of the address into elements. (Default: 0)
+
+
+* `extratags=[0|1]`
+
+Include additional information in the result if available,
+e.g. wikipedia link, opening hours. (Default: 0)
+
+
+* `namedetails=[0|1]`
+
+Include a list of alternative names in the results. These may include
+language variants, references, operator and brand. (Default: 0)
+
+
+### Language of results
 
 * `accept-language=<browser language string>`
 
-    * Preferred language order for showing search results, overrides the value specified in the "Accept-Language" HTTP header.
-    * Either uses standard rfc2616 accept-language string or a simple comma separated list of language codes.
+Preferred language order for showing search results, overrides the value
+specified in the "Accept-Language" HTTP header.
+Either use a standard RFC2616 accept-language string or a simple
+comma-separated list of language codes.
 
-* `osm_ids=[N|W|R]<value>,…,[N|W|R]<value`
-    * A list of up to 50 specific osm node, way or relations ids to return the addresses for
+### Polygon output
 
-* `addressdetails=[0|1]`
-    * defaults to 0
-    * Include a breakdown of the address into elements
+* `polygon_geojson=1`
+* `polygon_kml=1`
+* `polygon_svg=1`
+* `polygon_text=1`
+
+Output geometry of results as a GeoJSON, KML, SVG or WKT. Only one of these
+options can be used at a time. (Default: 0)
+
+* `polygon_threshold=0.0`
+
+Return a simplified version of the output geometry. The parameter is the
+tolerance in degrees with which the geometry may differ from the original
+geometry. Topology is preserved in the result. (Default: 0.0)
+
+### Other
 
 * `email=<valid email address>`
 
-    * If you are making large numbers of request please include a valid email address or alternatively include your email address as part of the User-Agent string.
-    * This information will be kept confidential and only used to contact you in the event of a problem, see [Usage Policy](https://operations.osmfoundation.org/policies/nominatim/) for more details.
+If you are making large numbers of request please include an appropriate email
+address to identify your requests. See Nominatim's [Usage Policy](https://operations.osmfoundation.org/policies/nominatim/) for more details.
+
+* `debug=[0|1]`
 
-* `extratags=1`
-    * Include additional information in the result if available, e.g. wikipedia link, opening hours.
+Output assorted developer debug information. Data on internals of Nominatim's
+"Search Loop" logic, and SQL queries. The output is (rough) HTML format.
+This overrides the specified machine readable format. (Default: 0)
 
-* `namedetails=1`
-    * Include a list of alternative names in the results.
-    * These may include language variants, references, operator and brand.
 
-### Example
+## Examples
 
-* [https://nominatim.openstreetmap.org/lookup?osm_ids=R146656,W104393803,N240109189](https://nominatim.openstreetmap.org/lookup?osm_ids=R146656,W104393803,N240109189)
+##### XML
+
+[https://nominatim.openstreetmap.org/lookup?osm_ids=R146656,W104393803,N240109189](https://nominatim.openstreetmap.org/lookup?osm_ids=R146656,W104393803,N240109189)
 
 ```xml
   <lookupresults timestamp="Mon, 29 Jun 15 18:01:33 +0000" attribution="Data © OpenStreetMap contributors, ODbL 1.0. https://www.openstreetmap.org/copyright" querystring="R146656,W104393803,N240109189" polygon="false">
@@ -73,3 +122,41 @@ Lookup the address of one or multiple OSM objects like node, way or relation.
     </place>
   </lookupresults>
 ```
+
+##### JSON with extratags
+
+[https://nominatim.openstreetmap.org/lookup?osm_ids=W50637691&format=json](https://nominatim.openstreetmap.org/lookup?osm_ids=W50637691&format=json)
+
+```json
+[
+  {
+    "place_id": "84271358",
+    "licence": "Data © OpenStreetMap contributors, ODbL 1.0. https://osm.org/copyright",
+    "osm_type": "way",
+    "osm_id": "50637691",
+    "lat": "52.39955055",
+    "lon": "13.04806574678",
+    "display_name": "Brandenburger Tor, Brandenburger Straße, Nördliche Innenstadt, Innenstadt, Potsdam, Brandenburg, 14467, Germany",
+    "class": "historic",
+    "type": "city_gate",
+    "importance": "0.221233780277011",
+    "address": {
+      "address29": "Brandenburger Tor",
+      "pedestrian": "Brandenburger Straße",
+      "suburb": "Nördliche Innenstadt",
+      "city": "Potsdam",
+      "state": "Brandenburg",
+      "postcode": "14467",
+      "country": "Germany",
+      "country_code": "de"
+    },
+    "extratags": {
+      "image": "http://commons.wikimedia.org/wiki/File:Potsdam_brandenburger_tor.jpg",
+      "wikidata": "Q695045",
+      "wikipedia": "de:Brandenburger Tor (Potsdam)",
+      "wheelchair": "yes",
+      "description": "Kleines Brandenburger Tor in Potsdam"
+    }
+  }
+]
+```