{"templateId":"markdown","sharedDataIds":{"sidebar":"sidebar-@l10n/tr-TR/sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":[]},"type":"markdown"},"seo":{"title":"Konum İşlemleri"},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":1,"id":"konum-i̇şlemleri","__idx":0},"children":["Konum İşlemleri"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Konum endpoint'leri, araç kiralama işlemleri için kapsamlı konum arama ve coğrafi kodlama hizmetleri sağlar. Bu"," ","endpoint'ler, kullanıcıların otomatik tamamlama işleviyle alış ve teslim konumlarını bulmalarını ve detaylı konum"," ","bilgilerini almalarını sağlar."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"konum-arama","__idx":1},"children":["Konum Arama"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Metin sorguları kullanarak araç kiralama konumlarını arayın. Bu endpoint otomatik tamamlama işlevi sağlar ve arama"," ","sorgusuna uyan konum tahminlerini döndürerek geliştirilmiş kullanıcı deneyimi sunar."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"endpoint","__idx":2},"children":["Endpoint"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"header":{"controls":{"copy":{}}},"source":"GET /locations?query={query}\n"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"kimlik-doğrulama","__idx":3},"children":["Kimlik Doğrulama"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Bu endpoint kimlik doğrulama gerektirir. Authorization başlığında JWT erişim jetonunuzu ekleyin:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"header":{"controls":{"copy":{}}},"source":"Authorization: Bearer ERIŞIM_JETONUNUZ\n"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"sorgu-parametreleri","__idx":4},"children":["Sorgu Parametreleri"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Parametre"},"children":["Parametre"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Tür"},"children":["Tür"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Gerekli"},"children":["Gerekli"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Açıklama"},"children":["Açıklama"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["query"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["string"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Evet"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Arama sorgu metni (minimum 2 karakter)"]}]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"örnek-i̇stek","__idx":5},"children":["Örnek İstek"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"curl -X GET \"https://api.pro.yolcu360.com/api/v1/locations?query=istanbul\" \\\n  -H \"Authorization: Bearer ERIŞIM_JETONUNUZ\"\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"yanıt","__idx":6},"children":["Yanıt"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Başarılı Yanıt (200 OK):"]}]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"[\n  {\n    \"placeId\": \"ChIJOwg_06VPwokRYv534QaPC8g\",\n    \"description\": \"İstanbul, Türkiye\",\n    \"mainText\": \"İstanbul\",\n    \"secondaryText\": \"Türkiye\",\n    \"types\": [\n      \"locality\",\n      \"political\"\n    ]\n  },\n  {\n    \"placeId\": \"ChIJB3uraJq9yhQRvHRAVQ6KFT4\",\n    \"description\": \"İstanbul Havalimanı (IST), Tayakadın, Arnavutköy/İstanbul, Türkiye\",\n    \"mainText\": \"İstanbul Havalimanı (IST)\",\n    \"secondaryText\": \"Tayakadın, Arnavutköy/İstanbul, Türkiye\",\n    \"types\": [\n      \"airport\",\n      \"establishment\",\n      \"point_of_interest\"\n    ]\n  },\n  {\n    \"placeId\": \"ChIJ8dYSQGq8yhQRy_TlKn0Qmgg\",\n    \"description\": \"Sabiha Gökçen Uluslararası Havalimanı (SAW), Pendik/İstanbul, Türkiye\",\n    \"mainText\": \"Sabiha Gökçen Uluslararası Havalimanı (SAW)\",\n    \"secondaryText\": \"Pendik/İstanbul, Türkiye\",\n    \"types\": [\n      \"airport\",\n      \"establishment\",\n      \"point_of_interest\"\n    ]\n  },\n  {\n    \"placeId\": \"ChIJh8tEqiq9yhQR4Es7hO_KWw8\",\n    \"description\": \"İstanbul Atatürk Havalimanı (ISL), Yeşilköy, Bakırköy/İstanbul, Türkiye\",\n    \"mainText\": \"İstanbul Atatürk Havalimanı (ISL)\",\n    \"secondaryText\": \"Yeşilköy, Bakırköy/İstanbul, Türkiye\",\n    \"types\": [\n      \"airport\",\n      \"establishment\",\n      \"point_of_interest\"\n    ]\n  },\n  {\n    \"placeId\": \"ChIJu46S-ZNjyhQROG9z8KiBUUs\",\n    \"description\": \"Sultanahmet, Fatih/İstanbul, Türkiye\",\n    \"mainText\": \"Sultanahmet\",\n    \"secondaryText\": \"Fatih/İstanbul, Türkiye\",\n    \"types\": [\n      \"neighborhood\",\n      \"political\"\n    ]\n  }\n]\n","lang":"json"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"yanıt-alanları","__idx":7},"children":["Yanıt Alanları"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Alan"},"children":["Alan"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Tür"},"children":["Tür"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Açıklama"},"children":["Açıklama"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["placeId"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["string"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Konum için benzersiz tanımlayıcı"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["description"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["string"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Konumun tam açıklaması"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["mainText"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["string"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Birincil konum metni (genellikle ad)"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["secondaryText"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["string"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["İkincil açıklayıcı metin (genellikle adres)"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["types"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["array"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Konum türleri (ör. havalimanı, şehir, mahalle)"]}]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"konum-türleri","__idx":8},"children":["Konum Türleri"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Tür"},"children":["Tür"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Açıklama"},"children":["Açıklama"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["airport"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Havalimanı konumları"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["locality"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Şehir veya kasabalar"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["neighborhood"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["İlçe veya mahalleler"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["establishment"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["İş yerleri"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["point_of_interest"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Önemli yerler veya ilgi çekici noktalar"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["political"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["İdari sınırlar"]}]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"konum-detaylarını-al","__idx":9},"children":["Konum Detaylarını Al"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Yer kimliğini kullanarak belirli bir konum hakkında detaylı bilgi alın. Bu endpoint koordinatlar, saat dilimi ve idari"," ","bilgiler dahil olmak üzere kapsamlı konum verileri sağlar."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"endpoint-1","__idx":10},"children":["Endpoint"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"header":{"controls":{"copy":{}}},"source":"GET /locations/{placeId}\n"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"kimlik-doğrulama-1","__idx":11},"children":["Kimlik Doğrulama"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Bu endpoint kimlik doğrulama gerektirir. Authorization başlığında JWT erişim jetonunuzu ekleyin."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"yol-parametreleri","__idx":12},"children":["Yol Parametreleri"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Parametre"},"children":["Parametre"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Tür"},"children":["Tür"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Gerekli"},"children":["Gerekli"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Açıklama"},"children":["Açıklama"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["placeId"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["string"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Evet"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Konum aramasından benzersiz yer tanımlayıcısı"]}]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"örnek-i̇stek-1","__idx":13},"children":["Örnek İstek"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"curl -X GET https://api.pro.yolcu360.com/api/v1/locations/ChIJOwg_06VPwokRYv534QaPC8g \\\n  -H \"Authorization: Bearer ERIŞIM_JETONUNUZ\"\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"yanıt-1","__idx":14},"children":["Yanıt"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Başarılı Yanıt (200 OK):"]}]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"{\n  \"placeId\": \"ChIJOwg_06VPwokRYv534QaPC8g\",\n  \"name\": \"İstanbul\",\n  \"city\": \"İstanbul\",\n  \"countryCode\": \"TR\",\n  \"timezone\": \"Europe/Istanbul\",\n  \"point\": {\n    \"lat\": 41.0082,\n    \"lon\": 28.9784\n  }\n}\n","lang":"json"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"yanıt-alanları-1","__idx":15},"children":["Yanıt Alanları"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Alan"},"children":["Alan"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Tür"},"children":["Tür"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Açıklama"},"children":["Açıklama"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["placeId"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["string"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Benzersiz yer tanımlayıcısı"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["name"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["string"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Konum adı"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["city"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["string"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Şehir adı"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["countryCode"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["string"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["ISO ülke kodu (2 karakter)"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["timezone"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["string"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["IANA saat dilimi tanımlayıcısı"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["point"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["object"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Coğrafi koordinatlar"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["point.lat"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["number"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Enlem koordinatı"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["point.lon"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["number"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Boylam koordinatı"]}]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"konum-arama-en-i̇yi-uygulamaları","__idx":16},"children":["Konum Arama En İyi Uygulamaları"]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"sorgu-optimizasyonu","__idx":17},"children":["Sorgu Optimizasyonu"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Minimum Uzunluk"]},": Sorgular en az 2 karakter uzunluğunda olmalı"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Dil Desteği"]},": Servis Türkçe ve İngilizce dahil birden fazla dili destekler"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Bulanık Eşleştirme"]},": Arama, daha iyi kullanıcı deneyimi için kısmi ve bulanık eşleştirmeyi destekler"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Özel Karakterler"]},": Özel karakterleri ve aksan işaretlerini uygun şekilde işleyin"]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"otomatik-tamamlama-uygulaması","__idx":18},"children":["Otomatik Tamamlama Uygulaması"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Debouncing"]},": Yazma sırasında aşırı API çağrılarını önlemek için debouncing uygulayın"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Önbelleğe Alma"]},": Performansı artırmak için son arama sonuçlarını önbelleğe alın"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Aşamalı Geliştirme"]},": Kullanıcı yazarken aşamalı iyileştirme ile sonuçları gösterin"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Klavye Navigasyonu"]},": Erişilebilirlik için klavye navigasyonunu destekleyin"]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"konum-seçimi","__idx":19},"children":["Konum Seçimi"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Yer Kimliği Kullanımı"]},": Konum tanımlama için her zaman yer kimliklerini kullanın, koordinatları değil"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Doğrulama"]},": Araç aramasına geçmeden önce seçilen konumları doğrulayın"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Yedek Seçenekler"]},": Araç kiralamasını desteklemeyen konumlar için yedek seçenekler sağlayın"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Favoriler"]},": Sık kullanıcılar için konum favorileri uygulamayı düşünün"]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"entegrasyon-örnekleri","__idx":20},"children":["Entegrasyon Örnekleri"]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"otomatik-tamamlama-uygulaması-1","__idx":21},"children":["Otomatik Tamamlama Uygulaması"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"javascript","header":{"controls":{"copy":{}}},"source":"class LocationAutocomplete {\n    constructor(inputElement, apiToken) {\n        this.input = inputElement;\n        this.token = apiToken;\n        this.debounceTimer = null;\n        this.cache = new Map();\n\n        this.setupEventListeners();\n    }\n\n    setupEventListeners() {\n        this.input.addEventListener('input', (e) => {\n            this.handleInput(e.target.value);\n        });\n    }\n\n    handleInput(query) {\n        // Önceki zamanlayıcıyı temizle\n        clearTimeout(this.debounceTimer);\n\n        // Minimum uzunluğu doğrula\n        if (query.length < 2) {\n            this.clearResults();\n            return;\n        }\n\n        // Aramayı debounce et\n        this.debounceTimer = setTimeout(() => {\n            this.searchLocations(query);\n        }, 300);\n    }\n\n    async searchLocations(query) {\n        // Önce önbelleği kontrol et\n        if (this.cache.has(query)) {\n            this.displayResults(this.cache.get(query));\n            return;\n        }\n\n        try {\n            const response = await fetch(\n                `/api/v1/locations?query=${encodeURIComponent(query)}`,\n                {\n                    headers: {\n                        'Authorization': `Bearer ${this.token}`\n                    }\n                }\n            );\n\n            if (!response.ok) {\n                throw new Error('Arama başarısız');\n            }\n\n            const locations = await response.json();\n\n            // Sonuçları önbelleğe al\n            this.cache.set(query, locations);\n\n            // Sonuçları göster\n            this.displayResults(locations);\n\n        } catch (error) {\n            console.error('Konum arama hatası:', error);\n            this.showError('Konum arama başarısız');\n        }\n    }\n\n    displayResults(locations) {\n        // Arama sonuçlarını göstermek için uygulama\n        const resultsContainer = document.getElementById('location-results');\n        resultsContainer.innerHTML = '';\n\n        locations.forEach(location => {\n            const item = document.createElement('div');\n            item.className = 'location-item';\n            item.innerHTML = `\n        <div class=\"main-text\">${location.mainText}</div>\n        <div class=\"secondary-text\">${location.secondaryText}</div>\n      `;\n\n            item.addEventListener('click', () => {\n                this.selectLocation(location);\n            });\n\n            resultsContainer.appendChild(item);\n        });\n    }\n\n    async selectLocation(location) {\n        try {\n            // Detaylı konum bilgilerini al\n            const response = await fetch(\n                `/api/v1/locations/${location.placeId}`,\n                {\n                    headers: {\n                        'Authorization': `Bearer ${this.token}`\n                    }\n                }\n            );\n\n            if (!response.ok) {\n                throw new Error('Konum detayları alınamadı');\n            }\n\n            const locationDetails = await response.json();\n\n            // Input'u güncelle ve seçim event'i tetikle\n            this.input.value = location.description;\n            this.input.dispatchEvent(new CustomEvent('locationSelected', {\n                detail: locationDetails\n            }));\n\n            this.clearResults();\n\n        } catch (error) {\n            console.error('Konum seçimi hatası:', error);\n            this.showError('Konum seçimi başarısız');\n        }\n    }\n\n    clearResults() {\n        const resultsContainer = document.getElementById('location-results');\n        if (resultsContainer) {\n            resultsContainer.innerHTML = '';\n        }\n    }\n\n    showError(message) {\n        // Hata mesajlarını göstermek için uygulama\n        console.error(message);\n    }\n}\n\n// Kullanım\nconst pickupInput = document.getElementById('pickup-location');\nconst autocomplete = new LocationAutocomplete(pickupInput, accessToken);\n\npickupInput.addEventListener('locationSelected', (event) => {\n    const location = event.detail;\n    console.log('Seçilen konum:', location);\n\n    // Araç arama için koordinatları sakla\n    window.pickupCoordinates = {\n        lat: location.point.lat,\n        lon: location.point.lon\n    };\n});\n","lang":"javascript"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"konum-doğrulama","__idx":22},"children":["Konum Doğrulama"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"javascript","header":{"controls":{"copy":{}}},"source":"async function validateLocation(placeId) {\n    try {\n        const response = await fetch(`/api/v1/locations/${placeId}`, {\n            headers: {\n                'Authorization': `Bearer ${accessToken}`\n            }\n        });\n\n        if (!response.ok) {\n            if (response.status === 404) {\n                throw new Error('Konum bulunamadı veya desteklenmiyor');\n            }\n            throw new Error('Konum doğrulama başarısız');\n        }\n\n        const location = await response.json();\n\n        // Konumun gerekli alanlara sahip olduğunu doğrula\n        if (!location.point || !location.point.lat || !location.point.lon) {\n            throw new Error('Konum geçerli koordinatlara sahip değil');\n        }\n\n        return location;\n\n    } catch (error) {\n        console.error('Konum doğrulama hatası:', error);\n        throw error;\n    }\n}\n","lang":"javascript"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"konum-karşılaştırması","__idx":23},"children":["Konum Karşılaştırması"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"javascript","header":{"controls":{"copy":{}}},"source":"function calculateDistance(location1, location2) {\n    const R = 6371; // Dünya'nın yarıçapı kilometre cinsinden\n    const dLat = (location2.lat - location1.lat) * Math.PI / 180;\n    const dLon = (location2.lon - location1.lon) * Math.PI / 180;\n\n    const a = Math.sin(dLat / 2) * Math.sin(dLat / 2) +\n        Math.cos(location1.lat * Math.PI / 180) * Math.cos(location2.lat * Math.PI / 180) *\n        Math.sin(dLon / 2) * Math.sin(dLon / 2);\n\n    const c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1 - a));\n    const distance = R * c;\n\n    return distance; // Kilometre cinsinden mesafe\n}\n\nfunction validateLocationDistance(pickupLocation, dropoffLocation) {\n    const distance = calculateDistance(\n        pickupLocation.point,\n        dropoffLocation.point\n    );\n\n    // Konumlar çok uzaksa uyar (>500km)\n    if (distance > 500) {\n        return {\n            valid: true,\n            warning: `Alış ve teslim konumları ${distance.toFixed(0)}km uzaklıkta`\n        };\n    }\n\n    return {valid: true};\n}\n","lang":"javascript"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"hata-i̇şleme","__idx":24},"children":["Hata İşleme"]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"yaygın-hata-yanıtları","__idx":25},"children":["Yaygın Hata Yanıtları"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["400 Bad Request"]},": Geçersiz sorgu parametresi veya eksik gerekli alanlar"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["401 Unauthorized"]},": Kimlik doğrulama gerekli veya jetonun süresi dolmuş"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["404 Not Found"]},": Yer kimliği bulunamadı veya konum desteklenmiyor"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["429 Too Many Requests"]},": Hız sınırı aşıldı"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["500 Internal Server Error"]},": Servis geçici olarak kullanılamıyor"]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"örnek-hata-yanıtı","__idx":26},"children":["Örnek Hata Yanıtı"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"{\n  \"code\": 1001,\n  \"description\": \"Geçersiz sorgu parametresi\",\n  \"details\": {\n    \"field\": \"query\",\n    \"message\": \"Sorgu en az 2 karakter uzunluğunda olmalı\"\n  }\n}\n","lang":"json"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"hata-i̇şleme-en-i̇yi-uygulamaları","__idx":27},"children":["Hata İşleme En İyi Uygulamaları"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Zarif Düşüş"]},": Konum arama başarısız olduğunda yedek seçenekler sağlayın"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Kullanıcı Geri Bildirimi"]},": Kullanıcılara net hata mesajları gösterin"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Yeniden Deneme Mantığı"]},": Geçici arızalar için üstel geri çekilme uygulayın"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Doğrulama"]},": API çağrıları yapmadan önce kullanıcı girişini doğrulayın"]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"performans-değerlendirmeleri","__idx":28},"children":["Performans Değerlendirmeleri"]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"önbelleğe-alma-stratejisi","__idx":29},"children":["Önbelleğe Alma Stratejisi"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Arama Sonuçları"]},": Aynı sorgular için arama sonuçlarını önbelleğe alın"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Konum Detayları"]},": Detaylı konum bilgilerini önbelleğe alın"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["TTL"]},": Uygun yaşam süresi değerleri kullanın (önerilen: arama için 1 saat, detaylar için 24 saat)"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Depolama"]},": İstemci tarafı önbelleğe alma için browser localStorage veya sessionStorage kullanın"]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"hız-sınırlama","__idx":30},"children":["Hız Sınırlama"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Konum endpoint'leri hız sınırlamasına tabidir:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Arama endpoint'i"]},": Kullanıcı başına dakikada maksimum 60 istek"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Detaylar endpoint'i"]},": Kullanıcı başına dakikada maksimum 100 istek"]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"optimizasyon-i̇puçları","__idx":31},"children":["Optimizasyon İpuçları"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Debouncing"]},": Arama girişi için 300ms debounce kullanın"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Toplu İstekler"]},": Mümkünse konum detay isteklerini toplu olarak yapın"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Ön Yükleme"]},": Daha hızlı yanıt için popüler konumları ön yükleyin"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["CDN"]},": Mevcut olduğunda statik konum verileri için CDN kullanın"]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"erişilebilirlik-değerlendirmeleri","__idx":32},"children":["Erişilebilirlik Değerlendirmeleri"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Klavye Navigasyonu"]},": Sonuç navigasyonu için ok tuşlarını destekleyin"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Ekran Okuyucuları"]},": Uygun ARIA etiketleri ve açıklamalar sağlayın"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Odak Yönetimi"]},": Konum seçimi sırasında odağı düzgün yönetin"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Ses Girişi"]},": Konum arama için ses girişini destekleyin"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Yüksek Kontrast"]},": Konum sonuçlarının yüksek kontrast modunda görünür olduğundan emin olun"]}]}]},"headings":[{"value":"Konum İşlemleri","id":"konum-i̇şlemleri","depth":1},{"value":"Konum Arama","id":"konum-arama","depth":2},{"value":"Endpoint","id":"endpoint","depth":3},{"value":"Kimlik Doğrulama","id":"kimlik-doğrulama","depth":3},{"value":"Sorgu Parametreleri","id":"sorgu-parametreleri","depth":3},{"value":"Örnek İstek","id":"örnek-i̇stek","depth":3},{"value":"Yanıt","id":"yanıt","depth":3},{"value":"Yanıt Alanları","id":"yanıt-alanları","depth":3},{"value":"Konum Türleri","id":"konum-türleri","depth":3},{"value":"Konum Detaylarını Al","id":"konum-detaylarını-al","depth":2},{"value":"Endpoint","id":"endpoint-1","depth":3},{"value":"Kimlik Doğrulama","id":"kimlik-doğrulama-1","depth":3},{"value":"Yol Parametreleri","id":"yol-parametreleri","depth":3},{"value":"Örnek İstek","id":"örnek-i̇stek-1","depth":3},{"value":"Yanıt","id":"yanıt-1","depth":3},{"value":"Yanıt Alanları","id":"yanıt-alanları-1","depth":3},{"value":"Konum Arama En İyi Uygulamaları","id":"konum-arama-en-i̇yi-uygulamaları","depth":2},{"value":"Sorgu Optimizasyonu","id":"sorgu-optimizasyonu","depth":3},{"value":"Otomatik Tamamlama Uygulaması","id":"otomatik-tamamlama-uygulaması","depth":3},{"value":"Konum Seçimi","id":"konum-seçimi","depth":3},{"value":"Entegrasyon Örnekleri","id":"entegrasyon-örnekleri","depth":2},{"value":"Otomatik Tamamlama Uygulaması","id":"otomatik-tamamlama-uygulaması-1","depth":3},{"value":"Konum Doğrulama","id":"konum-doğrulama","depth":3},{"value":"Konum Karşılaştırması","id":"konum-karşılaştırması","depth":3},{"value":"Hata İşleme","id":"hata-i̇şleme","depth":2},{"value":"Yaygın Hata Yanıtları","id":"yaygın-hata-yanıtları","depth":3},{"value":"Örnek Hata Yanıtı","id":"örnek-hata-yanıtı","depth":3},{"value":"Hata İşleme En İyi Uygulamaları","id":"hata-i̇şleme-en-i̇yi-uygulamaları","depth":3},{"value":"Performans Değerlendirmeleri","id":"performans-değerlendirmeleri","depth":2},{"value":"Önbelleğe Alma Stratejisi","id":"önbelleğe-alma-stratejisi","depth":3},{"value":"Hız Sınırlama","id":"hız-sınırlama","depth":3},{"value":"Optimizasyon İpuçları","id":"optimizasyon-i̇puçları","depth":3},{"value":"Erişilebilirlik Değerlendirmeleri","id":"erişilebilirlik-değerlendirmeleri","depth":2}],"frontmatter":{"seo":{"title":"Konum İşlemleri"}},"lastModified":"2025-09-05T10:52:30.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/tr-tr/endpoints/locations","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}