Исправить адрес – примеры

В этом документе описан ряд реальных сценариев, в которых API проверки адресов предоставляет сигналы ответа, требующие от вашей системы исправления ошибок. Приведенные здесь примеры носят иллюстративный характер, но не являются исчерпывающими. Для получения дополнительной информации см. раздел «Обзор рабочего процесса» в разделе «Создание логики проверки» .

Распространенные примеры: исправить

В этом разделе описаны распространенные примеры, когда API проверки адресов выдает сигналы ответа, указывающие на более низкое качество информации об адресе.

Отсутствуют город и почтовый индекс.

В этом примере показана запись, содержащая только адрес улицы, без указания города или почтового индекса.

Введенный адрес Область
21 45 40-я улица США

Вердикт по делу об отсутствующих городе и почтовом индексе

Приведенный ниже пример подчеркивает важные сигналы, получаемые в результате ответа.

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

Эти сигналы указывают на невозможность доставки по указанному адресу, поэтому вы можете запросить информацию в 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"
}

API проверки адресов возвращает только страну (США) как CONFIRMED . Все остальные компоненты адреса возвращаются как UNCONFIRMED_BUT_PLAUSIBLE , с некоторыми важными пропусками данных, такими как населенный пункт и почтовый индекс.

Отсутствует номер дома

В этом примере показан отсутствующий номер дома.

Введенный адрес Область
Букингемский дворец, улица SW1W 9TQ, Лондон Великобритания
Вердикт по делу об отсутствии номера дома.
{
    "inputGranularity": "PREMISE_PROXIMITY",
    "validationGranularity": "ROUTE",
    "geocodeGranularity": "ROUTE"
}

Значение validationGranularity равно ROUTE , что указывает на совпадение с улицей, но недостаточно информации для определения местоположения. Кроме того, в результате проверки отсутствует свойство addressComplete , поэтому оно имеет значение false . Дальнейший запрос к объекту address выявляет отсутствие компонента следующего типа:

"missingComponentTypes": [
        "street_number"
      ]

Примеры крайних случаев: исправление

В некоторых ситуациях решение о том, исправлять, подтверждать или принимать адрес, зависит от конкретной бизнес-ситуации. Приведенные ниже примеры иллюстрируют сценарии, которые могут строго не подпадать под категорию исправления.

Номер дома не подтвержден

В этом сценарии API проверки адреса не может подтвердить указанный номер дома, но при этом указывает, что адрес является полным.

Введенный адрес Область
Букингемская дорога, 84, SW1W 9TQ, Лондон Великобритания

Вердикт по неподтвержденному номеру улицы

Приведенный ниже пример подчеркивает важные сигналы.

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

Стоит изучить сочетание проверки на уровне детализации, вплоть до приблизительного уровня объекта, с неподтвержденными компонентами. Запрос свойства addressComponents показывает следующий неподтвержденный componentType :

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

Здесь параметр confirmation_level для street_number установлен на UNCONFIRMED_BUT_PLAUSIBLE . Unconfirmed означает, что сервис не может сопоставить номер дома 84 с данными из своего набора данных, а plausible означает, что данные компонента могут быть действительными.

Отсутствующая подпосылка

В этом сценарии описывается адрес, в котором отсутствует только один компонент, например, номер квартиры или отдела. В противном случае API проверки адреса может полностью проверить адрес. Как и в случае отсутствия любого компонента адреса, значение addressComplete будет false , и, следовательно, результат проверки не будет отображаться при ручной проверке.

Для наглядности предположим, что клиент вводит действительный адрес офиса городского оценщика Сан-Франциско, но не указывает номер комнаты.

Введенный адрес Область
1. Доктор Карлтон Б. Гудлетт Плейс, Сан-Франциско, Калифорния 94102 США

Вердикт по делу об отсутствии субобъекта

В этом примере в вердикте не отображается свойство addressComplete , поэтому оно имеет false . Из-за этого вы знаете, что как минимум один элемент адреса является неожиданным, неразрешенным или отсутствует.

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

}

Запрос address выдает следующее:

"missingComponentTypes": [
        "subpremise"
      ]

При дальнейшем выяснении обстоятельств данные USPS предоставляют код dpvConfirmation , равный D , который также указывает на отсутствие дополнительного помещения.