修正地址 - 範例

本文說明 Address Validation API 提供回應信號,可能需要系統執行「修正」行為的幾種實際情境。如需背景資訊,請參閱「建構驗證邏輯」中的「工作流程範例」。

常見例子:修正

本節說明常見範例,其中 Address Validation API 提供回應信號,指出地址資訊品質較低。

缺少城市和郵遞區號

這個範例說明只有街道地址,沒有城市或郵遞區號的項目。

輸入的地址 區域
21 45 40th street USA

缺少城市和郵遞區號的判定結果

以下範例強調了回應中的重要信號。

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

possibleNextAction會初步指出地址可能無法送達。其他醒目顯示的元件也支援這種可能性,因此您可以查詢 addressComponents 以瞭解詳情:

{
  "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 只會傳回國家/地區 (美國) 做為 CONFIRMED。系統會將所有其他地址元件傳回為 UNCONFIRMED_BUT_PLAUSIBLE,並省略部分重要資料,例如地區和郵遞區號。

缺少門牌號碼

這個範例缺少門牌號碼。

輸入的地址 區域
Buckingham Palace Road, SW1W 9TQ London 英國

缺少門牌號碼的裁決

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

possibleNextAction 再次提供初步指標,指出地址可能無法送達。此外,validationGranularity 為 ROUTE,表示與街道相符,但資訊不足,無法找到建築物。此外,判定結果中缺少 addressComplete 屬性,因此為 false。進一步查詢 address 物件,會發現缺少的元件類型:

"missingComponentTypes": [
        "street_number"
      ]

極端案例範例:修正

在某些情況下,是否要修正、確認或接受地址,取決於您的特定業務情境。以下範例說明可能不完全屬於修正類別的情境。

未確認的門牌號碼

在這種情況下,Address Validation API 無法確認提供的門牌號碼,但會指出地址完整。

輸入的地址 區域
84 Buckingham Palace Road, SW1W 9TQ, London 英國

未確認門牌號碼的裁決

以下範例強調了重要信號。

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

值得探討的是,如果只將驗證精細程度設為建築物層級近似值,並搭配未確認的元件,查詢 addressComponents 屬性會顯示下列未確認的 componentType:

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

在這裡,street_number 的 confirmation_level 設為 UNCONFIRMED_BUT_PLAUSIBLE。Unconfirmed 表示服務無法在資料集中比對出門牌號碼 84,plausible 則表示元件資料仍可能有效。

缺少子處所

這個情境說明地址只缺少子處所,例如公寓或部門編號。否則,Address Validation API 可以完整驗證地址。與缺少任何地址元件的情況一樣,addressComplete 為 false,因此不會顯示在手動檢查的判定結果中。

舉例來說,假設顧客輸入舊金山市評估辦公室的有效地址,但未輸入房間號碼。

輸入的地址 區域
1 Doctor Carlton B Goodlett Place, San Francisco, CA 94102 USA

缺少子建築物的裁決

在本範例中,判定結果不會顯示 addressComplete 屬性,因此為 false。因此,您知道至少有一個地址元素不符合預期、無法解析或遺漏。

{
  "inputGranularity": "PREMISE",
  "validationGranularity": "PREMISE",
  "geocodeGranularity": "PREMISE",
  "hasInferredComponents": true,
  "possibleNextAction": "CONFIRM_ADD_SUBPREMISES"
}

address 查詢會顯示下列內容:

"missingComponentTypes": [
        "subpremise"
      ]

進一步查詢後,USPS 資料會提供 D 的 dpvConfirmation 代碼,這也表示缺少子處所。