API documentation
Reach the portal's datasets straight over HTTP, without downloading a file. No authentication is required; every endpoint offers public read access.
Base address
https://bvakp-od-portal.buyukverianalitigi.com/api/3/action/
Every response is UTF-8 JSON and uses the same envelope:
{
"success": true,
"result": { ... }
}
On failure "success" is false and an "error" object is returned. The HTTP status code may differ from 200.
Querying data - datastore_search
Used to query the rows of a dataset. Only resources loaded into the DataStore can be queried; the datasets reachable through the API are listed below.
GET https://bvakp-od-portal.buyukverianalitigi.com/api/3/action/datastore_search?resource_id=<kaynak-id>
Parameters
| Parameter | Description |
|---|---|
resource_id | Required. Id of the resource to query. |
limit | Number of rows to return (default 100). |
offset | Number of rows to skip. Together with limit it provides pagination. |
sort | Ordering: field name and direction, e.g. yil desc. Several fields can be given, comma separated. |
filters | Per-field equality filter; a JSON object, e.g. {"yil":"2025"}. |
q | Full-text search. Either a single string or a per-field JSON object. |
fields | Returns only the listed fields (comma separated). |
distinct | When true, duplicate rows are collapsed into one. |
SQL querying (datastore_search_sql) is disabled on this deployment; filter and sort with the parameters above.
Working examples
The examples below run against the real resource of this dataset: otomasyon_onay_veri_seti_20260929_201051_274 (49 rows).
curl
curl -s "https://bvakp-od-portal.buyukverianalitigi.com/api/3/action/datastore_search?resource_id=b810f8d5-a1b1-4c46-bde6-4c0c30f81790&limit=5"
Ordering and pagination
curl -s "https://bvakp-od-portal.buyukverianalitigi.com/api/3/action/datastore_search?resource_id=b810f8d5-a1b1-4c46-bde6-4c0c30f81790&sort=yil%20desc&limit=10&offset=10"
Filtering
curl -s -G "https://bvakp-od-portal.buyukverianalitigi.com/api/3/action/datastore_search" \
--data-urlencode "resource_id=b810f8d5-a1b1-4c46-bde6-4c0c30f81790" \
--data-urlencode 'filters={"yil": "2019"}'
Full-text search
curl -s -G "https://bvakp-od-portal.buyukverianalitigi.com/api/3/action/datastore_search" \
--data-urlencode "resource_id=b810f8d5-a1b1-4c46-bde6-4c0c30f81790" \
--data-urlencode "q=2019"
Python
import requests
response = requests.get(
"https://bvakp-od-portal.buyukverianalitigi.com/api/3/action/datastore_search",
params={"resource_id": "b810f8d5-a1b1-4c46-bde6-4c0c30f81790", "limit": 5},
timeout=30,
)
payload = response.json()
for record in payload["result"]["records"]:
print(record)
JavaScript
const url = new URL("https://bvakp-od-portal.buyukverianalitigi.com/api/3/action/datastore_search");
url.searchParams.set("resource_id", "b810f8d5-a1b1-4c46-bde6-4c0c30f81790");
url.searchParams.set("limit", "5");
const response = await fetch(url);
const { result } = await response.json();
console.table(result.records);
Response schema
result.total | Total number of rows matching the query (independent of limit). |
|---|---|
result.records | The rows; each one a field name to value object. |
result.fields | Field definitions (id and type). _id is the DataStore's automatic row key. |
result._links.next | Ready-made address of the next page. |
Fields of the example dataset
| fields | TYPE |
|---|---|
| yil | text |
| bolge_kodu | text |
| bolge_adi | text |
| fabrika_sayisi | text |
| bakim_atolyesi_sayisi | text |
| depo_sayisi | text |
| toplam_is_yeri_sayisi | text |
| personel_sayisi | text |
| kapali_alan_m2 | text |
| yillik_bakim_kapasitesi_arac | text |
| guncelleme_tarihi | text |
Downloading all the data
To take a whole resource without paging, use the dump endpoints:
GET https://bvakp-od-portal.buyukverianalitigi.com/datastore/dump/<kaynak-id>?format=csv
GET https://bvakp-od-portal.buyukverianalitigi.com/datastore/dump/<kaynak-id>?format=json
GET https://bvakp-od-portal.buyukverianalitigi.com/datastore/dump/<kaynak-id>?format=xml
GET https://bvakp-od-portal.buyukverianalitigi.com/datastore/dump-xlsx/<kaynak-id>
The XLSX endpoint is specific to this portal; the other three are the DataStore's standard output.
Usage limits
| Authentication | Not needed. No API key or membership is required. |
|---|---|
| Permitted operations | Read only. Creating, updating and deleting data is closed from outside the portal. |
| Request limit | 60 requests per minute on the query endpoints and 6 per minute on the bulk download endpoints, per IP. There is no daily quota; the limit exists to protect system resources. |
| When the limit is exceeded | The request is answered with HTTP 429; the response's Retry-After header says how many seconds to wait. |
| Records per request | Without a limit parameter the default number of records is returned; the number of records one request can take is capped by the system. For more, page with offset or use the bulk download endpoint. |
Querying the catalogue
To search the datasets themselves (their metadata):
GET https://bvakp-od-portal.buyukverianalitigi.com/api/3/action/package_search?q=istasyon&rows=10
GET https://bvakp-od-portal.buyukverianalitigi.com/api/3/action/package_show?id=<veri-seti-adı>
GET https://bvakp-od-portal.buyukverianalitigi.com/api/3/action/group_list?all_fields=true
package_search supports every filter in the interface; by category, for instance:
GET https://bvakp-od-portal.buyukverianalitigi.com/api/3/action/package_search?fq=groups:ulasim
Datasets reachable through the API
The resources below are loaded into the DataStore and can be queried with datastore_search.
| datasets | Resource | resource_id |
|---|---|---|
| otomasyon_onay_veri_seti_20260929_201051_274 | otomasyon_onay_veri_seti_20260929_201051_274 | b810f8d5-a1b1-4c46-bde6-4c0c30f81790 |
| otomasyon_onay_veri_seti_20260929_200502_141 | otomasyon_onay_veri_seti_20260929_200502_141 | 6f975ac3-bc84-4dfe-8a8d-82fd6cd362f0 |
| otomasyon_onay_veri_seti_20260929_200000_145 | otomasyon_onay_veri_seti_20260929_200000_145 | aed7a51a-c46a-403c-ba25-7fb8660061cf |
| otomasyon_onay_veri_seti_20260929_193257_352 | otomasyon_onay_veri_seti_20260929_193257_352 | 4e68115d-7259-4cbb-8bf0-bc61c77f95fb |
| otomasyon_onay_veri_seti_20260929_192804_044 | otomasyon_onay_veri_seti_20260929_192804_044 | cae5eb06-bb32-4450-997c-3c55dd74447e |
| otomasyon_kvkk_20260929_192213_241 | otomasyon_kvkk_20260929_192213_241 | cc1c34b3-814a-4301-80f4-da497db9f8bd |
| otomasyon_kvkk_20260929_191633_325 | otomasyon_kvkk_20260929_191633_325 | 5291c83f-ab71-4ab3-b826-0cc9f1d87e83 |
| otomasyon_yayin_ret_20260928_182416_058 | otomasyon_yayin_ret_20260928_182416_058 | d7551a71-ea88-4765-8c6d-06d47ad43a3d |
| otomasyon_yayin_ret_20260928_155509_392 | otomasyon_yayin_ret_20260928_155509_392 | 2de88bd8-4c44-4df4-af9c-07ccbee38f84 |
| nation-v6 | nation-v6 | 9ab2faa3-da24-4287-8f3f-28230c5bba0c |
| nation-dataset-v5 | nation-dataset-v5 | 2c1967a1-3319-45cc-8378-55497a5675cf |
| supplier-dataset | supplier-dataset | 16bff770-a0fa-487c-9938-56440a87b89b |
| nation-dataset-v1 | nation-dataset-v1 | 0108cdfa-b0a3-4d06-9152-e9b30eff0b3b |
| nation-dataset-v2 | nation-dataset-v2 | a0f2cb26-b518-4cfb-95fd-def2264cde53 |
| test veri seti 15 eylul | test veri seti 15 eylul | 39665ddc-860e-4a3b-b381-7034f08619a1 |
| Veri Seti Test 1 | Veri Seti Test 1 | 90c8b6a1-d26f-45ab-bce4-43aea133d6e2 |
| nation-v4 | nation-v4 | 0b9e4857-0192-456d-bc84-c0e08c9411f8 |
| test 17 Eylul | test 17 Eylul | fcb6cbe0-0e6a-412e-8816-57ffefbfb63b |
| test portal fix | test portal fix | 02a70cce-0228-47e1-944b-d1cb53950f0a |
| nation-v3 | nation-v3 | f3cf46a5-d8ee-40c8-9d37-96ecd30a91ef |