{"ok":true,"site":"openstreetmap","host":"openstreetmap.org","about":"OpenStreetMap (openstreetmap.org), the free editable world map. This CLI searches places, reads map elements, their history and raw data, gets routes, exports map data for a bounding box, and reads changesets, user profiles, diaries and communities.","commands":[{"command":"search-places","summary":"Geocode a place name or address with Nominatim, the search engine openstreetmap.org uses. Returns OSM type/id, coordinates and display name.","params":[{"name":"q","type":"string","required":true,"description":"Free-text place name or address"},{"name":"api_limit","type":"number","description":"Maximum number of results (1-40) (sent to the site as \"limit\"; clify's own --limit only shapes the output)","default":10},{"name":"viewbox","type":"string","description":"Preferred area as minlon,minlat,maxlon,maxlat. Results inside it are ranked higher."},{"name":"exclude_place_ids","type":"string","description":"Comma-separated place_ids to exclude. Use it to get more results after a first page."}],"exampleUrl":"https://clify-dev.netlify.app/openstreetmap/search-places?q=Central+Park%2C+New+York&api_limit=5&viewbox=-74.0204%2C40.7563%2C-73.9106%2C40.8086&exclude_place_ids=359156228"},{"command":"get-element","summary":"Get the detail page of an OSM node, way or relation: name, current version, last editor, changeset, edit comment and tags (as text).","params":[{"name":"element_type","type":"string","required":true,"description":"OSM element type","oneOf":["node","way","relation"]},{"name":"id","type":"number","required":true,"description":"Numeric OSM element id (osm_id from search-places)"}],"exampleUrl":"https://clify-dev.netlify.app/openstreetmap/get-element"},{"command":"get-element-history","summary":"List every version of an OSM node, way or relation, with version number, editor, timestamp, changeset and comment.","params":[{"name":"element_type","type":"string","required":true,"description":"OSM element type","oneOf":["node","way","relation"]},{"name":"id","type":"number","required":true,"description":"Numeric OSM element id"}],"exampleUrl":"https://clify-dev.netlify.app/openstreetmap/get-element-history"},{"command":"get-element-full","summary":"Get raw OSM data as JSON for a way or relation together with all its member nodes (coordinates, tags, versions, editors).","params":[{"name":"element_type","type":"string","required":true,"description":"Element type (only ways and relations have /full)","oneOf":["way","relation"]},{"name":"id","type":"number","required":true,"description":"Numeric OSM way or relation id"}],"exampleUrl":"https://clify-dev.netlify.app/openstreetmap/get-element-full"},{"command":"export-map-data","summary":"Download all raw OSM data (nodes, ways, relations) in a small bounding box as JSON. This is what the Export button returns.","params":[{"name":"bbox","type":"string","required":true,"description":"Bounding box minlon,minlat,maxlon,maxlat. Must be small (well under 0.25 square degrees and 50,000 nodes), otherwise 400."}],"exampleUrl":"https://clify-dev.netlify.app/openstreetmap/export-map-data?bbox=-73.9740%2C40.7645%2C-73.9720%2C40.7660"},{"command":"get-route","summary":"Get turn-by-turn directions between two coordinates with the OSRM engine (FOSSGIS) for car, bike or foot. Returns distance in meters and duration in seconds.","params":[{"name":"profile","type":"string","description":"Travel mode","oneOf":["car","bike","foot"],"default":"car"},{"name":"from_lon","type":"number","required":true,"description":"Start longitude (e.g. lon from search-places)"},{"name":"from_lat","type":"number","required":true,"description":"Start latitude"},{"name":"to_lon","type":"number","required":true,"description":"Destination longitude"},{"name":"to_lat","type":"number","required":true,"description":"Destination latitude"},{"name":"steps","type":"boolean","description":"Include turn-by-turn steps","default":true}],"exampleUrl":"https://clify-dev.netlify.app/openstreetmap/get-route?steps=true"},{"command":"get-route-valhalla","summary":"Get directions with the Valhalla engine (FOSSGIS). Returns human-readable maneuvers, length and time.","params":[{"name":"json","type":"string","required":true,"description":"Valhalla request as a JSON string: {\"locations\":[{\"lat\":..,\"lon\":..},{\"lat\":..,\"lon\":..}],\"costing\":\"auto|bicycle|pedestrian\",\"directions_options\":{\"units\":\"kilometers\"}}"}],"exampleUrl":"https://clify-dev.netlify.app/openstreetmap/get-route-valhalla?json=%7B%22locations%22%3A%5B%7B%22lat%22%3A40.7570095%2C%22lon%22%3A-73.9859724%2C%22radius%22%3A5%7D%2C%7B%22lat%22%3A40.7827725%2C%22lon%22%3A-73.9653627%2C%22radius%22%3A5%7D%5D%2C%22costing%22%3A%22pedestrian%22%2C%22directions_options%22%3A%7B%22units%22%3A%22kilometers%22%7D%7D"},{"command":"list-area-changesets","summary":"List recent changesets (edit sessions) in a bounding box, newest first. Use --before for older ones.","params":[{"name":"bbox","type":"string","required":true,"description":"Bounding box minlon,minlat,maxlon,maxlat"},{"name":"before","type":"number","description":"Only changesets with id lower than this. Pass the last changeset id of the previous page."}],"exampleUrl":"https://clify-dev.netlify.app/openstreetmap/list-area-changesets?bbox=-74.01540756225587%2C40.74361546275168%2C-73.93558502197267%2C40.79594285648614&before=190661217"},{"command":"list-user-changesets","summary":"List a user's changesets (edits), newest first. Use --before for older ones.","params":[{"name":"username","type":"string","required":true,"description":"OSM display name"},{"name":"before","type":"number","description":"Only changesets with id lower than this (pagination cursor)"}],"exampleUrl":"https://clify-dev.netlify.app/openstreetmap/list-user-changesets?before=176923031"},{"command":"get-user","summary":"Get a mapper's public profile: edit count, mapper-since date, last edit date and description.","params":[{"name":"username","type":"string","required":true,"description":"OSM display name (as in /user/{name} links)"}],"exampleUrl":"https://clify-dev.netlify.app/openstreetmap/get-user"},{"command":"get-user-contributions","summary":"Get a user's contribution count for the last year (from the activity heatmap).","params":[{"name":"username","type":"string","required":true,"description":"OSM display name"}],"exampleUrl":"https://clify-dev.netlify.app/openstreetmap/get-user-contributions"},{"command":"list-diary-entries","summary":"List the latest user diary entries from all languages, newest first. Use --before for older ones.","params":[{"name":"before","type":"number","description":"Only entries with id lower than this. Pass the last entry id of the previous page."}],"exampleUrl":"https://clify-dev.netlify.app/openstreetmap/list-diary-entries?before=409471"},{"command":"list-diary-entries-by-language","summary":"List the latest diary entries written in one language (e.g. en, de, fr), newest first.","params":[{"name":"language","type":"string","required":true,"description":"Language code, e.g. en, de, fr, es"},{"name":"before","type":"number","description":"Only entries with id lower than this (pagination cursor)"}],"exampleUrl":"https://clify-dev.netlify.app/openstreetmap/list-diary-entries-by-language?before=409471"},{"command":"get-diary-entry","summary":"Read one diary entry: title, author, date, full text, location and the comment discussion.","params":[{"name":"username","type":"string","required":true,"description":"Author's display name (from the entry url /user/{name}/diary/{id})"},{"name":"id","type":"number","required":true,"description":"Diary entry id"}],"exampleUrl":"https://clify-dev.netlify.app/openstreetmap/get-diary-entry"},{"command":"list-communities","summary":"List the official OpenStreetMap Local Chapters (country or regional organisations) with their websites.","params":[],"exampleUrl":"https://clify-dev.netlify.app/openstreetmap/list-communities"}]}