{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/foursquare/refs/heads/main/json-schema/foursquare-place.json",
  "title": "FoursquarePlace",
  "description": "A point of interest returned by the Foursquare Places API.",
  "type": "object",
  "required": ["fsq_place_id", "name"],
  "properties": {
    "fsq_place_id": { "type": "string", "description": "Stable Foursquare place identifier." },
    "name": { "type": "string" },
    "latitude": { "type": "number" },
    "longitude": { "type": "number" },
    "location": {
      "type": "object",
      "properties": {
        "address": { "type": "string" },
        "locality": { "type": "string" },
        "region": { "type": "string" },
        "postcode": { "type": "string" },
        "admin_region": { "type": "string" },
        "post_town": { "type": "string" },
        "po_box": { "type": "string" },
        "country": { "type": "string" },
        "formatted_address": { "type": "string" }
      }
    },
    "categories": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "fsq_category_id": { "type": "string" },
          "name": { "type": "string" },
          "short_name": { "type": "string" },
          "plural_name": { "type": "string" }
        }
      }
    },
    "chains": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "fsq_chain_id": { "type": "string" },
          "name": { "type": "string" }
        }
      }
    },
    "distance": { "type": "integer" },
    "rating": { "type": "number" },
    "price": { "type": "integer", "minimum": 1, "maximum": 4 },
    "popularity": { "type": "number" },
    "verified": { "type": "boolean" },
    "tel": { "type": "string" },
    "email": { "type": "string" },
    "website": { "type": "string" },
    "tastes": { "type": "array", "items": { "type": "string" } },
    "stats": {
      "type": "object",
      "properties": {
        "total_photos": { "type": "integer" },
        "total_ratings": { "type": "integer" },
        "total_tips": { "type": "integer" }
      }
    }
  }
}
