Search locations by name or postcode
https://platform.casafari.com/v1/locations/searchSend Authorization: Bearer $CASAFARI_API_KEY: a platform API key (cf_sk_...) from the console, or an OAuth access token; X-API-Key carries the key too. See platform API keys. Free: 0 tokens.
Over MCP: locations_search, on every product's server.
Description
Free (uses no tokens). Search by name, by postcode, or both. Each result has a kind (country, region, province, city, district, neighbourhood, development or other), the same in every country, and level, its depth in the tree (the country is 1; depths differ between countries). Results come exact name or alias first, then cities before districts, regions and provinces, neighbourhoods and developments. Postcodes: Spain, France (partly) and Portugal (parts of Lisbon) only; other countries have none, and country with postcode for one answers 400. Pass country when you know it.
Query parameters
querystringpostcodestringcountry when you know it.postcode_matchstringexact prefixcountrystringlangstringen es pt fr de it plsizeintegerExample request
Placeholders only: replace the token and the values with your own.
curl "https://platform.casafari.com/v1/locations/search" \
-H "Authorization: Bearer $CASAFARI_API_KEY"Responses
200 Success.
Type: object.
Errors
Every error is an application/problem+json body (RFC 9457) with type (a page that explains it), title, status, detail (what to do), instance, code and request_id (what to quote to support). A 402 carries an upgrade_url, a 429 a Retry-After header. The codes each status can carry:
- 400
invalid_request,key_in_query,page_depth_exceeded(https://platform.casafari.com/errors/invalid-request, https://platform.casafari.com/errors/key-in-query, https://platform.casafari.com/errors/page-depth-exceeded) - 401
unauthorized,invalid_credential,credential_revoked,token_expired(https://platform.casafari.com/errors/unauthorized, https://platform.casafari.com/errors/invalid-credential, https://platform.casafari.com/errors/credential-revoked, https://platform.casafari.com/errors/token-expired) - 403
insufficient_scope,not_entitled,account_suspended(https://platform.casafari.com/errors/insufficient-scope, https://platform.casafari.com/errors/not-entitled, https://platform.casafari.com/errors/account-suspended) - 404
not_found(https://platform.casafari.com/errors/not-found) - 405
method_not_allowed(https://platform.casafari.com/errors/method-not-allowed) - 429
rate_limited,request_limit_reached(https://platform.casafari.com/errors/rate-limited, https://platform.casafari.com/errors/request-limit-reached) - 500
internal_error(https://platform.casafari.com/errors/internal-error) - 502
upstream_error(https://platform.casafari.com/errors/upstream-error) - 503
unavailable(https://platform.casafari.com/errors/unavailable) - 504
upstream_timeout(https://platform.casafari.com/errors/upstream-timeout)