MapIt API
The documentation below is for programmers who want to use MapIt as a web service, describing its REST API.
lookup by point
- URL:
- /point/[SRID]/[x],[y]
- /point/[SRID]/[x],[y]/box
- Parameters:
-
SRID is a unique number referring to a particular co-ordinate system; the one you probably are interested in is 4326 for WGS84 normal lon/lat.
x and y are the co-ordinates of the point in the co-ordinate system; note that x,y means longitude,latitude.
- Optional query parameters:
-
- type, to restrict results to a particular area type or types (multiple types separated by commas);
- generation, to return results for a previous generation.
- Returns:
-
A hash of the areas that the point is contained within. If the /box version is used, only the area bounding boxes are considered.
- Example:
lookupnearest postcode
- URL:
- /nearest/[SRID]/[x],[y]
- Parameters:
- Same as for by point.
- Returns:
- The postcode closest to the particular point.
- Example
lookup by area
- URL:
- /area/[area ID]
- /area/[area ID]/example_postcode
- /area/[area ID]/geometry
- /area/[area ID].[kml or geojson or wkt]
- /area/[SRID]/[area ID].[kml or json or wkt]
- Optional query parameters:
- simplify_tolerance, a floating point parameter to simplify the polygons returned.
- Returns:
- Information on a particular area, including name, type, parent, and any associated codes (see below for details). The code lookups redirect to the area URI. example_postcode returns a random postcode within the area specified. geometry returns centroid, extent and area of the area.
- Examples:
lookup multiple areas
- URL:
- /areas/[area IDs]
- /areas/[area IDs]/geometry
- /areas/[type(s)]
- /areas/[name prefix]
- Parameters:
- Separate multiple parameters with commas. Name prefix means it will return any area that starts with the string given. The current area types are:
- Optional query parameters:
- min_generation, to return areas since that generation (type and name lookups only).
- type, to restrict results to a type or types (multiple separated by commas; name lookup only).
- Returns:
-
Information on multiple areas that match the parameters provided, as a dictionary indexed by area ID. The geometry argument lets you fetch multiple single area geometry results at once.
- Examples:
Generations
- URL:
- /generations
- Returns:
- A list of all generations in this installation of MapIt.
General information
- Format
-
All calls return JSON, you can generally get an HTML representation by sticking .html on the end.
Whenever an area is returned from MapIt, it is as a dictionary with the following keys: id, name, country, type, parent_area, generation_low, generation_high, codes.
- Historical areas
- By default, calls will return active areas; for some calls you may specify a previous generation to look up instead.
About MapIt
MapIt was originally written in the UK back in 2003 as a postcode lookup to power the original mySociety sites such as WriteToThem. Over time it gained features such as point lookup (for FixMyStreet), and when Ordnance Survey data became freely available in 2010, it was rewritten and made public for the whole UK.
Versions now appear in other countries, such as this one implemented by Open Local in Australia, Norway, and in 2012 mySociety released a global version based on OpenStreetMap data.
Usage & Licence
As a registered charity Open Local only allows this service to be used free of charge by other registered charities, or individuals working on non-profit projects. In order to maintain quality of service for our own websites, as well as our API users, this service is rate limited to an average of one request every two seconds.
Any other use must be paid for. We offer a range of payment options, from rate-limited use of this service, to unlimited usage of versions we can deploy to virtual servers for you.
For all licensing enquiries, please get in touch so we can discuss how we can provide you with the service you require.
Any use of this service will require attribution of the Australian Bureau of Statistics as per its licences. We also ask that all non-profit users attribute Open Local on your sites or apps – please include a link to this page.