When using Foursquare API, if I pass up to 6 categories id’s in categoryId parameter, it works fine. But, if I pass 7 or more, Foursquare returns 500 internal server error, saying that their servers are down (see below). The fact is that the servers are up and the API docs don’t say anything about categories limit. The specific query I’m using is this:
https://api.foursquare.com/v2/venues/search?v=20120321&ll=-19.879190%2C-43.927068&limit=50&intent=checkin&radius=500&categoryId=4d4b7105d754a06374d81259%2C4d4b7104d754a06370d81259%2C4d4b7105d754a06377d81259%2C4d4b7105d754a06375d81259%2C4d4b7105d754a06378d81259%2C4d4b7105d754a06379d81259&client_id=[MY_CLIENT_ID]&client_secret=[MY_CLIENT_SECRET]
If I add categories like 4d4b7105d754a06372d81259 and 4d4b7105d754a06376d81259 (all valid categories), the server starts to return 500 Internal Server Error. Is this a bug, or am I missing something?
I don’t believe this is a URL size limit, since the entire URL with escaping is exactly 410 characters long when passing the 6 categories id’s.
The error response is as follow:
HTTP/1.1 500 Internal Server Error
Date: Tue, 21 Aug 2012 18:19:48 GMT
Content-Length: 183
Content-Type: application/json
Connection: close
Server: nginx/1.2.1
{
"meta": {
"code": 500,
"errorType": "server_error",
"errorDetail": "Foursquare servers are experiencing problems. Please retry and check status.foursquare.com for updates."
},
"response": {}
}
I think this has been fixed — I tried a search with just shy of 30 categories and it seemed to work. No server error and I got a good sampling of venues from most of the categories.