sayistay.gov.tr APIsayistay.gov.tr ↗
Access Turkish Court of Accounts audit reports, General Assembly decisions, Appeals Board rulings, and homepage announcements via a structured REST API.
No input parameters required.
curl -X GET 'https://api.parse.bot/scraper/7edfaad5-73f2-4f3f-834d-b6162de144c0/get_report_categories' \ -H 'X-API-Key: $PARSE_API_KEY'
Returns all top-level audit report categories available on the Sayıştay reports page. Each category includes an id, slug, name, and URL.
No input parameters required.
{
"type": "object",
"fields": {
"categories": "array of category objects with id, slug, name, and url"
},
"sample": {
"data": {
"categories": [
{
"id": "16",
"url": "https://sayistay.gov.tr/reports/category/16-kamuoyu-duyurusu",
"name": "Kamuoyu Duyurusu",
"slug": "kamuoyu-duyurusu"
},
{
"id": "1",
"url": "https://sayistay.gov.tr/reports/category/1-genel-uygunluk-bildirimleri",
"name": "Genel Uygunluk Bildirimleri",
"slug": "genel-uygunluk-bildirimleri"
},
{
"id": "5",
"url": "https://sayistay.gov.tr/reports/category/5-kamu-idareleri-denetim-raporlari",
"name": "Kamu İdareleri Denetim Raporları",
"slug": "kamu-idareleri-denetim-raporlari"
}
]
},
"status": "success"
}
}About the sayistay.gov.tr API
This API exposes 9 endpoints covering the full content hierarchy of sayistay.gov.tr — Turkey's supreme audit institution. Starting with get_report_categories, you can traverse top-level and subcategory classifications, list paginated audit reports, retrieve per-report file download links and metadata, search across all categories by keyword, and pull full-text judicial decisions from both the General Assembly and the Appeals Board.
Audit Report Discovery and Detail
The get_report_categories endpoint returns all top-level categories, each with an id, slug, name, and url. Subcategories are a separate call via get_report_subcategories, which requires the parent slug and category_id — note that only certain parent categories (such as kamu-idareleri-denetim-raporlari) have children; others return an empty array. Once you have a target category or subcategory, list_reports accepts a page parameter for pagination and returns an array of report objects with title, year, url, and slug. Passing a report slug to get_report_detail yields the full picture: a files array of named download links, a title string, and a metadata object of key-value pairs such as audit year and institution name.
Search and Keyword Filtering
search_reports accepts a free-text query parameter (e.g. belediye for municipal reports) and returns matching records with title, url, and a description snippet. This is useful for cross-category lookups without knowing which category a report belongs to. The search operates across the full report catalog, not just a single category.
Judicial Decisions
Two decision endpoints cover Sayıştay's judicial output. list_general_assembly_decisions and list_appeals_board_decisions both support optional query, start, and length parameters for keyword filtering and cursor-style pagination. The General Assembly listing also returns a recordsTotal integer for sizing result sets. get_general_assembly_decision_detail takes a decision id (obtainable from decision text references) and returns the content string containing the full decision text, a url, and a metadata object.
Homepage Announcements
get_homepage_announcements requires no inputs and returns an announcements array of objects with title and url, reflecting current featured links and institutional notices from the Sayıştay homepage. This endpoint is suitable for monitoring new publications or institutional updates without parsing the full report catalog.
- Aggregating annual audit reports for specific Turkish public institutions by filtering with
list_reportsand a known subcategory ID - Building a full-text search index of Sayıştay audit reports using
search_reportswith various municipal or ministry keywords - Downloading audit report documents programmatically via the
filesarray returned byget_report_detail - Tracking new General Assembly decisions by polling
list_general_assembly_decisionswithstartandlengthpagination parameters - Retrieving the complete text of a specific Appeals Board or General Assembly ruling by decision ID for legal research
- Monitoring new institutional announcements and featured publications from the Sayıştay homepage via
get_homepage_announcements - Mapping the full category and subcategory tree of Turkish public audit report types using
get_report_categoriesandget_report_subcategories
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 250 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does Sayıştay provide an official public developer API?+
What does `get_report_detail` return beyond basic metadata?+
get_report_detail returns the report title, the page url, a metadata object of key-value pairs (such as institution name and audit year), and a files array where each entry has a name and a direct download url for the report document. It does not return the parsed body text of the PDF documents themselves.Does `get_report_subcategories` work for every parent category?+
kamu-idareleri-denetim-raporlari (category_id 5) — return results. Passing a leaf category returns an empty subcategories array. Use get_report_categories first to identify valid parent slugs before calling this endpoint.Does the API cover Appeals Board decision detail pages, similar to `get_general_assembly_decision_detail`?+
list_appeals_board_decisions for paginated listing and keyword filtering, but there is no dedicated endpoint for retrieving the full text and metadata of an individual Appeals Board decision by ID. You can fork this API on Parse and revise it to add that detail endpoint.