Skip to content

Instantly share code, notes, and snippets.

@ubeydeozdmr
Last active July 10, 2024 14:38
Show Gist options
  • Save ubeydeozdmr/e94ea5a1929805988b803ecb682c623a to your computer and use it in GitHub Desktop.
Save ubeydeozdmr/e94ea5a1929805988b803ecb682c623a to your computer and use it in GitHub Desktop.
Türkiye API (il, ilçe, mahalle, köy verileri)

Türkiye API

Türkiye'nin illeri, ilçeleri, mahalleleri ve köyleri hakkında bilgiler içeren bir API.

Alan Adları

API, turkiyeapi.dev adresini ana alan adı olarak kullanır. Ancak aşağıdaki alan adlarını da kullanabilirsiniz:

Yenilikler

  • API'ye mahalleler ve köyler eklenmiştir. (Deneysel)
  • Nüfus verileri 2021'den 2023'e güncellenmiştir. (2023 verisi TÜİK tarafından 2024'ün başlarında açıklanmıştır)

Kaynaklar

API Kullanımı

İller

Tüm İlleri Al

Endpoint: GET /api/v1/provinces

Bu rotayı kullanarak tüm illerin verilerini alabilirsiniz. Kullanılabilir sorgu parametreleri şunlardır:

  • name (string): Arama sorgunuzla eşleşen veya içeren tüm illeri gösterir.
  • minPopulation (number): Belirttiğiniz değerden büyük veya buna eşit nüfusa sahip tüm illeri gösterir.
  • maxPopulation (number): Belirttiğiniz değerden küçük veya buna eşit nüfusa sahip tüm illeri gösterir.
  • isMetropolitan (boolean): Metropol olan veya olmayan tüm illeri gösterir.
  • offset (number): Sayfalama için kullanılır. Arama sonuçlarında başlangıç noktasını belirlemek için kullanılır.
  • limit (number): Sayfalama için kullanılır. Gösterilecek maksimum sonuç sayısını belirlemek için kullanılır.
  • fields (string): Yanıtta görmek istediğiniz alanları gösterir.
  • sort (string): Sonuçları artan veya azalan sırayla sıralar.

Belirli İli Al

Endpoint: GET /api/v1/provinces/:id

Belirli bir ilin verilerini almak için bu rotayı kullanabilirsiniz. Kullanılabilir path değişkenleri ve sorgu parametreleri şunlardır:

  • id (Path Değişkeni): İlin ID'si
  • fields (Sorgu Parametresi, string): Yanıtta görmek istediğiniz alanları gösterir.
  • extend (Sorgu Parametresi, boolean): İlin genişletilmiş verilerini (mahalleler ve köyler) gösterir. [Varsayılan: false] (Bu deneysel bir özelliktir. Düzgün çalışmayabilir.)

İlçeler

Tüm İlçeleri Al

Endpoint: GET /api/v1/districts

Bu rotayı kullanarak tüm ilçelerin verilerini alabilirsiniz. Kullanılabilir sorgu parametreleri şunlardır:

  • name (string): Arama sorgunuzla eşleşen veya içeren tüm ilçeleri gösterir.
  • minPopulation (number): Belirttiğiniz değerden büyük veya buna eşit nüfusa sahip tüm ilçeleri gösterir.
  • maxPopulation (number): Belirttiğiniz değerden küçük veya buna eşit nüfusa sahip tüm ilçeleri gösterir.
  • offset (number): Sayfalama için kullanılır. Arama sonuçlarında başlangıç noktasını belirlemek için kullanılır.
  • limit (number): Sayfalama için kullanılır. Gösterilecek maksimum sonuç sayısını belirlemek için kullanılır.
  • fields (string): Yanıtta görmek istediğiniz alanları gösterir.
  • sort (string): Sonuçları artan veya azalan sırayla sıralar.

Belirli İlçeyi Al

Endpoint: GET /api/v1/districts/:id

Belirli bir ilçenin verilerini almak için bu rotayı kullanabilirsiniz. Kullanılabilir path değişkenleri ve sorgu parametreleri şunlardır:

  • id (Path Değişkeni): İlçenin ID'si
  • fields (Sorgu Parametresi, string): Yanıtta görmek istediğiniz alanları gösterir.

Mahalleler

Tüm Mahalleleri Al

Endpoint: GET /api/v1/neighborhoods

Bu rotayı kullanarak tüm mahallelerin verilerini alabilirsiniz. Bu, son zamanlarda eklenen bir endpoint'tir ve deneyseldir. Düzgün çalışmayabilir. Kullanılabilir sorgu parametreleri şunlardır:

  • name (string): Arama sorgunuzla eşleşen veya içeren tüm mahalleleri gösterir.
  • minPopulation (number): Belirttiğiniz değerden büyük veya buna eşit nüfusa sahip tüm mahalleleri gösterir.
  • maxPopulation (number): Belirttiğiniz değerden küçük veya buna eşit nüfusa sahip tüm mahalleleri gösterir.
  • offset (number): Sayfalama için kullanılır. Arama sonuçlarında başlangıç noktasını belirlemek için kullanılır.
  • limit (number): Sayfalama için kullanılır. Gösterilecek maksimum sonuç sayısını belirlemek için kullanılır.
  • fields (string): Yanıtta görmek istediğiniz alanları gösterir.
  • sort (string): Sonuçları artan veya azalan sırayla sıralar.

Belirli Mahalleyi Al

Endpoint:

GET /api/v1/neighborhoods/:id

Belirli bir mahallenin verilerini almak için bu rotayı kullanabilirsiniz. Bu, son zamanlarda eklenen bir endpoint'tir ve deneyseldir. Düzgün çalışmayabilir. Kullanılabilir path değişkenleri ve sorgu parametreleri şunlardır:

  • id (Path Değişkeni): Mahallenin ID'si
  • fields (Sorgu Parametresi, string): Yanıtta görmek istediğiniz alanları gösterir.

Köyler

Tüm Köyleri Al

Endpoint: GET /api/v1/villages

Bu rotayı kullanarak tüm köylerin verilerini alabilirsiniz. Bu, son zamanlarda eklenen bir endpoint'tir ve deneyseldir. Düzgün çalışmayabilir. Kullanılabilir sorgu parametreleri şunlardır:

  • name (string): Arama sorgunuzla eşleşen veya içeren tüm köyleri gösterir.
  • minPopulation (number): Belirttiğiniz değerden büyük veya buna eşit nüfusa sahip tüm köyleri gösterir.
  • maxPopulation (number): Belirttiğiniz değerden küçük veya buna eşit nüfusa sahip tüm köyleri gösterir.
  • offset (number): Sayfalama için kullanılır. Arama sonuçlarında başlangıç noktasını belirlemek için kullanılır.
  • limit (number): Sayfalama için kullanılır. Gösterilecek maksimum sonuç sayısını belirlemek için kullanılır.
  • fields (string): Yanıtta görmek istediğiniz alanları gösterir.
  • sort (string): Sonuçları artan veya azalan sırayla sıralar.

Belirli Köyü Al

Endpoint: GET /api/v1/villages/:id

Belirli bir köyün verilerini almak için bu rotayı kullanabilirsiniz. Bu, son zamanlarda eklenen bir endpoint'tir ve deneyseldir. Düzgün çalışmayabilir. Kullanılabilir path değişkenleri ve sorgu parametreleri şunlardır:

  • id (Path Değişkeni): Köyün ID'si
  • fields (Sorgu Parametresi, string): Yanıtta görmek istediğiniz alanları gösterir.

Lisans

MIT

Katkıda Bulunma

API için özellik ekleme ve bug (hata) düzeltmesi için issue açabilirsiniz.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment