TRRU API¶
TRRU is a personal Türkiye–Russia data service. One key-protected HTTPS API, plus a remote MCP server over the same data, covers macro series, FX and rates, bilateral trade, energy, tourism and border statistics, Russian companies, sanctions and export-control lists, an event calendar, stored documents and news headlines.
- Base URL:
https://trru.atapinar.com - REST:
GETendpoints under/v1, JSON only. - MCP:
POST https://trru.atapinar.com/mcp(streamable HTTP, stateless JSON). - Read-only. The API never writes data.
- Every number comes with its source and date: each response lists the sources it used, when each was last refreshed, and the newest data date in the response (Responses and sources).
The service is meant for server-to-server use (scripts, bulletins, internal tools, MCP clients such as Claude). It sends no CORS headers, so it cannot be called directly from a web page (FAQ).
What you can ask it¶
| Question | REST | MCP tool |
|---|---|---|
| What is the Bank of Russia key rate today, and what is USD/TRY? | GET /v1/latest?ids=ru.key_rate,tr.fx.usdtry |
latest |
| How did TRY/RUB move over the last year, month by month? | GET /v1/series/ru.fx.tryrub?start=2025-11-01&resample=month |
get_series |
| Who supplies Russia with HS 382440, at what prices, and is it restricted? | GET /v1/products/382440 |
product_check |
| Is this Russian company or person sanctioned (EU, OFAC, UK, UN, US CSL)? | GET /v1/sanctions/check?name=Sberbank |
check_sanctions |
| Who are the active Russian wholesalers in OKVED 46.75 in Moscow? | GET /v1/companies/search?okved_prefix=46.75®ion=77&only_active=true |
search_companies |
| How many Russian visitors entered Türkiye through Antalya airport per year? | GET /v1/border/arrivals?gate=Antalya&freq=Y&transport=hava |
border_arrivals |
| When is the next TCMB rate decision or OFAC general-license expiry? | GET /v1/calendar?days=30 |
upcoming |
| What do the latest headlines say about Türkiye–Russia trade? | GET /v1/news/latest?beat=tr_ru&hours=48 |
latest_news |
Series ids such as ru.key_rate are explained in Series ids and units. For what is loaded, since when, and how often it refreshes, see Coverage and freshness.
Three ways in¶
| Way in | URL | Auth | Use it for |
|---|---|---|---|
| REST API | https://trru.atapinar.com/v1/... |
Bearer key, scope data |
Scripts, bulletins, dashboards, anything that wants JSON |
| MCP server | https://trru.atapinar.com/mcp |
Same key | Claude Code, claude.ai connectors and other MCP clients that call tools instead of URLs |
| Health check | https://trru.atapinar.com/v1/health |
None | Uptime monitoring. Returns {"ok": true, "db": true}; HTTP 503 if the database is down. The database check is cached for 10 seconds. |
REST and MCP share the same keys, the same data and the same rate limit (Rate limits).
Where to start¶
| If you want to... | Read |
|---|---|
| Make your first call within five minutes | Quickstart |
| Understand keys, scopes, 401 and 403 | Authentication |
Understand the response envelope and meta.sources |
Responses and sources |
| Handle errors and retries | Errors, Rate limits |
| Know what data exists and how fresh it is | Coverage and freshness |
| Find the id of a series | Series ids and units |
| Look up an endpoint | REST reference, starting at Overview |
| Connect Claude or another MCP client | MCP, starting at What is MCP here |
| Copy a worked example | Guides |
| Decode an abbreviation (HS6, OKVED, TİM, EVDS ...) | Glossary |
| Troubleshoot | FAQ |
Note
Keys are issued by the operator of the service, not self-service. See Quickstart.