├── LICENSE ├── README.md ├── collection.json ├── environment.json ├── geofence_collection.json └── geofence_environment.json /LICENSE: -------------------------------------------------------------------------------- 1 | Last updated: 06/06/17 2 | 3 | FOURSQUARE LABS, INC. API AND DATA LICENSE AGREEMENT 4 | This API and Data License Agreement ("Agreement”) applies to your access to, and use of, the content, documentation, code, data and related materials made available by Foursquare Labs, Inc. (“Foursquare”) to you (collectively, the “Content”), including through the use of the Foursquare application programming interface (the “API”, together with Content, “Foursquare Materials”). By using any Foursquare Materials you agree to this Agreement. 5 | 6 | 1. WHO CAN USE FOURSQUARE MATERIALS - When you use the Foursquare Materials, you agree to form a binding contract with Foursquare, and follow this Agreement, the Foursquare Platform Policy and all applicable laws. If you’re using the Foursquare Materials on behalf of a company, organization, or other entity, then you and that entity (collectively “Licensee”), represent and warrant that you’re authorized to grant all permissions and licenses provided in these terms and bind the entity to these terms, and that you agree to these terms on the entity’s behalf. Some of the Foursquare Materials may be code that you incorporate into Licensee’s applications, products and services (“Licensee Service”) that enable functionality. You agree that we may automatically update those Foursquare Materials, and this Agreement will apply to such updates. 7 | 8 | 2. LICENSE REQUIREMENTS (NON-ENTERPRISE LICENSE) - Foursquare offers you access to the Foursquare Materials for free provided that your application: (a) is non-exclusive, (b) is publicly available, (c) does not require a fee or subscription, (d) does not exceed the daily call limits, and (e) is not otherwise commercial in nature. If your application does not meet all of these requirements, you will need to obtain an enterprise license. 9 | 10 | 3. GRANT OF LICENSE - Subject to Licensee’s full compliance with all of the terms and conditions of this Agreement and the Platform Policy, Foursquare grants Licensee a non-exclusive, revocable, nonsublicensable, nontransferable license to download and use the Foursquare Materials to (i) develop, implement and integrate with the Licensee Service and (ii) use, reproduce, distribute, transmit, display and perform the Foursquare Materials as part of the Licensee Service. Licensee may not install or use the Foursquare Materials for any other purpose without Foursquare's prior written consent. Licensee shall not use the Foursquare Materials in connection with or to promote any products, services, or materials that constitute, promote or are used primarily for the purpose of dealing in: spyware, adware, or other malicious programs or code, counterfeit goods, items subject to U.S. embargo, unsolicited mass distribution of email ("spam"), multi-level marketing proposals, hate materials, hacking/surveillance/interception/descrambling equipment, libelous, defamatory, obscene, pornographic, abusive or otherwise offensive content, prostitution, body parts and bodily fluids, stolen products and items used for theft, fireworks, explosives, and hazardous materials, government IDs, police items, gambling, professional services regulated by state licensing regimes, non-transferable items such as airline tickets or event tickets, weapons and accessories, automatic or autonomous control of vehicles, aircraft or other mechanical devices, dispatch or fleet management, or emergency or life-saving purposes. For Licensee Services that provide real-time route guidance, Licensee must have an end user license agreement that includes the following notice: YOUR USE OF THIS APPLICATION IS AT YOUR SOLE RISK. LOCATION DATA MAY NOT BE ACCURATE. 11 | 12 | 4. PROPRIETARY RIGHTS - As between Foursquare and Licensee, the Foursquare Materials, including any and all Content made available, collected and/or derived through the API (including, without limitation, user data received from the API or submitted to the API), and all intellectual property rights in and to all of the foregoing, are and shall at all times remain the sole and exclusive property of Foursquare and are protected by applicable intellectual property laws and treaties. 13 | 14 | 5. OTHER RESTRICTIONS - Except as expressly and unambiguously authorized under this Agreement, Licensee may not (i) copy, rent, lease, sell, transfer, assign, sublicense, disassemble, reverse engineer or decompile (except to the limited extent expressly authorized by applicable statutory law), modify or alter any part of the Foursquare Materials; (ii) otherwise use the Foursquare Materials on behalf of any third party; or (iii) design or permit the Licensee Service to disable, override or otherwise interfere with any Foursquare-implemented communications to end users, consent panels, user settings, alerts, warnings or the like, including but not limited to those intended to notify the end user that his or her user data or location data is being collected or used, or intended to obtain consent for such collection or use. Foursquare expressly reserves the right to limit the number and/or frequency of API requests in its sole discretion. 15 | 16 | 6. MODIFICATIONS TO THIS AGREEMENT. Foursquare reserves the right, in its sole discretion to modify this Agreement and/or the Foursquare Platform Policy at any time by posting a notice to developer.foursquare.com. You shall be responsible for reviewing and becoming familiar with any such modification. Such modifications are effective upon first posting or notification and use of the Foursquare Materials by Licensee following any such notification constitutes Licensee's acceptance of the terms and conditions of this Agreement as modified. 17 | 18 | 7. WARRANTY DISCLAIMER - THE FOURSQUARE MATERIALS ARE PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. EXCEPT TO THE EXTENT REQUIRED BY APPLICABLE LAW, FOURSQUARE AND ITS VENDORS EACH DISCLAIM ALL WARRANTIES, WHETHER EXPRESS, IMPLIED OR STATUTORY, REGARDING THE FOURSQUARE MATERIALS, INCLUDING WITHOUT LIMITATION ANY AND ALL IMPLIED WARRANTIES OF MERCHANTABILITY, ACCURACY, RESULTS OF USE, RELIABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE, INTERFERENCE WITH QUIET ENJOYMENT, AND NON-INFRINGEMENT OF THIRD-PARTY RIGHTS. FURTHER, FOURSQUARE DISCLAIMS ANY WARRANTY THAT LICENSEE'S USE OF THE FOURSQUARE MATERIALS WILL BE UNINTERRUPTED OR ERROR FREE. 19 | 20 | 8. SUPPORT AND UPGRADES - This Agreement does not entitle Licensee to any support for the Foursquare Materials, unless Licensee makes separate arrangements with Foursquare and pays all fees associated with such support. Any such support provided by Foursquare shall be subject to the terms of this Agreement as modified by the associated support agreement. 21 | 22 | 9. LIABILITY LIMITATION - REGARDLESS OF WHETHER ANY REMEDY SET FORTH HEREIN FAILS OF ITS ESSENTIAL PURPOSE OR OTHERWISE, AND EXCEPT FOR BODILY INJURY, IN NO EVENT WILL FOURSQUARE OR ITS VENDORS, BE LIABLE TO LICENSEE OR TO ANY THIRD PARTY UNDER ANY TORT, CONTRACT, NEGLIGENCE, STRICT LIABILITY OR OTHER LEGAL OR EQUITABLE THEORY FOR (A) ANY LOST PROFITS, LOST OR CORRUPTED DATA, COMPUTER FAILURE OR MALFUNCTION, INTERRUPTION OF BUSINESS, OR OTHER SPECIAL, INDIRECT, INCIDENTAL OR CONSEQUENTIAL DAMAGES OF ANY KIND ARISING OUT OF THE USE OR INABILITY TO USE THE FOURSQUARE MATERIALS OR (B) ANY DAMAGES, IN THE AGGREGATE, IN EXCESS OF FIVE HUNDRED DOLLARS ($500.00), EVEN IF FOURSQUARE HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH LOSS OR DAMAGES AND WHETHER OR NOT SUCH LOSS OR DAMAGES ARE FORESEEABLE. ANY CLAIM ARISING OUT OF OR RELATING TO THIS AGREEMENT MUST BE BROUGHT WITHIN ONE (1) YEAR AFTER THE OCCURRENCE OF THE EVENT GIVING RISE TO SUCH CLAIM. IN ADDITION, FOURSQUARE DISCLAIMS ALL LIABILITY OF ANY KIND OF FOURSQUARE'S VENDORS. 23 | 24 | 10. INDEMNITY - Licensee agrees that Foursquare shall have no liability whatsoever for any use Licensee makes of the Foursquare Materials. Licensee shall indemnify and hold harmless Foursquare from any and all claims, damages, liabilities, costs and fees (including reasonable attorneys' fees) arising from Licensee's use of the Foursquare Materials. 25 | 26 | 11. TERM AND TERMINATION - This Agreement shall continue until terminated as set forth in this Section. Either party may terminate this Agreement at any time, for any reason, or for no reason including, but not limited to, if Licensee violates any provision of this Agreement. Any termination of this Agreement shall also terminate the license granted hereunder. Upon termination of this Agreement for any reason, Licensee shall cease using, destroy and remove from all computers, hard drives, networks, and other storage media all copies of the Foursquare Materials (including all user data), and shall so certify to Foursquare that such actions have occurred. Foursquare shall have the right to inspect and audit Licensee's facilities to confirm the foregoing. Sections 8 through 13 and all accrued rights to payment shall survive termination of this Agreement. 27 | 28 | 12. GOVERNMENT USE - If Licensee is part of an agency, department, or other entity of the United States Government ("Government"), the use, duplication, reproduction, release, modification, disclosure or transfer of the Foursquare Materials are restricted in accordance with the Federal Acquisition Regulations as applied to civilian agencies and the Defense Federal Acquisition Regulation Supplement as applied to military agencies. The Foursquare Materials are a "commercial item," "commercial computer software" and "commercial computer software documentation." In accordance with such provisions, any use of the Foursquare Materials by the Government shall be governed solely by the terms of this Agreement. 29 | 30 | 13. EXPORT CONTROLS - Licensee shall comply with all export laws and restrictions and regulations of the Department of Commerce, the United States Department of Treasury Office of Foreign Assets Control ("OFAC"), or other United States or foreign agency or authority, and Licensee shall not export, or allow the export or re-export of the Foursquare Materials in violation of any such restrictions, laws or regulations. By downloading or using the Foursquare Materials, Licensee agrees to the foregoing and represents and warrants that Licensee is not located in, under the control of, or a national or resident of any restricted country. 31 | 32 | 14. MISCELLANEOUS - Unless the parties have entered into a written amendment to this agreement that is signed by both parties regarding the Foursquare Materials, this Agreement and the Foursquare Platform Policy constitute the entire agreement between Licensee and Foursquare pertaining to the subject matter hereof, and supersedes any and all written or oral agreements with respect to such subject matter. This Agreement, and any disputes arising from or relating to the interpretation thereof, shall be governed by and construed under New York law as such law applies to agreements between New York residents entered into and to be performed within New York by two residents thereof and without reference to its conflict of laws principles or the United Nations Conventions for the International Sale of Goods. Except to the extent otherwise determined by Foursquare, any action or proceeding arising from or relating to this Agreement must be brought in a federal court in the Southern District of New York or in state court in New York County, New York, and each party irrevocably submits to the jurisdiction and venue of any such court in any such action or proceeding. The prevailing party in any action arising out of this Agreement shall be entitled to an award of its costs and attorneys' fees. This Agreement may be amended only by a writing executed by Foursquare. If any provision of this Agreement is held to be unenforceable for any reason, such provision shall be reformed only to the extent necessary to make it enforceable. The failure of Foursquare to act with respect to a breach of this Agreement by Licensee or others does not constitute a waiver and shall not limit Foursquare's rights with respect to such breach or any subsequent breaches. This Agreement is personal to Licensee and may not be assigned or transferred for any reason whatsoever (including, without limitation, by operation of law, merger, reorganization, or as a result of an acquisition or change of control involving Licensee) without Foursquare's prior written consent and any action or conduct in violation of the foregoing shall be void and without effect. Foursquare expressly reserves the right to assign this Agreement and to delegate any of its obligations hereunder. 33 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Foursquare Places API - Postman Collection 2 | This is a Postman collection for the Foursquare Places API and Geofence API. The environment.json files provided contain a list of variables used by the API collection. 3 | 4 | Refer to our API documentation [here](https://developer.foursquare.com/docs/) for usage, and to register a Developer account with us. 5 | 6 | ## Requirements 7 | The collection requires an existing installation of [Postman](https://www.getpostman.com/), which is available for free. 8 | 9 | ## Installing (Via Postman Button) 10 | 1) Click on the "Run in Postman" button below to immediately import the respective collection and environment into your Postman app. 11 | 12 | Places API 13 | 14 | 15 | Run in Postman 16 | 17 | 18 | 19 | Geofence API 20 | 21 | 22 | Run in Postman 23 | 24 | 25 | 26 | ## Installing (Via Github Download) 27 | 1) Download collection.json and environment.json onto your local machine 28 | 2) Open Postman, click on Import and select the two json files. 29 | 3) Once imported, a new API collection will be created, along with the environment. 30 | 31 | ## License 32 | Refer to Places API Terms of Use [here](https://developer.foursquare.com/docs/terms-of-use/overview). 33 | -------------------------------------------------------------------------------- /collection.json: -------------------------------------------------------------------------------- 1 | { 2 | "info": { 3 | "_postman_id": "fc9b6f21-3511-42ef-9c96-b5dd8ec8ff85", 4 | "name": "Foursquare Places API", 5 | "description": "## API Status\nStatus for the API can be found at [status.foursquare.com](http://status.foursquare.com)!\n\n## Getting Started\nUsing Foursquare's Places API, you can do just about anything you can do on foursquare.com, while using your programming language of choice. The Foursquare API is a RESTful API based on HTTP requests and JSON responses.\n\nThis version of the API, version 2, uses OAuth 2.0. This means that all requests will need to be encrypted and sent via HTTPS. It also means that you need to register your application, even if you aren't allowing users to login.\n\nWe highly encourage looking at the endpoints in the Popular Endpoints folder first to evaluate if they suit your needs, before exploring the others.", 6 | "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json" 7 | }, 8 | "item": [ 9 | { 10 | "name": "Popular Endpoints", 11 | "item": [ 12 | { 13 | "name": "Search for Venues (intent: checkin)", 14 | "event": [ 15 | { 16 | "listen": "test", 17 | "script": { 18 | "id": "6d02e36a-e088-4ebe-93b9-79c928cdc83a", 19 | "exec": [ 20 | "" 21 | ], 22 | "type": "text/javascript" 23 | } 24 | } 25 | ], 26 | "request": { 27 | "method": "GET", 28 | "header": [], 29 | "body": { 30 | "mode": "raw", 31 | "raw": "" 32 | }, 33 | "url": { 34 | "raw": "https://api.foursquare.com/v2/venues/search?client_id={{client_id}}&client_secret={{client_secret}}&v={{v}}&ll=40.7099,-73.9622&intent=checkin&radius=200&query=peter luger steakhouse", 35 | "protocol": "https", 36 | "host": [ 37 | "api", 38 | "foursquare", 39 | "com" 40 | ], 41 | "path": [ 42 | "v2", 43 | "venues", 44 | "search" 45 | ], 46 | "query": [ 47 | { 48 | "key": "client_id", 49 | "value": "{{client_id}}" 50 | }, 51 | { 52 | "key": "client_secret", 53 | "value": "{{client_secret}}" 54 | }, 55 | { 56 | "key": "v", 57 | "value": "{{v}}" 58 | }, 59 | { 60 | "key": "ll", 61 | "value": "40.7099,-73.9622", 62 | "description": "REQUIRED unless near is provided. Latitude and longitude of the user’s location." 63 | }, 64 | { 65 | "key": "near", 66 | "value": "new york", 67 | "description": "REQUIRED unless ll is provided. A string naming a place in the world. If the near string is not geocodable, returns a failed_geocode error. Otherwise, searches within the bounds of the geocode and adds a geocode object to the response.", 68 | "disabled": true 69 | }, 70 | { 71 | "key": "intent", 72 | "value": "checkin", 73 | "description": "Finds venues that the current user (or, for userless requests, a typical user) is likely to checkin to at the provided ll, at the current moment in time." 74 | }, 75 | { 76 | "key": "radius", 77 | "value": "200", 78 | "description": "Limit results to venues within this many meters of the specified location. Defaults to a city-wide area. Valid for requests with intent=checkin and categoryId or query. The maximum supported radius is currently 100,000 meters." 79 | }, 80 | { 81 | "key": "query", 82 | "value": "peter luger steakhouse", 83 | "description": "A search term to be applied against venue names.\n" 84 | }, 85 | { 86 | "key": "limit", 87 | "value": "20", 88 | "description": "Number of results to return, up to 50.", 89 | "disabled": true 90 | }, 91 | { 92 | "key": "categoryId", 93 | "value": "4d954b0ea243a5684a65b473", 94 | "description": "A comma separated list of categories to limit results to. If you specify categoryId. Specifying a radius may improve results. If specifying a top-level category, all sub-categories will also match the query.", 95 | "disabled": true 96 | }, 97 | { 98 | "key": "alt", 99 | "value": "0", 100 | "description": "Altitude of the user’s location, in meters.", 101 | "disabled": true 102 | }, 103 | { 104 | "key": "llAcc", 105 | "value": "10000", 106 | "description": "Accuracy of latitude and longitude, in meters.", 107 | "disabled": true 108 | } 109 | ] 110 | }, 111 | "description": "Returns a list of venues near the current location, optionally matching a search term.\n\nTo ensure the best possible results, pay attention to the intent parameter below.\n\nNote that most of the fields returned inside a venue can be optional. The user may create a venue that has no address, city, or state (the venue is created instead at the lat/long specified). Your client should handle these conditions safely. For more robust venue information (photos/tips/etc.), please see our venue details endpoint.\n\n#### Response Model: [Venues/Response Fields](https://developer.foursquare.com/docs/api/venues/search)" 112 | }, 113 | "response": [] 114 | }, 115 | { 116 | "name": "Search for Venues (intent: browse)", 117 | "event": [ 118 | { 119 | "listen": "test", 120 | "script": { 121 | "id": "03022bac-b74f-4ab5-9c50-bfffd0fbf1d5", 122 | "exec": [ 123 | "var jsonData = JSON.parse(responseBody);", 124 | "var venue_id = jsonData.response.venues[0].id;", 125 | "var app_user_id = \"foursquare_postman_eoNXisMI\"", 126 | "var currentDate = new Date();", 127 | "var dd = currentDate.getDate();", 128 | "var mm = currentDate.getMonth()+1;", 129 | "var yyyy = currentDate.getFullYear();", 130 | "", 131 | "var hash = CryptoJS.HmacSHA256(app_user_id + venue_id + yyyy + mm + dd, \"secret\")", 132 | "var visitSignature = CryptoJS.enc.Base64.stringify(hash);", 133 | "", 134 | "postman.setEnvironmentVariable(\"VENUE_ID\", venue_id);", 135 | "postman.setEnvironmentVariable(\"requestId_select\", jsonData.meta.requestId);", 136 | "postman.setEnvironmentVariable(\"visitSignature_select\", visitSignature);", 137 | "" 138 | ], 139 | "type": "text/javascript" 140 | } 141 | } 142 | ], 143 | "request": { 144 | "method": "GET", 145 | "header": [], 146 | "body": { 147 | "mode": "raw", 148 | "raw": "" 149 | }, 150 | "url": { 151 | "raw": "https://api.foursquare.com/v2/venues/search?client_id={{client_id}}&client_secret={{client_secret}}&v={{v}}&near=new york&intent=browse&radius=10000&query=peter luger steak house&limit=10", 152 | "protocol": "https", 153 | "host": [ 154 | "api", 155 | "foursquare", 156 | "com" 157 | ], 158 | "path": [ 159 | "v2", 160 | "venues", 161 | "search" 162 | ], 163 | "query": [ 164 | { 165 | "key": "client_id", 166 | "value": "{{client_id}}" 167 | }, 168 | { 169 | "key": "client_secret", 170 | "value": "{{client_secret}}" 171 | }, 172 | { 173 | "key": "v", 174 | "value": "{{v}}" 175 | }, 176 | { 177 | "key": "ll", 178 | "value": "40.7099,-73.9622", 179 | "description": "REQUIRED unless near is provided. Latitude and longitude of the user’s location. ", 180 | "disabled": true 181 | }, 182 | { 183 | "key": "near", 184 | "value": "new york", 185 | "description": "REQUIRED unless ll is provided. A string naming a place in the world. If the near string is not geocodable, returns a failed_geocode error. Otherwise, searches within the bounds of the geocode and adds a geocode object to the response." 186 | }, 187 | { 188 | "key": "intent", 189 | "value": "browse", 190 | "description": "Find venues within a given area. Browse searches an entire region instead of only finding venues closest to a point. A region to search can be defined by including either the ll and radius parameters, or the sw and ne. The region will be circular if you include the ll and radius parameters, or a bounding box if you include the sw and ne parameters." 191 | }, 192 | { 193 | "key": "radius", 194 | "value": "10000", 195 | "description": "Limit results to venues within this many meters of the specified location. Defaults to a city-wide area. Valid for requests with intent=browse. The maximum supported radius is currently 100,000 meters." 196 | }, 197 | { 198 | "key": "sw", 199 | "value": "40.707770, -73.970390", 200 | "description": "With ne, limits results to the bounding box defined by the latitude and longitude given by sw as its south-west corner, and ne as its north-east corner. Not valid with ll or radius. Bounding boxes with an area up to approximately 10,000 square kilometers are supported.", 201 | "disabled": true 202 | }, 203 | { 204 | "key": "ne", 205 | "value": "40.712388, -73.956614", 206 | "description": "See sw", 207 | "disabled": true 208 | }, 209 | { 210 | "key": "query", 211 | "value": "peter luger steak house", 212 | "description": "A search term to be applied against venue names." 213 | }, 214 | { 215 | "key": "limit", 216 | "value": "10", 217 | "description": "Number of results to return, up to 50.\n" 218 | }, 219 | { 220 | "key": "categoryId", 221 | "value": "4d954b0ea243a5684a65b473", 222 | "description": "A comma separated list of categories to limit results to. If you specify categoryId. Specifying a radius may improve results. If specifying a top-level category, all sub-categories will also match the query.", 223 | "disabled": true 224 | }, 225 | { 226 | "key": "llAcc", 227 | "value": "10000.0", 228 | "description": "Accuracy of latitude and longitude, in meters.", 229 | "disabled": true 230 | }, 231 | { 232 | "key": "alt", 233 | "value": "0", 234 | "description": "Altitude of the user’s location, in meters.", 235 | "disabled": true 236 | }, 237 | { 238 | "key": "altAcc", 239 | "value": "10000.0", 240 | "description": "Accuracy of the user’s altitude, in meters.", 241 | "disabled": true 242 | } 243 | ] 244 | }, 245 | "description": "Returns a list of venues near the current location, optionally matching a search term.\n\nTo ensure the best possible results, pay attention to the intent parameter below.\n\nNote that most of the fields returned inside a venue can be optional. The user may create a venue that has no address, city, or state (the venue is created instead at the lat/long specified). Your client should handle these conditions safely. For more robust venue information (photos/tips/etc.), please see our venue details endpoint.\n\n#### Response Model: [Venues/Response Fields](https://developer.foursquare.com/docs/api/venues/search)" 246 | }, 247 | "response": [] 248 | }, 249 | { 250 | "name": "Get Details of a Venue", 251 | "request": { 252 | "method": "GET", 253 | "header": [], 254 | "body": { 255 | "mode": "raw", 256 | "raw": "" 257 | }, 258 | "url": { 259 | "raw": "https://api.foursquare.com/v2/venues/{{VENUE_ID}}?client_id={{client_id}}&client_secret={{client_secret}}&v={{v}}", 260 | "protocol": "https", 261 | "host": [ 262 | "api", 263 | "foursquare", 264 | "com" 265 | ], 266 | "path": [ 267 | "v2", 268 | "venues", 269 | "{{VENUE_ID}}" 270 | ], 271 | "query": [ 272 | { 273 | "key": "client_id", 274 | "value": "{{client_id}}" 275 | }, 276 | { 277 | "key": "client_secret", 278 | "value": "{{client_secret}}" 279 | }, 280 | { 281 | "key": "v", 282 | "value": "{{v}}" 283 | }, 284 | { 285 | "key": "locale", 286 | "value": "ja", 287 | "description": "Allows API consumers to pull relevant information (if available) in the specified ISO 639-1 2-Letter Language Code. If langauge information is not available, response will be returned in English.\n", 288 | "disabled": true 289 | } 290 | ] 291 | }, 292 | "description": "Gives the full details about a venue including location, tips, and categories.\n\nIf the venue ID given is one that has been merged into another “master” venue, the response will show data about the “master” instead of giving you an error.\n\n#### Response Model: [Venues/Response Fields](https://developer.foursquare.com/docs/api/venues/details)" 293 | }, 294 | "response": [] 295 | }, 296 | { 297 | "name": "Suggest Completion", 298 | "request": { 299 | "method": "GET", 300 | "header": [], 301 | "body": { 302 | "mode": "raw", 303 | "raw": "" 304 | }, 305 | "url": { 306 | "raw": "https://api.foursquare.com/v2/venues/{{VENUE_ID}}?client_id={{client_id}}&client_secret={{client_secret}}&v={{v}}", 307 | "protocol": "https", 308 | "host": [ 309 | "api", 310 | "foursquare", 311 | "com" 312 | ], 313 | "path": [ 314 | "v2", 315 | "venues", 316 | "{{VENUE_ID}}" 317 | ], 318 | "query": [ 319 | { 320 | "key": "client_id", 321 | "value": "{{client_id}}" 322 | }, 323 | { 324 | "key": "client_secret", 325 | "value": "{{client_secret}}" 326 | }, 327 | { 328 | "key": "v", 329 | "value": "{{v}}" 330 | }, 331 | { 332 | "key": "locale", 333 | "value": "ja", 334 | "description": "Undocumented. Allows API consumers to pull relevant information (if available) in the specified ISO 639-1 2-Letter Language Code. If langauge information is not available, response will be returned in English.\n", 335 | "disabled": true 336 | } 337 | ] 338 | }, 339 | "description": "Returns a list of mini-venues partially matching the search term, near the location." 340 | }, 341 | "response": [] 342 | }, 343 | { 344 | "name": "Get Venue Categories", 345 | "request": { 346 | "method": "GET", 347 | "header": [], 348 | "body": { 349 | "mode": "raw", 350 | "raw": "" 351 | }, 352 | "url": { 353 | "raw": "https://api.foursquare.com/v2/venues/categories?client_id={{client_id}}&client_secret={{client_secret}}&v={{v}}", 354 | "protocol": "https", 355 | "host": [ 356 | "api", 357 | "foursquare", 358 | "com" 359 | ], 360 | "path": [ 361 | "v2", 362 | "venues", 363 | "categories" 364 | ], 365 | "query": [ 366 | { 367 | "key": "client_id", 368 | "value": "{{client_id}}" 369 | }, 370 | { 371 | "key": "client_secret", 372 | "value": "{{client_secret}}" 373 | }, 374 | { 375 | "key": "v", 376 | "value": "{{v}}" 377 | }, 378 | { 379 | "key": "locale", 380 | "value": "es", 381 | "description": "Undocumented. Allows API consumers to pull relevant information (if available) in the specified ISO 639-1 2-Letter Language Code. If langauge information is not available, response will be returned in English. Supported locales can be found at https://developer.foursquare.com/docs/api/configuration/internationalization\n", 382 | "disabled": true 383 | } 384 | ] 385 | }, 386 | "description": "Returns a hierarchical list of categories applied to venues. This list is also available on our [categories](https://developer.foursquare.com/docs/resources/categories) page.\n\n#### Response Model: [Categories/Response Fields](https://developer.foursquare.com/docs/api/venues/categories)" 387 | }, 388 | "response": [] 389 | } 390 | ], 391 | "auth": { 392 | "type": "noauth" 393 | } 394 | }, 395 | { 396 | "name": "Venues", 397 | "item": [ 398 | { 399 | "name": "Get Details of a Venue", 400 | "request": { 401 | "method": "GET", 402 | "header": [], 403 | "body": { 404 | "mode": "raw", 405 | "raw": "" 406 | }, 407 | "url": { 408 | "raw": "https://api.foursquare.com/v2/venues/{{VENUE_ID}}?client_id={{client_id}}&client_secret={{client_secret}}&v={{v}}", 409 | "protocol": "https", 410 | "host": [ 411 | "api", 412 | "foursquare", 413 | "com" 414 | ], 415 | "path": [ 416 | "v2", 417 | "venues", 418 | "{{VENUE_ID}}" 419 | ], 420 | "query": [ 421 | { 422 | "key": "client_id", 423 | "value": "{{client_id}}" 424 | }, 425 | { 426 | "key": "client_secret", 427 | "value": "{{client_secret}}" 428 | }, 429 | { 430 | "key": "v", 431 | "value": "{{v}}" 432 | }, 433 | { 434 | "key": "locale", 435 | "value": "ja", 436 | "description": "Allows API consumers to pull relevant information (if available) in the specified ISO 639-1 2-Letter Language Code. If langauge information is not available, response will be returned in English.\n", 437 | "disabled": true 438 | } 439 | ] 440 | }, 441 | "description": "Gives the full details about a venue including location, tips, and categories.\n\nIf the venue ID given is one that has been merged into another “master” venue, the response will show data about the “master” instead of giving you an error.\n\n#### Response Model: [Venues/Response Fields](https://developer.foursquare.com/docs/api/venues/details)" 442 | }, 443 | "response": [] 444 | }, 445 | { 446 | "name": "Search for Venues (intent: checkin)", 447 | "event": [ 448 | { 449 | "listen": "test", 450 | "script": { 451 | "id": "6d02e36a-e088-4ebe-93b9-79c928cdc83a", 452 | "exec": [ 453 | "" 454 | ], 455 | "type": "text/javascript" 456 | } 457 | } 458 | ], 459 | "request": { 460 | "method": "GET", 461 | "header": [], 462 | "body": { 463 | "mode": "raw", 464 | "raw": "" 465 | }, 466 | "url": { 467 | "raw": "https://api.foursquare.com/v2/venues/search?client_id={{client_id}}&client_secret={{client_secret}}&v={{v}}&ll=40.7099,-73.9622&intent=checkin&radius=200&query=peter luger steakhouse", 468 | "protocol": "https", 469 | "host": [ 470 | "api", 471 | "foursquare", 472 | "com" 473 | ], 474 | "path": [ 475 | "v2", 476 | "venues", 477 | "search" 478 | ], 479 | "query": [ 480 | { 481 | "key": "client_id", 482 | "value": "{{client_id}}" 483 | }, 484 | { 485 | "key": "client_secret", 486 | "value": "{{client_secret}}" 487 | }, 488 | { 489 | "key": "v", 490 | "value": "{{v}}" 491 | }, 492 | { 493 | "key": "ll", 494 | "value": "40.7099,-73.9622", 495 | "description": "REQUIRED unless near is provided. Latitude and longitude of the user’s location." 496 | }, 497 | { 498 | "key": "near", 499 | "value": "new york", 500 | "description": "REQUIRED unless ll is provided. A string naming a place in the world. If the near string is not geocodable, returns a failed_geocode error. Otherwise, searches within the bounds of the geocode and adds a geocode object to the response.", 501 | "disabled": true 502 | }, 503 | { 504 | "key": "intent", 505 | "value": "checkin", 506 | "description": "Finds venues that the current user (or, for userless requests, a typical user) is likely to checkin to at the provided ll, at the current moment in time." 507 | }, 508 | { 509 | "key": "radius", 510 | "value": "200", 511 | "description": "Limit results to venues within this many meters of the specified location. Defaults to a city-wide area. Valid for requests with intent=checkin and categoryId or query. The maximum supported radius is currently 100,000 meters." 512 | }, 513 | { 514 | "key": "query", 515 | "value": "peter luger steakhouse", 516 | "description": "A search term to be applied against venue names.\n" 517 | }, 518 | { 519 | "key": "limit", 520 | "value": "20", 521 | "description": "Number of results to return, up to 50.", 522 | "disabled": true 523 | }, 524 | { 525 | "key": "categoryId", 526 | "value": "4d954b0ea243a5684a65b473", 527 | "description": "A comma separated list of categories to limit results to. If you specify categoryId. Specifying a radius may improve results. If specifying a top-level category, all sub-categories will also match the query.", 528 | "disabled": true 529 | }, 530 | { 531 | "key": "alt", 532 | "value": "0", 533 | "description": "Altitude of the user’s location, in meters.", 534 | "disabled": true 535 | }, 536 | { 537 | "key": "llAcc", 538 | "value": "10000", 539 | "description": "Accuracy of latitude and longitude, in meters.", 540 | "disabled": true 541 | } 542 | ] 543 | }, 544 | "description": "Returns a list of venues near the current location, optionally matching a search term.\n\nTo ensure the best possible results, pay attention to the intent parameter below.\n\nNote that most of the fields returned inside a venue can be optional. The user may create a venue that has no address, city, or state (the venue is created instead at the lat/long specified). Your client should handle these conditions safely. For more robust venue information (photos/tips/etc.), please see our venue details endpoint.\n\n#### Response Model: [Venues/Response Fields](https://developer.foursquare.com/docs/api/venues/search)" 545 | }, 546 | "response": [] 547 | }, 548 | { 549 | "name": "Search for Venues (intent: browse)", 550 | "event": [ 551 | { 552 | "listen": "test", 553 | "script": { 554 | "id": "03022bac-b74f-4ab5-9c50-bfffd0fbf1d5", 555 | "exec": [ 556 | "var jsonData = JSON.parse(responseBody);", 557 | "var venue_id = jsonData.response.venues[0].id;", 558 | "var app_user_id = \"foursquare_postman_eoNXisMI\"", 559 | "var currentDate = new Date();", 560 | "var dd = currentDate.getDate();", 561 | "var mm = currentDate.getMonth()+1;", 562 | "var yyyy = currentDate.getFullYear();", 563 | "", 564 | "var hash = CryptoJS.HmacSHA256(app_user_id + venue_id + yyyy + mm + dd, \"secret\")", 565 | "var visitSignature = CryptoJS.enc.Base64.stringify(hash);", 566 | "", 567 | "postman.setEnvironmentVariable(\"VENUE_ID\", venue_id);", 568 | "postman.setEnvironmentVariable(\"requestId_select\", jsonData.meta.requestId);", 569 | "postman.setEnvironmentVariable(\"visitSignature_select\", visitSignature);", 570 | "" 571 | ], 572 | "type": "text/javascript" 573 | } 574 | } 575 | ], 576 | "request": { 577 | "method": "GET", 578 | "header": [], 579 | "body": { 580 | "mode": "raw", 581 | "raw": "" 582 | }, 583 | "url": { 584 | "raw": "https://api.foursquare.com/v2/venues/search?client_id={{client_id}}&client_secret={{client_secret}}&v={{v}}&near=new york&intent=browse&radius=10000&query=peter luger steak house&limit=10", 585 | "protocol": "https", 586 | "host": [ 587 | "api", 588 | "foursquare", 589 | "com" 590 | ], 591 | "path": [ 592 | "v2", 593 | "venues", 594 | "search" 595 | ], 596 | "query": [ 597 | { 598 | "key": "client_id", 599 | "value": "{{client_id}}" 600 | }, 601 | { 602 | "key": "client_secret", 603 | "value": "{{client_secret}}" 604 | }, 605 | { 606 | "key": "v", 607 | "value": "{{v}}" 608 | }, 609 | { 610 | "key": "ll", 611 | "value": "40.7099,-73.9622", 612 | "description": "REQUIRED unless near is provided. Latitude and longitude of the user’s location. ", 613 | "disabled": true 614 | }, 615 | { 616 | "key": "near", 617 | "value": "new york", 618 | "description": "REQUIRED unless ll is provided. A string naming a place in the world. If the near string is not geocodable, returns a failed_geocode error. Otherwise, searches within the bounds of the geocode and adds a geocode object to the response." 619 | }, 620 | { 621 | "key": "intent", 622 | "value": "browse", 623 | "description": "Find venues within a given area. Browse searches an entire region instead of only finding venues closest to a point. A region to search can be defined by including either the ll and radius parameters, or the sw and ne. The region will be circular if you include the ll and radius parameters, or a bounding box if you include the sw and ne parameters." 624 | }, 625 | { 626 | "key": "radius", 627 | "value": "10000", 628 | "description": "Limit results to venues within this many meters of the specified location. Defaults to a city-wide area. Valid for requests with intent=browse. The maximum supported radius is currently 100,000 meters." 629 | }, 630 | { 631 | "key": "sw", 632 | "value": "40.707770, -73.970390", 633 | "description": "With ne, limits results to the bounding box defined by the latitude and longitude given by sw as its south-west corner, and ne as its north-east corner. Not valid with ll or radius. Bounding boxes with an area up to approximately 10,000 square kilometers are supported.", 634 | "disabled": true 635 | }, 636 | { 637 | "key": "ne", 638 | "value": "40.712388, -73.956614", 639 | "description": "See sw", 640 | "disabled": true 641 | }, 642 | { 643 | "key": "query", 644 | "value": "peter luger steak house", 645 | "description": "A search term to be applied against venue names." 646 | }, 647 | { 648 | "key": "limit", 649 | "value": "10", 650 | "description": "Number of results to return, up to 50.\n" 651 | }, 652 | { 653 | "key": "categoryId", 654 | "value": "4d954b0ea243a5684a65b473", 655 | "description": "A comma separated list of categories to limit results to. If you specify categoryId. Specifying a radius may improve results. If specifying a top-level category, all sub-categories will also match the query.", 656 | "disabled": true 657 | }, 658 | { 659 | "key": "llAcc", 660 | "value": "10000.0", 661 | "description": "Accuracy of latitude and longitude, in meters.", 662 | "disabled": true 663 | }, 664 | { 665 | "key": "alt", 666 | "value": "0", 667 | "description": "Altitude of the user’s location, in meters.", 668 | "disabled": true 669 | }, 670 | { 671 | "key": "altAcc", 672 | "value": "10000.0", 673 | "description": "Accuracy of the user’s altitude, in meters.", 674 | "disabled": true 675 | } 676 | ] 677 | }, 678 | "description": "Returns a list of venues near the current location, optionally matching a search term.\n\nTo ensure the best possible results, pay attention to the intent parameter below.\n\nNote that most of the fields returned inside a venue can be optional. The user may create a venue that has no address, city, or state (the venue is created instead at the lat/long specified). Your client should handle these conditions safely. For more robust venue information (photos/tips/etc.), please see our venue details endpoint.\n\n#### Response Model: [Venues/Response Fields](https://developer.foursquare.com/docs/api/venues/search)" 679 | }, 680 | "response": [] 681 | }, 682 | { 683 | "name": "Search for Venues (intent: global)", 684 | "request": { 685 | "method": "GET", 686 | "header": [], 687 | "body": { 688 | "mode": "raw", 689 | "raw": "" 690 | }, 691 | "url": { 692 | "raw": "https://api.foursquare.com/v2/venues/search?client_id={{client_id}}&client_secret={{client_secret}}&v={{v}}&intent=global&query=airport&limit=10", 693 | "protocol": "https", 694 | "host": [ 695 | "api", 696 | "foursquare", 697 | "com" 698 | ], 699 | "path": [ 700 | "v2", 701 | "venues", 702 | "search" 703 | ], 704 | "query": [ 705 | { 706 | "key": "client_id", 707 | "value": "{{client_id}}" 708 | }, 709 | { 710 | "key": "client_secret", 711 | "value": "{{client_secret}}" 712 | }, 713 | { 714 | "key": "v", 715 | "value": "{{v}}" 716 | }, 717 | { 718 | "key": "intent", 719 | "value": "global", 720 | "description": "Finds the most globally relevant venues for the search, independent of location. Ignores all parameters other than query and limit." 721 | }, 722 | { 723 | "key": "query", 724 | "value": "airport", 725 | "description": "A search term to be applied against venue names." 726 | }, 727 | { 728 | "key": "limit", 729 | "value": "10", 730 | "description": "Number of results to return, up to 50." 731 | } 732 | ] 733 | }, 734 | "description": "Returns a list of venues near the current location, optionally matching a search term.\n\nTo ensure the best possible results, pay attention to the intent parameter below.\n\nNote that most of the fields returned inside a venue can be optional. The user may create a venue that has no address, city, or state (the venue is created instead at the lat/long specified). Your client should handle these conditions safely. For more robust venue information (photos/tips/etc.), please see our venue details endpoint.\n\n#### Response Model: [Venues/Response Fields](https://developer.foursquare.com/docs/api/venues/search)" 735 | }, 736 | "response": [] 737 | }, 738 | { 739 | "name": "Search for Venues (intent: match)", 740 | "request": { 741 | "method": "GET", 742 | "header": [], 743 | "body": { 744 | "mode": "raw", 745 | "raw": "" 746 | }, 747 | "url": { 748 | "raw": "https://api.foursquare.com/v2/venues/search?client_id={{client_id}}&client_secret={{client_secret}}&v={{v}}&ll=40.7099,-73.9622&name=peter luger steakhouse&intent=match", 749 | "protocol": "https", 750 | "host": [ 751 | "api", 752 | "foursquare", 753 | "com" 754 | ], 755 | "path": [ 756 | "v2", 757 | "venues", 758 | "search" 759 | ], 760 | "query": [ 761 | { 762 | "key": "client_id", 763 | "value": "{{client_id}}" 764 | }, 765 | { 766 | "key": "client_secret", 767 | "value": "{{client_secret}}" 768 | }, 769 | { 770 | "key": "v", 771 | "value": "{{v}}" 772 | }, 773 | { 774 | "key": "ll", 775 | "value": "40.7099,-73.9622", 776 | "description": "REQUIRED. Latitude and longitude of the user’s location" 777 | }, 778 | { 779 | "key": "name", 780 | "value": "peter luger steakhouse" 781 | }, 782 | { 783 | "key": "intent", 784 | "value": "match", 785 | "description": "Finds a venue that is the near-exact match for the given parameters. This intent is primarily used when trying to harmonize an existing place database with Foursquare’s and is highly sensitive to the provided location. The result will take into account distance and spelling variations. name and ll are the only required parameters for this intent, but we also suggest sending phone, address, city, state, zip, and twitter for better results. There’s no specified format for these parameters—we do our best to normalize them and drop them from the search if unsuccessful." 786 | }, 787 | { 788 | "key": "phone", 789 | "value": "", 790 | "disabled": true 791 | }, 792 | { 793 | "key": "address", 794 | "value": "", 795 | "disabled": true 796 | }, 797 | { 798 | "key": "city", 799 | "value": "", 800 | "disabled": true 801 | }, 802 | { 803 | "key": "state", 804 | "value": "", 805 | "disabled": true 806 | }, 807 | { 808 | "key": "zip", 809 | "value": "", 810 | "disabled": true 811 | }, 812 | { 813 | "key": "twitter", 814 | "value": "", 815 | "disabled": true 816 | } 817 | ] 818 | }, 819 | "description": "Returns a list of venues near the current location, optionally matching a search term.\n\nTo ensure the best possible results, pay attention to the intent parameter below.\n\nNote that most of the fields returned inside a venue can be optional. The user may create a venue that has no address, city, or state (the venue is created instead at the lat/long specified). Your client should handle these conditions safely. For more robust venue information (photos/tips/etc.), please see our venue details endpoint.\n\n#### Response Model: [Venues/Response Fields](https://developer.foursquare.com/docs/api/venues/search)" 820 | }, 821 | "response": [] 822 | }, 823 | { 824 | "name": "Get Venue Recommendations", 825 | "request": { 826 | "method": "GET", 827 | "header": [], 828 | "body": { 829 | "mode": "raw", 830 | "raw": "" 831 | }, 832 | "url": { 833 | "raw": "https://api.foursquare.com/v2/venues/explore?client_id={{client_id}}&client_secret={{client_secret}}&v={{v}}&ll=1.283644,103.860753&query=steak&limit=10&offset=5&price=2,3", 834 | "protocol": "https", 835 | "host": [ 836 | "api", 837 | "foursquare", 838 | "com" 839 | ], 840 | "path": [ 841 | "v2", 842 | "venues", 843 | "explore" 844 | ], 845 | "query": [ 846 | { 847 | "key": "client_id", 848 | "value": "{{client_id}}" 849 | }, 850 | { 851 | "key": "client_secret", 852 | "value": "{{client_secret}}" 853 | }, 854 | { 855 | "key": "v", 856 | "value": "{{v}}" 857 | }, 858 | { 859 | "key": "ll", 860 | "value": "1.283644,103.860753", 861 | "description": "REQUIRED unless near is provided. Latitude and longitude of the user’s location." 862 | }, 863 | { 864 | "key": "near", 865 | "value": "marina bay singapore", 866 | "description": "REQUIRED unless ll is provided. A string naming a place in the world. If the near string is not geocodable, returns a failed_geocode error. Otherwise, searches within the bounds of the geocode and adds a geocode object to the response.", 867 | "disabled": true 868 | }, 869 | { 870 | "key": "llAcc", 871 | "value": "10000.0", 872 | "description": "Accuracy of latitude and longitude, in meters.", 873 | "disabled": true 874 | }, 875 | { 876 | "key": "alt", 877 | "value": "0", 878 | "description": "Altitude of the user’s location, in meters.", 879 | "disabled": true 880 | }, 881 | { 882 | "key": "altAcc", 883 | "value": "10000.0", 884 | "description": "Accuracy of the user’s altitude, in meters.", 885 | "disabled": true 886 | }, 887 | { 888 | "key": "radius", 889 | "value": "250", 890 | "description": "Radius to search within, in meters. If radius is not specified, a suggested radius will be used based on the density of venues in the area. The maximum supported radius is currently 100,000 meters.", 891 | "disabled": true 892 | }, 893 | { 894 | "key": "section", 895 | "value": "food", 896 | "description": "One of food, drinks, coffee, shops, arts, outdoors, sights, trending, nextVenues (venues frequently visited after a given venue), or topPicks (a mix of recommendations generated without a query from the user). Choosing one of these limits results to venues with the specified category or property.", 897 | "disabled": true 898 | }, 899 | { 900 | "key": "query", 901 | "value": "steak", 902 | "description": "A term to be searched against a venue’s tips, category, etc. The query parameter has no effect when a section is specified." 903 | }, 904 | { 905 | "key": "limit", 906 | "value": "10", 907 | "description": "Number of results to return, up to 50.\n" 908 | }, 909 | { 910 | "key": "offset", 911 | "value": "5", 912 | "description": "Used to page through results, up to 50." 913 | }, 914 | { 915 | "key": "novelty", 916 | "value": null, 917 | "description": "Use only if you have user's Foursquare OAUTH token. \nPass new or old to limit results to places the acting user hasn’t been or has been, respectively. Omitting this parameter returns a mixture of old and new venues.", 918 | "disabled": true 919 | }, 920 | { 921 | "key": "friendVisits", 922 | "value": null, 923 | "description": "Use only if you have user's Foursquare OAUTH token. \nPass visited or notvisited to limit results to places the acting user’s friends have or haven’t been, respectively. Omitting this parameter returns a mixture of venues to which the user’s friends have or haven’t been.", 924 | "disabled": true 925 | }, 926 | { 927 | "key": "time", 928 | "value": "any", 929 | "description": "Pass any to retrieve results for any time of day. Omitting this parameter returns results targeted to the current time of day.", 930 | "disabled": true 931 | }, 932 | { 933 | "key": "day", 934 | "value": "any", 935 | "description": "Pass any to retrieve results for any day of the week. Omitting this parameter returns results targeted to the current day of the week.", 936 | "disabled": true 937 | }, 938 | { 939 | "key": "lastVenue", 940 | "value": null, 941 | "description": "Use only if you have user's Foursquare OAUTH token. \nA venue ID to use in combination with the intent=nextVenues parameter, which returns venues users often visit after a given venue. If intent=nextVenues is specified but lastVenue is not, the user’s last check-in will be used if it is within 2 hours. If the user has not checked in within the last 2 hours, no results will be returned.", 942 | "disabled": true 943 | }, 944 | { 945 | "key": "intent", 946 | "value": "nextVenue", 947 | "description": "Use only if you have user's Foursquare OAUTH token. \nUsed alongside the lastVenue parameter, and will tell you venues that the Foursquare user will often visit after the given lastVenue.", 948 | "disabled": true 949 | }, 950 | { 951 | "key": "openNow", 952 | "value": "1", 953 | "description": "Boolean flag to only include venues that are open now. This prefers official provider hours but falls back to popular check-in hours.", 954 | "disabled": true 955 | }, 956 | { 957 | "key": "sortByDistance", 958 | "value": "1", 959 | "description": "Boolean flag to sort the results by distance instead of relevance.", 960 | "disabled": true 961 | }, 962 | { 963 | "key": "price", 964 | "value": "2,3", 965 | "description": "Comma separated list of price points. Currently the valid range of price points are [1,2,3,4], 1 being the least expensive, 4 being the most expensive. For food venues, in the United States, 1 is < $10 an entree, 2 is $10-$20 an entree, 3 is $20-$30 an entree, 4 is > $30 an entree." 966 | }, 967 | { 968 | "key": "saved", 969 | "value": "1", 970 | "description": "Use only if you have user's Foursquare OAUTH token. \nBoolean flag to only include venues that the user has saved on their To-Do list or to another list.", 971 | "disabled": true 972 | } 973 | ] 974 | }, 975 | "description": "Recommended only if you require the user to log into their Foursquare accounts for personalised recommendations. If not, consider \"Search for Venues (intent: browse)\" for a list of recommendations.\n\nReturns a list of recommended venues near the current location. For more robust information about the venues themselves (photos/tips/etc.), please see our venue details endpoint.\n\nIf authenticated, the method will personalize the ranking based on you and your friends.\n\n#### Response Model: [Venues/Response Fields](https://developer.foursquare.com/docs/api/venues/explore)" 976 | }, 977 | "response": [] 978 | }, 979 | { 980 | "name": "Report Venue Selection", 981 | "request": { 982 | "method": "POST", 983 | "header": [], 984 | "body": { 985 | "mode": "raw", 986 | "raw": "" 987 | }, 988 | "url": { 989 | "raw": "https://api.foursquare.com/v2/venues/{{VENUE_ID}}/select?client_id={{client_id}}&client_secret={{client_secret}}&v={{v}}&requestId={{requestId_select}}&type=currentLocation&visitSignature={{visitSignature_select}}", 990 | "protocol": "https", 991 | "host": [ 992 | "api", 993 | "foursquare", 994 | "com" 995 | ], 996 | "path": [ 997 | "v2", 998 | "venues", 999 | "{{VENUE_ID}}", 1000 | "select" 1001 | ], 1002 | "query": [ 1003 | { 1004 | "key": "client_id", 1005 | "value": "{{client_id}}" 1006 | }, 1007 | { 1008 | "key": "client_secret", 1009 | "value": "{{client_secret}}" 1010 | }, 1011 | { 1012 | "key": "v", 1013 | "value": "{{v}}" 1014 | }, 1015 | { 1016 | "key": "requestId", 1017 | "value": "{{requestId_select}}", 1018 | "description": "REQUIRED. The request ID returned in the search response leading to the venue selection." 1019 | }, 1020 | { 1021 | "key": "type", 1022 | "value": "currentLocation", 1023 | "description": "REQUIRED. The type of selection the user has made. One of currentLocation, destination, or save." 1024 | }, 1025 | { 1026 | "key": "visitSignature", 1027 | "value": "{{visitSignature_select}}", 1028 | "description": "REQUIRED. The HMAC hex digest of the message \"APP_USER_ID, VENUE_ID, CURRENT_YYYYMMDD\". This allows us to distinguish between three selections at a venue by a single user vs. by three distinct users while preserving user privacy." 1029 | } 1030 | ] 1031 | }, 1032 | "description": "Report the selection of a venue as the result of a search, explore, or suggestcompletion request.\n\nVenue selections or ‘pingbacks’ are used exclusively as inputs for training our underlying venue search model; this helps us improve accuracy at the places you and your users care about. \n\nNo personally identifiable information is collected at any point.\n\n" 1033 | }, 1034 | "response": [] 1035 | }, 1036 | { 1037 | "name": "Get a Venue's Photos", 1038 | "event": [ 1039 | { 1040 | "listen": "test", 1041 | "script": { 1042 | "id": "6867f04d-dc8c-4c70-bc59-c9b5f2878151", 1043 | "exec": [ 1044 | "var jsonData = JSON.parse(responseBody);", 1045 | "postman.setEnvironmentVariable(\"prefix_photo\", jsonData.response.photos.items[0].prefix);", 1046 | "postman.setEnvironmentVariable(\"suffix_photo\", jsonData.response.photos.items[0].suffix);", 1047 | "postman.setEnvironmentVariable(\"PHOTO_ID\", jsonData.response.photos.items[0].id);" 1048 | ], 1049 | "type": "text/javascript" 1050 | } 1051 | } 1052 | ], 1053 | "request": { 1054 | "method": "GET", 1055 | "header": [], 1056 | "body": { 1057 | "mode": "raw", 1058 | "raw": "" 1059 | }, 1060 | "url": { 1061 | "raw": "https://api.foursquare.com/v2/venues/{{VENUE_ID}}/photos?client_id={{client_id}}&client_secret={{client_secret}}&v={{v}}&group=venue&limit=10", 1062 | "protocol": "https", 1063 | "host": [ 1064 | "api", 1065 | "foursquare", 1066 | "com" 1067 | ], 1068 | "path": [ 1069 | "v2", 1070 | "venues", 1071 | "{{VENUE_ID}}", 1072 | "photos" 1073 | ], 1074 | "query": [ 1075 | { 1076 | "key": "client_id", 1077 | "value": "{{client_id}}" 1078 | }, 1079 | { 1080 | "key": "client_secret", 1081 | "value": "{{client_secret}}" 1082 | }, 1083 | { 1084 | "key": "v", 1085 | "value": "{{v}}" 1086 | }, 1087 | { 1088 | "key": "group", 1089 | "value": "venue" 1090 | }, 1091 | { 1092 | "key": "limit", 1093 | "value": "10" 1094 | } 1095 | ] 1096 | }, 1097 | "description": "Returns photos for a specific venue. To assemble a photo URL, combine the response’s prefix + size + suffix. Ex: https://igx.4sqi.net/img/general/300x500/5163668_xXFcZo7sU8aa1ZMhiQ2kIP7NllD48m7qsSwr1mJnFj4.jpg\n\nsize can be one of the following, where XX or YY is one of 36, 100, 300, or 500.\n\nXXxYY\noriginal: the original photo’s size\ncapXX: cap the photo with a width or height of XX. (whichever is larger). Scales the other, smaller dimension proportionally\nwidthXX: forces the width to be XX and scales the height proportionally\nheightYY: forces the height to be YY and scales the width proportionally\n\n#### Response Model: [Photos/Response Fields](https://developer.foursquare.com/docs/api/venues/photos)" 1098 | }, 1099 | "response": [] 1100 | }, 1101 | { 1102 | "name": "Show Venue Photo", 1103 | "request": { 1104 | "method": "GET", 1105 | "header": [], 1106 | "body": { 1107 | "mode": "raw", 1108 | "raw": "" 1109 | }, 1110 | "url": { 1111 | "raw": "{{prefix_photo}}500x500{{suffix_photo}}", 1112 | "host": [ 1113 | "{{prefix_photo}}500x500{{suffix_photo}}" 1114 | ] 1115 | }, 1116 | "description": "To assemble a photo URL, combine the response’s prefix + size + suffix. \nEx: https://igx.4sqi.net/img/general/300x500/5163668_xXFcZo7sU8aa1ZMhiQ2kIP7NllD48m7qsSwr1mJnFj4.jpg\n\nsize can be one of the following, where XX or YY is one of 36, 100, 300, or 500.\n\nXXxYY\noriginal: the original photo’s size\ncapXX: cap the photo with a width or height of XX. (whichever is larger). Scales the other, smaller dimension proportionally\nwidthXX: forces the width to be XX and scales the height proportionally\nheightYY: forces the height to be YY and scales the width proportionally" 1117 | }, 1118 | "response": [] 1119 | }, 1120 | { 1121 | "name": "Get a Venue's Tips", 1122 | "event": [ 1123 | { 1124 | "listen": "test", 1125 | "script": { 1126 | "id": "2f3149bf-6f04-431f-b494-12147b77d3b2", 1127 | "exec": [ 1128 | "var jsonData = JSON.parse(responseBody);", 1129 | "postman.setEnvironmentVariable(\"TIP_ID\",jsonData.response.tips.items[0].id);" 1130 | ], 1131 | "type": "text/javascript" 1132 | } 1133 | } 1134 | ], 1135 | "request": { 1136 | "method": "GET", 1137 | "header": [], 1138 | "body": { 1139 | "mode": "raw", 1140 | "raw": "" 1141 | }, 1142 | "url": { 1143 | "raw": "https://api.foursquare.com/v2/venues/{{VENUE_ID}}/tips?client_id={{client_id}}&client_secret={{client_secret}}&v={{v}}&sort=popular&limit=10", 1144 | "protocol": "https", 1145 | "host": [ 1146 | "api", 1147 | "foursquare", 1148 | "com" 1149 | ], 1150 | "path": [ 1151 | "v2", 1152 | "venues", 1153 | "{{VENUE_ID}}", 1154 | "tips" 1155 | ], 1156 | "query": [ 1157 | { 1158 | "key": "client_id", 1159 | "value": "{{client_id}}" 1160 | }, 1161 | { 1162 | "key": "client_secret", 1163 | "value": "{{client_secret}}" 1164 | }, 1165 | { 1166 | "key": "v", 1167 | "value": "{{v}}" 1168 | }, 1169 | { 1170 | "key": "sort", 1171 | "value": "popular", 1172 | "description": "One of friends, recent, or popular." 1173 | }, 1174 | { 1175 | "key": "limit", 1176 | "value": "10", 1177 | "description": "Number of results to return, up to 500." 1178 | }, 1179 | { 1180 | "key": "offset", 1181 | "value": "", 1182 | "description": "Used to page through results.", 1183 | "disabled": true 1184 | } 1185 | ] 1186 | }, 1187 | "description": "Returns tips for a venue.\n#### Response Model: [Tips/Response Fields](https://developer.foursquare.com/docs/api/venues/tips)" 1188 | }, 1189 | "response": [] 1190 | }, 1191 | { 1192 | "name": "Get a Venue's Hours", 1193 | "request": { 1194 | "method": "GET", 1195 | "header": [], 1196 | "body": { 1197 | "mode": "raw", 1198 | "raw": "" 1199 | }, 1200 | "url": { 1201 | "raw": "https://api.foursquare.com/v2/venues/{{VENUE_ID}}/hours?client_id={{client_id}}&client_secret={{client_secret}}&v={{v}}", 1202 | "protocol": "https", 1203 | "host": [ 1204 | "api", 1205 | "foursquare", 1206 | "com" 1207 | ], 1208 | "path": [ 1209 | "v2", 1210 | "venues", 1211 | "{{VENUE_ID}}", 1212 | "hours" 1213 | ], 1214 | "query": [ 1215 | { 1216 | "key": "client_id", 1217 | "value": "{{client_id}}" 1218 | }, 1219 | { 1220 | "key": "client_secret", 1221 | "value": "{{client_secret}}" 1222 | }, 1223 | { 1224 | "key": "v", 1225 | "value": "{{v}}" 1226 | } 1227 | ] 1228 | }, 1229 | "description": "Returns hours for a venue.\n#### Response Model: [Hours/Response Fields](https://developer.foursquare.com/docs/api/venues/hours)" 1230 | }, 1231 | "response": [] 1232 | }, 1233 | { 1234 | "name": "Get a Venue's Menu", 1235 | "request": { 1236 | "method": "GET", 1237 | "header": [], 1238 | "body": { 1239 | "mode": "raw", 1240 | "raw": "" 1241 | }, 1242 | "url": { 1243 | "raw": "https://api.foursquare.com/v2/venues/{{VENUE_ID}}/menu?client_id={{client_id}}&client_secret={{client_secret}}&v={{v}}", 1244 | "protocol": "https", 1245 | "host": [ 1246 | "api", 1247 | "foursquare", 1248 | "com" 1249 | ], 1250 | "path": [ 1251 | "v2", 1252 | "venues", 1253 | "{{VENUE_ID}}", 1254 | "menu" 1255 | ], 1256 | "query": [ 1257 | { 1258 | "key": "client_id", 1259 | "value": "{{client_id}}" 1260 | }, 1261 | { 1262 | "key": "client_secret", 1263 | "value": "{{client_secret}}" 1264 | }, 1265 | { 1266 | "key": "v", 1267 | "value": "{{v}}" 1268 | } 1269 | ] 1270 | }, 1271 | "description": "Returns menu information for a venue.\n#### Response Model: [Menu/Response Fields](https://developer.foursquare.com/docs/api/venues/menu)" 1272 | }, 1273 | "response": [] 1274 | }, 1275 | { 1276 | "name": "Get a Venue's Links", 1277 | "request": { 1278 | "method": "GET", 1279 | "header": [], 1280 | "body": { 1281 | "mode": "raw", 1282 | "raw": "" 1283 | }, 1284 | "url": { 1285 | "raw": "https://api.foursquare.com/v2/venues/{{VENUE_ID}}/links?client_id={{client_id}}&client_secret={{client_secret}}&v={{v}}", 1286 | "protocol": "https", 1287 | "host": [ 1288 | "api", 1289 | "foursquare", 1290 | "com" 1291 | ], 1292 | "path": [ 1293 | "v2", 1294 | "venues", 1295 | "{{VENUE_ID}}", 1296 | "links" 1297 | ], 1298 | "query": [ 1299 | { 1300 | "key": "client_id", 1301 | "value": "{{client_id}}" 1302 | }, 1303 | { 1304 | "key": "client_secret", 1305 | "value": "{{client_secret}}" 1306 | }, 1307 | { 1308 | "key": "v", 1309 | "value": "{{v}}" 1310 | } 1311 | ] 1312 | }, 1313 | "description": "Returns URLs or identifiers from third parties that have been applied to this venue.\n\nUsed in conjunction with the \"Search for Venues\" endpoint to obtain relevant sources of information." 1314 | }, 1315 | "response": [] 1316 | }, 1317 | { 1318 | "name": "Get Trending Venues", 1319 | "request": { 1320 | "method": "GET", 1321 | "header": [], 1322 | "body": { 1323 | "mode": "raw", 1324 | "raw": "" 1325 | }, 1326 | "url": { 1327 | "raw": "https://api.foursquare.com/v2/venues/trending?client_id={{client_id}}&client_secret={{client_secret}}&v={{v}}&ll=40.7099,-73.9622&limit=10&radius=10000", 1328 | "protocol": "https", 1329 | "host": [ 1330 | "api", 1331 | "foursquare", 1332 | "com" 1333 | ], 1334 | "path": [ 1335 | "v2", 1336 | "venues", 1337 | "trending" 1338 | ], 1339 | "query": [ 1340 | { 1341 | "key": "client_id", 1342 | "value": "{{client_id}}" 1343 | }, 1344 | { 1345 | "key": "client_secret", 1346 | "value": "{{client_secret}}" 1347 | }, 1348 | { 1349 | "key": "v", 1350 | "value": "{{v}}" 1351 | }, 1352 | { 1353 | "key": "ll", 1354 | "value": "40.7099,-73.9622", 1355 | "description": "REQUIRED unless near is provided. Latitude and longitude of the desired location." 1356 | }, 1357 | { 1358 | "key": "near", 1359 | "value": "Brooklyn New York", 1360 | "description": "REQUIRED unless ll is provided. A string naming a place in the world. If the near string is not geocodable, returns a failed_geocode error. Otherwise, searches within the bounds of the geocode and adds a geocode object to the response.", 1361 | "disabled": true 1362 | }, 1363 | { 1364 | "key": "limit", 1365 | "value": "10", 1366 | "description": "Number of results to return, up to 50." 1367 | }, 1368 | { 1369 | "key": "radius", 1370 | "value": "10000", 1371 | "description": "Radius in meters, up to approximately 2000 meters." 1372 | } 1373 | ] 1374 | }, 1375 | "description": "Returns a list of venues near the current location with the most people currently checked in. \n\nResults returned are trending venues based on real-local-time.\n\nFor more robust information about the venues themselves (photos/tips/etc.), please see our venue details endpoint.\n\n#### Response Model: [Trending Venues/Response Fields](https://developer.foursquare.com/docs/api/venues/trending)" 1376 | }, 1377 | "response": [] 1378 | }, 1379 | { 1380 | "name": "Suggest Completion", 1381 | "request": { 1382 | "method": "GET", 1383 | "header": [], 1384 | "body": { 1385 | "mode": "raw", 1386 | "raw": "" 1387 | }, 1388 | "url": { 1389 | "raw": "https://api.foursquare.com/v2/venues/suggestcompletion?client_id={{client_id}}&client_secret={{client_secret}}&v={{v}}&ll=40.7099,-73.9622&query=foursqu", 1390 | "protocol": "https", 1391 | "host": [ 1392 | "api", 1393 | "foursquare", 1394 | "com" 1395 | ], 1396 | "path": [ 1397 | "v2", 1398 | "venues", 1399 | "suggestcompletion" 1400 | ], 1401 | "query": [ 1402 | { 1403 | "key": "client_id", 1404 | "value": "{{client_id}}" 1405 | }, 1406 | { 1407 | "key": "client_secret", 1408 | "value": "{{client_secret}}" 1409 | }, 1410 | { 1411 | "key": "v", 1412 | "value": "{{v}}" 1413 | }, 1414 | { 1415 | "key": "ll", 1416 | "value": "40.7099,-73.9622", 1417 | "description": "REQUIRED unless near is provided. Latitude and longitude of the user’s location." 1418 | }, 1419 | { 1420 | "key": "near", 1421 | "value": "new york", 1422 | "description": "REQUIRED unless ll is provided. A string naming a place in the world. If the near string is not geocodable, returns a failed_geocode error. Otherwise, searches within the bounds of the geocode and adds a geocode object to the response.", 1423 | "disabled": true 1424 | }, 1425 | { 1426 | "key": "query", 1427 | "value": "foursqu", 1428 | "description": "REQUIRED A search term to be applied against titles. Must be at least 3 characters long." 1429 | }, 1430 | { 1431 | "key": "locale", 1432 | "value": "ja", 1433 | "description": "Undocumented. Allows API consumers to pull relevant information (if available) in the specified ISO 639-1 2-Letter Language Code. If langauge information is not available, response will be returned in English.\n", 1434 | "disabled": true 1435 | } 1436 | ] 1437 | }, 1438 | "description": "Returns a list of mini-venues partially matching the search term, near the location." 1439 | }, 1440 | "response": [] 1441 | }, 1442 | { 1443 | "name": "Get Users Who Liked a Venue", 1444 | "request": { 1445 | "method": "GET", 1446 | "header": [], 1447 | "body": { 1448 | "mode": "raw", 1449 | "raw": "" 1450 | }, 1451 | "url": { 1452 | "raw": "https://api.foursquare.com/v2/venues/{{VENUE_ID}}/likes?client_id={{client_id}}&client_secret={{client_secret}}&v={{v}}", 1453 | "protocol": "https", 1454 | "host": [ 1455 | "api", 1456 | "foursquare", 1457 | "com" 1458 | ], 1459 | "path": [ 1460 | "v2", 1461 | "venues", 1462 | "{{VENUE_ID}}", 1463 | "likes" 1464 | ], 1465 | "query": [ 1466 | { 1467 | "key": "client_id", 1468 | "value": "{{client_id}}" 1469 | }, 1470 | { 1471 | "key": "client_secret", 1472 | "value": "{{client_secret}}" 1473 | }, 1474 | { 1475 | "key": "v", 1476 | "value": "{{v}}" 1477 | }, 1478 | { 1479 | "key": "oauth_token", 1480 | "value": "{{oauth_token}}", 1481 | "disabled": true 1482 | } 1483 | ] 1484 | }, 1485 | "description": "Returns friends and a total count of users who have liked this venue.\n\nCount for friends will only be applicable when you provide a Foursquare user's OAUTH2 token." 1486 | }, 1487 | "response": [] 1488 | }, 1489 | { 1490 | "name": "Get Venue Categories", 1491 | "request": { 1492 | "method": "GET", 1493 | "header": [], 1494 | "body": { 1495 | "mode": "raw", 1496 | "raw": "" 1497 | }, 1498 | "url": { 1499 | "raw": "https://api.foursquare.com/v2/venues/categories?client_id={{client_id}}&client_secret={{client_secret}}&v={{v}}", 1500 | "protocol": "https", 1501 | "host": [ 1502 | "api", 1503 | "foursquare", 1504 | "com" 1505 | ], 1506 | "path": [ 1507 | "v2", 1508 | "venues", 1509 | "categories" 1510 | ], 1511 | "query": [ 1512 | { 1513 | "key": "client_id", 1514 | "value": "{{client_id}}" 1515 | }, 1516 | { 1517 | "key": "client_secret", 1518 | "value": "{{client_secret}}" 1519 | }, 1520 | { 1521 | "key": "v", 1522 | "value": "{{v}}" 1523 | }, 1524 | { 1525 | "key": "locale", 1526 | "value": "es", 1527 | "description": "Undocumented. Allows API consumers to pull relevant information (if available) in the specified ISO 639-1 2-Letter Language Code. If langauge information is not available, response will be returned in English. Supported locales can be found at https://developer.foursquare.com/docs/api/configuration/internationalization\n", 1528 | "disabled": true 1529 | } 1530 | ] 1531 | }, 1532 | "description": "Returns a hierarchical list of categories applied to venues. This list is also available on our [categories](https://developer.foursquare.com/docs/resources/categories) page.\n\n#### Response Model: [Categories/Response Fields](https://developer.foursquare.com/docs/api/venues/categories)" 1533 | }, 1534 | "response": [] 1535 | }, 1536 | { 1537 | "name": "Get Similar Venues", 1538 | "request": { 1539 | "method": "GET", 1540 | "header": [], 1541 | "body": { 1542 | "mode": "raw", 1543 | "raw": "" 1544 | }, 1545 | "url": { 1546 | "raw": "https://api.foursquare.com/v2/venues/{{VENUE_ID}}/similar?client_id={{client_id}}&client_secret={{client_secret}}&v={{v}}", 1547 | "protocol": "https", 1548 | "host": [ 1549 | "api", 1550 | "foursquare", 1551 | "com" 1552 | ], 1553 | "path": [ 1554 | "v2", 1555 | "venues", 1556 | "{{VENUE_ID}}", 1557 | "similar" 1558 | ], 1559 | "query": [ 1560 | { 1561 | "key": "client_id", 1562 | "value": "{{client_id}}" 1563 | }, 1564 | { 1565 | "key": "client_secret", 1566 | "value": "{{client_secret}}" 1567 | }, 1568 | { 1569 | "key": "v", 1570 | "value": "{{v}}" 1571 | } 1572 | ] 1573 | }, 1574 | "description": "Returns a list of venues similar and near to the specified venue. For more robust information about the venues themselves (photos/tips/etc.), please see our venue details endpoint." 1575 | }, 1576 | "response": [] 1577 | }, 1578 | { 1579 | "name": "Get Next Venues", 1580 | "request": { 1581 | "method": "GET", 1582 | "header": [], 1583 | "body": { 1584 | "mode": "raw", 1585 | "raw": "" 1586 | }, 1587 | "url": { 1588 | "raw": "https://api.foursquare.com/v2/venues/{{VENUE_ID}}/nextvenues?client_id={{client_id}}&client_secret={{client_secret}}&v={{v}}", 1589 | "protocol": "https", 1590 | "host": [ 1591 | "api", 1592 | "foursquare", 1593 | "com" 1594 | ], 1595 | "path": [ 1596 | "v2", 1597 | "venues", 1598 | "{{VENUE_ID}}", 1599 | "nextvenues" 1600 | ], 1601 | "query": [ 1602 | { 1603 | "key": "client_id", 1604 | "value": "{{client_id}}" 1605 | }, 1606 | { 1607 | "key": "client_secret", 1608 | "value": "{{client_secret}}" 1609 | }, 1610 | { 1611 | "key": "v", 1612 | "value": "{{v}}" 1613 | } 1614 | ] 1615 | }, 1616 | "description": "Returns venues that people often check in to after the current venue. Up to 5 venues are returned in each query, and results are sorted by how many people have visited that venue after the current one. For more robust information about the venues themselves (photos/tips/etc.), please see our venue details endpoint.\n\n" 1617 | }, 1618 | "response": [] 1619 | }, 1620 | { 1621 | "name": "Like a Venue", 1622 | "request": { 1623 | "auth": { 1624 | "type": "oauth2", 1625 | "oauth2": [ 1626 | { 1627 | "key": "addTokenTo", 1628 | "value": "queryParams", 1629 | "type": "string" 1630 | }, 1631 | { 1632 | "key": "accessToken", 1633 | "value": "ZL30SB3KN1N25SRTRPYHIT222UEQGZCPOFE5GC2IHVX1M444", 1634 | "type": "string" 1635 | }, 1636 | { 1637 | "key": "tokenType", 1638 | "type": "any" 1639 | } 1640 | ] 1641 | }, 1642 | "method": "POST", 1643 | "header": [], 1644 | "body": { 1645 | "mode": "raw", 1646 | "raw": "" 1647 | }, 1648 | "url": { 1649 | "raw": "https://api.foursquare.com/v2/venues/{{VENUE_ID}}/like?oauth_token={{oauth_token}}&client_id={{client_id}}&client_secret={{client_secret}}&v={{v}}&set=1", 1650 | "protocol": "https", 1651 | "host": [ 1652 | "api", 1653 | "foursquare", 1654 | "com" 1655 | ], 1656 | "path": [ 1657 | "v2", 1658 | "venues", 1659 | "{{VENUE_ID}}", 1660 | "like" 1661 | ], 1662 | "query": [ 1663 | { 1664 | "key": "oauth_token", 1665 | "value": "{{oauth_token}}" 1666 | }, 1667 | { 1668 | "key": "client_id", 1669 | "value": "{{client_id}}" 1670 | }, 1671 | { 1672 | "key": "client_secret", 1673 | "value": "{{client_secret}}" 1674 | }, 1675 | { 1676 | "key": "v", 1677 | "value": "{{v}}" 1678 | }, 1679 | { 1680 | "key": "set", 1681 | "value": "1", 1682 | "description": "If 1, like this venue. If 0 unlike (un-do a previous like) it. Default value is 1." 1683 | } 1684 | ] 1685 | }, 1686 | "description": "Allows the acting user to like or unlike a venue." 1687 | }, 1688 | "response": [] 1689 | } 1690 | ] 1691 | }, 1692 | { 1693 | "name": "Photos", 1694 | "item": [ 1695 | { 1696 | "name": "Get Details of a Photo", 1697 | "request": { 1698 | "method": "GET", 1699 | "header": [], 1700 | "body": { 1701 | "mode": "raw", 1702 | "raw": "" 1703 | }, 1704 | "url": { 1705 | "raw": "https://api.foursquare.com/v2/photos/{{PHOTO_ID}}?client_id={{client_id}}&client_secret={{client_secret}}&v={{v}}", 1706 | "protocol": "https", 1707 | "host": [ 1708 | "api", 1709 | "foursquare", 1710 | "com" 1711 | ], 1712 | "path": [ 1713 | "v2", 1714 | "photos", 1715 | "{{PHOTO_ID}}" 1716 | ], 1717 | "query": [ 1718 | { 1719 | "key": "client_id", 1720 | "value": "{{client_id}}" 1721 | }, 1722 | { 1723 | "key": "client_secret", 1724 | "value": "{{client_secret}}" 1725 | }, 1726 | { 1727 | "key": "v", 1728 | "value": "{{v}}" 1729 | } 1730 | ] 1731 | }, 1732 | "description": "Get details of a photo.\n\nTo assemble a photo URL, combine the response’sprefix + size + suffix. Ex: https://igx.4sqi.net/img/general/300x500/5163668_xXFcZo7sU8aa1ZMhiQ2kIP7NllD48m7qsSwr1mJnFj4.jpg\n\nsize can be one of the following, where XX or YY is one of 36, 100, 300, or 500.\n\nXXxYY\noriginal: the original photo’s size\ncapXX: cap the photo with a width or height of XX. (whichever is larger). Scales the other, smaller dimension proportionally\nwidthXX: forces the width to be XX and scales the height proportionally\nheightYY: forces the height to be YY and scales the width proportionally\n\n#### Response Model: [Photo Details/Response Fields](https://developer.foursquare.com/docs/api/photos/details)" 1733 | }, 1734 | "response": [] 1735 | } 1736 | ] 1737 | }, 1738 | { 1739 | "name": "Tips", 1740 | "item": [ 1741 | { 1742 | "name": "Get Details of a Tip", 1743 | "request": { 1744 | "method": "GET", 1745 | "header": [], 1746 | "body": { 1747 | "mode": "raw", 1748 | "raw": "" 1749 | }, 1750 | "url": { 1751 | "raw": "https://api.foursquare.com/v2/tips/{{TIP_ID}}?client_id={{client_id}}&client_secret={{client_secret}}&v={{v}}", 1752 | "protocol": "https", 1753 | "host": [ 1754 | "api", 1755 | "foursquare", 1756 | "com" 1757 | ], 1758 | "path": [ 1759 | "v2", 1760 | "tips", 1761 | "{{TIP_ID}}" 1762 | ], 1763 | "query": [ 1764 | { 1765 | "key": "client_id", 1766 | "value": "{{client_id}}" 1767 | }, 1768 | { 1769 | "key": "client_secret", 1770 | "value": "{{client_secret}}" 1771 | }, 1772 | { 1773 | "key": "v", 1774 | "value": "{{v}}" 1775 | } 1776 | ] 1777 | }, 1778 | "description": "Gives details about a tip, including which users (especially friends) have marked the tip to-do." 1779 | }, 1780 | "response": [] 1781 | } 1782 | ] 1783 | }, 1784 | { 1785 | "name": "Lists", 1786 | "item": [ 1787 | { 1788 | "name": "Create a List", 1789 | "event": [ 1790 | { 1791 | "listen": "test", 1792 | "script": { 1793 | "id": "90eecffe-25ca-4762-b49f-fc6e920d1816", 1794 | "exec": [ 1795 | "var jsonData = JSON.parse(responseBody);", 1796 | "postman.setEnvironmentVariable(\"LIST_ID\", jsonData.response.list.id);", 1797 | "" 1798 | ], 1799 | "type": "text/javascript" 1800 | } 1801 | } 1802 | ], 1803 | "request": { 1804 | "method": "POST", 1805 | "header": [], 1806 | "body": { 1807 | "mode": "raw", 1808 | "raw": "" 1809 | }, 1810 | "url": { 1811 | "raw": "https://api.foursquare.com/v2/lists/add?oauth_token={{oauth_token}}&client_id={{client_id}}&client_secret={{client_secret}}&v={{v}}&name=Test Venues&description=List of Test Venues You Have Created&collaborative=true", 1812 | "protocol": "https", 1813 | "host": [ 1814 | "api", 1815 | "foursquare", 1816 | "com" 1817 | ], 1818 | "path": [ 1819 | "v2", 1820 | "lists", 1821 | "add" 1822 | ], 1823 | "query": [ 1824 | { 1825 | "key": "oauth_token", 1826 | "value": "{{oauth_token}}" 1827 | }, 1828 | { 1829 | "key": "client_id", 1830 | "value": "{{client_id}}" 1831 | }, 1832 | { 1833 | "key": "client_secret", 1834 | "value": "{{client_secret}}" 1835 | }, 1836 | { 1837 | "key": "v", 1838 | "value": "{{v}}" 1839 | }, 1840 | { 1841 | "key": "name", 1842 | "value": "Test Venues", 1843 | "description": "The name of the list." 1844 | }, 1845 | { 1846 | "key": "description", 1847 | "value": "List of Test Venues You Have Created", 1848 | "description": "The description of the list." 1849 | }, 1850 | { 1851 | "key": "collaborative", 1852 | "value": "true", 1853 | "description": "Boolean indicating if this list can be edited by friends." 1854 | }, 1855 | { 1856 | "key": "photoId", 1857 | "value": "", 1858 | "description": "The id of a photo that should be set as the list photo.", 1859 | "disabled": true 1860 | } 1861 | ] 1862 | }, 1863 | "description": "Allows user to create a new list." 1864 | }, 1865 | "response": [] 1866 | } 1867 | ] 1868 | }, 1869 | { 1870 | "name": "Venue Edits (Exercise Caution)", 1871 | "item": [ 1872 | { 1873 | "name": "Add a Venue", 1874 | "event": [ 1875 | { 1876 | "listen": "test", 1877 | "script": { 1878 | "id": "02ec6536-cd43-41aa-9a63-42aa6a1d1f76", 1879 | "exec": [ 1880 | "var jsonData = JSON.parse(responseBody);", 1881 | "var list_id = pm.environment.get(\"LIST_ID\");", 1882 | "var oauth_token = pm.environment.get(\"oauth_token\");", 1883 | "var version = pm.environment.get(\"v\");", 1884 | "var client_id = pm.environment.get(\"client_id\");", 1885 | "var client_secret = pm.environment.get(\"client_secret\");", 1886 | "var url = \"https://api.foursquare.com/v2/lists/\" + list_id + \"/additem?v=\" + version + ", 1887 | " \"&client_id=\" + client_id + ", 1888 | " \"&client_secret=\" + client_secret + ", 1889 | " \"&oauth_token=\" + oauth_token +", 1890 | " \"&venueId=\" + jsonData.response.venue.id;", 1891 | "", 1892 | "var settings = {", 1893 | " \"url\": url,", 1894 | " \"method\": \"POST\"", 1895 | "}", 1896 | "", 1897 | "pm.sendRequest(settings, function(err, res){", 1898 | " console.log(err ? err : res.json());", 1899 | "})" 1900 | ], 1901 | "type": "text/javascript" 1902 | } 1903 | } 1904 | ], 1905 | "request": { 1906 | "method": "POST", 1907 | "header": [ 1908 | { 1909 | "key": "Content-Type", 1910 | "name": "Content-Type", 1911 | "value": "application/x-www-form-urlencoded", 1912 | "type": "text" 1913 | } 1914 | ], 1915 | "body": { 1916 | "mode": "raw", 1917 | "raw": "" 1918 | }, 1919 | "url": { 1920 | "raw": "https://api.foursquare.com/v2/venues/add?client_id={{client_id}}&client_secret={{client_secret}}&v={{v}}&name=Foursquare Asia Test Venue&ll=1.2787325314969156,103.8434731966384&primaryCategoryId=4bf58dd8d48988d124941735&oauth_token={{oauth_token}}", 1921 | "protocol": "https", 1922 | "host": [ 1923 | "api", 1924 | "foursquare", 1925 | "com" 1926 | ], 1927 | "path": [ 1928 | "v2", 1929 | "venues", 1930 | "add" 1931 | ], 1932 | "query": [ 1933 | { 1934 | "key": "client_id", 1935 | "value": "{{client_id}}" 1936 | }, 1937 | { 1938 | "key": "client_secret", 1939 | "value": "{{client_secret}}" 1940 | }, 1941 | { 1942 | "key": "v", 1943 | "value": "{{v}}" 1944 | }, 1945 | { 1946 | "key": "name", 1947 | "value": "Foursquare Asia Test Venue", 1948 | "description": "REQUIRED. The name of the venue." 1949 | }, 1950 | { 1951 | "key": "ll", 1952 | "value": "1.2787325314969156,103.8434731966384", 1953 | "description": "REQUIRED. Latitude and longitude of the venue, as accurate as is known." 1954 | }, 1955 | { 1956 | "key": "primaryCategoryId", 1957 | "value": "4bf58dd8d48988d124941735", 1958 | "description": "REQUIRED. The ID of the category to which you want to assign this venue." 1959 | }, 1960 | { 1961 | "key": "oauth_token", 1962 | "value": "{{oauth_token}}", 1963 | "description": "Token obtained after you use a Foursquare account to login and obtain an OAUTH token. You may do so from the Authorization tab above, through Postman. You have to set the appropriate Callback URI from your Foursquare Developer console to include \"https://www.getpostman.com/oauth2/callback\"." 1964 | }, 1965 | { 1966 | "key": "address", 1967 | "value": "", 1968 | "description": "The address of the venue.", 1969 | "disabled": true 1970 | }, 1971 | { 1972 | "key": "crossStreet", 1973 | "value": "", 1974 | "description": "The nearest intersecting street or streets.", 1975 | "disabled": true 1976 | }, 1977 | { 1978 | "key": "city", 1979 | "value": "", 1980 | "description": "The city name where this venue is.", 1981 | "disabled": true 1982 | }, 1983 | { 1984 | "key": "state", 1985 | "value": "", 1986 | "description": "The nearest state or province to the venue.", 1987 | "disabled": true 1988 | }, 1989 | { 1990 | "key": "zip", 1991 | "value": "", 1992 | "description": "The zip or postal code for the venue.", 1993 | "disabled": true 1994 | }, 1995 | { 1996 | "key": "phone", 1997 | "value": "", 1998 | "description": "The phone number of the venue.", 1999 | "disabled": true 2000 | }, 2001 | { 2002 | "key": "allCategoryIds", 2003 | "value": "", 2004 | "description": "Additional category IDs for the venue (up to two more, separated by a comma).", 2005 | "disabled": true 2006 | }, 2007 | { 2008 | "key": "parentId", 2009 | "value": "", 2010 | "description": "If the venue is a subvenue of a larger venue (such as a coffee shop within a Target), set this attribute to the ID of the parent venue.", 2011 | "disabled": true 2012 | }, 2013 | { 2014 | "key": "cc", 2015 | "value": "", 2016 | "description": "The country code of the venue. This is optional but we recommend sending this parameter if your venue borders another country and you are getting formatting errors for the zip and/or phone.", 2017 | "disabled": true 2018 | }, 2019 | { 2020 | "key": "twitter", 2021 | "value": "", 2022 | "description": "The twitter handle of the venue.", 2023 | "disabled": true 2024 | }, 2025 | { 2026 | "key": "description", 2027 | "value": "", 2028 | "description": "A freeform description of the venue, up to 160 characters.", 2029 | "disabled": true 2030 | }, 2031 | { 2032 | "key": "chainIds", 2033 | "value": "", 2034 | "description": "A comma-delimited string of chain ID(s) for the venue (each venue can have up to five chain IDs, if applicable).", 2035 | "disabled": true 2036 | }, 2037 | { 2038 | "key": "url", 2039 | "value": "", 2040 | "description": "The url of the homepage of the venue.", 2041 | "disabled": true 2042 | }, 2043 | { 2044 | "key": "ignoreDuplicates", 2045 | "value": "", 2046 | "description": "A boolean flag telling the server to ignore duplicates and force the addition of this venue.", 2047 | "disabled": true 2048 | }, 2049 | { 2050 | "key": "ignoreDuplicatesKey", 2051 | "value": "", 2052 | "description": "Required if ignoreDuplicates is true. This key will be available in the response of the HTTP 409 error of the first (failed) attempt to add venue.", 2053 | "disabled": true 2054 | } 2055 | ] 2056 | }, 2057 | "description": "Allows Foursquare users to add a new venue. All fields are optional, except for ll, name, and primaryCategoryId.\n\nBefore adding a place, please make sure your data is properly formatted to adhere to our style guide [here](https://support.foursquare.com/hc/en-us/articles/201064960-What-is-the-style-guide-for-adding-and-editing-places-).\n\n" 2058 | }, 2059 | "response": [] 2060 | }, 2061 | { 2062 | "name": "Indicate a Venue is Incorrect", 2063 | "request": { 2064 | "method": "POST", 2065 | "header": [], 2066 | "body": { 2067 | "mode": "raw", 2068 | "raw": "" 2069 | }, 2070 | "url": { 2071 | "raw": "https://api.foursquare.com/v2/venues/{{EDIT_VENUE_ID}}/flag?client_id={{client_id}}&client_secret={{client_secret}}&v={{v}}&oauth_token={{oauth_token}}&problem=mislocated", 2072 | "protocol": "https", 2073 | "host": [ 2074 | "api", 2075 | "foursquare", 2076 | "com" 2077 | ], 2078 | "path": [ 2079 | "v2", 2080 | "venues", 2081 | "{{EDIT_VENUE_ID}}", 2082 | "flag" 2083 | ], 2084 | "query": [ 2085 | { 2086 | "key": "client_id", 2087 | "value": "{{client_id}}" 2088 | }, 2089 | { 2090 | "key": "client_secret", 2091 | "value": "{{client_secret}}" 2092 | }, 2093 | { 2094 | "key": "v", 2095 | "value": "{{v}}" 2096 | }, 2097 | { 2098 | "key": "oauth_token", 2099 | "value": "{{oauth_token}}", 2100 | "description": "Token obtained after you use a Foursquare account to login and obtain an OAUTH token. You may do so from the Authorization tab above, through Postman. You have to set the appropriate Callback URI from your Foursquare Developer console to include \"https://www.getpostman.com/oauth2/callback\"." 2101 | }, 2102 | { 2103 | "key": "problem", 2104 | "value": "mislocated", 2105 | "description": "REQUIRED. One of mislocated, closed, duplicate, inappropriate, doesnt_exist, private, or event_over." 2106 | }, 2107 | { 2108 | "key": "venueid", 2109 | "value": "", 2110 | "description": "ID of the duplicated venue (for problem duplicate).", 2111 | "disabled": true 2112 | } 2113 | ] 2114 | }, 2115 | "description": "Allows users to indicate a venue is incorrect in some way.\n\nFlags are pushed into a moderation queue. If a closed flag is approved, the venue will no longer show up in search results. Moderators will attempt to correct cases of mislocated or duplicate venues as appropriate. If the user has the correct address for a mislocated venue, use proposeedit instead.\n\n" 2116 | }, 2117 | "response": [] 2118 | }, 2119 | { 2120 | "name": "Propose an Edit to a Venue", 2121 | "request": { 2122 | "method": "POST", 2123 | "header": [], 2124 | "body": { 2125 | "mode": "raw", 2126 | "raw": "" 2127 | }, 2128 | "url": { 2129 | "raw": "https://api.foursquare.com/v2/venues/{{EDIT_VENUE_ID}}/proposeedit?client_id={{client_id}}&client_secret={{client_secret}}&v={{v}}&oauth_token={{oauth_token}}", 2130 | "protocol": "https", 2131 | "host": [ 2132 | "api", 2133 | "foursquare", 2134 | "com" 2135 | ], 2136 | "path": [ 2137 | "v2", 2138 | "venues", 2139 | "{{EDIT_VENUE_ID}}", 2140 | "proposeedit" 2141 | ], 2142 | "query": [ 2143 | { 2144 | "key": "client_id", 2145 | "value": "{{client_id}}" 2146 | }, 2147 | { 2148 | "key": "client_secret", 2149 | "value": "{{client_secret}}" 2150 | }, 2151 | { 2152 | "key": "v", 2153 | "value": "{{v}}" 2154 | }, 2155 | { 2156 | "key": "oauth_token", 2157 | "value": "{{oauth_token}}", 2158 | "description": "Token obtained after you use a Foursquare account to login and obtain an OAUTH token. You may do so from the Authorization tab above, through Postman. You have to set the appropriate Callback URI from your Foursquare Developer console to include \"https://www.getpostman.com/oauth2/callback\"." 2159 | }, 2160 | { 2161 | "key": "name", 2162 | "value": "", 2163 | "description": "The name of the venue.\n", 2164 | "disabled": true 2165 | }, 2166 | { 2167 | "key": "address", 2168 | "value": "", 2169 | "description": "The address of the venue.\n", 2170 | "disabled": true 2171 | }, 2172 | { 2173 | "key": "crossStreet", 2174 | "value": "", 2175 | "description": "The nearest intersecting street or streets.\n", 2176 | "disabled": true 2177 | }, 2178 | { 2179 | "key": "city", 2180 | "value": "", 2181 | "description": "The city name where this venue is.", 2182 | "disabled": true 2183 | }, 2184 | { 2185 | "key": "state", 2186 | "value": "", 2187 | "description": "The nearest state or province to the venue.", 2188 | "disabled": true 2189 | }, 2190 | { 2191 | "key": "zip", 2192 | "value": "", 2193 | "description": "The zip or postal code for the venue.\n", 2194 | "disabled": true 2195 | }, 2196 | { 2197 | "key": "phone", 2198 | "value": "", 2199 | "description": "The phone number of the venue.\n", 2200 | "disabled": true 2201 | }, 2202 | { 2203 | "key": "twitter", 2204 | "value": "", 2205 | "description": "The twitter handle of the venue.\n", 2206 | "disabled": true 2207 | }, 2208 | { 2209 | "key": "description", 2210 | "value": "", 2211 | "description": "A freeform description of the venue, up to 300 characters.\n", 2212 | "disabled": true 2213 | }, 2214 | { 2215 | "key": "url", 2216 | "value": "", 2217 | "description": "The url of the homepage of the venue.\n", 2218 | "disabled": true 2219 | }, 2220 | { 2221 | "key": "menuUrl", 2222 | "value": "", 2223 | "description": "A url where the menu of the venue can be found.\n", 2224 | "disabled": true 2225 | }, 2226 | { 2227 | "key": "facebookUrl", 2228 | "value": "", 2229 | "description": "The url for this venue’s Facebook Page.\n", 2230 | "disabled": true 2231 | }, 2232 | { 2233 | "key": "venuell", 2234 | "value": "", 2235 | "description": "Latitude and longitude at which the venue should be located.\n", 2236 | "disabled": true 2237 | }, 2238 | { 2239 | "key": "primaryCategoryId", 2240 | "value": "", 2241 | "description": "The ID of the category to which you want to assign this venue.\n", 2242 | "disabled": true 2243 | }, 2244 | { 2245 | "key": "addCategoryIds", 2246 | "value": "", 2247 | "description": "Comma-separated list of new category IDs to be assigned to this venue. If you are adding a new category to a venue and you want to make it primary, you should just use primaryCategoryId.", 2248 | "disabled": true 2249 | }, 2250 | { 2251 | "key": "removeCategoryIds", 2252 | "value": "", 2253 | "description": "Comma-separated list of new category IDs to be removed from this venue.\n", 2254 | "disabled": true 2255 | }, 2256 | { 2257 | "key": "hours", 2258 | "value": "", 2259 | "description": "The hours for the venue, as a semi-colon separated list of open segments and named segments (e.g., brunch or happy hour). Open segments are formatted as day,start,end. Named segments additionally have a label, formatted as day,start,end,label. Days are formatted as integers with Monday = 1,…,Sunday = 7. Start and End are formatted as [+]HHMM format. Use 24 hour format (no colon), prefix with 0 for HH or MM less than 10. Use ‘+’ prefix, i.e., +0230 to represent 2:30 am past midnight into the following day. To indicate that a venue is open 24/7, send this value with the hours attribute: 1,0000,2400;2,0000,2400;3,0000,2400;4,0000,2400;5,0000,2400;6,0000,2400;7,0000,2400", 2260 | "disabled": true 2261 | }, 2262 | { 2263 | "key": "creditCards", 2264 | "value": "no", 2265 | "description": "Undocumented. Send yes or no to indicate if this place accepts credit cards.", 2266 | "disabled": true 2267 | }, 2268 | { 2269 | "key": "americanExpress", 2270 | "value": "no", 2271 | "description": "Undocumented. Send yes or no to indicate if this place accepts AMEX cards.", 2272 | "disabled": true 2273 | }, 2274 | { 2275 | "key": "visa", 2276 | "value": "no", 2277 | "description": "Undocumented. Send yes or no to indicate if this place accepts Visa.", 2278 | "disabled": true 2279 | }, 2280 | { 2281 | "key": "mastercard", 2282 | "value": "no", 2283 | "description": "Undocumented. Send yes or no to indicate if this place accepts Mastercard.", 2284 | "disabled": true 2285 | }, 2286 | { 2287 | "key": "name:zh", 2288 | "value": "四方辦公室", 2289 | "description": "Undocumented. Send the translated venue name for the venue in the language specified with the ISO 639-1 2-Letter Language Code.", 2290 | "disabled": true 2291 | } 2292 | ] 2293 | }, 2294 | "description": "Allows you to propose a change to a venue. Before editing, please make sure your fields are properly formatted to adhere to our style guide [here](https://support.foursquare.com/hc/en-us/articles/201064960-What-is-the-style-guide-for-adding-and-editing-places-).\n\nUsers with improper edits may see their edits “rolled back” or in some cases face a temporary ban on their account from our Super User community." 2295 | }, 2296 | "response": [] 2297 | } 2298 | ], 2299 | "description": "These endpoints make suggested changes directly to data that is publicly accessible to our data consumers. Test and use these endpoints with caution, and avoid editing data for popular venues or venues that you are unfamiliar with.\n\nIf found or reported, misuse of these endpoints will lead to immediate account restrictions and permanent account bans from future edits.", 2300 | "auth": { 2301 | "type": "oauth2", 2302 | "oauth2": [ 2303 | { 2304 | "key": "addTokenTo", 2305 | "value": "queryParams", 2306 | "type": "string" 2307 | }, 2308 | { 2309 | "key": "accessToken", 2310 | "value": "ZL30SB3KN1N25SRTRPYHIT222UEQGZCPOFE5GC2IHVX1M444", 2311 | "type": "string" 2312 | }, 2313 | { 2314 | "key": "tokenType", 2315 | "type": "any" 2316 | } 2317 | ] 2318 | } 2319 | } 2320 | ] 2321 | } -------------------------------------------------------------------------------- /environment.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "29b1d397-7fb8-43f5-b233-bea8c3cca203", 3 | "name": "Foursquare Places API", 4 | "values": [ 5 | { 6 | "key": "client_id", 7 | "value": "FSQ_CLIENT_ID", 8 | "enabled": true 9 | }, 10 | { 11 | "key": "client_secret", 12 | "value": "FSQ_CLIENT_SECRET", 13 | "enabled": true 14 | }, 15 | { 16 | "key": "v", 17 | "value": "20190425", 18 | "enabled": true 19 | }, 20 | { 21 | "key": "VENUE_ID", 22 | "value": "", 23 | "enabled": true 24 | }, 25 | { 26 | "key": "requestId_select", 27 | "value": "", 28 | "enabled": true 29 | }, 30 | { 31 | "key": "visitSignature_select", 32 | "value": "", 33 | "enabled": true 34 | }, 35 | { 36 | "key": "prefix_photo", 37 | "value": "", 38 | "enabled": true 39 | }, 40 | { 41 | "key": "suffix_photo", 42 | "value": "", 43 | "enabled": true 44 | }, 45 | { 46 | "key": "oauth_token", 47 | "value": "OAUTH_TOKEN", 48 | "enabled": true 49 | }, 50 | { 51 | "key": "EDIT_VENUE_ID", 52 | "value": "EDIT_VENUE_ID", 53 | "enabled": true 54 | }, 55 | { 56 | "key": "PHOTO_ID", 57 | "value": "", 58 | "enabled": true 59 | }, 60 | { 61 | "key": "TIP_ID", 62 | "value": "", 63 | "enabled": true 64 | }, 65 | { 66 | "key": "LIST_ID", 67 | "value": "", 68 | "enabled": true 69 | } 70 | ], 71 | "_postman_variable_scope": "environment", 72 | "_postman_exported_at": "2019-04-30T02:17:39.606Z", 73 | "_postman_exported_using": "Postman/7.0.9" 74 | } -------------------------------------------------------------------------------- /geofence_collection.json: -------------------------------------------------------------------------------- 1 | { 2 | "info": { 3 | "_postman_id": "182285c5-4503-4d21-98f0-be27d4323503", 4 | "name": "Foursquare Geofences API", 5 | "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json" 6 | }, 7 | "item": [ 8 | { 9 | "name": "Add a Venue Geofence", 10 | "request": { 11 | "auth": { 12 | "type": "oauth2", 13 | "oauth2": [ 14 | { 15 | "key": "addTokenTo", 16 | "value": "queryParams", 17 | "type": "string" 18 | } 19 | ] 20 | }, 21 | "method": "POST", 22 | "header": [], 23 | "url": { 24 | "raw": "https://api.foursquare.com/v2/apps/{{client_id}}/geofences/add?v={{v}}&oauth_token={{oauth_token}}&name=MyGeofence&radius=100&venueId=44e9b421f964a520a5371fe3", 25 | "protocol": "https", 26 | "host": [ 27 | "api", 28 | "foursquare", 29 | "com" 30 | ], 31 | "path": [ 32 | "v2", 33 | "apps", 34 | "{{client_id}}", 35 | "geofences", 36 | "add" 37 | ], 38 | "query": [ 39 | { 40 | "key": "v", 41 | "value": "{{v}}" 42 | }, 43 | { 44 | "key": "oauth_token", 45 | "value": "{{oauth_token}}", 46 | "description": "REQUIRED - A valid OAuth Token" 47 | }, 48 | { 49 | "key": "name", 50 | "value": "MyGeofence", 51 | "description": "REQUIRED A custom string that you can set to help you identify the set of geofences." 52 | }, 53 | { 54 | "key": "radius", 55 | "value": "100", 56 | "description": "Area around a venue that will trigger a geofence event. Default and minimum radius is 50 meters with a max of 5000." 57 | }, 58 | { 59 | "key": "venueId", 60 | "value": "44e9b421f964a520a5371fe3", 61 | "description": "A single Foursquare venueId." 62 | }, 63 | { 64 | "key": "categoryId", 65 | "value": "4d4b7104d754a06370d81259", 66 | "description": "A single Foursquare category.", 67 | "disabled": true 68 | }, 69 | { 70 | "key": "chainId", 71 | "value": "556ce426aceaff43eb04e8a0", 72 | "description": "A single Foursquare chain.", 73 | "disabled": true 74 | }, 75 | { 76 | "key": "dwellTime", 77 | "value": "5", 78 | "description": "Number of minutes user needs to be inside of a geofence to trigger a dwell event. Default is 1 minute.", 79 | "disabled": true 80 | } 81 | ] 82 | }, 83 | "description": "Create a geofence around any venue on Foursquare. This can be submitted for a specific Foursquare venueId, categoryId, or chainId. Although venueIds, categoryIds, and chainIds are all optional, at least one must be used to create a venue geofence." 84 | }, 85 | "response": [] 86 | }, 87 | { 88 | "name": "Add a Polygon Geofence", 89 | "request": { 90 | "method": "POST", 91 | "header": [], 92 | "url": { 93 | "raw": "https://api.foursquare.com/v2/apps/{{client_id}}/geofences/add?v={{v}}&oauth_token={{oauth_token}}&name=MyGeofence!&polygon=40.74230057739135%2C-73.99121961065113%3B40.744966747904215%2C-73.9892025894718%3B40.74451155562636%2C-73.981520742853%3B40.74067481121037%2C-73.98182115026243%3B40.73742315963841%2C-73.98615560003054%3B40.73817105357466%2C-73.99353703923991%3B40.74233309230931%2C-73.99559697576301%3B40.74230057739135%2C-73.99121961065113&dwellTime=5", 94 | "protocol": "https", 95 | "host": [ 96 | "api", 97 | "foursquare", 98 | "com" 99 | ], 100 | "path": [ 101 | "v2", 102 | "apps", 103 | "{{client_id}}", 104 | "geofences", 105 | "add" 106 | ], 107 | "query": [ 108 | { 109 | "key": "v", 110 | "value": "{{v}}" 111 | }, 112 | { 113 | "key": "oauth_token", 114 | "value": "{{oauth_token}}" 115 | }, 116 | { 117 | "key": "name", 118 | "value": "MyGeofence!", 119 | "description": "REQUIRED A custom string that you can set to help you identify the set of geofences." 120 | }, 121 | { 122 | "key": "polygon", 123 | "value": "40.74230057739135%2C-73.99121961065113%3B40.744966747904215%2C-73.9892025894718%3B40.74451155562636%2C-73.981520742853%3B40.74067481121037%2C-73.98182115026243%3B40.73742315963841%2C-73.98615560003054%3B40.73817105357466%2C-73.99353703923991%3B40.74233309230931%2C-73.99559697576301%3B40.74230057739135%2C-73.99121961065113", 124 | "description": "REQUIRED A string of URL encoded lat/lng points separated by semicolon, with start and end as the same points. Must provide between 4 and 15 points in a clockwise fashion to successfully create the polygon." 125 | }, 126 | { 127 | "key": "dwellTime", 128 | "value": "5", 129 | "description": "Number of minutes user needs to be inside of a geofence to trigger a dwell event. Default is 1 minute." 130 | } 131 | ] 132 | }, 133 | "description": "Create a custom Polygon geofence of up to 15 different points." 134 | }, 135 | "response": [] 136 | }, 137 | { 138 | "name": "Add a Point Geofence", 139 | "request": { 140 | "method": "POST", 141 | "header": [], 142 | "url": { 143 | "raw": "https://api.foursquare.com/v2/apps/{{client_id}}/geofences/add?v={{v}}&oauth_token={{oauth_token}}&name=MyGeofence¢er=40.7435179,-73.988242149&radius=100&dwellTime=5", 144 | "protocol": "https", 145 | "host": [ 146 | "api", 147 | "foursquare", 148 | "com" 149 | ], 150 | "path": [ 151 | "v2", 152 | "apps", 153 | "{{client_id}}", 154 | "geofences", 155 | "add" 156 | ], 157 | "query": [ 158 | { 159 | "key": "v", 160 | "value": "{{v}}" 161 | }, 162 | { 163 | "key": "oauth_token", 164 | "value": "{{oauth_token}}" 165 | }, 166 | { 167 | "key": "name", 168 | "value": "MyGeofence", 169 | "description": "REQUIRED A custom string that you can define to help you identify the set of geofences." 170 | }, 171 | { 172 | "key": "center", 173 | "value": "40.7435179,-73.988242149", 174 | "description": "REQUIRED A comma separated lat/lng coordinate." 175 | }, 176 | { 177 | "key": "radius", 178 | "value": "100", 179 | "description": "REQUIRED Area around the lat/lng that will trigger a geofence event. Default and miniumum radius is 50 meters with a max of 5000." 180 | }, 181 | { 182 | "key": "dwellTime", 183 | "value": "5", 184 | "description": "Number of minutes user needs to be inside of a geofence to trigger a dwell event. Default is 1 minute." 185 | } 186 | ] 187 | }, 188 | "description": "Create a geofence around any lat/lng coordinate." 189 | }, 190 | "response": [] 191 | }, 192 | { 193 | "name": "Add Geofences in Bulk", 194 | "request": { 195 | "method": "POST", 196 | "header": [], 197 | "url": { 198 | "raw": "https://api.foursquare.com/v2/apps/{{client_id}}/geofences/addbulk?v={{v}}&oauth_token={{oauth_token}}&geofences=%5B%7B%22name%22%3A%22FavoriteCoffeeShop%22%2C%22venueId%22%3A%224b5901d3f964a520167828e3%22%2C%22dwellTime%22%3A5%2C%22radius%22%3A100%7D%2C%7B%22name%22%3A%22LatLngFence%22%2C%22dwellTime%22%3A10%2C%22radius%22%3A175%2C%22center%22%3A%2240.7001%2C-73.988%22%7D%5D", 199 | "protocol": "https", 200 | "host": [ 201 | "api", 202 | "foursquare", 203 | "com" 204 | ], 205 | "path": [ 206 | "v2", 207 | "apps", 208 | "{{client_id}}", 209 | "geofences", 210 | "addbulk" 211 | ], 212 | "query": [ 213 | { 214 | "key": "v", 215 | "value": "{{v}}" 216 | }, 217 | { 218 | "key": "oauth_token", 219 | "value": "{{oauth_token}}" 220 | }, 221 | { 222 | "key": "geofences", 223 | "value": "%5B%7B%22name%22%3A%22FavoriteCoffeeShop%22%2C%22venueId%22%3A%224b5901d3f964a520167828e3%22%2C%22dwellTime%22%3A5%2C%22radius%22%3A100%7D%2C%7B%22name%22%3A%22LatLngFence%22%2C%22dwellTime%22%3A10%2C%22radius%22%3A175%2C%22center%22%3A%2240.7001%2C-73.988%22%7D%5D", 224 | "description": "REQUIRED Array of pilgrim geofence objects. Must be URL encoded." 225 | }, 226 | { 227 | "key": "replace", 228 | "value": "true", 229 | "description": "Replace all the existing geofence entries with the new geofences. Will append new geofences if false.", 230 | "disabled": true 231 | }, 232 | { 233 | "key": "returnGeofences", 234 | "value": "true", 235 | "description": "Returns all created geofences in a JSON array.", 236 | "disabled": true 237 | } 238 | ] 239 | }, 240 | "description": "Bulk add up to 1000 geofence objects at the same time. A geofence object must have either one of venueId, categoryId, chainId, center, or polygon." 241 | }, 242 | "response": [] 243 | }, 244 | { 245 | "name": "Update a Geofence", 246 | "request": { 247 | "method": "POST", 248 | "header": [], 249 | "url": { 250 | "raw": "https://api.foursquare.com/v2/apps/{{client_id}}/geofence/5e6a46cdeb85330008f0f5ab/update?v={{v}}&oauth_token={{oauth_token}}&name=MyGeofence", 251 | "protocol": "https", 252 | "host": [ 253 | "api", 254 | "foursquare", 255 | "com" 256 | ], 257 | "path": [ 258 | "v2", 259 | "apps", 260 | "{{client_id}}", 261 | "geofence", 262 | "5e6a46cdeb85330008f0f5ab", 263 | "update" 264 | ], 265 | "query": [ 266 | { 267 | "key": "v", 268 | "value": "{{v}}" 269 | }, 270 | { 271 | "key": "oauth_token", 272 | "value": "{{oauth_token}}" 273 | }, 274 | { 275 | "key": "name", 276 | "value": "MyGeofence", 277 | "description": "A custom string that you can set to help you identify the set of geofences." 278 | }, 279 | { 280 | "key": "radius", 281 | "value": "100", 282 | "description": "Area around the lat/lng that will trigger a geofence event. Default and miniumum radius is 50 meters with a max of 5000.", 283 | "disabled": true 284 | }, 285 | { 286 | "key": "venueId", 287 | "value": "44e9b421f964a520a5371fe3", 288 | "description": "A single Foursquare venueId.", 289 | "disabled": true 290 | }, 291 | { 292 | "key": "categoryId", 293 | "value": "4d4b7104d754a06370d81259", 294 | "description": "A single Foursquare category.", 295 | "disabled": true 296 | }, 297 | { 298 | "key": "chainId", 299 | "value": "556ce426aceaff43eb04e8a0", 300 | "description": "A single Foursquare chainid.", 301 | "disabled": true 302 | }, 303 | { 304 | "key": "dwellTime", 305 | "value": "5", 306 | "description": "Number of minutes user needs to be inside of a geofence to trigger a dwell event. Default is 1 minute.", 307 | "disabled": true 308 | }, 309 | { 310 | "key": "center", 311 | "value": "40.7435179,-73.988242149", 312 | "description": "A comma separated lat/long coordinate.", 313 | "disabled": true 314 | } 315 | ] 316 | }, 317 | "description": "Update a geofence referenced by its geofenceId. A geofenceId is generated for all geofences and can be found in the Pilgrim Console." 318 | }, 319 | "response": [] 320 | }, 321 | { 322 | "name": "Delete a Geofence", 323 | "request": { 324 | "method": "POST", 325 | "header": [], 326 | "url": { 327 | "raw": "https://api.foursquare.com/v2/apps/{{client_id}}/geofence/5e6a466ffa8f3a0008f7f147/delete?v={{v}}&oauth_token={{oauth_token}}", 328 | "protocol": "https", 329 | "host": [ 330 | "api", 331 | "foursquare", 332 | "com" 333 | ], 334 | "path": [ 335 | "v2", 336 | "apps", 337 | "{{client_id}}", 338 | "geofence", 339 | "5e6a466ffa8f3a0008f7f147", 340 | "delete" 341 | ], 342 | "query": [ 343 | { 344 | "key": "v", 345 | "value": "{{v}}" 346 | }, 347 | { 348 | "key": "oauth_token", 349 | "value": "{{oauth_token}}" 350 | } 351 | ] 352 | }, 353 | "description": "Delete a geofence referenced by its geofenceId. A geofenceId is generated for all geofences and can be found in the Pilgrim Console." 354 | }, 355 | "response": [] 356 | }, 357 | { 358 | "name": "Clear All Geofences", 359 | "request": { 360 | "method": "POST", 361 | "header": [], 362 | "url": { 363 | "raw": "https://api.foursquare.com/v2/apps/{{client_id}}/geofences/clear?v={{v}}&oauth_token={{oauth_token}}", 364 | "protocol": "https", 365 | "host": [ 366 | "api", 367 | "foursquare", 368 | "com" 369 | ], 370 | "path": [ 371 | "v2", 372 | "apps", 373 | "{{client_id}}", 374 | "geofences", 375 | "clear" 376 | ], 377 | "query": [ 378 | { 379 | "key": "v", 380 | "value": "{{v}}" 381 | }, 382 | { 383 | "key": "oauth_token", 384 | "value": "{{oauth_token}}" 385 | } 386 | ] 387 | }, 388 | "description": "Clears all created geofences." 389 | }, 390 | "response": [] 391 | }, 392 | { 393 | "name": "Get a Geofence", 394 | "request": { 395 | "method": "GET", 396 | "header": [], 397 | "url": { 398 | "raw": "https://api.foursquare.com/v2/apps/{{client_id}}/geofence/5e6a466ffa8f3a0008f7f147/?v={{v}}&oauth_token={{oauth_token}}", 399 | "protocol": "https", 400 | "host": [ 401 | "api", 402 | "foursquare", 403 | "com" 404 | ], 405 | "path": [ 406 | "v2", 407 | "apps", 408 | "{{client_id}}", 409 | "geofence", 410 | "5e6a466ffa8f3a0008f7f147", 411 | "" 412 | ], 413 | "query": [ 414 | { 415 | "key": "v", 416 | "value": "{{v}}" 417 | }, 418 | { 419 | "key": "oauth_token", 420 | "value": "{{oauth_token}}" 421 | } 422 | ] 423 | }, 424 | "description": "Get a geofence referenced by its geofenceId. A geofenceId is generated for all geofences and can be found in the Pilgrim Console." 425 | }, 426 | "response": [] 427 | }, 428 | { 429 | "name": "Get All Geofences", 430 | "request": { 431 | "auth": { 432 | "type": "oauth2", 433 | "oauth2": [ 434 | { 435 | "key": "addTokenTo", 436 | "value": "queryParams", 437 | "type": "string" 438 | } 439 | ] 440 | }, 441 | "method": "GET", 442 | "header": [], 443 | "url": { 444 | "raw": "https://api.foursquare.com/v2/apps/{{client_id}}/geofences?v={{v}}&oauth_token={{oauth_token}}", 445 | "protocol": "https", 446 | "host": [ 447 | "api", 448 | "foursquare", 449 | "com" 450 | ], 451 | "path": [ 452 | "v2", 453 | "apps", 454 | "{{client_id}}", 455 | "geofences" 456 | ], 457 | "query": [ 458 | { 459 | "key": "v", 460 | "value": "{{v}}" 461 | }, 462 | { 463 | "key": "oauth_token", 464 | "value": "{{oauth_token}}" 465 | } 466 | ] 467 | }, 468 | "description": "Gets all created geofences." 469 | }, 470 | "response": [] 471 | } 472 | ], 473 | "protocolProfileBehavior": {} 474 | } -------------------------------------------------------------------------------- /geofence_environment.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "f5d02cb6-5fc4-46ad-a074-b9fbcd46e835", 3 | "name": "Foursquare Geofence API", 4 | "values": [ 5 | { 6 | "key": "client_id", 7 | "value": "FSQ_CLIENT_ID", 8 | "enabled": true 9 | }, 10 | { 11 | "key": "client_secret", 12 | "value": "FSQ_CLIENT_SECRET", 13 | "enabled": true 14 | }, 15 | { 16 | "key": "v", 17 | "value": "20190425", 18 | "enabled": true 19 | }, 20 | { 21 | "key": "oauth_token", 22 | "value": "OAUTH_TOKEN", 23 | "enabled": true 24 | } 25 | ], 26 | "_postman_variable_scope": "environment", 27 | "_postman_exported_at": "2020-03-12T17:44:19.519Z", 28 | "_postman_exported_using": "Postman/7.20.0" 29 | } --------------------------------------------------------------------------------