diff --git a/dist/merged-woosmap-openapi3.json b/dist/merged-woosmap-openapi3.json
index db5dae59..c3a547c2 100755
--- a/dist/merged-woosmap-openapi3.json
+++ b/dist/merged-woosmap-openapi3.json
@@ -69,7 +69,10 @@
},
{
"name": "Woosmap for what3words API",
- "description": "Add What3Words capabilities to your address search."
+ "description": "The Woosmap for what3words integration enhances location search capabilities by incorporating what3words' unique\n3-word addressing system. \n\nThis API is a drop in replacement of what3words API but hosted on Woosmap Platform, with the addition of an endpoint leveraging the power of \n[Localities API](#tag/Woosmap_Platform_API_Reference_Localities-API) to convert a what3words address into a street address, bringing address level accuracy to what3words.\n",
+ "externalDocs": {
+ "url": "https://developers.woosmap.com/products/w3w-api/get-started/"
+ }
},
{
"name": "Indoor API",
@@ -93,48 +96,28 @@
}
},
{
- "name": "Isochrone API",
- "description": "Woosmap Isochrone API is a service providing all destinations that can be reached in a specific amount of time or a maximum travel distance. Request is done over HTTPS using GET or POST. Response is formatted as JSON. You must specify a key in your request, included as the value of a `key` parameter for your public key or `private_key` for your private key. This key identifies your application for purposes of quota management. Learn how to [get a key](https://developers.woosmap.com/support/api-keys/).\n",
- "externalDocs": {
- "url": "https://developers.woosmap.com/products/distance-api/features/isochrone/"
- }
- },
- {
- "name": "Tolls API",
- "description": "Woosmap Tolls API is a service providing toll costs and informations for an origin and destination pair. Request is done over HTTPS using GET or POST. Response is formatted as JSON. You must specify a key in your request, included as the value of a `key` parameter for your public key or `private_key` for your private key. This key identifies your application for purposes of quota management. Learn how to [get a key](https://developers.woosmap.com/support/api-keys/).\n",
- "externalDocs": {
- "url": "https://developers.woosmap.com/products/distance-api/features/tolls/"
- }
- },
- {
- "name": "Route API",
- "description": "Woosmap Route API is a service providing road travel distance and duration calculations, on a Worldwide scale. Request is done over HTTPS using GET or POST. Response is formatted as JSON. You must specify a key in your request, included as the value of a `key` parameter for your public key or `private_key` for your private key. This key identifies your application for purposes of quota management. Learn how to [get a key](https://developers.woosmap.com/support/api-keys/).\n",
- "externalDocs": {
- "url": "https://developers.woosmap.com/products/distance-api/features/route/"
- }
- },
- {
- "name": "Matrix API",
- "description": "Woosmap Matrix API is a service providing travel distance and time for a matrix of origins and destinations. Request is done over HTTPS using GET or POST. Response is formatted as JSON. You must specify a key in your request, included as the value of a `key` parameter for your public key or `private_key` for your private key. This key identifies your application for purposes of quota management. Learn how to [get a key](https://developers.woosmap.com/support/api-keys/).\n",
+ "name": "Distance API",
+ "description": "The Woosmap Distance API suite provides comprehensive tools for road travel calculations worldwide.\n\n* **Route:** Calculate travel distance, duration, and paths between origin and destination.\n* **Matrix:** Compute travel distance and time for a matrix of multiple origins and destinations.\n* **Isochrone:** Determine all locations reachable within a specific time or distance.\n* **Tolls:** Estimate toll costs and details for specific routes.\n\nRequests are made via HTTPS (GET/POST) and require an API key (`key` or `private_key`) for quota management.\n",
"externalDocs": {
- "url": "https://developers.woosmap.com/products/distance-api/features/distancematrix/"
+ "url": "https://developers.woosmap.com/products/distance-api/get-started/"
}
}
],
"paths": {
- "/geolocation/position": {
+ "/address/autocomplete/json": {
"get": {
- "summary": "Geolocation from an IP address",
- "operationId": "getGeolocationPosition",
+ "deprecated": true,
+ "summary": "Autocomplete for Addresses",
+ "operationId": "addressAutocomplete",
"servers": [
{
"url": "https://api.woosmap.com"
}
],
"tags": [
- "Geolocation API"
+ "Address API"
],
- "description": "The `/position` returns JSON location of your users thanks to IP address of their devices.\n",
+ "description": "Autocomplete on worldwide suggestions for a for text-based geographic searches. It can match on full words as well as substrings.\n",
"security": [
{
"Woosmap_Platform_API_Reference_PublicApiKeyAuth": [],
@@ -149,43 +132,85 @@
],
"parameters": [
{
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_ip_address"
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_input-2"
+ },
+ {
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_address_components"
+ },
+ {
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_location-2"
+ },
+ {
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_language-3"
}
],
"responses": {
"200": {
- "description": "Geolocation successfully retrieved",
+ "description": "Autocompletion Address successfully retrieved",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_GeolocationResponse"
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_AddressAutocompleteCollectionResponse"
},
"examples": {
"default": {
- "summary": "Geolocation position for the IP `173.79.254.254`",
+ "summary": "Autocomplete address results for input `Lond` and components `country:gb`",
"value": {
- "country_code": "US",
- "country_name": "United States",
- "continent": "North America",
- "latitude": 38.719,
- "longitude": -77.1067,
- "viewport": {
- "northeast": {
- "lat": 38.763915764205976,
- "lng": -77.0491321464058
+ "predictions": [
+ {
+ "public_id": "aGVyZTpjbTpuYW1lZHBsYWNlOjIwMzM3NDU0",
+ "description": "London, England, United Kingdom",
+ "matched_substring": {
+ "description": [
+ {
+ "offset": 0,
+ "length": 4
+ }
+ ]
+ },
+ "type": "locality"
},
- "southwest": {
- "lat": 38.674084235794034,
- "lng": -77.16426785359421
+ {
+ "public_id": "aGVyZTpjbTpuYW1lZHBsYWNlOjIwNDE5Nzgz",
+ "description": "Londonderry, Northern Ireland, United Kingdom",
+ "matched_substring": {
+ "description": [
+ {
+ "offset": 0,
+ "length": 4
+ }
+ ]
+ },
+ "type": "locality"
+ },
+ {
+ "public_id": "aGVyZTpjbTpuYW1lZHBsYWNlOjIwMzM3NjEw",
+ "description": "London Heathrow Airport, Hounslow, England, United Kingdom",
+ "matched_substring": {
+ "description": [
+ {
+ "offset": 0,
+ "length": 4
+ }
+ ]
+ },
+ "type": "locality"
+ },
+ {
+ "public_id": "aGVyZTpjbTpuYW1lZHBsYWNlOjIwMzM0NDEy",
+ "description": "London Luton Airport, Luton, England, United Kingdom",
+ "matched_substring": {
+ "description": [
+ {
+ "offset": 0,
+ "length": 4
+ }
+ ]
+ },
+ "type": "locality"
}
- },
- "accuracy": 5,
- "city": "Alexandria",
- "region_state": "Virginia",
- "postal_code": "22309",
- "timezone": "America/New_York",
- "raw_offset": -18000,
- "dst_offset": 3600
+ ],
+ "status": "OK"
}
}
}
@@ -251,34 +276,35 @@
{
"lang": "curl",
"label": "cURL",
- "source": "curl -L 'https://api.woosmap.com/geolocation/position?private_key=YOUR_PRIVATE_API_KEY&ip_address=173.79.254.254'"
+ "source": "curl -L 'https://api.woosmap.com/address/autocomplete/json?input=Lond&components=country%3Agb&key=YOUR_PUBLIC_API_KEY' \\\n-H 'Referer: http://localhost'"
},
{
"lang": "javascript",
"label": "JavaScript",
- "source": "const requestOptions = {\n method: \"GET\",\n redirect: \"follow\"\n};\n\nfetch(\"https://api.woosmap.com/geolocation/position?private_key=YOUR_PRIVATE_API_KEY&ip_address=173.79.254.254\", requestOptions)\n .then((response) => response.text())\n .then((result) => console.log(result))\n .catch((error) => console.error(error));"
+ "source": "const requestOptions = {\n method: \"GET\",\n redirect: \"follow\"\n};\n\nfetch(\"https://api.woosmap.com/address/autocomplete/json?input=Lond&components=country%3Agb&key=YOUR_PUBLIC_API_KEY\", requestOptions)\n .then((response) => response.text())\n .then((result) => console.log(result))\n .catch((error) => console.error(error));"
},
{
"lang": "python",
"label": "Python",
- "source": "import requests\n\nurl = \"https://api.woosmap.com/geolocation/position?private_key=YOUR_PRIVATE_API_KEY&ip_address=173.79.254.254\"\n\npayload = {}\nheaders = {}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
+ "source": "import requests\n\nurl = \"https://api.woosmap.com/address/autocomplete/json?input=Lond&components=country%3Agb&key=YOUR_PUBLIC_API_KEY\"\n\npayload = {}\nheaders = {\n 'Referer': 'http://localhost'\n}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
}
]
}
},
- "/geolocation/stores": {
+ "/address/details/json": {
"get": {
- "summary": "Assets nearby a Geolocation",
- "operationId": "getStoresFromGeolocationPosition",
+ "deprecated": true,
+ "summary": "Details of an Address",
+ "operationId": "addressDetails",
"servers": [
{
"url": "https://api.woosmap.com"
}
],
"tags": [
- "Geolocation API"
+ "Address API"
],
- "description": "Retrieve the stores nearby an ip location. Stores are returned only if a relevant ip location is found - for an accuracy of 20km or less.\n",
+ "description": "Provides details of an address autocomplete suggestion (using the suggestion’s `public_id`).\n",
"security": [
{
"Woosmap_Platform_API_Reference_PublicApiKeyAuth": [],
@@ -293,194 +319,89 @@
],
"parameters": [
{
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_ip_address"
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_public_id-2"
},
{
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_limit"
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_fields-2"
},
{
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_query"
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_cc_format"
}
],
"responses": {
"200": {
- "description": "Geolocation and Stores successufully retrieved",
+ "description": "Details Address successfully retrieved",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_GeolocationStoresResponse"
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_AddressDetailsResponse"
},
"examples": {
"default": {
- "summary": "Geolocation Position and Stores for the IP `173.79.254.254`",
+ "summary": "Address Details for `London, England, United Kingdom`",
"value": {
- "country_code": "US",
- "country_name": "United States",
- "continent": "North America",
- "latitude": 38.719,
- "longitude": -77.1067,
- "viewport": {
- "northeast": {
- "lat": 38.763915764205976,
- "lng": -77.0491321464058
- },
- "southwest": {
- "lat": 38.674084235794034,
- "lng": -77.16426785359421
+ "result": {
+ "formatted_address": "London, England, United Kingdom",
+ "types": [
+ "locality"
+ ],
+ "public_id": "aGVyZTpjbTpuYW1lZHBsYWNlOjIwMzM3NDU0",
+ "address_components": [
+ {
+ "types": [
+ "country"
+ ],
+ "long_name": "United Kingdom",
+ "short_name": "GBR"
+ },
+ {
+ "types": [
+ "state"
+ ],
+ "long_name": "England",
+ "short_name": "England"
+ },
+ {
+ "types": [
+ "county"
+ ],
+ "long_name": "London",
+ "short_name": "LDN"
+ },
+ {
+ "long_name": "London",
+ "short_name": "London",
+ "types": [
+ "locality"
+ ]
+ },
+ {
+ "long_name": "SW1A 2",
+ "short_name": "SW1A 2",
+ "types": [
+ "postal_code"
+ ]
+ }
+ ],
+ "geometry": {
+ "location_type": "GEOMETRIC_CENTER",
+ "location": {
+ "lat": 51.50643,
+ "lng": -0.12719
+ },
+ "viewport": {
+ "northeast": {
+ "lat": 51.68629,
+ "lng": 0.28206
+ },
+ "southwest": {
+ "lat": 51.28043,
+ "lng": -0.56316
+ }
+ }
}
},
- "accuracy": 5,
- "city": "Alexandria",
- "region_state": "Virginia",
- "postal_code": "22309",
- "timezone": "America/New_York",
- "raw_offset": -18000,
- "dst_offset": 3600,
- "stores": {
- "type": "FeatureCollection",
- "features": [
- {
- "type": "Feature",
- "properties": {
- "store_id": "STORE_ID_123456",
- "name": "My Cool Store",
- "contact": {
- "email": "contact@woosmap.com",
- "phone": "+44 20 7693 4000",
- "website": "https://www.woosmap.com"
- },
- "address": {
- "lines": [
- "Building Centre",
- "26 Store Street"
- ],
- "country_code": "UK",
- "city": "London",
- "zipcode": "WC1E 7BT"
- },
- "user_properties": {
- "some_user_properties": "associated user value"
- },
- "tags": [
- "wifi",
- "covered_parking"
- ],
- "types": [
- "drive",
- "click_and_collect"
- ],
- "last_updated": "2025-09-16T08:49:42.523114+00:00",
- "distance": 0,
- "open": {
- "open_now": true,
- "open_hours": [
- {
- "end": "22:00",
- "start": "08:30"
- }
- ],
- "week_day": 2,
- "current_slice": {
- "end": "22:00",
- "start": "08:30"
- }
- },
- "weekly_opening": {
- "1": {
- "hours": [],
- "isSpecial": false
- },
- "2": {
- "hours": [
- {
- "end": "22:00",
- "start": "08:30"
- }
- ],
- "isSpecial": false
- },
- "3": {
- "hours": [
- {
- "end": "22:00",
- "start": "08:30"
- }
- ],
- "isSpecial": false
- },
- "4": {
- "hours": [
- {
- "end": "22:00",
- "start": "08:30"
- }
- ],
- "isSpecial": false
- },
- "5": {
- "hours": [
- {
- "end": "22:00",
- "start": "08:30"
- }
- ],
- "isSpecial": false
- },
- "6": {
- "hours": [
- {
- "end": "22:00",
- "start": "08:30"
- }
- ],
- "isSpecial": false
- },
- "7": {
- "hours": [
- {
- "end": "22:00",
- "start": "08:30"
- }
- ],
- "isSpecial": false
- },
- "timezone": "Europe/London"
- },
- "opening_hours": {
- "usual": {
- "1": [],
- "default": [
- {
- "end": "22:00",
- "start": "08:30"
- }
- ]
- },
- "special": {
- "2015-02-07": [
- {
- "end": "23:00",
- "start": "08:00"
- }
- ]
- },
- "timezone": "Europe/London"
- }
- },
- "geometry": {
- "type": "Point",
- "coordinates": [
- -77.1067,
- 38.719
- ]
- }
- }
- ],
- "pagination": {
- "page": 1,
- "pageCount": 2
- }
- }
+ "status": "OK"
}
}
}
@@ -546,34 +467,35 @@
{
"lang": "curl",
"label": "cURL",
- "source": "curl -L 'https://api.woosmap.com/geolocation/stores?private_key=YOUR_PRIVATE_API_KEY&ip_address=173.79.254.254&limit=1'"
+ "source": "curl -L 'https://api.woosmap.com/address/details/json?public_id=aGVyZTpjbTpuYW1lZHBsYWNlOjIwMzM3NDU0&key=YOUR_PUBLIC_API_KEY' \\\n-H 'Referer: http://localhost'"
},
{
"lang": "javascript",
"label": "JavaScript",
- "source": "const requestOptions = {\n method: \"GET\",\n redirect: \"follow\"\n};\n\nfetch(\"https://api.woosmap.com/geolocation/stores?private_key=YOUR_PRIVATE_API_KEY&ip_address=173.79.254.254&limit=1\", requestOptions)\n .then((response) => response.text())\n .then((result) => console.log(result))\n .catch((error) => console.error(error));"
+ "source": "const requestOptions = {\n method: \"GET\",\n redirect: \"follow\"\n};\n\nfetch(\"https://api.woosmap.com/address/details/json?public_id=aGVyZTpjbTpuYW1lZHBsYWNlOjIwMzM3NDU0&key=YOUR_PUBLIC_API_KEY\", requestOptions)\n .then((response) => response.text())\n .then((result) => console.log(result))\n .catch((error) => console.error(error));"
},
{
"lang": "python",
"label": "Python",
- "source": "import requests\n\nurl = \"https://api.woosmap.com/geolocation/stores?private_key=YOUR_PRIVATE_API_KEY&ip_address=173.79.254.254&limit=1\"\n\npayload = {}\nheaders = {}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
+ "source": "import requests\n\nurl = \"https://api.woosmap.com/address/details/json?public_id=aGVyZTpjbTpuYW1lZHBsYWNlOjIwMzM3NDU0&key=YOUR_PUBLIC_API_KEY\"\n\npayload = {}\nheaders = {\n 'Referer': 'http://localhost'\n}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
}
]
}
},
- "/geolocation/timezone": {
+ "/address/geocode/json": {
"get": {
- "summary": "Timezone",
- "operationId": "getTimezone",
+ "deprecated": true,
+ "summary": "Geocode an Address or Reverse Geocode a latlng",
+ "operationId": "addressGeocode",
"servers": [
{
"url": "https://api.woosmap.com"
}
],
"tags": [
- "Geolocation API"
+ "Address API"
],
- "description": "Returns timezone information based on the location, and optionally a timestamp for daylight saving time.\n> Note: rawOffset never contains the dst.\n",
+ "description": "Provides details for an address or a geographic position. Either parameter `address` **or** `latlng` is required. Maximum of 25 queries per second (QPS)\n",
"security": [
{
"Woosmap_Platform_API_Reference_PublicApiKeyAuth": [],
@@ -588,40 +510,117 @@
],
"parameters": [
{
- "description": "The location {lat},{lng}",
- "name": "location",
- "in": "query",
- "schema": {
- "type": "string"
- },
- "required": true
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_address-2"
},
{
- "description": "The UTC timestamp",
- "name": "timestamp",
- "in": "query",
- "schema": {
- "type": "integer",
- "minimum": 0
- }
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_latlng-2"
+ },
+ {
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_address_components"
+ },
+ {
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_language-3"
+ },
+ {
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_location-2"
+ },
+ {
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_cc_format"
+ },
+ {
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_limit-3"
}
],
"responses": {
"200": {
- "description": "Timezone successfully retrieved",
+ "description": "Request Address Geocode successful",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_TimezoneResponse"
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_AddressGeocodeCollectionResponse"
},
"examples": {
"default": {
- "summary": "Timezone for 43.6, 3.883 location.",
+ "summary": "Geocode Results for address `Place de la Resistance` with components `country:FR`",
"value": {
- "timezone": "Europe/Paris",
- "timezone_name": "CEST",
- "raw_offset": 3600,
- "dst_offset": 3600
+ "results": [
+ {
+ "formatted_address": "Place de la Résistance, 75007 Paris, France",
+ "types": [
+ "address",
+ "route"
+ ],
+ "address_components": [
+ {
+ "types": [
+ "country"
+ ],
+ "long_name": "France",
+ "short_name": "FRA"
+ },
+ {
+ "types": [
+ "state"
+ ],
+ "long_name": "Ile-de-France",
+ "short_name": "IDF"
+ },
+ {
+ "types": [
+ "county"
+ ],
+ "long_name": "Paris",
+ "short_name": "Paris"
+ },
+ {
+ "long_name": "Paris",
+ "short_name": "Paris",
+ "types": [
+ "locality"
+ ]
+ },
+ {
+ "long_name": "7th Arrondissement",
+ "short_name": "7th Arrondissement",
+ "types": [
+ "district"
+ ]
+ },
+ {
+ "long_name": "Place de la Résistance",
+ "short_name": "Place de la Résistance",
+ "types": [
+ "route"
+ ]
+ },
+ {
+ "long_name": "75007",
+ "short_name": "75007",
+ "types": [
+ "postal_code"
+ ]
+ }
+ ],
+ "geometry": {
+ "location_type": "GEOMETRIC_CENTER",
+ "location": {
+ "lat": 48.86213,
+ "lng": 2.30152
+ },
+ "viewport": {
+ "northeast": {
+ "lat": 48.86231,
+ "lng": 2.30541
+ },
+ "southwest": {
+ "lat": 48.86191,
+ "lng": 2.30147
+ }
+ }
+ }
+ }
+ ],
+ "status": "OK"
}
}
}
@@ -687,17 +686,17 @@
{
"lang": "curl",
"label": "cURL",
- "source": "curl -L 'https://api.woosmap.com/geolocation/timezone?private_key=YOUR_PRIVATE_API_KEY&location=43.6114130%2C3.8735291'"
+ "source": "curl -L 'https://api.woosmap.com/address/geocode/json?address=Place%20de%20la%20Resistance%20Paris&components=country%3AFR&limit=5&key=YOUR_PUBLIC_API_KEY' \\\n-H 'Referer: http://localhost'"
},
{
"lang": "javascript",
"label": "JavaScript",
- "source": "const requestOptions = {\n method: \"GET\",\n redirect: \"follow\"\n};\n\nfetch(\"https://api.woosmap.com/geolocation/timezone?private_key=YOUR_PRIVATE_API_KEY&location=43.6114130%2C3.8735291\", requestOptions)\n .then((response) => response.text())\n .then((result) => console.log(result))\n .catch((error) => console.error(error));"
+ "source": "const requestOptions = {\n method: \"GET\",\n redirect: \"follow\"\n};\n\nfetch(\"https://api.woosmap.com/address/geocode/json?address=Place%20de%20la%20Resistance%20Paris&components=country%3AFR&limit=5&key=YOUR_PUBLIC_API_KEY\", requestOptions)\n .then((response) => response.text())\n .then((result) => console.log(result))\n .catch((error) => console.error(error));"
},
{
"lang": "python",
"label": "Python",
- "source": "import requests\n\nurl = \"https://api.woosmap.com/geolocation/timezone?private_key=YOUR_PRIVATE_API_KEY&location=43.6114130%2C3.8735291\"\n\npayload = {}\nheaders = {}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
+ "source": "import requests\n\nurl = \"https://api.woosmap.com/address/geocode/json?address=Place%20de%20la%20Resistance%20Paris&components=country%3AFR&limit=5&key=YOUR_PUBLIC_API_KEY\"\n\npayload = {}\nheaders = {\n 'Referer': 'http://localhost'\n}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
}
]
}
@@ -1735,3651 +1734,2926 @@
]
}
},
- "/stores/search": {
+ "/datasets/{dataset_id}": {
"get": {
- "summary": "Search for assets",
- "operationId": "storeSearch",
- "servers": [
- {
- "url": "https://api.woosmap.com"
- }
- ],
"tags": [
- "Store Search API"
+ "Datasets API"
],
- "description": "Used to retrieve assets from query.\n",
+ "summary": "Get Dataset",
+ "description": "Gets dataset details.\n\n**Rate limit**: `1/1s`",
+ "operationId": "get_dataset_datasets__dataset_id__get",
"security": [
{
- "Woosmap_Platform_API_Reference_PublicApiKeyAuth": [],
- "Woosmap_Platform_API_Reference_RefererHeader": []
- },
- {
- "Woosmap_Platform_API_Reference_PrivateApiKeyAuth": []
+ "Datasets_PrivateKeyWithWrite": []
},
{
- "Woosmap_Platform_API_Reference_PrivateApiKeyHeaderAuth": []
+ "Datasets_PrivateKeyWithWriteHeader": []
}
],
"parameters": [
{
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_query"
- },
- {
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_lat"
- },
- {
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_lng"
- },
- {
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_radius"
- },
- {
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_encoded_polyline"
- },
- {
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_stores_by_page"
- },
- {
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_page"
- },
- {
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_zone"
+ "name": "dataset_id",
+ "in": "path",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "format": "uuid",
+ "title": "Dataset Id"
+ }
}
],
"responses": {
"200": {
- "description": "Assets successfully retrieved",
+ "description": "Successful Response",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_AssetFeatureCollectionResponse"
- },
- "examples": {
- "default": {
- "summary": "Search stores nearby a latlng and given a radius",
- "value": {
- "type": "FeatureCollection",
- "features": [
- {
- "type": "Feature",
- "properties": {
- "store_id": "2354",
- "name": "Berkeley Street/Berkeley Square",
- "contact": {
- "phone": "02076295779",
- "website": "https://www.starbucks.com/store-locator/store/2354/berkeley-street-berkeley-square-27-berkeley-st-berkeley-square-london-eng-w-1-x-5-"
- },
- "address": {
- "lines": [
- "27 Berkeley St",
- "London, ENG W1X 5AD"
- ],
- "country_code": "GB",
- "city": "London",
- "zipcode": "W1X 5AD"
- },
- "user_properties": {
- "take_away": "available"
- },
- "tags": [
- "WA",
- "WF",
- "CD",
- "DR",
- "XO"
- ],
- "types": [
- "Coffee shop"
- ],
- "last_updated": "2022-11-10T13:23:53.564829+00:00",
- "distance": 135.28682936,
- "open": {
- "open_now": true,
- "open_hours": [
- {
- "end": "18:00",
- "start": "06:30"
- }
- ],
- "week_day": 2,
- "current_slice": {
- "end": "18:00",
- "start": "06:30"
- }
- },
- "weekly_opening": {
- "1": {
- "hours": [
- {
- "end": "18:00",
- "start": "06:30"
- }
- ],
- "isSpecial": false
- },
- "2": {
- "hours": [
- {
- "end": "18:00",
- "start": "06:30"
- }
- ],
- "isSpecial": false
- },
- "3": {
- "hours": [
- {
- "end": "18:00",
- "start": "06:30"
- }
- ],
- "isSpecial": false
- },
- "4": {
- "hours": [
- {
- "end": "18:00",
- "start": "06:30"
- }
- ],
- "isSpecial": false
- },
- "5": {
- "hours": [
- {
- "end": "18:00",
- "start": "06:30"
- }
- ],
- "isSpecial": false
- },
- "6": {
- "hours": [
- {
- "end": "17:00",
- "start": "08:00"
- }
- ],
- "isSpecial": false
- },
- "7": {
- "hours": [
- {
- "end": "17:00",
- "start": "08:00"
- }
- ],
- "isSpecial": false
- },
- "timezone": "Europe/London"
- },
- "opening_hours": {
- "usual": {
- "1": [
- {
- "end": "18:00",
- "start": "06:30"
- }
- ],
- "2": [
- {
- "end": "18:00",
- "start": "06:30"
- }
- ],
- "3": [
- {
- "end": "18:00",
- "start": "06:30"
- }
- ],
- "4": [
- {
- "end": "18:00",
- "start": "06:30"
- }
- ],
- "5": [
- {
- "end": "18:00",
- "start": "06:30"
- }
- ],
- "6": [
- {
- "end": "17:00",
- "start": "08:00"
- }
- ],
- "7": [
- {
- "end": "17:00",
- "start": "08:00"
- }
- ]
- },
- "special": {},
- "timezone": "Europe/London"
- }
- },
- "geometry": {
- "type": "Point",
- "coordinates": [
- -0.14408,
- 51.5088
- ]
- }
- }
- ],
- "pagination": {
- "page": 1,
- "pageCount": 1
- }
- }
- }
+ "$ref": "#/components/schemas/Datasets_DatasetResponse"
}
}
}
},
"401": {
- "description": "Unauthorized. Incorrect authentication credentials.",
+ "description": "Unable to locate credentials.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error401"
- },
- "examples": {
- "Unauthorized": {
- "summary": "Error 401",
- "value": {
- "detail": "Incorrect authentication credentials. Please check or use a valid API Key"
- }
- }
+ "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
}
}
}
},
- "403": {
- "description": "Forbidden. This Woosmap API is not enabled for this project.",
+ "402": {
+ "description": "Out of free quota.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error403"
- },
- "examples": {
- "Forbidden": {
- "summary": "Error 403",
- "value": {
- "detail": "This Woosmap API is not enabled for this project."
- }
- }
+ "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
}
}
}
},
- "429": {
- "description": "Too Many Requests. The rate limit for this endpoint has been exceeded.",
+ "403": {
+ "description": "Credentials found, but not matching.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error429"
- },
- "examples": {
- "Forbidden": {
- "summary": "Error 429",
- "value": {
- "detail": "The rate limit for this endpoint has been exceeded"
- }
- }
+ "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
}
}
}
- }
- },
- "x-codeSamples": [
- {
- "lang": "curl",
- "label": "cURL",
- "source": "curl -L 'https://api.woosmap.com/stores/search/?lat=51.50976&lng=-0.145276&radius=300&key=YOUR_PUBLIC_API_KEY' \\\n-H 'Referer: http://localhost'"
},
- {
- "lang": "javascript",
- "label": "JavaScript",
- "source": "const requestOptions = {\n method: \"GET\",\n redirect: \"follow\"\n};\n\nfetch(\"https://api.woosmap.com/stores/search/?lat=51.50976&lng=-0.145276&radius=300&key=YOUR_PUBLIC_API_KEY\", requestOptions)\n .then((response) => response.text())\n .then((result) => console.log(result))\n .catch((error) => console.error(error));"
+ "404": {
+ "description": "Dataset was not found",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_HTTPErrorModel"
+ }
+ }
+ }
},
- {
- "lang": "python",
- "label": "Python",
- "source": "import requests\n\nurl = \"https://api.woosmap.com/stores/search/?lat=51.50976&lng=-0.145276&radius=300&key=YOUR_PUBLIC_API_KEY\"\n\npayload = {}\nheaders = {\n 'Referer': 'http://localhost'\n}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
- }
- ]
- }
- },
- "/stores/autocomplete": {
- "get": {
- "summary": "Autocomplete for assets",
- "operationId": "storeAutocomplete",
- "servers": [
- {
- "url": "https://api.woosmap.com"
+ "422": {
+ "description": "Validation Error",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_HTTPValidationError"
+ }
+ }
+ }
+ },
+ "429": {
+ "description": "Rate limit reached",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_HTTPErrorModel"
+ }
+ }
+ }
}
- ],
+ },
+ "x-original-tag": "dataset"
+ },
+ "delete": {
"tags": [
- "Store Search API"
+ "Datasets API"
],
- "description": "Autocomplete on `localizedNames` with highlighted results on asset name. Use the field `localized` in your query parameter to search for localized names.\n",
+ "summary": "Delete Dataset",
+ "description": "Schedule a dataset for deletion, deletion will happen in 7 days.\n\n\n**Rate limit**: `1/1s`",
+ "operationId": "delete_dataset_datasets__dataset_id__delete",
"security": [
{
- "Woosmap_Platform_API_Reference_PublicApiKeyAuth": [],
- "Woosmap_Platform_API_Reference_RefererHeader": []
- },
- {
- "Woosmap_Platform_API_Reference_PrivateApiKeyAuth": []
+ "Datasets_PrivateKeyWithWrite": []
},
{
- "Woosmap_Platform_API_Reference_PrivateApiKeyHeaderAuth": []
+ "Datasets_PrivateKeyWithWriteHeader": []
}
],
"parameters": [
{
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_query"
- },
- {
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_language"
- },
- {
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_limit-2"
+ "name": "dataset_id",
+ "in": "path",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "format": "uuid",
+ "title": "Dataset Id"
+ }
}
],
"responses": {
"200": {
- "description": "Assets Successfully Replaced",
+ "description": "Successful Response",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_AssetAutocompleteResponse"
- },
- "examples": {
- "default": {
- "summary": "Autocomplete on stores in localized names nearby a latlng and specifying a radius",
- "value": {
- "predictions": [
- {
- "store_id": "2670",
- "name": "Sun Street",
- "types": [
- "Coffee shop"
- ],
- "matched_substrings": [
- {
- "offset": 4,
- "length": 6
- }
- ],
- "highlighted": "Sun Street"
- },
- {
- "store_id": "16069",
- "name": "7th Street",
- "types": [
- "Coffee shop"
- ],
- "matched_substrings": [
- {
- "offset": 4,
- "length": 6
- }
- ],
- "highlighted": "7th Street"
- },
- {
- "store_id": "1013873",
- "name": "The Street",
- "types": [
- "Coffee shop"
- ],
- "matched_substrings": [
- {
- "offset": 4,
- "length": 6
- }
- ],
- "highlighted": "The Street"
- }
- ]
- }
- }
+ "type": "object",
+ "additionalProperties": true,
+ "title": "Response Delete Dataset Datasets Dataset Id Delete"
}
}
}
},
"401": {
- "description": "Unauthorized. Incorrect authentication credentials.",
+ "description": "Unable to locate credentials.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error401"
- },
- "examples": {
- "Unauthorized": {
- "summary": "Error 401",
- "value": {
- "detail": "Incorrect authentication credentials. Please check or use a valid API Key"
- }
- }
+ "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
+ }
+ }
+ }
+ },
+ "402": {
+ "description": "Out of free quota.",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
}
}
}
},
"403": {
- "description": "Forbidden. This Woosmap API is not enabled for this project.",
+ "description": "Credentials found, but not matching.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error403"
- },
- "examples": {
- "Forbidden": {
- "summary": "Error 403",
- "value": {
- "detail": "This Woosmap API is not enabled for this project."
- }
- }
+ "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
+ }
+ }
+ }
+ },
+ "404": {
+ "description": "Dataset was not found",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_HTTPErrorModel"
+ }
+ }
+ }
+ },
+ "409": {
+ "description": "The Dataset was already scheduled for deletion.",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_HTTPErrorModel"
+ }
+ }
+ }
+ },
+ "422": {
+ "description": "Validation Error",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_HTTPValidationError"
}
}
}
},
"429": {
- "description": "Too Many Requests. The rate limit for this endpoint has been exceeded.",
+ "description": "Rate limit reached",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error429"
- },
- "examples": {
- "Forbidden": {
- "summary": "Error 429",
- "value": {
- "detail": "The rate limit for this endpoint has been exceeded"
- }
- }
+ "$ref": "#/components/schemas/Datasets_HTTPErrorModel"
}
}
}
}
},
- "x-codeSamples": [
+ "x-original-tag": "dataset"
+ },
+ "put": {
+ "tags": [
+ "Datasets API"
+ ],
+ "summary": "Update Dataset",
+ "description": "Updates a dataset url or name.\n\n**Rate limit**: `1/1s`",
+ "operationId": "update_dataset_datasets__dataset_id__put",
+ "security": [
{
- "lang": "curl",
- "label": "cURL",
- "source": "curl -L 'https://api.woosmap.com/stores/autocomplete/?language=en&query=localized%3Astreet&limit=3&key=YOUR_PUBLIC_API_KEY' \\\n-H 'Referer: http://localhost'"
+ "Datasets_PrivateKeyWithWrite": []
},
{
- "lang": "javascript",
- "label": "JavaScript",
- "source": "const requestOptions = {\n method: \"GET\",\n redirect: \"follow\"\n};\n\nfetch(\"https://api.woosmap.com/stores/autocomplete/?language=en&query=localized%3Astreet&limit=3&key=YOUR_PUBLIC_API_KEY\", requestOptions)\n .then((response) => response.text())\n .then((result) => console.log(result))\n .catch((error) => console.error(error));"
- },
- {
- "lang": "python",
- "label": "Python",
- "source": "import requests\n\nurl = \"https://api.woosmap.com/stores/autocomplete/?language=en&query=localized%3Astreet&limit=3&key=YOUR_PUBLIC_API_KEY\"\n\npayload = {}\nheaders = {\n 'Referer': 'http://localhost'\n}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
- }
- ]
- }
- },
- "/stores/search/bounds": {
- "get": {
- "summary": "Bounds for assets",
- "operationId": "storesBounds",
- "servers": [
- {
- "url": "https://api.woosmap.com"
- }
- ],
- "tags": [
- "Store Search API"
- ],
- "description": "Used to retrieve Bounds for assets.\n",
- "security": [
- {
- "Woosmap_Platform_API_Reference_PublicApiKeyAuth": [],
- "Woosmap_Platform_API_Reference_RefererHeader": []
- },
- {
- "Woosmap_Platform_API_Reference_PrivateApiKeyAuth": []
+ "Datasets_PrivateKeyWithWriteHeader": []
}
],
"parameters": [
{
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_query"
- },
- {
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_lat"
- },
- {
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_lng"
- },
- {
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_radius"
+ "name": "dataset_id",
+ "in": "path",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "format": "uuid",
+ "title": "Dataset Id"
+ }
}
],
+ "requestBody": {
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_DatasetUpdate"
+ }
+ }
+ }
+ },
"responses": {
"200": {
- "description": "Bounds successfully retrieved",
+ "description": "Successful Response",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_BoundsResponse"
- },
- "examples": {
- "default": {
- "summary": "Retrieve Bounds nearby a latlng and given a radius",
- "value": {
- "bounds": {
- "west": -0.14408,
- "south": 51.5088,
- "east": -0.14408,
- "north": 51.5088
- }
- }
- }
+ "$ref": "#/components/schemas/Datasets_DatasetResponse"
}
}
}
},
"401": {
- "description": "Unauthorized. Incorrect authentication credentials.",
+ "description": "Unable to locate credentials.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error401"
- },
- "examples": {
- "Unauthorized": {
- "summary": "Error 401",
- "value": {
- "detail": "Incorrect authentication credentials. Please check or use a valid API Key"
- }
- }
+ "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
+ }
+ }
+ }
+ },
+ "402": {
+ "description": "Out of free quota.",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
}
}
}
},
"403": {
- "description": "Forbidden. This Woosmap API is not enabled for this project.",
+ "description": "Credentials found, but not matching.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error403"
- },
- "examples": {
- "Forbidden": {
- "summary": "Error 403",
- "value": {
- "detail": "This Woosmap API is not enabled for this project."
- }
- }
+ "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
}
}
}
},
- "429": {
- "description": "Too Many Requests. The rate limit for this endpoint has been exceeded.",
+ "404": {
+ "description": "Dataset was not found",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error429"
- },
- "examples": {
- "Forbidden": {
- "summary": "Error 429",
- "value": {
- "detail": "The rate limit for this endpoint has been exceeded"
- }
- }
+ "$ref": "#/components/schemas/Datasets_HTTPErrorModel"
}
}
}
- }
- },
- "x-codeSamples": [
- {
- "lang": "curl",
- "label": "cURL",
- "source": "curl -L 'https://api.woosmap.com/stores/search/bounds?lat=51.50976&lng=-0.145276&radius=300&key=YOUR_PUBLIC_API_KEY' \\\n-H 'Referer: http://localhost'"
},
- {
- "lang": "javascript",
- "label": "JavaScript",
- "source": "const requestOptions = {\n method: \"GET\",\n redirect: \"follow\"\n};\n\nfetch(\"https://api.woosmap.com/stores/search/bounds?lat=51.50976&lng=-0.145276&radius=300&key=YOUR_PUBLIC_API_KEY\", requestOptions)\n .then((response) => response.text())\n .then((result) => console.log(result))\n .catch((error) => console.error(error));"
+ "422": {
+ "description": "Validation Error",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_HTTPValidationError"
+ }
+ }
+ }
},
- {
- "lang": "python",
- "label": "Python",
- "source": "import requests\n\nurl = \"https://api.woosmap.com/stores/search/bounds?lat=51.50976&lng=-0.145276&radius=300&key=YOUR_PUBLIC_API_KEY\"\n\npayload = {}\nheaders = {\n 'Referer': 'http://localhost'\n}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
+ "429": {
+ "description": "Rate limit reached",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_HTTPErrorModel"
+ }
+ }
+ }
}
- ]
+ },
+ "x-original-tag": "dataset"
}
},
- "/localities/autocomplete": {
+ "/datasets/": {
"get": {
- "summary": "Autocomplete for Localities",
- "operationId": "localitiesAutocomplete",
- "servers": [
- {
- "url": "https://api.woosmap.com"
- }
- ],
"tags": [
- "Localities API"
+ "Datasets API"
],
- "description": "Autocomplete on worldwide suggestions for a for text-based geographic searches. It can match on full words as well as substrings. You can therefore send queries as the user types, to provide on-the-fly addresses, city names, postal codes or suburb name suggestions.\n",
+ "summary": "List Datasets",
+ "description": "Lists datasets.\n\n**Rate limit**: `1/1s`",
+ "operationId": "list_datasets_datasets__get",
"security": [
{
- "Woosmap_Platform_API_Reference_PublicApiKeyAuth": [],
- "Woosmap_Platform_API_Reference_RefererHeader": []
- },
- {
- "Woosmap_Platform_API_Reference_PrivateApiKeyAuth": []
+ "Datasets_PrivateKeyWithWrite": []
},
{
- "Woosmap_Platform_API_Reference_PrivateApiKeyHeaderAuth": []
+ "Datasets_PrivateKeyWithWriteHeader": []
}
],
"parameters": [
{
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_input"
- },
- {
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_types"
- },
- {
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_excluded_types"
- },
- {
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_localities_components"
- },
- {
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_language-2"
- },
- {
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_location"
- },
- {
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_radius-2"
- },
- {
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_data"
- },
- {
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_extended"
+ "name": "per_page",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "type": "integer",
+ "maximum": 20,
+ "minimum": 1,
+ "description": "The maximum number of elements to return in a result page.",
+ "default": 10,
+ "title": "Per Page"
+ },
+ "description": "The maximum number of elements to return in a result page."
},
{
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_custom_description"
+ "name": "page",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "type": "integer",
+ "minimum": 1,
+ "description": "The result page to fetch.",
+ "default": 1,
+ "title": "Page"
+ },
+ "description": "The result page to fetch."
}
],
"responses": {
"200": {
- "description": "Autocompletion Localities successfully retrieved",
+ "description": "Successful Response",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_LocalitiesAutocompleteCollectionResponse"
- },
- "examples": {
- "default": {
- "summary": "Autocomplete localities results for input `Lond` and components `country:gb`",
- "value": {
- "localities": [
- {
- "public_id": "Ch6qA8cLmvyvEEoFy6nYeFcEdNU=",
- "type": "locality",
- "types": [
- "locality",
- "city"
- ],
- "description": "London, City of London, United Kingdom",
- "matched_substrings": {
- "description": [
- {
- "offset": 0,
- "length": 4
- }
- ]
- }
- },
- {
- "public_id": "m/T2C4YI2LgszkKXrELBC+9dfC8=",
- "type": "locality",
- "types": [
- "locality",
- "city"
- ],
- "description": "Derry/Londonderry, Derry City and Strabane, United Kingdom",
- "matched_substrings": {
- "description": [
- {
- "offset": 6,
- "length": 4
- }
- ]
- }
- },
- {
- "public_id": "J6eISGMjjvQwPkao8rsByB3aVwM=",
- "type": "locality",
- "types": [
- "locality",
- "village"
- ],
- "description": "London Colney, Hertfordshire, United Kingdom",
- "matched_substrings": {
- "description": [
- {
- "offset": 0,
- "length": 4
- }
- ]
- }
- },
- {
- "public_id": "52MnrbHVWH21CLWH8VY/YWKhqeM=",
- "type": "locality",
- "types": [
- "locality",
- "village"
- ],
- "description": "London Apprentice, Cornwall, United Kingdom",
- "matched_substrings": {
- "description": [
- {
- "offset": 0,
- "length": 4
- }
- ]
- }
- },
- {
- "public_id": "S/5AkUmMBhX35qVI2jR38+dALwk=",
- "type": "locality",
- "types": [
- "locality",
- "city"
- ],
- "description": "City of London, United Kingdom",
- "matched_substrings": {
- "description": [
- {
- "offset": 8,
- "length": 4
- }
- ]
- }
- }
- ]
- }
- }
+ "$ref": "#/components/schemas/Datasets_DatasetListResponse"
}
}
}
},
"401": {
- "description": "Unauthorized. Incorrect authentication credentials.",
+ "description": "Unable to locate credentials.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error401"
- },
- "examples": {
- "Unauthorized": {
- "summary": "Error 401",
- "value": {
- "detail": "Incorrect authentication credentials. Please check or use a valid API Key"
- }
- }
+ "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
+ }
+ }
+ }
+ },
+ "402": {
+ "description": "Out of free quota.",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
}
}
}
},
"403": {
- "description": "Forbidden. This Woosmap API is not enabled for this project.",
+ "description": "Credentials found, but not matching.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error403"
- },
- "examples": {
- "Forbidden": {
- "summary": "Error 403",
- "value": {
- "detail": "This Woosmap API is not enabled for this project."
- }
- }
+ "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
+ }
+ }
+ }
+ },
+ "422": {
+ "description": "Validation Error",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_HTTPValidationError"
}
}
}
},
"429": {
- "description": "Too Many Requests. The rate limit for this endpoint has been exceeded.",
+ "description": "Rate limit reached",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error429"
- },
- "examples": {
- "Forbidden": {
- "summary": "Error 429",
- "value": {
- "detail": "The rate limit for this endpoint has been exceeded"
- }
- }
+ "$ref": "#/components/schemas/Datasets_HTTPErrorModel"
}
}
}
}
},
- "x-codeSamples": [
+ "x-original-tag": "dataset"
+ },
+ "post": {
+ "tags": [
+ "Datasets API"
+ ],
+ "summary": "Create Dataset",
+ "description": "Creates a dataset.\n\n**Rate limit**: `1/1s`",
+ "operationId": "create_dataset_datasets__post",
+ "security": [
{
- "lang": "curl",
- "label": "cURL",
- "source": "curl -L 'https://api.woosmap.com/localities/autocomplete/?input=Lond&components=country%3Agb&no_deprecated_fields=true&key=YOUR_PUBLIC_API_KEY' \\\n-H 'Referer: http://localhost'"
+ "Datasets_PrivateKeyWithWrite": []
},
{
- "lang": "javascript",
- "label": "JavaScript",
- "source": "const requestOptions = {\n method: \"GET\",\n redirect: \"follow\"\n};\n\nfetch(\"https://api.woosmap.com/localities/autocomplete/?input=Lond&components=country%3Agb&no_deprecated_fields=true&key=YOUR_PUBLIC_API_KEY\", requestOptions)\n .then((response) => response.text())\n .then((result) => console.log(result))\n .catch((error) => console.error(error));"
+ "Datasets_PrivateKeyWithWriteHeader": []
+ }
+ ],
+ "requestBody": {
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_DatasetCreateRequest"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "description": "Successful Response",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_DatasetResponse"
+ }
+ }
+ }
},
- {
- "lang": "python",
- "label": "Python",
- "source": "import requests\n\nurl = \"https://api.woosmap.com/localities/autocomplete/?input=Lond&components=country%3Agb&no_deprecated_fields=true&key=YOUR_PUBLIC_API_KEY\"\n\npayload = {}\nheaders = {\n 'Referer': 'http://localhost'\n}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
+ "401": {
+ "description": "Unable to locate credentials.",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
+ }
+ }
+ }
+ },
+ "402": {
+ "description": "Out of free quota.",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
+ }
+ }
+ }
+ },
+ "403": {
+ "description": "Credentials found, but not matching.",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
+ }
+ }
+ }
+ },
+ "422": {
+ "description": "Validation Error",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_HTTPValidationError"
+ }
+ }
+ }
+ },
+ "429": {
+ "description": "Rate limit reached",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_HTTPErrorModel"
+ }
+ }
+ }
}
- ]
+ },
+ "x-original-tag": "dataset"
}
},
- "/localities/details": {
+ "/datasets/{dataset_id}/status": {
"get": {
- "summary": "Details of a Locality",
- "operationId": "localitiesDetails",
- "servers": [
- {
- "url": "https://api.woosmap.com"
- }
- ],
"tags": [
- "Localities API"
+ "Datasets API"
],
- "description": "Provides details of an autocomplete suggestion (using the suggestion’s `public_id`).\n",
+ "summary": "Get Dataset Status",
+ "description": "Returns the dataset import status.\n\n**Rate limit**: `1/5s`",
+ "operationId": "get_dataset_status_datasets__dataset_id__status_get",
"security": [
{
- "Woosmap_Platform_API_Reference_PublicApiKeyAuth": [],
- "Woosmap_Platform_API_Reference_RefererHeader": []
- },
- {
- "Woosmap_Platform_API_Reference_PrivateApiKeyAuth": []
+ "Datasets_PrivateKeyWithWrite": []
},
{
- "Woosmap_Platform_API_Reference_PrivateApiKeyHeaderAuth": []
+ "Datasets_PrivateKeyWithWriteHeader": []
}
],
"parameters": [
{
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_public_id"
- },
- {
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_language-2"
- },
- {
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_fields"
- },
- {
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_cc_format"
- },
- {
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_page-2"
- },
- {
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_addresses_per_page"
+ "name": "dataset_id",
+ "in": "path",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "format": "uuid",
+ "title": "Dataset Id"
+ }
}
],
"responses": {
"200": {
- "description": "Details Localities successfully retrieved",
+ "description": "Successful Response",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_LocalitiesDetailsResponse"
- },
- "examples": {
- "Address": {
- "summary": "Localities Address details from a `public_id` retrieved using Localities autocomplete",
- "value": {
- "result": {
- "public_id": "TVZaV0JmR1pRbkFRbjlKdEU5Q0paamdlQjRRPV9fTVZaV0JmR1pRbkFRbjlKdEU5Q0paamdlQjRRPQ==",
- "types": [
- "address"
- ],
- "formatted_address": "House Of Commons, Houses Of Parliament, London, SW1A 0AA",
- "geometry": {
- "location": {
- "lat": 51.4998415,
- "lng": -0.1246375
- },
- "accuracy": "ROOFTOP"
- },
- "address_components": [
- {
- "types": [
- "country",
- "administrative_area_level_0",
- "division_level_0"
- ],
- "long_name": "United Kingdom",
- "short_name": "GB"
- },
- {
- "types": [
- "state",
- "division_level_1"
- ],
- "long_name": "England",
- "short_name": "England"
- },
- {
- "types": [
- "administrative_area_level_1",
- "county",
- "division_level_2"
- ],
- "long_name": "City of London",
- "short_name": "City of London"
- },
- {
- "types": [
- "district",
- "division_level_3"
- ],
- "long_name": "Westminster",
- "short_name": "Westminster"
- },
- {
- "types": [
- "locality"
- ],
- "long_name": "London",
- "short_name": "London"
- },
- {
- "types": [
- "postal_codes"
- ],
- "long_name": "SW1A 0AA",
- "short_name": "SW1A 0AA"
- },
- {
- "types": [
- "premise"
- ],
- "long_name": "Houses Of Parliament",
- "short_name": "Houses Of Parliament"
- },
- {
- "types": [
- "organisation"
- ],
- "long_name": "House Of Commons",
- "short_name": "House Of Commons"
- }
- ]
- }
- }
- },
- "PostalCode": {
- "summary": "Localities Postal Code details from a `public_id` retrieved using Localities autocomplete",
- "value": {
- "result": {
- "public_id": "QaCU+fBtigK65ztSrqHqUoUDwZw=",
- "types": [
- "postal_code"
- ],
- "formatted_address": "SW1A 0AA, City of London",
- "name": "SW1A 0AA",
- "geometry": {
- "location": {
- "lat": 51.499842,
- "lng": -0.124638
- },
- "accuracy": "GEOMETRIC_CENTER"
- },
- "address_components": [
- {
- "types": [
- "country",
- "administrative_area_level_0",
- "division_level_0"
- ],
- "long_name": "United Kingdom",
- "short_name": "GB"
- },
- {
- "types": [
- "state",
- "division_level_1"
- ],
- "long_name": "England",
- "short_name": "England"
- },
- {
- "types": [
- "administrative_area_level_1",
- "county",
- "division_level_2"
- ],
- "long_name": "City of London",
- "short_name": "City of London"
- },
- {
- "types": [
- "district",
- "division_level_3"
- ],
- "long_name": "Westminster",
- "short_name": "Westminster"
- },
- {
- "types": [
- "postal_codes"
- ],
- "long_name": "SW1A 0AA",
- "short_name": "SW1A 0AA"
- }
- ],
- "addresses": {
- "pagination": {
- "page": 1,
- "page_count": 1,
- "addresses_per_page": 1,
- "address_count": 1
- },
- "list": [
- {
- "public_id": "TVZaV0JmR1pRbkFRbjlKdEU5Q0paamdlQjRRPV9fTVZaV0JmR1pRbkFRbjlKdEU5Q0paamdlQjRRPQ==",
- "description": "House Of Commons, Houses Of Parliament London, SW1A 0AA"
- }
- ]
- }
- }
- }
- }
+ "$ref": "#/components/schemas/Datasets_DatasetStatusResponse"
}
}
}
},
"401": {
- "description": "Unauthorized. Incorrect authentication credentials.",
+ "description": "Unable to locate credentials.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error401"
- },
- "examples": {
- "Unauthorized": {
- "summary": "Error 401",
- "value": {
- "detail": "Incorrect authentication credentials. Please check or use a valid API Key"
- }
- }
+ "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
+ }
+ }
+ }
+ },
+ "402": {
+ "description": "Out of free quota.",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
}
}
}
},
"403": {
- "description": "Forbidden. This Woosmap API is not enabled for this project.",
+ "description": "Credentials found, but not matching.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error403"
- },
- "examples": {
- "Forbidden": {
- "summary": "Error 403",
- "value": {
- "detail": "This Woosmap API is not enabled for this project."
- }
- }
+ "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
+ }
+ }
+ }
+ },
+ "404": {
+ "description": "Dataset was not found",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_HTTPErrorModel"
+ }
+ }
+ }
+ },
+ "422": {
+ "description": "Validation Error",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_HTTPValidationError"
}
}
}
},
"429": {
- "description": "Too Many Requests. The rate limit for this endpoint has been exceeded.",
+ "description": "Rate limit reached",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error429"
- },
- "examples": {
- "Forbidden": {
- "summary": "Error 429",
- "value": {
- "detail": "The rate limit for this endpoint has been exceeded"
- }
- }
+ "$ref": "#/components/schemas/Datasets_HTTPErrorModel"
}
}
}
}
},
- "x-codeSamples": [
+ "x-original-tag": "dataset"
+ }
+ },
+ "/datasets/{dataset_id}/import": {
+ "post": {
+ "tags": [
+ "Datasets API"
+ ],
+ "summary": "Trigger Import",
+ "description": "Trigger the dataset import.\n\n**Rate limit**: `1/90s`",
+ "operationId": "trigger_import_datasets__dataset_id__import_post",
+ "security": [
{
- "lang": "curl",
- "label": "cURL",
- "source": "curl -L 'https://api.woosmap.com/localities/details?public_id=TVZaV0JmR1pRbkFRbjlKdEU5Q0paamdlQjRRPV9fTVZaV0JmR1pRbkFRbjlKdEU5Q0paamdlQjRRPQ%3D%3D&key=YOUR_PUBLIC_API_KEY' \\\n-H 'Referer: http://localhost'"
+ "Datasets_PrivateKeyWithWrite": []
},
{
- "lang": "javascript",
- "label": "JavaScript",
- "source": "const requestOptions = {\n method: \"GET\",\n redirect: \"follow\"\n};\n\nfetch(\"https://api.woosmap.com/localities/details?public_id=TVZaV0JmR1pRbkFRbjlKdEU5Q0paamdlQjRRPV9fTVZaV0JmR1pRbkFRbjlKdEU5Q0paamdlQjRRPQ%3D%3D&key=YOUR_PUBLIC_API_KEY\", requestOptions)\n .then((response) => response.text())\n .then((result) => console.log(result))\n .catch((error) => console.error(error));"
- },
- {
- "lang": "python",
- "label": "Python",
- "source": "import requests\n\nurl = \"https://api.woosmap.com/localities/details?public_id=TVZaV0JmR1pRbkFRbjlKdEU5Q0paamdlQjRRPV9fTVZaV0JmR1pRbkFRbjlKdEU5Q0paamdlQjRRPQ%3D%3D&key=YOUR_PUBLIC_API_KEY\"\n\npayload = {}\nheaders = {\n 'Referer': 'http://localhost'\n}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
+ "Datasets_PrivateKeyWithWriteHeader": []
}
- ]
- }
- },
- "/localities/geocode": {
- "get": {
- "summary": "Geocode a locality or Reverse Geocode a latlng",
- "operationId": "localitiesGeocode",
- "servers": [
+ ],
+ "parameters": [
{
- "url": "https://api.woosmap.com"
+ "name": "dataset_id",
+ "in": "path",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "format": "uuid",
+ "title": "Dataset Id"
+ }
}
],
- "tags": [
- "Localities API"
- ],
- "description": "Provides details for an address or a geographic position. Either parameter `address` **or** `latlng` is required.\n",
- "security": [
- {
- "Woosmap_Platform_API_Reference_PublicApiKeyAuth": [],
- "Woosmap_Platform_API_Reference_RefererHeader": []
+ "responses": {
+ "202": {
+ "description": "Successful Response",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_ImportResponse"
+ }
+ }
+ }
},
- {
- "Woosmap_Platform_API_Reference_PrivateApiKeyAuth": []
+ "401": {
+ "description": "Unable to locate credentials.",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
+ }
+ }
+ }
},
- {
- "Woosmap_Platform_API_Reference_PrivateApiKeyHeaderAuth": []
+ "402": {
+ "description": "Out of free quota.",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
+ }
+ }
+ }
+ },
+ "403": {
+ "description": "Credentials found, but not matching.",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
+ }
+ }
+ }
+ },
+ "404": {
+ "description": "Dataset was not found",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_HTTPErrorModel"
+ }
+ }
+ }
+ },
+ "422": {
+ "description": "Validation Error",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_HTTPValidationError"
+ }
+ }
+ }
+ },
+ "429": {
+ "description": "Rate limit reached",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_HTTPErrorModel"
+ }
+ }
+ }
}
+ },
+ "x-original-tag": "dataset"
+ }
+ },
+ "/datasets/hooks/reimport/{reimport_key}": {
+ "post": {
+ "tags": [
+ "Datasets API"
],
+ "summary": "Reimport Dataset Webhook",
+ "description": "Triggers the reimport of the dataset linked to the dataset.\n\n**Rate limit**: `1/90s`",
+ "operationId": "reimport_dataset_webhook_datasets_hooks_reimport__reimport_key__post",
"parameters": [
{
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_address"
+ "name": "reimport_key",
+ "in": "path",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "format": "uuid",
+ "title": "Reimport Key"
+ }
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Successful Response",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_ImportResponse"
+ }
+ }
+ }
},
- {
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_latlng"
+ "401": {
+ "description": "Unauthorized"
},
- {
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_geocode_types"
+ "402": {
+ "description": "Payment Required"
},
- {
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_excluded_types"
+ "403": {
+ "description": "Forbidden"
+ },
+ "404": {
+ "description": "Dataset was not found",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_HTTPErrorModel"
+ }
+ }
+ }
+ },
+ "422": {
+ "description": "Validation Error",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_HTTPValidationError"
+ }
+ }
+ }
},
+ "429": {
+ "description": "Rate limit reached",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_HTTPErrorModel"
+ }
+ }
+ }
+ }
+ },
+ "security": [],
+ "x-original-tag": "dataset"
+ }
+ },
+ "/datasets/{dataset_id}/features/search/": {
+ "post": {
+ "tags": [
+ "Datasets API"
+ ],
+ "summary": "Search Features",
+ "description": "Search for features.\n\n**Rate limit**: `20/1s`",
+ "operationId": "search_features_datasets__dataset_id__features_search__post",
+ "security": [
{
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_list_sub_buildings"
+ "Datasets_PublicAPIKey": []
},
{
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_localities_components"
+ "Datasets_PrivateApiKey": []
},
{
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_language-2"
+ "Datasets_PrivateApiKeyHeader": []
+ }
+ ],
+ "parameters": [
+ {
+ "name": "dataset_id",
+ "in": "path",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "format": "uuid",
+ "title": "Dataset Id"
+ }
},
{
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_fields"
+ "name": "format",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "enum": [
+ "geojson",
+ "wkb"
+ ],
+ "type": "string",
+ "default": "geojson",
+ "title": "Format"
+ }
},
{
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_data"
+ "name": "per_page",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "type": "integer",
+ "maximum": 20,
+ "minimum": 1,
+ "description": "The maximum number of elements to return in a result page.",
+ "default": 10,
+ "title": "Per Page"
+ },
+ "description": "The maximum number of elements to return in a result page."
},
{
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_cc_format-2"
+ "name": "page",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "type": "integer",
+ "minimum": 1,
+ "description": "The result page to fetch.",
+ "default": 1,
+ "title": "Page"
+ },
+ "description": "The result page to fetch."
}
],
+ "requestBody": {
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_SearchRequest"
+ }
+ }
+ }
+ },
"responses": {
"200": {
- "description": "Request Localities Geocode successful",
+ "description": "Successful Response",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_LocalitiesGeocodeCollectionResponse"
- },
- "examples": {
- "geocode": {
- "summary": "Geocode Results for address `Place Jeanne-d'Arc` with components `country:FR`",
- "value": {
- "results": [
- {
- "public_id": "0+FTYd/1MsiBSxLAKq+/Fiyy+uM=",
- "types": [
- "address",
- "route"
- ],
- "formatted_address": "Place Jeanne D'Arc, 75013, Paris",
- "address_components": [
- {
- "types": [
- "country",
- "administrative_area_level_0",
- "division_level_0"
- ],
- "long_name": "France",
- "short_name": "FR"
- },
- {
- "types": [
- "state",
- "division_level_1"
- ],
- "long_name": "Île-de-France",
- "short_name": "Île-de-France"
- },
- {
- "types": [
- "administrative_area_level_1",
- "county",
- "division_level_2"
- ],
- "long_name": "Paris",
- "short_name": "Paris"
- },
- {
- "types": [
- "locality"
- ],
- "long_name": "Paris",
- "short_name": "Paris"
- },
- {
- "types": [
- "postal_codes"
- ],
- "long_name": "75013",
- "short_name": "75013"
- },
- {
- "types": [
- "route"
- ],
- "long_name": "Place Jeanne D'Arc",
- "short_name": "Place Jeanne D'Arc"
- }
- ],
- "geometry": {
- "location": {
- "lat": 48.829405,
- "lng": 2.367944
- },
- "location_type": "GEOMETRIC_CENTER"
- },
- "scores_per_components": {
- "street_name": 1
- }
- }
- ]
- }
- },
- "reverse": {
- "summary": "Reverse Geocode Results for latlng `51.52089223979333, -0.195460973340401` with list_sub_buildings `true`",
- "value": {
- "results": [
- {
- "public_id": "",
- "types": [
- "address"
- ],
- "formatted_address": "Radway House, Alfred Road, London, W2 5ER",
- "address_components": [
- {
- "types": [
- "country",
- "administrative_area_level_0",
- "division_level_0"
- ],
- "long_name": "United Kingdom",
- "short_name": "GB"
- },
- {
- "types": [
- "state",
- "division_level_1"
- ],
- "long_name": "England",
- "short_name": "England"
- },
- {
- "types": [
- "administrative_area_level_1",
- "county",
- "division_level_2"
- ],
- "long_name": "City of London",
- "short_name": "City of London"
- },
- {
- "types": [
- "district",
- "division_level_3"
- ],
- "long_name": "Westminster",
- "short_name": "Westminster"
- },
- {
- "types": [
- "locality"
- ],
- "long_name": "London",
- "short_name": "London"
- },
- {
- "types": [
- "postal_codes"
- ],
- "long_name": "W2 5ER",
- "short_name": "W2 5ER"
- },
- {
- "types": [
- "route"
- ],
- "long_name": "Alfred Road",
- "short_name": "Alfred Road"
- },
- {
- "types": [
- "premise"
- ],
- "long_name": "Radway House",
- "short_name": "Radway House"
- }
- ],
- "geometry": {
- "location": {
- "lat": 51.5211258,
- "lng": -0.1956346
- },
- "location_type": "ROOFTOP"
- },
- "distance": 28.62347934634507,
- "sub_buildings": [
- {
- "public_id": "Nmp0K1VVUFQ4eFI3S1BuaDZEZVVJVWhYY3A4PV9faitia1pNNURnOWYvQmRjMUdweXl5SjdLZUZnPQ==",
- "description": "Flat 1, Radway House, Alfred Road, London, W2 5ER"
- },
- {
- "public_id": "Nmp0K1VVUFQ4eFI3S1BuaDZEZVVJVWhYY3A4PV9fbTRoZVpxYkhBYVVXSytqek04UGtGQ1VLTVI0PQ==",
- "description": "Flat 2, Radway House, Alfred Road, London, W2 5ER"
- },
- {
- "public_id": "Nmp0K1VVUFQ4eFI3S1BuaDZEZVVJVWhYY3A4PV9fcmY1MHV6aE5kVytLWWZLV3JabzFzR2lnbThzPQ==",
- "description": "Flat 3, Radway House, Alfred Road, London, W2 5ER"
- },
- {
- "public_id": "Nmp0K1VVUFQ4eFI3S1BuaDZEZVVJVWhYY3A4PV9fajlaWXJJUDFKSmI1Y0dpNElDanBQejF2YUg4PQ==",
- "description": "Flat 4, Radway House, Alfred Road, London, W2 5ER"
- },
- {
- "public_id": "Nmp0K1VVUFQ4eFI3S1BuaDZEZVVJVWhYY3A4PV9fbkdEZTNOODZNL0VlWGtoR0pSa2tBS1NMYndVPQ==",
- "description": "Flat 5, Radway House, Alfred Road, London, W2 5ER"
- },
- {
- "public_id": "Nmp0K1VVUFQ4eFI3S1BuaDZEZVVJVWhYY3A4PV9fTGxlWUlKN2NhU1JXcTBuSEs1RExiamliNlpNPQ==",
- "description": "Flat 6, Radway House, Alfred Road, London, W2 5ER"
- },
- {
- "public_id": "Nmp0K1VVUFQ4eFI3S1BuaDZEZVVJVWhYY3A4PV9feVZXa05ISjhzVGNHK2NQUHFpNlFIUWgvSnpJPQ==",
- "description": "Flat 7, Radway House, Alfred Road, London, W2 5ER"
- },
- {
- "public_id": "Nmp0K1VVUFQ4eFI3S1BuaDZEZVVJVWhYY3A4PV9fTVc5NldSeWpuOENUS2xST21vZzdnNGxGQldrPQ==",
- "description": "Flat 8, Radway House, Alfred Road, London, W2 5ER"
- },
- {
- "public_id": "Nmp0K1VVUFQ4eFI3S1BuaDZEZVVJVWhYY3A4PV9fN3RkdE9HeHBwT2M5R1hQMUFwNDJUc3NwRklZPQ==",
- "description": "Flat 9, Radway House, Alfred Road, London, W2 5ER"
- },
- {
- "public_id": "Nmp0K1VVUFQ4eFI3S1BuaDZEZVVJVWhYY3A4PV9fR2RVRHpoYll4a2RlTldjLzF3NVNFTXNZYzlFPQ==",
- "description": "Flat 10, Radway House, Alfred Road, London, W2 5ER"
- },
- {
- "public_id": "Nmp0K1VVUFQ4eFI3S1BuaDZEZVVJVWhYY3A4PV9fL3FXbnVZU2h4bjAwMDNKK3hJeU9OL3lnemFzPQ==",
- "description": "Flat 11, Radway House, Alfred Road, London, W2 5ER"
- },
- {
- "public_id": "Nmp0K1VVUFQ4eFI3S1BuaDZEZVVJVWhYY3A4PV9fVVVCUWhpNVJQWWk2eTl1WFBTVTRmK3Zma3VBPQ==",
- "description": "Flat 12, Radway House, Alfred Road, London, W2 5ER"
- },
- {
- "public_id": "Nmp0K1VVUFQ4eFI3S1BuaDZEZVVJVWhYY3A4PV9fV2hSUDNadnFMN3ZzaWJ6UFd2MWM3aW1qT3hBPQ==",
- "description": "Flat 13, Radway House, Alfred Road, London, W2 5ER"
- },
- {
- "public_id": "Nmp0K1VVUFQ4eFI3S1BuaDZEZVVJVWhYY3A4PV9fcWxGbFRlcE1TVStZVElodzFSdVhiTGxZTXl3PQ==",
- "description": "Flat 14, Radway House, Alfred Road, London, W2 5ER"
- },
- {
- "public_id": "Nmp0K1VVUFQ4eFI3S1BuaDZEZVVJVWhYY3A4PV9fYjR5VHRXMmZTQ0FOMGwwZHJNaFh5TFRnVHlnPQ==",
- "description": "Flat 15, Radway House, Alfred Road, London, W2 5ER"
- },
- {
- "public_id": "Nmp0K1VVUFQ4eFI3S1BuaDZEZVVJVWhYY3A4PV9fNmp0K1VVUFQ4eFI3S1BuaDZEZVVJVWhYY3A4PQ==",
- "description": "Flat 16, Radway House, Alfred Road, London, W2 5ER"
- }
- ]
- }
- ]
- }
- }
+ "$ref": "#/components/schemas/Datasets_SearchResultResponse"
}
}
}
},
"401": {
- "description": "Unauthorized. Incorrect authentication credentials.",
+ "description": "Unable to locate credentials.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error401"
- },
- "examples": {
- "Unauthorized": {
- "summary": "Error 401",
- "value": {
- "detail": "Incorrect authentication credentials. Please check or use a valid API Key"
- }
- }
+ "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
+ }
+ }
+ }
+ },
+ "402": {
+ "description": "Out of free quota.",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
}
}
}
},
"403": {
- "description": "Forbidden. This Woosmap API is not enabled for this project.",
+ "description": "Credentials found, but not matching.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error403"
- },
- "examples": {
- "Forbidden": {
- "summary": "Error 403",
- "value": {
- "detail": "This Woosmap API is not enabled for this project."
- }
- }
+ "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
}
}
}
},
- "429": {
- "description": "Too Many Requests. The rate limit for this endpoint has been exceeded.",
+ "404": {
+ "description": "Dataset was not found",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error429"
- },
- "examples": {
- "Forbidden": {
- "summary": "Error 429",
- "value": {
- "detail": "The rate limit for this endpoint has been exceeded"
- }
- }
+ "$ref": "#/components/schemas/Datasets_HTTPErrorModel"
}
}
}
- }
- },
- "x-codeSamples": [
- {
- "lang": "curl",
- "label": "cURL",
- "source": "curl -L 'https://api.woosmap.com/localities/geocode?address=Place%20Jeanne-d%27Arc&components=country%3AFR&key=YOUR_PUBLIC_API_KEY' \\\n-H 'Referer: http://localhost'"
},
- {
- "lang": "javascript",
- "label": "JavaScript",
- "source": "const requestOptions = {\n method: \"GET\",\n redirect: \"follow\"\n};\n\nfetch(\"https://api.woosmap.com/localities/geocode?address=Place%20Jeanne-d'Arc&components=country%3AFR&key=YOUR_PUBLIC_API_KEY\", requestOptions)\n .then((response) => response.text())\n .then((result) => console.log(result))\n .catch((error) => console.error(error));"
+ "422": {
+ "description": "Validation Error",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_HTTPValidationError"
+ }
+ }
+ }
},
- {
- "lang": "python",
- "label": "Python",
- "source": "import requests\n\nurl = \"https://api.woosmap.com/localities/geocode?address=Place%20Jeanne-d'Arc&components=country%3AFR&key=YOUR_PUBLIC_API_KEY\"\n\npayload = {}\nheaders = {\n 'Referer': 'http://localhost'\n}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
+ "429": {
+ "description": "Rate limit reached",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_HTTPErrorModel"
+ }
+ }
+ }
}
- ]
+ },
+ "x-original-tag": "search"
}
},
- "/localities/nearby": {
- "get": {
- "summary": "Nearby points of interest",
- "operationId": "localitiesNearby",
- "servers": [
- {
- "url": "https://api.woosmap.com"
- }
- ],
+ "/datasets/{dataset_id}/features/nearby/": {
+ "post": {
"tags": [
- "Localities API"
+ "Datasets API"
],
- "description": "Retrieve worldwide points of interest surrounding a given location. They can be filtered by categories.\n",
+ "summary": "Nearby Features",
+ "description": "Search for features nearby geometry.\n\n**Rate limit**: `20/1s`",
+ "operationId": "nearby_features_datasets__dataset_id__features_nearby__post",
"security": [
{
- "Woosmap_Platform_API_Reference_PublicApiKeyAuth": [],
- "Woosmap_Platform_API_Reference_RefererHeader": []
+ "Datasets_PublicAPIKey": []
},
{
- "Woosmap_Platform_API_Reference_PrivateApiKeyAuth": []
+ "Datasets_PrivateApiKey": []
},
{
- "Woosmap_Platform_API_Reference_PrivateApiKeyHeaderAuth": []
+ "Datasets_PrivateApiKeyHeader": []
}
],
"parameters": [
{
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_nearby_types"
- },
- {
- "name": "location",
- "description": "Center of the search circle.\n",
- "schema": {
- "type": "string"
- },
+ "name": "dataset_id",
+ "in": "path",
"required": true,
- "example": "40.71399,-74.00499",
- "in": "query"
+ "schema": {
+ "type": "string",
+ "format": "uuid",
+ "title": "Dataset Id"
+ }
},
{
- "name": "radius",
- "description": "radius of the search circle, in meter.\n",
- "schema": {
- "type": "integer",
- "default": 1000,
- "minimum": 10,
- "maximum": 50000
- },
+ "name": "format",
"in": "query",
"required": false,
- "example": 3000
+ "schema": {
+ "enum": [
+ "geojson",
+ "wkb"
+ ],
+ "type": "string",
+ "default": "geojson",
+ "title": "Format"
+ }
},
{
- "name": "page",
- "description": "use `page` to navigate through paginated results.\n",
+ "name": "per_page",
+ "in": "query",
+ "required": false,
"schema": {
"type": "integer",
- "default": 1,
- "minimum": 1
+ "maximum": 20,
+ "minimum": 1,
+ "description": "The maximum number of elements to return in a result page.",
+ "default": 10,
+ "title": "Per Page"
},
- "in": "query",
- "example": 7
+ "description": "The maximum number of elements to return in a result page."
},
{
- "name": "limit",
- "description": "Defines how many results should be included in a page\n",
+ "name": "page",
+ "in": "query",
+ "required": false,
"schema": {
"type": "integer",
- "default": 10,
"minimum": 1,
- "maximum": 30
+ "description": "The result page to fetch.",
+ "default": 1,
+ "title": "Page"
},
- "in": "query",
- "example": 15
- },
- {
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_nearby_excluded_types"
+ "description": "The result page to fetch."
}
],
+ "requestBody": {
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_SearchRequestWithGeometry"
+ },
+ "examples": {
+ "point_geojson": {
+ "summary": "Request with point geojson geometry",
+ "value": {
+ "geometry": {
+ "type": "Point",
+ "coordinates": [
+ 3.883,
+ 43.6
+ ]
+ }
+ }
+ },
+ "linestring_geojson": {
+ "summary": "Request with linestring geojson geometry",
+ "value": {
+ "geometry": {
+ "type": "LineString",
+ "coordinates": [
+ [
+ 3.85882,
+ 43.60912
+ ],
+ [
+ 3.86276,
+ 43.60807
+ ],
+ [
+ 3.8649,
+ 43.60572
+ ],
+ [
+ 3.86513,
+ 43.60412
+ ],
+ [
+ 3.86681,
+ 43.60245
+ ],
+ [
+ 3.86822,
+ 43.60093
+ ],
+ [
+ 3.87003,
+ 43.6
+ ]
+ ]
+ }
+ }
+ },
+ "polygon_geojson": {
+ "summary": "Request with polygon geojson geometry, a 10 meters buffer and a where clause",
+ "value": {
+ "geometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ -10,
+ -10
+ ],
+ [
+ 10,
+ -10
+ ],
+ [
+ 10,
+ 10
+ ],
+ [
+ -10,
+ 10
+ ],
+ [
+ -10,
+ -10
+ ]
+ ]
+ ]
+ },
+ "buffer": 10,
+ "where": "cost:<500"
+ }
+ }
+ }
+ }
+ }
+ },
"responses": {
"200": {
- "description": "Points of interests surrounding `location` and matching provided `types`, sorted by distance to `location`.",
+ "description": "Successful Response",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_LocalitiesNearbyCollectionResponse"
- },
- "examples": {
- "default": {
- "summary": "Nearby points of interest with category `business.shop` around New-York center.",
- "value": {
- "results": [
- {
- "public_id": "cG9pOnVzOmJ1c2luZXNzLmZvb2RfYW5kX2RyaW5rcy5mYXN0X2Zvb2Q6ZTc2ZDA1YzBiM2M0M2NmNmVkNTJjNGQyZDFiZDE3Nzc0OTZkNjlmOA==",
- "types": [
- "point_of_interest",
- "business.food_and_drinks.fast_food"
+ "$ref": "#/components/schemas/Datasets_SearchResultResponse"
+ }
+ }
+ }
+ },
+ "401": {
+ "description": "Unable to locate credentials.",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
+ }
+ }
+ }
+ },
+ "402": {
+ "description": "Out of free quota.",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
+ }
+ }
+ }
+ },
+ "403": {
+ "description": "Credentials found, but not matching.",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
+ }
+ }
+ }
+ },
+ "404": {
+ "description": "Dataset was not found",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_HTTPErrorModel"
+ }
+ }
+ }
+ },
+ "422": {
+ "description": "Validation Error",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_HTTPValidationError"
+ }
+ }
+ }
+ },
+ "429": {
+ "description": "Rate limit reached",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_HTTPErrorModel"
+ }
+ }
+ }
+ }
+ },
+ "x-original-tag": "search"
+ }
+ },
+ "/datasets/{dataset_id}/features/intersects/": {
+ "post": {
+ "tags": [
+ "Datasets API"
+ ],
+ "summary": "Intersect Features",
+ "description": "Returns the features that are intersecting with geometry.\n\n**Rate limit**: `20/1s`\n\n",
+ "operationId": "intersect_features_datasets__dataset_id__features_intersects__post",
+ "security": [
+ {
+ "Datasets_PublicAPIKey": []
+ },
+ {
+ "Datasets_PrivateApiKey": []
+ },
+ {
+ "Datasets_PrivateApiKeyHeader": []
+ }
+ ],
+ "parameters": [
+ {
+ "name": "dataset_id",
+ "in": "path",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "format": "uuid",
+ "title": "Dataset Id"
+ }
+ },
+ {
+ "name": "format",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "enum": [
+ "geojson",
+ "wkb"
+ ],
+ "type": "string",
+ "default": "geojson",
+ "title": "Format"
+ }
+ },
+ {
+ "name": "per_page",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "type": "integer",
+ "maximum": 20,
+ "minimum": 1,
+ "description": "The maximum number of elements to return in a result page.",
+ "default": 10,
+ "title": "Per Page"
+ },
+ "description": "The maximum number of elements to return in a result page."
+ },
+ {
+ "name": "page",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "type": "integer",
+ "minimum": 1,
+ "description": "The result page to fetch.",
+ "default": 1,
+ "title": "Page"
+ },
+ "description": "The result page to fetch."
+ }
+ ],
+ "requestBody": {
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_SearchRequestWithGeometry"
+ },
+ "examples": {
+ "point_geojson": {
+ "summary": "Request with point geojson geometry",
+ "value": {
+ "geometry": {
+ "type": "Point",
+ "coordinates": [
+ 3.883,
+ 43.6
+ ]
+ }
+ }
+ },
+ "linestring_geojson": {
+ "summary": "Request with linestring geojson geometry",
+ "value": {
+ "geometry": {
+ "type": "LineString",
+ "coordinates": [
+ [
+ 3.85882,
+ 43.60912
+ ],
+ [
+ 3.86276,
+ 43.60807
+ ],
+ [
+ 3.8649,
+ 43.60572
+ ],
+ [
+ 3.86513,
+ 43.60412
+ ],
+ [
+ 3.86681,
+ 43.60245
+ ],
+ [
+ 3.86822,
+ 43.60093
+ ],
+ [
+ 3.87003,
+ 43.6
+ ]
+ ]
+ }
+ }
+ },
+ "polygon_geojson": {
+ "summary": "Request with polygon geojson geometry, a 10 meters buffer and a where clause",
+ "value": {
+ "geometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ -10,
+ -10
],
- "categories": [
- "business.food_and_drinks.fast_food"
+ [
+ 10,
+ -10
],
- "name": "Pret A Manger",
- "formatted_address": "Broadway, New York",
- "geometry": {
- "location": {
- "lat": 40.715905992166256,
- "lng": -74.00508673226767
- }
- },
- "address_components": [
- {
- "types": [
- "country",
- "administrative_area_level_0",
- "division_level_0"
- ],
- "long_name": "United States",
- "short_name": "US"
- },
- {
- "types": [
- "locality"
- ],
- "long_name": "New York",
- "short_name": "New York"
- },
- {
- "types": [
- "route"
- ],
- "long_name": "Broadway",
- "short_name": "Broadway"
- }
- ]
- },
- {
- "public_id": "cG9pOnVzOmJ1c2luZXNzLmZvb2RfYW5kX2RyaW5rcy5mYXN0X2Zvb2Q6MzBlMGYxMzVhNGUzZDQ4MzRiMmNlNDMzMWJiYjZkOTY0MWJhN2E0Zg==",
- "types": [
- "point_of_interest",
- "business.food_and_drinks.fast_food"
+ [
+ 10,
+ 10
],
- "categories": [
- "business.food_and_drinks.fast_food"
- ],
- "name": "Dunkin'",
- "formatted_address": "Broadway, New York",
- "geometry": {
- "location": {
- "lat": 40.71602115951586,
- "lng": -74.00494482664695
- }
- },
- "address_components": [
- {
- "types": [
- "country",
- "administrative_area_level_0",
- "division_level_0"
- ],
- "long_name": "United States",
- "short_name": "US"
- },
- {
- "types": [
- "locality"
- ],
- "long_name": "New York",
- "short_name": "New York"
- },
- {
- "types": [
- "route"
- ],
- "long_name": "Broadway",
- "short_name": "Broadway"
- }
- ]
- },
- {
- "public_id": "cG9pOnVzOmJ1c2luZXNzLmZvb2RfYW5kX2RyaW5rcy5yZXN0YXVyYW50OmJlMWNkMTE2ZDQwM2E0Y2YwNGQ5NWQ2OTlmZWRmM2FhZTExNGU3ZWY=",
- "types": [
- "point_of_interest",
- "business.food_and_drinks.restaurant"
- ],
- "categories": [
- "business.food_and_drinks.restaurant"
- ],
- "name": "Chambers",
- "formatted_address": "Chambers Street, New York",
- "geometry": {
- "location": {
- "lat": 40.71461844801976,
- "lng": -74.00754036678366
- }
- },
- "address_components": [
- {
- "types": [
- "country",
- "administrative_area_level_0",
- "division_level_0"
- ],
- "long_name": "United States",
- "short_name": "US"
- },
- {
- "types": [
- "locality"
- ],
- "long_name": "New York",
- "short_name": "New York"
- },
- {
- "types": [
- "route"
- ],
- "long_name": "Chambers Street",
- "short_name": "Chambers Street"
- }
- ]
- },
- {
- "public_id": "cG9pOnVzOmJ1c2luZXNzLnNob3AuZ3JvY2VyeTo1YTczMjYxOTQyYjVlZmUwOGEzZjQ1NGZmMTMwMmJjNjA4ODE3NmRk",
- "types": [
- "point_of_interest",
- "business.shop.grocery"
- ],
- "categories": [
- "business.shop.grocery"
- ],
- "name": "City Hall Oasis",
- "geometry": {
- "location": {
- "lat": 40.71283012706819,
- "lng": -74.00727837935057
- },
- "viewport": {
- "northeast": {
- "lat": 40.71286059528623,
- "lng": -74.00724213866874
- },
- "southwest": {
- "lat": 40.71279957503111,
- "lng": -74.00731464213119
- }
- }
- },
- "address_components": [
- {
- "types": [
- "country",
- "administrative_area_level_0",
- "division_level_0"
- ],
- "long_name": "United States",
- "short_name": "US"
- }
- ]
- },
- {
- "public_id": "cG9pOnVzOmJ1c2luZXNzLmZpbmFuY2UuYmFuazpiOGY5MDE4Nzc2ZDZjNmEwZTljOGM4YWM0OTAxZWZlNzNmODZkM2M3",
- "types": [
- "point_of_interest",
- "business.finance.bank"
- ],
- "categories": [
- "business.finance.bank"
- ],
- "name": "Citibank",
- "formatted_address": "Broadway, New York",
- "geometry": {
- "location": {
- "lat": 40.7130414767567,
- "lng": -74.0074818610995
- }
- },
- "address_components": [
- {
- "types": [
- "country",
- "administrative_area_level_0",
- "division_level_0"
- ],
- "long_name": "United States",
- "short_name": "US"
- },
- {
- "types": [
- "locality"
- ],
- "long_name": "New York",
- "short_name": "New York"
- },
- {
- "types": [
- "route"
- ],
- "long_name": "Broadway",
- "short_name": "Broadway"
- }
- ]
- },
- {
- "public_id": "cG9pOnVzOmJ1c2luZXNzLmZvb2RfYW5kX2RyaW5rcy5yZXN0YXVyYW50OmQzMTMzZTJkODdiOGJjMGE3ZjI2YTdiMWVjYTZlZmI1MjQyYWE3MTE=",
- "types": [
- "point_of_interest",
- "business.food_and_drinks.restaurant"
- ],
- "categories": [
- "business.food_and_drinks.restaurant"
- ],
- "name": "Saffron",
- "geometry": {
- "location": {
- "lat": 40.71467049963849,
- "lng": -74.00767187884445
- }
- },
- "address_components": [
- {
- "types": [
- "country",
- "administrative_area_level_0",
- "division_level_0"
- ],
- "long_name": "United States",
- "short_name": "US"
- }
- ]
- },
- {
- "public_id": "cG9pOnVzOmJ1c2luZXNzLmZvb2RfYW5kX2RyaW5rcy5yZXN0YXVyYW50OmQ1NjMyN2RiM2EyNWJlYmIwNjJjZjNlYWYwMDE3ZDIyYzEyNWNlMjY=",
- "types": [
- "point_of_interest",
- "business.food_and_drinks.restaurant"
- ],
- "categories": [
- "business.food_and_drinks.restaurant"
+ [
+ -10,
+ 10
],
- "name": "Gran Morsi",
- "geometry": {
- "location": {
- "lat": 40.71432885326513,
- "lng": -74.00778746528921
- }
- },
- "address_components": [
- {
- "types": [
- "country",
- "administrative_area_level_0",
- "division_level_0"
- ],
- "long_name": "United States",
- "short_name": "US"
- }
+ [
+ -10,
+ -10
]
- },
- {
- "public_id": "cG9pOnVzOmJ1c2luZXNzLmZvb2RfYW5kX2RyaW5rcy5iYXI6MDE5ZGUzNTdiZDkyNzAyZDM4ZDUyOWQ0YmJiZjBmODQ5YWEzZmY1NA==",
- "types": [
- "point_of_interest",
- "business.food_and_drinks.bar"
- ],
- "categories": [
- "business.food_and_drinks.bar"
- ],
- "name": "Bon Courage",
- "formatted_address": "Reade Street, New York",
- "geometry": {
- "location": {
- "lat": 40.71541472882126,
- "lng": -74.00719193106873
- }
- },
- "address_components": [
- {
- "types": [
- "country",
- "administrative_area_level_0",
- "division_level_0"
- ],
- "long_name": "United States",
- "short_name": "US"
- },
- {
- "types": [
- "locality"
- ],
- "long_name": "New York",
- "short_name": "New York"
- },
- {
- "types": [
- "route"
- ],
- "long_name": "Reade Street",
- "short_name": "Reade Street"
- }
- ]
- },
- {
- "public_id": "cG9pOnVzOmJ1c2luZXNzLmZvb2RfYW5kX2RyaW5rcy5mYXN0X2Zvb2Q6OGIyNDY5MDM4M2JhYzE1NmY4OGRiMGQzYmIyYzNjMTVmOTk0NDQwZQ==",
- "types": [
- "point_of_interest",
- "business.food_and_drinks.fast_food"
- ],
- "categories": [
- "business.food_and_drinks.fast_food"
- ],
- "name": "Burger King",
- "formatted_address": "Broadway, New York",
- "geometry": {
- "location": {
- "lat": 40.71619516782573,
- "lng": -74.00480635760651
- }
- },
- "address_components": [
- {
- "types": [
- "country",
- "administrative_area_level_0",
- "division_level_0"
- ],
- "long_name": "United States",
- "short_name": "US"
- },
- {
- "types": [
- "locality"
- ],
- "long_name": "New York",
- "short_name": "New York"
- },
- {
- "types": [
- "route"
- ],
- "long_name": "Broadway",
- "short_name": "Broadway"
- }
- ]
- },
- {
- "public_id": "cG9pOnVzOmJ1c2luZXNzLnRoZWF0cmU6MTU1Yjk5YmEwY2FiYzIzZjYxYWYyYTViYzI0ZDViYTVlNmVmZTAwNA==",
- "types": [
- "point_of_interest",
- "business.theatre"
- ],
- "categories": [
- "business.theatre"
- ],
- "name": "The Flea",
- "formatted_address": "Thomas Street, New York",
- "geometry": {
- "location": {
- "lat": 40.71609349534023,
- "lng": -74.00589281989586
- }
- },
- "address_components": [
- {
- "types": [
- "country",
- "administrative_area_level_0",
- "division_level_0"
- ],
- "long_name": "United States",
- "short_name": "US"
- },
- {
- "types": [
- "locality"
- ],
- "long_name": "New York",
- "short_name": "New York"
- },
- {
- "types": [
- "route"
- ],
- "long_name": "Thomas Street",
- "short_name": "Thomas Street"
- }
- ]
- }
- ],
- "pagination": {
- "previous_page": 2,
- "next_page": 4
- }
- }
+ ]
+ ]
+ },
+ "buffer": 10,
+ "where": "cost:<500"
}
}
}
}
+ }
+ },
+ "responses": {
+ "200": {
+ "description": "Successful Response",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_SearchResultResponse"
+ }
+ }
+ }
},
"401": {
- "description": "Unauthorized. Incorrect authentication credentials.",
+ "description": "Unable to locate credentials.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error401"
- },
- "examples": {
- "Unauthorized": {
- "summary": "Error 401",
- "value": {
- "detail": "Incorrect authentication credentials. Please check or use a valid API Key"
- }
- }
+ "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
+ }
+ }
+ }
+ },
+ "402": {
+ "description": "Out of free quota.",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
}
}
}
},
"403": {
- "description": "Forbidden. This Woosmap API is not enabled for this project.",
+ "description": "Credentials found, but not matching.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error403"
- },
- "examples": {
- "Forbidden": {
- "summary": "Error 403",
- "value": {
- "detail": "This Woosmap API is not enabled for this project."
- }
- }
+ "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
}
}
}
},
- "429": {
- "description": "Too Many Requests. The rate limit for this endpoint has been exceeded.",
+ "404": {
+ "description": "Dataset was not found",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error429"
- },
- "examples": {
- "Forbidden": {
- "summary": "Error 429",
- "value": {
- "detail": "The rate limit for this endpoint has been exceeded"
- }
- }
+ "$ref": "#/components/schemas/Datasets_HTTPErrorModel"
}
}
}
- }
- },
- "x-codeSamples": [
- {
- "lang": "curl",
- "label": "cURL",
- "source": "curl -L 'https://api.woosmap.com/localities/nearby?types=business&location=40.71399%2C-74.00499&page=3&key=YOUR_PUBLIC_API_KEY' \\\n-H 'Referer: http://localhost'"
},
- {
- "lang": "javascript",
- "label": "JavaScript",
- "source": "const requestOptions = {\n method: \"GET\",\n redirect: \"follow\"\n};\n\nfetch(\"https://api.woosmap.com/localities/nearby?types=business&location=40.71399%2C-74.00499&page=3&key=YOUR_PUBLIC_API_KEY\", requestOptions)\n .then((response) => response.text())\n .then((result) => console.log(result))\n .catch((error) => console.error(error));"
+ "422": {
+ "description": "Validation Error",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_HTTPValidationError"
+ }
+ }
+ }
},
- {
- "lang": "python",
- "label": "Python",
- "source": "import requests\n\nurl = \"https://api.woosmap.com/localities/nearby?types=business&location=40.71399%2C-74.00499&page=3&key=YOUR_PUBLIC_API_KEY\"\n\npayload = {}\nheaders = {\n 'Referer': 'http://localhost'\n}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
+ "429": {
+ "description": "Rate limit reached",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_HTTPErrorModel"
+ }
+ }
+ }
}
- ]
+ },
+ "x-original-tag": "search"
}
},
- "/address/autocomplete/json": {
- "get": {
- "deprecated": true,
- "summary": "Autocomplete for Addresses",
- "operationId": "addressAutocomplete",
- "servers": [
- {
- "url": "https://api.woosmap.com"
- }
- ],
+ "/datasets/{dataset_id}/features/contains/": {
+ "post": {
"tags": [
- "Address API"
+ "Datasets API"
],
- "description": "Autocomplete on worldwide suggestions for a for text-based geographic searches. It can match on full words as well as substrings.\n",
+ "summary": "Contains Features",
+ "description": "Search for features containing geometry.\n\n**Rate limit**: `20/1s`\n\n",
+ "operationId": "contains_features_datasets__dataset_id__features_contains__post",
"security": [
{
- "Woosmap_Platform_API_Reference_PublicApiKeyAuth": [],
- "Woosmap_Platform_API_Reference_RefererHeader": []
+ "Datasets_PublicAPIKey": []
},
{
- "Woosmap_Platform_API_Reference_PrivateApiKeyAuth": []
+ "Datasets_PrivateApiKey": []
},
{
- "Woosmap_Platform_API_Reference_PrivateApiKeyHeaderAuth": []
+ "Datasets_PrivateApiKeyHeader": []
}
],
"parameters": [
{
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_input-2"
+ "name": "dataset_id",
+ "in": "path",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "format": "uuid",
+ "title": "Dataset Id"
+ }
},
{
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_address_components"
+ "name": "format",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "enum": [
+ "geojson",
+ "wkb"
+ ],
+ "type": "string",
+ "default": "geojson",
+ "title": "Format"
+ }
},
{
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_location-2"
+ "name": "per_page",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "type": "integer",
+ "maximum": 20,
+ "minimum": 1,
+ "description": "The maximum number of elements to return in a result page.",
+ "default": 10,
+ "title": "Per Page"
+ },
+ "description": "The maximum number of elements to return in a result page."
},
{
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_language-3"
+ "name": "page",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "type": "integer",
+ "minimum": 1,
+ "description": "The result page to fetch.",
+ "default": 1,
+ "title": "Page"
+ },
+ "description": "The result page to fetch."
}
],
+ "requestBody": {
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_SearchRequestWithGeometry"
+ },
+ "examples": {
+ "point_geojson": {
+ "summary": "Request with point geojson geometry",
+ "value": {
+ "geometry": {
+ "type": "Point",
+ "coordinates": [
+ 3.883,
+ 43.6
+ ]
+ }
+ }
+ },
+ "linestring_geojson": {
+ "summary": "Request with linestring geojson geometry",
+ "value": {
+ "geometry": {
+ "type": "LineString",
+ "coordinates": [
+ [
+ 3.85882,
+ 43.60912
+ ],
+ [
+ 3.86276,
+ 43.60807
+ ],
+ [
+ 3.8649,
+ 43.60572
+ ],
+ [
+ 3.86513,
+ 43.60412
+ ],
+ [
+ 3.86681,
+ 43.60245
+ ],
+ [
+ 3.86822,
+ 43.60093
+ ],
+ [
+ 3.87003,
+ 43.6
+ ]
+ ]
+ }
+ }
+ },
+ "polygon_geojson": {
+ "summary": "Request with polygon geojson geometry, a 10 meters buffer and a where clause",
+ "value": {
+ "geometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ -10,
+ -10
+ ],
+ [
+ 10,
+ -10
+ ],
+ [
+ 10,
+ 10
+ ],
+ [
+ -10,
+ 10
+ ],
+ [
+ -10,
+ -10
+ ]
+ ]
+ ]
+ },
+ "buffer": 10,
+ "where": "cost:<500"
+ }
+ }
+ }
+ }
+ }
+ },
"responses": {
"200": {
- "description": "Autocompletion Address successfully retrieved",
+ "description": "Successful Response",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_AddressAutocompleteCollectionResponse"
- },
- "examples": {
- "default": {
- "summary": "Autocomplete address results for input `Lond` and components `country:gb`",
- "value": {
- "predictions": [
- {
- "public_id": "aGVyZTpjbTpuYW1lZHBsYWNlOjIwMzM3NDU0",
- "description": "London, England, United Kingdom",
- "matched_substring": {
- "description": [
- {
- "offset": 0,
- "length": 4
- }
- ]
- },
- "type": "locality"
- },
- {
- "public_id": "aGVyZTpjbTpuYW1lZHBsYWNlOjIwNDE5Nzgz",
- "description": "Londonderry, Northern Ireland, United Kingdom",
- "matched_substring": {
- "description": [
- {
- "offset": 0,
- "length": 4
- }
- ]
- },
- "type": "locality"
- },
- {
- "public_id": "aGVyZTpjbTpuYW1lZHBsYWNlOjIwMzM3NjEw",
- "description": "London Heathrow Airport, Hounslow, England, United Kingdom",
- "matched_substring": {
- "description": [
- {
- "offset": 0,
- "length": 4
- }
- ]
- },
- "type": "locality"
- },
- {
- "public_id": "aGVyZTpjbTpuYW1lZHBsYWNlOjIwMzM0NDEy",
- "description": "London Luton Airport, Luton, England, United Kingdom",
- "matched_substring": {
- "description": [
- {
- "offset": 0,
- "length": 4
- }
- ]
- },
- "type": "locality"
- }
- ],
- "status": "OK"
- }
- }
+ "$ref": "#/components/schemas/Datasets_SearchResultResponse"
}
}
}
},
"401": {
- "description": "Unauthorized. Incorrect authentication credentials.",
+ "description": "Unable to locate credentials.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error401"
- },
- "examples": {
- "Unauthorized": {
- "summary": "Error 401",
- "value": {
- "detail": "Incorrect authentication credentials. Please check or use a valid API Key"
- }
- }
+ "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
+ }
+ }
+ }
+ },
+ "402": {
+ "description": "Out of free quota.",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
}
}
}
},
"403": {
- "description": "Forbidden. This Woosmap API is not enabled for this project.",
+ "description": "Credentials found, but not matching.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error403"
- },
- "examples": {
- "Forbidden": {
- "summary": "Error 403",
- "value": {
- "detail": "This Woosmap API is not enabled for this project."
- }
- }
+ "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
+ }
+ }
+ }
+ },
+ "404": {
+ "description": "Dataset was not found",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_HTTPErrorModel"
+ }
+ }
+ }
+ },
+ "422": {
+ "description": "Validation Error",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_HTTPValidationError"
}
}
}
},
"429": {
- "description": "Too Many Requests. The rate limit for this endpoint has been exceeded.",
+ "description": "Rate limit reached",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error429"
- },
- "examples": {
- "Forbidden": {
- "summary": "Error 429",
- "value": {
- "detail": "The rate limit for this endpoint has been exceeded"
- }
- }
+ "$ref": "#/components/schemas/Datasets_HTTPErrorModel"
}
}
}
}
},
- "x-codeSamples": [
+ "x-original-tag": "search"
+ }
+ },
+ "/datasets/{dataset_id}/features/within/": {
+ "post": {
+ "tags": [
+ "Datasets API"
+ ],
+ "summary": "Within Features",
+ "description": "Search for features within geometry.\n\n**Rate limit**: `20/1s`\n\n",
+ "operationId": "within_features_datasets__dataset_id__features_within__post",
+ "security": [
{
- "lang": "curl",
- "label": "cURL",
- "source": "curl -L 'https://api.woosmap.com/address/autocomplete/json?input=Lond&components=country%3Agb&key=YOUR_PUBLIC_API_KEY' \\\n-H 'Referer: http://localhost'"
+ "Datasets_PublicAPIKey": []
},
{
- "lang": "javascript",
- "label": "JavaScript",
- "source": "const requestOptions = {\n method: \"GET\",\n redirect: \"follow\"\n};\n\nfetch(\"https://api.woosmap.com/address/autocomplete/json?input=Lond&components=country%3Agb&key=YOUR_PUBLIC_API_KEY\", requestOptions)\n .then((response) => response.text())\n .then((result) => console.log(result))\n .catch((error) => console.error(error));"
+ "Datasets_PrivateApiKey": []
},
{
- "lang": "python",
- "label": "Python",
- "source": "import requests\n\nurl = \"https://api.woosmap.com/address/autocomplete/json?input=Lond&components=country%3Agb&key=YOUR_PUBLIC_API_KEY\"\n\npayload = {}\nheaders = {\n 'Referer': 'http://localhost'\n}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
- }
- ]
- }
- },
- "/address/details/json": {
- "get": {
- "deprecated": true,
- "summary": "Details of an Address",
- "operationId": "addressDetails",
- "servers": [
- {
- "url": "https://api.woosmap.com"
+ "Datasets_PrivateApiKeyHeader": []
}
],
- "tags": [
- "Address API"
- ],
- "description": "Provides details of an address autocomplete suggestion (using the suggestion’s `public_id`).\n",
- "security": [
- {
- "Woosmap_Platform_API_Reference_PublicApiKeyAuth": [],
- "Woosmap_Platform_API_Reference_RefererHeader": []
- },
+ "parameters": [
{
- "Woosmap_Platform_API_Reference_PrivateApiKeyAuth": []
+ "name": "dataset_id",
+ "in": "path",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "format": "uuid",
+ "title": "Dataset Id"
+ }
},
{
- "Woosmap_Platform_API_Reference_PrivateApiKeyHeaderAuth": []
- }
- ],
- "parameters": [
- {
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_public_id-2"
+ "name": "format",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "enum": [
+ "geojson",
+ "wkb"
+ ],
+ "type": "string",
+ "default": "geojson",
+ "title": "Format"
+ }
},
{
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_fields-2"
+ "name": "per_page",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "type": "integer",
+ "maximum": 20,
+ "minimum": 1,
+ "description": "The maximum number of elements to return in a result page.",
+ "default": 10,
+ "title": "Per Page"
+ },
+ "description": "The maximum number of elements to return in a result page."
},
{
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_cc_format"
+ "name": "page",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "type": "integer",
+ "minimum": 1,
+ "description": "The result page to fetch.",
+ "default": 1,
+ "title": "Page"
+ },
+ "description": "The result page to fetch."
}
],
+ "requestBody": {
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_SearchRequestWithPolygonGeometry"
+ },
+ "examples": {
+ "polygon_geojson": {
+ "summary": "An with polygon geojson geometry, a 10 meters buffer and a where clause",
+ "value": {
+ "geometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ -10,
+ -10
+ ],
+ [
+ 10,
+ -10
+ ],
+ [
+ 10,
+ 10
+ ],
+ [
+ -10,
+ 10
+ ],
+ [
+ -10,
+ -10
+ ]
+ ]
+ ]
+ },
+ "buffer": 10,
+ "where": "cost:<500"
+ }
+ }
+ }
+ }
+ }
+ },
"responses": {
"200": {
- "description": "Details Address successfully retrieved",
+ "description": "Successful Response",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_AddressDetailsResponse"
- },
- "examples": {
- "default": {
- "summary": "Address Details for `London, England, United Kingdom`",
- "value": {
- "result": {
- "formatted_address": "London, England, United Kingdom",
- "types": [
- "locality"
- ],
- "public_id": "aGVyZTpjbTpuYW1lZHBsYWNlOjIwMzM3NDU0",
- "address_components": [
- {
- "types": [
- "country"
- ],
- "long_name": "United Kingdom",
- "short_name": "GBR"
- },
- {
- "types": [
- "state"
- ],
- "long_name": "England",
- "short_name": "England"
- },
- {
- "types": [
- "county"
- ],
- "long_name": "London",
- "short_name": "LDN"
- },
- {
- "long_name": "London",
- "short_name": "London",
- "types": [
- "locality"
- ]
- },
- {
- "long_name": "SW1A 2",
- "short_name": "SW1A 2",
- "types": [
- "postal_code"
- ]
- }
- ],
- "geometry": {
- "location_type": "GEOMETRIC_CENTER",
- "location": {
- "lat": 51.50643,
- "lng": -0.12719
- },
- "viewport": {
- "northeast": {
- "lat": 51.68629,
- "lng": 0.28206
- },
- "southwest": {
- "lat": 51.28043,
- "lng": -0.56316
- }
- }
- }
- },
- "status": "OK"
- }
- }
+ "$ref": "#/components/schemas/Datasets_SearchResultResponse"
}
}
}
},
"401": {
- "description": "Unauthorized. Incorrect authentication credentials.",
+ "description": "Unable to locate credentials.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error401"
- },
- "examples": {
- "Unauthorized": {
- "summary": "Error 401",
- "value": {
- "detail": "Incorrect authentication credentials. Please check or use a valid API Key"
- }
- }
+ "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
+ }
+ }
+ }
+ },
+ "402": {
+ "description": "Out of free quota.",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
}
}
}
},
"403": {
- "description": "Forbidden. This Woosmap API is not enabled for this project.",
+ "description": "Credentials found, but not matching.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error403"
- },
- "examples": {
- "Forbidden": {
- "summary": "Error 403",
- "value": {
- "detail": "This Woosmap API is not enabled for this project."
- }
- }
+ "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
}
}
}
},
- "429": {
- "description": "Too Many Requests. The rate limit for this endpoint has been exceeded.",
+ "404": {
+ "description": "Dataset was not found",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error429"
- },
- "examples": {
- "Forbidden": {
- "summary": "Error 429",
- "value": {
- "detail": "The rate limit for this endpoint has been exceeded"
- }
- }
+ "$ref": "#/components/schemas/Datasets_HTTPErrorModel"
}
}
}
- }
- },
- "x-codeSamples": [
- {
- "lang": "curl",
- "label": "cURL",
- "source": "curl -L 'https://api.woosmap.com/address/details/json?public_id=aGVyZTpjbTpuYW1lZHBsYWNlOjIwMzM3NDU0&key=YOUR_PUBLIC_API_KEY' \\\n-H 'Referer: http://localhost'"
},
- {
- "lang": "javascript",
- "label": "JavaScript",
- "source": "const requestOptions = {\n method: \"GET\",\n redirect: \"follow\"\n};\n\nfetch(\"https://api.woosmap.com/address/details/json?public_id=aGVyZTpjbTpuYW1lZHBsYWNlOjIwMzM3NDU0&key=YOUR_PUBLIC_API_KEY\", requestOptions)\n .then((response) => response.text())\n .then((result) => console.log(result))\n .catch((error) => console.error(error));"
+ "422": {
+ "description": "Validation Error",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_HTTPValidationError"
+ }
+ }
+ }
},
- {
- "lang": "python",
- "label": "Python",
- "source": "import requests\n\nurl = \"https://api.woosmap.com/address/details/json?public_id=aGVyZTpjbTpuYW1lZHBsYWNlOjIwMzM3NDU0&key=YOUR_PUBLIC_API_KEY\"\n\npayload = {}\nheaders = {\n 'Referer': 'http://localhost'\n}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
+ "429": {
+ "description": "Rate limit reached",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_HTTPErrorModel"
+ }
+ }
+ }
}
- ]
+ },
+ "x-original-tag": "search"
}
},
- "/address/geocode/json": {
+ "/datasets/{dataset_id}/features/{feature_id}": {
"get": {
- "deprecated": true,
- "summary": "Geocode an Address or Reverse Geocode a latlng",
- "operationId": "addressGeocode",
- "servers": [
- {
- "url": "https://api.woosmap.com"
- }
- ],
"tags": [
- "Address API"
+ "Datasets API"
],
- "description": "Provides details for an address or a geographic position. Either parameter `address` **or** `latlng` is required. Maximum of 25 queries per second (QPS)\n",
+ "summary": "Get Feature",
+ "description": "Gets a feature from its ID.\n\n**Rate limit**: `20/1s`",
+ "operationId": "get_feature_datasets__dataset_id__features__feature_id__get",
"security": [
{
- "Woosmap_Platform_API_Reference_PublicApiKeyAuth": [],
- "Woosmap_Platform_API_Reference_RefererHeader": []
+ "Datasets_PublicAPIKey": []
},
{
- "Woosmap_Platform_API_Reference_PrivateApiKeyAuth": []
+ "Datasets_PrivateApiKey": []
},
{
- "Woosmap_Platform_API_Reference_PrivateApiKeyHeaderAuth": []
+ "Datasets_PrivateApiKeyHeader": []
}
],
"parameters": [
{
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_address-2"
- },
- {
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_latlng-2"
- },
- {
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_address_components"
- },
- {
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_language-3"
+ "name": "dataset_id",
+ "in": "path",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "format": "uuid",
+ "title": "Dataset Id"
+ }
},
{
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_location-2"
+ "name": "feature_id",
+ "in": "path",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "format": "uuid",
+ "title": "Feature Id"
+ }
},
{
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_cc_format"
+ "name": "format",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "enum": [
+ "geojson",
+ "wkb"
+ ],
+ "type": "string",
+ "default": "geojson",
+ "title": "Format"
+ }
},
{
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_limit-3"
+ "name": "X-Field-Mask",
+ "in": "header",
+ "required": false,
+ "schema": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "title": "X-Field-Mask"
+ }
}
],
"responses": {
"200": {
- "description": "Request Address Geocode successful",
+ "description": "Successful Response",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_AddressGeocodeCollectionResponse"
- },
- "examples": {
- "default": {
- "summary": "Geocode Results for address `Place de la Resistance` with components `country:FR`",
- "value": {
- "results": [
- {
- "formatted_address": "Place de la Résistance, 75007 Paris, France",
- "types": [
- "address",
- "route"
- ],
- "address_components": [
- {
- "types": [
- "country"
- ],
- "long_name": "France",
- "short_name": "FRA"
- },
- {
- "types": [
- "state"
- ],
- "long_name": "Ile-de-France",
- "short_name": "IDF"
- },
- {
- "types": [
- "county"
- ],
- "long_name": "Paris",
- "short_name": "Paris"
- },
- {
- "long_name": "Paris",
- "short_name": "Paris",
- "types": [
- "locality"
- ]
- },
- {
- "long_name": "7th Arrondissement",
- "short_name": "7th Arrondissement",
- "types": [
- "district"
- ]
- },
- {
- "long_name": "Place de la Résistance",
- "short_name": "Place de la Résistance",
- "types": [
- "route"
- ]
- },
- {
- "long_name": "75007",
- "short_name": "75007",
- "types": [
- "postal_code"
- ]
- }
- ],
- "geometry": {
- "location_type": "GEOMETRIC_CENTER",
- "location": {
- "lat": 48.86213,
- "lng": 2.30152
- },
- "viewport": {
- "northeast": {
- "lat": 48.86231,
- "lng": 2.30541
- },
- "southwest": {
- "lat": 48.86191,
- "lng": 2.30147
- }
- }
- }
- }
- ],
- "status": "OK"
- }
- }
+ "$ref": "#/components/schemas/Datasets_FeatureRead"
}
}
}
},
"401": {
- "description": "Unauthorized. Incorrect authentication credentials.",
+ "description": "Unable to locate credentials.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error401"
- },
- "examples": {
- "Unauthorized": {
- "summary": "Error 401",
- "value": {
- "detail": "Incorrect authentication credentials. Please check or use a valid API Key"
- }
- }
+ "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
+ }
+ }
+ }
+ },
+ "402": {
+ "description": "Out of free quota.",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
}
}
}
},
"403": {
- "description": "Forbidden. This Woosmap API is not enabled for this project.",
+ "description": "Credentials found, but not matching.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error403"
- },
- "examples": {
- "Forbidden": {
- "summary": "Error 403",
- "value": {
- "detail": "This Woosmap API is not enabled for this project."
- }
- }
+ "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
+ }
+ }
+ }
+ },
+ "404": {
+ "description": "Feature or Dataset were not found",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_HTTPErrorModel"
+ }
+ }
+ }
+ },
+ "422": {
+ "description": "Validation Error",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Datasets_HTTPValidationError"
}
}
}
},
"429": {
- "description": "Too Many Requests. The rate limit for this endpoint has been exceeded.",
+ "description": "Rate limit reached",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error429"
- },
- "examples": {
- "Forbidden": {
- "summary": "Error 429",
- "value": {
- "detail": "The rate limit for this endpoint has been exceeded"
- }
- }
+ "$ref": "#/components/schemas/Datasets_HTTPErrorModel"
}
}
}
}
},
- "x-codeSamples": [
- {
- "lang": "curl",
- "label": "cURL",
- "source": "curl -L 'https://api.woosmap.com/address/geocode/json?address=Place%20de%20la%20Resistance%20Paris&components=country%3AFR&limit=5&key=YOUR_PUBLIC_API_KEY' \\\n-H 'Referer: http://localhost'"
- },
- {
- "lang": "javascript",
- "label": "JavaScript",
- "source": "const requestOptions = {\n method: \"GET\",\n redirect: \"follow\"\n};\n\nfetch(\"https://api.woosmap.com/address/geocode/json?address=Place%20de%20la%20Resistance%20Paris&components=country%3AFR&limit=5&key=YOUR_PUBLIC_API_KEY\", requestOptions)\n .then((response) => response.text())\n .then((result) => console.log(result))\n .catch((error) => console.error(error));"
- },
- {
- "lang": "python",
- "label": "Python",
- "source": "import requests\n\nurl = \"https://api.woosmap.com/address/geocode/json?address=Place%20de%20la%20Resistance%20Paris&components=country%3AFR&limit=5&key=YOUR_PUBLIC_API_KEY\"\n\npayload = {}\nheaders = {\n 'Referer': 'http://localhost'\n}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
- }
- ]
+ "x-original-tag": "features"
}
},
- "/zones": {
+ "/distance/route/json/": {
"get": {
- "summary": "List your Zones",
- "operationId": "listZones",
- "servers": [
- {
- "url": "https://api.woosmap.com"
- }
- ],
"tags": [
- "Zones API"
+ "Distance API"
],
- "description": "List all zones for the current project, sorted by `zone_id`.\n",
+ "summary": "Find Routes",
+ "description": "Get distance, duration and path (as a polyline) for a pair of origin and destination, based on the recommended route between those two points for a specified travel mode.\n\n**Rate limit**: `10/1s`\n\n**Rate limit with TRAFFIC**: `20/1s`",
+ "operationId": "route_distance_route_json__get",
"security": [
{
- "Woosmap_Platform_API_Reference_PrivateApiKeyAuth": []
- }
- ],
- "parameters": [
+ "Distance_PublicAPIKey": []
+ },
{
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_limit-4"
+ "Distance_PrivateApiKey": []
},
{
- "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_offset"
+ "Distance_PrivateApiKeyHeader": []
}
],
- "responses": {
- "200": {
- "description": "Zones successfully retrieved",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_ZonesCollectionResponse"
- },
- "examples": {
- "default": {
- "summary": "Zones data",
- "value": {
- "zones": [
- {
- "store_id": "STORE_ID_123456",
- "zone_id": "ZoneB",
- "polygon": "POLYGON ((-122.4546384 37.774656, -122.4515485 37.7595934, -122.4354306 37.7602172, -122.4333707 37.7512596, -122.423071 37.7511239, -122.4242726 37.7687665, -122.4259893 37.7691736, -122.4289075 37.7732444, -122.4306241 37.7850483, -122.4472753 37.7830133, -122.445902 37.7759581, -122.4546384 37.774656))",
- "types": [
- "delivery"
- ],
- "description": "Delivery Zone for Store B"
- },
- {
- "store_id": "STORE_ID_45678",
- "zone_id": "ZoneC",
- "polygon": "POLYGON ((-122.4758889 37.7524995, -122.4751594 37.7321718, -122.4688079 37.7299995, -122.4648597 37.7261979, -122.4519851 37.7228035, -122.4483802 37.7215815, -122.4458053 37.726741, -122.4365356 37.7310857, -122.4315574 37.7324433, -122.4246909 37.7312214, -122.4219444 37.731493, -122.423071 37.7511239, -122.4333707 37.7512596, -122.4354306 37.7602172, -122.4515485 37.7595934, -122.4528628 37.7582744, -122.4540375 37.7566755, -122.4565266 37.7513144, -122.4601315 37.7521288, -122.4618481 37.7514501, -122.4635648 37.7530788, -122.4758889 37.7524995))",
- "types": [
- "delivery"
- ],
- "description": "Delivery Zone for Store C"
- }
- ],
- "status": "ok"
- }
- }
- }
- }
- }
- },
- "401": {
- "description": "Unauthorized. Incorrect authentication credentials.",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error401"
- },
- "examples": {
- "Unauthorized": {
- "summary": "Error 401",
- "value": {
- "detail": "Incorrect authentication credentials. Please check or use a valid API Key"
- }
- }
- }
- }
- }
- },
- "403": {
- "description": "Forbidden. This Woosmap API is not enabled for this project.",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error403"
+ "parameters": [
+ {
+ "name": "waypoints",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "anyOf": [
+ {
+ "type": "string"
},
- "examples": {
- "Forbidden": {
- "summary": "Error 403",
- "value": {
- "detail": "This Woosmap API is not enabled for this project."
- }
- }
+ {
+ "type": "null"
}
- }
- }
+ ],
+ "description": "A list of points by which the route should pass (the route response is divided into legs, one leg corresponding to a route between two waypoints). Waypoints should be separated by | character. \n \nOptionally, you may pass 'optimize:true' as the first argument within the waypoints parameter. This way the provided route is optimized by rearranging the waypoints in a more efficient order based on distance or time according to the method parameter. The route start point and end point order is not changed, their position is considered fixed. \n \n`alternatives` and `waypoints` can not be used at the same time.",
+ "examples": [
+ "optimize:true|48.850077,3.311124|48.850077,3.411124",
+ "48.850077,3.311124|48.850077,3.411124"
+ ],
+ "title": "Waypoints"
+ },
+ "description": "A list of points by which the route should pass (the route response is divided into legs, one leg corresponding to a route between two waypoints). Waypoints should be separated by | character. \n \nOptionally, you may pass 'optimize:true' as the first argument within the waypoints parameter. This way the provided route is optimized by rearranging the waypoints in a more efficient order based on distance or time according to the method parameter. The route start point and end point order is not changed, their position is considered fixed. \n \n`alternatives` and `waypoints` can not be used at the same time."
},
- "429": {
- "description": "Too Many Requests. The rate limit for this endpoint has been exceeded.",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error429"
- },
- "examples": {
- "Forbidden": {
- "summary": "Error 429",
- "value": {
- "detail": "The rate limit for this endpoint has been exceeded"
- }
- }
- }
- }
- }
- }
- },
- "x-codeSamples": [
{
- "lang": "curl",
- "label": "cURL",
- "source": "curl -L 'https://api.woosmap.com/zones/?private_key=YOUR_PRIVATE_API_KEY&limit=2&offset=1'"
+ "name": "mode",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "enum": [
+ "driving",
+ "walking",
+ "cycling"
+ ],
+ "type": "string",
+ "description": "Specifies the mode of transport to use for the calculation.",
+ "default": "driving",
+ "title": "Mode"
+ },
+ "description": "Specifies the mode of transport to use for the calculation."
},
{
- "lang": "javascript",
- "label": "JavaScript",
- "source": "const requestOptions = {\n method: \"GET\",\n redirect: \"follow\"\n};\n\nfetch(\"https://api.woosmap.com/zones/?private_key=YOUR_PRIVATE_API_KEY&limit=2&offset=1\", requestOptions)\n .then((response) => response.text())\n .then((result) => console.log(result))\n .catch((error) => console.error(error));"
+ "name": "method",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "enum": [
+ "time",
+ "distance"
+ ],
+ "type": "string",
+ "description": "Specifies how to compute the route between the start point and the end point:\n* `time`: fastest route \n* `distance`: shortest route",
+ "default": "time",
+ "title": "Method"
+ },
+ "description": "Specifies how to compute the route between the start point and the end point:\n* `time`: fastest route \n* `distance`: shortest route"
},
{
- "lang": "python",
- "label": "Python",
- "source": "import requests\n\nurl = \"https://api.woosmap.com/zones/?private_key=YOUR_PRIVATE_API_KEY&limit=2&offset=1\"\n\npayload = {}\nheaders = {}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
- }
- ]
- },
- "post": {
- "summary": "Create your Zones",
- "operationId": "createZones",
- "servers": [
+ "name": "units",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "enum": [
+ "metric",
+ "imperial"
+ ],
+ "type": "string",
+ "description": "Specifies the unit system to use when displaying results.",
+ "default": "metric",
+ "title": "Units"
+ },
+ "description": "Specifies the unit system to use when displaying results."
+ },
{
- "url": "https://api.woosmap.com"
- }
- ],
- "tags": [
- "Zones API"
- ],
- "description": "Used to batch create Zones to a specific project identified with the `private_key` parameter.\n",
- "security": [
+ "name": "language",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "enum": [
+ "en",
+ "fr",
+ "ca",
+ "de",
+ "es",
+ "he",
+ "it",
+ "ja",
+ "nl",
+ "pl",
+ "pt",
+ "ro",
+ "ru",
+ "uk",
+ "zh"
+ ],
+ "type": "string",
+ "description": "The language code, indicating in the language the response should be in. \n \nIf not defined the header `Accept-Language` of the request will be checked before defaulting to `en`.",
+ "default": "en",
+ "title": "Language"
+ },
+ "description": "The language code, indicating in the language the response should be in. \n \nIf not defined the header `Accept-Language` of the request will be checked before defaulting to `en`."
+ },
{
- "Woosmap_Platform_API_Reference_PrivateApiKeyAuth": []
- }
- ],
- "requestBody": {
- "description": "The request body of Zones Creation must be formatted as JSON.",
- "required": true,
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_ZonesCollectionRequest"
- },
- "examples": {
- "default": {
- "summary": "Zones data as JSON",
- "value": {
- "zones": [
- {
- "zone_id": "ZoneA",
- "description": "Delivery Zone for Store A",
- "store_id": "STORE_ID_123456",
- "polygon": "POLYGON ((-122.496116 37.7648181,-122.4954079 37.751518,-122.4635648 37.7530788,-122.4618481 37.7514501,-122.4601315 37.7521288,-122.4565266 37.7513144,-122.4540375 37.7566755,-122.4528359 37.7583041,-122.4515485 37.7595934,-122.4546384 37.774656,-122.4718903 37.7731635,-122.472577 37.772485,-122.4755811 37.7725529,-122.4791001 37.7723493,-122.4793576 37.7713995,-122.4784993 37.769839,-122.4783276 37.7680071,-122.4774693 37.766718,-122.4772118 37.7652931,-122.496116 37.7648181))",
- "types": [
- "delivery"
- ]
- },
- {
- "zone_id": "ZoneB",
- "description": "Delivery Zone for Store B",
- "store_id": "STORE_ID_123456",
- "polygon": "POLYGON ((-122.4546384 37.774656,-122.4515485 37.7595934,-122.4354306 37.7602172,-122.4333707 37.7512596,-122.423071 37.7511239,-122.4242726 37.7687665,-122.4259893 37.7691736,-122.4289075 37.7732444,-122.4306241 37.7850483,-122.4472753 37.7830133,-122.445902 37.7759581,-122.4546384 37.774656))",
- "types": [
- "delivery"
- ]
- },
- {
- "zone_id": "ZoneC",
- "description": "Delivery Zone for Store C",
- "store_id": "STORE_ID_45678",
- "polygon": "POLYGON ((-122.4758889 37.7524995,-122.4751594 37.7321718,-122.4688079 37.7299995,-122.4648597 37.7261979,-122.4519851 37.7228035,-122.4483802 37.7215815,-122.4458053 37.726741,-122.4365356 37.7310857,-122.4315574 37.7324433,-122.4246909 37.7312214,-122.4219444 37.731493,-122.423071 37.7511239,-122.4333707 37.7512596,-122.4354306 37.7602172,-122.4515485 37.7595934,-122.4528628 37.7582744,-122.4540375 37.7566755,-122.4565266 37.7513144,-122.4601315 37.7521288,-122.4618481 37.7514501,-122.4635648 37.7530788,-122.4758889 37.7524995))",
- "types": [
- "delivery"
- ]
- }
- ]
- }
+ "name": "avoid",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
}
- }
+ ],
+ "description": "A list of features that you want to avoid. Valid values are `tolls`, `highways`, `ferries` or polygons coordinates whose vertex latlng are separated by a semicolon `;`. \n \nTo add multiple features, separate them with the pipe `|` character.",
+ "examples": [
+ "tolls",
+ "tolls|highways|43.3,3.4;42.1,3.5;41.4,3.6"
+ ],
+ "title": "Avoid"
+ },
+ "description": "A list of features that you want to avoid. Valid values are `tolls`, `highways`, `ferries` or polygons coordinates whose vertex latlng are separated by a semicolon `;`. \n \nTo add multiple features, separate them with the pipe `|` character."
+ },
+ {
+ "name": "arrival_time",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Specify your desired arrival time.\n\nBy using this parameter, Distance will calculate the duration with **traffic**. Valid values are a UNIX timestamp (e.g. `1600799173` for the date: `22/09/2020 20:26:13`) or `now`. \n\nUse either `arrival_time` or `departure_time`, not both.",
+ "examples": [
+ "1600799173",
+ "now"
+ ],
+ "title": "Arrival Time"
+ },
+ "description": "Specify your desired arrival time.\n\nBy using this parameter, Distance will calculate the duration with **traffic**. Valid values are a UNIX timestamp (e.g. `1600799173` for the date: `22/09/2020 20:26:13`) or `now`. \n\nUse either `arrival_time` or `departure_time`, not both."
+ },
+ {
+ "name": "departure_time",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Specify your desired departure time.\n\nBy using this parameter, Distance will calculate the duration with **traffic**. Valid values are a UNIX timestamp (e.g. `1600799173` for the date: `22/09/2020 20:26:13`) or `now`. \n\nUse either `arrival_time` or `departure_time`, not both.",
+ "examples": [
+ "1600799173",
+ "now"
+ ],
+ "title": "Departure Time"
+ },
+ "description": "Specify your desired departure time.\n\nBy using this parameter, Distance will calculate the duration with **traffic**. Valid values are a UNIX timestamp (e.g. `1600799173` for the date: `22/09/2020 20:26:13`) or `now`. \n\nUse either `arrival_time` or `departure_time`, not both."
+ },
+ {
+ "name": "origin",
+ "in": "query",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "description": "The starting point. It should be supplied in the form of `latitude,longitude` coordinates. Ensure that no space exists between the latitude and longitude values.",
+ "examples": [
+ "48.709,2.403"
+ ],
+ "title": "Origin"
+ },
+ "description": "The starting point. It should be supplied in the form of `latitude,longitude` coordinates. Ensure that no space exists between the latitude and longitude values."
+ },
+ {
+ "name": "destination",
+ "in": "query",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "description": "The ending point for the route. It should be supplied in the form of `latitude,longitude` coordinates. Ensure that no space exists between the latitude and longitude values.",
+ "examples": [
+ "48.768,2.338"
+ ],
+ "title": "Destination"
+ },
+ "description": "The ending point for the route. It should be supplied in the form of `latitude,longitude` coordinates. Ensure that no space exists between the latitude and longitude values."
+ },
+ {
+ "name": "alternatives",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "type": "boolean",
+ "description": "Specifies if alternative routes should be returned. Depending on the calculated route, alternatives may not be provided. `alternatives` and `waypoints` can not be used at the same time.",
+ "default": false,
+ "title": "Alternatives"
+ },
+ "description": "Specifies if alternative routes should be returned. Depending on the calculated route, alternatives may not be provided. `alternatives` and `waypoints` can not be used at the same time."
+ },
+ {
+ "name": "details",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "enum": [
+ "full",
+ "none"
+ ],
+ "type": "string",
+ "description": "Specifies if maneuver instructions should be returned (roadbook)",
+ "default": "none",
+ "title": "Details"
+ },
+ "description": "Specifies if maneuver instructions should be returned (roadbook)"
+ },
+ {
+ "name": "accept-language",
+ "in": "header",
+ "required": false,
+ "schema": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "title": "Accept-Language"
}
}
- },
+ ],
"responses": {
"200": {
- "description": "Zones successfully created",
+ "description": "Successful Response",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_SuccessZones"
- },
- "examples": {
- "default": {
- "summary": "Success response for Zones Created",
- "value": {
- "status": "ok",
- "message": "Zones successfully added."
- }
- }
+ "$ref": "#/components/schemas/Distance_RouteResponse"
}
}
}
},
- "400": {
- "description": "Invalid. The data is not a valid JSON.",
+ "401": {
+ "description": "Unable to locate credentials.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error400"
- },
- "examples": {
- "Invalid": {
- "summary": "Error 400",
- "value": {
- "status": "error",
- "value": "The request is invalid, the data is not a valid JSON."
- }
- }
+ "$ref": "#/components/schemas/Distance_AuthenticationErrorResponse"
}
}
}
},
- "401": {
- "description": "Unauthorized. Incorrect authentication credentials.",
+ "402": {
+ "description": "Out of free quota.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error401"
- },
- "examples": {
- "Unauthorized": {
- "summary": "Error 401",
- "value": {
- "detail": "Incorrect authentication credentials. Please check or use a valid API Key"
- }
- }
+ "$ref": "#/components/schemas/Distance_AuthenticationErrorResponse"
}
}
}
},
"403": {
- "description": "Forbidden. This Woosmap API is not enabled for this project.",
+ "description": "Credentials found, but not matching.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error403"
- },
- "examples": {
- "Forbidden": {
- "summary": "Error 403",
- "value": {
- "detail": "This Woosmap API is not enabled for this project."
- }
- }
+ "$ref": "#/components/schemas/Distance_AuthenticationErrorResponse"
}
}
}
- }
- },
- "x-codeSamples": [
- {
- "lang": "curl",
- "label": "cURL",
- "source": "curl -L 'https://api.woosmap.com/zones?private_key=YOUR_PRIVATE_API_KEY' \\\n-H 'content-type: application/json' \\\n-d '{\n \"zones\": [\n {\n \"zone_id\": \"ZoneA\",\n \"description\": \"Delivery Zone for Store A\",\n \"store_id\": \"STORE_ID_123456\",\n \"polygon\": \"POLYGON ((-122.496116 37.7648181,-122.4954079 37.751518,-122.4635648 37.7530788,-122.4618481 37.7514501,-122.4601315 37.7521288,-122.4565266 37.7513144,-122.4540375 37.7566755,-122.4528359 37.7583041,-122.4515485 37.7595934,-122.4546384 37.774656,-122.4718903 37.7731635,-122.472577 37.772485,-122.4755811 37.7725529,-122.4791001 37.7723493,-122.4793576 37.7713995,-122.4784993 37.769839,-122.4783276 37.7680071,-122.4774693 37.766718,-122.4772118 37.7652931,-122.496116 37.7648181))\",\n \"types\": [\n \"delivery\"\n ]\n },\n {\n \"zone_id\": \"ZoneB\",\n \"description\": \"Delivery Zone for Store B\",\n \"store_id\": \"STORE_ID_123456\",\n \"polygon\": \"POLYGON ((-122.4546384 37.774656,-122.4515485 37.7595934,-122.4354306 37.7602172,-122.4333707 37.7512596,-122.423071 37.7511239,-122.4242726 37.7687665,-122.4259893 37.7691736,-122.4289075 37.7732444,-122.4306241 37.7850483,-122.4472753 37.7830133,-122.445902 37.7759581,-122.4546384 37.774656))\",\n \"types\": [\n \"delivery\"\n ]\n },\n {\n \"zone_id\": \"ZoneC\",\n \"description\": \"Delivery Zone for Store C\",\n \"store_id\": \"STORE_ID_45678\",\n \"polygon\": \"POLYGON ((-122.4758889 37.7524995,-122.4751594 37.7321718,-122.4688079 37.7299995,-122.4648597 37.7261979,-122.4519851 37.7228035,-122.4483802 37.7215815,-122.4458053 37.726741,-122.4365356 37.7310857,-122.4315574 37.7324433,-122.4246909 37.7312214,-122.4219444 37.731493,-122.423071 37.7511239,-122.4333707 37.7512596,-122.4354306 37.7602172,-122.4515485 37.7595934,-122.4528628 37.7582744,-122.4540375 37.7566755,-122.4565266 37.7513144,-122.4601315 37.7521288,-122.4618481 37.7514501,-122.4635648 37.7530788,-122.4758889 37.7524995))\",\n \"types\": [\n \"delivery\"\n ]\n }\n ]\n}'"
},
- {
- "lang": "python",
- "label": "Python",
- "source": "import requests\nimport json\n\nurl = \"https://api.woosmap.com/zones?private_key=YOUR_PRIVATE_API_KEY\"\n\npayload = json.dumps({\n \"zones\": [\n {\n \"zone_id\": \"ZoneA\",\n \"description\": \"Delivery Zone for Store A\",\n \"store_id\": \"STORE_ID_123456\",\n \"polygon\": \"POLYGON ((-122.496116 37.7648181,-122.4954079 37.751518,-122.4635648 37.7530788,-122.4618481 37.7514501,-122.4601315 37.7521288,-122.4565266 37.7513144,-122.4540375 37.7566755,-122.4528359 37.7583041,-122.4515485 37.7595934,-122.4546384 37.774656,-122.4718903 37.7731635,-122.472577 37.772485,-122.4755811 37.7725529,-122.4791001 37.7723493,-122.4793576 37.7713995,-122.4784993 37.769839,-122.4783276 37.7680071,-122.4774693 37.766718,-122.4772118 37.7652931,-122.496116 37.7648181))\",\n \"types\": [\n \"delivery\"\n ]\n },\n {\n \"zone_id\": \"ZoneB\",\n \"description\": \"Delivery Zone for Store B\",\n \"store_id\": \"STORE_ID_123456\",\n \"polygon\": \"POLYGON ((-122.4546384 37.774656,-122.4515485 37.7595934,-122.4354306 37.7602172,-122.4333707 37.7512596,-122.423071 37.7511239,-122.4242726 37.7687665,-122.4259893 37.7691736,-122.4289075 37.7732444,-122.4306241 37.7850483,-122.4472753 37.7830133,-122.445902 37.7759581,-122.4546384 37.774656))\",\n \"types\": [\n \"delivery\"\n ]\n },\n {\n \"zone_id\": \"ZoneC\",\n \"description\": \"Delivery Zone for Store C\",\n \"store_id\": \"STORE_ID_45678\",\n \"polygon\": \"POLYGON ((-122.4758889 37.7524995,-122.4751594 37.7321718,-122.4688079 37.7299995,-122.4648597 37.7261979,-122.4519851 37.7228035,-122.4483802 37.7215815,-122.4458053 37.726741,-122.4365356 37.7310857,-122.4315574 37.7324433,-122.4246909 37.7312214,-122.4219444 37.731493,-122.423071 37.7511239,-122.4333707 37.7512596,-122.4354306 37.7602172,-122.4515485 37.7595934,-122.4528628 37.7582744,-122.4540375 37.7566755,-122.4565266 37.7513144,-122.4601315 37.7521288,-122.4618481 37.7514501,-122.4635648 37.7530788,-122.4758889 37.7524995))\",\n \"types\": [\n \"delivery\"\n ]\n }\n ]\n})\nheaders = {\n 'content-type': 'application/json'\n}\n\nresponse = requests.request(\"POST\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
+ "422": {
+ "description": "Validation Error",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Distance_HTTPValidationError"
+ }
+ }
+ }
},
- {
- "lang": "nodejs",
- "label": "NodeJS",
- "source": "const axios = require('axios');\nlet data = JSON.stringify({\n \"zones\": [\n {\n \"zone_id\": \"ZoneA\",\n \"description\": \"Delivery Zone for Store A\",\n \"store_id\": \"STORE_ID_123456\",\n \"polygon\": \"POLYGON ((-122.496116 37.7648181,-122.4954079 37.751518,-122.4635648 37.7530788,-122.4618481 37.7514501,-122.4601315 37.7521288,-122.4565266 37.7513144,-122.4540375 37.7566755,-122.4528359 37.7583041,-122.4515485 37.7595934,-122.4546384 37.774656,-122.4718903 37.7731635,-122.472577 37.772485,-122.4755811 37.7725529,-122.4791001 37.7723493,-122.4793576 37.7713995,-122.4784993 37.769839,-122.4783276 37.7680071,-122.4774693 37.766718,-122.4772118 37.7652931,-122.496116 37.7648181))\",\n \"types\": [\n \"delivery\"\n ]\n },\n {\n \"zone_id\": \"ZoneB\",\n \"description\": \"Delivery Zone for Store B\",\n \"store_id\": \"STORE_ID_123456\",\n \"polygon\": \"POLYGON ((-122.4546384 37.774656,-122.4515485 37.7595934,-122.4354306 37.7602172,-122.4333707 37.7512596,-122.423071 37.7511239,-122.4242726 37.7687665,-122.4259893 37.7691736,-122.4289075 37.7732444,-122.4306241 37.7850483,-122.4472753 37.7830133,-122.445902 37.7759581,-122.4546384 37.774656))\",\n \"types\": [\n \"delivery\"\n ]\n },\n {\n \"zone_id\": \"ZoneC\",\n \"description\": \"Delivery Zone for Store C\",\n \"store_id\": \"STORE_ID_45678\",\n \"polygon\": \"POLYGON ((-122.4758889 37.7524995,-122.4751594 37.7321718,-122.4688079 37.7299995,-122.4648597 37.7261979,-122.4519851 37.7228035,-122.4483802 37.7215815,-122.4458053 37.726741,-122.4365356 37.7310857,-122.4315574 37.7324433,-122.4246909 37.7312214,-122.4219444 37.731493,-122.423071 37.7511239,-122.4333707 37.7512596,-122.4354306 37.7602172,-122.4515485 37.7595934,-122.4528628 37.7582744,-122.4540375 37.7566755,-122.4565266 37.7513144,-122.4601315 37.7521288,-122.4618481 37.7514501,-122.4635648 37.7530788,-122.4758889 37.7524995))\",\n \"types\": [\n \"delivery\"\n ]\n }\n ]\n});\n\nlet config = {\n method: 'post',\n maxBodyLength: Infinity,\n url: 'https://api.woosmap.com/zones?private_key=YOUR_PRIVATE_API_KEY',\n headers: { \n 'content-type': 'application/json'\n },\n data : data\n};\n\naxios.request(config)\n.then((response) => {\n console.log(JSON.stringify(response.data));\n})\n.catch((error) => {\n console.log(error);\n});\n"
- }
- ]
- },
- "put": {
- "summary": "Update the Zones",
- "operationId": "updateZones",
- "servers": [
- {
- "url": "https://api.woosmap.com"
- }
- ],
- "tags": [
- "Zones API"
- ],
- "description": "Used to update zones in batch. `zone_id` must exists when using `PUT` method, if one zone does not exists, the batch will be refused.",
- "security": [
- {
- "Woosmap_Platform_API_Reference_PrivateApiKeyAuth": []
- }
- ],
- "requestBody": {
- "description": "The request body of Zones Update must be formatted as JSON.",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_ZonesCollectionRequest"
- },
- "examples": {
- "default": {
- "summary": "Zones data",
- "value": {
- "zones": [
- {
- "zone_id": "ZoneA",
- "description": "Delivery Zone for Store A",
- "store_id": "STORE_ID_123456",
- "polygon": "POLYGON ((-122.496116 37.7648181,-122.4954079 37.751518,-122.4635648 37.7530788,-122.4618481 37.7514501,-122.4601315 37.7521288,-122.4565266 37.7513144,-122.4540375 37.7566755,-122.4528359 37.7583041,-122.4515485 37.7595934,-122.4546384 37.774656,-122.4718903 37.7731635,-122.472577 37.772485,-122.4755811 37.7725529,-122.4791001 37.7723493,-122.4793576 37.7713995,-122.4784993 37.769839,-122.4783276 37.7680071,-122.4774693 37.766718,-122.4772118 37.7652931,-122.496116 37.7648181))",
- "types": [
- "delivery"
- ]
- },
- {
- "zone_id": "ZoneB",
- "description": "Delivery Zone for Store B",
- "store_id": "STORE_ID_123456",
- "polygon": "POLYGON ((-122.4546384 37.774656,-122.4515485 37.7595934,-122.4354306 37.7602172,-122.4333707 37.7512596,-122.423071 37.7511239,-122.4242726 37.7687665,-122.4259893 37.7691736,-122.4289075 37.7732444,-122.4306241 37.7850483,-122.4472753 37.7830133,-122.445902 37.7759581,-122.4546384 37.774656))",
- "types": [
- "delivery"
- ]
- },
- {
- "zone_id": "ZoneC",
- "description": "Delivery Zone for Store C",
- "store_id": "STORE_ID_45678",
- "polygon": "POLYGON ((-122.4758889 37.7524995,-122.4751594 37.7321718,-122.4688079 37.7299995,-122.4648597 37.7261979,-122.4519851 37.7228035,-122.4483802 37.7215815,-122.4458053 37.726741,-122.4365356 37.7310857,-122.4315574 37.7324433,-122.4246909 37.7312214,-122.4219444 37.731493,-122.423071 37.7511239,-122.4333707 37.7512596,-122.4354306 37.7602172,-122.4515485 37.7595934,-122.4528628 37.7582744,-122.4540375 37.7566755,-122.4565266 37.7513144,-122.4601315 37.7521288,-122.4618481 37.7514501,-122.4635648 37.7530788,-122.4758889 37.7524995))",
- "types": [
- "delivery"
- ]
- }
- ]
- }
- }
- }
- }
- }
- },
- "responses": {
- "200": {
- "description": "Zones successfully updated",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_SuccessZones"
- },
- "examples": {
- "default": {
- "summary": "Success response for Zones updated",
- "value": {
- "status": "ok",
- "message": "Zones successfully added."
- }
- }
- }
- }
- }
- },
- "400": {
- "description": "Invalid. The data is not a valid JSON.",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error400"
- },
- "examples": {
- "Invalid": {
- "summary": "Error 400",
- "value": {
- "status": "error",
- "value": "The request is invalid, the data is not a valid JSON."
- }
- }
- }
- }
- }
- },
- "401": {
- "description": "Unauthorized. Incorrect authentication credentials.",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error401"
- },
- "examples": {
- "Unauthorized": {
- "summary": "Error 401",
- "value": {
- "detail": "Incorrect authentication credentials. Please check or use a valid API Key"
- }
- }
- }
- }
- }
- },
- "403": {
- "description": "Forbidden. This Woosmap API is not enabled for this project.",
+ "429": {
+ "description": "Rate limit reached",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error403"
- },
- "examples": {
- "Forbidden": {
- "summary": "Error 403",
- "value": {
- "detail": "This Woosmap API is not enabled for this project."
- }
- }
+ "$ref": "#/components/schemas/Distance_HTTPErrorModel"
}
}
}
}
},
- "x-codeSamples": [
- {
- "lang": "curl",
- "label": "cURL",
- "source": "curl -L -X PUT 'https://api.woosmap.com/zones?private_key=YOUR_PRIVATE_API_KEY' \\\n-H 'content-type: application/json' \\\n-d '{\n \"zones\": [\n {\n \"zone_id\": \"ZoneA\",\n \"description\": \"Delivery Zone for Store A\",\n \"store_id\": \"STORE_ID_45678\",\n \"polygon\": \"POLYGON ((-122.496116 37.7648181,-122.4954079 37.751518,-122.4635648 37.7530788,-122.4618481 37.7514501,-122.4601315 37.7521288,-122.4565266 37.7513144,-122.4540375 37.7566755,-122.4528359 37.7583041,-122.4515485 37.7595934,-122.4546384 37.774656,-122.4718903 37.7731635,-122.472577 37.772485,-122.4755811 37.7725529,-122.4791001 37.7723493,-122.4793576 37.7713995,-122.4784993 37.769839,-122.4783276 37.7680071,-122.4774693 37.766718,-122.4772118 37.7652931,-122.496116 37.7648181))\",\n \"types\": [\n \"delivery\"\n ]\n }\n ]\n}'"
- },
- {
- "lang": "python",
- "label": "Python",
- "source": "import requests\nimport json\n\nurl = \"https://api.woosmap.com/zones?private_key=YOUR_PRIVATE_API_KEY\"\n\npayload = json.dumps({\n \"zones\": [\n {\n \"zone_id\": \"ZoneA\",\n \"description\": \"Delivery Zone for Store A\",\n \"store_id\": \"STORE_ID_45678\",\n \"polygon\": \"POLYGON ((-122.496116 37.7648181,-122.4954079 37.751518,-122.4635648 37.7530788,-122.4618481 37.7514501,-122.4601315 37.7521288,-122.4565266 37.7513144,-122.4540375 37.7566755,-122.4528359 37.7583041,-122.4515485 37.7595934,-122.4546384 37.774656,-122.4718903 37.7731635,-122.472577 37.772485,-122.4755811 37.7725529,-122.4791001 37.7723493,-122.4793576 37.7713995,-122.4784993 37.769839,-122.4783276 37.7680071,-122.4774693 37.766718,-122.4772118 37.7652931,-122.496116 37.7648181))\",\n \"types\": [\n \"delivery\"\n ]\n }\n ]\n})\nheaders = {\n 'content-type': 'application/json'\n}\n\nresponse = requests.request(\"PUT\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
- },
- {
- "lang": "nodejs",
- "label": "NodeJS",
- "source": "const axios = require('axios');\nlet data = JSON.stringify({\n \"zones\": [\n {\n \"zone_id\": \"ZoneA\",\n \"description\": \"Delivery Zone for Store A\",\n \"store_id\": \"STORE_ID_45678\",\n \"polygon\": \"POLYGON ((-122.496116 37.7648181,-122.4954079 37.751518,-122.4635648 37.7530788,-122.4618481 37.7514501,-122.4601315 37.7521288,-122.4565266 37.7513144,-122.4540375 37.7566755,-122.4528359 37.7583041,-122.4515485 37.7595934,-122.4546384 37.774656,-122.4718903 37.7731635,-122.472577 37.772485,-122.4755811 37.7725529,-122.4791001 37.7723493,-122.4793576 37.7713995,-122.4784993 37.769839,-122.4783276 37.7680071,-122.4774693 37.766718,-122.4772118 37.7652931,-122.496116 37.7648181))\",\n \"types\": [\n \"delivery\"\n ]\n }\n ]\n});\n\nlet config = {\n method: 'put',\n maxBodyLength: Infinity,\n url: 'https://api.woosmap.com/zones?private_key=YOUR_PRIVATE_API_KEY',\n headers: { \n 'content-type': 'application/json'\n },\n data : data\n};\n\naxios.request(config)\n.then((response) => {\n console.log(JSON.stringify(response.data));\n})\n.catch((error) => {\n console.log(error);\n});\n"
- }
- ]
- },
- "delete": {
- "summary": "Delete the Zones",
- "operationId": "deleteZones",
- "servers": [
- {
- "url": "https://api.woosmap.com"
- }
- ],
+ "x-original-tag": "route"
+ }
+ },
+ "/distance/distancematrix/json/": {
+ "get": {
"tags": [
- "Zones API"
+ "Distance API"
],
- "description": "Used to delete one or more Zones.",
+ "summary": "Calculate Matrix",
+ "description": "Get distances and durations for a matrix of origins and destinations, based on the recommended route between start and end points for a specified travel mode.\n\n**Rate limit**: `10 requests/1s` GET and POST\n\n**Elements limit**: `1000 elements/1s` GET and POST\n\n**Rate limit with TRAFFIC**: `10 requests/1s` GET and POST\n\n**Elements limit with TRAFFIC**: `1000 elements/1s`GET and POST",
+ "operationId": "matrix_distance_distancematrix_json__get",
"security": [
{
- "Woosmap_Platform_API_Reference_PrivateApiKeyAuth": []
- }
- ],
- "responses": {
- "200": {
- "description": "Zones successfully deleted",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_SuccessZones"
- },
- "examples": {
- "default": {
- "summary": "Success response for Zones deleted",
- "value": {
- "status": "ok",
- "message": "Zones deleted."
- }
- }
- }
- }
- }
- },
- "401": {
- "description": "Unauthorized. Incorrect authentication credentials.",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error401"
- },
- "examples": {
- "Unauthorized": {
- "summary": "Error 401",
- "value": {
- "detail": "Incorrect authentication credentials. Please check or use a valid API Key"
- }
- }
- }
- }
- }
- },
- "403": {
- "description": "Forbidden. This Woosmap API is not enabled for this project.",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error403"
- },
- "examples": {
- "Forbidden": {
- "summary": "Error 403",
- "value": {
- "detail": "This Woosmap API is not enabled for this project."
- }
- }
- }
- }
- }
- }
- },
- "x-codeSamples": [
- {
- "lang": "curl",
- "label": "cURL",
- "source": "curl -L -X DELETE 'https://api.woosmap.com/zones/?private_key=YOUR_PRIVATE_API_KEY'"
+ "Distance_PublicAPIKey": []
},
{
- "lang": "python",
- "label": "Python",
- "source": "import requests\n\nurl = \"https://api.woosmap.com/zones/?private_key=YOUR_PRIVATE_API_KEY\"\n\npayload = {}\nheaders = {}\n\nresponse = requests.request(\"DELETE\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
+ "Distance_PrivateApiKey": []
},
{
- "lang": "nodejs",
- "label": "NodeJS",
- "source": "const axios = require('axios');\n\nlet config = {\n method: 'delete',\n maxBodyLength: Infinity,\n url: 'https://api.woosmap.com/zones/?private_key=YOUR_PRIVATE_API_KEY',\n headers: { }\n};\n\naxios.request(config)\n.then((response) => {\n console.log(JSON.stringify(response.data));\n})\n.catch((error) => {\n console.log(error);\n});\n"
- }
- ]
- }
- },
- "/zones/{zone_id}": {
- "get": {
- "summary": "Get Zone from ID",
- "operationId": "getZone",
- "servers": [
- {
- "url": "https://api.woosmap.com"
- }
- ],
- "tags": [
- "Zones API"
- ],
- "description": "Used to retrieve a zone from his `zone_id`\n",
- "security": [
- {
- "Woosmap_Platform_API_Reference_PrivateApiKeyAuth": []
+ "Distance_PrivateApiKeyHeader": []
}
],
"parameters": [
{
- "in": "path",
- "name": "zone_id",
+ "name": "mode",
+ "in": "query",
+ "required": false,
"schema": {
- "type": "string"
+ "enum": [
+ "driving",
+ "walking",
+ "cycling"
+ ],
+ "type": "string",
+ "description": "Specifies the mode of transport to use for the calculation.",
+ "default": "driving",
+ "title": "Mode"
+ },
+ "description": "Specifies the mode of transport to use for the calculation."
+ },
+ {
+ "name": "method",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "enum": [
+ "time",
+ "distance"
+ ],
+ "type": "string",
+ "description": "Specifies how to compute the route between the start point and the end point:\n* `time`: fastest route \n* `distance`: shortest route",
+ "default": "time",
+ "title": "Method"
+ },
+ "description": "Specifies how to compute the route between the start point and the end point:\n* `time`: fastest route \n* `distance`: shortest route"
+ },
+ {
+ "name": "units",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "enum": [
+ "metric",
+ "imperial"
+ ],
+ "type": "string",
+ "description": "Specifies the unit system to use when displaying results.",
+ "default": "metric",
+ "title": "Units"
+ },
+ "description": "Specifies the unit system to use when displaying results."
+ },
+ {
+ "name": "language",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "enum": [
+ "en",
+ "fr",
+ "ca",
+ "de",
+ "es",
+ "he",
+ "it",
+ "ja",
+ "nl",
+ "pl",
+ "pt",
+ "ro",
+ "ru",
+ "uk",
+ "zh"
+ ],
+ "type": "string",
+ "description": "The language code, indicating in the language the response should be in. \n \nIf not defined the header `Accept-Language` of the request will be checked before defaulting to `en`.",
+ "default": "en",
+ "title": "Language"
+ },
+ "description": "The language code, indicating in the language the response should be in. \n \nIf not defined the header `Accept-Language` of the request will be checked before defaulting to `en`."
+ },
+ {
+ "name": "avoid",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "A list of features that you want to avoid. Valid values are `tolls`, `highways`, `ferries` or polygons coordinates whose vertex latlng are separated by a semicolon `;`. \n \nTo add multiple features, separate them with the pipe `|` character.",
+ "examples": [
+ "tolls",
+ "tolls|highways|43.3,3.4;42.1,3.5;41.4,3.6"
+ ],
+ "title": "Avoid"
},
+ "description": "A list of features that you want to avoid. Valid values are `tolls`, `highways`, `ferries` or polygons coordinates whose vertex latlng are separated by a semicolon `;`. \n \nTo add multiple features, separate them with the pipe `|` character."
+ },
+ {
+ "name": "origins",
+ "in": "query",
"required": true,
- "example": "ZoneA",
- "description": "ID of the zone to get"
+ "schema": {
+ "type": "string",
+ "description": "The starting points. You can supply one or more locations, in the form of `latitude,longitude` coordinates, separated by the pipe character `|`. Ensure that no space exists between the latitude and longitude values. \n \nIn order to reduce URL size, [encoded polylines](https://developers.google.com/maps/documentation/utilities/polylinealgorithm) are also supported using `enc::`",
+ "examples": [
+ "48.709,2.403|48.768,2.338",
+ "enc:_p~iF~ps|U_ulLnnqC_mqNvxq`@:"
+ ],
+ "title": "Origins"
+ },
+ "description": "The starting points. You can supply one or more locations, in the form of `latitude,longitude` coordinates, separated by the pipe character `|`. Ensure that no space exists between the latitude and longitude values. \n \nIn order to reduce URL size, [encoded polylines](https://developers.google.com/maps/documentation/utilities/polylinealgorithm) are also supported using `enc::`"
+ },
+ {
+ "name": "destinations",
+ "in": "query",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "description": "The ending points. You can supply one or more locations, in the form of `latitude,longitude` coordinates, separated by the pipe character `|`. Ensure that no space exists between the latitude and longitude values. \n \nIn order to reduce URL size, [encoded polylines](https://developers.google.com/maps/documentation/utilities/polylinealgorithm) are also supported using `enc::`",
+ "examples": [
+ "48.709,2.403|48.768,2.338",
+ "enc:_p~iF~ps|U_ulLnnqC_mqNvxq`@:"
+ ],
+ "title": "Destinations"
+ },
+ "description": "The ending points. You can supply one or more locations, in the form of `latitude,longitude` coordinates, separated by the pipe character `|`. Ensure that no space exists between the latitude and longitude values. \n \nIn order to reduce URL size, [encoded polylines](https://developers.google.com/maps/documentation/utilities/polylinealgorithm) are also supported using `enc::`"
+ },
+ {
+ "name": "arrival_time",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Specify your desired arrival time.\n\nBy using this parameter, Distance will calculate the duration with **traffic**. Valid values are a UNIX timestamp (e.g. `1600799173` for the date: `22/09/2020 20:26:13`) or `now`. \n\nUse either `arrival_time` or `departure_time`, not both.",
+ "examples": [
+ "1600799173",
+ "now"
+ ],
+ "title": "Arrival Time"
+ },
+ "description": "Specify your desired arrival time.\n\nBy using this parameter, Distance will calculate the duration with **traffic**. Valid values are a UNIX timestamp (e.g. `1600799173` for the date: `22/09/2020 20:26:13`) or `now`. \n\nUse either `arrival_time` or `departure_time`, not both."
+ },
+ {
+ "name": "departure_time",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Specify your desired departure time.\n\nBy using this parameter, Distance will calculate the duration with **traffic**. Valid values are a UNIX timestamp (e.g. `1600799173` for the date: `22/09/2020 20:26:13`) or `now`. \n\nUse either `arrival_time` or `departure_time`, not both.",
+ "examples": [
+ "1600799173",
+ "now"
+ ],
+ "title": "Departure Time"
+ },
+ "description": "Specify your desired departure time.\n\nBy using this parameter, Distance will calculate the duration with **traffic**. Valid values are a UNIX timestamp (e.g. `1600799173` for the date: `22/09/2020 20:26:13`) or `now`. \n\nUse either `arrival_time` or `departure_time`, not both."
+ },
+ {
+ "name": "elements",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "enum": [
+ "distance",
+ "duration",
+ "duration_distance"
+ ],
+ "type": "string",
+ "description": "Specifies element values that will be part of the API response (`distance` and/or `duration`).",
+ "default": "distance",
+ "title": "Elements"
+ },
+ "description": "Specifies element values that will be part of the API response (`distance` and/or `duration`)."
+ },
+ {
+ "name": "accept-language",
+ "in": "header",
+ "required": false,
+ "schema": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "title": "Accept-Language"
+ }
}
],
"responses": {
"200": {
- "description": "Zone successfully retrieved",
+ "description": "Successful Response",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Zone"
- },
- "examples": {
- "default": {
- "summary": "Get a zone from its zone_id",
- "value": {
- "store_id": "STORE_ID_123456",
- "zone_id": "ZoneA",
- "polygon": "POLYGON ((-122.496116 37.7648181, -122.4954079 37.751518, -122.4635648 37.7530788, -122.4618481 37.7514501, -122.4601315 37.7521288, -122.4565266 37.7513144, -122.4540375 37.7566755, -122.4528359 37.7583041, -122.4515485 37.7595934, -122.4546384 37.774656, -122.4718903 37.7731635, -122.472577 37.772485, -122.4755811 37.7725529, -122.4791001 37.7723493, -122.4793576 37.7713995, -122.4784993 37.769839, -122.4783276 37.7680071, -122.4774693 37.766718, -122.4772118 37.7652931, -122.496116 37.7648181))",
- "types": [
- "delivery"
- ],
- "description": "Delivery Zone for Store A",
- "status": "ok"
- }
- }
+ "$ref": "#/components/schemas/Distance_MatrixResponse"
}
}
}
},
"401": {
- "description": "Unauthorized. Incorrect authentication credentials.",
+ "description": "Unable to locate credentials.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error401"
- },
- "examples": {
- "Unauthorized": {
- "summary": "Error 401",
- "value": {
- "detail": "Incorrect authentication credentials. Please check or use a valid API Key"
- }
- }
+ "$ref": "#/components/schemas/Distance_AuthenticationErrorResponse"
+ }
+ }
+ }
+ },
+ "402": {
+ "description": "Out of free quota.",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Distance_AuthenticationErrorResponse"
}
}
}
},
"403": {
- "description": "Forbidden. This Woosmap API is not enabled for this project.",
+ "description": "Credentials found, but not matching.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error403"
- },
- "examples": {
- "Forbidden": {
- "summary": "Error 403",
- "value": {
- "detail": "This Woosmap API is not enabled for this project."
- }
- }
+ "$ref": "#/components/schemas/Distance_AuthenticationErrorResponse"
}
}
}
},
- "404": {
- "description": "Not Found - `zone_id` do not exist."
- }
- },
- "x-codeSamples": [
- {
- "lang": "curl",
- "label": "cURL",
- "source": "curl -L 'https://api.woosmap.com/zones/ZoneA/?private_key=YOUR_PRIVATE_API_KEY'"
- },
- {
- "lang": "javascript",
- "label": "JavaScript",
- "source": "const requestOptions = {\n method: \"GET\",\n redirect: \"follow\"\n};\n\nfetch(\"https://api.woosmap.com/zones/ZoneA/?private_key=YOUR_PRIVATE_API_KEY\", requestOptions)\n .then((response) => response.text())\n .then((result) => console.log(result))\n .catch((error) => console.error(error));"
+ "422": {
+ "description": "Validation Error",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Distance_HTTPValidationError"
+ }
+ }
+ }
},
- {
- "lang": "python",
- "label": "Python",
- "source": "import requests\n\nurl = \"https://api.woosmap.com/zones/ZoneA/?private_key=YOUR_PRIVATE_API_KEY\"\n\npayload = {}\nheaders = {}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
+ "429": {
+ "description": "Rate limit reached",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Distance_HTTPErrorModel"
+ }
+ }
+ }
}
- ]
+ },
+ "x-original-tag": "distancematrix"
},
- "delete": {
- "summary": "Delete Zone from ID",
- "operationId": "deleteZone",
- "servers": [
- {
- "url": "https://api.woosmap.com"
- }
- ],
+ "post": {
"tags": [
- "Zones API"
+ "Distance API"
],
- "description": "Used to delete one Zone. The `zone_id` is the id of the zone to delete. To delete several zones, use the comma as a separator.",
+ "summary": "Calculate Matrix",
+ "description": "Get distances and durations for a matrix of origins and destinations, based on the recommended route between start and end points for a specified travel mode.\n\n**Rate limit**: `10 requests/1s` GET and POST\n\n**Elements limit**: `1000 elements/1s` GET and POST\n\n**Rate limit with TRAFFIC**: `10 requests/1s` GET and POST\n\n**Elements limit with TRAFFIC**: `1000 elements/1s` GET and POST",
+ "operationId": "matrix_post_distance_distancematrix_json__post",
"security": [
{
- "Woosmap_Platform_API_Reference_PrivateApiKeyAuth": []
+ "Distance_PublicAPIKey": []
+ },
+ {
+ "Distance_PrivateApiKey": []
+ },
+ {
+ "Distance_PrivateApiKeyHeader": []
}
],
"parameters": [
{
- "in": "path",
- "name": "zone_id",
+ "name": "accept-language",
+ "in": "header",
+ "required": false,
"schema": {
- "type": "string"
- },
- "required": true,
- "example": "ZoneA",
- "description": "ID of the zone to delete"
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "title": "Accept-Language"
+ }
}
],
+ "requestBody": {
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Distance_MatrixRequest"
+ }
+ }
+ }
+ },
"responses": {
"200": {
- "description": "Zones successfully deleted",
+ "description": "Successful Response",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_SuccessZones"
- },
- "examples": {
- "default": {
- "summary": "Success response for Zones deleted",
- "value": {
- "status": "ok",
- "message": "Zone ZoneA deleted."
- }
- }
+ "$ref": "#/components/schemas/Distance_MatrixResponse"
}
}
}
},
"401": {
- "description": "Unauthorized. Incorrect authentication credentials.",
+ "description": "Unable to locate credentials.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error401"
- },
- "examples": {
- "Unauthorized": {
- "summary": "Error 401",
- "value": {
- "detail": "Incorrect authentication credentials. Please check or use a valid API Key"
- }
- }
+ "$ref": "#/components/schemas/Distance_AuthenticationErrorResponse"
+ }
+ }
+ }
+ },
+ "402": {
+ "description": "Out of free quota.",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Distance_AuthenticationErrorResponse"
}
}
}
},
"403": {
- "description": "Forbidden. This Woosmap API is not enabled for this project.",
+ "description": "Credentials found, but not matching.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error403"
- },
- "examples": {
- "Forbidden": {
- "summary": "Error 403",
- "value": {
- "detail": "This Woosmap API is not enabled for this project."
- }
- }
+ "$ref": "#/components/schemas/Distance_AuthenticationErrorResponse"
}
}
}
- }
- },
- "x-codeSamples": [
- {
- "lang": "curl",
- "label": "cURL",
- "source": "curl -L -X DELETE 'https://api.woosmap.com/zones/ZoneA/?private_key=YOUR_PRIVATE_API_KEY'"
},
- {
- "lang": "python",
- "label": "Python",
- "source": "import requests\n\nurl = \"https://api.woosmap.com/zones/ZoneA/?private_key=YOUR_PRIVATE_API_KEY\"\n\npayload={}\nheaders = {}\n\nresponse = requests.request(\"DELETE\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
+ "422": {
+ "description": "Validation Error",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Distance_HTTPValidationError"
+ }
+ }
+ }
},
- {
- "lang": "nodejs",
- "label": "NodeJS",
- "source": "var axios = require('axios');\n\nvar config = {\n method: 'delete',\n url: 'https://api.woosmap.com/zones/ZoneA/?private_key=YOUR_PRIVATE_API_KEY',\n headers: { }\n};\n\naxios(config)\n.then(function (response) {\n console.log(JSON.stringify(response.data));\n})\n.catch(function (error) {\n console.log(error);\n});\n"
+ "429": {
+ "description": "Rate limit reached",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Distance_HTTPErrorModel"
+ }
+ }
+ }
}
- ]
+ },
+ "x-original-tag": "distancematrix"
}
},
- "/maps/static": {
+ "/distance/isochrone/json/": {
"get": {
"tags": [
- "Static Map API"
+ "Distance API"
],
- "summary": "Get Static Map",
- "description": "Retrieve a static map\n\n**Rate limit**: `20/1s`",
- "operationId": "get_static_map_maps_static_get",
+ "summary": "Calculate Isochrone",
+ "description": "Find all destinations that can be reached in a specific amount of time or a maximum travel distance.\n\n**Rate limit**: `10/1s`",
+ "operationId": "isochrone_distance_isochrone_json__get",
"security": [
{
- "Maps_PublicAPIKey": []
+ "Distance_PublicAPIKey": []
},
{
- "Maps_PrivateApiKey": []
+ "Distance_PrivateApiKey": []
},
{
- "Maps_PrivateApiKeyHeader": []
+ "Distance_PrivateApiKeyHeader": []
}
],
"parameters": [
{
- "name": "language",
+ "name": "mode",
"in": "query",
"required": false,
"schema": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
+ "enum": [
+ "driving",
+ "walking",
+ "cycling"
],
- "title": "Language"
- }
+ "type": "string",
+ "description": "Specifies the mode of transport to use for the calculation.",
+ "default": "driving",
+ "title": "Mode"
+ },
+ "description": "Specifies the mode of transport to use for the calculation."
},
{
- "name": "lat",
+ "name": "method",
"in": "query",
- "required": true,
+ "required": false,
"schema": {
- "type": "number",
- "maximum": 90,
- "minimum": -90,
- "title": "Lat"
+ "enum": [
+ "time",
+ "distance"
+ ],
+ "type": "string",
+ "description": "Specifies how to compute the route between the start point and the end point:\n* `time`: fastest route \n* `distance`: shortest route",
+ "default": "time",
+ "title": "Method"
},
- "example": "43.6"
+ "description": "Specifies how to compute the route between the start point and the end point:\n* `time`: fastest route \n* `distance`: shortest route"
},
{
- "name": "lng",
+ "name": "units",
"in": "query",
- "required": true,
+ "required": false,
"schema": {
- "type": "number",
- "maximum": 180,
- "minimum": -180,
- "title": "Lng"
+ "enum": [
+ "metric",
+ "imperial"
+ ],
+ "type": "string",
+ "description": "Specifies the unit system to use when displaying results.",
+ "default": "metric",
+ "title": "Units"
},
- "example": "3.883"
+ "description": "Specifies the unit system to use when displaying results."
},
{
- "name": "zoom",
+ "name": "language",
"in": "query",
- "required": true,
+ "required": false,
"schema": {
- "type": "number",
- "maximum": 24,
- "minimum": 0,
- "description": "The zoom",
- "title": "Zoom"
- },
- "description": "The zoom",
- "example": 11
- },
- {
- "name": "width",
- "in": "query",
- "required": true,
- "schema": {
- "type": "integer",
- "maximum": 640,
- "minimum": 40,
- "title": "Width"
- },
- "example": 400
- },
- {
- "name": "height",
- "in": "query",
- "required": true,
- "schema": {
- "type": "integer",
- "maximum": 640,
- "minimum": 40,
- "title": "Height"
+ "enum": [
+ "en",
+ "fr",
+ "ca",
+ "de",
+ "es",
+ "he",
+ "it",
+ "ja",
+ "nl",
+ "pl",
+ "pt",
+ "ro",
+ "ru",
+ "uk",
+ "zh"
+ ],
+ "type": "string",
+ "description": "The language code, indicating in the language the response should be in. \n \nIf not defined the header `Accept-Language` of the request will be checked before defaulting to `en`.",
+ "default": "en",
+ "title": "Language"
},
- "example": 400
+ "description": "The language code, indicating in the language the response should be in. \n \nIf not defined the header `Accept-Language` of the request will be checked before defaulting to `en`."
},
{
- "name": "markers",
+ "name": "avoid",
"in": "query",
"required": false,
"schema": {
- "type": "array",
- "items": {
- "type": "string",
- "contentMediaType": "application/json",
- "contentSchema": {
- "$ref": "#/components/schemas/Maps_MarkerWithUrlOptions"
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
}
- },
- "description": "Adds a marker.\n \nThe images are by default are considered to be non retina images (pixel resolution=1)\n\nIf the image name contains @2x or the query parameter retina=yes are found in the marker url the image will be considered to be retina (pixel resolution=2).\n\n> Note: the image size in bytes cannot exceed 65535 bytes.\n \n ",
- "title": "Markers"
+ ],
+ "description": "A list of features that you want to avoid. Valid values are `tolls`, `highways`, `ferries` or polygons coordinates whose vertex latlng are separated by a semicolon `;`. \n \nTo add multiple features, separate them with the pipe `|` character.",
+ "examples": [
+ "tolls",
+ "tolls|highways|43.3,3.4;42.1,3.5;41.4,3.6"
+ ],
+ "title": "Avoid"
},
- "description": "Adds a marker.\n \nThe images are by default are considered to be non retina images (pixel resolution=1)\n\nIf the image name contains @2x or the query parameter retina=yes are found in the marker url the image will be considered to be retina (pixel resolution=2).\n\n> Note: the image size in bytes cannot exceed 65535 bytes.\n \n ",
- "example": "{\"lat\": 43.6, \"lng\": 3.883, \"url\": \"https://webapp.woosmap.com/img/geolocated_marker.png?retina=yes\"}"
+ "description": "A list of features that you want to avoid. Valid values are `tolls`, `highways`, `ferries` or polygons coordinates whose vertex latlng are separated by a semicolon `;`. \n \nTo add multiple features, separate them with the pipe `|` character."
},
{
- "name": "polylines",
+ "name": "origin",
"in": "query",
- "required": false,
+ "required": true,
"schema": {
- "type": "array",
- "items": {
- "type": "string",
- "contentMediaType": "application/json",
- "contentSchema": {
- "$ref": "#/components/schemas/Maps_PolylineOptions"
- }
- },
- "description": "Add a polyline.\n \n> Note: enc should be a google encoded polyline see [Google-encoded polyline](https://developers.google.com/maps/documentation/utilities/polylinealgorithm) for more information\n\n ",
- "title": "Polylines"
+ "type": "string",
+ "description": "The starting point. It should be supplied in the form of `latitude,longitude` coordinates. Ensure that no space exists between the latitude and longitude values.",
+ "examples": [
+ "48.709,2.403"
+ ],
+ "title": "Origin"
},
- "description": "Add a polyline.\n \n> Note: enc should be a google encoded polyline see [Google-encoded polyline](https://developers.google.com/maps/documentation/utilities/polylinealgorithm) for more information\n\n ",
- "example": "{\"enc\": \"ydjiG_}jVjn@cjAf`AycBnc@mqCp\\\\ewBrQmlBzrAeuCreBw_C\", \"color\": \"magenta\", \"weight\": 4}"
+ "description": "The starting point. It should be supplied in the form of `latitude,longitude` coordinates. Ensure that no space exists between the latitude and longitude values."
},
{
- "name": "polygons",
+ "name": "value",
"in": "query",
- "required": false,
+ "required": true,
"schema": {
- "type": "array",
- "items": {
- "type": "string",
- "contentMediaType": "application/json",
- "contentSchema": {
- "$ref": "#/components/schemas/Maps_PolygonOptions"
- }
- },
- "description": "Adds a polygon.\n \n> Note: shape should be a google encoded polyline see [Google-encoded polyline](https://developers.google.com/maps/documentation/utilities/polylinealgorithm) for more information\n ",
- "title": "Polygons"
+ "type": "number",
+ "maximum": 120,
+ "minimum": 0,
+ "description": "The value to use for the isochrone contour. \n\nIf you specified `time` for `method` this value should be number of minutes\n\nIf you specified `distance` for `method` this value should be distance in kilometers.",
+ "title": "Value"
},
- "description": "Adds a polygon.\n \n> Note: shape should be a google encoded polyline see [Google-encoded polyline](https://developers.google.com/maps/documentation/utilities/polylinealgorithm) for more information\n ",
- "example": "{\"shape\": \"ymgiGm|rV~uAtaB|dAefCqeBwuFu~@njC??\", \"fill_color\": \"rgba(255, 20, 147, 0.5)\", \"color\": \"rgba(199, 21, 133, 0.7)\"}"
+ "description": "The value to use for the isochrone contour. \n\nIf you specified `time` for `method` this value should be number of minutes\n\nIf you specified `distance` for `method` this value should be distance in kilometers."
},
{
- "name": "stylers",
- "in": "query",
+ "name": "accept-language",
+ "in": "header",
"required": false,
"schema": {
"anyOf": [
{
- "type": "string",
- "contentMediaType": "application/json",
- "contentSchema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/Maps_MapStyle"
- }
- }
+ "type": "string"
},
{
"type": "null"
}
],
- "title": "Stylers"
- },
- "example": "[{\"featureType\": \"points_of_interest.business\", \"stylers\":[{\"visibility\": \"off\"}]}]"
- },
- {
- "name": "retina",
- "in": "query",
- "required": false,
- "schema": {
- "type": "boolean",
- "default": false,
- "title": "Retina"
+ "title": "Accept-Language"
}
}
],
@@ -5387,10 +4661,9 @@
"200": {
"description": "Successful Response",
"content": {
- "image/webp": {
+ "application/json": {
"schema": {
- "type": "string",
- "format": "binary"
+ "$ref": "#/components/schemas/Distance_IsochroneResponse"
}
}
}
@@ -5400,7 +4673,7 @@
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Maps_AuthenticationErrorResponse"
+ "$ref": "#/components/schemas/Distance_AuthenticationErrorResponse"
}
}
}
@@ -5410,7 +4683,7 @@
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Maps_AuthenticationErrorResponse"
+ "$ref": "#/components/schemas/Distance_AuthenticationErrorResponse"
}
}
}
@@ -5420,7 +4693,7 @@
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Maps_AuthenticationErrorResponse"
+ "$ref": "#/components/schemas/Distance_AuthenticationErrorResponse"
}
}
}
@@ -5430,7 +4703,7 @@
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Maps_HTTPValidationError"
+ "$ref": "#/components/schemas/Distance_HTTPValidationError"
}
}
}
@@ -5440,92 +4713,67 @@
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Maps_HTTPErrorModel"
+ "$ref": "#/components/schemas/Distance_HTTPErrorModel"
}
}
}
}
- }
- }
- },
- "/what3words/convert-to-3wa": {
- "get": {
+ },
+ "x-original-tag": "isochrone"
+ },
+ "post": {
"tags": [
- "Woosmap for what3words API"
+ "Distance API"
],
- "summary": "Convert To What 3 Words",
- "description": "This function will convert a latitude and longitude to a 3 word address, in the language of your choice.\nIt also returns country, the bounds of the grid square,\na nearby place (such as a local town) and a link to the what3words map site.\n\n**Rate limit**: `20/1s`",
- "operationId": "convert_to_what_3_words_what3words_convert_to_3wa_get",
+ "summary": "Calculate Isochrone",
+ "description": "Find all destinations that can be reached in a specific amount of time or a maximum travel distance.\n\n**Rate limit**: `10/1s`",
+ "operationId": "isochrone_post_distance_isochrone_json__post",
"security": [
{
- "External-api-wrapper_what3words_PublicAPIKey": []
+ "Distance_PublicAPIKey": []
},
{
- "External-api-wrapper_what3words_PrivateApiKey": []
+ "Distance_PrivateApiKey": []
},
{
- "External-api-wrapper_what3words_PrivateApiKeyHeader": []
+ "Distance_PrivateApiKeyHeader": []
}
],
"parameters": [
{
- "name": "coordinates",
- "in": "query",
- "required": true,
- "schema": {
- "type": "string",
- "description": "Coordinates as a comma separated string of latitude and longitude",
- "examples": [
- "48.858304,2.294514"
- ],
- "title": "Coordinates"
- },
- "description": "Coordinates as a comma separated string of latitude and longitude"
- },
- {
- "name": "format",
- "in": "query",
+ "name": "accept-language",
+ "in": "header",
"required": false,
"schema": {
- "enum": [
- "json",
- "geojson"
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
],
- "type": "string",
- "description": "Return data format type; can be either json or geojson",
- "default": "json",
- "title": "Format"
- },
- "description": "Return data format type; can be either json or geojson"
- },
- {
- "name": "language",
- "in": "query",
- "required": false,
- "schema": {
- "type": "string",
- "description": "A supported address language as an ISO 639-1 2 letter code.",
- "default": "en",
- "title": "Language"
- },
- "description": "A supported address language as an ISO 639-1 2 letter code."
+ "title": "Accept-Language"
+ }
}
],
+ "requestBody": {
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Distance_IsochroneRequest"
+ }
+ }
+ }
+ },
"responses": {
"200": {
"description": "Successful Response",
"content": {
"application/json": {
"schema": {
- "anyOf": [
- {
- "$ref": "#/components/schemas/External-api-wrapper_what3words_JsonCoordinatesResponse"
- },
- {
- "$ref": "#/components/schemas/External-api-wrapper_what3words_GeoJsonCoordinatesResponse"
- }
- ],
- "title": "Response Convert To What 3 Words What3Words Convert To 3Wa Get"
+ "$ref": "#/components/schemas/Distance_IsochroneResponse"
}
}
}
@@ -5535,7 +4783,7 @@
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/External-api-wrapper_what3words_AuthenticationErrorResponse"
+ "$ref": "#/components/schemas/Distance_AuthenticationErrorResponse"
}
}
}
@@ -5545,7 +4793,7 @@
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/External-api-wrapper_what3words_AuthenticationErrorResponse"
+ "$ref": "#/components/schemas/Distance_AuthenticationErrorResponse"
}
}
}
@@ -5555,7 +4803,7 @@
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/External-api-wrapper_what3words_AuthenticationErrorResponse"
+ "$ref": "#/components/schemas/Distance_AuthenticationErrorResponse"
}
}
}
@@ -5565,7 +4813,7 @@
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/External-api-wrapper_what3words_HTTPValidationError"
+ "$ref": "#/components/schemas/Distance_HTTPValidationError"
}
}
}
@@ -5575,76 +4823,229 @@
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/External-api-wrapper_what3words_HTTPErrorModel"
+ "$ref": "#/components/schemas/Distance_HTTPErrorModel"
}
}
}
}
},
- "x-codeSamples": [
- {
- "lang": "curl",
- "label": "cURL",
- "source": "curl -L -X GET 'https://api.woosmap.com/what3words/convert-to-3wa?coordinates=48.858304,2.294514&key=YOUR_PUBLIC_API_KEY' \\\n-H 'Referer: http://localhost'"
- },
- {
- "lang": "python",
- "label": "Python",
- "source": "import requests\n\nurl = \"https://api.woosmap.com/what3words/convert-to-3wa?coordinates=48.858304,2.294514&key=YOUR_PUBLIC_API_KEY\"\n\npayload={}\nheaders = {\n 'Referer': 'http://localhost'\n}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
- },
- {
- "lang": "javascript",
- "label": "JavaScript",
- "source": "var requestOptions = {\n method: 'GET',\n redirect: 'follow'\n};\n\nfetch(\"https://api.woosmap.com/what3words/convert-to-3wa?coordinates=48.858304,2.294514&key=YOUR_PUBLIC_API_KEY\", requestOptions)\n .then(response => response.text())\n .then(result => console.log(result))\n .catch(error => console.log('error', error));"
- }
- ]
+ "x-original-tag": "isochrone"
}
},
- "/what3words/convert-to-address": {
+ "/distance/tolls/json/": {
"get": {
"tags": [
- "Woosmap for what3words API"
+ "Distance API"
],
- "summary": "Convert To Address",
- "description": "This function converts a 3 word address to a list of address.\nIt will return at most the 5 closest addresses to the what3words provided.\n\n**Rate limit**: `20/1s`",
- "operationId": "convert_to_address_what3words_convert_to_address_get",
+ "summary": "Find Tolls",
+ "description": "Get distance, duration and tolls for an origin,destination pair, based on the recommended route between those two points for a specified travel mode.\n\n**Rate limit**: `5/1s`",
+ "operationId": "tolls_distance_tolls_json__get",
"security": [
{
- "External-api-wrapper_what3words_PublicAPIKey": []
+ "Distance_PublicAPIKey": []
},
{
- "External-api-wrapper_what3words_PrivateApiKey": []
+ "Distance_PrivateApiKey": []
},
{
- "External-api-wrapper_what3words_PrivateApiKeyHeader": []
+ "Distance_PrivateApiKeyHeader": []
}
],
"parameters": [
{
- "name": "words",
+ "name": "arrival_time",
"in": "query",
- "required": true,
+ "required": false,
"schema": {
- "type": "string",
- "description": "A 3 word address as a string. It must be three words separated with dots or a japanese middle dot character (・). Words separated by spaces will be rejected. Optionally, the 3 word address can be prefixed with /// (which would be encoded as %2F%2F%2F)",
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Specify your desired arrival time.\n\nBy using this parameter, Distance will calculate the duration with **traffic**. Valid values are a UNIX timestamp (e.g. `1600799173` for the date: `22/09/2020 20:26:13`) or `now`. \n\nUse either `arrival_time` or `departure_time`, not both.",
"examples": [
- "couch.spotted.amended"
+ "1600799173",
+ "now"
],
- "title": "Words"
+ "title": "Arrival Time"
},
- "description": "A 3 word address as a string. It must be three words separated with dots or a japanese middle dot character (・). Words separated by spaces will be rejected. Optionally, the 3 word address can be prefixed with /// (which would be encoded as %2F%2F%2F)"
+ "description": "Specify your desired arrival time.\n\nBy using this parameter, Distance will calculate the duration with **traffic**. Valid values are a UNIX timestamp (e.g. `1600799173` for the date: `22/09/2020 20:26:13`) or `now`. \n\nUse either `arrival_time` or `departure_time`, not both."
+ },
+ {
+ "name": "departure_time",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Specify your desired departure time.\n\nBy using this parameter, Distance will calculate the duration with **traffic**. Valid values are a UNIX timestamp (e.g. `1600799173` for the date: `22/09/2020 20:26:13`) or `now`. \n\nUse either `arrival_time` or `departure_time`, not both.",
+ "examples": [
+ "1600799173",
+ "now"
+ ],
+ "title": "Departure Time"
+ },
+ "description": "Specify your desired departure time.\n\nBy using this parameter, Distance will calculate the duration with **traffic**. Valid values are a UNIX timestamp (e.g. `1600799173` for the date: `22/09/2020 20:26:13`) or `now`. \n\nUse either `arrival_time` or `departure_time`, not both."
+ },
+ {
+ "name": "waypoints",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "A list of points by which the route should pass (the route response is divided into legs, one leg corresponding to a route between two waypoints). Waypoints should be separated by | character. \n \nOptionally, you may pass 'optimize:true' as the first argument within the waypoints parameter. This way the provided route is optimized by rearranging the waypoints in a more efficient order based on distance or time according to the method parameter. The route start point and end point order is not changed, their position is considered fixed. \n \n`alternatives` and `waypoints` can not be used at the same time.",
+ "examples": [
+ "optimize:true|48.850077,3.311124|48.850077,3.411124",
+ "48.850077,3.311124|48.850077,3.411124"
+ ],
+ "title": "Waypoints"
+ },
+ "description": "A list of points by which the route should pass (the route response is divided into legs, one leg corresponding to a route between two waypoints). Waypoints should be separated by | character. \n \nOptionally, you may pass 'optimize:true' as the first argument within the waypoints parameter. This way the provided route is optimized by rearranging the waypoints in a more efficient order based on distance or time according to the method parameter. The route start point and end point order is not changed, their position is considered fixed. \n \n`alternatives` and `waypoints` can not be used at the same time."
+ },
+ {
+ "name": "mode",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "enum": [
+ "driving",
+ "walking",
+ "cycling",
+ "truck"
+ ],
+ "type": "string",
+ "default": "driving",
+ "title": "Mode"
+ }
+ },
+ {
+ "name": "method",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "enum": [
+ "time",
+ "distance"
+ ],
+ "type": "string",
+ "default": "time",
+ "title": "Method"
+ }
+ },
+ {
+ "name": "units",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "enum": [
+ "metric",
+ "imperial"
+ ],
+ "type": "string",
+ "default": "metric",
+ "title": "Units"
+ }
},
{
"name": "language",
"in": "query",
"required": false,
"schema": {
+ "enum": [
+ "en",
+ "fr",
+ "ca",
+ "de",
+ "es",
+ "he",
+ "it",
+ "ja",
+ "nl",
+ "pl",
+ "pt",
+ "ro",
+ "ru",
+ "uk",
+ "zh"
+ ],
"type": "string",
- "description": "A supported address language as an ISO 639-1 2 letter code.",
+ "description": "The language code, indicating in the language the response should be in. \n \nIf not defined the header `Accept-Language` of the request will be checked before defaulting to `en`.",
"default": "en",
"title": "Language"
},
- "description": "A supported address language as an ISO 639-1 2 letter code."
+ "description": "The language code, indicating in the language the response should be in. \n \nIf not defined the header `Accept-Language` of the request will be checked before defaulting to `en`."
+ },
+ {
+ "name": "origin",
+ "in": "query",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "description": "The starting point. It should be supplied in the form of `latitude,longitude` coordinates. Ensure that no space exists between the latitude and longitude values.",
+ "examples": [
+ "48.709,2.403"
+ ],
+ "title": "Origin"
+ },
+ "description": "The starting point. It should be supplied in the form of `latitude,longitude` coordinates. Ensure that no space exists between the latitude and longitude values."
+ },
+ {
+ "name": "destination",
+ "in": "query",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "description": "The ending point for the route. It should be supplied in the form of `latitude,longitude` coordinates. Ensure that no space exists between the latitude and longitude values.",
+ "examples": [
+ "48.768,2.338"
+ ],
+ "title": "Destination"
+ },
+ "description": "The ending point for the route. It should be supplied in the form of `latitude,longitude` coordinates. Ensure that no space exists between the latitude and longitude values."
+ },
+ {
+ "name": "alternatives",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "type": "boolean",
+ "description": "Specifies if alternative routes should be returned. Depending on the calculated route, alternatives may not be provided. `alternatives` and `waypoints` can not be used at the same time.",
+ "default": false,
+ "title": "Alternatives"
+ },
+ "description": "Specifies if alternative routes should be returned. Depending on the calculated route, alternatives may not be provided. `alternatives` and `waypoints` can not be used at the same time."
+ },
+ {
+ "name": "accept-language",
+ "in": "header",
+ "required": false,
+ "schema": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "title": "Accept-Language"
+ }
}
],
"responses": {
@@ -5653,7 +5054,7 @@
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/External-api-wrapper_what3words_LiteAddressResponse"
+ "$ref": "#/components/schemas/Distance_TollsResponse"
}
}
}
@@ -5663,7 +5064,7 @@
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/External-api-wrapper_what3words_AuthenticationErrorResponse"
+ "$ref": "#/components/schemas/Distance_AuthenticationErrorResponse"
}
}
}
@@ -5673,7 +5074,7 @@
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/External-api-wrapper_what3words_AuthenticationErrorResponse"
+ "$ref": "#/components/schemas/Distance_AuthenticationErrorResponse"
}
}
}
@@ -5683,7 +5084,7 @@
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/External-api-wrapper_what3words_AuthenticationErrorResponse"
+ "$ref": "#/components/schemas/Distance_AuthenticationErrorResponse"
}
}
}
@@ -5693,7 +5094,7 @@
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/External-api-wrapper_what3words_HTTPValidationError"
+ "$ref": "#/components/schemas/Distance_HTTPValidationError"
}
}
}
@@ -5703,279 +5104,135 @@
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/External-api-wrapper_what3words_HTTPErrorModel"
+ "$ref": "#/components/schemas/Distance_HTTPErrorModel"
}
}
}
}
},
- "x-codeSamples": [
- {
- "lang": "curl",
- "label": "cURL",
- "source": "curl -L -X GET 'https://api.woosmap.com/what3words/convert-to-address?words=couch.spotted.amended&key=YOUR_PUBLIC_API_KEY' \\\n-H 'Referer: http://localhost'"
- },
- {
- "lang": "python",
- "label": "Python",
- "source": "import requests\n\nurl = \"https://api.woosmap.com/what3words/convert-to-address?words=couch.spotted.amended&key=YOUR_PUBLIC_API_KEY\"\n\npayload={}\nheaders = {\n 'Referer': 'http://localhost'\n}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
- },
- {
- "lang": "javascript",
- "label": "JavaScript",
- "source": "var requestOptions = {\n method: 'GET',\n redirect: 'follow'\n};\n\nfetch(\"https://api.woosmap.com/what3words/convert-to-address?words=couch.spotted.amended&key=YOUR_PUBLIC_API_KEY\", requestOptions)\n .then(response => response.text())\n .then(result => console.log(result))\n .catch(error => console.log('error', error));"
- }
- ]
+ "x-original-tag": "tolls"
}
},
- "/what3words/autosuggest": {
+ "/geolocation/position": {
"get": {
+ "summary": "Geolocation from an IP address",
+ "operationId": "getGeolocationPosition",
+ "servers": [
+ {
+ "url": "https://api.woosmap.com"
+ }
+ ],
"tags": [
- "Woosmap for what3words API"
+ "Geolocation API"
],
- "summary": "Autosuggest",
- "description": "AutoSuggest can take a slightly incorrect 3 word address and suggest a list of valid 3 word addresses.\nIt has powerful features that can, for example, optionally limit results to a country or area,\nand prioritise results that are near the user.\n\n**Rate limit**: `20/1s`",
- "operationId": "autosuggest_what3words_autosuggest_get",
+ "description": "The `/position` returns JSON location of your users thanks to IP address of their devices.\n",
"security": [
{
- "External-api-wrapper_what3words_PublicAPIKey": []
+ "Woosmap_Platform_API_Reference_PublicApiKeyAuth": [],
+ "Woosmap_Platform_API_Reference_RefererHeader": []
},
{
- "External-api-wrapper_what3words_PrivateApiKey": []
+ "Woosmap_Platform_API_Reference_PrivateApiKeyAuth": []
},
{
- "External-api-wrapper_what3words_PrivateApiKeyHeader": []
+ "Woosmap_Platform_API_Reference_PrivateApiKeyHeaderAuth": []
}
],
"parameters": [
{
- "name": "input",
- "in": "query",
- "required": true,
- "schema": {
- "type": "string",
- "description": "The full or partial 3 word address to obtain suggestions for. At minimum this must be the first two complete words plus at least one character from the third word.",
- "examples": [
- "couch.spotted.a"
- ],
- "title": "Input"
- },
- "description": "The full or partial 3 word address to obtain suggestions for. At minimum this must be the first two complete words plus at least one character from the third word."
- },
- {
- "name": "focus",
- "in": "query",
- "required": false,
- "schema": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "This is a location, specified as latitude,longitude (often where the user making the query is). If specified, the results will be weighted to give preference to those near the focus.",
- "examples": [
- "48.861026,2.335853"
- ],
- "title": "Focus"
- },
- "description": "This is a location, specified as latitude,longitude (often where the user making the query is). If specified, the results will be weighted to give preference to those near the focus."
- },
- {
- "name": "clip-to-country",
- "in": "query",
- "required": false,
- "schema": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "Restricts AutoSuggest to only return results inside the countries specified by comma-separated list of ISO 3166-1 alpha-2 country codes.",
- "examples": [
- "FR"
- ],
- "title": "Clip-To-Country"
- },
- "description": "Restricts AutoSuggest to only return results inside the countries specified by comma-separated list of ISO 3166-1 alpha-2 country codes."
- },
- {
- "name": "clip-to-bounding-box",
- "in": "query",
- "required": false,
- "schema": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "Restrict AutoSuggest results to a bounding box, specified by coordinates.south_lat,west_lng,north_lat,east_lng, where: south_lat less than or equal to north_lat, west_lng less than or equal to east_lng.",
- "examples": [
- "48.624314,1.804429,49.058148,2.908555"
- ],
- "title": "Clip-To-Bounding-Box"
- },
- "description": "Restrict AutoSuggest results to a bounding box, specified by coordinates.south_lat,west_lng,north_lat,east_lng, where: south_lat less than or equal to north_lat, west_lng less than or equal to east_lng."
- },
- {
- "name": "clip-to-circle",
- "in": "query",
- "required": false,
- "schema": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "Restrict AutoSuggest results to a circle, specified by lat, lng, kilometres, where kilometres is the radius of the circle.",
- "examples": [
- "48.839701,2.291878,20"
- ],
- "title": "Clip-To-Circle"
- },
- "description": "Restrict AutoSuggest results to a circle, specified by lat, lng, kilometres, where kilometres is the radius of the circle."
- },
- {
- "name": "clip-to-polygon",
- "in": "query",
- "required": false,
- "schema": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "Restrict AutoSuggest results to a polygon, specified by a comma-separated list of lat, lng pairs. The polygon should be closed, i.e. the first element should be repeated as the last element; also the list should contain at least 4 pairs. The API is currently limited to accepting up to 25 pairs.",
- "examples": [
- "48.823547,2.199174,48.823547,2.199174,48.922216,2.328709,48.888626,2.473673,48.819279,2.445513,48.784865,2.330668,48.823547,2.199174"
- ],
- "title": "Clip-To-Polygon"
- },
- "description": "Restrict AutoSuggest results to a polygon, specified by a comma-separated list of lat, lng pairs. The polygon should be closed, i.e. the first element should be repeated as the last element; also the list should contain at least 4 pairs. The API is currently limited to accepting up to 25 pairs."
- },
- {
- "name": "input-type",
- "in": "query",
- "required": false,
- "schema": {
- "enum": [
- "text",
- "vocon-hybrid",
- "nmdp-asr",
- "generic-voice"
- ],
- "type": "string",
- "description": "For power users, used to specify voice input mode.",
- "default": "text",
- "title": "Input-Type"
- },
- "description": "For power users, used to specify voice input mode."
- },
- {
- "name": "prefer-land",
- "in": "query",
- "required": false,
- "schema": {
- "type": "boolean",
- "description": "Makes AutoSuggest prefer results on land to those in the sea.",
- "default": true,
- "title": "Prefer-Land"
- },
- "description": "Makes AutoSuggest prefer results on land to those in the sea."
- },
- {
- "name": "language",
- "in": "query",
- "required": false,
- "schema": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "For normal text input, specifies a fallback language, which will help guide AutoSuggest if the input is particularly messy. A supported address language as an ISO 639-1 2 letter code.",
- "examples": [
- "fr"
- ],
- "title": "Language"
- },
- "description": "For normal text input, specifies a fallback language, which will help guide AutoSuggest if the input is particularly messy. A supported address language as an ISO 639-1 2 letter code."
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_ip_address"
}
],
"responses": {
"200": {
- "description": "Successful Response",
+ "description": "Geolocation successfully retrieved",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/External-api-wrapper_what3words_AutoSuggestResponse"
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_GeolocationResponse"
+ },
+ "examples": {
+ "default": {
+ "summary": "Geolocation position for the IP `173.79.254.254`",
+ "value": {
+ "country_code": "US",
+ "country_name": "United States",
+ "continent": "North America",
+ "latitude": 38.719,
+ "longitude": -77.1067,
+ "viewport": {
+ "northeast": {
+ "lat": 38.763915764205976,
+ "lng": -77.0491321464058
+ },
+ "southwest": {
+ "lat": 38.674084235794034,
+ "lng": -77.16426785359421
+ }
+ },
+ "accuracy": 5,
+ "city": "Alexandria",
+ "region_state": "Virginia",
+ "postal_code": "22309",
+ "timezone": "America/New_York",
+ "raw_offset": -18000,
+ "dst_offset": 3600
+ }
+ }
}
}
}
},
"401": {
- "description": "Unable to locate credentials.",
+ "description": "Unauthorized. Incorrect authentication credentials.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/External-api-wrapper_what3words_AuthenticationErrorResponse"
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error401"
+ },
+ "examples": {
+ "Unauthorized": {
+ "summary": "Error 401",
+ "value": {
+ "detail": "Incorrect authentication credentials. Please check or use a valid API Key"
+ }
+ }
}
}
}
},
- "402": {
- "description": "Out of free quota.",
+ "403": {
+ "description": "Forbidden. This Woosmap API is not enabled for this project.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/External-api-wrapper_what3words_AuthenticationErrorResponse"
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error403"
+ },
+ "examples": {
+ "Forbidden": {
+ "summary": "Error 403",
+ "value": {
+ "detail": "This Woosmap API is not enabled for this project."
+ }
+ }
}
}
}
},
- "403": {
- "description": "Credentials found, but not matching.",
+ "429": {
+ "description": "Too Many Requests. The rate limit for this endpoint has been exceeded.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/External-api-wrapper_what3words_AuthenticationErrorResponse"
- }
- }
- }
- },
- "422": {
- "description": "Validation Error",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/External-api-wrapper_what3words_HTTPValidationError"
- }
- }
- }
- },
- "429": {
- "description": "Rate limit reached",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/External-api-wrapper_what3words_HTTPErrorModel"
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error429"
+ },
+ "examples": {
+ "Forbidden": {
+ "summary": "Error 429",
+ "value": {
+ "detail": "The rate limit for this endpoint has been exceeded"
+ }
+ }
}
}
}
@@ -5985,321 +5242,472 @@
{
"lang": "curl",
"label": "cURL",
- "source": "curl -L -X GET 'https://api.woosmap.com/what3words/autosuggest?input=couch.spotted.am&clip-to-country=fr&key=YOUR_PUBLIC_API_KEY' \\\n-H 'Referer: http://localhost'"
- },
- {
- "lang": "python",
- "label": "Python",
- "source": "import requests\n\nurl = \"https://api.woosmap.com/what3words/autosuggest?input=couch.spotted.am&clip-to-country=fr&key=YOUR_PUBLIC_API_KEY\"\n\npayload={}\nheaders = {\n 'Referer': 'http://localhost'\n}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
+ "source": "curl -L 'https://api.woosmap.com/geolocation/position?private_key=YOUR_PRIVATE_API_KEY&ip_address=173.79.254.254'"
},
{
"lang": "javascript",
"label": "JavaScript",
- "source": "var requestOptions = {\n method: 'GET',\n redirect: 'follow'\n};\n\nfetch(\"https://api.woosmap.com/what3words/autosuggest?input=couch.spotted.am&clip-to-country=fr&key=YOUR_PUBLIC_API_KEY\", requestOptions)\n .then(response => response.text())\n .then(result => console.log(result))\n .catch(error => console.log('error', error));"
+ "source": "const requestOptions = {\n method: \"GET\",\n redirect: \"follow\"\n};\n\nfetch(\"https://api.woosmap.com/geolocation/position?private_key=YOUR_PRIVATE_API_KEY&ip_address=173.79.254.254\", requestOptions)\n .then((response) => response.text())\n .then((result) => console.log(result))\n .catch((error) => console.error(error));"
+ },
+ {
+ "lang": "python",
+ "label": "Python",
+ "source": "import requests\n\nurl = \"https://api.woosmap.com/geolocation/position?private_key=YOUR_PRIVATE_API_KEY&ip_address=173.79.254.254\"\n\npayload = {}\nheaders = {}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
}
]
}
},
- "/indoor/venues/{venue_id}": {
+ "/geolocation/stores": {
"get": {
- "operationId": "api_routers_indoor_get_venue_by_key",
- "summary": "Get Venue By Key",
- "parameters": [
+ "summary": "Assets nearby a Geolocation",
+ "operationId": "getStoresFromGeolocationPosition",
+ "servers": [
{
- "in": "path",
- "name": "venue_id",
- "schema": {
- "description": "ID of the Venue to retrieve.",
- "title": "Venue Id",
- "type": "string"
- },
- "required": true,
- "description": "ID of the Venue to retrieve."
+ "url": "https://api.woosmap.com"
}
],
- "responses": {
- "200": {
- "description": "OK",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Indoor_API_VenueSchema"
- }
- }
- }
- },
- "401": {
- "description": "Unauthorized",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Indoor_API_ErrorResponseSchema"
- }
- }
- }
- },
- "402": {
- "description": "Payment Required",
- "content": {
- "application/json": {
- "schema": {
- "description": "A more detailed explanation on what went wrong.",
- "title": "Detail",
- "type": "string"
- }
- }
- }
- },
- "403": {
- "description": "Forbidden",
- "content": {
- "application/json": {
- "schema": {
- "description": "A more detailed explanation on what went wrong.",
- "title": "Detail",
- "type": "string"
- }
- }
- }
- },
- "422": {
- "description": "Unprocessable Entity",
- "content": {
- "application/json": {
- "schema": {
- "properties": {
- "detail": {
- "description": "The validation errors.",
- "items": {
- "additionalProperties": true,
- "type": "object"
- },
- "title": "Detail",
- "type": "array"
- },
- "context": {
- "additionalProperties": true,
- "description": "Context",
- "title": "Context",
- "type": "object"
- }
- },
- "required": [
- "detail",
- "context"
- ],
- "title": "ValidationErrorSchema",
- "type": "object"
- }
- }
- }
- }
- },
- "description": "Returns a Venue based on the ID given.\n\n**Rate limit**: `20/1s`",
"tags": [
- "Indoor API"
+ "Geolocation API"
],
+ "description": "Retrieve the stores nearby an ip location. Stores are returned only if a relevant ip location is found - for an accuracy of 20km or less.\n",
"security": [
{
- "Indoor_API_PrivateKeyAuth": []
+ "Woosmap_Platform_API_Reference_PublicApiKeyAuth": [],
+ "Woosmap_Platform_API_Reference_RefererHeader": []
},
{
- "Indoor_API_PrivateKeyHeaderAuth": []
+ "Woosmap_Platform_API_Reference_PrivateApiKeyAuth": []
},
{
- "Indoor_API_PublicKeyAuth": []
+ "Woosmap_Platform_API_Reference_PrivateApiKeyHeaderAuth": []
}
],
- "x-codeSamples": [
+ "parameters": [
{
- "lang": "curl",
- "label": "cURL",
- "source": "curl -L -X GET 'https://api.woosmap.com/indoor/venues/west_pal?key=YOUR_PUBLIC_API_KEY' \\\n-H 'Referer: http://localhost'"
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_ip_address"
},
{
- "lang": "python",
- "label": "Python",
- "source": "import requests\n\nurl = \"https://api.woosmap.com/indoor/venues/west_pal?key=YOUR_PUBLIC_API_KEY\"\n\npayload={}\nheaders = {\n 'Referer': 'http://localhost'\n}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_limit"
},
{
- "lang": "javascript",
- "label": "JavaScript",
- "source": "var requestOptions = {\n method: 'GET',\n redirect: 'follow'\n};\n\nfetch(\"https://api.woosmap.com/indoor/venues/west_pal?key=YOUR_PUBLIC_API_KEY\", requestOptions)\n .then(response => response.text())\n .then(result => console.log(result))\n .catch(error => console.log('error', error));"
- }
- ]
- }
- },
- "/indoor/venues": {
- "get": {
- "operationId": "api_routers_indoor_get_venues_by_key",
- "summary": "Get Venues By Key",
- "parameters": [
- {
- "in": "query",
- "name": "sort_by",
- "schema": {
- "allOf": [
- {
- "enum": [
- "created_at",
- "updated_at",
- "name"
- ],
- "title": "SortingInputSchema",
- "type": "string"
- }
- ],
- "description": "The order in which the venues should be retrieved"
- },
- "required": false,
- "description": "The order in which the venues should be retrieved"
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_query"
}
],
"responses": {
"200": {
- "description": "OK",
- "content": {
- "application/json": {
- "schema": {
- "items": {
- "$ref": "#/components/schemas/Indoor_API_VenueListSchema"
- },
- "title": "Response",
- "type": "array"
- }
- }
- }
- },
- "401": {
- "description": "Unauthorized",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Indoor_API_ErrorResponseSchema"
- }
- }
- }
- },
- "402": {
- "description": "Payment Required",
- "content": {
- "application/json": {
- "schema": {
- "description": "A more detailed explanation on what went wrong.",
- "title": "Detail",
- "type": "string"
- }
- }
- }
- },
- "403": {
- "description": "Forbidden",
- "content": {
- "application/json": {
- "schema": {
- "description": "A more detailed explanation on what went wrong.",
- "title": "Detail",
- "type": "string"
- }
- }
- }
- },
- "422": {
- "description": "Unprocessable Entity",
+ "description": "Geolocation and Stores successufully retrieved",
"content": {
"application/json": {
"schema": {
- "properties": {
- "detail": {
- "description": "The validation errors.",
- "items": {
- "additionalProperties": true,
- "type": "object"
- },
- "title": "Detail",
- "type": "array"
- },
- "context": {
- "additionalProperties": true,
- "description": "Context",
- "title": "Context",
- "type": "object"
- }
- },
- "required": [
- "detail",
- "context"
- ],
- "title": "ValidationErrorSchema",
- "type": "object"
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_GeolocationStoresResponse"
+ },
+ "examples": {
+ "default": {
+ "summary": "Geolocation Position and Stores for the IP `173.79.254.254`",
+ "value": {
+ "country_code": "US",
+ "country_name": "United States",
+ "continent": "North America",
+ "latitude": 38.719,
+ "longitude": -77.1067,
+ "viewport": {
+ "northeast": {
+ "lat": 38.763915764205976,
+ "lng": -77.0491321464058
+ },
+ "southwest": {
+ "lat": 38.674084235794034,
+ "lng": -77.16426785359421
+ }
+ },
+ "accuracy": 5,
+ "city": "Alexandria",
+ "region_state": "Virginia",
+ "postal_code": "22309",
+ "timezone": "America/New_York",
+ "raw_offset": -18000,
+ "dst_offset": 3600,
+ "stores": {
+ "type": "FeatureCollection",
+ "features": [
+ {
+ "type": "Feature",
+ "properties": {
+ "store_id": "STORE_ID_123456",
+ "name": "My Cool Store",
+ "contact": {
+ "email": "contact@woosmap.com",
+ "phone": "+44 20 7693 4000",
+ "website": "https://www.woosmap.com"
+ },
+ "address": {
+ "lines": [
+ "Building Centre",
+ "26 Store Street"
+ ],
+ "country_code": "UK",
+ "city": "London",
+ "zipcode": "WC1E 7BT"
+ },
+ "user_properties": {
+ "some_user_properties": "associated user value"
+ },
+ "tags": [
+ "wifi",
+ "covered_parking"
+ ],
+ "types": [
+ "drive",
+ "click_and_collect"
+ ],
+ "last_updated": "2025-09-16T08:49:42.523114+00:00",
+ "distance": 0,
+ "open": {
+ "open_now": true,
+ "open_hours": [
+ {
+ "end": "22:00",
+ "start": "08:30"
+ }
+ ],
+ "week_day": 2,
+ "current_slice": {
+ "end": "22:00",
+ "start": "08:30"
+ }
+ },
+ "weekly_opening": {
+ "1": {
+ "hours": [],
+ "isSpecial": false
+ },
+ "2": {
+ "hours": [
+ {
+ "end": "22:00",
+ "start": "08:30"
+ }
+ ],
+ "isSpecial": false
+ },
+ "3": {
+ "hours": [
+ {
+ "end": "22:00",
+ "start": "08:30"
+ }
+ ],
+ "isSpecial": false
+ },
+ "4": {
+ "hours": [
+ {
+ "end": "22:00",
+ "start": "08:30"
+ }
+ ],
+ "isSpecial": false
+ },
+ "5": {
+ "hours": [
+ {
+ "end": "22:00",
+ "start": "08:30"
+ }
+ ],
+ "isSpecial": false
+ },
+ "6": {
+ "hours": [
+ {
+ "end": "22:00",
+ "start": "08:30"
+ }
+ ],
+ "isSpecial": false
+ },
+ "7": {
+ "hours": [
+ {
+ "end": "22:00",
+ "start": "08:30"
+ }
+ ],
+ "isSpecial": false
+ },
+ "timezone": "Europe/London"
+ },
+ "opening_hours": {
+ "usual": {
+ "1": [],
+ "default": [
+ {
+ "end": "22:00",
+ "start": "08:30"
+ }
+ ]
+ },
+ "special": {
+ "2015-02-07": [
+ {
+ "end": "23:00",
+ "start": "08:00"
+ }
+ ]
+ },
+ "timezone": "Europe/London"
+ }
+ },
+ "geometry": {
+ "type": "Point",
+ "coordinates": [
+ -77.1067,
+ 38.719
+ ]
+ }
+ }
+ ],
+ "pagination": {
+ "page": 1,
+ "pageCount": 2
+ }
+ }
+ }
+ }
}
}
}
- }
- },
- "description": "Returns a list of Venues associated with the project of the key used to authenticate the request.\n\n**Rate limit**: `20/1s`",
- "tags": [
- "Indoor API"
- ],
- "security": [
- {
- "Indoor_API_PrivateKeyAuth": []
},
- {
- "Indoor_API_PrivateKeyHeaderAuth": []
+ "401": {
+ "description": "Unauthorized. Incorrect authentication credentials.",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error401"
+ },
+ "examples": {
+ "Unauthorized": {
+ "summary": "Error 401",
+ "value": {
+ "detail": "Incorrect authentication credentials. Please check or use a valid API Key"
+ }
+ }
+ }
+ }
+ }
},
- {
- "Indoor_API_PublicKeyAuth": []
+ "403": {
+ "description": "Forbidden. This Woosmap API is not enabled for this project.",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error403"
+ },
+ "examples": {
+ "Forbidden": {
+ "summary": "Error 403",
+ "value": {
+ "detail": "This Woosmap API is not enabled for this project."
+ }
+ }
+ }
+ }
+ }
+ },
+ "429": {
+ "description": "Too Many Requests. The rate limit for this endpoint has been exceeded.",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error429"
+ },
+ "examples": {
+ "Forbidden": {
+ "summary": "Error 429",
+ "value": {
+ "detail": "The rate limit for this endpoint has been exceeded"
+ }
+ }
+ }
+ }
+ }
}
- ],
+ },
"x-codeSamples": [
{
"lang": "curl",
"label": "cURL",
- "source": "curl -L -X GET 'https://api.woosmap.com/indoor/venues?key=YOUR_PUBLIC_API_KEY' \\\n-H 'Referer: http://localhost'"
- },
- {
- "lang": "python",
- "label": "Python",
- "source": "import requests\n\nurl = \"https://api.woosmap.com/indoor/venues?key=YOUR_PUBLIC_API_KEY\"\n\npayload={}\nheaders = {\n 'Referer': 'http://localhost'\n}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
+ "source": "curl -L 'https://api.woosmap.com/geolocation/stores?private_key=YOUR_PRIVATE_API_KEY&ip_address=173.79.254.254&limit=1'"
},
{
"lang": "javascript",
"label": "JavaScript",
- "source": "var requestOptions = {\n method: 'GET',\n redirect: 'follow'\n};\n\nfetch(\"https://api.woosmap.com/indoor/venues?key=YOUR_PUBLIC_API_KEY\", requestOptions)\n .then(response => response.text())\n .then(result => console.log(result))\n .catch(error => console.log('error', error));"
+ "source": "const requestOptions = {\n method: \"GET\",\n redirect: \"follow\"\n};\n\nfetch(\"https://api.woosmap.com/geolocation/stores?private_key=YOUR_PRIVATE_API_KEY&ip_address=173.79.254.254&limit=1\", requestOptions)\n .then((response) => response.text())\n .then((result) => console.log(result))\n .catch((error) => console.error(error));"
+ },
+ {
+ "lang": "python",
+ "label": "Python",
+ "source": "import requests\n\nurl = \"https://api.woosmap.com/geolocation/stores?private_key=YOUR_PRIVATE_API_KEY&ip_address=173.79.254.254&limit=1\"\n\npayload = {}\nheaders = {}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
}
]
}
},
- "/indoor/style": {
+ "/geolocation/timezone": {
"get": {
- "operationId": "api_routers_indoor_get_indoor_style",
- "summary": "Get Indoor Style",
+ "summary": "Timezone",
+ "operationId": "getTimezone",
+ "servers": [
+ {
+ "url": "https://api.woosmap.com"
+ }
+ ],
+ "tags": [
+ "Geolocation API"
+ ],
+ "description": "Returns timezone information based on the location, and optionally a timestamp for daylight saving time.\n> Note: rawOffset never contains the dst.\n",
+ "security": [
+ {
+ "Woosmap_Platform_API_Reference_PublicApiKeyAuth": [],
+ "Woosmap_Platform_API_Reference_RefererHeader": []
+ },
+ {
+ "Woosmap_Platform_API_Reference_PrivateApiKeyAuth": []
+ },
+ {
+ "Woosmap_Platform_API_Reference_PrivateApiKeyHeaderAuth": []
+ }
+ ],
"parameters": [
{
+ "description": "The location {lat},{lng}",
+ "name": "location",
"in": "query",
- "name": "theme",
"schema": {
- "description": "The theme to apply to customize the style",
- "example": "woosmap_default",
- "title": "Theme",
"type": "string"
},
- "required": false,
- "description": "The theme to apply to customize the style",
- "example": "woosmap_default"
+ "required": true
},
{
+ "description": "The UTC timestamp",
+ "name": "timestamp",
"in": "query",
- "name": "language",
"schema": {
- "default": "en",
- "description": "A supported language as an ISO 639-1 2 letter code.",
- "title": "Language",
+ "type": "integer",
+ "minimum": 0
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Timezone successfully retrieved",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_TimezoneResponse"
+ },
+ "examples": {
+ "default": {
+ "summary": "Timezone for 43.6, 3.883 location.",
+ "value": {
+ "timezone": "Europe/Paris",
+ "timezone_name": "CEST",
+ "raw_offset": 3600,
+ "dst_offset": 3600
+ }
+ }
+ }
+ }
+ }
+ },
+ "401": {
+ "description": "Unauthorized. Incorrect authentication credentials.",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error401"
+ },
+ "examples": {
+ "Unauthorized": {
+ "summary": "Error 401",
+ "value": {
+ "detail": "Incorrect authentication credentials. Please check or use a valid API Key"
+ }
+ }
+ }
+ }
+ }
+ },
+ "403": {
+ "description": "Forbidden. This Woosmap API is not enabled for this project.",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error403"
+ },
+ "examples": {
+ "Forbidden": {
+ "summary": "Error 403",
+ "value": {
+ "detail": "This Woosmap API is not enabled for this project."
+ }
+ }
+ }
+ }
+ }
+ },
+ "429": {
+ "description": "Too Many Requests. The rate limit for this endpoint has been exceeded.",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error429"
+ },
+ "examples": {
+ "Forbidden": {
+ "summary": "Error 429",
+ "value": {
+ "detail": "The rate limit for this endpoint has been exceeded"
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "x-codeSamples": [
+ {
+ "lang": "curl",
+ "label": "cURL",
+ "source": "curl -L 'https://api.woosmap.com/geolocation/timezone?private_key=YOUR_PRIVATE_API_KEY&location=43.6114130%2C3.8735291'"
+ },
+ {
+ "lang": "javascript",
+ "label": "JavaScript",
+ "source": "const requestOptions = {\n method: \"GET\",\n redirect: \"follow\"\n};\n\nfetch(\"https://api.woosmap.com/geolocation/timezone?private_key=YOUR_PRIVATE_API_KEY&location=43.6114130%2C3.8735291\", requestOptions)\n .then((response) => response.text())\n .then((result) => console.log(result))\n .catch((error) => console.error(error));"
+ },
+ {
+ "lang": "python",
+ "label": "Python",
+ "source": "import requests\n\nurl = \"https://api.woosmap.com/geolocation/timezone?private_key=YOUR_PRIVATE_API_KEY&location=43.6114130%2C3.8735291\"\n\npayload = {}\nheaders = {}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
+ }
+ ]
+ }
+ },
+ "/indoor/venues/{venue_id}": {
+ "get": {
+ "operationId": "api_routers_indoor_get_venue_by_key",
+ "summary": "Get Venue By Key",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "venue_id",
+ "schema": {
+ "description": "ID of the Venue to retrieve.",
+ "title": "Venue Id",
"type": "string"
},
- "required": false,
- "description": "A supported language as an ISO 639-1 2 letter code."
+ "required": true,
+ "description": "ID of the Venue to retrieve."
}
],
"responses": {
@@ -6308,9 +5716,7 @@
"content": {
"application/json": {
"schema": {
- "additionalProperties": true,
- "title": "Response",
- "type": "object"
+ "$ref": "#/components/schemas/Indoor_API_VenueSchema"
}
}
}
@@ -6382,7 +5788,7 @@
}
}
},
- "description": "Returns the style layers.\n\n**Rate limit**: `20/1s`",
+ "description": "Returns a Venue based on the ID given.\n\n**Rate limit**: `20/1s`",
"tags": [
"Indoor API"
],
@@ -6401,106 +5807,46 @@
{
"lang": "curl",
"label": "cURL",
- "source": "curl -L -X GET 'https://api.woosmap.com/indoor/style?language=en&theme=woosmap_default&key=YOUR_PUBLIC_API_KEY' \\\n-H 'Referer: http://localhost'"
+ "source": "curl -L -X GET 'https://api.woosmap.com/indoor/venues/west_pal?key=YOUR_PUBLIC_API_KEY' \\\n-H 'Referer: http://localhost'"
},
{
"lang": "python",
"label": "Python",
- "source": "import requests\n\nurl = \"https://api.woosmap.com/indoor/style?language=en&theme=woosmap_default&key=YOUR_PUBLIC_API_KEY\"\n\npayload={}\nheaders = {\n 'Referer': 'http://localhost'\n}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
+ "source": "import requests\n\nurl = \"https://api.woosmap.com/indoor/venues/west_pal?key=YOUR_PUBLIC_API_KEY\"\n\npayload={}\nheaders = {\n 'Referer': 'http://localhost'\n}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
},
{
"lang": "javascript",
"label": "JavaScript",
- "source": "var requestOptions = {\n method: 'GET',\n redirect: 'follow'\n};\n\nfetch(\"https://api.woosmap.com/indoor/style?language=en&theme=woosmap_default&key=YOUR_PUBLIC_API_KEY\", requestOptions)\n .then(response => response.text())\n .then(result => console.log(result))\n .catch(error => console.log('error', error));"
+ "source": "var requestOptions = {\n method: 'GET',\n redirect: 'follow'\n};\n\nfetch(\"https://api.woosmap.com/indoor/venues/west_pal?key=YOUR_PUBLIC_API_KEY\", requestOptions)\n .then(response => response.text())\n .then(result => console.log(result))\n .catch(error => console.log('error', error));"
}
- ]
+ ],
+ "x-original-tag": "Indoor API"
}
},
- "/indoor/distancematrix/{venue_id}": {
+ "/indoor/venues": {
"get": {
- "operationId": "api_routers_indoor_distance_matrix",
- "summary": "Distance Matrix",
+ "operationId": "api_routers_indoor_get_venues_by_key",
+ "summary": "Get Venues By Key",
"parameters": [
- {
- "in": "path",
- "name": "venue_id",
- "schema": {
- "description": "ID of the venue",
- "title": "Venue Id",
- "type": "string"
- },
- "required": true,
- "description": "ID of the venue"
- },
- {
- "in": "query",
- "name": "origins",
- "schema": {
- "description": "A string with a list of origins seperated by `|`. Origins can be of the format: `lat,lng,level`, `poi_id`, `ref:poi_ref`",
- "example": "1.2,2.1,1|exit_1|1.3,3.1,2|ref:main_exit",
- "title": "Origins",
- "type": "string"
- },
- "required": true,
- "description": "A string with a list of origins seperated by `|`. Origins can be of the format: `lat,lng,level`, `poi_id`, `ref:poi_ref`",
- "example": "1.2,2.1,1|exit_1|1.3,3.1,2|ref:main_exit"
- },
- {
- "in": "query",
- "name": "destinations",
- "schema": {
- "description": "A string with a list of destinations seperated by `|`. Destinations can be of the format: `lat,lng,level`, `poi_id`, `ref:poi_ref`",
- "example": "1.2,2.1,1|exit_1|1.3,3.1,2|ref:main_exit",
- "title": "Destinations",
- "type": "string"
- },
- "required": true,
- "description": "A string with a list of destinations seperated by `|`. Destinations can be of the format: `lat,lng,level`, `poi_id`, `ref:poi_ref`",
- "example": "1.2,2.1,1|exit_1|1.3,3.1,2|ref:main_exit"
- },
- {
- "in": "query",
- "name": "language",
- "schema": {
- "default": "en",
- "description": "A supported language as an ISO 639-1, 2 letter code.",
- "title": "Language",
- "type": "string"
- },
- "required": false,
- "description": "A supported language as an ISO 639-1, 2 letter code."
- },
- {
- "in": "query",
- "name": "routing_profile",
- "schema": {
- "default": "",
- "description": "The routing profile to use to calculate the path (depends on the modes which were used to digitize the venue)",
- "title": "Routing Profile",
- "type": "string"
- },
- "required": false,
- "description": "The routing profile to use to calculate the path (depends on the modes which were used to digitize the venue)"
- },
{
"in": "query",
- "name": "units",
+ "name": "sort_by",
"schema": {
"allOf": [
{
"enum": [
- "metric",
- "imperial"
+ "created_at",
+ "updated_at",
+ "name"
],
- "title": "UnitSystem",
+ "title": "SortingInputSchema",
"type": "string"
}
],
- "default": "metric",
- "description": "Unit System to use for response"
+ "description": "The order in which the venues should be retrieved"
},
"required": false,
- "description": "Unit System to use for response"
+ "description": "The order in which the venues should be retrieved"
}
],
"responses": {
@@ -6509,17 +5855,11 @@
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Indoor_API_DistanceMatrixCollection"
- }
- }
- }
- },
- "400": {
- "description": "Bad Request",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Indoor_API_ErrorResponseSchema"
+ "items": {
+ "$ref": "#/components/schemas/Indoor_API_VenueListSchema"
+ },
+ "title": "Response",
+ "type": "array"
}
}
}
@@ -6591,7 +5931,7 @@
}
}
},
- "description": "Get distances and durations for a matrix of origins and destinations, based on the recommended route between start and end points for a specified travel mode.\nThe API returns information consisting of rows containing distance and duration values for each pair of start and end point.\nThe returned distances are designed to be used to find and sort multiple assets by road distance.\nDuration values are provided as complementary info.\n\n**Rate limit**: `20/1s`",
+ "description": "Returns a list of Venues associated with the project of the key used to authenticate the request.\n\n**Rate limit**: `20/1s`",
"tags": [
"Indoor API"
],
@@ -6605,50 +5945,44 @@
{
"Indoor_API_PublicKeyAuth": []
}
- ]
- }
- },
- "/indoor/directions/{venue_id}": {
- "get": {
- "operationId": "api_routers_indoor_directions",
- "summary": "Directions",
- "parameters": [
+ ],
+ "x-codeSamples": [
{
- "in": "path",
- "name": "venue_id",
- "schema": {
- "description": "ID of the Venue",
- "title": "Venue Id",
- "type": "string"
- },
- "required": true,
- "description": "ID of the Venue"
+ "lang": "curl",
+ "label": "cURL",
+ "source": "curl -L -X GET 'https://api.woosmap.com/indoor/venues?key=YOUR_PUBLIC_API_KEY' \\\n-H 'Referer: http://localhost'"
},
{
- "in": "query",
- "name": "origin",
- "schema": {
- "description": "A string defining the origin of the route, in the format of `lat,lng,level`, `poi_id` (identifier of a POI), or `ref:poi_ref` (ref of a POI starting with 'ref:').\n\nExamples:\n- `lat,lng,level`: `48.8818546,2.3572283,0`\n- `poi`: `123456`\n- `ref`: `ref:entrance`",
- "example": "48.8818546,2.3572283,0",
- "title": "Origin",
- "type": "string"
- },
- "required": true,
- "description": "A string defining the origin of the route, in the format of `lat,lng,level`, `poi_id` (identifier of a POI), or `ref:poi_ref` (ref of a POI starting with 'ref:').\n\nExamples:\n- `lat,lng,level`: `48.8818546,2.3572283,0`\n- `poi`: `123456`\n- `ref`: `ref:entrance`",
- "example": "48.8818546,2.3572283,0"
+ "lang": "python",
+ "label": "Python",
+ "source": "import requests\n\nurl = \"https://api.woosmap.com/indoor/venues?key=YOUR_PUBLIC_API_KEY\"\n\npayload={}\nheaders = {\n 'Referer': 'http://localhost'\n}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
},
+ {
+ "lang": "javascript",
+ "label": "JavaScript",
+ "source": "var requestOptions = {\n method: 'GET',\n redirect: 'follow'\n};\n\nfetch(\"https://api.woosmap.com/indoor/venues?key=YOUR_PUBLIC_API_KEY\", requestOptions)\n .then(response => response.text())\n .then(result => console.log(result))\n .catch(error => console.log('error', error));"
+ }
+ ],
+ "x-original-tag": "Indoor API"
+ }
+ },
+ "/indoor/style": {
+ "get": {
+ "operationId": "api_routers_indoor_get_indoor_style",
+ "summary": "Get Indoor Style",
+ "parameters": [
{
"in": "query",
- "name": "destination",
+ "name": "theme",
"schema": {
- "description": "A string defining the destination of the route, in the format of `lat,lng,level`, `poi_id` (identifier of a POI), or `ref:poi_ref` (ref of a POI starting with 'ref:').\n\nExamples:\n- `lat,lng,level`: `48.8818546,2.3572283,0`\n- `poi`: `123456`\n- `ref`: `ref:entrance`",
- "example": "123456",
- "title": "Destination",
+ "description": "The theme to apply to customize the style",
+ "example": "woosmap_default",
+ "title": "Theme",
"type": "string"
},
- "required": true,
- "description": "A string defining the destination of the route, in the format of `lat,lng,level`, `poi_id` (identifier of a POI), or `ref:poi_ref` (ref of a POI starting with 'ref:').\n\nExamples:\n- `lat,lng,level`: `48.8818546,2.3572283,0`\n- `poi`: `123456`\n- `ref`: `ref:entrance`",
- "example": "123456"
+ "required": false,
+ "description": "The theme to apply to customize the style",
+ "example": "woosmap_default"
},
{
"in": "query",
@@ -6661,76 +5995,6 @@
},
"required": false,
"description": "A supported language as an ISO 639-1 2 letter code."
- },
- {
- "in": "query",
- "name": "units",
- "schema": {
- "allOf": [
- {
- "enum": [
- "metric",
- "imperial"
- ],
- "title": "UnitSystem",
- "type": "string"
- }
- ],
- "default": "metric",
- "description": "Unit System to use for response"
- },
- "required": false,
- "description": "Unit System to use for response"
- },
- {
- "in": "query",
- "name": "waypoints",
- "schema": {
- "default": "",
- "description": "A list of points by which the route should pass seperated by `|`. Waypoints can be of the format: `lat,lng,level`, `poi_id`, `ref:poi_ref`",
- "example": "48.8818546,2.3572283,0|123456|48.8818546,2.3572283,0|ref:main_exit",
- "title": "Waypoints",
- "type": "string"
- },
- "required": false,
- "description": "A list of points by which the route should pass seperated by `|`. Waypoints can be of the format: `lat,lng,level`, `poi_id`, `ref:poi_ref`",
- "example": "48.8818546,2.3572283,0|123456|48.8818546,2.3572283,0|ref:main_exit"
- },
- {
- "in": "query",
- "name": "optimize",
- "schema": {
- "default": false,
- "description": "If true and set with the waypoints parameter. The provided route is optimized by rearranging the waypoints in a more efficient order",
- "title": "Optimize",
- "type": "boolean"
- },
- "required": false,
- "description": "If true and set with the waypoints parameter. The provided route is optimized by rearranging the waypoints in a more efficient order"
- },
- {
- "in": "query",
- "name": "mode",
- "schema": {
- "description": "The mode to use to calculate the path (depends on the modes which were used to digitize the venue)",
- "title": "Mode",
- "type": "string"
- },
- "required": false,
- "description": "The mode to use to calculate the path (depends on the modes which were used to digitize the venue)"
- },
- {
- "in": "query",
- "name": "avoid_in",
- "schema": {
- "description": "A list of Bounding Boxes which the routing should avoid seperated by `|`. A Bounding Box has a format of `level;lat,lng;lat,lng;lat,lng;lat,lng;`",
- "example": "1;48.8818546,2.3572283;48.8818547,2.3572282;48.8818548,2.3572281;48.8818549,2.3572280",
- "title": "Avoid In",
- "type": "string"
- },
- "required": false,
- "description": "A list of Bounding Boxes which the routing should avoid seperated by `|`. A Bounding Box has a format of `level;lat,lng;lat,lng;lat,lng;lat,lng;`",
- "example": "1;48.8818546,2.3572283;48.8818547,2.3572282;48.8818548,2.3572281;48.8818549,2.3572280"
}
],
"responses": {
@@ -6739,17 +6003,9 @@
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Indoor_API_RouteCollection"
- }
- }
- }
- },
- "400": {
- "description": "Bad Request",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Indoor_API_ErrorResponseSchema"
+ "additionalProperties": true,
+ "title": "Response",
+ "type": "object"
}
}
}
@@ -6821,7 +6077,7 @@
}
}
},
- "description": "Returns the directions to go from an Origin to a Destination.\nRouting Configuration must be done before this endpoint will work.\n\n**Rate limit**: `20/1s`",
+ "description": "Returns the style layers.\n\n**Rate limit**: `20/1s`",
"tags": [
"Indoor API"
],
@@ -6840,179 +6096,107 @@
{
"lang": "curl",
"label": "cURL",
- "source": "curl -L -X GET 'https://api.woosmap.com/indoor/directions/west_pal?language=en&units=metric&origin=3623024&destination=3625106&key=YOUR_PUBLIC_API_KEY' \\\n-H 'Referer: http://localhost'"
+ "source": "curl -L -X GET 'https://api.woosmap.com/indoor/style?language=en&theme=woosmap_default&key=YOUR_PUBLIC_API_KEY' \\\n-H 'Referer: http://localhost'"
},
{
"lang": "python",
"label": "Python",
- "source": "import requests\n\nurl = \"https://api.woosmap.com/indoor/directions/west_pal?language=en&units=metric&origin=3623024&destination=3625106&key=YOUR_PUBLIC_API_KEY\"\n\npayload={}\nheaders = {\n 'Referer': 'http://localhost'\n}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
+ "source": "import requests\n\nurl = \"https://api.woosmap.com/indoor/style?language=en&theme=woosmap_default&key=YOUR_PUBLIC_API_KEY\"\n\npayload={}\nheaders = {\n 'Referer': 'http://localhost'\n}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
},
{
"lang": "javascript",
"label": "JavaScript",
- "source": "var requestOptions = {\n method: 'GET',\n redirect: 'follow'\n};\n\nfetch(\"https://api.woosmap.com/indoor/directions/west_pal?language=en&units=metric&origin=3623024&destination=3625106&key=YOUR_PUBLIC_API_KEY\", requestOptions)\n .then(response => response.text())\n .then(result => console.log(result))\n .catch(error => console.log('error', error));"
+ "source": "var requestOptions = {\n method: 'GET',\n redirect: 'follow'\n};\n\nfetch(\"https://api.woosmap.com/indoor/style?language=en&theme=woosmap_default&key=YOUR_PUBLIC_API_KEY\", requestOptions)\n .then(response => response.text())\n .then(result => console.log(result))\n .catch(error => console.log('error', error));"
}
- ]
+ ],
+ "x-original-tag": "Indoor API"
}
},
- "/indoor/venues/{venue_id}/pois/search": {
+ "/indoor/distancematrix/{venue_id}": {
"get": {
- "operationId": "api_routers_indoor_search_venue_pois_by_key",
- "summary": "Search Venue Pois By Key",
+ "operationId": "api_routers_indoor_distance_matrix",
+ "summary": "Distance Matrix",
"parameters": [
{
"in": "path",
"name": "venue_id",
"schema": {
- "description": "ID of the Venue",
+ "description": "ID of the venue",
"title": "Venue Id",
"type": "string"
},
"required": true,
- "description": "ID of the Venue"
- },
- {
- "in": "query",
- "name": "items_by_page",
- "schema": {
- "default": 0,
- "description": "Number of items per page. A value of 0 means no pagination.",
- "title": "Items By Page",
- "type": "integer"
- },
- "required": false,
- "description": "Number of items per page. A value of 0 means no pagination."
+ "description": "ID of the venue"
},
{
"in": "query",
- "name": "page",
+ "name": "origins",
"schema": {
- "default": 0,
- "description": "Page number. 0 being the first page.",
- "title": "Page",
- "type": "integer"
+ "description": "A string with a list of origins seperated by `|`. Origins can be of the format: `lat,lng,level`, `poi_id`, `ref:poi_ref`",
+ "example": "1.2,2.1,1|exit_1|1.3,3.1,2|ref:main_exit",
+ "title": "Origins",
+ "type": "string"
},
- "required": false,
- "description": "Page number. 0 being the first page."
+ "required": true,
+ "description": "A string with a list of origins seperated by `|`. Origins can be of the format: `lat,lng,level`, `poi_id`, `ref:poi_ref`",
+ "example": "1.2,2.1,1|exit_1|1.3,3.1,2|ref:main_exit"
},
{
"in": "query",
- "name": "from_location",
+ "name": "destinations",
"schema": {
- "description": "A string with the format lat,lng,level",
- "example": "48.8818546,2.3572283,0",
- "title": "From Location",
+ "description": "A string with a list of destinations seperated by `|`. Destinations can be of the format: `lat,lng,level`, `poi_id`, `ref:poi_ref`",
+ "example": "1.2,2.1,1|exit_1|1.3,3.1,2|ref:main_exit",
+ "title": "Destinations",
"type": "string"
},
- "required": false,
- "description": "A string with the format lat,lng,level",
- "example": "48.8818546,2.3572283,0"
+ "required": true,
+ "description": "A string with a list of destinations seperated by `|`. Destinations can be of the format: `lat,lng,level`, `poi_id`, `ref:poi_ref`",
+ "example": "1.2,2.1,1|exit_1|1.3,3.1,2|ref:main_exit"
},
{
"in": "query",
- "name": "q",
+ "name": "language",
"schema": {
- "description": "Search string. If not passed then all features will be listed alphabetically",
- "title": "Q",
+ "default": "en",
+ "description": "A supported language as an ISO 639-1, 2 letter code.",
+ "title": "Language",
"type": "string"
},
"required": false,
- "description": "Search string. If not passed then all features will be listed alphabetically"
+ "description": "A supported language as an ISO 639-1, 2 letter code."
},
{
"in": "query",
- "name": "extended",
+ "name": "routing_profile",
"schema": {
- "description": "Option to search even not searchable pois (extended=full)",
- "example": "full",
- "title": "Extended",
+ "default": "",
+ "description": "The routing profile to use to calculate the path (depends on the modes which were used to digitize the venue)",
+ "title": "Routing Profile",
"type": "string"
},
"required": false,
- "description": "Option to search even not searchable pois (extended=full)",
- "example": "full"
+ "description": "The routing profile to use to calculate the path (depends on the modes which were used to digitize the venue)"
},
{
"in": "query",
- "name": "level",
+ "name": "units",
"schema": {
- "description": "Filter by level.",
- "title": "Level",
- "type": "integer"
- },
- "required": false,
- "description": "Filter by level."
- },
- {
- "in": "query",
- "name": "building",
- "schema": {
- "description": "Filter by building (use `undefined` to find POIs not associated with a building.).",
- "title": "Building",
- "type": "string"
- },
- "required": false,
- "description": "Filter by building (use `undefined` to find POIs not associated with a building.)."
- },
- {
- "in": "query",
- "name": "category",
- "schema": {
- "description": "Filter by category.",
- "title": "Category",
- "type": "string"
- },
- "required": false,
- "description": "Filter by category."
- },
- {
- "in": "query",
- "name": "ref",
- "schema": {
- "description": "Filter by a comma seperated list of POI Refs.",
- "example": "ref:main_entrance,ref:side_entrance",
- "title": "Ref",
- "type": "string"
- },
- "required": false,
- "description": "Filter by a comma seperated list of POI Refs.",
- "example": "ref:main_entrance,ref:side_entrance"
- },
- {
- "in": "query",
- "name": "language",
- "schema": {
- "default": "en",
- "description": "A supported language as an ISO 639-1 2 letter code.",
- "title": "Language",
- "type": "string"
- },
- "required": false,
- "description": "A supported language as an ISO 639-1 2 letter code."
- },
- {
- "in": "query",
- "name": "advanced_filter",
- "schema": {
- "description": "Filter by complex queries on properties (ex: indoor:=\"room\" OR door:=\"yes\").",
- "title": "Advanced Filter",
- "type": "string"
- },
- "required": false,
- "description": "Filter by complex queries on properties (ex: indoor:=\"room\" OR door:=\"yes\")."
- },
- {
- "in": "query",
- "name": "id",
- "schema": {
- "description": "Filter by a comma seperated list of POI IDs.",
- "example": "1234,4321,9876",
- "title": "Id",
- "type": "string"
+ "allOf": [
+ {
+ "enum": [
+ "metric",
+ "imperial"
+ ],
+ "title": "UnitSystem",
+ "type": "string"
+ }
+ ],
+ "default": "metric",
+ "description": "Unit System to use for response"
},
"required": false,
- "description": "Filter by a comma seperated list of POI IDs.",
- "example": "1234,4321,9876"
+ "description": "Unit System to use for response"
}
],
"responses": {
@@ -7021,7 +6205,17 @@
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Indoor_API_SearchPagination"
+ "$ref": "#/components/schemas/Indoor_API_DistanceMatrixCollection"
+ }
+ }
+ }
+ },
+ "400": {
+ "description": "Bad Request",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Indoor_API_ErrorResponseSchema"
}
}
}
@@ -7093,7 +6287,7 @@
}
}
},
- "description": "Full text search of the features of a venue using name or description\n\n**Rate limit**: `30/1s`",
+ "description": "Get distances and durations for a matrix of origins and destinations, based on the recommended route between start and end points for a specified travel mode.\nThe API returns information consisting of rows containing distance and duration values for each pair of start and end point.\nThe returned distances are designed to be used to find and sort multiple assets by road distance.\nDuration values are provided as complementary info.\n\n**Rate limit**: `20/1s`",
"tags": [
"Indoor API"
],
@@ -7108,170 +6302,132 @@
"Indoor_API_PublicKeyAuth": []
}
],
- "x-codeSamples": [
- {
- "lang": "curl",
- "label": "cURL",
- "source": "curl -L -X GET 'https://api.woosmap.com/indoor/venues/west_pal/pois/search?id=3623459&key=YOUR_PUBLIC_API_KEY' \\\n-H 'Referer: http://localhost'"
- },
- {
- "lang": "python",
- "label": "Python",
- "source": "import requests\n\nurl = \"https://api.woosmap.com/indoor/venues/west_pal/pois/search?id=3623459&key=YOUR_PUBLIC_API_KEY\"\n\npayload={}\nheaders = {\n 'Referer': 'http://localhost'\n}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
- },
- {
- "lang": "javascript",
- "label": "JavaScript",
- "source": "var requestOptions = {\n method: 'GET',\n redirect: 'follow'\n};\n\nfetch(\"https://api.woosmap.com/indoor/venues/west_pal/pois/search?id=3623459&key=YOUR_PUBLIC_API_KEY\", requestOptions)\n .then(response => response.text())\n .then(result => console.log(result))\n .catch(error => console.log('error', error));"
- }
- ]
+ "x-original-tag": "Indoor API"
}
},
- "/indoor/venues/{venue_id}/pois/autocomplete": {
+ "/indoor/directions/{venue_id}": {
"get": {
- "operationId": "api_routers_indoor_autocomplete_venue_pois_by_key",
- "summary": "Autocomplete Venue Pois By Key",
+ "operationId": "api_routers_indoor_directions",
+ "summary": "Directions",
"parameters": [
{
"in": "path",
"name": "venue_id",
"schema": {
- "description": "ID of the venue",
+ "description": "ID of the Venue",
"title": "Venue Id",
"type": "string"
},
"required": true,
- "description": "ID of the venue"
- },
- {
- "in": "query",
- "name": "items_by_page",
- "schema": {
- "default": 0,
- "description": "Number of items per page. A value of 0 means no pagination.",
- "title": "Items By Page",
- "type": "integer"
- },
- "required": false,
- "description": "Number of items per page. A value of 0 means no pagination."
- },
- {
- "in": "query",
- "name": "page",
- "schema": {
- "default": 0,
- "description": "Page number. 0 being the first page.",
- "title": "Page",
- "type": "integer"
- },
- "required": false,
- "description": "Page number. 0 being the first page."
+ "description": "ID of the Venue"
},
{
"in": "query",
- "name": "from_location",
+ "name": "origin",
"schema": {
- "description": "A string with the format lat,lng,level",
+ "description": "A string defining the origin of the route, in the format of `lat,lng,level`, `poi_id` (identifier of a POI), or `ref:poi_ref` (ref of a POI starting with 'ref:').\n\nExamples:\n- `lat,lng,level`: `48.8818546,2.3572283,0`\n- `poi`: `123456`\n- `ref`: `ref:entrance`",
"example": "48.8818546,2.3572283,0",
- "title": "From Location",
+ "title": "Origin",
"type": "string"
},
- "required": false,
- "description": "A string with the format lat,lng,level",
+ "required": true,
+ "description": "A string defining the origin of the route, in the format of `lat,lng,level`, `poi_id` (identifier of a POI), or `ref:poi_ref` (ref of a POI starting with 'ref:').\n\nExamples:\n- `lat,lng,level`: `48.8818546,2.3572283,0`\n- `poi`: `123456`\n- `ref`: `ref:entrance`",
"example": "48.8818546,2.3572283,0"
},
{
"in": "query",
- "name": "q",
+ "name": "destination",
"schema": {
- "description": "Search string. If not passed then all features will be listed alphabetically",
- "title": "Q",
+ "description": "A string defining the destination of the route, in the format of `lat,lng,level`, `poi_id` (identifier of a POI), or `ref:poi_ref` (ref of a POI starting with 'ref:').\n\nExamples:\n- `lat,lng,level`: `48.8818546,2.3572283,0`\n- `poi`: `123456`\n- `ref`: `ref:entrance`",
+ "example": "123456",
+ "title": "Destination",
"type": "string"
},
- "required": false,
- "description": "Search string. If not passed then all features will be listed alphabetically"
+ "required": true,
+ "description": "A string defining the destination of the route, in the format of `lat,lng,level`, `poi_id` (identifier of a POI), or `ref:poi_ref` (ref of a POI starting with 'ref:').\n\nExamples:\n- `lat,lng,level`: `48.8818546,2.3572283,0`\n- `poi`: `123456`\n- `ref`: `ref:entrance`",
+ "example": "123456"
},
{
"in": "query",
- "name": "extended",
+ "name": "language",
"schema": {
- "description": "Option to search even not searchable pois (extended=full)",
- "example": "full",
- "title": "Extended",
+ "default": "en",
+ "description": "A supported language as an ISO 639-1 2 letter code.",
+ "title": "Language",
"type": "string"
},
"required": false,
- "description": "Option to search even not searchable pois (extended=full)",
- "example": "full"
- },
- {
- "in": "query",
- "name": "level",
- "schema": {
- "description": "Filter by level.",
- "title": "Level",
- "type": "integer"
- },
- "required": false,
- "description": "Filter by level."
+ "description": "A supported language as an ISO 639-1 2 letter code."
},
{
"in": "query",
- "name": "building",
+ "name": "units",
"schema": {
- "description": "Filter by building (use `undefined` to find POIs not associated with a building.).",
- "title": "Building",
- "type": "string"
+ "allOf": [
+ {
+ "enum": [
+ "metric",
+ "imperial"
+ ],
+ "title": "UnitSystem",
+ "type": "string"
+ }
+ ],
+ "default": "metric",
+ "description": "Unit System to use for response"
},
"required": false,
- "description": "Filter by building (use `undefined` to find POIs not associated with a building.)."
+ "description": "Unit System to use for response"
},
{
"in": "query",
- "name": "category",
+ "name": "waypoints",
"schema": {
- "description": "Filter by category.",
- "title": "Category",
+ "default": "",
+ "description": "A list of points by which the route should pass seperated by `|`. Waypoints can be of the format: `lat,lng,level`, `poi_id`, `ref:poi_ref`",
+ "example": "48.8818546,2.3572283,0|123456|48.8818546,2.3572283,0|ref:main_exit",
+ "title": "Waypoints",
"type": "string"
},
"required": false,
- "description": "Filter by category."
+ "description": "A list of points by which the route should pass seperated by `|`. Waypoints can be of the format: `lat,lng,level`, `poi_id`, `ref:poi_ref`",
+ "example": "48.8818546,2.3572283,0|123456|48.8818546,2.3572283,0|ref:main_exit"
},
{
"in": "query",
- "name": "ref",
+ "name": "optimize",
"schema": {
- "description": "Filter by a comma seperated list of POI Refs.",
- "example": "ref:main_entrance,ref:side_entrance",
- "title": "Ref",
- "type": "string"
+ "default": false,
+ "description": "If true and set with the waypoints parameter. The provided route is optimized by rearranging the waypoints in a more efficient order",
+ "title": "Optimize",
+ "type": "boolean"
},
"required": false,
- "description": "Filter by a comma seperated list of POI Refs.",
- "example": "ref:main_entrance,ref:side_entrance"
+ "description": "If true and set with the waypoints parameter. The provided route is optimized by rearranging the waypoints in a more efficient order"
},
{
"in": "query",
- "name": "language",
+ "name": "mode",
"schema": {
- "default": "en",
- "description": "A supported language as an ISO 639-1 2 letter code.",
- "title": "Language",
+ "description": "The mode to use to calculate the path (depends on the modes which were used to digitize the venue)",
+ "title": "Mode",
"type": "string"
},
"required": false,
- "description": "A supported language as an ISO 639-1 2 letter code."
+ "description": "The mode to use to calculate the path (depends on the modes which were used to digitize the venue)"
},
{
"in": "query",
- "name": "advanced_filter",
+ "name": "avoid_in",
"schema": {
- "description": "Filter by complex queries on properties (ex: indoor:=\"room\" OR door:=\"yes\").",
- "title": "Advanced Filter",
+ "description": "A list of Bounding Boxes which the routing should avoid seperated by `|`. A Bounding Box has a format of `level;lat,lng;lat,lng;lat,lng;lat,lng;`",
+ "example": "1;48.8818546,2.3572283;48.8818547,2.3572282;48.8818548,2.3572281;48.8818549,2.3572280",
+ "title": "Avoid In",
"type": "string"
},
"required": false,
- "description": "Filter by complex queries on properties (ex: indoor:=\"room\" OR door:=\"yes\")."
+ "description": "A list of Bounding Boxes which the routing should avoid seperated by `|`. A Bounding Box has a format of `level;lat,lng;lat,lng;lat,lng;lat,lng;`",
+ "example": "1;48.8818546,2.3572283;48.8818547,2.3572282;48.8818548,2.3572281;48.8818549,2.3572280"
}
],
"responses": {
@@ -7280,7 +6436,17 @@
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Indoor_API_AutocompletePagination"
+ "$ref": "#/components/schemas/Indoor_API_RouteCollection"
+ }
+ }
+ }
+ },
+ "400": {
+ "description": "Bad Request",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Indoor_API_ErrorResponseSchema"
}
}
}
@@ -7352,7 +6518,7 @@
}
}
},
- "description": "Autocomplete text search of the features of a venue using a name or description\n\n**Rate limit**: `20/1s`",
+ "description": "Returns the directions to go from an Origin to a Destination.\nRouting Configuration must be done before this endpoint will work.\n\n**Rate limit**: `20/1s`",
"tags": [
"Indoor API"
],
@@ -7371,47 +6537,180 @@
{
"lang": "curl",
"label": "cURL",
- "source": "curl -L -X GET 'https://api.woosmap.com/indoor/venues/west_pal/pois/autocomplete?q=cham&language=en&key=YOUR_PUBLIC_API_KEY' \\\n-H 'Referer: http://localhost'"
+ "source": "curl -L -X GET 'https://api.woosmap.com/indoor/directions/west_pal?language=en&units=metric&origin=3623024&destination=3625106&key=YOUR_PUBLIC_API_KEY' \\\n-H 'Referer: http://localhost'"
},
{
"lang": "python",
"label": "Python",
- "source": "import requests\n\nurl = \"https://api.woosmap.com/indoor/venues/west_pal/pois/autocomplete?q=cham&language=en&key=YOUR_PUBLIC_API_KEY\"\n\npayload={}\nheaders = {\n 'Referer': 'http://localhost'\n}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
+ "source": "import requests\n\nurl = \"https://api.woosmap.com/indoor/directions/west_pal?language=en&units=metric&origin=3623024&destination=3625106&key=YOUR_PUBLIC_API_KEY\"\n\npayload={}\nheaders = {\n 'Referer': 'http://localhost'\n}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
},
{
"lang": "javascript",
"label": "JavaScript",
- "source": "var requestOptions = {\n method: 'GET',\n redirect: 'follow'\n};\n\nfetch(\"https://api.woosmap.com/indoor/venues/west_pal/pois/autocomplete?q=cham&language=en&key=YOUR_PUBLIC_API_KEY\", requestOptions)\n .then(response => response.text())\n .then(result => console.log(result))\n .catch(error => console.log('error', error));"
+ "source": "var requestOptions = {\n method: 'GET',\n redirect: 'follow'\n};\n\nfetch(\"https://api.woosmap.com/indoor/directions/west_pal?language=en&units=metric&origin=3623024&destination=3625106&key=YOUR_PUBLIC_API_KEY\", requestOptions)\n .then(response => response.text())\n .then(result => console.log(result))\n .catch(error => console.log('error', error));"
}
- ]
+ ],
+ "x-original-tag": "Indoor API"
}
},
- "/indoor/venues/{venue_id}/features/{feature_id}": {
+ "/indoor/venues/{venue_id}/pois/search": {
"get": {
- "operationId": "api_routers_indoor_get_feature_by_key",
- "summary": "Get Feature By Key",
+ "operationId": "api_routers_indoor_search_venue_pois_by_key",
+ "summary": "Search Venue Pois By Key",
"parameters": [
{
"in": "path",
"name": "venue_id",
"schema": {
- "description": "ID of the venue",
+ "description": "ID of the Venue",
"title": "Venue Id",
"type": "string"
},
"required": true,
- "description": "ID of the venue"
+ "description": "ID of the Venue"
},
{
- "in": "path",
- "name": "feature_id",
+ "in": "query",
+ "name": "items_by_page",
"schema": {
- "description": "ID of the feature",
- "title": "Feature Id",
+ "default": 0,
+ "description": "Number of items per page. A value of 0 means no pagination.",
+ "title": "Items By Page",
"type": "integer"
},
- "required": true,
- "description": "ID of the feature"
+ "required": false,
+ "description": "Number of items per page. A value of 0 means no pagination."
+ },
+ {
+ "in": "query",
+ "name": "page",
+ "schema": {
+ "default": 0,
+ "description": "Page number. 0 being the first page.",
+ "title": "Page",
+ "type": "integer"
+ },
+ "required": false,
+ "description": "Page number. 0 being the first page."
+ },
+ {
+ "in": "query",
+ "name": "from_location",
+ "schema": {
+ "description": "A string with the format lat,lng,level",
+ "example": "48.8818546,2.3572283,0",
+ "title": "From Location",
+ "type": "string"
+ },
+ "required": false,
+ "description": "A string with the format lat,lng,level",
+ "example": "48.8818546,2.3572283,0"
+ },
+ {
+ "in": "query",
+ "name": "q",
+ "schema": {
+ "description": "Search string. If not passed then all features will be listed alphabetically",
+ "title": "Q",
+ "type": "string"
+ },
+ "required": false,
+ "description": "Search string. If not passed then all features will be listed alphabetically"
+ },
+ {
+ "in": "query",
+ "name": "extended",
+ "schema": {
+ "description": "Option to search even not searchable pois (extended=full)",
+ "example": "full",
+ "title": "Extended",
+ "type": "string"
+ },
+ "required": false,
+ "description": "Option to search even not searchable pois (extended=full)",
+ "example": "full"
+ },
+ {
+ "in": "query",
+ "name": "level",
+ "schema": {
+ "description": "Filter by level.",
+ "title": "Level",
+ "type": "integer"
+ },
+ "required": false,
+ "description": "Filter by level."
+ },
+ {
+ "in": "query",
+ "name": "building",
+ "schema": {
+ "description": "Filter by building (use `undefined` to find POIs not associated with a building.).",
+ "title": "Building",
+ "type": "string"
+ },
+ "required": false,
+ "description": "Filter by building (use `undefined` to find POIs not associated with a building.)."
+ },
+ {
+ "in": "query",
+ "name": "category",
+ "schema": {
+ "description": "Filter by category.",
+ "title": "Category",
+ "type": "string"
+ },
+ "required": false,
+ "description": "Filter by category."
+ },
+ {
+ "in": "query",
+ "name": "ref",
+ "schema": {
+ "description": "Filter by a comma seperated list of POI Refs.",
+ "example": "ref:main_entrance,ref:side_entrance",
+ "title": "Ref",
+ "type": "string"
+ },
+ "required": false,
+ "description": "Filter by a comma seperated list of POI Refs.",
+ "example": "ref:main_entrance,ref:side_entrance"
+ },
+ {
+ "in": "query",
+ "name": "language",
+ "schema": {
+ "default": "en",
+ "description": "A supported language as an ISO 639-1 2 letter code.",
+ "title": "Language",
+ "type": "string"
+ },
+ "required": false,
+ "description": "A supported language as an ISO 639-1 2 letter code."
+ },
+ {
+ "in": "query",
+ "name": "advanced_filter",
+ "schema": {
+ "description": "Filter by complex queries on properties (ex: indoor:=\"room\" OR door:=\"yes\").",
+ "title": "Advanced Filter",
+ "type": "string"
+ },
+ "required": false,
+ "description": "Filter by complex queries on properties (ex: indoor:=\"room\" OR door:=\"yes\")."
+ },
+ {
+ "in": "query",
+ "name": "id",
+ "schema": {
+ "description": "Filter by a comma seperated list of POI IDs.",
+ "example": "1234,4321,9876",
+ "title": "Id",
+ "type": "string"
+ },
+ "required": false,
+ "description": "Filter by a comma seperated list of POI IDs.",
+ "example": "1234,4321,9876"
}
],
"responses": {
@@ -7420,7 +6719,7 @@
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Indoor_API_SingleIndoorFeatureSchema"
+ "$ref": "#/components/schemas/Indoor_API_SearchPagination"
}
}
}
@@ -7492,7 +6791,7 @@
}
}
},
- "description": "Returns a single feature using its ID.\n\n**Rate limit**: `20/1s`",
+ "description": "Full text search of the features of a venue using name or description\n\n**Rate limit**: `30/1s`",
"tags": [
"Indoor API"
],
@@ -7511,25 +6810,26 @@
{
"lang": "curl",
"label": "cURL",
- "source": "curl -L -X GET 'https://api.woosmap.com/indoor/venues/west_pal/features/3623459?key=YOUR_PUBLIC_API_KEY' \\\n-H 'Referer: http://localhost'"
+ "source": "curl -L -X GET 'https://api.woosmap.com/indoor/venues/west_pal/pois/search?id=3623459&key=YOUR_PUBLIC_API_KEY' \\\n-H 'Referer: http://localhost'"
},
{
"lang": "python",
"label": "Python",
- "source": "import requests\n\nurl = \"https://api.woosmap.com/indoor/venues/west_pal/features/3623459?key=YOUR_PUBLIC_API_KEY\"\n\npayload={}\nheaders = {\n 'Referer': 'http://localhost'\n}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
+ "source": "import requests\n\nurl = \"https://api.woosmap.com/indoor/venues/west_pal/pois/search?id=3623459&key=YOUR_PUBLIC_API_KEY\"\n\npayload={}\nheaders = {\n 'Referer': 'http://localhost'\n}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
},
{
"lang": "javascript",
"label": "JavaScript",
- "source": "var requestOptions = {\n method: 'GET',\n redirect: 'follow'\n};\n\nfetch(\"https://api.woosmap.com/indoor/venues/west_pal/features/3623459?key=YOUR_PUBLIC_API_KEY\", requestOptions)\n .then(response => response.text())\n .then(result => console.log(result))\n .catch(error => console.log('error', error));"
+ "source": "var requestOptions = {\n method: 'GET',\n redirect: 'follow'\n};\n\nfetch(\"https://api.woosmap.com/indoor/venues/west_pal/pois/search?id=3623459&key=YOUR_PUBLIC_API_KEY\", requestOptions)\n .then(response => response.text())\n .then(result => console.log(result))\n .catch(error => console.log('error', error));"
}
- ]
+ ],
+ "x-original-tag": "Indoor API"
}
},
- "/indoor/venues/{venue_id}/tiles/{z}/{x}/{y}.pbf": {
+ "/indoor/venues/{venue_id}/pois/autocomplete": {
"get": {
- "operationId": "api_routers_indoor_tiles_by_key",
- "summary": "Tiles By Key",
+ "operationId": "api_routers_indoor_autocomplete_venue_pois_by_key",
+ "summary": "Autocomplete Venue Pois By Key",
"parameters": [
{
"in": "path",
@@ -7543,61 +6843,135 @@
"description": "ID of the venue"
},
{
- "in": "path",
- "name": "x",
+ "in": "query",
+ "name": "items_by_page",
"schema": {
- "description": "X coordinate of the tile",
- "title": "X",
+ "default": 0,
+ "description": "Number of items per page. A value of 0 means no pagination.",
+ "title": "Items By Page",
"type": "integer"
},
- "required": true,
- "description": "X coordinate of the tile"
+ "required": false,
+ "description": "Number of items per page. A value of 0 means no pagination."
},
{
- "in": "path",
- "name": "y",
+ "in": "query",
+ "name": "page",
"schema": {
- "description": "Y coordinate of the tile",
- "title": "Y",
+ "default": 0,
+ "description": "Page number. 0 being the first page.",
+ "title": "Page",
"type": "integer"
},
- "required": true,
- "description": "Y coordinate of the tile"
+ "required": false,
+ "description": "Page number. 0 being the first page."
},
{
- "in": "path",
- "name": "z",
+ "in": "query",
+ "name": "from_location",
"schema": {
- "description": "Zoom level",
- "title": "Z",
- "type": "integer"
+ "description": "A string with the format lat,lng,level",
+ "example": "48.8818546,2.3572283,0",
+ "title": "From Location",
+ "type": "string"
},
- "required": true,
- "description": "Zoom level"
+ "required": false,
+ "description": "A string with the format lat,lng,level",
+ "example": "48.8818546,2.3572283,0"
},
{
"in": "query",
- "name": "advanced_filter",
+ "name": "q",
"schema": {
- "description": "Filter POI labels by advanced filter.",
- "title": "Advanced Filter",
+ "description": "Search string. If not passed then all features will be listed alphabetically",
+ "title": "Q",
"type": "string"
},
"required": false,
- "description": "Filter POI labels by advanced filter."
+ "description": "Search string. If not passed then all features will be listed alphabetically"
},
{
"in": "query",
- "name": "disable_zoom_min",
+ "name": "extended",
"schema": {
- "default": false,
- "description": "Disable the zoom_min for POIs.",
- "title": "Disable Zoom Min",
- "type": "boolean"
+ "description": "Option to search even not searchable pois (extended=full)",
+ "example": "full",
+ "title": "Extended",
+ "type": "string"
},
"required": false,
- "description": "Disable the zoom_min for POIs."
- }
+ "description": "Option to search even not searchable pois (extended=full)",
+ "example": "full"
+ },
+ {
+ "in": "query",
+ "name": "level",
+ "schema": {
+ "description": "Filter by level.",
+ "title": "Level",
+ "type": "integer"
+ },
+ "required": false,
+ "description": "Filter by level."
+ },
+ {
+ "in": "query",
+ "name": "building",
+ "schema": {
+ "description": "Filter by building (use `undefined` to find POIs not associated with a building.).",
+ "title": "Building",
+ "type": "string"
+ },
+ "required": false,
+ "description": "Filter by building (use `undefined` to find POIs not associated with a building.)."
+ },
+ {
+ "in": "query",
+ "name": "category",
+ "schema": {
+ "description": "Filter by category.",
+ "title": "Category",
+ "type": "string"
+ },
+ "required": false,
+ "description": "Filter by category."
+ },
+ {
+ "in": "query",
+ "name": "ref",
+ "schema": {
+ "description": "Filter by a comma seperated list of POI Refs.",
+ "example": "ref:main_entrance,ref:side_entrance",
+ "title": "Ref",
+ "type": "string"
+ },
+ "required": false,
+ "description": "Filter by a comma seperated list of POI Refs.",
+ "example": "ref:main_entrance,ref:side_entrance"
+ },
+ {
+ "in": "query",
+ "name": "language",
+ "schema": {
+ "default": "en",
+ "description": "A supported language as an ISO 639-1 2 letter code.",
+ "title": "Language",
+ "type": "string"
+ },
+ "required": false,
+ "description": "A supported language as an ISO 639-1 2 letter code."
+ },
+ {
+ "in": "query",
+ "name": "advanced_filter",
+ "schema": {
+ "description": "Filter by complex queries on properties (ex: indoor:=\"room\" OR door:=\"yes\").",
+ "title": "Advanced Filter",
+ "type": "string"
+ },
+ "required": false,
+ "description": "Filter by complex queries on properties (ex: indoor:=\"room\" OR door:=\"yes\")."
+ }
],
"responses": {
"200": {
@@ -7605,9 +6979,7 @@
"content": {
"application/json": {
"schema": {
- "format": "binary",
- "title": "Response",
- "type": "string"
+ "$ref": "#/components/schemas/Indoor_API_AutocompletePagination"
}
}
}
@@ -7617,9 +6989,7 @@
"content": {
"application/json": {
"schema": {
- "description": "A more detailed explanation on what went wrong.",
- "title": "Detail",
- "type": "string"
+ "$ref": "#/components/schemas/Indoor_API_ErrorResponseSchema"
}
}
}
@@ -7681,7 +7051,7 @@
}
}
},
- "description": "Returns a tile for the venue.\n\n**Rate limit**: `50/1s`",
+ "description": "Autocomplete text search of the features of a venue using a name or description\n\n**Rate limit**: `20/1s`",
"tags": [
"Indoor API"
],
@@ -7695,2140 +7065,2795 @@
{
"Indoor_API_PublicKeyAuth": []
}
- ]
- }
- },
- "/transit/route": {
- "get": {
- "tags": [
- "Transit API"
],
- "summary": "Transit Route",
- "description": "**Rate limit**: `10/1s`",
- "operationId": "transit_route_transit_route_get",
- "security": [
+ "x-codeSamples": [
{
- "External-api-wrapper_PublicAPIKey": []
+ "lang": "curl",
+ "label": "cURL",
+ "source": "curl -L -X GET 'https://api.woosmap.com/indoor/venues/west_pal/pois/autocomplete?q=cham&language=en&key=YOUR_PUBLIC_API_KEY' \\\n-H 'Referer: http://localhost'"
},
{
- "External-api-wrapper_PrivateApiKey": []
+ "lang": "python",
+ "label": "Python",
+ "source": "import requests\n\nurl = \"https://api.woosmap.com/indoor/venues/west_pal/pois/autocomplete?q=cham&language=en&key=YOUR_PUBLIC_API_KEY\"\n\npayload={}\nheaders = {\n 'Referer': 'http://localhost'\n}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
},
{
- "External-api-wrapper_PrivateApiKeyHeader": []
+ "lang": "javascript",
+ "label": "JavaScript",
+ "source": "var requestOptions = {\n method: 'GET',\n redirect: 'follow'\n};\n\nfetch(\"https://api.woosmap.com/indoor/venues/west_pal/pois/autocomplete?q=cham&language=en&key=YOUR_PUBLIC_API_KEY\", requestOptions)\n .then(response => response.text())\n .then(result => console.log(result))\n .catch(error => console.log('error', error));"
}
],
+ "x-original-tag": "Indoor API"
+ }
+ },
+ "/indoor/venues/{venue_id}/features/{feature_id}": {
+ "get": {
+ "operationId": "api_routers_indoor_get_feature_by_key",
+ "summary": "Get Feature By Key",
"parameters": [
{
- "name": "departure_time",
- "in": "query",
- "required": false,
- "schema": {
- "anyOf": [
- {
- "type": "string",
- "format": "date-time"
- },
- {
- "type": "null"
- }
- ],
- "title": "Departure Time",
- "description": "DateTime with or without timezone, if not set the default datetime is the current one",
- "examples": [
- "2024-01-01T12:00:00%2B01:00"
- ]
- },
- "description": "DateTime with or without timezone, if not set the default datetime is the current one"
- },
- {
- "name": "arrival_time",
- "in": "query",
- "required": false,
- "schema": {
- "anyOf": [
- {
- "type": "string",
- "format": "date-time"
- },
- {
- "type": "null"
- }
- ],
- "title": "Arrival Time",
- "description": "DateTime with or without timezone, if departure_time is defined this parameter is ignored",
- "examples": [
- "2024-01-01T14:00:00%2B01:00"
- ]
- },
- "description": "DateTime with or without timezone, if departure_time is defined this parameter is ignored"
- },
- {
- "name": "origin",
- "in": "query",
- "required": true,
+ "in": "path",
+ "name": "venue_id",
"schema": {
- "type": "string",
- "title": "Position",
- "description": "WGS84 coordinates as format lat,lng",
- "examples": [
- "lat,lng"
- ]
+ "description": "ID of the venue",
+ "title": "Venue Id",
+ "type": "string"
},
- "description": "WGS84 coordinates as format lat,lng"
- },
- {
- "name": "destination",
- "in": "query",
"required": true,
- "schema": {
- "type": "string",
- "title": "Position",
- "description": "WGS84 coordinates as format lat,lng",
- "examples": [
- "lat,lng"
- ]
- },
- "description": "WGS84 coordinates as format lat,lng"
+ "description": "ID of the venue"
},
{
- "name": "modes",
- "in": "query",
- "required": false,
+ "in": "path",
+ "name": "feature_id",
"schema": {
- "type": "string",
- "title": "Array of Modes (string) or Excluded modes (string) (TransitModesFilter)",
- "description": "Transit mode filter used to determine which modes of transit to include in the response. \n By default, all supported transit modes are permitted. Supported modes: `highSpeedTrain` `intercityTrain` `interRegionalTrain` `regionalTrain` `cityTrain` `bus` `ferry` `subway` `lightRail` `privateBus` `inclined` `aerial` `busRapid` `monorail` `flight` `spaceship` This parameter also support an exclusion list: It's sufficient to specify each mode to exclude by prefixing it with `-`. \n Mixing of inclusive and exclusive transit modes is not allowed.",
- "examples": [
- "subway,bus",
- "-subway,-bus"
- ]
+ "description": "ID of the feature",
+ "title": "Feature Id",
+ "type": "integer"
},
- "description": "Transit mode filter used to determine which modes of transit to include in the response. \n By default, all supported transit modes are permitted. Supported modes: `highSpeedTrain` `intercityTrain` `interRegionalTrain` `regionalTrain` `cityTrain` `bus` `ferry` `subway` `lightRail` `privateBus` `inclined` `aerial` `busRapid` `monorail` `flight` `spaceship` This parameter also support an exclusion list: It's sufficient to specify each mode to exclude by prefixing it with `-`. \n Mixing of inclusive and exclusive transit modes is not allowed."
+ "required": true,
+ "description": "ID of the feature"
}
],
"responses": {
"200": {
- "description": "Successful Response",
+ "description": "OK",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/External-api-wrapper_Transit"
+ "$ref": "#/components/schemas/Indoor_API_SingleIndoorFeatureSchema"
}
}
}
},
"401": {
- "description": "Unable to locate credentials.",
+ "description": "Unauthorized",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/External-api-wrapper_AuthenticationErrorResponse"
+ "$ref": "#/components/schemas/Indoor_API_ErrorResponseSchema"
}
}
}
},
"402": {
- "description": "Out of free quota.",
+ "description": "Payment Required",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/External-api-wrapper_AuthenticationErrorResponse"
+ "description": "A more detailed explanation on what went wrong.",
+ "title": "Detail",
+ "type": "string"
}
}
}
},
"403": {
- "description": "Credentials found, but not matching.",
+ "description": "Forbidden",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/External-api-wrapper_AuthenticationErrorResponse"
+ "description": "A more detailed explanation on what went wrong.",
+ "title": "Detail",
+ "type": "string"
}
}
}
},
"422": {
- "description": "Validation Error",
+ "description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/External-api-wrapper_HTTPValidationError"
- }
- }
- }
- },
- "429": {
- "description": "Rate limit reached",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/External-api-wrapper_HTTPErrorModel"
+ "properties": {
+ "detail": {
+ "description": "The validation errors.",
+ "items": {
+ "additionalProperties": true,
+ "type": "object"
+ },
+ "title": "Detail",
+ "type": "array"
+ },
+ "context": {
+ "additionalProperties": true,
+ "description": "Context",
+ "title": "Context",
+ "type": "object"
+ }
+ },
+ "required": [
+ "detail",
+ "context"
+ ],
+ "title": "ValidationErrorSchema",
+ "type": "object"
}
}
}
}
},
+ "description": "Returns a single feature using its ID.\n\n**Rate limit**: `20/1s`",
+ "tags": [
+ "Indoor API"
+ ],
+ "security": [
+ {
+ "Indoor_API_PrivateKeyAuth": []
+ },
+ {
+ "Indoor_API_PrivateKeyHeaderAuth": []
+ },
+ {
+ "Indoor_API_PublicKeyAuth": []
+ }
+ ],
"x-codeSamples": [
{
"lang": "curl",
"label": "cURL",
- "source": "curl -L -X GET 'https://api.woosmap.com/transit/route?origin=48.73534,2.368308&destination=48.83534,2.368308&key=YOUR_PUBLIC_API_KEY' \\\n-H 'Referer: http://localhost'"
+ "source": "curl -L -X GET 'https://api.woosmap.com/indoor/venues/west_pal/features/3623459?key=YOUR_PUBLIC_API_KEY' \\\n-H 'Referer: http://localhost'"
},
{
"lang": "python",
"label": "Python",
- "source": "import requests\n\nurl = \"https://api.woosmap.com/transit/route?origin=48.73534,2.368308&destination=48.83534,2.368308&key=YOUR_PUBLIC_API_KEY\"\n\npayload={}\nheaders = {\n 'Referer': 'http://localhost'\n}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
+ "source": "import requests\n\nurl = \"https://api.woosmap.com/indoor/venues/west_pal/features/3623459?key=YOUR_PUBLIC_API_KEY\"\n\npayload={}\nheaders = {\n 'Referer': 'http://localhost'\n}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
},
{
"lang": "javascript",
"label": "JavaScript",
- "source": "var requestOptions = {\n method: 'GET',\n redirect: 'follow'\n};\n\nfetch(\"https://api.woosmap.com/transit/route?origin=48.73534,2.368308&destination=48.83534,2.368308&key=YOUR_PUBLIC_API_KEY\", requestOptions)\n .then(response => response.text())\n .then(result => console.log(result))\n .catch(error => console.log('error', error));"
+ "source": "var requestOptions = {\n method: 'GET',\n redirect: 'follow'\n};\n\nfetch(\"https://api.woosmap.com/indoor/venues/west_pal/features/3623459?key=YOUR_PUBLIC_API_KEY\", requestOptions)\n .then(response => response.text())\n .then(result => console.log(result))\n .catch(error => console.log('error', error));"
}
- ]
+ ],
+ "x-original-tag": "Indoor API"
}
},
- "/datasets/{dataset_id}": {
+ "/indoor/venues/{venue_id}/tiles/{z}/{x}/{y}.pbf": {
"get": {
- "tags": [
- "Datasets API"
- ],
- "summary": "Get Dataset",
- "description": "Gets dataset details.\n\n**Rate limit**: `1/1s`",
- "operationId": "get_dataset_datasets__dataset_id__get",
- "security": [
+ "operationId": "api_routers_indoor_tiles_by_key",
+ "summary": "Tiles By Key",
+ "parameters": [
{
- "Datasets_PrivateKeyWithWrite": []
+ "in": "path",
+ "name": "venue_id",
+ "schema": {
+ "description": "ID of the venue",
+ "title": "Venue Id",
+ "type": "string"
+ },
+ "required": true,
+ "description": "ID of the venue"
},
{
- "Datasets_PrivateKeyWithWriteHeader": []
- }
- ],
- "parameters": [
+ "in": "path",
+ "name": "x",
+ "schema": {
+ "description": "X coordinate of the tile",
+ "title": "X",
+ "type": "integer"
+ },
+ "required": true,
+ "description": "X coordinate of the tile"
+ },
+ {
+ "in": "path",
+ "name": "y",
+ "schema": {
+ "description": "Y coordinate of the tile",
+ "title": "Y",
+ "type": "integer"
+ },
+ "required": true,
+ "description": "Y coordinate of the tile"
+ },
{
- "name": "dataset_id",
"in": "path",
+ "name": "z",
+ "schema": {
+ "description": "Zoom level",
+ "title": "Z",
+ "type": "integer"
+ },
"required": true,
+ "description": "Zoom level"
+ },
+ {
+ "in": "query",
+ "name": "advanced_filter",
"schema": {
- "type": "string",
- "format": "uuid",
- "title": "Dataset Id"
- }
+ "description": "Filter POI labels by advanced filter.",
+ "title": "Advanced Filter",
+ "type": "string"
+ },
+ "required": false,
+ "description": "Filter POI labels by advanced filter."
+ },
+ {
+ "in": "query",
+ "name": "disable_zoom_min",
+ "schema": {
+ "default": false,
+ "description": "Disable the zoom_min for POIs.",
+ "title": "Disable Zoom Min",
+ "type": "boolean"
+ },
+ "required": false,
+ "description": "Disable the zoom_min for POIs."
}
],
"responses": {
"200": {
- "description": "Successful Response",
+ "description": "OK",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Datasets_DatasetResponse"
+ "format": "binary",
+ "title": "Response",
+ "type": "string"
}
}
}
},
"401": {
- "description": "Unable to locate credentials.",
+ "description": "Unauthorized",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
+ "description": "A more detailed explanation on what went wrong.",
+ "title": "Detail",
+ "type": "string"
}
}
}
},
"402": {
- "description": "Out of free quota.",
+ "description": "Payment Required",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
+ "description": "A more detailed explanation on what went wrong.",
+ "title": "Detail",
+ "type": "string"
}
}
}
},
"403": {
- "description": "Credentials found, but not matching.",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
- }
- }
- }
- },
- "404": {
- "description": "Dataset was not found",
+ "description": "Forbidden",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Datasets_features__internal__responses__HTTPErrorModel"
+ "description": "A more detailed explanation on what went wrong.",
+ "title": "Detail",
+ "type": "string"
}
}
}
},
"422": {
- "description": "Validation Error",
+ "description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Datasets_HTTPValidationError"
+ "properties": {
+ "detail": {
+ "description": "The validation errors.",
+ "items": {
+ "additionalProperties": true,
+ "type": "object"
+ },
+ "title": "Detail",
+ "type": "array"
+ },
+ "context": {
+ "additionalProperties": true,
+ "description": "Context",
+ "title": "Context",
+ "type": "object"
+ }
+ },
+ "required": [
+ "detail",
+ "context"
+ ],
+ "title": "ValidationErrorSchema",
+ "type": "object"
}
}
}
+ }
+ },
+ "description": "Returns a tile for the venue.\n\n**Rate limit**: `50/1s`",
+ "tags": [
+ "Indoor API"
+ ],
+ "security": [
+ {
+ "Indoor_API_PrivateKeyAuth": []
},
- "429": {
- "description": "Rate limit reached",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_features__internal__responses__HTTPErrorModel"
- }
- }
- }
+ {
+ "Indoor_API_PrivateKeyHeaderAuth": []
+ },
+ {
+ "Indoor_API_PublicKeyAuth": []
}
- }
- },
- "delete": {
+ ],
+ "x-original-tag": "Indoor API"
+ }
+ },
+ "/localities/autocomplete": {
+ "get": {
+ "summary": "Autocomplete for Localities",
+ "operationId": "localitiesAutocomplete",
+ "servers": [
+ {
+ "url": "https://api.woosmap.com"
+ }
+ ],
"tags": [
- "Datasets API"
+ "Localities API"
],
- "summary": "Delete Dataset",
- "description": "Schedule a dataset for deletion, deletion will happen in 7 days.\n\n\n**Rate limit**: `1/1s`",
- "operationId": "delete_dataset_datasets__dataset_id__delete",
+ "description": "Autocomplete on worldwide suggestions for a for text-based geographic searches. It can match on full words as well as substrings. You can therefore send queries as the user types, to provide on-the-fly addresses, city names, postal codes or suburb name suggestions.\n",
"security": [
{
- "Datasets_PrivateKeyWithWrite": []
+ "Woosmap_Platform_API_Reference_PublicApiKeyAuth": [],
+ "Woosmap_Platform_API_Reference_RefererHeader": []
},
{
- "Datasets_PrivateKeyWithWriteHeader": []
+ "Woosmap_Platform_API_Reference_PrivateApiKeyAuth": []
+ },
+ {
+ "Woosmap_Platform_API_Reference_PrivateApiKeyHeaderAuth": []
}
],
"parameters": [
{
- "name": "dataset_id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "string",
- "format": "uuid",
- "title": "Dataset Id"
- }
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_input"
+ },
+ {
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_types"
+ },
+ {
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_excluded_types"
+ },
+ {
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_localities_components"
+ },
+ {
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_language-2"
+ },
+ {
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_location"
+ },
+ {
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_radius-2"
+ },
+ {
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_data"
+ },
+ {
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_extended"
+ },
+ {
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_custom_description"
}
],
"responses": {
"200": {
- "description": "Successful Response",
+ "description": "Autocompletion Localities successfully retrieved",
"content": {
"application/json": {
"schema": {
- "type": "object",
- "additionalProperties": true,
- "title": "Response Delete Dataset Datasets Dataset Id Delete"
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_LocalitiesAutocompleteCollectionResponse"
+ },
+ "examples": {
+ "default": {
+ "summary": "Autocomplete localities results for input `Lond` and components `country:gb`",
+ "value": {
+ "localities": [
+ {
+ "public_id": "Ch6qA8cLmvyvEEoFy6nYeFcEdNU=",
+ "type": "locality",
+ "types": [
+ "locality",
+ "city"
+ ],
+ "description": "London, City of London, United Kingdom",
+ "matched_substrings": {
+ "description": [
+ {
+ "offset": 0,
+ "length": 4
+ }
+ ]
+ }
+ },
+ {
+ "public_id": "m/T2C4YI2LgszkKXrELBC+9dfC8=",
+ "type": "locality",
+ "types": [
+ "locality",
+ "city"
+ ],
+ "description": "Derry/Londonderry, Derry City and Strabane, United Kingdom",
+ "matched_substrings": {
+ "description": [
+ {
+ "offset": 6,
+ "length": 4
+ }
+ ]
+ }
+ },
+ {
+ "public_id": "J6eISGMjjvQwPkao8rsByB3aVwM=",
+ "type": "locality",
+ "types": [
+ "locality",
+ "village"
+ ],
+ "description": "London Colney, Hertfordshire, United Kingdom",
+ "matched_substrings": {
+ "description": [
+ {
+ "offset": 0,
+ "length": 4
+ }
+ ]
+ }
+ },
+ {
+ "public_id": "52MnrbHVWH21CLWH8VY/YWKhqeM=",
+ "type": "locality",
+ "types": [
+ "locality",
+ "village"
+ ],
+ "description": "London Apprentice, Cornwall, United Kingdom",
+ "matched_substrings": {
+ "description": [
+ {
+ "offset": 0,
+ "length": 4
+ }
+ ]
+ }
+ },
+ {
+ "public_id": "S/5AkUmMBhX35qVI2jR38+dALwk=",
+ "type": "locality",
+ "types": [
+ "locality",
+ "city"
+ ],
+ "description": "City of London, United Kingdom",
+ "matched_substrings": {
+ "description": [
+ {
+ "offset": 8,
+ "length": 4
+ }
+ ]
+ }
+ }
+ ]
+ }
+ }
}
}
}
},
"401": {
- "description": "Unable to locate credentials.",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
- }
- }
- }
- },
- "402": {
- "description": "Out of free quota.",
+ "description": "Unauthorized. Incorrect authentication credentials.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error401"
+ },
+ "examples": {
+ "Unauthorized": {
+ "summary": "Error 401",
+ "value": {
+ "detail": "Incorrect authentication credentials. Please check or use a valid API Key"
+ }
+ }
}
}
}
},
"403": {
- "description": "Credentials found, but not matching.",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
- }
- }
- }
- },
- "404": {
- "description": "Dataset was not found",
+ "description": "Forbidden. This Woosmap API is not enabled for this project.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Datasets_features__internal__responses__HTTPErrorModel"
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error403"
+ },
+ "examples": {
+ "Forbidden": {
+ "summary": "Error 403",
+ "value": {
+ "detail": "This Woosmap API is not enabled for this project."
+ }
+ }
}
}
}
},
- "409": {
- "description": "The Dataset was already scheduled for deletion.",
+ "429": {
+ "description": "Too Many Requests. The rate limit for this endpoint has been exceeded.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Datasets_features__internal__responses__HTTPErrorModel"
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error429"
+ },
+ "examples": {
+ "Forbidden": {
+ "summary": "Error 429",
+ "value": {
+ "detail": "The rate limit for this endpoint has been exceeded"
+ }
+ }
}
}
}
+ }
+ },
+ "x-codeSamples": [
+ {
+ "lang": "curl",
+ "label": "cURL",
+ "source": "curl -L 'https://api.woosmap.com/localities/autocomplete/?input=Lond&components=country%3Agb&no_deprecated_fields=true&key=YOUR_PUBLIC_API_KEY' \\\n-H 'Referer: http://localhost'"
},
- "422": {
- "description": "Validation Error",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_HTTPValidationError"
- }
- }
- }
+ {
+ "lang": "javascript",
+ "label": "JavaScript",
+ "source": "const requestOptions = {\n method: \"GET\",\n redirect: \"follow\"\n};\n\nfetch(\"https://api.woosmap.com/localities/autocomplete/?input=Lond&components=country%3Agb&no_deprecated_fields=true&key=YOUR_PUBLIC_API_KEY\", requestOptions)\n .then((response) => response.text())\n .then((result) => console.log(result))\n .catch((error) => console.error(error));"
},
- "429": {
- "description": "Rate limit reached",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_features__internal__responses__HTTPErrorModel"
- }
- }
- }
+ {
+ "lang": "python",
+ "label": "Python",
+ "source": "import requests\n\nurl = \"https://api.woosmap.com/localities/autocomplete/?input=Lond&components=country%3Agb&no_deprecated_fields=true&key=YOUR_PUBLIC_API_KEY\"\n\npayload = {}\nheaders = {\n 'Referer': 'http://localhost'\n}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
}
- }
- },
- "put": {
+ ]
+ }
+ },
+ "/localities/details": {
+ "get": {
+ "summary": "Details of a Locality",
+ "operationId": "localitiesDetails",
+ "servers": [
+ {
+ "url": "https://api.woosmap.com"
+ }
+ ],
"tags": [
- "Datasets API"
+ "Localities API"
],
- "summary": "Update Dataset",
- "description": "Updates a dataset url or name.\n\n**Rate limit**: `1/1s`",
- "operationId": "update_dataset_datasets__dataset_id__put",
+ "description": "Provides details of an autocomplete suggestion (using the suggestion’s `public_id`).\n",
"security": [
{
- "Datasets_PrivateKeyWithWrite": []
+ "Woosmap_Platform_API_Reference_PublicApiKeyAuth": [],
+ "Woosmap_Platform_API_Reference_RefererHeader": []
},
{
- "Datasets_PrivateKeyWithWriteHeader": []
+ "Woosmap_Platform_API_Reference_PrivateApiKeyAuth": []
+ },
+ {
+ "Woosmap_Platform_API_Reference_PrivateApiKeyHeaderAuth": []
}
],
"parameters": [
{
- "name": "dataset_id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "string",
- "format": "uuid",
- "title": "Dataset Id"
- }
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_public_id"
+ },
+ {
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_language-2"
+ },
+ {
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_fields"
+ },
+ {
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_cc_format"
+ },
+ {
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_page-2"
+ },
+ {
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_addresses_per_page"
}
],
- "requestBody": {
- "required": true,
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_DatasetUpdate"
- }
- }
- }
- },
"responses": {
"200": {
- "description": "Successful Response",
+ "description": "Details Localities successfully retrieved",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Datasets_DatasetResponse"
- }
- }
- }
- },
- "401": {
- "description": "Unable to locate credentials.",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_LocalitiesDetailsResponse"
+ },
+ "examples": {
+ "Address": {
+ "summary": "Localities Address details from a `public_id` retrieved using Localities autocomplete",
+ "value": {
+ "result": {
+ "public_id": "TVZaV0JmR1pRbkFRbjlKdEU5Q0paamdlQjRRPV9fTVZaV0JmR1pRbkFRbjlKdEU5Q0paamdlQjRRPQ==",
+ "types": [
+ "address"
+ ],
+ "formatted_address": "House Of Commons, Houses Of Parliament, London, SW1A 0AA",
+ "geometry": {
+ "location": {
+ "lat": 51.4998415,
+ "lng": -0.1246375
+ },
+ "accuracy": "ROOFTOP"
+ },
+ "address_components": [
+ {
+ "types": [
+ "country",
+ "administrative_area_level_0",
+ "division_level_0"
+ ],
+ "long_name": "United Kingdom",
+ "short_name": "GB"
+ },
+ {
+ "types": [
+ "state",
+ "division_level_1"
+ ],
+ "long_name": "England",
+ "short_name": "England"
+ },
+ {
+ "types": [
+ "administrative_area_level_1",
+ "county",
+ "division_level_2"
+ ],
+ "long_name": "City of London",
+ "short_name": "City of London"
+ },
+ {
+ "types": [
+ "district",
+ "division_level_3"
+ ],
+ "long_name": "Westminster",
+ "short_name": "Westminster"
+ },
+ {
+ "types": [
+ "locality"
+ ],
+ "long_name": "London",
+ "short_name": "London"
+ },
+ {
+ "types": [
+ "postal_codes"
+ ],
+ "long_name": "SW1A 0AA",
+ "short_name": "SW1A 0AA"
+ },
+ {
+ "types": [
+ "premise"
+ ],
+ "long_name": "Houses Of Parliament",
+ "short_name": "Houses Of Parliament"
+ },
+ {
+ "types": [
+ "organisation"
+ ],
+ "long_name": "House Of Commons",
+ "short_name": "House Of Commons"
+ }
+ ]
+ }
+ }
+ },
+ "PostalCode": {
+ "summary": "Localities Postal Code details from a `public_id` retrieved using Localities autocomplete",
+ "value": {
+ "result": {
+ "public_id": "QaCU+fBtigK65ztSrqHqUoUDwZw=",
+ "types": [
+ "postal_code"
+ ],
+ "formatted_address": "SW1A 0AA, City of London",
+ "name": "SW1A 0AA",
+ "geometry": {
+ "location": {
+ "lat": 51.499842,
+ "lng": -0.124638
+ },
+ "accuracy": "GEOMETRIC_CENTER"
+ },
+ "address_components": [
+ {
+ "types": [
+ "country",
+ "administrative_area_level_0",
+ "division_level_0"
+ ],
+ "long_name": "United Kingdom",
+ "short_name": "GB"
+ },
+ {
+ "types": [
+ "state",
+ "division_level_1"
+ ],
+ "long_name": "England",
+ "short_name": "England"
+ },
+ {
+ "types": [
+ "administrative_area_level_1",
+ "county",
+ "division_level_2"
+ ],
+ "long_name": "City of London",
+ "short_name": "City of London"
+ },
+ {
+ "types": [
+ "district",
+ "division_level_3"
+ ],
+ "long_name": "Westminster",
+ "short_name": "Westminster"
+ },
+ {
+ "types": [
+ "postal_codes"
+ ],
+ "long_name": "SW1A 0AA",
+ "short_name": "SW1A 0AA"
+ }
+ ],
+ "addresses": {
+ "pagination": {
+ "page": 1,
+ "page_count": 1,
+ "addresses_per_page": 1,
+ "address_count": 1
+ },
+ "list": [
+ {
+ "public_id": "TVZaV0JmR1pRbkFRbjlKdEU5Q0paamdlQjRRPV9fTVZaV0JmR1pRbkFRbjlKdEU5Q0paamdlQjRRPQ==",
+ "description": "House Of Commons, Houses Of Parliament London, SW1A 0AA"
+ }
+ ]
+ }
+ }
+ }
+ }
}
}
}
},
- "402": {
- "description": "Out of free quota.",
+ "401": {
+ "description": "Unauthorized. Incorrect authentication credentials.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error401"
+ },
+ "examples": {
+ "Unauthorized": {
+ "summary": "Error 401",
+ "value": {
+ "detail": "Incorrect authentication credentials. Please check or use a valid API Key"
+ }
+ }
}
}
}
},
"403": {
- "description": "Credentials found, but not matching.",
+ "description": "Forbidden. This Woosmap API is not enabled for this project.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error403"
+ },
+ "examples": {
+ "Forbidden": {
+ "summary": "Error 403",
+ "value": {
+ "detail": "This Woosmap API is not enabled for this project."
+ }
+ }
}
}
}
},
- "404": {
- "description": "Dataset was not found",
+ "429": {
+ "description": "Too Many Requests. The rate limit for this endpoint has been exceeded.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Datasets_features__internal__responses__HTTPErrorModel"
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error429"
+ },
+ "examples": {
+ "Forbidden": {
+ "summary": "Error 429",
+ "value": {
+ "detail": "The rate limit for this endpoint has been exceeded"
+ }
+ }
}
}
}
+ }
+ },
+ "x-codeSamples": [
+ {
+ "lang": "curl",
+ "label": "cURL",
+ "source": "curl -L 'https://api.woosmap.com/localities/details?public_id=TVZaV0JmR1pRbkFRbjlKdEU5Q0paamdlQjRRPV9fTVZaV0JmR1pRbkFRbjlKdEU5Q0paamdlQjRRPQ%3D%3D&key=YOUR_PUBLIC_API_KEY' \\\n-H 'Referer: http://localhost'"
},
- "422": {
- "description": "Validation Error",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_HTTPValidationError"
- }
- }
- }
+ {
+ "lang": "javascript",
+ "label": "JavaScript",
+ "source": "const requestOptions = {\n method: \"GET\",\n redirect: \"follow\"\n};\n\nfetch(\"https://api.woosmap.com/localities/details?public_id=TVZaV0JmR1pRbkFRbjlKdEU5Q0paamdlQjRRPV9fTVZaV0JmR1pRbkFRbjlKdEU5Q0paamdlQjRRPQ%3D%3D&key=YOUR_PUBLIC_API_KEY\", requestOptions)\n .then((response) => response.text())\n .then((result) => console.log(result))\n .catch((error) => console.error(error));"
},
- "429": {
- "description": "Rate limit reached",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_features__internal__responses__HTTPErrorModel"
- }
- }
- }
+ {
+ "lang": "python",
+ "label": "Python",
+ "source": "import requests\n\nurl = \"https://api.woosmap.com/localities/details?public_id=TVZaV0JmR1pRbkFRbjlKdEU5Q0paamdlQjRRPV9fTVZaV0JmR1pRbkFRbjlKdEU5Q0paamdlQjRRPQ%3D%3D&key=YOUR_PUBLIC_API_KEY\"\n\npayload = {}\nheaders = {\n 'Referer': 'http://localhost'\n}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
}
- }
+ ]
}
},
- "/datasets/": {
+ "/localities/geocode": {
"get": {
+ "summary": "Geocode a locality or Reverse Geocode a latlng",
+ "operationId": "localitiesGeocode",
+ "servers": [
+ {
+ "url": "https://api.woosmap.com"
+ }
+ ],
"tags": [
- "Datasets API"
+ "Localities API"
],
- "summary": "List Datasets",
- "description": "Lists datasets.\n\n**Rate limit**: `1/1s`",
- "operationId": "list_datasets_datasets__get",
+ "description": "Provides details for an address or a geographic position. Either parameter `address` **or** `latlng` is required.\n",
"security": [
{
- "Datasets_PrivateKeyWithWrite": []
+ "Woosmap_Platform_API_Reference_PublicApiKeyAuth": [],
+ "Woosmap_Platform_API_Reference_RefererHeader": []
},
{
- "Datasets_PrivateKeyWithWriteHeader": []
+ "Woosmap_Platform_API_Reference_PrivateApiKeyAuth": []
+ },
+ {
+ "Woosmap_Platform_API_Reference_PrivateApiKeyHeaderAuth": []
}
],
"parameters": [
{
- "name": "per_page",
- "in": "query",
- "required": false,
- "schema": {
- "type": "integer",
- "maximum": 20,
- "minimum": 1,
- "description": "The maximum number of elements to return in a result page.",
- "default": 10,
- "title": "Per Page"
- },
- "description": "The maximum number of elements to return in a result page."
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_address"
},
{
- "name": "page",
- "in": "query",
- "required": false,
- "schema": {
- "type": "integer",
- "minimum": 1,
- "description": "The result page to fetch.",
- "default": 1,
- "title": "Page"
- },
- "description": "The result page to fetch."
- }
- ],
- "responses": {
- "200": {
- "description": "Successful Response",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_DatasetListResponse"
- }
- }
- }
- },
- "401": {
- "description": "Unable to locate credentials.",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
- }
- }
- }
- },
- "402": {
- "description": "Out of free quota.",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
- }
- }
- }
- },
- "403": {
- "description": "Credentials found, but not matching.",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
- }
- }
- }
- },
- "422": {
- "description": "Validation Error",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_HTTPValidationError"
- }
- }
- }
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_latlng"
},
- "429": {
- "description": "Rate limit reached",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_features__internal__responses__HTTPErrorModel"
- }
- }
- }
- }
- }
- },
- "post": {
- "tags": [
- "Datasets API"
- ],
- "summary": "Create Dataset",
- "description": "Creates a dataset.\n\n**Rate limit**: `1/1s`",
- "operationId": "create_dataset_datasets__post",
- "security": [
{
- "Datasets_PrivateKeyWithWrite": []
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_geocode_types"
},
{
- "Datasets_PrivateKeyWithWriteHeader": []
- }
- ],
- "requestBody": {
- "required": true,
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_DatasetCreateRequest"
- }
- }
- }
- },
- "responses": {
- "200": {
- "description": "Successful Response",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_DatasetResponse"
- }
- }
- }
- },
- "401": {
- "description": "Unable to locate credentials.",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
- }
- }
- }
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_excluded_types"
},
- "402": {
- "description": "Out of free quota.",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
- }
- }
- }
+ {
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_list_sub_buildings"
},
- "403": {
- "description": "Credentials found, but not matching.",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
- }
- }
- }
+ {
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_localities_components"
},
- "422": {
- "description": "Validation Error",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_HTTPValidationError"
- }
- }
- }
+ {
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_language-2"
},
- "429": {
- "description": "Rate limit reached",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_features__internal__responses__HTTPErrorModel"
- }
- }
- }
- }
- }
- }
- },
- "/datasets/{dataset_id}/status": {
- "get": {
- "tags": [
- "Datasets API"
- ],
- "summary": "Get Dataset Status",
- "description": "Returns the dataset import status.\n\n**Rate limit**: `1/5s`",
- "operationId": "get_dataset_status_datasets__dataset_id__status_get",
- "security": [
{
- "Datasets_PrivateKeyWithWrite": []
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_fields"
},
{
- "Datasets_PrivateKeyWithWriteHeader": []
- }
- ],
- "parameters": [
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_data"
+ },
{
- "name": "dataset_id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "string",
- "format": "uuid",
- "title": "Dataset Id"
- }
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_cc_format-2"
}
],
"responses": {
"200": {
- "description": "Successful Response",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_DatasetStatusResponse"
- }
- }
- }
- },
- "401": {
- "description": "Unable to locate credentials.",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
- }
- }
- }
- },
- "402": {
- "description": "Out of free quota.",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
- }
- }
- }
- },
- "403": {
- "description": "Credentials found, but not matching.",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
- }
- }
- }
- },
- "404": {
- "description": "Dataset was not found",
+ "description": "Request Localities Geocode successful",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Datasets_features__internal__responses__HTTPErrorModel"
- }
- }
- }
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_LocalitiesGeocodeCollectionResponse"
+ },
+ "examples": {
+ "geocode": {
+ "summary": "Geocode Results for address `Place Jeanne-d'Arc` with components `country:FR`",
+ "value": {
+ "results": [
+ {
+ "public_id": "0+FTYd/1MsiBSxLAKq+/Fiyy+uM=",
+ "types": [
+ "address",
+ "route"
+ ],
+ "formatted_address": "Place Jeanne D'Arc, 75013, Paris",
+ "address_components": [
+ {
+ "types": [
+ "country",
+ "administrative_area_level_0",
+ "division_level_0"
+ ],
+ "long_name": "France",
+ "short_name": "FR"
+ },
+ {
+ "types": [
+ "state",
+ "division_level_1"
+ ],
+ "long_name": "Île-de-France",
+ "short_name": "Île-de-France"
+ },
+ {
+ "types": [
+ "administrative_area_level_1",
+ "county",
+ "division_level_2"
+ ],
+ "long_name": "Paris",
+ "short_name": "Paris"
+ },
+ {
+ "types": [
+ "locality"
+ ],
+ "long_name": "Paris",
+ "short_name": "Paris"
+ },
+ {
+ "types": [
+ "postal_codes"
+ ],
+ "long_name": "75013",
+ "short_name": "75013"
+ },
+ {
+ "types": [
+ "route"
+ ],
+ "long_name": "Place Jeanne D'Arc",
+ "short_name": "Place Jeanne D'Arc"
+ }
+ ],
+ "geometry": {
+ "location": {
+ "lat": 48.829405,
+ "lng": 2.367944
+ },
+ "location_type": "GEOMETRIC_CENTER"
+ },
+ "scores_per_components": {
+ "street_name": 1
+ }
+ }
+ ]
+ }
+ },
+ "reverse": {
+ "summary": "Reverse Geocode Results for latlng `51.52089223979333, -0.195460973340401` with list_sub_buildings `true`",
+ "value": {
+ "results": [
+ {
+ "public_id": "",
+ "types": [
+ "address"
+ ],
+ "formatted_address": "Radway House, Alfred Road, London, W2 5ER",
+ "address_components": [
+ {
+ "types": [
+ "country",
+ "administrative_area_level_0",
+ "division_level_0"
+ ],
+ "long_name": "United Kingdom",
+ "short_name": "GB"
+ },
+ {
+ "types": [
+ "state",
+ "division_level_1"
+ ],
+ "long_name": "England",
+ "short_name": "England"
+ },
+ {
+ "types": [
+ "administrative_area_level_1",
+ "county",
+ "division_level_2"
+ ],
+ "long_name": "City of London",
+ "short_name": "City of London"
+ },
+ {
+ "types": [
+ "district",
+ "division_level_3"
+ ],
+ "long_name": "Westminster",
+ "short_name": "Westminster"
+ },
+ {
+ "types": [
+ "locality"
+ ],
+ "long_name": "London",
+ "short_name": "London"
+ },
+ {
+ "types": [
+ "postal_codes"
+ ],
+ "long_name": "W2 5ER",
+ "short_name": "W2 5ER"
+ },
+ {
+ "types": [
+ "route"
+ ],
+ "long_name": "Alfred Road",
+ "short_name": "Alfred Road"
+ },
+ {
+ "types": [
+ "premise"
+ ],
+ "long_name": "Radway House",
+ "short_name": "Radway House"
+ }
+ ],
+ "geometry": {
+ "location": {
+ "lat": 51.5211258,
+ "lng": -0.1956346
+ },
+ "location_type": "ROOFTOP"
+ },
+ "distance": 28.62347934634507,
+ "sub_buildings": [
+ {
+ "public_id": "Nmp0K1VVUFQ4eFI3S1BuaDZEZVVJVWhYY3A4PV9faitia1pNNURnOWYvQmRjMUdweXl5SjdLZUZnPQ==",
+ "description": "Flat 1, Radway House, Alfred Road, London, W2 5ER"
+ },
+ {
+ "public_id": "Nmp0K1VVUFQ4eFI3S1BuaDZEZVVJVWhYY3A4PV9fbTRoZVpxYkhBYVVXSytqek04UGtGQ1VLTVI0PQ==",
+ "description": "Flat 2, Radway House, Alfred Road, London, W2 5ER"
+ },
+ {
+ "public_id": "Nmp0K1VVUFQ4eFI3S1BuaDZEZVVJVWhYY3A4PV9fcmY1MHV6aE5kVytLWWZLV3JabzFzR2lnbThzPQ==",
+ "description": "Flat 3, Radway House, Alfred Road, London, W2 5ER"
+ },
+ {
+ "public_id": "Nmp0K1VVUFQ4eFI3S1BuaDZEZVVJVWhYY3A4PV9fajlaWXJJUDFKSmI1Y0dpNElDanBQejF2YUg4PQ==",
+ "description": "Flat 4, Radway House, Alfred Road, London, W2 5ER"
+ },
+ {
+ "public_id": "Nmp0K1VVUFQ4eFI3S1BuaDZEZVVJVWhYY3A4PV9fbkdEZTNOODZNL0VlWGtoR0pSa2tBS1NMYndVPQ==",
+ "description": "Flat 5, Radway House, Alfred Road, London, W2 5ER"
+ },
+ {
+ "public_id": "Nmp0K1VVUFQ4eFI3S1BuaDZEZVVJVWhYY3A4PV9fTGxlWUlKN2NhU1JXcTBuSEs1RExiamliNlpNPQ==",
+ "description": "Flat 6, Radway House, Alfred Road, London, W2 5ER"
+ },
+ {
+ "public_id": "Nmp0K1VVUFQ4eFI3S1BuaDZEZVVJVWhYY3A4PV9feVZXa05ISjhzVGNHK2NQUHFpNlFIUWgvSnpJPQ==",
+ "description": "Flat 7, Radway House, Alfred Road, London, W2 5ER"
+ },
+ {
+ "public_id": "Nmp0K1VVUFQ4eFI3S1BuaDZEZVVJVWhYY3A4PV9fTVc5NldSeWpuOENUS2xST21vZzdnNGxGQldrPQ==",
+ "description": "Flat 8, Radway House, Alfred Road, London, W2 5ER"
+ },
+ {
+ "public_id": "Nmp0K1VVUFQ4eFI3S1BuaDZEZVVJVWhYY3A4PV9fN3RkdE9HeHBwT2M5R1hQMUFwNDJUc3NwRklZPQ==",
+ "description": "Flat 9, Radway House, Alfred Road, London, W2 5ER"
+ },
+ {
+ "public_id": "Nmp0K1VVUFQ4eFI3S1BuaDZEZVVJVWhYY3A4PV9fR2RVRHpoYll4a2RlTldjLzF3NVNFTXNZYzlFPQ==",
+ "description": "Flat 10, Radway House, Alfred Road, London, W2 5ER"
+ },
+ {
+ "public_id": "Nmp0K1VVUFQ4eFI3S1BuaDZEZVVJVWhYY3A4PV9fL3FXbnVZU2h4bjAwMDNKK3hJeU9OL3lnemFzPQ==",
+ "description": "Flat 11, Radway House, Alfred Road, London, W2 5ER"
+ },
+ {
+ "public_id": "Nmp0K1VVUFQ4eFI3S1BuaDZEZVVJVWhYY3A4PV9fVVVCUWhpNVJQWWk2eTl1WFBTVTRmK3Zma3VBPQ==",
+ "description": "Flat 12, Radway House, Alfred Road, London, W2 5ER"
+ },
+ {
+ "public_id": "Nmp0K1VVUFQ4eFI3S1BuaDZEZVVJVWhYY3A4PV9fV2hSUDNadnFMN3ZzaWJ6UFd2MWM3aW1qT3hBPQ==",
+ "description": "Flat 13, Radway House, Alfred Road, London, W2 5ER"
+ },
+ {
+ "public_id": "Nmp0K1VVUFQ4eFI3S1BuaDZEZVVJVWhYY3A4PV9fcWxGbFRlcE1TVStZVElodzFSdVhiTGxZTXl3PQ==",
+ "description": "Flat 14, Radway House, Alfred Road, London, W2 5ER"
+ },
+ {
+ "public_id": "Nmp0K1VVUFQ4eFI3S1BuaDZEZVVJVWhYY3A4PV9fYjR5VHRXMmZTQ0FOMGwwZHJNaFh5TFRnVHlnPQ==",
+ "description": "Flat 15, Radway House, Alfred Road, London, W2 5ER"
+ },
+ {
+ "public_id": "Nmp0K1VVUFQ4eFI3S1BuaDZEZVVJVWhYY3A4PV9fNmp0K1VVUFQ4eFI3S1BuaDZEZVVJVWhYY3A4PQ==",
+ "description": "Flat 16, Radway House, Alfred Road, London, W2 5ER"
+ }
+ ]
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
},
- "422": {
- "description": "Validation Error",
+ "401": {
+ "description": "Unauthorized. Incorrect authentication credentials.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Datasets_HTTPValidationError"
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error401"
+ },
+ "examples": {
+ "Unauthorized": {
+ "summary": "Error 401",
+ "value": {
+ "detail": "Incorrect authentication credentials. Please check or use a valid API Key"
+ }
+ }
}
}
}
},
- "429": {
- "description": "Rate limit reached",
+ "403": {
+ "description": "Forbidden. This Woosmap API is not enabled for this project.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Datasets_features__internal__responses__HTTPErrorModel"
- }
- }
- }
- }
- }
- }
- },
- "/datasets/{dataset_id}/import": {
- "post": {
- "tags": [
- "Datasets API"
- ],
- "summary": "Trigger Import",
- "description": "Trigger the dataset import.\n\n**Rate limit**: `1/90s`",
- "operationId": "trigger_import_datasets__dataset_id__import_post",
- "security": [
- {
- "Datasets_PrivateKeyWithWrite": []
- },
- {
- "Datasets_PrivateKeyWithWriteHeader": []
- }
- ],
- "parameters": [
- {
- "name": "dataset_id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "string",
- "format": "uuid",
- "title": "Dataset Id"
- }
- }
- ],
- "responses": {
- "202": {
- "description": "Successful Response",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_ImportResponse"
- }
- }
- }
- },
- "401": {
- "description": "Unable to locate credentials.",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
- }
- }
- }
- },
- "402": {
- "description": "Out of free quota.",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
- }
- }
- }
- },
- "403": {
- "description": "Credentials found, but not matching.",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
- }
- }
- }
- },
- "404": {
- "description": "Dataset was not found",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_features__internal__responses__HTTPErrorModel"
- }
- }
- }
- },
- "422": {
- "description": "Validation Error",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_HTTPValidationError"
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error403"
+ },
+ "examples": {
+ "Forbidden": {
+ "summary": "Error 403",
+ "value": {
+ "detail": "This Woosmap API is not enabled for this project."
+ }
+ }
}
}
}
},
"429": {
- "description": "Rate limit reached",
+ "description": "Too Many Requests. The rate limit for this endpoint has been exceeded.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Datasets_features__internal__responses__HTTPErrorModel"
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error429"
+ },
+ "examples": {
+ "Forbidden": {
+ "summary": "Error 429",
+ "value": {
+ "detail": "The rate limit for this endpoint has been exceeded"
+ }
+ }
}
}
}
}
- }
- }
- },
- "/datasets/hooks/reimport/{reimport_key}": {
- "post": {
- "tags": [
- "Datasets API"
- ],
- "summary": "Reimport Dataset Webhook",
- "description": "Triggers the reimport of the dataset linked to the dataset.\n\n**Rate limit**: `1/90s`",
- "operationId": "reimport_dataset_webhook_datasets_hooks_reimport__reimport_key__post",
- "parameters": [
+ },
+ "x-codeSamples": [
{
- "name": "reimport_key",
- "in": "path",
- "required": true,
- "schema": {
- "type": "string",
- "format": "uuid",
- "title": "Reimport Key"
- }
- }
- ],
- "responses": {
- "202": {
- "description": "Successful Response",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_ImportResponse"
- }
- }
- }
- },
- "401": {
- "description": "Unauthorized"
- },
- "402": {
- "description": "Payment Required"
- },
- "403": {
- "description": "Forbidden"
- },
- "404": {
- "description": "Dataset was not found",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_features__internal__responses__HTTPErrorModel"
- }
- }
- }
+ "lang": "curl",
+ "label": "cURL",
+ "source": "curl -L 'https://api.woosmap.com/localities/geocode?address=Place%20Jeanne-d%27Arc&components=country%3AFR&key=YOUR_PUBLIC_API_KEY' \\\n-H 'Referer: http://localhost'"
},
- "422": {
- "description": "Validation Error",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_HTTPValidationError"
- }
- }
- }
+ {
+ "lang": "javascript",
+ "label": "JavaScript",
+ "source": "const requestOptions = {\n method: \"GET\",\n redirect: \"follow\"\n};\n\nfetch(\"https://api.woosmap.com/localities/geocode?address=Place%20Jeanne-d'Arc&components=country%3AFR&key=YOUR_PUBLIC_API_KEY\", requestOptions)\n .then((response) => response.text())\n .then((result) => console.log(result))\n .catch((error) => console.error(error));"
},
- "429": {
- "description": "Rate limit reached",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_features__internal__responses__HTTPErrorModel"
- }
- }
- }
+ {
+ "lang": "python",
+ "label": "Python",
+ "source": "import requests\n\nurl = \"https://api.woosmap.com/localities/geocode?address=Place%20Jeanne-d'Arc&components=country%3AFR&key=YOUR_PUBLIC_API_KEY\"\n\npayload = {}\nheaders = {\n 'Referer': 'http://localhost'\n}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
}
- },
- "security": []
+ ]
}
},
- "/datasets/{dataset_id}/features/search/": {
- "post": {
+ "/localities/nearby": {
+ "get": {
+ "summary": "Nearby points of interest",
+ "operationId": "localitiesNearby",
+ "servers": [
+ {
+ "url": "https://api.woosmap.com"
+ }
+ ],
"tags": [
- "Datasets API"
+ "Localities API"
],
- "summary": "Search Features",
- "description": "Search for features.\n\n**Rate limit**: `20/1s`",
- "operationId": "search_features_datasets__dataset_id__features_search__post",
+ "description": "Retrieve worldwide points of interest surrounding a given location. They can be filtered by categories.\n",
"security": [
{
- "Datasets_PublicAPIKey": []
+ "Woosmap_Platform_API_Reference_PublicApiKeyAuth": [],
+ "Woosmap_Platform_API_Reference_RefererHeader": []
},
{
- "Datasets_PrivateApiKey": []
+ "Woosmap_Platform_API_Reference_PrivateApiKeyAuth": []
},
{
- "Datasets_PrivateApiKeyHeader": []
+ "Woosmap_Platform_API_Reference_PrivateApiKeyHeaderAuth": []
}
],
"parameters": [
{
- "name": "dataset_id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "string",
- "format": "uuid",
- "title": "Dataset Id"
- }
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_nearby_types"
},
{
- "name": "format",
- "in": "query",
- "required": false,
+ "name": "location",
+ "description": "Center of the search circle.\n",
"schema": {
- "enum": [
- "geojson",
- "wkb"
- ],
- "type": "string",
- "default": "geojson",
- "title": "Format"
- }
+ "type": "string"
+ },
+ "required": true,
+ "example": "40.71399,-74.00499",
+ "in": "query"
},
{
- "name": "per_page",
- "in": "query",
- "required": false,
+ "name": "radius",
+ "description": "radius of the search circle, in meter.\n",
"schema": {
"type": "integer",
- "maximum": 20,
- "minimum": 1,
- "description": "The maximum number of elements to return in a result page.",
- "default": 10,
- "title": "Per Page"
+ "default": 1000,
+ "minimum": 10,
+ "maximum": 50000
},
- "description": "The maximum number of elements to return in a result page."
+ "in": "query",
+ "required": false,
+ "example": 3000
},
{
"name": "page",
- "in": "query",
- "required": false,
+ "description": "use `page` to navigate through paginated results.\n",
"schema": {
"type": "integer",
- "minimum": 1,
- "description": "The result page to fetch.",
"default": 1,
- "title": "Page"
+ "minimum": 1
},
- "description": "The result page to fetch."
- }
- ],
- "requestBody": {
- "required": true,
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_SearchRequest"
- }
- }
- }
- },
- "responses": {
- "200": {
- "description": "Successful Response",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_SearchResultResponse"
- }
- }
- }
- },
- "401": {
- "description": "Unable to locate credentials.",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
- }
- }
- }
- },
- "402": {
- "description": "Out of free quota.",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
- }
- }
- }
- },
- "403": {
- "description": "Credentials found, but not matching.",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
- }
- }
- }
- },
- "404": {
- "description": "Dataset was not found",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_features__internal__responses__HTTPErrorModel"
- }
- }
- }
- },
- "422": {
- "description": "Validation Error",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_HTTPValidationError"
- }
- }
- }
- },
- "429": {
- "description": "Rate limit reached",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_features__internal__responses__HTTPErrorModel"
- }
- }
- }
- }
- }
- }
- },
- "/datasets/{dataset_id}/features/nearby/": {
- "post": {
- "tags": [
- "Datasets API"
- ],
- "summary": "Nearby Features",
- "description": "Search for features nearby geometry.\n\n**Rate limit**: `20/1s`",
- "operationId": "nearby_features_datasets__dataset_id__features_nearby__post",
- "security": [
- {
- "Datasets_PublicAPIKey": []
- },
- {
- "Datasets_PrivateApiKey": []
- },
- {
- "Datasets_PrivateApiKeyHeader": []
- }
- ],
- "parameters": [
- {
- "name": "dataset_id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "string",
- "format": "uuid",
- "title": "Dataset Id"
- }
- },
- {
- "name": "format",
"in": "query",
- "required": false,
- "schema": {
- "enum": [
- "geojson",
- "wkb"
- ],
- "type": "string",
- "default": "geojson",
- "title": "Format"
- }
+ "example": 7
},
{
- "name": "per_page",
- "in": "query",
- "required": false,
+ "name": "limit",
+ "description": "Defines how many results should be included in a page\n",
"schema": {
"type": "integer",
- "maximum": 20,
- "minimum": 1,
- "description": "The maximum number of elements to return in a result page.",
"default": 10,
- "title": "Per Page"
+ "minimum": 1,
+ "maximum": 30
},
- "description": "The maximum number of elements to return in a result page."
+ "in": "query",
+ "example": 15
},
{
- "name": "page",
- "in": "query",
- "required": false,
- "schema": {
- "type": "integer",
- "minimum": 1,
- "description": "The result page to fetch.",
- "default": 1,
- "title": "Page"
- },
- "description": "The result page to fetch."
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_nearby_excluded_types"
}
],
- "requestBody": {
- "required": true,
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_SearchRequestWithGeometry"
- },
- "examples": {
- "point_geojson": {
- "summary": "Request with point geojson geometry",
- "value": {
- "geometry": {
- "type": "Point",
- "coordinates": [
- 3.883,
- 43.6
- ]
- }
- }
- },
- "linestring_geojson": {
- "summary": "Request with linestring geojson geometry",
- "value": {
- "geometry": {
- "type": "LineString",
- "coordinates": [
- [
- 3.85882,
- 43.60912
- ],
- [
- 3.86276,
- 43.60807
- ],
- [
- 3.8649,
- 43.60572
- ],
- [
- 3.86513,
- 43.60412
- ],
- [
- 3.86681,
- 43.60245
- ],
- [
- 3.86822,
- 43.60093
- ],
- [
- 3.87003,
- 43.6
- ]
- ]
- }
- }
+ "responses": {
+ "200": {
+ "description": "Points of interests surrounding `location` and matching provided `types`, sorted by distance to `location`.",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_LocalitiesNearbyCollectionResponse"
},
- "polygon_geojson": {
- "summary": "Request with polygon geojson geometry, a 10 meters buffer and a where clause",
- "value": {
- "geometry": {
- "type": "Polygon",
- "coordinates": [
- [
- [
- -10,
- -10
- ],
- [
- 10,
- -10
+ "examples": {
+ "default": {
+ "summary": "Nearby points of interest with category `business.shop` around New-York center.",
+ "value": {
+ "results": [
+ {
+ "public_id": "cG9pOnVzOmJ1c2luZXNzLmZvb2RfYW5kX2RyaW5rcy5mYXN0X2Zvb2Q6ZTc2ZDA1YzBiM2M0M2NmNmVkNTJjNGQyZDFiZDE3Nzc0OTZkNjlmOA==",
+ "types": [
+ "point_of_interest",
+ "business.food_and_drinks.fast_food"
],
- [
- 10,
- 10
+ "categories": [
+ "business.food_and_drinks.fast_food"
],
- [
- -10,
- 10
+ "name": "Pret A Manger",
+ "formatted_address": "Broadway, New York",
+ "geometry": {
+ "location": {
+ "lat": 40.715905992166256,
+ "lng": -74.00508673226767
+ }
+ },
+ "address_components": [
+ {
+ "types": [
+ "country",
+ "administrative_area_level_0",
+ "division_level_0"
+ ],
+ "long_name": "United States",
+ "short_name": "US"
+ },
+ {
+ "types": [
+ "locality"
+ ],
+ "long_name": "New York",
+ "short_name": "New York"
+ },
+ {
+ "types": [
+ "route"
+ ],
+ "long_name": "Broadway",
+ "short_name": "Broadway"
+ }
+ ]
+ },
+ {
+ "public_id": "cG9pOnVzOmJ1c2luZXNzLmZvb2RfYW5kX2RyaW5rcy5mYXN0X2Zvb2Q6MzBlMGYxMzVhNGUzZDQ4MzRiMmNlNDMzMWJiYjZkOTY0MWJhN2E0Zg==",
+ "types": [
+ "point_of_interest",
+ "business.food_and_drinks.fast_food"
],
- [
- -10,
- -10
+ "categories": [
+ "business.food_and_drinks.fast_food"
+ ],
+ "name": "Dunkin'",
+ "formatted_address": "Broadway, New York",
+ "geometry": {
+ "location": {
+ "lat": 40.71602115951586,
+ "lng": -74.00494482664695
+ }
+ },
+ "address_components": [
+ {
+ "types": [
+ "country",
+ "administrative_area_level_0",
+ "division_level_0"
+ ],
+ "long_name": "United States",
+ "short_name": "US"
+ },
+ {
+ "types": [
+ "locality"
+ ],
+ "long_name": "New York",
+ "short_name": "New York"
+ },
+ {
+ "types": [
+ "route"
+ ],
+ "long_name": "Broadway",
+ "short_name": "Broadway"
+ }
]
- ]
- ]
- },
- "buffer": 10,
- "where": "cost:<500"
- }
- }
- }
- }
- }
- },
- "responses": {
- "200": {
- "description": "Successful Response",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_SearchResultResponse"
- }
- }
- }
- },
- "401": {
- "description": "Unable to locate credentials.",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
- }
- }
- }
- },
- "402": {
- "description": "Out of free quota.",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
- }
- }
- }
- },
- "403": {
- "description": "Credentials found, but not matching.",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
- }
- }
- }
- },
- "404": {
- "description": "Dataset was not found",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_features__internal__responses__HTTPErrorModel"
- }
- }
- }
- },
- "422": {
- "description": "Validation Error",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_HTTPValidationError"
- }
- }
- }
- },
- "429": {
- "description": "Rate limit reached",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_features__internal__responses__HTTPErrorModel"
- }
- }
- }
- }
- }
- }
- },
- "/datasets/{dataset_id}/features/intersects/": {
- "post": {
- "tags": [
- "Datasets API"
- ],
- "summary": "Intersect Features",
- "description": "Returns the features that are intersecting with geometry.\n\n**Rate limit**: `20/1s`\n\n",
- "operationId": "intersect_features_datasets__dataset_id__features_intersects__post",
- "security": [
- {
- "Datasets_PublicAPIKey": []
- },
- {
- "Datasets_PrivateApiKey": []
- },
- {
- "Datasets_PrivateApiKeyHeader": []
- }
- ],
- "parameters": [
- {
- "name": "dataset_id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "string",
- "format": "uuid",
- "title": "Dataset Id"
- }
- },
- {
- "name": "format",
- "in": "query",
- "required": false,
- "schema": {
- "enum": [
- "geojson",
- "wkb"
- ],
- "type": "string",
- "default": "geojson",
- "title": "Format"
- }
- },
- {
- "name": "per_page",
- "in": "query",
- "required": false,
- "schema": {
- "type": "integer",
- "maximum": 20,
- "minimum": 1,
- "description": "The maximum number of elements to return in a result page.",
- "default": 10,
- "title": "Per Page"
- },
- "description": "The maximum number of elements to return in a result page."
- },
- {
- "name": "page",
- "in": "query",
- "required": false,
- "schema": {
- "type": "integer",
- "minimum": 1,
- "description": "The result page to fetch.",
- "default": 1,
- "title": "Page"
- },
- "description": "The result page to fetch."
- }
- ],
- "requestBody": {
- "required": true,
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_SearchRequestWithGeometry"
- },
- "examples": {
- "point_geojson": {
- "summary": "Request with point geojson geometry",
- "value": {
- "geometry": {
- "type": "Point",
- "coordinates": [
- 3.883,
- 43.6
- ]
- }
- }
- },
- "linestring_geojson": {
- "summary": "Request with linestring geojson geometry",
- "value": {
- "geometry": {
- "type": "LineString",
- "coordinates": [
- [
- 3.85882,
- 43.60912
- ],
- [
- 3.86276,
- 43.60807
- ],
- [
- 3.8649,
- 43.60572
- ],
- [
- 3.86513,
- 43.60412
- ],
- [
- 3.86681,
- 43.60245
- ],
- [
- 3.86822,
- 43.60093
- ],
- [
- 3.87003,
- 43.6
- ]
- ]
- }
- }
- },
- "polygon_geojson": {
- "summary": "Request with polygon geojson geometry, a 10 meters buffer and a where clause",
- "value": {
- "geometry": {
- "type": "Polygon",
- "coordinates": [
- [
- [
- -10,
- -10
+ },
+ {
+ "public_id": "cG9pOnVzOmJ1c2luZXNzLmZvb2RfYW5kX2RyaW5rcy5yZXN0YXVyYW50OmJlMWNkMTE2ZDQwM2E0Y2YwNGQ5NWQ2OTlmZWRmM2FhZTExNGU3ZWY=",
+ "types": [
+ "point_of_interest",
+ "business.food_and_drinks.restaurant"
],
- [
- 10,
- -10
+ "categories": [
+ "business.food_and_drinks.restaurant"
],
- [
- 10,
- 10
+ "name": "Chambers",
+ "formatted_address": "Chambers Street, New York",
+ "geometry": {
+ "location": {
+ "lat": 40.71461844801976,
+ "lng": -74.00754036678366
+ }
+ },
+ "address_components": [
+ {
+ "types": [
+ "country",
+ "administrative_area_level_0",
+ "division_level_0"
+ ],
+ "long_name": "United States",
+ "short_name": "US"
+ },
+ {
+ "types": [
+ "locality"
+ ],
+ "long_name": "New York",
+ "short_name": "New York"
+ },
+ {
+ "types": [
+ "route"
+ ],
+ "long_name": "Chambers Street",
+ "short_name": "Chambers Street"
+ }
+ ]
+ },
+ {
+ "public_id": "cG9pOnVzOmJ1c2luZXNzLnNob3AuZ3JvY2VyeTo1YTczMjYxOTQyYjVlZmUwOGEzZjQ1NGZmMTMwMmJjNjA4ODE3NmRk",
+ "types": [
+ "point_of_interest",
+ "business.shop.grocery"
],
- [
- -10,
- 10
+ "categories": [
+ "business.shop.grocery"
],
- [
- -10,
- -10
+ "name": "City Hall Oasis",
+ "geometry": {
+ "location": {
+ "lat": 40.71283012706819,
+ "lng": -74.00727837935057
+ },
+ "viewport": {
+ "northeast": {
+ "lat": 40.71286059528623,
+ "lng": -74.00724213866874
+ },
+ "southwest": {
+ "lat": 40.71279957503111,
+ "lng": -74.00731464213119
+ }
+ }
+ },
+ "address_components": [
+ {
+ "types": [
+ "country",
+ "administrative_area_level_0",
+ "division_level_0"
+ ],
+ "long_name": "United States",
+ "short_name": "US"
+ }
]
- ]
- ]
- },
- "buffer": 10,
- "where": "cost:<500"
- }
- }
- }
- }
- }
- },
- "responses": {
- "200": {
- "description": "Successful Response",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_SearchResultResponse"
- }
- }
- }
- },
- "401": {
- "description": "Unable to locate credentials.",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
- }
- }
- }
- },
- "402": {
- "description": "Out of free quota.",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
- }
- }
- }
- },
- "403": {
- "description": "Credentials found, but not matching.",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
- }
- }
- }
- },
- "404": {
- "description": "Dataset was not found",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_features__internal__responses__HTTPErrorModel"
- }
- }
- }
- },
- "422": {
- "description": "Validation Error",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_HTTPValidationError"
- }
- }
- }
- },
- "429": {
- "description": "Rate limit reached",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_features__internal__responses__HTTPErrorModel"
- }
- }
- }
- }
- }
- }
- },
- "/datasets/{dataset_id}/features/contains/": {
- "post": {
- "tags": [
- "Datasets API"
- ],
- "summary": "Contains Features",
- "description": "Search for features containing geometry.\n\n**Rate limit**: `20/1s`\n\n",
- "operationId": "contains_features_datasets__dataset_id__features_contains__post",
- "security": [
- {
- "Datasets_PublicAPIKey": []
- },
- {
- "Datasets_PrivateApiKey": []
- },
- {
- "Datasets_PrivateApiKeyHeader": []
- }
- ],
- "parameters": [
- {
- "name": "dataset_id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "string",
- "format": "uuid",
- "title": "Dataset Id"
- }
- },
- {
- "name": "format",
- "in": "query",
- "required": false,
- "schema": {
- "enum": [
- "geojson",
- "wkb"
- ],
- "type": "string",
- "default": "geojson",
- "title": "Format"
- }
- },
- {
- "name": "per_page",
- "in": "query",
- "required": false,
- "schema": {
- "type": "integer",
- "maximum": 20,
- "minimum": 1,
- "description": "The maximum number of elements to return in a result page.",
- "default": 10,
- "title": "Per Page"
- },
- "description": "The maximum number of elements to return in a result page."
- },
- {
- "name": "page",
- "in": "query",
- "required": false,
- "schema": {
- "type": "integer",
- "minimum": 1,
- "description": "The result page to fetch.",
- "default": 1,
- "title": "Page"
- },
- "description": "The result page to fetch."
- }
- ],
- "requestBody": {
- "required": true,
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_SearchRequestWithGeometry"
- },
- "examples": {
- "point_geojson": {
- "summary": "Request with point geojson geometry",
- "value": {
- "geometry": {
- "type": "Point",
- "coordinates": [
- 3.883,
- 43.6
- ]
- }
- }
- },
- "linestring_geojson": {
- "summary": "Request with linestring geojson geometry",
- "value": {
- "geometry": {
- "type": "LineString",
- "coordinates": [
- [
- 3.85882,
- 43.60912
- ],
- [
- 3.86276,
- 43.60807
- ],
- [
- 3.8649,
- 43.60572
- ],
- [
- 3.86513,
- 43.60412
- ],
- [
- 3.86681,
- 43.60245
- ],
- [
- 3.86822,
- 43.60093
- ],
- [
- 3.87003,
- 43.6
- ]
- ]
- }
- }
- },
- "polygon_geojson": {
- "summary": "Request with polygon geojson geometry, a 10 meters buffer and a where clause",
- "value": {
- "geometry": {
- "type": "Polygon",
- "coordinates": [
- [
- [
- -10,
- -10
+ },
+ {
+ "public_id": "cG9pOnVzOmJ1c2luZXNzLmZpbmFuY2UuYmFuazpiOGY5MDE4Nzc2ZDZjNmEwZTljOGM4YWM0OTAxZWZlNzNmODZkM2M3",
+ "types": [
+ "point_of_interest",
+ "business.finance.bank"
],
- [
- 10,
- -10
+ "categories": [
+ "business.finance.bank"
],
- [
- 10,
- 10
+ "name": "Citibank",
+ "formatted_address": "Broadway, New York",
+ "geometry": {
+ "location": {
+ "lat": 40.7130414767567,
+ "lng": -74.0074818610995
+ }
+ },
+ "address_components": [
+ {
+ "types": [
+ "country",
+ "administrative_area_level_0",
+ "division_level_0"
+ ],
+ "long_name": "United States",
+ "short_name": "US"
+ },
+ {
+ "types": [
+ "locality"
+ ],
+ "long_name": "New York",
+ "short_name": "New York"
+ },
+ {
+ "types": [
+ "route"
+ ],
+ "long_name": "Broadway",
+ "short_name": "Broadway"
+ }
+ ]
+ },
+ {
+ "public_id": "cG9pOnVzOmJ1c2luZXNzLmZvb2RfYW5kX2RyaW5rcy5yZXN0YXVyYW50OmQzMTMzZTJkODdiOGJjMGE3ZjI2YTdiMWVjYTZlZmI1MjQyYWE3MTE=",
+ "types": [
+ "point_of_interest",
+ "business.food_and_drinks.restaurant"
],
- [
- -10,
- 10
+ "categories": [
+ "business.food_and_drinks.restaurant"
],
- [
- -10,
- -10
+ "name": "Saffron",
+ "geometry": {
+ "location": {
+ "lat": 40.71467049963849,
+ "lng": -74.00767187884445
+ }
+ },
+ "address_components": [
+ {
+ "types": [
+ "country",
+ "administrative_area_level_0",
+ "division_level_0"
+ ],
+ "long_name": "United States",
+ "short_name": "US"
+ }
]
- ]
- ]
- },
- "buffer": 10,
- "where": "cost:<500"
+ },
+ {
+ "public_id": "cG9pOnVzOmJ1c2luZXNzLmZvb2RfYW5kX2RyaW5rcy5yZXN0YXVyYW50OmQ1NjMyN2RiM2EyNWJlYmIwNjJjZjNlYWYwMDE3ZDIyYzEyNWNlMjY=",
+ "types": [
+ "point_of_interest",
+ "business.food_and_drinks.restaurant"
+ ],
+ "categories": [
+ "business.food_and_drinks.restaurant"
+ ],
+ "name": "Gran Morsi",
+ "geometry": {
+ "location": {
+ "lat": 40.71432885326513,
+ "lng": -74.00778746528921
+ }
+ },
+ "address_components": [
+ {
+ "types": [
+ "country",
+ "administrative_area_level_0",
+ "division_level_0"
+ ],
+ "long_name": "United States",
+ "short_name": "US"
+ }
+ ]
+ },
+ {
+ "public_id": "cG9pOnVzOmJ1c2luZXNzLmZvb2RfYW5kX2RyaW5rcy5iYXI6MDE5ZGUzNTdiZDkyNzAyZDM4ZDUyOWQ0YmJiZjBmODQ5YWEzZmY1NA==",
+ "types": [
+ "point_of_interest",
+ "business.food_and_drinks.bar"
+ ],
+ "categories": [
+ "business.food_and_drinks.bar"
+ ],
+ "name": "Bon Courage",
+ "formatted_address": "Reade Street, New York",
+ "geometry": {
+ "location": {
+ "lat": 40.71541472882126,
+ "lng": -74.00719193106873
+ }
+ },
+ "address_components": [
+ {
+ "types": [
+ "country",
+ "administrative_area_level_0",
+ "division_level_0"
+ ],
+ "long_name": "United States",
+ "short_name": "US"
+ },
+ {
+ "types": [
+ "locality"
+ ],
+ "long_name": "New York",
+ "short_name": "New York"
+ },
+ {
+ "types": [
+ "route"
+ ],
+ "long_name": "Reade Street",
+ "short_name": "Reade Street"
+ }
+ ]
+ },
+ {
+ "public_id": "cG9pOnVzOmJ1c2luZXNzLmZvb2RfYW5kX2RyaW5rcy5mYXN0X2Zvb2Q6OGIyNDY5MDM4M2JhYzE1NmY4OGRiMGQzYmIyYzNjMTVmOTk0NDQwZQ==",
+ "types": [
+ "point_of_interest",
+ "business.food_and_drinks.fast_food"
+ ],
+ "categories": [
+ "business.food_and_drinks.fast_food"
+ ],
+ "name": "Burger King",
+ "formatted_address": "Broadway, New York",
+ "geometry": {
+ "location": {
+ "lat": 40.71619516782573,
+ "lng": -74.00480635760651
+ }
+ },
+ "address_components": [
+ {
+ "types": [
+ "country",
+ "administrative_area_level_0",
+ "division_level_0"
+ ],
+ "long_name": "United States",
+ "short_name": "US"
+ },
+ {
+ "types": [
+ "locality"
+ ],
+ "long_name": "New York",
+ "short_name": "New York"
+ },
+ {
+ "types": [
+ "route"
+ ],
+ "long_name": "Broadway",
+ "short_name": "Broadway"
+ }
+ ]
+ },
+ {
+ "public_id": "cG9pOnVzOmJ1c2luZXNzLnRoZWF0cmU6MTU1Yjk5YmEwY2FiYzIzZjYxYWYyYTViYzI0ZDViYTVlNmVmZTAwNA==",
+ "types": [
+ "point_of_interest",
+ "business.theatre"
+ ],
+ "categories": [
+ "business.theatre"
+ ],
+ "name": "The Flea",
+ "formatted_address": "Thomas Street, New York",
+ "geometry": {
+ "location": {
+ "lat": 40.71609349534023,
+ "lng": -74.00589281989586
+ }
+ },
+ "address_components": [
+ {
+ "types": [
+ "country",
+ "administrative_area_level_0",
+ "division_level_0"
+ ],
+ "long_name": "United States",
+ "short_name": "US"
+ },
+ {
+ "types": [
+ "locality"
+ ],
+ "long_name": "New York",
+ "short_name": "New York"
+ },
+ {
+ "types": [
+ "route"
+ ],
+ "long_name": "Thomas Street",
+ "short_name": "Thomas Street"
+ }
+ ]
+ }
+ ],
+ "pagination": {
+ "previous_page": 2,
+ "next_page": 4
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "401": {
+ "description": "Unauthorized. Incorrect authentication credentials.",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error401"
+ },
+ "examples": {
+ "Unauthorized": {
+ "summary": "Error 401",
+ "value": {
+ "detail": "Incorrect authentication credentials. Please check or use a valid API Key"
+ }
+ }
+ }
+ }
+ }
+ },
+ "403": {
+ "description": "Forbidden. This Woosmap API is not enabled for this project.",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error403"
+ },
+ "examples": {
+ "Forbidden": {
+ "summary": "Error 403",
+ "value": {
+ "detail": "This Woosmap API is not enabled for this project."
+ }
+ }
+ }
+ }
+ }
+ },
+ "429": {
+ "description": "Too Many Requests. The rate limit for this endpoint has been exceeded.",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error429"
+ },
+ "examples": {
+ "Forbidden": {
+ "summary": "Error 429",
+ "value": {
+ "detail": "The rate limit for this endpoint has been exceeded"
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "x-codeSamples": [
+ {
+ "lang": "curl",
+ "label": "cURL",
+ "source": "curl -L 'https://api.woosmap.com/localities/nearby?types=business&location=40.71399%2C-74.00499&page=3&key=YOUR_PUBLIC_API_KEY' \\\n-H 'Referer: http://localhost'"
+ },
+ {
+ "lang": "javascript",
+ "label": "JavaScript",
+ "source": "const requestOptions = {\n method: \"GET\",\n redirect: \"follow\"\n};\n\nfetch(\"https://api.woosmap.com/localities/nearby?types=business&location=40.71399%2C-74.00499&page=3&key=YOUR_PUBLIC_API_KEY\", requestOptions)\n .then((response) => response.text())\n .then((result) => console.log(result))\n .catch((error) => console.error(error));"
+ },
+ {
+ "lang": "python",
+ "label": "Python",
+ "source": "import requests\n\nurl = \"https://api.woosmap.com/localities/nearby?types=business&location=40.71399%2C-74.00499&page=3&key=YOUR_PUBLIC_API_KEY\"\n\npayload = {}\nheaders = {\n 'Referer': 'http://localhost'\n}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
+ }
+ ]
+ }
+ },
+ "/maps/static": {
+ "get": {
+ "tags": [
+ "Static Map API"
+ ],
+ "summary": "Get Static Map",
+ "description": "Retrieve a static map\n\n**Rate limit**: `20/1s`",
+ "operationId": "get_static_map_maps_static_get",
+ "security": [
+ {
+ "Maps_PublicAPIKey": []
+ },
+ {
+ "Maps_PrivateApiKey": []
+ },
+ {
+ "Maps_PrivateApiKeyHeader": []
+ }
+ ],
+ "parameters": [
+ {
+ "name": "language",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "title": "Language"
+ }
+ },
+ {
+ "name": "lat",
+ "in": "query",
+ "required": true,
+ "schema": {
+ "type": "number",
+ "title": "Lat"
+ },
+ "example": "43.6"
+ },
+ {
+ "name": "lng",
+ "in": "query",
+ "required": true,
+ "schema": {
+ "type": "number",
+ "title": "Lng"
+ },
+ "example": "3.883"
+ },
+ {
+ "name": "zoom",
+ "in": "query",
+ "required": true,
+ "schema": {
+ "type": "number",
+ "maximum": 24,
+ "minimum": 0,
+ "description": "The zoom",
+ "title": "Zoom"
+ },
+ "description": "The zoom",
+ "example": 11
+ },
+ {
+ "name": "width",
+ "in": "query",
+ "required": true,
+ "schema": {
+ "type": "integer",
+ "maximum": 640,
+ "minimum": 40,
+ "title": "Width"
+ },
+ "example": 400
+ },
+ {
+ "name": "height",
+ "in": "query",
+ "required": true,
+ "schema": {
+ "type": "integer",
+ "maximum": 640,
+ "minimum": 40,
+ "title": "Height"
+ },
+ "example": 400
+ },
+ {
+ "name": "markers",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "type": "array",
+ "items": {
+ "type": "string",
+ "contentMediaType": "application/json",
+ "contentSchema": {
+ "$ref": "#/components/schemas/Maps_MarkerWithUrlOptions"
+ }
+ },
+ "description": "Adds a marker.\n \nThe images are by default are considered to be non retina images (pixel resolution=1)\n\nIf the image name contains @2x or the query parameter retina=yes are found in the marker url the image will be considered to be retina (pixel resolution=2).\n\n> Note: the image size in bytes cannot exceed 65535 bytes.\n \n ",
+ "title": "Markers"
+ },
+ "description": "Adds a marker.\n \nThe images are by default are considered to be non retina images (pixel resolution=1)\n\nIf the image name contains @2x or the query parameter retina=yes are found in the marker url the image will be considered to be retina (pixel resolution=2).\n\n> Note: the image size in bytes cannot exceed 65535 bytes.\n \n ",
+ "example": "{\"lat\": 43.6, \"lng\": 3.883, \"url\": \"https://webapp.woosmap.com/img/geolocated_marker.png?retina=yes\"}"
+ },
+ {
+ "name": "polylines",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "type": "array",
+ "items": {
+ "type": "string",
+ "contentMediaType": "application/json",
+ "contentSchema": {
+ "$ref": "#/components/schemas/Maps_PolylineOptions"
+ }
+ },
+ "description": "Add a polyline.\n \n> Note: enc should be a google encoded polyline see [Google-encoded polyline](https://developers.google.com/maps/documentation/utilities/polylinealgorithm) for more information\n\n ",
+ "title": "Polylines"
+ },
+ "description": "Add a polyline.\n \n> Note: enc should be a google encoded polyline see [Google-encoded polyline](https://developers.google.com/maps/documentation/utilities/polylinealgorithm) for more information\n\n ",
+ "example": "{\"enc\": \"ydjiG_}jVjn@cjAf`AycBnc@mqCp\\\\ewBrQmlBzrAeuCreBw_C\", \"color\": \"magenta\", \"weight\": 4}"
+ },
+ {
+ "name": "polygons",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "type": "array",
+ "items": {
+ "type": "string",
+ "contentMediaType": "application/json",
+ "contentSchema": {
+ "$ref": "#/components/schemas/Maps_PolygonOptions"
+ }
+ },
+ "description": "Adds a polygon.\n \n> Note: shape should be a google encoded polyline see [Google-encoded polyline](https://developers.google.com/maps/documentation/utilities/polylinealgorithm) for more information\n ",
+ "title": "Polygons"
+ },
+ "description": "Adds a polygon.\n \n> Note: shape should be a google encoded polyline see [Google-encoded polyline](https://developers.google.com/maps/documentation/utilities/polylinealgorithm) for more information\n ",
+ "example": "{\"shape\": \"ymgiGm|rV~uAtaB|dAefCqeBwuFu~@njC??\", \"fill_color\": \"rgba(255, 20, 147, 0.5)\", \"color\": \"rgba(199, 21, 133, 0.7)\"}"
+ },
+ {
+ "name": "stylers",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "anyOf": [
+ {
+ "type": "string",
+ "contentMediaType": "application/json",
+ "contentSchema": {
+ "type": "array",
+ "items": {
+ "$ref": "#/components/schemas/Maps_MapStyle"
+ }
+ }
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "title": "Stylers"
+ },
+ "example": "[{\"featureType\": \"points_of_interest.business\", \"stylers\":[{\"visibility\": \"off\"}]}]"
+ },
+ {
+ "name": "retina",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "type": "boolean",
+ "default": false,
+ "title": "Retina"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Successful Response",
+ "content": {
+ "image/webp": {
+ "schema": {
+ "type": "string",
+ "format": "binary"
+ }
+ }
+ }
+ },
+ "401": {
+ "description": "Unable to locate credentials.",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Maps_AuthenticationErrorResponse"
+ }
+ }
+ }
+ },
+ "402": {
+ "description": "Out of free quota.",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Maps_AuthenticationErrorResponse"
+ }
+ }
+ }
+ },
+ "403": {
+ "description": "Credentials found, but not matching.",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Maps_AuthenticationErrorResponse"
+ }
+ }
+ }
+ },
+ "422": {
+ "description": "Validation Error",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Maps_HTTPValidationError"
+ }
+ }
+ }
+ },
+ "429": {
+ "description": "Rate limit reached",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Maps_HTTPErrorModel"
+ }
+ }
+ }
+ }
+ },
+ "x-original-tag": "static"
+ }
+ },
+ "/stores/search": {
+ "get": {
+ "summary": "Search for assets",
+ "operationId": "storeSearch",
+ "servers": [
+ {
+ "url": "https://api.woosmap.com"
+ }
+ ],
+ "tags": [
+ "Store Search API"
+ ],
+ "description": "Used to retrieve assets from query.\n",
+ "security": [
+ {
+ "Woosmap_Platform_API_Reference_PublicApiKeyAuth": [],
+ "Woosmap_Platform_API_Reference_RefererHeader": []
+ },
+ {
+ "Woosmap_Platform_API_Reference_PrivateApiKeyAuth": []
+ },
+ {
+ "Woosmap_Platform_API_Reference_PrivateApiKeyHeaderAuth": []
+ }
+ ],
+ "parameters": [
+ {
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_query"
+ },
+ {
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_lat"
+ },
+ {
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_lng"
+ },
+ {
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_radius"
+ },
+ {
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_encoded_polyline"
+ },
+ {
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_stores_by_page"
+ },
+ {
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_page"
+ },
+ {
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_zone"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Assets successfully retrieved",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_AssetFeatureCollectionResponse"
+ },
+ "examples": {
+ "default": {
+ "summary": "Search stores nearby a latlng and given a radius",
+ "value": {
+ "type": "FeatureCollection",
+ "features": [
+ {
+ "type": "Feature",
+ "properties": {
+ "store_id": "2354",
+ "name": "Berkeley Street/Berkeley Square",
+ "contact": {
+ "phone": "02076295779",
+ "website": "https://www.starbucks.com/store-locator/store/2354/berkeley-street-berkeley-square-27-berkeley-st-berkeley-square-london-eng-w-1-x-5-"
+ },
+ "address": {
+ "lines": [
+ "27 Berkeley St",
+ "London, ENG W1X 5AD"
+ ],
+ "country_code": "GB",
+ "city": "London",
+ "zipcode": "W1X 5AD"
+ },
+ "user_properties": {
+ "take_away": "available"
+ },
+ "tags": [
+ "WA",
+ "WF",
+ "CD",
+ "DR",
+ "XO"
+ ],
+ "types": [
+ "Coffee shop"
+ ],
+ "last_updated": "2022-11-10T13:23:53.564829+00:00",
+ "distance": 135.28682936,
+ "open": {
+ "open_now": true,
+ "open_hours": [
+ {
+ "end": "18:00",
+ "start": "06:30"
+ }
+ ],
+ "week_day": 2,
+ "current_slice": {
+ "end": "18:00",
+ "start": "06:30"
+ }
+ },
+ "weekly_opening": {
+ "1": {
+ "hours": [
+ {
+ "end": "18:00",
+ "start": "06:30"
+ }
+ ],
+ "isSpecial": false
+ },
+ "2": {
+ "hours": [
+ {
+ "end": "18:00",
+ "start": "06:30"
+ }
+ ],
+ "isSpecial": false
+ },
+ "3": {
+ "hours": [
+ {
+ "end": "18:00",
+ "start": "06:30"
+ }
+ ],
+ "isSpecial": false
+ },
+ "4": {
+ "hours": [
+ {
+ "end": "18:00",
+ "start": "06:30"
+ }
+ ],
+ "isSpecial": false
+ },
+ "5": {
+ "hours": [
+ {
+ "end": "18:00",
+ "start": "06:30"
+ }
+ ],
+ "isSpecial": false
+ },
+ "6": {
+ "hours": [
+ {
+ "end": "17:00",
+ "start": "08:00"
+ }
+ ],
+ "isSpecial": false
+ },
+ "7": {
+ "hours": [
+ {
+ "end": "17:00",
+ "start": "08:00"
+ }
+ ],
+ "isSpecial": false
+ },
+ "timezone": "Europe/London"
+ },
+ "opening_hours": {
+ "usual": {
+ "1": [
+ {
+ "end": "18:00",
+ "start": "06:30"
+ }
+ ],
+ "2": [
+ {
+ "end": "18:00",
+ "start": "06:30"
+ }
+ ],
+ "3": [
+ {
+ "end": "18:00",
+ "start": "06:30"
+ }
+ ],
+ "4": [
+ {
+ "end": "18:00",
+ "start": "06:30"
+ }
+ ],
+ "5": [
+ {
+ "end": "18:00",
+ "start": "06:30"
+ }
+ ],
+ "6": [
+ {
+ "end": "17:00",
+ "start": "08:00"
+ }
+ ],
+ "7": [
+ {
+ "end": "17:00",
+ "start": "08:00"
+ }
+ ]
+ },
+ "special": {},
+ "timezone": "Europe/London"
+ }
+ },
+ "geometry": {
+ "type": "Point",
+ "coordinates": [
+ -0.14408,
+ 51.5088
+ ]
+ }
+ }
+ ],
+ "pagination": {
+ "page": 1,
+ "pageCount": 1
+ }
+ }
}
}
}
}
- }
- },
- "responses": {
- "200": {
- "description": "Successful Response",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_SearchResultResponse"
- }
- }
- }
},
"401": {
- "description": "Unable to locate credentials.",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
- }
- }
- }
- },
- "402": {
- "description": "Out of free quota.",
+ "description": "Unauthorized. Incorrect authentication credentials.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error401"
+ },
+ "examples": {
+ "Unauthorized": {
+ "summary": "Error 401",
+ "value": {
+ "detail": "Incorrect authentication credentials. Please check or use a valid API Key"
+ }
+ }
}
}
}
},
"403": {
- "description": "Credentials found, but not matching.",
+ "description": "Forbidden. This Woosmap API is not enabled for this project.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error403"
+ },
+ "examples": {
+ "Forbidden": {
+ "summary": "Error 403",
+ "value": {
+ "detail": "This Woosmap API is not enabled for this project."
+ }
+ }
}
}
}
},
- "404": {
- "description": "Dataset was not found",
+ "429": {
+ "description": "Too Many Requests. The rate limit for this endpoint has been exceeded.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Datasets_features__internal__responses__HTTPErrorModel"
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error429"
+ },
+ "examples": {
+ "Forbidden": {
+ "summary": "Error 429",
+ "value": {
+ "detail": "The rate limit for this endpoint has been exceeded"
+ }
+ }
}
}
}
+ }
+ },
+ "x-codeSamples": [
+ {
+ "lang": "curl",
+ "label": "cURL",
+ "source": "curl -L 'https://api.woosmap.com/stores/search/?lat=51.50976&lng=-0.145276&radius=300&key=YOUR_PUBLIC_API_KEY' \\\n-H 'Referer: http://localhost'"
},
- "422": {
- "description": "Validation Error",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_HTTPValidationError"
- }
- }
- }
+ {
+ "lang": "javascript",
+ "label": "JavaScript",
+ "source": "const requestOptions = {\n method: \"GET\",\n redirect: \"follow\"\n};\n\nfetch(\"https://api.woosmap.com/stores/search/?lat=51.50976&lng=-0.145276&radius=300&key=YOUR_PUBLIC_API_KEY\", requestOptions)\n .then((response) => response.text())\n .then((result) => console.log(result))\n .catch((error) => console.error(error));"
},
- "429": {
- "description": "Rate limit reached",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_features__internal__responses__HTTPErrorModel"
- }
- }
- }
+ {
+ "lang": "python",
+ "label": "Python",
+ "source": "import requests\n\nurl = \"https://api.woosmap.com/stores/search/?lat=51.50976&lng=-0.145276&radius=300&key=YOUR_PUBLIC_API_KEY\"\n\npayload = {}\nheaders = {\n 'Referer': 'http://localhost'\n}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
}
- }
+ ]
}
},
- "/datasets/{dataset_id}/features/within/": {
- "post": {
+ "/stores/autocomplete": {
+ "get": {
+ "summary": "Autocomplete for assets",
+ "operationId": "storeAutocomplete",
+ "servers": [
+ {
+ "url": "https://api.woosmap.com"
+ }
+ ],
"tags": [
- "Datasets API"
+ "Store Search API"
],
- "summary": "Within Features",
- "description": "Search for features within geometry.\n\n**Rate limit**: `20/1s`\n\n",
- "operationId": "within_features_datasets__dataset_id__features_within__post",
+ "description": "Autocomplete on `localizedNames` with highlighted results on asset name. Use the field `localized` in your query parameter to search for localized names.\n",
"security": [
{
- "Datasets_PublicAPIKey": []
+ "Woosmap_Platform_API_Reference_PublicApiKeyAuth": [],
+ "Woosmap_Platform_API_Reference_RefererHeader": []
},
{
- "Datasets_PrivateApiKey": []
+ "Woosmap_Platform_API_Reference_PrivateApiKeyAuth": []
},
{
- "Datasets_PrivateApiKeyHeader": []
+ "Woosmap_Platform_API_Reference_PrivateApiKeyHeaderAuth": []
}
],
"parameters": [
{
- "name": "dataset_id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "string",
- "format": "uuid",
- "title": "Dataset Id"
- }
- },
- {
- "name": "format",
- "in": "query",
- "required": false,
- "schema": {
- "enum": [
- "geojson",
- "wkb"
- ],
- "type": "string",
- "default": "geojson",
- "title": "Format"
- }
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_query"
},
{
- "name": "per_page",
- "in": "query",
- "required": false,
- "schema": {
- "type": "integer",
- "maximum": 20,
- "minimum": 1,
- "description": "The maximum number of elements to return in a result page.",
- "default": 10,
- "title": "Per Page"
- },
- "description": "The maximum number of elements to return in a result page."
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_language"
},
{
- "name": "page",
- "in": "query",
- "required": false,
- "schema": {
- "type": "integer",
- "minimum": 1,
- "description": "The result page to fetch.",
- "default": 1,
- "title": "Page"
- },
- "description": "The result page to fetch."
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_limit-2"
}
],
- "requestBody": {
- "required": true,
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_SearchRequestWithPolygonGeometry"
- },
- "examples": {
- "polygon_geojson": {
- "summary": "An with polygon geojson geometry, a 10 meters buffer and a where clause",
- "value": {
- "geometry": {
- "type": "Polygon",
- "coordinates": [
- [
- [
- -10,
- -10
+ "responses": {
+ "200": {
+ "description": "Assets Successfully Replaced",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_AssetAutocompleteResponse"
+ },
+ "examples": {
+ "default": {
+ "summary": "Autocomplete on stores in localized names nearby a latlng and specifying a radius",
+ "value": {
+ "predictions": [
+ {
+ "store_id": "2670",
+ "name": "Sun Street",
+ "types": [
+ "Coffee shop"
],
- [
- 10,
- -10
+ "matched_substrings": [
+ {
+ "offset": 4,
+ "length": 6
+ }
],
- [
- 10,
- 10
+ "highlighted": "Sun Street"
+ },
+ {
+ "store_id": "16069",
+ "name": "7th Street",
+ "types": [
+ "Coffee shop"
],
- [
- -10,
- 10
+ "matched_substrings": [
+ {
+ "offset": 4,
+ "length": 6
+ }
],
- [
- -10,
- -10
- ]
- ]
+ "highlighted": "7th Street"
+ },
+ {
+ "store_id": "1013873",
+ "name": "The Street",
+ "types": [
+ "Coffee shop"
+ ],
+ "matched_substrings": [
+ {
+ "offset": 4,
+ "length": 6
+ }
+ ],
+ "highlighted": "The Street"
+ }
]
- },
- "buffer": 10,
- "where": "cost:<500"
+ }
}
}
}
}
- }
- },
- "responses": {
- "200": {
- "description": "Successful Response",
+ },
+ "401": {
+ "description": "Unauthorized. Incorrect authentication credentials.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Datasets_SearchResultResponse"
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error401"
+ },
+ "examples": {
+ "Unauthorized": {
+ "summary": "Error 401",
+ "value": {
+ "detail": "Incorrect authentication credentials. Please check or use a valid API Key"
+ }
+ }
}
}
}
},
- "401": {
- "description": "Unable to locate credentials.",
+ "403": {
+ "description": "Forbidden. This Woosmap API is not enabled for this project.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error403"
+ },
+ "examples": {
+ "Forbidden": {
+ "summary": "Error 403",
+ "value": {
+ "detail": "This Woosmap API is not enabled for this project."
+ }
+ }
}
}
}
},
- "402": {
- "description": "Out of free quota.",
+ "429": {
+ "description": "Too Many Requests. The rate limit for this endpoint has been exceeded.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error429"
+ },
+ "examples": {
+ "Forbidden": {
+ "summary": "Error 429",
+ "value": {
+ "detail": "The rate limit for this endpoint has been exceeded"
+ }
+ }
}
}
}
+ }
+ },
+ "x-codeSamples": [
+ {
+ "lang": "curl",
+ "label": "cURL",
+ "source": "curl -L 'https://api.woosmap.com/stores/autocomplete/?language=en&query=localized%3Astreet&limit=3&key=YOUR_PUBLIC_API_KEY' \\\n-H 'Referer: http://localhost'"
},
- "403": {
- "description": "Credentials found, but not matching.",
+ {
+ "lang": "javascript",
+ "label": "JavaScript",
+ "source": "const requestOptions = {\n method: \"GET\",\n redirect: \"follow\"\n};\n\nfetch(\"https://api.woosmap.com/stores/autocomplete/?language=en&query=localized%3Astreet&limit=3&key=YOUR_PUBLIC_API_KEY\", requestOptions)\n .then((response) => response.text())\n .then((result) => console.log(result))\n .catch((error) => console.error(error));"
+ },
+ {
+ "lang": "python",
+ "label": "Python",
+ "source": "import requests\n\nurl = \"https://api.woosmap.com/stores/autocomplete/?language=en&query=localized%3Astreet&limit=3&key=YOUR_PUBLIC_API_KEY\"\n\npayload = {}\nheaders = {\n 'Referer': 'http://localhost'\n}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
+ }
+ ]
+ }
+ },
+ "/stores/search/bounds": {
+ "get": {
+ "summary": "Bounds for assets",
+ "operationId": "storesBounds",
+ "servers": [
+ {
+ "url": "https://api.woosmap.com"
+ }
+ ],
+ "tags": [
+ "Store Search API"
+ ],
+ "description": "Used to retrieve Bounds for assets.\n",
+ "security": [
+ {
+ "Woosmap_Platform_API_Reference_PublicApiKeyAuth": [],
+ "Woosmap_Platform_API_Reference_RefererHeader": []
+ },
+ {
+ "Woosmap_Platform_API_Reference_PrivateApiKeyAuth": []
+ }
+ ],
+ "parameters": [
+ {
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_query"
+ },
+ {
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_lat"
+ },
+ {
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_lng"
+ },
+ {
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_radius"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Bounds successfully retrieved",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_BoundsResponse"
+ },
+ "examples": {
+ "default": {
+ "summary": "Retrieve Bounds nearby a latlng and given a radius",
+ "value": {
+ "bounds": {
+ "west": -0.14408,
+ "south": 51.5088,
+ "east": -0.14408,
+ "north": 51.5088
+ }
+ }
+ }
}
}
}
},
- "404": {
- "description": "Dataset was not found",
+ "401": {
+ "description": "Unauthorized. Incorrect authentication credentials.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Datasets_features__internal__responses__HTTPErrorModel"
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error401"
+ },
+ "examples": {
+ "Unauthorized": {
+ "summary": "Error 401",
+ "value": {
+ "detail": "Incorrect authentication credentials. Please check or use a valid API Key"
+ }
+ }
}
}
}
},
- "422": {
- "description": "Validation Error",
+ "403": {
+ "description": "Forbidden. This Woosmap API is not enabled for this project.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Datasets_HTTPValidationError"
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error403"
+ },
+ "examples": {
+ "Forbidden": {
+ "summary": "Error 403",
+ "value": {
+ "detail": "This Woosmap API is not enabled for this project."
+ }
+ }
}
}
}
},
"429": {
- "description": "Rate limit reached",
+ "description": "Too Many Requests. The rate limit for this endpoint has been exceeded.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Datasets_features__internal__responses__HTTPErrorModel"
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error429"
+ },
+ "examples": {
+ "Forbidden": {
+ "summary": "Error 429",
+ "value": {
+ "detail": "The rate limit for this endpoint has been exceeded"
+ }
+ }
}
}
}
}
- }
+ },
+ "x-codeSamples": [
+ {
+ "lang": "curl",
+ "label": "cURL",
+ "source": "curl -L 'https://api.woosmap.com/stores/search/bounds?lat=51.50976&lng=-0.145276&radius=300&key=YOUR_PUBLIC_API_KEY' \\\n-H 'Referer: http://localhost'"
+ },
+ {
+ "lang": "javascript",
+ "label": "JavaScript",
+ "source": "const requestOptions = {\n method: \"GET\",\n redirect: \"follow\"\n};\n\nfetch(\"https://api.woosmap.com/stores/search/bounds?lat=51.50976&lng=-0.145276&radius=300&key=YOUR_PUBLIC_API_KEY\", requestOptions)\n .then((response) => response.text())\n .then((result) => console.log(result))\n .catch((error) => console.error(error));"
+ },
+ {
+ "lang": "python",
+ "label": "Python",
+ "source": "import requests\n\nurl = \"https://api.woosmap.com/stores/search/bounds?lat=51.50976&lng=-0.145276&radius=300&key=YOUR_PUBLIC_API_KEY\"\n\npayload = {}\nheaders = {\n 'Referer': 'http://localhost'\n}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
+ }
+ ]
}
},
- "/datasets/{dataset_id}/features/{feature_id}": {
+ "/transit/route": {
"get": {
"tags": [
- "Datasets API"
+ "Transit API"
],
- "summary": "Get Feature",
- "description": "Gets a feature from its ID.\n\n**Rate limit**: `20/1s`",
- "operationId": "get_feature_datasets__dataset_id__features__feature_id__get",
+ "summary": "Transit Route",
+ "description": "**Rate limit**: `10/1s`",
+ "operationId": "transit_route_transit_route_get",
"security": [
{
- "Datasets_PublicAPIKey": []
+ "External-api-wrapper_PublicAPIKey": []
},
{
- "Datasets_PrivateApiKey": []
+ "External-api-wrapper_PrivateApiKey": []
},
{
- "Datasets_PrivateApiKeyHeader": []
+ "External-api-wrapper_PrivateApiKeyHeader": []
}
],
"parameters": [
{
- "name": "dataset_id",
- "in": "path",
- "required": true,
+ "name": "departure_time",
+ "in": "query",
+ "required": false,
"schema": {
- "type": "string",
- "format": "uuid",
- "title": "Dataset Id"
- }
+ "anyOf": [
+ {
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "title": "Departure Time",
+ "description": "DateTime with or without timezone, if not set the default datetime is the current one",
+ "examples": [
+ "2024-01-01T12:00:00%2B01:00"
+ ]
+ },
+ "description": "DateTime with or without timezone, if not set the default datetime is the current one"
},
{
- "name": "feature_id",
- "in": "path",
+ "name": "arrival_time",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "anyOf": [
+ {
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "title": "Arrival Time",
+ "description": "DateTime with or without timezone, if departure_time is defined this parameter is ignored",
+ "examples": [
+ "2024-01-01T14:00:00%2B01:00"
+ ]
+ },
+ "description": "DateTime with or without timezone, if departure_time is defined this parameter is ignored"
+ },
+ {
+ "name": "origin",
+ "in": "query",
"required": true,
"schema": {
"type": "string",
- "format": "uuid",
- "title": "Feature Id"
- }
+ "title": "Position",
+ "description": "WGS84 coordinates as format lat,lng",
+ "examples": [
+ "lat,lng"
+ ]
+ },
+ "description": "WGS84 coordinates as format lat,lng"
},
{
- "name": "format",
+ "name": "destination",
"in": "query",
- "required": false,
+ "required": true,
"schema": {
- "enum": [
- "geojson",
- "wkb"
- ],
"type": "string",
- "default": "geojson",
- "title": "Format"
- }
+ "title": "Position",
+ "description": "WGS84 coordinates as format lat,lng",
+ "examples": [
+ "lat,lng"
+ ]
+ },
+ "description": "WGS84 coordinates as format lat,lng"
},
{
- "name": "X-Field-Mask",
- "in": "header",
+ "name": "modes",
+ "in": "query",
"required": false,
"schema": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "title": "X-Field-Mask"
- }
+ "type": "string",
+ "title": "Array of Modes (string) or Excluded modes (string) (TransitModesFilter)",
+ "description": "Transit mode filter used to determine which modes of transit to include in the response. \n By default, all supported transit modes are permitted. Supported modes: `highSpeedTrain` `intercityTrain` `interRegionalTrain` `regionalTrain` `cityTrain` `bus` `ferry` `subway` `lightRail` `privateBus` `inclined` `aerial` `busRapid` `monorail` `flight` `spaceship` This parameter also support an exclusion list: It's sufficient to specify each mode to exclude by prefixing it with `-`. \n Mixing of inclusive and exclusive transit modes is not allowed.",
+ "examples": [
+ "subway,bus",
+ "-subway,-bus"
+ ]
+ },
+ "description": "Transit mode filter used to determine which modes of transit to include in the response. \n By default, all supported transit modes are permitted. Supported modes: `highSpeedTrain` `intercityTrain` `interRegionalTrain` `regionalTrain` `cityTrain` `bus` `ferry` `subway` `lightRail` `privateBus` `inclined` `aerial` `busRapid` `monorail` `flight` `spaceship` This parameter also support an exclusion list: It's sufficient to specify each mode to exclude by prefixing it with `-`. \n Mixing of inclusive and exclusive transit modes is not allowed."
}
],
"responses": {
@@ -9837,7 +9862,7 @@
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Datasets_FeatureRead"
+ "$ref": "#/components/schemas/External-api-wrapper_Transit"
}
}
}
@@ -9847,7 +9872,7 @@
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
+ "$ref": "#/components/schemas/External-api-wrapper_AuthenticationErrorResponse"
}
}
}
@@ -9857,7 +9882,7 @@
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
+ "$ref": "#/components/schemas/External-api-wrapper_AuthenticationErrorResponse"
}
}
}
@@ -9867,17 +9892,7 @@
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Datasets_AuthenticationErrorResponse"
- }
- }
- }
- },
- "404": {
- "description": "Feature or Dataset were not found",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Datasets_features__internal__responses__HTTPErrorModel"
+ "$ref": "#/components/schemas/External-api-wrapper_AuthenticationErrorResponse"
}
}
}
@@ -9887,7 +9902,7 @@
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Datasets_HTTPValidationError"
+ "$ref": "#/components/schemas/External-api-wrapper_HTTPValidationError"
}
}
}
@@ -9897,176 +9912,93 @@
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Datasets_features__internal__responses__HTTPErrorModel"
+ "$ref": "#/components/schemas/External-api-wrapper_HTTPErrorModel"
}
}
}
}
- }
+ },
+ "x-codeSamples": [
+ {
+ "lang": "curl",
+ "label": "cURL",
+ "source": "curl -L -X GET 'https://api.woosmap.com/transit/route?origin=48.73534,2.368308&destination=48.83534,2.368308&key=YOUR_PUBLIC_API_KEY' \\\n-H 'Referer: http://localhost'"
+ },
+ {
+ "lang": "python",
+ "label": "Python",
+ "source": "import requests\n\nurl = \"https://api.woosmap.com/transit/route?origin=48.73534,2.368308&destination=48.83534,2.368308&key=YOUR_PUBLIC_API_KEY\"\n\npayload={}\nheaders = {\n 'Referer': 'http://localhost'\n}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
+ },
+ {
+ "lang": "javascript",
+ "label": "JavaScript",
+ "source": "var requestOptions = {\n method: 'GET',\n redirect: 'follow'\n};\n\nfetch(\"https://api.woosmap.com/transit/route?origin=48.73534,2.368308&destination=48.83534,2.368308&key=YOUR_PUBLIC_API_KEY\", requestOptions)\n .then(response => response.text())\n .then(result => console.log(result))\n .catch(error => console.log('error', error));"
+ }
+ ],
+ "x-original-tag": "transit"
}
},
- "/distance/isochrone/json/": {
+ "/what3words/convert-to-3wa": {
"get": {
"tags": [
- "Isochrone API"
+ "Woosmap for what3words API"
],
- "summary": "Calculate Isochrone",
- "description": "Find all destinations that can be reached in a specific amount of time or a maximum travel distance.\n\n**Rate limit**: `10/1s`",
- "operationId": "isochrone_distance_isochrone_json__get",
+ "summary": "Convert To What 3 Words",
+ "description": "This function will convert a latitude and longitude to a 3 word address, in the language of your choice.\nIt also returns country, the bounds of the grid square,\na nearby place (such as a local town) and a link to the what3words map site.\n\n**Rate limit**: `20/1s`",
+ "operationId": "convert_to_what_3_words_what3words_convert_to_3wa_get",
"security": [
{
- "Distance_PublicAPIKey": []
+ "External-api-wrapper_what3words_PublicAPIKey": []
},
{
- "Distance_PrivateApiKey": []
+ "External-api-wrapper_what3words_PrivateApiKey": []
},
{
- "Distance_PrivateApiKeyHeader": []
+ "External-api-wrapper_what3words_PrivateApiKeyHeader": []
}
],
"parameters": [
{
- "name": "mode",
+ "name": "coordinates",
"in": "query",
- "required": false,
+ "required": true,
"schema": {
- "enum": [
- "driving",
- "walking",
- "cycling"
- ],
"type": "string",
- "description": "Specifies the mode of transport to use for the calculation.",
- "default": "driving",
- "title": "Mode"
- },
- "description": "Specifies the mode of transport to use for the calculation."
- },
- {
- "name": "method",
- "in": "query",
- "required": false,
- "schema": {
- "enum": [
- "time",
- "distance"
+ "description": "Coordinates as a comma separated string of latitude and longitude",
+ "examples": [
+ "48.858304,2.294514"
],
- "type": "string",
- "description": "Specifies how to compute the route between the start point and the end point:\n* `time`: fastest route \n* `distance`: shortest route",
- "default": "time",
- "title": "Method"
+ "title": "Coordinates"
},
- "description": "Specifies how to compute the route between the start point and the end point:\n* `time`: fastest route \n* `distance`: shortest route"
+ "description": "Coordinates as a comma separated string of latitude and longitude"
},
{
- "name": "units",
+ "name": "format",
"in": "query",
"required": false,
"schema": {
"enum": [
- "metric",
- "imperial"
+ "json",
+ "geojson"
],
"type": "string",
- "description": "Specifies the unit system to use when displaying results.",
- "default": "metric",
- "title": "Units"
+ "description": "Return data format type; can be either json or geojson",
+ "default": "json",
+ "title": "Format"
},
- "description": "Specifies the unit system to use when displaying results."
+ "description": "Return data format type; can be either json or geojson"
},
{
"name": "language",
"in": "query",
"required": false,
"schema": {
- "enum": [
- "en",
- "fr",
- "ca",
- "de",
- "es",
- "he",
- "it",
- "ja",
- "nl",
- "pl",
- "pt",
- "ro",
- "ru",
- "uk",
- "zh"
- ],
"type": "string",
- "description": "The language code, indicating in the language the response should be in. \n \nIf not defined the header `Accept-Language` of the request will be checked before defaulting to `en`.",
+ "description": "A supported address language as an ISO 639-1 2 letter code.",
"default": "en",
"title": "Language"
},
- "description": "The language code, indicating in the language the response should be in. \n \nIf not defined the header `Accept-Language` of the request will be checked before defaulting to `en`."
- },
- {
- "name": "avoid",
- "in": "query",
- "required": false,
- "schema": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "A list of features that you want to avoid. Valid values are `tolls`, `highways`, `ferries` or polygons coordinates whose vertex latlng are separated by a semicolon `;`. \n \nTo add multiple features, separate them with the pipe `|` character.",
- "examples": [
- "tolls",
- "tolls|highways|43.3,3.4;42.1,3.5;41.4,3.6"
- ],
- "title": "Avoid"
- },
- "description": "A list of features that you want to avoid. Valid values are `tolls`, `highways`, `ferries` or polygons coordinates whose vertex latlng are separated by a semicolon `;`. \n \nTo add multiple features, separate them with the pipe `|` character."
- },
- {
- "name": "origin",
- "in": "query",
- "required": true,
- "schema": {
- "type": "string",
- "description": "The starting point. It should be supplied in the form of `latitude,longitude` coordinates. Ensure that no space exists between the latitude and longitude values.",
- "examples": [
- "48.709,2.403"
- ],
- "title": "Origin"
- },
- "description": "The starting point. It should be supplied in the form of `latitude,longitude` coordinates. Ensure that no space exists between the latitude and longitude values."
- },
- {
- "name": "value",
- "in": "query",
- "required": true,
- "schema": {
- "type": "number",
- "maximum": 120,
- "minimum": 0,
- "description": "The value to use for the isochrone contour. \n\nIf you specified `time` for `method` this value should be number of minutes\n\nIf you specified `distance` for `method` this value should be distance in kilometers.",
- "title": "Value"
- },
- "description": "The value to use for the isochrone contour. \n\nIf you specified `time` for `method` this value should be number of minutes\n\nIf you specified `distance` for `method` this value should be distance in kilometers."
- },
- {
- "name": "accept-language",
- "in": "header",
- "required": false,
- "schema": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "title": "Accept-Language"
- }
+ "description": "A supported address language as an ISO 639-1 2 letter code."
}
],
"responses": {
@@ -10075,7 +10007,15 @@
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Distance_IsochroneResponse"
+ "anyOf": [
+ {
+ "$ref": "#/components/schemas/External-api-wrapper_what3words_JsonCoordinatesResponse"
+ },
+ {
+ "$ref": "#/components/schemas/External-api-wrapper_what3words_GeoJsonCoordinatesResponse"
+ }
+ ],
+ "title": "Response Convert To What 3 Words What3Words Convert To 3Wa Get"
}
}
}
@@ -10085,7 +10025,7 @@
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Distance_AuthenticationErrorResponse"
+ "$ref": "#/components/schemas/External-api-wrapper_what3words_AuthenticationErrorResponse"
}
}
}
@@ -10095,7 +10035,7 @@
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Distance_AuthenticationErrorResponse"
+ "$ref": "#/components/schemas/External-api-wrapper_what3words_AuthenticationErrorResponse"
}
}
}
@@ -10105,7 +10045,7 @@
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Distance_AuthenticationErrorResponse"
+ "$ref": "#/components/schemas/External-api-wrapper_what3words_AuthenticationErrorResponse"
}
}
}
@@ -10115,7 +10055,7 @@
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Distance_HTTPValidationError"
+ "$ref": "#/components/schemas/External-api-wrapper_what3words_HTTPValidationError"
}
}
}
@@ -10125,66 +10065,86 @@
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Distance_HTTPErrorModel"
+ "$ref": "#/components/schemas/External-api-wrapper_what3words_HTTPErrorModel"
}
}
}
}
- }
- },
- "post": {
+ },
+ "x-codeSamples": [
+ {
+ "lang": "curl",
+ "label": "cURL",
+ "source": "curl -L -X GET 'https://api.woosmap.com/what3words/convert-to-3wa?coordinates=48.858304,2.294514&key=YOUR_PUBLIC_API_KEY' \\\n-H 'Referer: http://localhost'"
+ },
+ {
+ "lang": "python",
+ "label": "Python",
+ "source": "import requests\n\nurl = \"https://api.woosmap.com/what3words/convert-to-3wa?coordinates=48.858304,2.294514&key=YOUR_PUBLIC_API_KEY\"\n\npayload={}\nheaders = {\n 'Referer': 'http://localhost'\n}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
+ },
+ {
+ "lang": "javascript",
+ "label": "JavaScript",
+ "source": "var requestOptions = {\n method: 'GET',\n redirect: 'follow'\n};\n\nfetch(\"https://api.woosmap.com/what3words/convert-to-3wa?coordinates=48.858304,2.294514&key=YOUR_PUBLIC_API_KEY\", requestOptions)\n .then(response => response.text())\n .then(result => console.log(result))\n .catch(error => console.log('error', error));"
+ }
+ ],
+ "x-original-tag": "what3words"
+ }
+ },
+ "/what3words/convert-to-address": {
+ "get": {
"tags": [
- "Isochrone API"
+ "Woosmap for what3words API"
],
- "summary": "Calculate Isochrone",
- "description": "Find all destinations that can be reached in a specific amount of time or a maximum travel distance.\n\n**Rate limit**: `10/1s`",
- "operationId": "isochrone_post_distance_isochrone_json__post",
+ "summary": "Convert To Address",
+ "description": "This function converts a 3 word address to a list of address.\nIt will return at most the 5 closest addresses to the what3words provided.\n\n**Rate limit**: `20/1s`",
+ "operationId": "convert_to_address_what3words_convert_to_address_get",
"security": [
{
- "Distance_PublicAPIKey": []
+ "External-api-wrapper_what3words_PublicAPIKey": []
},
{
- "Distance_PrivateApiKey": []
+ "External-api-wrapper_what3words_PrivateApiKey": []
},
{
- "Distance_PrivateApiKeyHeader": []
+ "External-api-wrapper_what3words_PrivateApiKeyHeader": []
}
],
"parameters": [
{
- "name": "accept-language",
- "in": "header",
- "required": false,
+ "name": "words",
+ "in": "query",
+ "required": true,
"schema": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
+ "type": "string",
+ "description": "A 3 word address as a string. It must be three words separated with dots or a japanese middle dot character (・). Words separated by spaces will be rejected. Optionally, the 3 word address can be prefixed with /// (which would be encoded as %2F%2F%2F)",
+ "examples": [
+ "couch.spotted.amended"
],
- "title": "Accept-Language"
- }
+ "title": "Words"
+ },
+ "description": "A 3 word address as a string. It must be three words separated with dots or a japanese middle dot character (・). Words separated by spaces will be rejected. Optionally, the 3 word address can be prefixed with /// (which would be encoded as %2F%2F%2F)"
+ },
+ {
+ "name": "language",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "type": "string",
+ "description": "A supported address language as an ISO 639-1 2 letter code.",
+ "default": "en",
+ "title": "Language"
+ },
+ "description": "A supported address language as an ISO 639-1 2 letter code."
}
],
- "requestBody": {
- "required": true,
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Distance_IsochroneRequest"
- }
- }
- }
- },
"responses": {
"200": {
"description": "Successful Response",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Distance_IsochroneResponse"
+ "$ref": "#/components/schemas/External-api-wrapper_what3words_LiteAddressResponse"
}
}
}
@@ -10194,7 +10154,7 @@
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Distance_AuthenticationErrorResponse"
+ "$ref": "#/components/schemas/External-api-wrapper_what3words_AuthenticationErrorResponse"
}
}
}
@@ -10204,7 +10164,7 @@
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Distance_AuthenticationErrorResponse"
+ "$ref": "#/components/schemas/External-api-wrapper_what3words_AuthenticationErrorResponse"
}
}
}
@@ -10214,7 +10174,7 @@
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Distance_AuthenticationErrorResponse"
+ "$ref": "#/components/schemas/External-api-wrapper_what3words_AuthenticationErrorResponse"
}
}
}
@@ -10224,7 +10184,7 @@
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Distance_HTTPValidationError"
+ "$ref": "#/components/schemas/External-api-wrapper_what3words_HTTPValidationError"
}
}
}
@@ -10234,36 +10194,68 @@
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Distance_HTTPErrorModel"
+ "$ref": "#/components/schemas/External-api-wrapper_what3words_HTTPErrorModel"
}
}
}
}
- }
+ },
+ "x-codeSamples": [
+ {
+ "lang": "curl",
+ "label": "cURL",
+ "source": "curl -L -X GET 'https://api.woosmap.com/what3words/convert-to-address?words=couch.spotted.amended&key=YOUR_PUBLIC_API_KEY' \\\n-H 'Referer: http://localhost'"
+ },
+ {
+ "lang": "python",
+ "label": "Python",
+ "source": "import requests\n\nurl = \"https://api.woosmap.com/what3words/convert-to-address?words=couch.spotted.amended&key=YOUR_PUBLIC_API_KEY\"\n\npayload={}\nheaders = {\n 'Referer': 'http://localhost'\n}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
+ },
+ {
+ "lang": "javascript",
+ "label": "JavaScript",
+ "source": "var requestOptions = {\n method: 'GET',\n redirect: 'follow'\n};\n\nfetch(\"https://api.woosmap.com/what3words/convert-to-address?words=couch.spotted.amended&key=YOUR_PUBLIC_API_KEY\", requestOptions)\n .then(response => response.text())\n .then(result => console.log(result))\n .catch(error => console.log('error', error));"
+ }
+ ],
+ "x-original-tag": "what3words"
}
},
- "/distance/tolls/json/": {
+ "/what3words/autosuggest": {
"get": {
"tags": [
- "Tolls API"
+ "Woosmap for what3words API"
],
- "summary": "Find Tolls",
- "description": "Get distance, duration and tolls for an origin,destination pair, based on the recommended route between those two points for a specified travel mode.\n\n**Rate limit**: `5/1s`",
- "operationId": "tolls_distance_tolls_json__get",
+ "summary": "Autosuggest",
+ "description": "AutoSuggest can take a slightly incorrect 3 word address and suggest a list of valid 3 word addresses.\nIt has powerful features that can, for example, optionally limit results to a country or area,\nand prioritise results that are near the user.\n\n**Rate limit**: `20/1s`",
+ "operationId": "autosuggest_what3words_autosuggest_get",
"security": [
{
- "Distance_PublicAPIKey": []
+ "External-api-wrapper_what3words_PublicAPIKey": []
},
{
- "Distance_PrivateApiKey": []
+ "External-api-wrapper_what3words_PrivateApiKey": []
},
{
- "Distance_PrivateApiKeyHeader": []
+ "External-api-wrapper_what3words_PrivateApiKeyHeader": []
}
],
"parameters": [
{
- "name": "arrival_time",
+ "name": "input",
+ "in": "query",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "description": "The full or partial 3 word address to obtain suggestions for. At minimum this must be the first two complete words plus at least one character from the third word.",
+ "examples": [
+ "couch.spotted.a"
+ ],
+ "title": "Input"
+ },
+ "description": "The full or partial 3 word address to obtain suggestions for. At minimum this must be the first two complete words plus at least one character from the third word."
+ },
+ {
+ "name": "focus",
"in": "query",
"required": false,
"schema": {
@@ -10275,17 +10267,16 @@
"type": "null"
}
],
- "description": "Specify your desired arrival time.\n\nBy using this parameter, Distance will calculate the duration with **traffic**. Valid values are a UNIX timestamp (e.g. `1600799173` for the date: `22/09/2020 20:26:13`) or `now`. \n\nUse either `arrival_time` or `departure_time`, not both.",
+ "description": "This is a location, specified as latitude,longitude (often where the user making the query is). If specified, the results will be weighted to give preference to those near the focus.",
"examples": [
- "1600799173",
- "now"
+ "48.861026,2.335853"
],
- "title": "Arrival Time"
+ "title": "Focus"
},
- "description": "Specify your desired arrival time.\n\nBy using this parameter, Distance will calculate the duration with **traffic**. Valid values are a UNIX timestamp (e.g. `1600799173` for the date: `22/09/2020 20:26:13`) or `now`. \n\nUse either `arrival_time` or `departure_time`, not both."
+ "description": "This is a location, specified as latitude,longitude (often where the user making the query is). If specified, the results will be weighted to give preference to those near the focus."
},
{
- "name": "departure_time",
+ "name": "clip-to-country",
"in": "query",
"required": false,
"schema": {
@@ -10297,17 +10288,16 @@
"type": "null"
}
],
- "description": "Specify your desired departure time.\n\nBy using this parameter, Distance will calculate the duration with **traffic**. Valid values are a UNIX timestamp (e.g. `1600799173` for the date: `22/09/2020 20:26:13`) or `now`. \n\nUse either `arrival_time` or `departure_time`, not both.",
+ "description": "Restricts AutoSuggest to only return results inside the countries specified by comma-separated list of ISO 3166-1 alpha-2 country codes.",
"examples": [
- "1600799173",
- "now"
+ "FR"
],
- "title": "Departure Time"
+ "title": "Clip-To-Country"
},
- "description": "Specify your desired departure time.\n\nBy using this parameter, Distance will calculate the duration with **traffic**. Valid values are a UNIX timestamp (e.g. `1600799173` for the date: `22/09/2020 20:26:13`) or `now`. \n\nUse either `arrival_time` or `departure_time`, not both."
+ "description": "Restricts AutoSuggest to only return results inside the countries specified by comma-separated list of ISO 3166-1 alpha-2 country codes."
},
{
- "name": "waypoints",
+ "name": "clip-to-bounding-box",
"in": "query",
"required": false,
"schema": {
@@ -10319,131 +10309,89 @@
"type": "null"
}
],
- "description": "A list of points by which the route should pass (the route response is divided into legs, one leg corresponding to a route between two waypoints). Waypoints should be separated by | character. \n \nOptionally, you may pass 'optimize:true' as the first argument within the waypoints parameter. This way the provided route is optimized by rearranging the waypoints in a more efficient order based on distance or time according to the method parameter. The route start point and end point order is not changed, their position is considered fixed. \n \n`alternatives` and `waypoints` can not be used at the same time.",
+ "description": "Restrict AutoSuggest results to a bounding box, specified by coordinates.south_lat,west_lng,north_lat,east_lng, where: south_lat less than or equal to north_lat, west_lng less than or equal to east_lng.",
"examples": [
- "optimize:true|48.850077,3.311124|48.850077,3.411124",
- "48.850077,3.311124|48.850077,3.411124"
+ "48.624314,1.804429,49.058148,2.908555"
],
- "title": "Waypoints"
+ "title": "Clip-To-Bounding-Box"
},
- "description": "A list of points by which the route should pass (the route response is divided into legs, one leg corresponding to a route between two waypoints). Waypoints should be separated by | character. \n \nOptionally, you may pass 'optimize:true' as the first argument within the waypoints parameter. This way the provided route is optimized by rearranging the waypoints in a more efficient order based on distance or time according to the method parameter. The route start point and end point order is not changed, their position is considered fixed. \n \n`alternatives` and `waypoints` can not be used at the same time."
- },
- {
- "name": "mode",
- "in": "query",
- "required": false,
- "schema": {
- "enum": [
- "driving",
- "walking",
- "cycling",
- "truck"
- ],
- "type": "string",
- "default": "driving",
- "title": "Mode"
- }
- },
- {
- "name": "method",
- "in": "query",
- "required": false,
- "schema": {
- "enum": [
- "time",
- "distance"
- ],
- "type": "string",
- "default": "time",
- "title": "Method"
- }
+ "description": "Restrict AutoSuggest results to a bounding box, specified by coordinates.south_lat,west_lng,north_lat,east_lng, where: south_lat less than or equal to north_lat, west_lng less than or equal to east_lng."
},
{
- "name": "units",
+ "name": "clip-to-circle",
"in": "query",
"required": false,
"schema": {
- "enum": [
- "metric",
- "imperial"
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
],
- "type": "string",
- "default": "metric",
- "title": "Units"
- }
- },
- {
- "name": "language",
- "in": "query",
- "required": false,
- "schema": {
- "enum": [
- "en",
- "fr",
- "ca",
- "de",
- "es",
- "he",
- "it",
- "ja",
- "nl",
- "pl",
- "pt",
- "ro",
- "ru",
- "uk",
- "zh"
+ "description": "Restrict AutoSuggest results to a circle, specified by lat, lng, kilometres, where kilometres is the radius of the circle.",
+ "examples": [
+ "48.839701,2.291878,20"
],
- "type": "string",
- "description": "The language code, indicating in the language the response should be in. \n \nIf not defined the header `Accept-Language` of the request will be checked before defaulting to `en`.",
- "default": "en",
- "title": "Language"
+ "title": "Clip-To-Circle"
},
- "description": "The language code, indicating in the language the response should be in. \n \nIf not defined the header `Accept-Language` of the request will be checked before defaulting to `en`."
+ "description": "Restrict AutoSuggest results to a circle, specified by lat, lng, kilometres, where kilometres is the radius of the circle."
},
{
- "name": "origin",
+ "name": "clip-to-polygon",
"in": "query",
- "required": true,
+ "required": false,
"schema": {
- "type": "string",
- "description": "The starting point. It should be supplied in the form of `latitude,longitude` coordinates. Ensure that no space exists between the latitude and longitude values.",
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Restrict AutoSuggest results to a polygon, specified by a comma-separated list of lat, lng pairs. The polygon should be closed, i.e. the first element should be repeated as the last element; also the list should contain at least 4 pairs. The API is currently limited to accepting up to 25 pairs.",
"examples": [
- "48.709,2.403"
+ "48.823547,2.199174,48.823547,2.199174,48.922216,2.328709,48.888626,2.473673,48.819279,2.445513,48.784865,2.330668,48.823547,2.199174"
],
- "title": "Origin"
+ "title": "Clip-To-Polygon"
},
- "description": "The starting point. It should be supplied in the form of `latitude,longitude` coordinates. Ensure that no space exists between the latitude and longitude values."
+ "description": "Restrict AutoSuggest results to a polygon, specified by a comma-separated list of lat, lng pairs. The polygon should be closed, i.e. the first element should be repeated as the last element; also the list should contain at least 4 pairs. The API is currently limited to accepting up to 25 pairs."
},
{
- "name": "destination",
+ "name": "input-type",
"in": "query",
- "required": true,
+ "required": false,
"schema": {
- "type": "string",
- "description": "The ending point for the route. It should be supplied in the form of `latitude,longitude` coordinates. Ensure that no space exists between the latitude and longitude values.",
- "examples": [
- "48.768,2.338"
+ "enum": [
+ "text",
+ "vocon-hybrid",
+ "nmdp-asr",
+ "generic-voice"
],
- "title": "Destination"
+ "type": "string",
+ "description": "For power users, used to specify voice input mode.",
+ "default": "text",
+ "title": "Input-Type"
},
- "description": "The ending point for the route. It should be supplied in the form of `latitude,longitude` coordinates. Ensure that no space exists between the latitude and longitude values."
+ "description": "For power users, used to specify voice input mode."
},
{
- "name": "alternatives",
+ "name": "prefer-land",
"in": "query",
"required": false,
"schema": {
"type": "boolean",
- "description": "Specifies if alternative routes should be returned. Depending on the calculated route, alternatives may not be provided. `alternatives` and `waypoints` can not be used at the same time.",
- "default": false,
- "title": "Alternatives"
+ "description": "Makes AutoSuggest prefer results on land to those in the sea.",
+ "default": true,
+ "title": "Prefer-Land"
},
- "description": "Specifies if alternative routes should be returned. Depending on the calculated route, alternatives may not be provided. `alternatives` and `waypoints` can not be used at the same time."
+ "description": "Makes AutoSuggest prefer results on land to those in the sea."
},
{
- "name": "accept-language",
- "in": "header",
+ "name": "language",
+ "in": "query",
"required": false,
"schema": {
"anyOf": [
@@ -10454,8 +10402,13 @@
"type": "null"
}
],
- "title": "Accept-Language"
- }
+ "description": "For normal text input, specifies a fallback language, which will help guide AutoSuggest if the input is particularly messy. A supported address language as an ISO 639-1 2 letter code.",
+ "examples": [
+ "fr"
+ ],
+ "title": "Language"
+ },
+ "description": "For normal text input, specifies a fallback language, which will help guide AutoSuggest if the input is particularly messy. A supported address language as an ISO 639-1 2 letter code."
}
],
"responses": {
@@ -10464,7 +10417,7 @@
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Distance_TollsResponse"
+ "$ref": "#/components/schemas/External-api-wrapper_what3words_AutoSuggestResponse"
}
}
}
@@ -10474,7 +10427,7 @@
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Distance_AuthenticationErrorResponse"
+ "$ref": "#/components/schemas/External-api-wrapper_what3words_AuthenticationErrorResponse"
}
}
}
@@ -10484,7 +10437,7 @@
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Distance_AuthenticationErrorResponse"
+ "$ref": "#/components/schemas/External-api-wrapper_what3words_AuthenticationErrorResponse"
}
}
}
@@ -10494,7 +10447,7 @@
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Distance_AuthenticationErrorResponse"
+ "$ref": "#/components/schemas/External-api-wrapper_what3words_AuthenticationErrorResponse"
}
}
}
@@ -10504,7 +10457,7 @@
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Distance_HTTPValidationError"
+ "$ref": "#/components/schemas/External-api-wrapper_what3words_HTTPValidationError"
}
}
}
@@ -10514,736 +10467,795 @@
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Distance_HTTPErrorModel"
+ "$ref": "#/components/schemas/External-api-wrapper_what3words_HTTPErrorModel"
}
}
}
}
- }
+ },
+ "x-codeSamples": [
+ {
+ "lang": "curl",
+ "label": "cURL",
+ "source": "curl -L -X GET 'https://api.woosmap.com/what3words/autosuggest?input=couch.spotted.am&clip-to-country=fr&key=YOUR_PUBLIC_API_KEY' \\\n-H 'Referer: http://localhost'"
+ },
+ {
+ "lang": "python",
+ "label": "Python",
+ "source": "import requests\n\nurl = \"https://api.woosmap.com/what3words/autosuggest?input=couch.spotted.am&clip-to-country=fr&key=YOUR_PUBLIC_API_KEY\"\n\npayload={}\nheaders = {\n 'Referer': 'http://localhost'\n}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
+ },
+ {
+ "lang": "javascript",
+ "label": "JavaScript",
+ "source": "var requestOptions = {\n method: 'GET',\n redirect: 'follow'\n};\n\nfetch(\"https://api.woosmap.com/what3words/autosuggest?input=couch.spotted.am&clip-to-country=fr&key=YOUR_PUBLIC_API_KEY\", requestOptions)\n .then(response => response.text())\n .then(result => console.log(result))\n .catch(error => console.log('error', error));"
+ }
+ ],
+ "x-original-tag": "what3words"
}
},
- "/distance/route/json/": {
+ "/zones": {
"get": {
+ "summary": "List your Zones",
+ "operationId": "listZones",
+ "servers": [
+ {
+ "url": "https://api.woosmap.com"
+ }
+ ],
"tags": [
- "Route API"
+ "Zones API"
],
- "summary": "Find Routes",
- "description": "Get distance, duration and path (as a polyline) for a pair of origin and destination, based on the recommended route between those two points for a specified travel mode.\n\n**Rate limit**: `10/1s`\n\n**Rate limit with TRAFFIC**: `20/1s`",
- "operationId": "route_distance_route_json__get",
+ "description": "List all zones for the current project, sorted by `zone_id`.\n",
"security": [
{
- "Distance_PublicAPIKey": []
- },
+ "Woosmap_Platform_API_Reference_PrivateApiKeyAuth": []
+ }
+ ],
+ "parameters": [
{
- "Distance_PrivateApiKey": []
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_limit-4"
},
{
- "Distance_PrivateApiKeyHeader": []
+ "$ref": "#/components/parameters/Woosmap_Platform_API_Reference_offset"
}
],
- "parameters": [
- {
- "name": "waypoints",
- "in": "query",
- "required": false,
- "schema": {
- "anyOf": [
- {
- "type": "string"
+ "responses": {
+ "200": {
+ "description": "Zones successfully retrieved",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_ZonesCollectionResponse"
},
- {
- "type": "null"
+ "examples": {
+ "default": {
+ "summary": "Zones data",
+ "value": {
+ "zones": [
+ {
+ "store_id": "STORE_ID_123456",
+ "zone_id": "ZoneB",
+ "polygon": "POLYGON ((-122.4546384 37.774656, -122.4515485 37.7595934, -122.4354306 37.7602172, -122.4333707 37.7512596, -122.423071 37.7511239, -122.4242726 37.7687665, -122.4259893 37.7691736, -122.4289075 37.7732444, -122.4306241 37.7850483, -122.4472753 37.7830133, -122.445902 37.7759581, -122.4546384 37.774656))",
+ "types": [
+ "delivery"
+ ],
+ "description": "Delivery Zone for Store B"
+ },
+ {
+ "store_id": "STORE_ID_45678",
+ "zone_id": "ZoneC",
+ "polygon": "POLYGON ((-122.4758889 37.7524995, -122.4751594 37.7321718, -122.4688079 37.7299995, -122.4648597 37.7261979, -122.4519851 37.7228035, -122.4483802 37.7215815, -122.4458053 37.726741, -122.4365356 37.7310857, -122.4315574 37.7324433, -122.4246909 37.7312214, -122.4219444 37.731493, -122.423071 37.7511239, -122.4333707 37.7512596, -122.4354306 37.7602172, -122.4515485 37.7595934, -122.4528628 37.7582744, -122.4540375 37.7566755, -122.4565266 37.7513144, -122.4601315 37.7521288, -122.4618481 37.7514501, -122.4635648 37.7530788, -122.4758889 37.7524995))",
+ "types": [
+ "delivery"
+ ],
+ "description": "Delivery Zone for Store C"
+ }
+ ],
+ "status": "ok"
+ }
+ }
}
- ],
- "description": "A list of points by which the route should pass (the route response is divided into legs, one leg corresponding to a route between two waypoints). Waypoints should be separated by | character. \n \nOptionally, you may pass 'optimize:true' as the first argument within the waypoints parameter. This way the provided route is optimized by rearranging the waypoints in a more efficient order based on distance or time according to the method parameter. The route start point and end point order is not changed, their position is considered fixed. \n \n`alternatives` and `waypoints` can not be used at the same time.",
- "examples": [
- "optimize:true|48.850077,3.311124|48.850077,3.411124",
- "48.850077,3.311124|48.850077,3.411124"
- ],
- "title": "Waypoints"
- },
- "description": "A list of points by which the route should pass (the route response is divided into legs, one leg corresponding to a route between two waypoints). Waypoints should be separated by | character. \n \nOptionally, you may pass 'optimize:true' as the first argument within the waypoints parameter. This way the provided route is optimized by rearranging the waypoints in a more efficient order based on distance or time according to the method parameter. The route start point and end point order is not changed, their position is considered fixed. \n \n`alternatives` and `waypoints` can not be used at the same time."
- },
- {
- "name": "mode",
- "in": "query",
- "required": false,
- "schema": {
- "enum": [
- "driving",
- "walking",
- "cycling"
- ],
- "type": "string",
- "description": "Specifies the mode of transport to use for the calculation.",
- "default": "driving",
- "title": "Mode"
- },
- "description": "Specifies the mode of transport to use for the calculation."
- },
- {
- "name": "method",
- "in": "query",
- "required": false,
- "schema": {
- "enum": [
- "time",
- "distance"
- ],
- "type": "string",
- "description": "Specifies how to compute the route between the start point and the end point:\n* `time`: fastest route \n* `distance`: shortest route",
- "default": "time",
- "title": "Method"
- },
- "description": "Specifies how to compute the route between the start point and the end point:\n* `time`: fastest route \n* `distance`: shortest route"
- },
- {
- "name": "units",
- "in": "query",
- "required": false,
- "schema": {
- "enum": [
- "metric",
- "imperial"
- ],
- "type": "string",
- "description": "Specifies the unit system to use when displaying results.",
- "default": "metric",
- "title": "Units"
- },
- "description": "Specifies the unit system to use when displaying results."
- },
- {
- "name": "language",
- "in": "query",
- "required": false,
- "schema": {
- "enum": [
- "en",
- "fr",
- "ca",
- "de",
- "es",
- "he",
- "it",
- "ja",
- "nl",
- "pl",
- "pt",
- "ro",
- "ru",
- "uk",
- "zh"
- ],
- "type": "string",
- "description": "The language code, indicating in the language the response should be in. \n \nIf not defined the header `Accept-Language` of the request will be checked before defaulting to `en`.",
- "default": "en",
- "title": "Language"
- },
- "description": "The language code, indicating in the language the response should be in. \n \nIf not defined the header `Accept-Language` of the request will be checked before defaulting to `en`."
+ }
+ }
},
- {
- "name": "avoid",
- "in": "query",
- "required": false,
- "schema": {
- "anyOf": [
- {
- "type": "string"
+ "401": {
+ "description": "Unauthorized. Incorrect authentication credentials.",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error401"
},
- {
- "type": "null"
+ "examples": {
+ "Unauthorized": {
+ "summary": "Error 401",
+ "value": {
+ "detail": "Incorrect authentication credentials. Please check or use a valid API Key"
+ }
+ }
}
- ],
- "description": "A list of features that you want to avoid. Valid values are `tolls`, `highways`, `ferries` or polygons coordinates whose vertex latlng are separated by a semicolon `;`. \n \nTo add multiple features, separate them with the pipe `|` character.",
- "examples": [
- "tolls",
- "tolls|highways|43.3,3.4;42.1,3.5;41.4,3.6"
- ],
- "title": "Avoid"
- },
- "description": "A list of features that you want to avoid. Valid values are `tolls`, `highways`, `ferries` or polygons coordinates whose vertex latlng are separated by a semicolon `;`. \n \nTo add multiple features, separate them with the pipe `|` character."
+ }
+ }
},
- {
- "name": "arrival_time",
- "in": "query",
- "required": false,
- "schema": {
- "anyOf": [
- {
- "type": "string"
+ "403": {
+ "description": "Forbidden. This Woosmap API is not enabled for this project.",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error403"
},
- {
- "type": "null"
+ "examples": {
+ "Forbidden": {
+ "summary": "Error 403",
+ "value": {
+ "detail": "This Woosmap API is not enabled for this project."
+ }
+ }
}
- ],
- "description": "Specify your desired arrival time.\n\nBy using this parameter, Distance will calculate the duration with **traffic**. Valid values are a UNIX timestamp (e.g. `1600799173` for the date: `22/09/2020 20:26:13`) or `now`. \n\nUse either `arrival_time` or `departure_time`, not both.",
- "examples": [
- "1600799173",
- "now"
- ],
- "title": "Arrival Time"
- },
- "description": "Specify your desired arrival time.\n\nBy using this parameter, Distance will calculate the duration with **traffic**. Valid values are a UNIX timestamp (e.g. `1600799173` for the date: `22/09/2020 20:26:13`) or `now`. \n\nUse either `arrival_time` or `departure_time`, not both."
+ }
+ }
},
- {
- "name": "departure_time",
- "in": "query",
- "required": false,
- "schema": {
- "anyOf": [
- {
- "type": "string"
+ "429": {
+ "description": "Too Many Requests. The rate limit for this endpoint has been exceeded.",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error429"
},
- {
- "type": "null"
+ "examples": {
+ "Forbidden": {
+ "summary": "Error 429",
+ "value": {
+ "detail": "The rate limit for this endpoint has been exceeded"
+ }
+ }
}
- ],
- "description": "Specify your desired departure time.\n\nBy using this parameter, Distance will calculate the duration with **traffic**. Valid values are a UNIX timestamp (e.g. `1600799173` for the date: `22/09/2020 20:26:13`) or `now`. \n\nUse either `arrival_time` or `departure_time`, not both.",
- "examples": [
- "1600799173",
- "now"
- ],
- "title": "Departure Time"
- },
- "description": "Specify your desired departure time.\n\nBy using this parameter, Distance will calculate the duration with **traffic**. Valid values are a UNIX timestamp (e.g. `1600799173` for the date: `22/09/2020 20:26:13`) or `now`. \n\nUse either `arrival_time` or `departure_time`, not both."
- },
+ }
+ }
+ }
+ },
+ "x-codeSamples": [
{
- "name": "origin",
- "in": "query",
- "required": true,
- "schema": {
- "type": "string",
- "description": "The starting point. It should be supplied in the form of `latitude,longitude` coordinates. Ensure that no space exists between the latitude and longitude values.",
- "examples": [
- "48.709,2.403"
- ],
- "title": "Origin"
- },
- "description": "The starting point. It should be supplied in the form of `latitude,longitude` coordinates. Ensure that no space exists between the latitude and longitude values."
+ "lang": "curl",
+ "label": "cURL",
+ "source": "curl -L 'https://api.woosmap.com/zones/?private_key=YOUR_PRIVATE_API_KEY&limit=2&offset=1'"
},
{
- "name": "destination",
- "in": "query",
- "required": true,
- "schema": {
- "type": "string",
- "description": "The ending point for the route. It should be supplied in the form of `latitude,longitude` coordinates. Ensure that no space exists between the latitude and longitude values.",
- "examples": [
- "48.768,2.338"
- ],
- "title": "Destination"
- },
- "description": "The ending point for the route. It should be supplied in the form of `latitude,longitude` coordinates. Ensure that no space exists between the latitude and longitude values."
+ "lang": "javascript",
+ "label": "JavaScript",
+ "source": "const requestOptions = {\n method: \"GET\",\n redirect: \"follow\"\n};\n\nfetch(\"https://api.woosmap.com/zones/?private_key=YOUR_PRIVATE_API_KEY&limit=2&offset=1\", requestOptions)\n .then((response) => response.text())\n .then((result) => console.log(result))\n .catch((error) => console.error(error));"
},
{
- "name": "alternatives",
- "in": "query",
- "required": false,
- "schema": {
- "type": "boolean",
- "description": "Specifies if alternative routes should be returned. Depending on the calculated route, alternatives may not be provided. `alternatives` and `waypoints` can not be used at the same time.",
- "default": false,
- "title": "Alternatives"
- },
- "description": "Specifies if alternative routes should be returned. Depending on the calculated route, alternatives may not be provided. `alternatives` and `waypoints` can not be used at the same time."
- },
+ "lang": "python",
+ "label": "Python",
+ "source": "import requests\n\nurl = \"https://api.woosmap.com/zones/?private_key=YOUR_PRIVATE_API_KEY&limit=2&offset=1\"\n\npayload = {}\nheaders = {}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
+ }
+ ]
+ },
+ "post": {
+ "summary": "Create your Zones",
+ "operationId": "createZones",
+ "servers": [
{
- "name": "details",
- "in": "query",
- "required": false,
- "schema": {
- "enum": [
- "full",
- "none"
- ],
- "type": "string",
- "description": "Specifies if maneuver instructions should be returned (roadbook)",
- "default": "none",
- "title": "Details"
- },
- "description": "Specifies if maneuver instructions should be returned (roadbook)"
- },
+ "url": "https://api.woosmap.com"
+ }
+ ],
+ "tags": [
+ "Zones API"
+ ],
+ "description": "Used to batch create Zones to a specific project identified with the `private_key` parameter.\n",
+ "security": [
{
- "name": "accept-language",
- "in": "header",
- "required": false,
- "schema": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
+ "Woosmap_Platform_API_Reference_PrivateApiKeyAuth": []
+ }
+ ],
+ "requestBody": {
+ "description": "The request body of Zones Creation must be formatted as JSON.",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_ZonesCollectionRequest"
+ },
+ "examples": {
+ "default": {
+ "summary": "Zones data as JSON",
+ "value": {
+ "zones": [
+ {
+ "zone_id": "ZoneA",
+ "description": "Delivery Zone for Store A",
+ "store_id": "STORE_ID_123456",
+ "polygon": "POLYGON ((-122.496116 37.7648181,-122.4954079 37.751518,-122.4635648 37.7530788,-122.4618481 37.7514501,-122.4601315 37.7521288,-122.4565266 37.7513144,-122.4540375 37.7566755,-122.4528359 37.7583041,-122.4515485 37.7595934,-122.4546384 37.774656,-122.4718903 37.7731635,-122.472577 37.772485,-122.4755811 37.7725529,-122.4791001 37.7723493,-122.4793576 37.7713995,-122.4784993 37.769839,-122.4783276 37.7680071,-122.4774693 37.766718,-122.4772118 37.7652931,-122.496116 37.7648181))",
+ "types": [
+ "delivery"
+ ]
+ },
+ {
+ "zone_id": "ZoneB",
+ "description": "Delivery Zone for Store B",
+ "store_id": "STORE_ID_123456",
+ "polygon": "POLYGON ((-122.4546384 37.774656,-122.4515485 37.7595934,-122.4354306 37.7602172,-122.4333707 37.7512596,-122.423071 37.7511239,-122.4242726 37.7687665,-122.4259893 37.7691736,-122.4289075 37.7732444,-122.4306241 37.7850483,-122.4472753 37.7830133,-122.445902 37.7759581,-122.4546384 37.774656))",
+ "types": [
+ "delivery"
+ ]
+ },
+ {
+ "zone_id": "ZoneC",
+ "description": "Delivery Zone for Store C",
+ "store_id": "STORE_ID_45678",
+ "polygon": "POLYGON ((-122.4758889 37.7524995,-122.4751594 37.7321718,-122.4688079 37.7299995,-122.4648597 37.7261979,-122.4519851 37.7228035,-122.4483802 37.7215815,-122.4458053 37.726741,-122.4365356 37.7310857,-122.4315574 37.7324433,-122.4246909 37.7312214,-122.4219444 37.731493,-122.423071 37.7511239,-122.4333707 37.7512596,-122.4354306 37.7602172,-122.4515485 37.7595934,-122.4528628 37.7582744,-122.4540375 37.7566755,-122.4565266 37.7513144,-122.4601315 37.7521288,-122.4618481 37.7514501,-122.4635648 37.7530788,-122.4758889 37.7524995))",
+ "types": [
+ "delivery"
+ ]
+ }
+ ]
+ }
}
- ],
- "title": "Accept-Language"
+ }
}
}
- ],
+ },
"responses": {
"200": {
- "description": "Successful Response",
+ "description": "Zones successfully created",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Distance_RouteResponse"
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_SuccessZones"
+ },
+ "examples": {
+ "default": {
+ "summary": "Success response for Zones Created",
+ "value": {
+ "status": "ok",
+ "message": "Zones successfully added."
+ }
+ }
+ }
+ }
+ }
+ },
+ "400": {
+ "description": "Invalid. The data is not a valid JSON.",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error400"
+ },
+ "examples": {
+ "Invalid": {
+ "summary": "Error 400",
+ "value": {
+ "status": "error",
+ "value": "The request is invalid, the data is not a valid JSON."
+ }
+ }
}
}
}
},
"401": {
- "description": "Unable to locate credentials.",
+ "description": "Unauthorized. Incorrect authentication credentials.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Distance_AuthenticationErrorResponse"
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error401"
+ },
+ "examples": {
+ "Unauthorized": {
+ "summary": "Error 401",
+ "value": {
+ "detail": "Incorrect authentication credentials. Please check or use a valid API Key"
+ }
+ }
}
}
}
},
- "402": {
- "description": "Out of free quota.",
+ "403": {
+ "description": "Forbidden. This Woosmap API is not enabled for this project.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Distance_AuthenticationErrorResponse"
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error403"
+ },
+ "examples": {
+ "Forbidden": {
+ "summary": "Error 403",
+ "value": {
+ "detail": "This Woosmap API is not enabled for this project."
+ }
+ }
}
}
}
+ }
+ },
+ "x-codeSamples": [
+ {
+ "lang": "curl",
+ "label": "cURL",
+ "source": "curl -L 'https://api.woosmap.com/zones?private_key=YOUR_PRIVATE_API_KEY' \\\n-H 'content-type: application/json' \\\n-d '{\n \"zones\": [\n {\n \"zone_id\": \"ZoneA\",\n \"description\": \"Delivery Zone for Store A\",\n \"store_id\": \"STORE_ID_123456\",\n \"polygon\": \"POLYGON ((-122.496116 37.7648181,-122.4954079 37.751518,-122.4635648 37.7530788,-122.4618481 37.7514501,-122.4601315 37.7521288,-122.4565266 37.7513144,-122.4540375 37.7566755,-122.4528359 37.7583041,-122.4515485 37.7595934,-122.4546384 37.774656,-122.4718903 37.7731635,-122.472577 37.772485,-122.4755811 37.7725529,-122.4791001 37.7723493,-122.4793576 37.7713995,-122.4784993 37.769839,-122.4783276 37.7680071,-122.4774693 37.766718,-122.4772118 37.7652931,-122.496116 37.7648181))\",\n \"types\": [\n \"delivery\"\n ]\n },\n {\n \"zone_id\": \"ZoneB\",\n \"description\": \"Delivery Zone for Store B\",\n \"store_id\": \"STORE_ID_123456\",\n \"polygon\": \"POLYGON ((-122.4546384 37.774656,-122.4515485 37.7595934,-122.4354306 37.7602172,-122.4333707 37.7512596,-122.423071 37.7511239,-122.4242726 37.7687665,-122.4259893 37.7691736,-122.4289075 37.7732444,-122.4306241 37.7850483,-122.4472753 37.7830133,-122.445902 37.7759581,-122.4546384 37.774656))\",\n \"types\": [\n \"delivery\"\n ]\n },\n {\n \"zone_id\": \"ZoneC\",\n \"description\": \"Delivery Zone for Store C\",\n \"store_id\": \"STORE_ID_45678\",\n \"polygon\": \"POLYGON ((-122.4758889 37.7524995,-122.4751594 37.7321718,-122.4688079 37.7299995,-122.4648597 37.7261979,-122.4519851 37.7228035,-122.4483802 37.7215815,-122.4458053 37.726741,-122.4365356 37.7310857,-122.4315574 37.7324433,-122.4246909 37.7312214,-122.4219444 37.731493,-122.423071 37.7511239,-122.4333707 37.7512596,-122.4354306 37.7602172,-122.4515485 37.7595934,-122.4528628 37.7582744,-122.4540375 37.7566755,-122.4565266 37.7513144,-122.4601315 37.7521288,-122.4618481 37.7514501,-122.4635648 37.7530788,-122.4758889 37.7524995))\",\n \"types\": [\n \"delivery\"\n ]\n }\n ]\n}'"
},
- "403": {
- "description": "Credentials found, but not matching.",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Distance_AuthenticationErrorResponse"
+ {
+ "lang": "python",
+ "label": "Python",
+ "source": "import requests\nimport json\n\nurl = \"https://api.woosmap.com/zones?private_key=YOUR_PRIVATE_API_KEY\"\n\npayload = json.dumps({\n \"zones\": [\n {\n \"zone_id\": \"ZoneA\",\n \"description\": \"Delivery Zone for Store A\",\n \"store_id\": \"STORE_ID_123456\",\n \"polygon\": \"POLYGON ((-122.496116 37.7648181,-122.4954079 37.751518,-122.4635648 37.7530788,-122.4618481 37.7514501,-122.4601315 37.7521288,-122.4565266 37.7513144,-122.4540375 37.7566755,-122.4528359 37.7583041,-122.4515485 37.7595934,-122.4546384 37.774656,-122.4718903 37.7731635,-122.472577 37.772485,-122.4755811 37.7725529,-122.4791001 37.7723493,-122.4793576 37.7713995,-122.4784993 37.769839,-122.4783276 37.7680071,-122.4774693 37.766718,-122.4772118 37.7652931,-122.496116 37.7648181))\",\n \"types\": [\n \"delivery\"\n ]\n },\n {\n \"zone_id\": \"ZoneB\",\n \"description\": \"Delivery Zone for Store B\",\n \"store_id\": \"STORE_ID_123456\",\n \"polygon\": \"POLYGON ((-122.4546384 37.774656,-122.4515485 37.7595934,-122.4354306 37.7602172,-122.4333707 37.7512596,-122.423071 37.7511239,-122.4242726 37.7687665,-122.4259893 37.7691736,-122.4289075 37.7732444,-122.4306241 37.7850483,-122.4472753 37.7830133,-122.445902 37.7759581,-122.4546384 37.774656))\",\n \"types\": [\n \"delivery\"\n ]\n },\n {\n \"zone_id\": \"ZoneC\",\n \"description\": \"Delivery Zone for Store C\",\n \"store_id\": \"STORE_ID_45678\",\n \"polygon\": \"POLYGON ((-122.4758889 37.7524995,-122.4751594 37.7321718,-122.4688079 37.7299995,-122.4648597 37.7261979,-122.4519851 37.7228035,-122.4483802 37.7215815,-122.4458053 37.726741,-122.4365356 37.7310857,-122.4315574 37.7324433,-122.4246909 37.7312214,-122.4219444 37.731493,-122.423071 37.7511239,-122.4333707 37.7512596,-122.4354306 37.7602172,-122.4515485 37.7595934,-122.4528628 37.7582744,-122.4540375 37.7566755,-122.4565266 37.7513144,-122.4601315 37.7521288,-122.4618481 37.7514501,-122.4635648 37.7530788,-122.4758889 37.7524995))\",\n \"types\": [\n \"delivery\"\n ]\n }\n ]\n})\nheaders = {\n 'content-type': 'application/json'\n}\n\nresponse = requests.request(\"POST\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
+ },
+ {
+ "lang": "nodejs",
+ "label": "NodeJS",
+ "source": "const axios = require('axios');\nlet data = JSON.stringify({\n \"zones\": [\n {\n \"zone_id\": \"ZoneA\",\n \"description\": \"Delivery Zone for Store A\",\n \"store_id\": \"STORE_ID_123456\",\n \"polygon\": \"POLYGON ((-122.496116 37.7648181,-122.4954079 37.751518,-122.4635648 37.7530788,-122.4618481 37.7514501,-122.4601315 37.7521288,-122.4565266 37.7513144,-122.4540375 37.7566755,-122.4528359 37.7583041,-122.4515485 37.7595934,-122.4546384 37.774656,-122.4718903 37.7731635,-122.472577 37.772485,-122.4755811 37.7725529,-122.4791001 37.7723493,-122.4793576 37.7713995,-122.4784993 37.769839,-122.4783276 37.7680071,-122.4774693 37.766718,-122.4772118 37.7652931,-122.496116 37.7648181))\",\n \"types\": [\n \"delivery\"\n ]\n },\n {\n \"zone_id\": \"ZoneB\",\n \"description\": \"Delivery Zone for Store B\",\n \"store_id\": \"STORE_ID_123456\",\n \"polygon\": \"POLYGON ((-122.4546384 37.774656,-122.4515485 37.7595934,-122.4354306 37.7602172,-122.4333707 37.7512596,-122.423071 37.7511239,-122.4242726 37.7687665,-122.4259893 37.7691736,-122.4289075 37.7732444,-122.4306241 37.7850483,-122.4472753 37.7830133,-122.445902 37.7759581,-122.4546384 37.774656))\",\n \"types\": [\n \"delivery\"\n ]\n },\n {\n \"zone_id\": \"ZoneC\",\n \"description\": \"Delivery Zone for Store C\",\n \"store_id\": \"STORE_ID_45678\",\n \"polygon\": \"POLYGON ((-122.4758889 37.7524995,-122.4751594 37.7321718,-122.4688079 37.7299995,-122.4648597 37.7261979,-122.4519851 37.7228035,-122.4483802 37.7215815,-122.4458053 37.726741,-122.4365356 37.7310857,-122.4315574 37.7324433,-122.4246909 37.7312214,-122.4219444 37.731493,-122.423071 37.7511239,-122.4333707 37.7512596,-122.4354306 37.7602172,-122.4515485 37.7595934,-122.4528628 37.7582744,-122.4540375 37.7566755,-122.4565266 37.7513144,-122.4601315 37.7521288,-122.4618481 37.7514501,-122.4635648 37.7530788,-122.4758889 37.7524995))\",\n \"types\": [\n \"delivery\"\n ]\n }\n ]\n});\n\nlet config = {\n method: 'post',\n maxBodyLength: Infinity,\n url: 'https://api.woosmap.com/zones?private_key=YOUR_PRIVATE_API_KEY',\n headers: { \n 'content-type': 'application/json'\n },\n data : data\n};\n\naxios.request(config)\n.then((response) => {\n console.log(JSON.stringify(response.data));\n})\n.catch((error) => {\n console.log(error);\n});\n"
+ }
+ ]
+ },
+ "put": {
+ "summary": "Update the Zones",
+ "operationId": "updateZones",
+ "servers": [
+ {
+ "url": "https://api.woosmap.com"
+ }
+ ],
+ "tags": [
+ "Zones API"
+ ],
+ "description": "Used to update zones in batch. `zone_id` must exists when using `PUT` method, if one zone does not exists, the batch will be refused.",
+ "security": [
+ {
+ "Woosmap_Platform_API_Reference_PrivateApiKeyAuth": []
+ }
+ ],
+ "requestBody": {
+ "description": "The request body of Zones Update must be formatted as JSON.",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_ZonesCollectionRequest"
+ },
+ "examples": {
+ "default": {
+ "summary": "Zones data",
+ "value": {
+ "zones": [
+ {
+ "zone_id": "ZoneA",
+ "description": "Delivery Zone for Store A",
+ "store_id": "STORE_ID_123456",
+ "polygon": "POLYGON ((-122.496116 37.7648181,-122.4954079 37.751518,-122.4635648 37.7530788,-122.4618481 37.7514501,-122.4601315 37.7521288,-122.4565266 37.7513144,-122.4540375 37.7566755,-122.4528359 37.7583041,-122.4515485 37.7595934,-122.4546384 37.774656,-122.4718903 37.7731635,-122.472577 37.772485,-122.4755811 37.7725529,-122.4791001 37.7723493,-122.4793576 37.7713995,-122.4784993 37.769839,-122.4783276 37.7680071,-122.4774693 37.766718,-122.4772118 37.7652931,-122.496116 37.7648181))",
+ "types": [
+ "delivery"
+ ]
+ },
+ {
+ "zone_id": "ZoneB",
+ "description": "Delivery Zone for Store B",
+ "store_id": "STORE_ID_123456",
+ "polygon": "POLYGON ((-122.4546384 37.774656,-122.4515485 37.7595934,-122.4354306 37.7602172,-122.4333707 37.7512596,-122.423071 37.7511239,-122.4242726 37.7687665,-122.4259893 37.7691736,-122.4289075 37.7732444,-122.4306241 37.7850483,-122.4472753 37.7830133,-122.445902 37.7759581,-122.4546384 37.774656))",
+ "types": [
+ "delivery"
+ ]
+ },
+ {
+ "zone_id": "ZoneC",
+ "description": "Delivery Zone for Store C",
+ "store_id": "STORE_ID_45678",
+ "polygon": "POLYGON ((-122.4758889 37.7524995,-122.4751594 37.7321718,-122.4688079 37.7299995,-122.4648597 37.7261979,-122.4519851 37.7228035,-122.4483802 37.7215815,-122.4458053 37.726741,-122.4365356 37.7310857,-122.4315574 37.7324433,-122.4246909 37.7312214,-122.4219444 37.731493,-122.423071 37.7511239,-122.4333707 37.7512596,-122.4354306 37.7602172,-122.4515485 37.7595934,-122.4528628 37.7582744,-122.4540375 37.7566755,-122.4565266 37.7513144,-122.4601315 37.7521288,-122.4618481 37.7514501,-122.4635648 37.7530788,-122.4758889 37.7524995))",
+ "types": [
+ "delivery"
+ ]
+ }
+ ]
+ }
}
}
}
- },
- "422": {
- "description": "Validation Error",
+ }
+ },
+ "responses": {
+ "200": {
+ "description": "Zones successfully updated",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Distance_HTTPValidationError"
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_SuccessZones"
+ },
+ "examples": {
+ "default": {
+ "summary": "Success response for Zones updated",
+ "value": {
+ "status": "ok",
+ "message": "Zones successfully added."
+ }
+ }
}
}
}
},
- "429": {
- "description": "Rate limit reached",
+ "400": {
+ "description": "Invalid. The data is not a valid JSON.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Distance_HTTPErrorModel"
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error400"
+ },
+ "examples": {
+ "Invalid": {
+ "summary": "Error 400",
+ "value": {
+ "status": "error",
+ "value": "The request is invalid, the data is not a valid JSON."
+ }
+ }
}
}
}
- }
- }
- }
- },
- "/distance/distancematrix/json/": {
- "get": {
- "tags": [
- "Matrix API"
- ],
- "summary": "Calculate Matrix",
- "description": "Get distances and durations for a matrix of origins and destinations, based on the recommended route between start and end points for a specified travel mode.\n\n**Rate limit**: `10 requests/1s` GET and POST\n\n**Elements limit**: `1000 elements/1s` GET and POST\n\n**Rate limit with TRAFFIC**: `10 requests/1s` GET and POST\n\n**Elements limit with TRAFFIC**: `1000 elements/1s`GET and POST",
- "operationId": "matrix_distance_distancematrix_json__get",
- "security": [
- {
- "Distance_PublicAPIKey": []
- },
- {
- "Distance_PrivateApiKey": []
- },
- {
- "Distance_PrivateApiKeyHeader": []
- }
- ],
- "parameters": [
- {
- "name": "mode",
- "in": "query",
- "required": false,
- "schema": {
- "enum": [
- "driving",
- "walking",
- "cycling"
- ],
- "type": "string",
- "description": "Specifies the mode of transport to use for the calculation.",
- "default": "driving",
- "title": "Mode"
- },
- "description": "Specifies the mode of transport to use for the calculation."
- },
- {
- "name": "method",
- "in": "query",
- "required": false,
- "schema": {
- "enum": [
- "time",
- "distance"
- ],
- "type": "string",
- "description": "Specifies how to compute the route between the start point and the end point:\n* `time`: fastest route \n* `distance`: shortest route",
- "default": "time",
- "title": "Method"
- },
- "description": "Specifies how to compute the route between the start point and the end point:\n* `time`: fastest route \n* `distance`: shortest route"
- },
- {
- "name": "units",
- "in": "query",
- "required": false,
- "schema": {
- "enum": [
- "metric",
- "imperial"
- ],
- "type": "string",
- "description": "Specifies the unit system to use when displaying results.",
- "default": "metric",
- "title": "Units"
- },
- "description": "Specifies the unit system to use when displaying results."
- },
- {
- "name": "language",
- "in": "query",
- "required": false,
- "schema": {
- "enum": [
- "en",
- "fr",
- "ca",
- "de",
- "es",
- "he",
- "it",
- "ja",
- "nl",
- "pl",
- "pt",
- "ro",
- "ru",
- "uk",
- "zh"
- ],
- "type": "string",
- "description": "The language code, indicating in the language the response should be in. \n \nIf not defined the header `Accept-Language` of the request will be checked before defaulting to `en`.",
- "default": "en",
- "title": "Language"
- },
- "description": "The language code, indicating in the language the response should be in. \n \nIf not defined the header `Accept-Language` of the request will be checked before defaulting to `en`."
},
- {
- "name": "avoid",
- "in": "query",
- "required": false,
- "schema": {
- "anyOf": [
- {
- "type": "string"
+ "401": {
+ "description": "Unauthorized. Incorrect authentication credentials.",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error401"
},
- {
- "type": "null"
+ "examples": {
+ "Unauthorized": {
+ "summary": "Error 401",
+ "value": {
+ "detail": "Incorrect authentication credentials. Please check or use a valid API Key"
+ }
+ }
}
- ],
- "description": "A list of features that you want to avoid. Valid values are `tolls`, `highways`, `ferries` or polygons coordinates whose vertex latlng are separated by a semicolon `;`. \n \nTo add multiple features, separate them with the pipe `|` character.",
- "examples": [
- "tolls",
- "tolls|highways|43.3,3.4;42.1,3.5;41.4,3.6"
- ],
- "title": "Avoid"
- },
- "description": "A list of features that you want to avoid. Valid values are `tolls`, `highways`, `ferries` or polygons coordinates whose vertex latlng are separated by a semicolon `;`. \n \nTo add multiple features, separate them with the pipe `|` character."
+ }
+ }
},
+ "403": {
+ "description": "Forbidden. This Woosmap API is not enabled for this project.",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error403"
+ },
+ "examples": {
+ "Forbidden": {
+ "summary": "Error 403",
+ "value": {
+ "detail": "This Woosmap API is not enabled for this project."
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "x-codeSamples": [
{
- "name": "origins",
- "in": "query",
- "required": true,
- "schema": {
- "type": "string",
- "description": "The starting points. You can supply one or more locations, in the form of `latitude,longitude` coordinates, separated by the pipe character `|`. Ensure that no space exists between the latitude and longitude values. \n \nIn order to reduce URL size, [encoded polylines](https://developers.google.com/maps/documentation/utilities/polylinealgorithm) are also supported using `enc::`",
- "examples": [
- "48.709,2.403|48.768,2.338",
- "enc:_p~iF~ps|U_ulLnnqC_mqNvxq`@:"
- ],
- "title": "Origins"
- },
- "description": "The starting points. You can supply one or more locations, in the form of `latitude,longitude` coordinates, separated by the pipe character `|`. Ensure that no space exists between the latitude and longitude values. \n \nIn order to reduce URL size, [encoded polylines](https://developers.google.com/maps/documentation/utilities/polylinealgorithm) are also supported using `enc::`"
+ "lang": "curl",
+ "label": "cURL",
+ "source": "curl -L -X PUT 'https://api.woosmap.com/zones?private_key=YOUR_PRIVATE_API_KEY' \\\n-H 'content-type: application/json' \\\n-d '{\n \"zones\": [\n {\n \"zone_id\": \"ZoneA\",\n \"description\": \"Delivery Zone for Store A\",\n \"store_id\": \"STORE_ID_45678\",\n \"polygon\": \"POLYGON ((-122.496116 37.7648181,-122.4954079 37.751518,-122.4635648 37.7530788,-122.4618481 37.7514501,-122.4601315 37.7521288,-122.4565266 37.7513144,-122.4540375 37.7566755,-122.4528359 37.7583041,-122.4515485 37.7595934,-122.4546384 37.774656,-122.4718903 37.7731635,-122.472577 37.772485,-122.4755811 37.7725529,-122.4791001 37.7723493,-122.4793576 37.7713995,-122.4784993 37.769839,-122.4783276 37.7680071,-122.4774693 37.766718,-122.4772118 37.7652931,-122.496116 37.7648181))\",\n \"types\": [\n \"delivery\"\n ]\n }\n ]\n}'"
},
{
- "name": "destinations",
- "in": "query",
- "required": true,
- "schema": {
- "type": "string",
- "description": "The ending points. You can supply one or more locations, in the form of `latitude,longitude` coordinates, separated by the pipe character `|`. Ensure that no space exists between the latitude and longitude values. \n \nIn order to reduce URL size, [encoded polylines](https://developers.google.com/maps/documentation/utilities/polylinealgorithm) are also supported using `enc::`",
- "examples": [
- "48.709,2.403|48.768,2.338",
- "enc:_p~iF~ps|U_ulLnnqC_mqNvxq`@:"
- ],
- "title": "Destinations"
- },
- "description": "The ending points. You can supply one or more locations, in the form of `latitude,longitude` coordinates, separated by the pipe character `|`. Ensure that no space exists between the latitude and longitude values. \n \nIn order to reduce URL size, [encoded polylines](https://developers.google.com/maps/documentation/utilities/polylinealgorithm) are also supported using `enc::`"
+ "lang": "python",
+ "label": "Python",
+ "source": "import requests\nimport json\n\nurl = \"https://api.woosmap.com/zones?private_key=YOUR_PRIVATE_API_KEY\"\n\npayload = json.dumps({\n \"zones\": [\n {\n \"zone_id\": \"ZoneA\",\n \"description\": \"Delivery Zone for Store A\",\n \"store_id\": \"STORE_ID_45678\",\n \"polygon\": \"POLYGON ((-122.496116 37.7648181,-122.4954079 37.751518,-122.4635648 37.7530788,-122.4618481 37.7514501,-122.4601315 37.7521288,-122.4565266 37.7513144,-122.4540375 37.7566755,-122.4528359 37.7583041,-122.4515485 37.7595934,-122.4546384 37.774656,-122.4718903 37.7731635,-122.472577 37.772485,-122.4755811 37.7725529,-122.4791001 37.7723493,-122.4793576 37.7713995,-122.4784993 37.769839,-122.4783276 37.7680071,-122.4774693 37.766718,-122.4772118 37.7652931,-122.496116 37.7648181))\",\n \"types\": [\n \"delivery\"\n ]\n }\n ]\n})\nheaders = {\n 'content-type': 'application/json'\n}\n\nresponse = requests.request(\"PUT\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
},
{
- "name": "arrival_time",
- "in": "query",
- "required": false,
- "schema": {
- "anyOf": [
- {
- "type": "string"
+ "lang": "nodejs",
+ "label": "NodeJS",
+ "source": "const axios = require('axios');\nlet data = JSON.stringify({\n \"zones\": [\n {\n \"zone_id\": \"ZoneA\",\n \"description\": \"Delivery Zone for Store A\",\n \"store_id\": \"STORE_ID_45678\",\n \"polygon\": \"POLYGON ((-122.496116 37.7648181,-122.4954079 37.751518,-122.4635648 37.7530788,-122.4618481 37.7514501,-122.4601315 37.7521288,-122.4565266 37.7513144,-122.4540375 37.7566755,-122.4528359 37.7583041,-122.4515485 37.7595934,-122.4546384 37.774656,-122.4718903 37.7731635,-122.472577 37.772485,-122.4755811 37.7725529,-122.4791001 37.7723493,-122.4793576 37.7713995,-122.4784993 37.769839,-122.4783276 37.7680071,-122.4774693 37.766718,-122.4772118 37.7652931,-122.496116 37.7648181))\",\n \"types\": [\n \"delivery\"\n ]\n }\n ]\n});\n\nlet config = {\n method: 'put',\n maxBodyLength: Infinity,\n url: 'https://api.woosmap.com/zones?private_key=YOUR_PRIVATE_API_KEY',\n headers: { \n 'content-type': 'application/json'\n },\n data : data\n};\n\naxios.request(config)\n.then((response) => {\n console.log(JSON.stringify(response.data));\n})\n.catch((error) => {\n console.log(error);\n});\n"
+ }
+ ]
+ },
+ "delete": {
+ "summary": "Delete the Zones",
+ "operationId": "deleteZones",
+ "servers": [
+ {
+ "url": "https://api.woosmap.com"
+ }
+ ],
+ "tags": [
+ "Zones API"
+ ],
+ "description": "Used to delete one or more Zones.",
+ "security": [
+ {
+ "Woosmap_Platform_API_Reference_PrivateApiKeyAuth": []
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Zones successfully deleted",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_SuccessZones"
},
- {
- "type": "null"
+ "examples": {
+ "default": {
+ "summary": "Success response for Zones deleted",
+ "value": {
+ "status": "ok",
+ "message": "Zones deleted."
+ }
+ }
}
- ],
- "description": "Specify your desired arrival time.\n\nBy using this parameter, Distance will calculate the duration with **traffic**. Valid values are a UNIX timestamp (e.g. `1600799173` for the date: `22/09/2020 20:26:13`) or `now`. \n\nUse either `arrival_time` or `departure_time`, not both.",
- "examples": [
- "1600799173",
- "now"
- ],
- "title": "Arrival Time"
- },
- "description": "Specify your desired arrival time.\n\nBy using this parameter, Distance will calculate the duration with **traffic**. Valid values are a UNIX timestamp (e.g. `1600799173` for the date: `22/09/2020 20:26:13`) or `now`. \n\nUse either `arrival_time` or `departure_time`, not both."
+ }
+ }
},
- {
- "name": "departure_time",
- "in": "query",
- "required": false,
- "schema": {
- "anyOf": [
- {
- "type": "string"
+ "401": {
+ "description": "Unauthorized. Incorrect authentication credentials.",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error401"
},
- {
- "type": "null"
+ "examples": {
+ "Unauthorized": {
+ "summary": "Error 401",
+ "value": {
+ "detail": "Incorrect authentication credentials. Please check or use a valid API Key"
+ }
+ }
}
- ],
- "description": "Specify your desired departure time.\n\nBy using this parameter, Distance will calculate the duration with **traffic**. Valid values are a UNIX timestamp (e.g. `1600799173` for the date: `22/09/2020 20:26:13`) or `now`. \n\nUse either `arrival_time` or `departure_time`, not both.",
- "examples": [
- "1600799173",
- "now"
- ],
- "title": "Departure Time"
- },
- "description": "Specify your desired departure time.\n\nBy using this parameter, Distance will calculate the duration with **traffic**. Valid values are a UNIX timestamp (e.g. `1600799173` for the date: `22/09/2020 20:26:13`) or `now`. \n\nUse either `arrival_time` or `departure_time`, not both."
+ }
+ }
},
+ "403": {
+ "description": "Forbidden. This Woosmap API is not enabled for this project.",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error403"
+ },
+ "examples": {
+ "Forbidden": {
+ "summary": "Error 403",
+ "value": {
+ "detail": "This Woosmap API is not enabled for this project."
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "x-codeSamples": [
{
- "name": "elements",
- "in": "query",
- "required": false,
- "schema": {
- "enum": [
- "distance",
- "duration",
- "duration_distance"
- ],
- "type": "string",
- "description": "Specifies element values that will be part of the API response (`distance` and/or `duration`).",
- "default": "distance",
- "title": "Elements"
- },
- "description": "Specifies element values that will be part of the API response (`distance` and/or `duration`)."
+ "lang": "curl",
+ "label": "cURL",
+ "source": "curl -L -X DELETE 'https://api.woosmap.com/zones/?private_key=YOUR_PRIVATE_API_KEY'"
},
{
- "name": "accept-language",
- "in": "header",
- "required": false,
+ "lang": "python",
+ "label": "Python",
+ "source": "import requests\n\nurl = \"https://api.woosmap.com/zones/?private_key=YOUR_PRIVATE_API_KEY\"\n\npayload = {}\nheaders = {}\n\nresponse = requests.request(\"DELETE\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
+ },
+ {
+ "lang": "nodejs",
+ "label": "NodeJS",
+ "source": "const axios = require('axios');\n\nlet config = {\n method: 'delete',\n maxBodyLength: Infinity,\n url: 'https://api.woosmap.com/zones/?private_key=YOUR_PRIVATE_API_KEY',\n headers: { }\n};\n\naxios.request(config)\n.then((response) => {\n console.log(JSON.stringify(response.data));\n})\n.catch((error) => {\n console.log(error);\n});\n"
+ }
+ ]
+ }
+ },
+ "/zones/{zone_id}": {
+ "get": {
+ "summary": "Get Zone from ID",
+ "operationId": "getZone",
+ "servers": [
+ {
+ "url": "https://api.woosmap.com"
+ }
+ ],
+ "tags": [
+ "Zones API"
+ ],
+ "description": "Used to retrieve a zone from his `zone_id`\n",
+ "security": [
+ {
+ "Woosmap_Platform_API_Reference_PrivateApiKeyAuth": []
+ }
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "zone_id",
"schema": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "title": "Accept-Language"
- }
+ "type": "string"
+ },
+ "required": true,
+ "example": "ZoneA",
+ "description": "ID of the zone to get"
}
],
"responses": {
"200": {
- "description": "Successful Response",
+ "description": "Zone successfully retrieved",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Distance_MatrixResponse"
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Zone"
+ },
+ "examples": {
+ "default": {
+ "summary": "Get a zone from its zone_id",
+ "value": {
+ "store_id": "STORE_ID_123456",
+ "zone_id": "ZoneA",
+ "polygon": "POLYGON ((-122.496116 37.7648181, -122.4954079 37.751518, -122.4635648 37.7530788, -122.4618481 37.7514501, -122.4601315 37.7521288, -122.4565266 37.7513144, -122.4540375 37.7566755, -122.4528359 37.7583041, -122.4515485 37.7595934, -122.4546384 37.774656, -122.4718903 37.7731635, -122.472577 37.772485, -122.4755811 37.7725529, -122.4791001 37.7723493, -122.4793576 37.7713995, -122.4784993 37.769839, -122.4783276 37.7680071, -122.4774693 37.766718, -122.4772118 37.7652931, -122.496116 37.7648181))",
+ "types": [
+ "delivery"
+ ],
+ "description": "Delivery Zone for Store A",
+ "status": "ok"
+ }
+ }
}
}
}
},
"401": {
- "description": "Unable to locate credentials.",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Distance_AuthenticationErrorResponse"
- }
- }
- }
- },
- "402": {
- "description": "Out of free quota.",
+ "description": "Unauthorized. Incorrect authentication credentials.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Distance_AuthenticationErrorResponse"
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error401"
+ },
+ "examples": {
+ "Unauthorized": {
+ "summary": "Error 401",
+ "value": {
+ "detail": "Incorrect authentication credentials. Please check or use a valid API Key"
+ }
+ }
}
}
}
},
"403": {
- "description": "Credentials found, but not matching.",
+ "description": "Forbidden. This Woosmap API is not enabled for this project.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Distance_AuthenticationErrorResponse"
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error403"
+ },
+ "examples": {
+ "Forbidden": {
+ "summary": "Error 403",
+ "value": {
+ "detail": "This Woosmap API is not enabled for this project."
+ }
+ }
}
}
}
},
- "422": {
- "description": "Validation Error",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Distance_HTTPValidationError"
- }
- }
- }
+ "404": {
+ "description": "Not Found - `zone_id` do not exist."
+ }
+ },
+ "x-codeSamples": [
+ {
+ "lang": "curl",
+ "label": "cURL",
+ "source": "curl -L 'https://api.woosmap.com/zones/ZoneA/?private_key=YOUR_PRIVATE_API_KEY'"
},
- "429": {
- "description": "Rate limit reached",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Distance_HTTPErrorModel"
- }
- }
- }
+ {
+ "lang": "javascript",
+ "label": "JavaScript",
+ "source": "const requestOptions = {\n method: \"GET\",\n redirect: \"follow\"\n};\n\nfetch(\"https://api.woosmap.com/zones/ZoneA/?private_key=YOUR_PRIVATE_API_KEY\", requestOptions)\n .then((response) => response.text())\n .then((result) => console.log(result))\n .catch((error) => console.error(error));"
+ },
+ {
+ "lang": "python",
+ "label": "Python",
+ "source": "import requests\n\nurl = \"https://api.woosmap.com/zones/ZoneA/?private_key=YOUR_PRIVATE_API_KEY\"\n\npayload = {}\nheaders = {}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
}
- }
+ ]
},
- "post": {
+ "delete": {
+ "summary": "Delete Zone from ID",
+ "operationId": "deleteZone",
+ "servers": [
+ {
+ "url": "https://api.woosmap.com"
+ }
+ ],
"tags": [
- "Matrix API"
+ "Zones API"
],
- "summary": "Calculate Matrix",
- "description": "Get distances and durations for a matrix of origins and destinations, based on the recommended route between start and end points for a specified travel mode.\n\n**Rate limit**: `10 requests/1s` GET and POST\n\n**Elements limit**: `1000 elements/1s` GET and POST\n\n**Rate limit with TRAFFIC**: `10 requests/1s` GET and POST\n\n**Elements limit with TRAFFIC**: `1000 elements/1s` GET and POST",
- "operationId": "matrix_post_distance_distancematrix_json__post",
+ "description": "Used to delete one Zone. The `zone_id` is the id of the zone to delete. To delete several zones, use the comma as a separator.",
"security": [
{
- "Distance_PublicAPIKey": []
- },
- {
- "Distance_PrivateApiKey": []
- },
- {
- "Distance_PrivateApiKeyHeader": []
+ "Woosmap_Platform_API_Reference_PrivateApiKeyAuth": []
}
],
"parameters": [
{
- "name": "accept-language",
- "in": "header",
- "required": false,
+ "in": "path",
+ "name": "zone_id",
"schema": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "title": "Accept-Language"
- }
+ "type": "string"
+ },
+ "required": true,
+ "example": "ZoneA",
+ "description": "ID of the zone to delete"
}
],
- "requestBody": {
- "required": true,
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Distance_MatrixRequest"
- }
- }
- }
- },
"responses": {
"200": {
- "description": "Successful Response",
+ "description": "Zones successfully deleted",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Distance_MatrixResponse"
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_SuccessZones"
+ },
+ "examples": {
+ "default": {
+ "summary": "Success response for Zones deleted",
+ "value": {
+ "status": "ok",
+ "message": "Zone ZoneA deleted."
+ }
+ }
}
}
}
},
"401": {
- "description": "Unable to locate credentials.",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Distance_AuthenticationErrorResponse"
- }
- }
- }
- },
- "402": {
- "description": "Out of free quota.",
+ "description": "Unauthorized. Incorrect authentication credentials.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Distance_AuthenticationErrorResponse"
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error401"
+ },
+ "examples": {
+ "Unauthorized": {
+ "summary": "Error 401",
+ "value": {
+ "detail": "Incorrect authentication credentials. Please check or use a valid API Key"
+ }
+ }
}
}
}
},
"403": {
- "description": "Credentials found, but not matching.",
+ "description": "Forbidden. This Woosmap API is not enabled for this project.",
"content": {
"application/json": {
"schema": {
- "$ref": "#/components/schemas/Distance_AuthenticationErrorResponse"
+ "$ref": "#/components/schemas/Woosmap_Platform_API_Reference_Error403"
+ },
+ "examples": {
+ "Forbidden": {
+ "summary": "Error 403",
+ "value": {
+ "detail": "This Woosmap API is not enabled for this project."
+ }
+ }
}
}
}
+ }
+ },
+ "x-codeSamples": [
+ {
+ "lang": "curl",
+ "label": "cURL",
+ "source": "curl -L -X DELETE 'https://api.woosmap.com/zones/ZoneA/?private_key=YOUR_PRIVATE_API_KEY'"
},
- "422": {
- "description": "Validation Error",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Distance_HTTPValidationError"
- }
- }
- }
+ {
+ "lang": "python",
+ "label": "Python",
+ "source": "import requests\n\nurl = \"https://api.woosmap.com/zones/ZoneA/?private_key=YOUR_PRIVATE_API_KEY\"\n\npayload={}\nheaders = {}\n\nresponse = requests.request(\"DELETE\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
},
- "429": {
- "description": "Rate limit reached",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Distance_HTTPErrorModel"
- }
- }
- }
+ {
+ "lang": "nodejs",
+ "label": "NodeJS",
+ "source": "var axios = require('axios');\n\nvar config = {\n method: 'delete',\n url: 'https://api.woosmap.com/zones/ZoneA/?private_key=YOUR_PRIVATE_API_KEY',\n headers: { }\n};\n\naxios(config)\n.then(function (response) {\n console.log(JSON.stringify(response.data));\n})\n.catch(function (error) {\n console.log(error);\n});\n"
}
- }
+ ]
}
}
},
@@ -18793,8 +18805,7 @@
"minimum": -90
},
{
- "type": "string",
- "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$"
+ "type": "string"
}
],
"title": "Lat"
@@ -18807,8 +18818,7 @@
"minimum": -180
},
{
- "type": "string",
- "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$"
+ "type": "string"
}
],
"title": "Lng"
@@ -19475,6 +19485,19 @@
"title": "FeatureSummaryResponse",
"description": "FeatureSummaryResponse represents the minimal amount of information to be able to fetch a feature details."
},
+ "Datasets_HTTPErrorModel": {
+ "properties": {
+ "details": {
+ "type": "string",
+ "title": "Details"
+ }
+ },
+ "type": "object",
+ "required": [
+ "details"
+ ],
+ "title": "HTTPErrorModel"
+ },
"Datasets_HTTPValidationError": {
"properties": {
"detail": {
@@ -19931,19 +19954,6 @@
],
"title": "ValidationError"
},
- "Datasets_features__internal__responses__HTTPErrorModel": {
- "properties": {
- "details": {
- "type": "string",
- "title": "Details"
- }
- },
- "type": "object",
- "required": [
- "details"
- ],
- "title": "HTTPErrorModel"
- },
"Distance_AuthenticationErrorResponse": {
"properties": {
"detail": {
@@ -21592,11 +21602,8 @@
{
"name": "Distance",
"tags": [
- "Route API",
- "Matrix API",
- "Transit API",
- "Isochrone API",
- "Tolls API"
+ "Distance API",
+ "Transit API"
]
}
]
diff --git a/dist/woosmap-postman.json b/dist/woosmap-postman.json
index b870dacf..bb5e59fe 100755
--- a/dist/woosmap-postman.json
+++ b/dist/woosmap-postman.json
@@ -5,7 +5,7 @@
"description": "Stores Search API lets you query the Assets which are returned as a [GeoJson](https://geojson.org/). Request is done over HTTPS using GET. You must specify a key in your request, included as the value of a `key` parameter for your public key or `private_key` for your private key. This key identifies your application for purposes of quota management. Learn how to [get a key](https://developers.woosmap.com/support/api-keys/). If your request returns a high number of assets, the result will be paginated. If so, you can request assets by page using `page` and `stores_by_page` parameters (Default is **100**, max is **300**).\n",
"item": [
{
- "id": "e52a3912-c687-4f37-9448-e2449524ee78",
+ "id": "12f42328-1c1d-47dd-9e88-d28425f5998e",
"name": "Search for assets",
"request": {
"name": "Search for assets",
@@ -128,7 +128,7 @@
},
"response": [
{
- "id": "6667267f-8493-40c3-96eb-9e545bc1799f",
+ "id": "99360d16-521b-4004-a311-5bfd3e4073b4",
"name": "Assets successfully retrieved",
"originalRequest": {
"url": {
@@ -243,12 +243,12 @@
"value": "application/json"
}
],
- "body": "{\n \"type\": \"FeatureCollection\",\n \"features\": [\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"name\": \"\",\n \"store_id\": \"\",\n \"address\": {\n \"lines\": [\n \"\",\n \"\"\n ],\n \"country_code\": \"\",\n \"city\": \"\",\n \"zipcode\": \"\"\n },\n \"contact\": {\n \"website\": \"\",\n \"phone\": \"\",\n \"email\": \"\"\n },\n \"open\": {\n \"current_slice\": {\n \"start\": \"\",\n \"end\": \"\"\n },\n \"open_hours\": [\n {\n \"start\": \"\",\n \"end\": \"\"\n },\n {\n \"start\": \"\",\n \"end\": \"\"\n }\n ],\n \"open_now\": \"\",\n \"next_opening\": {\n \"end\": \"\",\n \"start\": \"\",\n \"day\": \"\"\n },\n \"week_day\": \"\"\n },\n \"weekly_opening\": {\n \"1\": {\n \"hours\": [\n {\n \"start\": \"\",\n \"end\": \"\"\n },\n {\n \"start\": \"\",\n \"end\": \"\"\n }\n ],\n \"isSpecial\": \"\"\n },\n \"2\": {\n \"hours\": [\n {\n \"start\": \"\",\n \"end\": \"\"\n },\n {\n \"start\": \"\",\n \"end\": \"\"\n }\n ],\n \"isSpecial\": \"\"\n },\n \"3\": {\n \"hours\": [\n {\n \"start\": \"\",\n \"end\": \"\"\n },\n {\n \"start\": \"\",\n \"end\": \"\"\n }\n ],\n \"isSpecial\": \"\"\n },\n \"4\": {\n \"hours\": [\n {\n \"start\": \"\",\n \"end\": \"\"\n },\n {\n \"start\": \"\",\n \"end\": \"\"\n }\n ],\n \"isSpecial\": \"\"\n },\n \"5\": {\n \"hours\": [\n {\n \"start\": \"\",\n \"end\": \"\"\n },\n {\n \"start\": \"\",\n \"end\": \"\"\n }\n ],\n \"isSpecial\": \"\"\n },\n \"6\": {\n \"hours\": [\n {\n \"start\": \"\",\n \"end\": \"\"\n },\n {\n \"start\": \"\",\n \"end\": \"\"\n }\n ],\n \"isSpecial\": \"\"\n },\n \"7\": {\n \"hours\": [\n {\n \"start\": \"\",\n \"end\": \"\"\n },\n {\n \"start\": \"\",\n \"end\": \"\"\n }\n ],\n \"isSpecial\": \"\"\n },\n \"timezone\": \"\"\n },\n \"types\": [\n \"\",\n \"\"\n ],\n \"tags\": [\n \"\",\n \"\"\n ],\n \"last_updated\": \"\",\n \"user_properties\": {\n \"aliquip3bd\": \"aliquip voluptate in\",\n \"laborum_38\": false\n },\n \"opening_hours\": {\n \"timezone\": \"\",\n \"usual\": {\n \"1\": [\n {\n \"start\": \"\",\n \"end\": \"\"\n },\n {\n \"start\": \"\",\n \"end\": \"\"\n }\n ],\n \"2\": [\n {\n \"start\": \"\",\n \"end\": \"\"\n },\n {\n \"start\": \"\",\n \"end\": \"\"\n }\n ],\n \"3\": [\n {\n \"start\": \"\",\n \"end\": \"\"\n },\n {\n \"start\": \"\",\n \"end\": \"\"\n }\n ],\n \"4\": [\n {\n \"start\": \"\",\n \"end\": \"\"\n },\n {\n \"start\": \"\",\n \"end\": \"\"\n }\n ],\n \"5\": [\n {\n \"start\": \"\",\n \"end\": \"\"\n },\n {\n \"start\": \"\",\n \"end\": \"\"\n }\n ],\n \"6\": [\n {\n \"start\": \"\",\n \"end\": \"\"\n },\n {\n \"start\": \"\",\n \"end\": \"\"\n }\n ],\n \"7\": [\n {\n \"start\": \"\",\n \"end\": \"\"\n },\n {\n \"start\": \"\",\n \"end\": \"\"\n }\n ],\n \"default\": [\n {\n \"start\": \"\",\n \"end\": \"\"\n },\n {\n \"start\": \"\",\n \"end\": \"\"\n }\n ]\n },\n \"special\": {\n \"2015-02-07\": [\n {\n \"start\": \"\",\n \"end\": \"\"\n },\n {\n \"start\": \"\",\n \"end\": \"\"\n }\n ],\n \"2015-02-08\": [\n {\n \"start\": \"\",\n \"end\": \"\"\n },\n {\n \"start\": \"\",\n \"end\": \"\"\n }\n ]\n }\n },\n \"distance\": \"\"\n },\n \"geometry\": {\n \"type\": \"Point\",\n \"coordinates\": [\n \"\",\n \"\"\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"name\": \"\",\n \"store_id\": \"\",\n \"address\": {\n \"lines\": [\n \"\",\n \"\"\n ],\n \"country_code\": \"\",\n \"city\": \"\",\n \"zipcode\": \"\"\n },\n \"contact\": {\n \"website\": \"\",\n \"phone\": \"\",\n \"email\": \"\"\n },\n \"open\": {\n \"current_slice\": {\n \"start\": \"\",\n \"end\": \"\"\n },\n \"open_hours\": [\n {\n \"start\": \"\",\n \"end\": \"\"\n },\n {\n \"start\": \"\",\n \"end\": \"\"\n }\n ],\n \"open_now\": \"\",\n \"next_opening\": {\n \"end\": \"\",\n \"start\": \"\",\n \"day\": \"\"\n },\n \"week_day\": \"\"\n },\n \"weekly_opening\": {\n \"1\": {\n \"hours\": [\n {\n \"start\": \"\",\n \"end\": \"\"\n },\n {\n \"start\": \"\",\n \"end\": \"\"\n }\n ],\n \"isSpecial\": \"\"\n },\n \"2\": {\n \"hours\": [\n {\n \"start\": \"\",\n \"end\": \"\"\n },\n {\n \"start\": \"\",\n \"end\": \"\"\n }\n ],\n \"isSpecial\": \"\"\n },\n \"3\": {\n \"hours\": [\n {\n \"start\": \"\",\n \"end\": \"\"\n },\n {\n \"start\": \"\",\n \"end\": \"\"\n }\n ],\n \"isSpecial\": \"\"\n },\n \"4\": {\n \"hours\": [\n {\n \"start\": \"\",\n \"end\": \"\"\n },\n {\n \"start\": \"\",\n \"end\": \"\"\n }\n ],\n \"isSpecial\": \"\"\n },\n \"5\": {\n \"hours\": [\n {\n \"start\": \"\",\n \"end\": \"\"\n },\n {\n \"start\": \"\",\n \"end\": \"\"\n }\n ],\n \"isSpecial\": \"\"\n },\n \"6\": {\n \"hours\": [\n {\n \"start\": \"\",\n \"end\": \"\"\n },\n {\n \"start\": \"\",\n \"end\": \"\"\n }\n ],\n \"isSpecial\": \"\"\n },\n \"7\": {\n \"hours\": [\n {\n \"start\": \"\",\n \"end\": \"\"\n },\n {\n \"start\": \"\",\n \"end\": \"\"\n }\n ],\n \"isSpecial\": \"\"\n },\n \"timezone\": \"\"\n },\n \"types\": [\n \"\",\n \"\"\n ],\n \"tags\": [\n \"\",\n \"\"\n ],\n \"last_updated\": \"\",\n \"user_properties\": {\n \"labore_3\": 89634054.20115867,\n \"in19b\": -38166913.678050295,\n \"laboris0\": 59842682\n },\n \"opening_hours\": {\n \"timezone\": \"\",\n \"usual\": {\n \"1\": [\n {\n \"start\": \"\",\n \"end\": \"\"\n },\n {\n \"start\": \"\",\n \"end\": \"\"\n }\n ],\n \"2\": [\n {\n \"start\": \"\",\n \"end\": \"\"\n },\n {\n \"start\": \"\",\n \"end\": \"\"\n }\n ],\n \"3\": [\n {\n \"start\": \"\",\n \"end\": \"\"\n },\n {\n \"start\": \"\",\n \"end\": \"\"\n }\n ],\n \"4\": [\n {\n \"start\": \"\",\n \"end\": \"\"\n },\n {\n \"start\": \"\",\n \"end\": \"\"\n }\n ],\n \"5\": [\n {\n \"start\": \"\",\n \"end\": \"\"\n },\n {\n \"start\": \"\",\n \"end\": \"\"\n }\n ],\n \"6\": [\n {\n \"start\": \"\",\n \"end\": \"\"\n },\n {\n \"start\": \"\",\n \"end\": \"\"\n }\n ],\n \"7\": [\n {\n \"start\": \"\",\n \"end\": \"\"\n },\n {\n \"start\": \"\",\n \"end\": \"\"\n }\n ],\n \"default\": [\n {\n \"start\": \"\",\n \"end\": \"\"\n },\n {\n \"start\": \"\",\n \"end\": \"\"\n }\n ]\n },\n \"special\": {\n \"2015-02-07\": [\n {\n \"start\": \"\",\n \"end\": \"\"\n },\n {\n \"start\": \"\",\n \"end\": \"\"\n }\n ],\n \"2015-02-08\": [\n {\n \"start\": \"\",\n \"end\": \"\"\n },\n {\n \"start\": \"\",\n \"end\": \"\"\n }\n ]\n }\n },\n \"distance\": \"\"\n },\n \"geometry\": {\n \"type\": \"Point\",\n \"coordinates\": [\n \"\",\n \"\"\n ]\n }\n }\n ],\n \"pagination\": {\n \"page\": \"\",\n \"pageCount\": \"\"\n }\n}",
+ "body": "{\n \"type\": \"FeatureCollection\",\n \"features\": [\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"name\": \"\",\n \"store_id\": \"\",\n \"address\": {\n \"lines\": [\n \"\",\n \"\"\n ],\n \"country_code\": \"\",\n \"city\": \"\",\n \"zipcode\": \"\"\n },\n \"contact\": {\n \"website\": \"\",\n \"phone\": \"\",\n \"email\": \"\"\n },\n \"open\": {\n \"current_slice\": {\n \"start\": \"\",\n \"end\": \"\"\n },\n \"open_hours\": [\n {\n \"start\": \"\",\n \"end\": \"\"\n },\n {\n \"start\": \"\",\n \"end\": \"\"\n }\n ],\n \"open_now\": \"\",\n \"next_opening\": {\n \"end\": \"\",\n \"start\": \"\",\n \"day\": \"\"\n },\n \"week_day\": \"\"\n },\n \"weekly_opening\": {\n \"1\": {\n \"hours\": [\n {\n \"start\": \"\",\n \"end\": \"\"\n },\n {\n \"start\": \"\",\n \"end\": \"\"\n }\n ],\n \"isSpecial\": \"\"\n },\n \"2\": {\n \"hours\": [\n {\n \"start\": \"\",\n \"end\": \"\"\n },\n {\n \"start\": \"\",\n \"end\": \"\"\n }\n ],\n \"isSpecial\": \"\"\n },\n \"3\": {\n \"hours\": [\n {\n \"start\": \"\",\n \"end\": \"