Hedef
Geliştirici olarak, genellikle müşteri adreslerini içeren ve kaliteli olmayabilecek veri kümeleriyle çalışırsınız. Müşteri kimlik doğrulamasından teslimata kadar çeşitli kullanım alanları için adreslerin doğru olduğundan emin olmanız gerekir.
Address Validation API, adresleri doğrulamak için kullanabileceğiniz bir Google Haritalar Platformu ürünüdür. Ancak tek seferde yalnızca bir adres işler. Bu belgede, API testinden tek seferlik ve yinelenen adres doğrulamaya kadar farklı senaryolarda High Volume Address Validation'ın nasıl kullanılacağını inceleyeceğiz.
Kullanım alanları
Şimdi High Volume Address Validation'ın yararlı olduğu kullanım alanlarını inceleyelim.
Test
Address Validation API'yi binlerce adresi çalıştırarak test etmek isteyebilirsiniz. Adresleriniz bir virgülle ayrılmış değerler dosyasında olabilir ve adreslerin kalitesini doğrulamak isteyebilirsiniz.
Adreslerin tek seferlik doğrulanması
Address Validation API'ye ilk katılım sırasında mevcut adres veritabanınızı kullanıcı veritabanına göre doğrulamak istiyorsunuz.
Adreslerin yinelenen doğrulaması
Adreslerin düzenli olarak doğrulanmasını gerektiren çeşitli senaryolar vardır:
- Gün içinde toplanan ayrıntılar (ör. müşteri kayıtları, sipariş ayrıntıları, teslimat planları) için adresleri doğrulayacak işler planlamış olabilirsiniz.
- Farklı departmanlardan (ör. satıştan pazarlamaya) adresler içeren veri dökümleri alabilirsiniz. Adresleri alan yeni departman, genellikle adresleri kullanmadan önce doğrulamak ister.
- Anketler veya çeşitli promosyonlar sırasında adresleri toplayıp daha sonra online sistemde güncelleyebilirsiniz. Sisteme girerken adreslerin doğru olduğunu doğrulamak istiyorsunuz.
Teknik ayrıntılı inceleme
Bu belgenin amacı doğrultusunda şunları varsayıyoruz:
- Address Validation API'yi bir müşteri veritabanındaki (ör.müşteri bilgilerini içeren bir veritabanı) adreslerle çağırıyorsunuz.
- Geçerlilik işaretlerini veritabanınızdaki her bir adres için önbelleğe alabilirsiniz.
- Geçerlilik işaretleri, bireysel bir müşteri giriş yaptığında Address Validation API'den alınır.
Üretimde kullanım için önbelleğe alma
Address Validation API'yi kullanırken genellikle API çağrısından gelen yanıtın bir kısmını önbelleğe almak istersiniz. Hizmet Şartlarımız, önbelleğe alınabilecek verileri sınırlasa da Address Validation API'den önbelleğe alınabilecek tüm veriler bir kullanıcı hesabıyla ilişkilendirilerek önbelleğe alınmalıdır. Bu, veritabanında adresin veya adres meta verilerinin kullanıcının e-posta adresi ya da diğer birincil kimliğiyle önbelleğe alınması gerektiği anlamına gelir.
Yüksek Hacimli Address Validation kullanım alanında veri önbelleğe alma işlemi, Bölüm 11.3'te belirtilen Address Validation API Hizmete Özel Şartlar'a uygun olmalıdır. Bu bilgilere dayanarak, bir kullanıcının adresinin geçersiz olup olmadığını belirleyebilirsiniz. Geçersiz olması durumunda, uygulamanızla bir sonraki etkileşimi sırasında kullanıcıdan düzeltilmiş bir adres istenir.
- AddressComponent nesnesinden alınan veriler
confirmationLevelinferredspellCorrectedreplacedunexpected
Gerçek adresle ilgili herhangi bir bilgiyi önbelleğe almak istiyorsanız bu veriler yalnızca kullanıcının izniyle önbelleğe alınmalıdır. Bu sayede kullanıcı, belirli bir hizmetin adresini neden sakladığını iyi bilir ve adresini paylaşma şartlarını kabul eder.
Ödeme sayfasındaki e-ticaret adres formuyla doğrudan etkileşim, kullanıcı rızasına örnek olarak verilebilir. Adresi, bir paketi göndermek amacıyla önbelleğe alıp işleyeceğiniz anlaşılır.
Kullanıcının izniyle formattedAddress ve yanıttaki diğer önemli bileşenleri önbelleğe alabilirsiniz. Ancak başsız senaryoda, adres doğrulama arka uçtan yapıldığı için kullanıcı izin veremez. Bu nedenle, bu başsız senaryoda çok sınırlı bilgileri önbelleğe alabilirsiniz.
Yanıtı anlama
Address Validation API yanıtı aşağıdaki işaretçileri içeriyorsa giriş adresinin teslimat için uygun kalitede olduğundan emin olabilirsiniz:
- Karar nesnesindeki
addressCompleteişaretçisitrue, - Verdict nesnesindeki
validationGranularity,PREMISEveyaSUB_PREMISE - AddressComponent'ların hiçbiri şu şekilde işaretlenmez:
Inferred(Not: inferred=trueŞu durumlarda gerçekleşebilir:addressComplete=true)spellCorrectedreplacedunexpectedve
confirmationLevel: AddressComponent'taki onay düzeyiCONFIRMEDveyaUNCONFIRMED_BUT_PLAUSIBLEolarak ayarlanmış.
API yanıtı yukarıdaki işaretleri içermiyorsa giriş adresi muhtemelen düşük kalitelidir ve bunu yansıtmak için veritabanınızda işaretleri önbelleğe alabilirsiniz. Önbelleğe alınmış işaretler, adresin bir bütün olarak düşük kaliteli olduğunu gösterirken, Yazım Düzeltildi gibi daha ayrıntılı işaretler, adres kalitesi sorununun belirli türünü gösterir. Müşteri, kalitesi düşük olarak işaretlenmiş bir adresle bir sonraki etkileşimde bulunduğunda mevcut adresle Address Validation API'yi çağırabilirsiniz. Address Validation API, düzeltilmiş adresi döndürür. Bu adresi bir kullanıcı arayüzü istemi kullanarak görüntüleyebilirsiniz. Müşteri biçimlendirilmiş adresi kabul ettikten sonra yanıttan aşağıdakileri önbelleğe alabilirsiniz:
formattedAddresspostalAddressaddressComponent componentNamesveyaUspsData standardizedAddress
Başsız Address Validation uygulaması
Yukarıdaki tartışmaya göre:
- İşletmeyle ilgili nedenlerden dolayı Address Validation API'den gelen yanıtın bir kısmını önbelleğe almak genellikle gereklidir.
- Ancak Google Haritalar Platformu'ndaki Hizmet Şartları, hangi verilerin önbelleğe alınabileceğini kısıtlar.
Aşağıdaki bölümde, Hizmet Şartları'na uymak ve yüksek hacimli Address Validation özelliğini uygulamak için iki adımlı bir süreci ele alacağız.
1. Adım:
İlk adımda, mevcut bir Data Pipelines'tan yüksek hacimli bir adres doğrulama komut dosyasının nasıl uygulanacağını inceleyeceğiz. Bu işlem, Address Validation API yanıtındaki belirli alanları Hizmet Şartları'na uygun şekilde depolamanıza olanak tanır.
Diyagram A: Aşağıdaki diyagramda, bir Data Pipelines'ın High Volume Address Validation mantığıyla nasıl geliştirilebileceği gösterilmektedir.
Hizmet Şartları uyarınca, addressComponent'ndaki aşağıdaki verileri önbelleğe alabilirsiniz:
confirmationLevelinferredspellCorrectedreplacedunexpected
Bu nedenle, uygulamanın bu adımında yukarıda belirtilen alanları UserID'ye göre önbelleğe alırız.
Daha fazla bilgi için gerçek veri yapısı ile ilgili ayrıntılara bakın.
2. Adım:
1. adımda, giriş veri kümesindeki bazı adreslerin yüksek kaliteli olmayabileceğine dair geri bildirim aldık. Bir sonraki adımda, işaretlenen bu adresleri kullanıcıya gösterip kayıtlı adresi düzeltmek için onayını alacağız.
B diyagramı: Bu diyagramda, kullanıcı rızası akışının uçtan uca entegrasyonunun nasıl görünebileceği gösterilmektedir:
- Kullanıcı giriş yaptığında, sisteminizde önbelleğe alınmış doğrulama işaretleri olup olmadığını kontrol edin.
- İşaretler varsa kullanıcıya adresini düzeltip güncelleyebileceği bir kullanıcı arayüzü sunmanız gerekir.
- Address Validation API'yi güncellenmiş veya önbelleğe alınmış adresle tekrar çağırabilir ve düzeltilmiş adresi onaylaması için kullanıcıya sunabilirsiniz.
- Adres kaliteliyse Address Validation API,
formattedAddressdöndürür. - Düzeltme yapıldıysa bu adresi kullanıcıya sunabilir veya düzeltme yoksa sessizce kabul edebilirsiniz.
- Kullanıcı kabul ettikten sonra
formattedAddressöğesini veritabanında önbelleğe alabilirsiniz.
Sonuç
Yüksek Hacimli Address Validation, birçok uygulamada karşılaşabileceğiniz yaygın bir kullanım alanıdır. Bu dokümanda, Google Haritalar Platformu Hizmet Şartları'na uygun bir çözümün nasıl uygulanacağına dair bazı senaryolar ve bir tasarım deseni gösterilmeye çalışılmıştır.
Ayrıca, GitHub'da açık kaynaklı bir kitaplık olarak High Volume Address Validation'ın referans uygulamasını yazdık. Yüksek Hacimli Address Validation ile hızlıca uygulama geliştirmeye başlamak için bu kılavuzu inceleyin. Ayrıca, kitaplığın farklı senaryolarda nasıl kullanılacağına dair tasarım kalıpları hakkındaki makaleyi de inceleyin.
Sonraki Adımlar
Güvenilir adreslerle ödeme, teslimat ve operasyon süreçlerini iyileştirme başlıklı teknik incelemeyi indirin ve Address Validation ile ödeme, teslimat ve operasyon süreçlerini iyileştirme başlıklı web seminerini izleyin.
Önerilen ek kaynaklar:

- High Volume Address Validation'ın uygulamaları
- GitHub'daki Python kitaplığı
- Address Validation demosunu inceleyin.
Katkıda bulunanlar
Bu makale Google tarafından hazırlanmıştır. Bu makale, aşağıdaki katkıda bulunanlar tarafından yazılmıştır.
Asıl yazarlar:
Henrik Valve | Çözüm Mühendisi
Thomas Anglaret | Çözüm Mühendisi
Sarthak Ganguly | Çözüm Mühendisi