Address Validation

AddressValidation 類別

class google.maps.addressValidation.AddressValidation
library "addressValidation"

用於存取 AddressValidation API 的靜態類別。

const {AddressValidation} = await google.maps.importLibrary("addressValidation");
fetchAddressValidation
fetchAddressValidation(request)
參數:
address
readonly
類型: Address optional
地址本身的相關資訊,而非地理編碼。
geocode
readonly
類型: Geocode optional
地址地理編碼後的位置和地點相關資訊。
metadata
readonly
類型: AddressMetadata optional
其他與送達率相關的資訊。不保證傳送至 Address Validation API 的每個地址都會完整填入 metadata。
responseId
readonly
類型: string optional
用於識別這項回應的 UUID。如需重新驗證地址,則必須在新要求中提供這個 UUID。
uspsData
readonly
類型: USPSData optional
USPS 提供的額外可送達性旗標。僅在US和PR地區提供。
verdict
readonly
類型: Verdict optional
整體判定結果標記
沿用: toJSON

AddressValidationRequest 介面

介面 google.maps.addressValidation.AddressValidationRequest

AddressValidation.fetchAddressValidation 的要求介面。

address
正在驗證的地址。未格式化的地址應透過 PostalAddress.addressLines 提交。
internalUsageAttributionIds
選填
類型: Iterable<string> optional
用於將呼叫歸因於特定套件或 OSS 程式庫的 ID。
placeAutocompleteElement
選填
類型: PlaceAutocompleteElement optional
如果使用 PlaceAutocompleteElement,請在這裡加入,將 AddressValidation API 呼叫與自動完成工作階段符記連結。
previousResponseId
選填
類型: string optional
首次提出地址驗證要求時,請勿設定這個欄位。如果需要更多要求才能完整驗證單一地址 (例如使用者在初始驗證後所做的變更需要重新驗證),則每個後續要求都必須在該欄位中填入驗證序列中第一個回應的 AddressValidation.responseId。
sessionToken
選填
類型: AutocompleteSessionToken optional
用於識別 Autocomplete 工作階段的權杖,以便計費。
uspsCASSEnabled
選填
類型: boolean optional
啟用 USPS CASS 相容模式。這「只會」影響 AddressValidation 的 AddressValidation.uspsData 欄位。注意:如果要求已啟用 USPS CASS,且地址位於波多黎各,則 address 的 PostalAddress.regionCode 必須提供為「PR」,或 address 的 PostalAddress.administrativeArea 必須提供為「Puerto Rico」(不區分大小寫) 或「PR」。

Address 類別

class google.maps.addressValidation.Address
library "addressValidation"

後處理地址的詳細資料。後續處理包括更正地址中拼寫錯誤的部分、替換不正確的部分,以及推斷缺少的部分。

