Raw schema
{
"type": "object",
"properties": {
"locale": {
"default": "en",
"description": "Language for names and descriptions. Set from the user's language: 'de' for German, 'es' for Spanish, otherwise 'en'.",
"type": "string",
"enum": [
"en",
"de",
"es"
]
},
"city": {
"description": "City slug, e.g. 'berlin'. Lowercase, hyphenated, never a display name.",
"type": "string"
},
"zone": {
"description": "Zone (district) slug, e.g. 'mitte'. Must be a zone of the given city.",
"type": "string"
},
"country": {
"description": "Country slug, e.g. 'germany'.",
"type": "string"
},
"operator": {
"description": "Operator or brand slug, from resolve_coworking_query.",
"type": "string"
},
"workspaceType": {
"description": "Type of workspace, e.g. 'private_office', 'flex_desk', 'meeting_room'. From get_coworking_filter_options.",
"type": "string"
},
"amenities": {
"description": "Amenity slugs that must all be present, e.g. ['ac_heating','parking']. Underscores, not hyphens. From get_coworking_filter_options.",
"maxItems": 20,
"type": "array",
"items": {
"type": "string"
}
},
"minCapacity": {
"description": "Minimum number of people the space must fit.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"maxPrice": {
"description": "Upper bound on the \"from\" price. Give `currency` too when it is not euros.",
"type": "number",
"exclusiveMinimum": 0
},
"currency": {
"description": "Currency of maxPrice. Note the price filter works in approximate euros, so a non-euro bound is converted and approximate.",
"type": "string",
"enum": [
"EUR",
"GBP",
"USD",
"CHF",
"AED"
]
},
"latitude": {
"description": "User's latitude, for proximity ordering.",
"type": "number",
"minimum": -90,
"maximum": 90
},
"longitude": {
"description": "User's longitude, for proximity ordering.",
"type": "number",
"minimum": -180,
"maximum": 180
},
"radiusKm": {
"description": "Only spaces within this many kilometres of the given coordinates.",
"type": "number",
"exclusiveMinimum": 0,
"maximum": 200
},
"bbox": {
"description": "Search within a map viewport instead of a radius — the WGS84 bounding box the user is currently looking at (\"search this area\"). Use this or latitude/longitude+radiusKm, not both.",
"type": "object",
"properties": {
"west": {
"type": "number",
"minimum": -180,
"maximum": 180
},
"south": {
"type": "number",
"minimum": -90,
"maximum": 90
},
"east": {
"type": "number",
"minimum": -180,
"maximum": 180
},
"north": {
"type": "number",
"minimum": -90,
"maximum": 90
}
},
"required": [
"west",
"south",
"east",
"north"
]
},
"sort": {
"default": "price_low_to_high",
"description": "Result order. 'price_low_to_high' (default) is cheapest first. 'distance' requires latitude and longitude and orders by proximity. Results are always deterministic: the same query returns the same order.",
"type": "string",
"enum": [
"price_low_to_high",
"newest",
"distance"
]
},
"cursor": {
"description": "Pass back the `nextCursor` from a previous result to get the next page. Never construct one.",
"type": "string"
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}