Tindreal API
For bots and developers
Tindreal has been built for machines from day one. Every listing has a stable address, clean data and an open interface.
REST API and OpenAPI live
JSON over HTTPS, pagination, filters and sorting. Codebooks are compatible with Sreality. Coordinates are deliberately blurred and rewards are never returned by the public API.
- OpenAPI 3.1 (JSON)
- JSON Feed and RSS of the latest changes
- Endpoint overview
llms.txt live
A short description of the site and the API for language models and crawlers. Every page also links to a machine-readable version (<link rel="alternate" type="application/json">) and contains schema.org data (JSON-LD).
- https://www.tindreal.com/llms.txt
- https://api.tindreal.cz/llms.txt (API description)
MCP server for AI assistants in development
The Model Context Protocol will let assistants (Claude, ChatGPT, Cursor and others) search listings and read their details directly through tools. The server will be available as a Streamable HTTP endpoint:
In development. The address does not respond yet and the configuration below is planned – it will start working once the server is launched. Until then, use the REST API. Planned tools: listing search, listing detail, codebooks.
Claude Code
command line
claude mcp add --transport http tindreal https://mcp.tindreal.cz/Claude (Desktop / web)
Settings → Connectors → Add custom connector
Name: Tindreal
Remote MCP server URL: https://mcp.tindreal.cz/ChatGPT
Settings → Connectors (developer mode) → Create
Name: Tindreal
MCP server URL: https://mcp.tindreal.cz/
Authentication: none (public data)Cursor
.cursor/mcp.json (or ~/.cursor/mcp.json)
{
"mcpServers": {
"tindreal": {
"url": "https://mcp.tindreal.cz/"
}
}
}Sreality-compatible import live
Real estate software vendors can use the same XML-RPC interface they are used to: POST https://api.tindreal.cz/import/sreality/RPC2. Sign-in, methods and codebooks follow the Sreality documentation; details are in the repository in docs/sreality-import.md. You create a key after signing in under Account → API keys.
Example calls
curl
curl "https://api.tindreal.cz/v1/listings?advert_function=1&advert_type=1&city=Praha&price_max=8000000&limit=10"
curl "https://api.tindreal.cz/v1/listings/100001"JavaScript
const res = await fetch('https://api.tindreal.cz/v1/listings?advert_function=1&city=Brno&limit=5', {
headers: { Accept: 'application/json' },
});
const { items, total } = await res.json();Writing (key with the listings:write permission)
curl -X POST https://api.tindreal.cz/v1/listings \
-H "X-API-Key: tr_live_..." -H "Content-Type: application/json" \
-d '{"advert_function":1,"advert_type":1,"advert_subtype":4, ...}'Rate limits
Limits apply per 60-second window, separately for the IP address and for the API key. Responses carry the RateLimit-Limit and RateLimit-Policy headers and, when the limit is exceeded, status 429 with Retry-After. The operator may change the exact values.
| Class | Endpoints | Per IP / min | Per key / min |
|---|---|---|---|
| Public reads | GET /v1/listings, /v1/codebooks, feeds | 120 | 600 |
| Writes | POST/PATCH/DELETE /v1/listings, webhooks | 120 | 60 |
| Import (XML-RPC) | POST /import/sreality/RPC2 | 60 | 60 |
| Account (signed in) | GET /v1/me/…, /v1/pro/… | 120 | 120 |
Terms of use
Informative translation – the Czech version is binding. Česky
- Public data is intended for searching and displaying listings, crediting the source (Tindreal) and linking to the listing page.
- Do not circumvent rate limits, do not store shared keys in public repositories and do not attempt to sharpen a deliberately blurred location.
- We do not publish sellers’ phone numbers or email addresses; contact takes place through a form.
- Rewards for introducing a buyer are not public: Tindreal takes no cut and is not a party to the agreement (For professionals).
- Trial operation (MVP): the interface may change; we announce changes in OpenAPI and in the feed.