const {Address} = await google.maps.importLibrary("addressValidation");
components
readonly
格式化和修正後的地址個別元件,以及驗證資訊。這會提供個別元件的驗證狀態資訊。
formattedAddress
readonly
類型: string optional
後處理地址,格式為單行地址,遵循地址所在區域的地址格式規則。
missingComponentTypes
readonly
類型: Array<string>
格式正確的郵寄地址應包含的元件類型,但輸入內容中找不到,也無法推論。formatted_address、postal_address 或 address_components 中沒有這種類型的元件。舉例來說,如果輸入「Boulder, Colorado, 80301, USA」,則會傳回 ['street_number', 'route']。如要查看可能出現的類型清單,請按這裡。
postalAddress
readonly
類型: PostalAddress optional
後置處理地址,以郵寄地址表示。
unconfirmedComponentTypes
readonly
類型: Array<string>
address_components 中有元件,但無法確認類型是否正確。提供這個欄位是為了方便起見:其內容相當於疊代 address_components,找出 AddressComponent.confirmationLevel 不是 ConfirmationLevel.CONFIRMED 或 AddressComponent.inferred 旗標未設為 true 的所有元件類型。如要查看可能出現的類型清單,請按這裡。
unresolvedTokens
readonly
類型: Array<string>
輸入內容中無法解析的任何權杖。這可能是因為輸入內容未被辨識為地址的有效部分 (例如在「123235253253 Main St, San Francisco, CA, 94105」這類輸入內容中,未解析的權杖可能看起來像 ["123235253253"],因為這不像是有效的門牌號碼。
沿用: toJSON

AddressComponent 類別

class google.maps.addressValidation.AddressComponent
library "addressValidation"

代表地址的單一元件 (例如街道名稱、城市)。

const {AddressComponent} = await google.maps.importLibrary("addressValidation");
componentName
readonly
類型: string optional
元件名稱文字。例如,街道名稱「5th Avenue」或門牌號碼「1253」。
componentNameLanguageCode
readonly
類型: string optional
BCP-47 語言代碼。如果元件名稱與語言無關 (例如門牌號碼),則不會顯示這個欄位。
componentType
readonly
類型: string optional
地址元件的類型。如需可能類型的清單,請參閱「表 2:Places 服務傳回的其他類型」。
confirmationLevel
readonly
類型: ConfirmationLevel optional
表示元件正確性的確定程度。
inferred
readonly
類型: boolean
如果為 true,表示這個元件並非輸入內容的一部分,而是根據地址位置推論而來。建議加入這個元件,以提供完整地址。
replaced
readonly
類型: boolean
表示元件名稱已替換為完全不同的名稱。例如,將錯誤的郵遞區號更正為正確的郵遞區號。這不只是外觀上的變更,輸入元件也已變更。
spellCorrected
readonly
類型: boolean
表示修正元件名稱中的拼寫錯誤。API 不一定會標記拼寫變體之間的變更,例如「centre」和「center」。
unexpected
readonly
類型: boolean
如果為 true,表示這個元件不應出現在指定區域的郵寄地址中。保留的原因只是因為它是輸入內容的一部分。

AddressMetadata 類別

class google.maps.addressValidation.AddressMetadata
library "addressValidation"

地址的中繼資料。傳送至 Address Validation API 的每個地址,不一定都會填入完整的 AddressMetadata。

const {AddressMetadata} = await google.maps.importLibrary("addressValidation");
business
readonly
類型: boolean
poBox
readonly
類型: boolean
residential
readonly
類型: boolean
沿用: toJSON

ConfirmationLevel 常數

constants google.maps.addressValidation.ConfirmationLevel
library "addressValidation"

不同的可能值,表示元件正確性的確定程度。

這些常數也可以做為字串使用。在 TypeScript 中,字串常值是由 ConfirmationLevelString 類型定義。

const {ConfirmationLevel} = await google.maps.importLibrary("addressValidation");
CONFIRMED
UNCONFIRMED_AND_SUSPICIOUS
UNCONFIRMED_BUT_PLAUSIBLE

Geocode 類別

class google.maps.addressValidation.Geocode
library "addressValidation"

包含輸入內容經過地理編碼後的地點資訊。

const {Geocode} = await google.maps.importLibrary("addressValidation");
bounds
readonly
類型: LatLngBounds optional
地理編碼地點的邊界。
featureSizeMeters
readonly
類型: number optional
經過地理編碼的地點大小 (以公尺為單位)。這是另一種衡量地理編碼位置粗略程度的方法,但以實際大小而非語意表示。
location
readonly
類型: LatLngAltitude optional
輸入內容的地理編碼位置。
placeId
readonly
類型: string optional
經過地理編碼的地點 ID。建議使用 Place,而非地址、經緯度座標或 Plus Code。使用座標規劃路線或計算行車路線時,系統一律會將該點貼齊最靠近這些座標的道路。這條路可能無法快速或安全地抵達目的地,也可能不在房地產入口附近。此外,對位置進行反向地理編碼時,不保證傳回的地址會與原始地址相符。
placeTypes
readonly
類型: Array<string>
輸入內容經過地理編碼後的地點類型。例如:['locality', 'political']。如需完整類型清單,請參閱 Geocoding API 說明文件。
plusCode
readonly
類型: PlusCode optional
與 location 對應的 Plus Code。
fetchPlace
fetchPlace()
參數:無
傳回值:無
傳回這個地理編碼的地點表示法。如要取得完整地點詳細資料,請呼叫 place.fetchFields()。
沿用: toJSON

Granularity 常數

constants google.maps.addressValidation.Granularity
library "addressValidation"

地址或地理編碼可具有的多種精細程度。用於表示地址的精細程度時,這些值代表地址識別郵寄目的地的精細程度。舉例來說,「123 Main Street, Redwood City, CA, 94061」這類地址會識別 PREMISE,而「Redwood City, CA, 94061」這類地址則會識別 LOCALITY。不過,如果我們找不到紅木城「123 Main Street」的地理編碼,則傳回的地理編碼精細程度可能是 LOCALITY,即使地址更精細也一樣。

這些常數也可以做為字串使用。在 TypeScript 中,字串常值是由 GranularityString 類型定義。

const {Granularity} = await google.maps.importLibrary("addressValidation");
BLOCK 地址或地理編碼代表街區。僅用於有街區層級地址的地區,例如日本。
OTHER 所有其他精細程度,由於無法放送,因此會歸入同一類。
PREMISE 建築物層級結果。
PREMISE_PROXIMITY 地理編碼,約略指出地址的建築物層級位置。
ROUTE 地理編碼或地址精細到路線,例如街道、道路或高速公路。
SUB_PREMISE 建築物以下的層級結果,例如公寓。

PossibleNextAction 常數

constants google.maps.addressValidation.PossibleNextAction
library "addressValidation"

提供 API 回應的解讀摘要,協助您判斷後續可能採取的行動。這個欄位衍生自 API 回應中的其他欄位,不應視為地址準確性或可送達性的保證。

這些常數也可以做為字串使用。在 TypeScript 中,字串常值是由 PossibleNextActionString 類型定義。

const {PossibleNextAction} = await google.maps.importLibrary("addressValidation");
ACCEPT API 回應不含任何信號,因此無法提供其他 PossibleNextAction 值。您可以考慮使用後處理地址,不必再提示客戶,但這不保證地址有效,且地址可能仍包含更正內容。您有責任根據自己的風險評估,判斷是否要提示客戶,以及如何提示。
CONFIRM API 回應的一或多個欄位指出,後處理地址可能有輕微問題,例如 postal_code 地址元件replaced。提示顧客檢查地址,有助於提高地址品質。
CONFIRM_ADD_SUBPREMISES API 回應指出,後置處理地址可能缺少子處所。提示顧客檢查地址,並考慮加入門牌號碼,有助於提升地址品質。後處理地址可能還有其他次要問題。注意:只有美國地址會傳回這個列舉值。
FIX API 回應的一或多個欄位指出後處理地址可能有問題,例如 verdict.validation_granularity 為 OTHER。提示顧客編輯地址,有助於提升地址品質。

USPSAddress 類別

class google.maps.addressValidation.USPSAddress
library "addressValidation"

美國地址的 USPS 表示法。

const {USPSAddress} = await google.maps.importLibrary("addressValidation");
city
readonly
類型: string optional
城市名稱。
cityStateZipAddressLine
readonly
類型: string optional
包含城市、州和郵遞區號的地址行。
firm
readonly
類型: string optional
公司名稱。
firstAddressLine
readonly
類型: string optional
地址的第一行。
secondAddressLine
readonly
類型: string optional
地址的第二行。
state
readonly
類型: string optional
2 個字母的州/省代碼。
urbanization
readonly
類型: string optional
波多黎各都市化名稱。
zipCode
readonly
類型: string optional
郵遞區號,例如「10009」。
zipCodeExtension
readonly
類型: string optional
4 碼郵遞區號額外資訊,例如「5023」。
沿用: toJSON

USPSData 類別

class google.maps.addressValidation.USPSData
library "addressValidation"

地址的 USPS 資料。對於傳送至 Address Validation API 的每個美國或波多黎各地址,USPSData 不保證會完整填入資料。如果您使用 uspsData 做為回應的主要部分,建議在回應中整合備用地址欄位。

const {USPSData} = await google.maps.importLibrary("addressValidation");
abbreviatedCity
readonly
類型: string optional
城市名稱縮寫。
addressRecordType
readonly
類型: string optional
與輸入地址相符的地址記錄類型。
carrierRoute
readonly
類型: string optional
貨運公司路線代碼。由一個字母前置字元和三位數路線指定碼組成的四字元代碼。
carrierRouteIndicator
readonly
類型: string optional
郵遞區號路線費率排序指標。
cassProcessed
readonly
類型: boolean
表示要求已由 CASS 處理。
county
readonly
類型: string optional
郡/縣名稱。
deliveryPointCheckDigit
readonly
類型: string optional
投遞點檢查碼。這個數字會加到機械掃描郵件的 delivery_point_barcode 結尾。將 delivery_point_barcode、delivery_point_check_digit、郵遞區號和 ZIP+4 的所有數字相加,應可得到能被 10 整除的數字。
deliveryPointCode
readonly
類型: string optional
2 位數的投遞點代碼。
dpvCMRA
readonly
類型: string optional
指出地址是否為 CMRA (商業郵件收件機構),即為客戶收件的私人企業。傳回單一字元。
dpvConfirmation
readonly
類型: string optional
DPV 確認的可能值。傳回單一字元或不傳回任何值。
dpvDoorNotAccessible
readonly
類型: string optional
這個標記表示 USPS 無法敲門投遞郵件的地址。傳回單一字元。
dpvDrop
readonly
類型: string optional
旗幟表示郵件會投遞到地點的單一收件箱。傳回單一字元。
dpvEnhancedDeliveryCode
readonly
類型: string optional
表示地址有多個有效的 DPV 傳回代碼。傳回單一字元。
dpvFootnote
readonly
類型: string optional
投遞點驗證的註腳。多個註腳可能會串連在同一個字串中。
dpvNonDeliveryDays
readonly
類型: string optional
這個標記表示郵件並非每天投遞。傳回單一字元。
dpvNonDeliveryDaysValues
readonly
類型: number optional
代表非配送日的整數。可使用位元旗標查詢:0x40 - 週日不提供配送服務 0x20 - 週一不提供配送服務 0x10 - 週二不提供配送服務 0x08 - 週三不提供配送服務 0x04 - 週四不提供配送服務 0x02 - 週五不提供配送服務 0x01 - 週六不提供配送服務
dpvNoSecureLocation
readonly
類型: string optional
旗標表示可以走到門口,但基於安全考量,不會將包裹留在門口。傳回單一字元。
dpvNoStat
readonly
類型: string optional
指出地址是否為無統計資料地址或有效地址。「非統計地址」是指未持續有人居住的地址,或美國郵政署不提供服務的地址。傳回單一字元。
dpvNoStatReasonCode
readonly
類型: number optional
表示 NoStat 類型。以 int 形式傳回原因代碼。
dpvPBSA
readonly
類型: string optional
表示地址與 PBSA 記錄相符。傳回單一字元。
dpvThrowback
readonly
類型: string optional
表示郵件不會寄送到街道地址。傳回單一字元。
dpvVacant
readonly
類型: string optional
指出地址是否為空屋。傳回單一字元。
elotFlag
readonly
類型: string optional
eLOT 遞增/遞減標記 (A/D)。
elotNumber
readonly
類型: string optional
Enhanced Line of Travel (eLOT) 號碼。
errorMessage
readonly
類型: string optional
擷取 USPS 資料時的錯誤訊息。如果偵測到人為建立的地址,導致 USPS 處理作業暫停,系統就會填入這個值。
fipsCountyCode
readonly
類型: string optional
FIPS 郡/縣代碼。
hasDefaultAddress
readonly
類型: boolean
指標,表示已找到預設地址,但有更具體的地址。
hasNoEWSMatch
readonly
類型: boolean
寄送地址可比對,但 EWS 檔案指出很快就會有完全比對。
lacsLinkIndicator
readonly
類型: string optional
LACSLink 指標。
lacsLinkReturnCode
readonly
類型: string optional
LACSLink 傳回代碼。
pmbDesignator
readonly
類型: string optional
PMB (私人信箱) 單位指定碼。
pmbNumber
readonly
類型: string optional
PMB (私人信箱) 號碼。
poBoxOnlyPostalCode
readonly
類型: boolean
僅限郵政信箱的郵遞區號。
postOfficeCity
readonly
類型: string optional
主要郵局所在城市。
postOfficeState
readonly
類型: string optional
主要郵局所在州。
standardizedAddress
readonly
類型: USPSAddress optional
USPS 標準格式地址。
suiteLinkFootnote
readonly
類型: string optional
將街道或高樓記錄與套房資訊比對後產生的註腳。如果找到相符的商家名稱,系統會傳回次要號碼。
沿用: toJSON

Verdict 類別

class google.maps.addressValidation.Verdict
library "addressValidation"

代表所提供地址的後處理地址。

const {Verdict} = await google.maps.importLibrary("addressValidation");
addressComplete
readonly
類型: boolean
如果沒有未解析的權杖、非預期或缺少的地址元件,地址就會視為完整。如未設定,則表示值為 false。詳情請參閱 Address.missingComponentTypes、Address.unresolvedTokens 或 AddressComponent.unexpected 欄位。
geocodeGranularity
readonly
類型: Granularity optional
Geocode 的精細程度資訊。這可以理解為地理編碼位置的粗略或精細程度。
hasInferredComponents
readonly
類型: boolean
至少推論 (即新增) 了一個輸入內容中沒有的地址元件,詳情請參閱 AddressComponent。
hasReplacedComponents
readonly
類型: boolean optional
至少有一個地址元件已替換,詳情請參閱 AddressComponent。
hasUnconfirmedComponents
readonly
類型: boolean
至少有一個地址元件無法分類或驗證,詳情請參閱 AddressComponent。
inputGranularity
readonly
類型: Granularity optional
輸入地址的精細程度。這是剖析輸入地址的結果,不會提供任何驗證信號。如要瞭解驗證信號,請參閱 validationGranularity。
BetapossibleNextAction
readonly
類型: PossibleNextAction optional
根據 API 回應中的其他欄位,可能採取的下一個動作。如需詳細資訊,請參閱 PossibleNextAction。
validationGranularity
readonly
類型: Granularity optional
API 可完整驗證地址的精細程度。舉例來說,如果 validationGranularity 為 PREMISE,表示 PREMISE 層級及更廣泛層級的所有地址元件都可以驗證。