{"openapi":"3.0.0","info":{"title":"SimpleMappr API","description":"Create free point maps for publications and presentations. Find out more at [https:\/\/www.simplemappr.net](https:\/\/www.simplemappr.net).","version":"1.0.0","contact":{"name":"David P. Shorthouse","email":"davidpshorthouse@gmail.com"},"license":{"name":"CC0","url":"http:\/\/creativecommons.org\/publicdomain\/zero\/1.0\/"}},"servers":[{"url":"https:\/\/www.simplemappr.net"}],"paths":{"\/api":{"get":{"summary":"GET to \/api","description":"GET to \/api to produce an image","parameters":[{"name":"ping","in":"query","description":"if ping=true is included, a JSON response will be produced in place of an image.","required":false,"schema":{"type":"boolean"}},{"name":"url","in":"query","description":"a URL-encoded, remote tab-separated text file the columns within which are treated as groups of points; the first row used for an optional legend; rows are comma- or space-separated points as latitude,longitude. It may also be a URL-encoded GeoRSS, GeoJSON, or KML feed. Examples: https:\/\/www.simplemappr.net\/public\/files\/demo.txt, https:\/\/www.simplemappr.net\/public\/files\/demo2.csv","required":false,"schema":{"type":"string"}},{"name":"points[x]","in":"query","description":"single or multiple markers written as latitude,longitude in decimal degrees, DDMMSS, or DD mm.mm. Multiple markers are separated by line-breaks, \\n and these are best used in a POST request. If a POST request is used, the initial response will be JSON as above.","required":false,"schema":{"type":"string"}},{"name":"wkt[x][data]","in":"query","description":"data for array of well-known text shape x expressed as POINT, LINESTRING, POLYGON, MULTIPOINT, MULTILINESTRING, or MULTIPOLYGON","required":false,"schema":{"type":"string"}},{"name":"wkt[x][title]","in":"query","description":"title for well-known text shape x","required":false,"schema":{"type":"string"}},{"name":"wkt[x][border]","in":"query","description":"border for well-known text shape x; only applies to POLYGON or MULTIPOLYGON","required":false,"schema":{"type":"boolean"}},{"name":"wkt[x][color]","in":"query","description":"color for well-known text shape x, e.g. 80,80,80","required":false,"style":"form","schema":{"type":"array","items":{"type":"integer","format":"int32","minimum":0,"maximum":255},"minItems":3,"maxItems":3,"default":[80,80,80]}},{"name":"shape[x]","in":"query","description":"shape of marker for column x, accepted values are one of: plus, cross, asterisk, circle, star, square, triangle, hexagon, inversetriangle, opencircle, openstar, opensquare, opentriangle, openhexagon, inverseopentriangle","required":false,"schema":{"type":"string","enum":["plus","cross","asterisk","circle","star","square","triangle","hexagon","inversetriangle","opencircle","openstar","opensquare","opentriangle","openhexagon","inverseopentriangle"]}},{"name":"size[x]","in":"query","description":"integer-based point size of marker in column x, accepted values are one of: 6, 8, 10, 12, 14, 16","required":false,"schema":{"type":"integer","format":"int32","minimum":6,"maximum":16}},{"name":"color[x]","in":"query","description":"comma-separated RGB colors for marker in column x, e.g. 0,0,0","required":false,"style":"form","schema":{"type":"array","items":{"type":"integer","format":"int32","minimum":0,"maximum":255},"default":[0,0,0],"minItems":3,"maxItems":3}},{"name":"shadow[x]","in":"query","description":"grey shadow on marker in column x with 2px offset to the right and bottom","required":false,"schema":{"type":"boolean"}},{"name":"outlinecolor","in":"query","description":"comma-separated RGB colors for halo around all solid markers, e.g. 120,120,120","required":false,"style":"form","schema":{"type":"array","items":{"type":"integer","format":"int32","minimum":0,"maximum":255},"default":[120,120,120],"minItems":3,"maxItems":3}},{"name":"zoom","in":"query","description":"integer from 1 to 10, centered on the geographic midpoint of all coordinates","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":10}},{"name":"bbox","in":"query","description":"comma-separated bounding box in decimal degrees expressed as minx,miny,maxx,maxy","required":false,"style":"form","schema":{"type":"array","items":{"type":"integer","format":"int32","minimum":-180,"maximum":180},"default":[-180,-90,180,90],"minItems":4,"maxItems":4}},{"name":"shade[places]","in":"query","description":"comma-separated State, Province or Country names or the three-letter ISO country code with pipe-separated States or Provinces flanked by brackets","required":false,"style":"form","schema":{"type":"array","items":{"type":"string"}}},{"name":"shade[title]","in":"query","description":"the title for the shaded places","required":false,"schema":{"type":"string"}},{"name":"shade[color]","in":"query","description":"comma-separated RGB fill colors for shaded places, e.g. 80,80,80","required":false,"style":"form","schema":{"type":"array","items":{"type":"integer","format":"int32","minimum":0,"maximum":255},"default":[80,80,80],"minItems":3,"maxItems":3}},{"name":"layers","in":"query","description":"comma-separated cultural or physical layers; one or more of base, countries, stateprovinces, stateprovinces_polygon, us_counties, lakesOutline, lakes, lakes_blue, rivers, oceans, oceans_blue, relief, reliefalt, reliefgrey, blueMarble, conservation, ecoregions, marine_ecoregions, roads, railroads, countrynames, stateprovnames, us_counties_names, lakenames, rivernames, placenames, physicalLabels, marineLabels, hotspotLabels, ecoregionLabels, marineEcoregionLabels","required":false,"style":"form","schema":{"type":"array","items":{"type":"string"}}},{"name":"projection","in":"query","description":"the output projection in either EPSG or ESRI references, accepted values are one of epsg:4326 (Geographic), esri:102009 (North America Lambert), esri:102015 (South America Lambert), esri:102014 (Europe Lambert), esri:102012 (Asia Lambert), esri:102024 (Africa Lambert), epsg:3112 (Australia Lambert), epsg:102017 (North Pole Azimuthal), epsg:102019 (South Pole Azimuthal), epsg:54030 (World Robinson), epsg:3395 (World Mercator)","required":false,"schema":{"type":"string","enum":["epsg:4326","esri:102009","esri:102015","esri:102014","esri:102012","esri:102024","epsg:3112","epsg:102017","epsg:102019","epsg:54030","epsg:3395"]}},{"name":"origin","in":"query","description":"longitude of natural origin used in Lambert projections","required":false,"schema":{"type":"number","format":"float","minimum":-180,"maximum":180}},{"name":"graticules","in":"query","description":"display the graticules","required":false,"schema":{"type":"boolean"}},{"name":"spacing","in":"query","description":"display the graticules with defined spacing in degrees","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":50}},{"name":"hide_gridlabel","in":"query","description":"if hide_gridlabel=true is included, the graticule labels are not shown.","required":false,"schema":{"type":"boolean"}},{"name":"width","in":"query","description":"integer-based output width in pixels","required":false,"schema":{"type":"integer","format":"int32","minimum":600,"maximum":4500}},{"name":"height","in":"query","description":"integer-based output height in pixels; if height is not provided, it will be half the width","required":false,"schema":{"type":"integer","format":"int32","minimum":300,"maximum":4500}},{"name":"output","in":"query","description":"file format of the image or vector produced. Accepted values are png, pnga, jpg, tif, svg","required":false,"schema":{"type":"string","enum":["png","pnga","jpg","tif","svg"]}},{"name":"scalebar","in":"query","description":"embed a scalebar in the lower right of the image","required":false,"schema":{"type":"boolean"}},{"name":"legend[x]","in":"query","description":"URL-encode a title for an item in a legend, embedded in the upper right of the image. If you have a url or file parameter, use legend=true instead","required":false,"schema":{"type":"string"}},{"name":"watermark","in":"query","description":"if watermark=false is included, the SimpleMappr watermark if not included.","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"description":"success","content":{"application\/json":{"examples":{"response":{"value":{"status":"ok"}}}}}}}},"post":{"summary":"POST to \/api","description":"POST to \/api to produce a JSON response containing URL to image","responses":{"200":{"description":"success","content":{"application\/json":{"examples":{"response":{"value":{"status":"ok"}}}}}},"303":{"description":"redirect to image URL","headers":{"Location":{"schema":{"type":"string"}}},"content":{"application\/json":{"examples":{"response":{"value":{"imageURL":"https:\/\/img.simplemappr.net\/50778960_464f_0.png","expiry":"2016-11-14T11:42:46-05:00","bad_points":[],"bad_drawings":[]}}}}}}},"requestBody":{"content":{"multipart\/form-data":{"schema":{"type":"object","properties":{"ping":{"description":"if ping=true is included, a JSON response will be produced in place of an image.","type":"boolean"},"url":{"description":"a URL-encoded, remote tab-separated text file the columns within which are treated as groups of points; the first row used for an optional legend; rows are comma- or space-separated points as latitude,longitude. It may also be a URL-encoded GeoRSS, GeoJSON, or KML feed. Examples: https:\/\/www.simplemappr.net\/public\/files\/demo.txt, https:\/\/www.simplemappr.net\/public\/files\/demo2.csv","type":"string"},"file":{"description":"tab-separated text file the columns within which are treated as groups of points; the first row used for an optional legend; rows are comma- or space-separated. Send via POST with enctype \"multipart\/form-data\". The initial response will be JSON with an imageURL element and an expiry element, which indicates when the file will likely be deleted from the server.","type":"string","format":"binary"},"points[x]":{"description":"single or multiple markers written as latitude,longitude in decimal degrees, DDMMSS, or DD mm.mm. Multiple markers are separated by line-breaks, \\n and these are best used in a POST request. If a POST request is used, the initial response will be JSON as above.","type":"string"},"wkt[x][data]":{"description":"data for array of well-known text shape x expressed as POINT, LINESTRING, POLYGON, MULTIPOINT, MULTILINESTRING, or MULTIPOLYGON","type":"string"},"wkt[x][title]":{"description":"title for well-known text shape x","type":"string"},"wkt[x][border]":{"description":"border for well-known text shape x; only applies to POLYGON or MULTIPOLYGON","type":"boolean"},"wkt[x][color]":{"description":"color for well-known text shape x, e.g. 80,80,80","type":"array","items":{"type":"integer","format":"int32","minimum":0,"maximum":255},"minItems":3,"maxItems":3,"default":[80,80,80]},"shape[x]":{"description":"shape of marker for column x, accepted values are one of: plus, cross, asterisk, circle, star, square, triangle, hexagon, inversetriangle, opencircle, openstar, opensquare, opentriangle, openhexagon, inverseopentriangle","type":"string","enum":["plus","cross","asterisk","circle","star","square","triangle","hexagon","inversetriangle","opencircle","openstar","opensquare","opentriangle","openhexagon","inverseopentriangle"]},"size[x]":{"description":"integer-based point size of marker in column x, accepted values are one of: 6, 8, 10, 12, 14, 16","type":"integer","format":"int32","minimum":6,"maximum":16},"color[x]":{"description":"comma-separated RGB colors for marker in column x, e.g. 0,0,0","type":"array","items":{"type":"integer","format":"int32","minimum":0,"maximum":255},"default":[0,0,0],"minItems":3,"maxItems":3},"shadow[x]":{"description":"grey shadow on marker in column x with 2px offset to the right and bottom","type":"boolean"},"outlinecolor":{"description":"comma-separated RGB colors for halo around all solid markers, e.g. 120,120,120","type":"array","items":{"type":"integer","format":"int32","minimum":0,"maximum":255},"default":[120,120,120],"minItems":3,"maxItems":3},"zoom":{"description":"integer from 1 to 10, centered on the geographic midpoint of all coordinates","type":"integer","format":"int32","minimum":1,"maximum":10},"bbox":{"description":"comma-separated bounding box in decimal degrees expressed as minx,miny,maxx,maxy","type":"array","items":{"type":"integer","format":"int32","minimum":-180,"maximum":180},"default":[-180,-90,180,90],"minItems":4,"maxItems":4},"shade[places]":{"description":"comma-separated State, Province or Country names or the three-letter ISO country code with pipe-separated States or Provinces flanked by brackets","type":"array","items":{"type":"string"}},"shade[title]":{"description":"the title for the shaded places","type":"string"},"shade[color]":{"description":"comma-separated RGB fill colors for shaded places, e.g. 80,80,80","type":"array","items":{"type":"integer","format":"int32","minimum":0,"maximum":255},"default":[80,80,80],"minItems":3,"maxItems":3},"layers":{"description":"comma-separated cultural or physical layers; one or more of base, countries, stateprovinces, stateprovinces_polygon, us_counties, lakesOutline, lakes, lakes_blue, rivers, oceans, oceans_blue, relief, reliefalt, reliefgrey, blueMarble, conservation, ecoregions, marine_ecoregions, roads, railroads, countrynames, stateprovnames, us_counties_names, lakenames, rivernames, placenames, physicalLabels, marineLabels, hotspotLabels, ecoregionLabels, marineEcoregionLabels","type":"array","items":{"type":"string"}},"projection":{"description":"the output projection in either EPSG or ESRI references, accepted values are one of epsg:4326 (Geographic), esri:102009 (North America Lambert), esri:102015 (South America Lambert), esri:102014 (Europe Lambert), esri:102012 (Asia Lambert), esri:102024 (Africa Lambert), epsg:3112 (Australia Lambert), epsg:102017 (North Pole Azimuthal), epsg:102019 (South Pole Azimuthal), epsg:54030 (World Robinson), epsg:3395 (World Mercator)","type":"string","enum":["epsg:4326","esri:102009","esri:102015","esri:102014","esri:102012","esri:102024","epsg:3112","epsg:102017","epsg:102019","epsg:54030","epsg:3395"]},"origin":{"description":"longitude of natural origin used in Lambert projections","type":"number","format":"float","minimum":-180,"maximum":180},"graticules":{"description":"display the graticules","type":"boolean"},"spacing":{"description":"display the graticules with defined spacing in degrees","type":"integer","format":"int32","minimum":1,"maximum":50},"hide_gridlabel":{"description":"if hide_gridlabel=true is included, the graticule labels are not shown.","type":"boolean"},"width":{"description":"integer-based output width in pixels","type":"integer","format":"int32","minimum":600,"maximum":4500},"height":{"description":"integer-based output height in pixels; if height is not provided, it will be half the width","type":"integer","format":"int32","minimum":300,"maximum":4500},"output":{"description":"file format of the image or vector produced. Accepted values are png, pnga, jpg, tif, svg","type":"string","enum":["png","pnga","jpg","tif","svg"]},"scalebar":{"description":"embed a scalebar in the lower right of the image","type":"boolean"},"legend[x]":{"description":"URL-encode a title for an item in a legend, embedded in the upper right of the image. If you have a url or file parameter, use legend=true instead","type":"string"},"watermark":{"description":"if watermark=false is included, the SimpleMappr watermark if not included.","type":"boolean"}}}}}}}}}}