Sửa địa chỉ (ví dụ)

Tài liệu này mô tả một số tình huống thực tế, trong đó Address Validation API cung cấp các tín hiệu phản hồi đảm bảo hành vi khắc phục từ hệ thống của bạn. Các ví dụ ở đây chỉ mang tính minh hoạ và chưa đầy đủ. Xem phần Tổng quan về quy trình làm việc trong bài viết Xây dựng logic xác thực để biết bối cảnh.

Ví dụ thường gặp: khắc phục

Phần này mô tả các ví dụ phổ biến trong đó Address Validation API cung cấp tín hiệu phản hồi cho biết thông tin địa chỉ có chất lượng thấp hơn.

Thiếu thành phố và mã bưu chính

Ví dụ này minh hoạ một mục chỉ có địa chỉ đường phố, không có thành phố hoặc mã bưu chính.

Địa chỉ đã nhập Khu vực
21 45 40th street USA

Kết luận về việc thiếu thành phố và mã bưu chính

Ví dụ bên dưới nhấn mạnh các tín hiệu quan trọng từ phản hồi.

{
  "inputGranularity": "PREMISE",
  "validationGranularity": "OTHER",
  "geocodeGranularity": "OTHER",
  "hasUnconfirmedComponents": true
}

Những tín hiệu này cho biết địa chỉ không thể gửi thư, vì vậy, bạn có thể truy vấn addressComponents để tìm hiểu thêm:

{
  "componentName": {
    "text": "21",
    "languageCode": "en"
  },
  "componentType": "street_number",
  "confirmationLevel": "UNCONFIRMED_BUT_PLAUSIBLE"
},
{
  "componentName": {
    "text": "45 40th street",
    "languageCode": "en"
  },
  "componentType": "route",
  "confirmationLevel": "UNCONFIRMED_BUT_PLAUSIBLE"
},
{
  "componentName": {
    "text": "United States",
    "languageCode": "en"
  },
  "componentType": "country",
  "confirmationLevel": "CONFIRMED"
}

Address Validation API chỉ trả về quốc gia (Hoa Kỳ) dưới dạng CONFIRMED. Phương thức này trả về tất cả các thành phần địa chỉ khác dưới dạng UNCONFIRMED_BUT_PLAUSIBLE, nhưng bỏ qua một số dữ liệu quan trọng, chẳng hạn như địa phương và mã bưu chính.

Thiếu số đường

Ví dụ này cho thấy một địa chỉ thiếu số nhà.

Địa chỉ đã nhập Khu vực
Buckingham Palace Road, SW1W 9TQ London Vương quốc Anh

Kết luận về việc thiếu số đường

{
    "inputGranularity": "PREMISE_PROXIMITY",
    "validationGranularity": "ROUTE",
    "geocodeGranularity": "ROUTE"
}

validationGranularity là ROUTE, cho biết kết quả trùng khớp với đường phố, nhưng không đủ thông tin để đến cơ sở. Ngoài ra, thuộc tính addressComplete bị thiếu trong kết quả đánh giá, do đó thuộc tính này là false. Một truy vấn khác về đối tượng address cho thấy một loại thành phần bị thiếu:

"missingComponentTypes": [
        "street_number"
      ]

Ví dụ về trường hợp hiếm gặp: khắc phục

Trong một số trường hợp, việc bạn sửa, xác nhận hay chấp nhận một địa chỉ sẽ phụ thuộc vào tình huống cụ thể của doanh nghiệp. Các ví dụ dưới đây minh hoạ những trường hợp có thể không hoàn toàn thuộc một danh mục khắc phục.

Số nhà chưa được xác nhận

Trong trường hợp này, Address Validation API không thể xác nhận số nhà được cung cấp, nhưng cho biết rằng địa chỉ đã hoàn chỉnh.

Địa chỉ đã nhập Khu vực
84 Buckingham Palace Road, SW1W 9TQ, London Vương quốc Anh

Phán quyết về số đường chưa được xác nhận

Ví dụ dưới đây nhấn mạnh các tín hiệu quan trọng.

{
  "inputGranularity": "PREMISE",
  "validationGranularity": "PREMISE_PROXIMITY",
  "geocodeGranularity": "PREMISE_PROXIMITY",
  "addressComplete" : true,
  "hasUnconfirmedComponents": true
}

Bạn nên điều tra sự kết hợp giữa mức độ chi tiết của quy trình xác thực chỉ với giá trị ước chừng ở cấp cơ sở cùng với các thành phần chưa được xác nhận. Khi truy vấn thuộc tính addressComponents, bạn sẽ thấy componentType chưa được xác nhận sau đây:

{
  "componentName": {
    "text": "84",
    "languageCode": "en"
  },
  "componentType": "street_number",
  "confirmationLevel": "UNCONFIRMED_BUT_PLAUSIBLE"
}

Tại đây, confirmation_level của street_number được đặt thành UNCONFIRMED_BUT_PLAUSIBLE. Chưa xác nhận có nghĩa là dịch vụ không thể so khớp số nhà 84 trong tập dữ liệu của mình và hợp lý có nghĩa là dữ liệu thành phần vẫn có thể hợp lệ.

Thiếu số phòng/số căn hộ

Trường hợp này mô tả một địa chỉ chỉ thiếu số căn hộ, chẳng hạn như số căn hộ hoặc số phòng ban. Nếu không, Address Validation API có thể xác thực đầy đủ địa chỉ. Như trường hợp thiếu bất kỳ thành phần địa chỉ nào, addressComplete là false và do đó không xuất hiện khi kiểm tra kết quả theo cách thủ công.

Để minh hoạ, giả sử khách hàng nhập địa chỉ hợp lệ cho văn phòng thẩm định viên thành phố San Francisco, nhưng bỏ lỡ số phòng trong dữ liệu đầu vào.

Địa chỉ đã nhập Khu vực
1 Doctor Carlton B Goodlett Place, San Francisco, CA 94102 USA

Kết luận về việc thiếu số nhà phụ

Trong ví dụ này, kết quả không hiển thị thuộc tính addressComplete, do đó, kết quả là false. Do đó, bạn biết rằng có ít nhất một phần tử địa chỉ không mong muốn, chưa được phân giải hoặc bị thiếu.

{
  "inputGranularity": "PREMISE",
  "validationGranularity": "PREMISE",
  "geocodeGranularity": "PREMISE",
  "hasInferredComponents": true

}

Một truy vấn address cho thấy những thông tin sau:

"missingComponentTypes": [
        "subpremise"
      ]

Khi tìm hiểu thêm, dữ liệu của USPS cung cấp mã dpvConfirmation là D, cũng cho biết thiếu địa chỉ phụ.