Türkiye kamu alımlarının kamuya açık agrega göstergelerine — rekabet endeksi, tek teklif oranı, tenzilat, doğrudan temin hacmi, il ve sektör kırılımları — salt-okunur, JSON, programatik erişim. Akademik ve gazetecilik kullanımı için açık; atıfla serbestçe kullanılır.
Kimlik doğrulama, herkese açık apikey anahtarıyla yapılır (Supabase anon anahtarı — tasarımı gereği publiktir). Taban yol:
# Taban yol https://ihaleglobal.com/rest/v1/ # Örnek: yıl bazında genel rekabet endeksi (tek teklif oranı + tenzilat). # yil=gt.0 → yıl toplamı satırını (yil=0) atlar, 2019'dan bugüne tüm yılları verir. curl "https://ihaleglobal.com/rest/v1/veri_rekabet_endeksi?boyut=eq.genel&yil=gt.0&order=yil.asc" \ -H "apikey: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJyb2xlIjoiYW5vbiIsImlzcyI6InN1cGFiYXNlIiwiaWF0IjoxNzg0MzA3MTU4LCJleHAiOjE5NDE5ODcxNTh9.CjNKulvirotDD_y2oO2QKgo0kbqYvL0jUSV1RiDMoso"
Yanıt (kısaltılmış):
[
{ "boyut":"genel", "deger":"Tumu", "yil":2019, "ihale_sayisi":122297, "tek_teklif_pct":33.4, "tenzilat_ort":16.5, "kapsama_pct":100 },
{ "boyut":"genel", "deger":"Tumu", "yil":2024, "ihale_sayisi":143207, "tek_teklif_pct":36.4, "tenzilat_ort":15.0, "kapsama_pct":100 }
]
Python (pandas):
import pandas as pd, requests H = {"apikey": "<public-anon-key>"} url = "https://ihaleglobal.com/rest/v1/veri_rekabet_endeksi" df = pd.DataFrame(requests.get(url, headers=H, params={"boyut":"eq.sektor","yil":"eq.2024"}).json())
On iki salt-okunur uç nokta, iki katmanda. Katman 1 saf kategori agregasıdır (isim içermez). Katman 2, kamuya açık firma/kurum unvanlarıyla sıralı özet sunar.
Kolonlar: boyut (genel·il·sektor·usul·idare_tur), deger, yil, ihale_sayisi, tek_teklif_pct, tenzilat_ort, kapsama_pct
curl "https://ihaleglobal.com/rest/v1/veri_rekabet_endeksi?boyut=eq.sektor&yil=eq.2024&order=tek_teklif_pct.desc" -H "apikey: <key>"
Kolonlar: boyut (genel·il·sektor·idare_tur), deger, yil, islem_sayisi, medyan_bedel, ort_bedel
curl "https://ihaleglobal.com/rest/v1/veri_dt_endeksi?boyut=eq.sektor&yil=eq.2025&order=islem_sayisi.desc" -H "apikey: <key>"
Kolonlar: il, sektor, ihale_sayisi, toplam_bedel
curl "https://ihaleglobal.com/rest/v1/veri_il_sektor?il=eq.ANKARA&order=toplam_bedel.desc" -H "apikey: <key>"
Kolonlar: il, sektor, ihale_sayisi, toplam_bedel, yerli_bedel, disari_bedel, yerli_pct
curl "https://ihaleglobal.com/rest/v1/veri_il_yerlilik?il=eq.KONYA&order=yerli_pct.asc" -H "apikey: <key>"
Kolonlar: idare_il (alan kurumun ili), firma_il (yüklenicinin ili), sozlesme_sayisi, bedel
curl "https://ihaleglobal.com/rest/v1/veri_il_ticaret_akisi?idare_il=eq.VAN&order=bedel.desc" -H "apikey: <key>"
Kolonlar: il, kurum, sozlesme_sayisi, bedel, sira (1–10)
curl "https://ihaleglobal.com/rest/v1/veri_il_top_kurum?il=eq.İZMİR&order=sira.asc" -H "apikey: <key>"
Kolonlar: sektor, kurum, sozlesme_sayisi, bedel, sira
Kolonlar: il, kurum, alim_sayisi, bedel, sira
Kolonlar: il, firma, firma_il, sozlesme_sayisi, bedel, sira
curl "https://ihaleglobal.com/rest/v1/veri_il_top_firma?il=eq.BURSA&order=sira.asc" -H "apikey: <key>"
Kolonlar: sektor, firma, firma_il, sozlesme_sayisi, bedel, sira
Kolonlar: il (firmanın ili), firma, sozlesme_sayisi, ciro, sira
Kolonlar: il, firma, alim_sayisi, bedel, sira
Uç noktalar PostgREST üzerinde çalışır; standart filtre, sıralama ve sayfalama söz dizimi geçerlidir.
Hız sınırı: IP başına ~2 istek/sn (kısa taşmalara izin verilir), aşımda 429. Toplu/otomatik çekim için lütfen istekleri makul aralıklarla yollayın; daha yoğun araştırma ihtiyaçları için bize ulaşın.
Veri CC BY 4.0 altında sunulur: kopyalayabilir, dönüştürebilir, ticari dahil her amaçla kullanabilirsiniz — tek koşul atıf. Kaynak, EKAP'ın kamuya açık ihale ve doğrudan temin kayıtlarıdır; agregalar İhaleGlobal veri altyapısında üretilmiştir. Yöntem Araştırma Enstitüsü Yöntem bölümünde açıktır.
Kapsam sınırları: