İçeriğe Geç

Mevzuat Kütüphanesi

GET /api/v1/library

Mevzuat Kütüphanesi

/documents uç noktasının etiketlenmiş versiyonudur. AI, boru hattında her regülasyonu kurum tipi (InstitutionType) ve konu (TopicType) etiketleriyle işaretler. Bu uç nokta bu etiketler ile filtreleme sunar.

Filtreleme

  • institutionType — kurum tipinin sayı değeri (1-22). Tam liste: Enum Referansı.
  • topic — konunun sayı değeri (1-25).
  • department — departmanın sayı değeri (1-24).
  • search — başlık, AI özeti/sınıflandırması ve yükümlülük metinleri üzerinde Postgres tam metin araması (Türkçe kök ve aksan duyarsız) + başlıkta ≥3 karakterlik alt dize yedeği. Eşleşen kayıtlarda matchedSnippet alanı <b> ile işaretli pasajı döner. Belgenin çıkarılmış ham metni bu indekse dâhil değildir; gövde metninde arama için /library/semantic kullanın. /documents?filter= ile de aynı değildir — orası kök/aksan farkındalığı, pasajı ve skoru olmayan düz bir LIKE filtresidir (yalnızca başlık + AI özeti).
  • sort — kabul edilen değerler: date_desc, date_asc, title_asc, title_desc, relevance. relevance yalnızca search ile birlikte anlamlıdır. Varsayılan: search varsa ilgi düzeyi, yoksa date_desc. Listede olmayan bir ifade (örn. publishedDate desc) hata vermez ama yok sayılır; aramasız gezinmede sonuçlar bu durumda yayım tarihine değil kayıt oluşturma tarihine göre sıralanır.
  • legalStatus — yürürlük süzgeci: all (tüm korpus, mülga dâhil) veya mulga (yalnızca mülga). Belirtilmezse mülga mevzuat yanıttan çıkarılır — hem sonuçlardan hem pagination.totalCount sayısından. "Değişmiş" (değiştirilmiş ama hâlâ yürürlükte) belgeler varsayılan sonuçlara dâhildir. Tanınmayan bir değer hata vermez, sessizce varsayılana döner; tam korpusu görmenin tek yolu ?legalStatus=all'dır.

Aynı kanunun nüshaları tek satırda toplanır

Bir kanunun farklı kaynaklardaki (örn. Mevzuat Bilgi Sistemi + kurum sitesi) kopyaları listede tek satırda gösterilir. Karttaki sourceCount alanı ailenin büyüklüğüdür (1 ise tek nüshalı belgedir), ailenin diğer üyelerine ise yalnızca GET /library/{id}/versions ile ulaşılır.

/documents ile fark

Uç nokta Etiket filtresi Yanıt alanları
/documents Yok Başlık, kaynak adı, format, URL
/library Var (kurum + konu) Başlık, kaynak id'si (ad değil — /library/sources ile eşleyin), format, URL, özet, etiketler, yükümlülük sayısı, eşleşme pasajı (matchedSnippet), nüsha sayısı (sourceCount), yürürlük etiketi (legalStatus)

Kütüphane uç noktası özellikle compliance panel entegrasyonu için tasarlanmıştır. Düz kronolojik listeleme için /documents daha hafiftir.

Parametreler

İsimKonumTipZorunluAçıklama
institutionType Query integer Hayır Kurum tipi — InstitutionType enum sayı değeri (1-22). Tam liste: Enum Referansı sayfası.
topic Query integer Hayır Konu — TopicType enum sayı değeri (1-25).
department Query integer Hayır Departman — DepartmentType enum sayı değeri (1-24).
search Query string Hayır Serbest metin araması.
source Query uuid Hayır Yayımlayan kaynağa göre filtre (bkz. /library/sources).
sort Query string Hayır Sıralama: 'date_desc' | 'date_asc' | 'title_asc' | 'title_desc' | 'relevance'. 'relevance' yalnızca 'search' ile anlamlıdır. Varsayılan: 'search' verildiğinde ilgi düzeyi, verilmediğinde 'date_desc'. Bu beş değerin dışındaki bir ifade hata vermez; aramalı istekte yayım tarihine, aramasız gezinmede kayıt oluşturma tarihine göre sıralanır.
legalStatus Query string Hayır Yürürlük süzgeci: 'all' (tüm korpus, mülga dâhil) veya 'mulga' (yalnızca mülga). Belirtilmezse yalnızca yürürlükteki mevzuat döner — 'Değişmiş' (değiştirilmiş ama yürürlükte) belgeler dâhildir, 'Mülga' hariçtir. Tanınmayan bir değer hata vermez, sessizce bu varsayılana düşer.
page Query integer Hayır Sayfa numarası.
pageSize Query integer Hayır 1-100; varsayılan 20.

Yanıtlar

200 — Etiketlenmiş regülasyonların sayfalı listesi. Her kayıt: id, sourceId (kaynak ADI değil), title, publishedDate, sourceUrl, documentFormat, summary, institutionTypes, departments, topics, obligationCount, matchedSnippet, sourceCount (aynı kanunun kaç kaynakta bulunduğu) ve legalStatus ('Yürürlükte' | 'Değişmiş' | 'Mülga'). Aynı kanunun farklı kaynaklardaki nüshaları tek satırda toplanır; diğer nüshalar için /library/{id}/versions.