API проверки адресов предоставляет тело ответа в виде объекта JSON, содержащего два свойства верхнего уровня:
-
result
, объект типаValidationResult
-
responseID
{
"result": {
// Validation verdict.
"verdict": {},
// Address details determined by the API.
"address": {},
// The geocode generated for the input address.
"geocode": {},
// Information indicating if the address is a business, residence, etc.
"metadata": {},
// Information about the address from the US Postal Service
// ("US" and "PR" addresses only).
"uspsData": {},
},
// A unique identifier generated for every request to the API.
"responseId": "ID"
}
В этом документе основное внимание уделяется объекту result
. Информацию об responseID
см. в разделе Обработка обновлённых адресов .
verdict
собственности
Свойство verdict
суммирует результаты проверки адреса и должно быть первым свойством, которое следует оценивать при построении логики проверки адреса. Это свойство может возвращать различные поля в зависимости от качества выходного адреса. Например, ниже показано свойство verdict
для адреса хорошего качества, которое возвращает 4 поля для данного запроса:
"verdict": {
"inputGranularity": "PREMISE",
"validationGranularity": "PREMISE",
"geocodeGranularity": "PREMISE",
"addressComplete": true,
"possibleNextAction": "ACCEPT"
}
В следующих разделах обобщены все поля в свойстве verdict
.
См. Вердикт в справочнике. |
Возможные следующие действия
Свойство possibleNextAction
предоставляет интерпретационную сводку оставшейся части ответа API, помогая вам определить, следует ли предлагать клиенту проверить или изменить его адрес. Подробнее см. в разделе «Создание логики проверки» .
Детализация адреса
Детализация адреса — это уровень детализации, используемый для определения специфичности адреса или геокода. Детализация адреса в ответе validationGranularity
— ключевой сигнал, определяющий возможность доставки адреса.
Свойство verdict
возвращает следующие сигналы детализации:
-
inputGranularity
— описывает уровень детализации, полученный из адреса, отправленного в API проверки адресов. Уровень детализации адреса в запросе влияет на уровень детализации адреса в ответе проверки. Например, адрес сinputGranularity
ниже уровняPREMISE
ниже уровня обычно не приводит к уровнюvalidationGranularity
до уровняPREMISE
. -
validationGranularity
— уровень детализации, с которым API проверки адресов может полностью проверить адрес. В большинстве случаев уровень детализацииPREMISE
илиSUB_PREMISE
указывает на качественный адрес, который, скорее всего, доставим. -
geocodeGranularity
— описывает уровень детализации геокода, связанного с адресом. Например, записи Google могут указывать на наличие номера квартиры, но не на точное местоположение этой квартиры в крупном жилом комплексе. В этом случае значениеvalidationGranularity
равноSUB_PREMISE
, а значениеgeocodeGranularity
is
PREMISE.
См. раздел «Детализация» в справочном руководстве. |
Полнота адреса
Вердикт возвращает свойство addressComplete
как сигнал для высококачественного адреса, что означает, в частности, что в нем нет отсутствующих, неразрешенных или неожиданных компонентов:
"verdict": {
"inputGranularity": "PREMISE",
"validationGranularity": "PREMISE",
"geocodeGranularity": "PREMISE",
"addressComplete": true,
"possibleNextAction": "ACCEPT"
}
Если в адресе имеются отсутствующие, неразрешенные или непредвиденные компоненты, полю присваивается значение false
.
См. addressComplete в разделах «Вердикт» и «Адрес» справочного руководства. |
Качество адреса
Ряд возможных полей указывает либо на проблемы с компонентами адреса, либо на необходимость их корректировки, например, на предполагаемые или отсутствующие компоненты адреса. Например, следующее свойство verdict
указывает на адрес с неподтверждёнными компонентами и отсутствующим полем addressComplete
:
"verdict": {
"inputGranularity": "PREMISE",
"validationGranularity": "OTHER",
"geocodeGranularity": "OTHER",
"hasUnconfirmedComponents": true,
"hasInferredComponents": true
}
См. Вердикт в справочнике. |
Свойства address
и addressComponent
Свойство address
обеспечивает форматирование обработанного адреса, предоставленного в запросе, а также сводки адреса на уровне компонентов, включая неправильно написанные части адреса, замененные неверные части и предполагаемые отсутствующие части.
См. Address в справочнике. |
Свойство addressComponent
— это подкомпонент address
, содержащий подробный список элементов (или компонентов) адреса, обработанных API проверки адреса. API идентифицирует каждое поле компонента по его имени, типу и уровню подтверждения.
См. addressComponent в справочном руководстве. |
Свойство geocode
Свойство geocode
указывает геокодированное местоположение, связанное с введённым адресом. Это свойство содержит сведения о самом местоположении, например, его идентификатор.
См. раздел Geocode в справочном руководстве. |
Свойство metadata
Это свойство может не заполняться для каждого адреса, обрабатываемого API проверки адресов, но указывает, относится ли адрес к типу жилого, делового или почтового ящика.
См. раздел API проверки адресов и справочную информацию по Address metadata . |
Свойство uspsData
Это свойство предоставляет полезную информацию о почтовых адресах в США. Однако его полное заполнение не гарантируется для каждого адреса, проверенного сервисом. Поэтому не следует полагаться на это свойство как на единственный способ проверки адресов. Вместо этого проверьте также verdict
и address
.
См. Обработка адресов в США и ссылку на UspsData . |