- Solicitud HTTP
- Cuerpo de la solicitud
- Cuerpo de la respuesta
- PostalAddress
- LanguageOptions
- ValidationResult
- Veredicto
- Nivel de detalle
- Dirección
- AddressComponent
- ComponentName
- Nivel de confirmación
- Geocodificar
- LatLng
- PlusCode
- Ventana gráfica
- AddressMetadata
- UspsData
- UspsAddress
Valida una dirección.
Solicitud HTTP
POST https://addressvalidation.googleapis.com/v1:validateAddress
La URL usa la sintaxis de la transcodificación gRPC.
Cuerpo de la solicitud
El cuerpo de la solicitud contiene datos con la siguiente estructura:
Representación JSON |
---|
{ "address": { object ( |
Campos | |
---|---|
address |
Obligatorio. La dirección que se está validando. Las direcciones sin formato deben enviarse a través de La longitud total de los campos de esta entrada no debe superar los 280 caracteres. Aquí encontrarás las regiones admitidas. El valor La API de Address Validation ignora los valores en |
previousResponseId |
Este campo debe estar vacío para la primera solicitud de validación de dirección. Si se necesitan más solicitudes para validar por completo una sola dirección (por ejemplo, si los cambios que realiza el usuario después de la validación inicial deben volver a validarse), cada solicitud de seguimiento debe propagar este campo con los |
enableUspsCass |
Habilita el modo compatible con USPS CASS. Esto afecta solo al campo Se recomienda usar un elemento |
languageOptions |
Opcional. Versión preliminar: Esta función se encuentra en versión preliminar (fase previa a la DG). Los productos y las funciones que se encuentran en la fase previa a la DG pueden tener asistencia limitada, y los cambios en estos productos y funciones podrían no ser compatibles con otras versiones de la fase previa a la DG. Las ofertas que se encuentran en la fase previa a la DG están cubiertas por las Condiciones Específicas del Servicio de Google Maps Platform. Para obtener más información, consulta las descripciones de la etapa de lanzamiento. Habilita la API de Address Validation para incluir información adicional en la respuesta. |
Cuerpo de la respuesta
Es la respuesta a una solicitud de validación de dirección.
Si se ejecuta correctamente, el cuerpo de la respuesta contendrá datos con la siguiente estructura:
Representación JSON |
---|
{
"result": {
object ( |
Campos | |
---|---|
result |
Es el resultado de la validación de la dirección. |
responseId |
El UUID que identifica esta respuesta. Si se debe volver a validar la dirección, este UUID debe acompañar a la solicitud nueva. |
PostalAddress
Representa una dirección postal, p. ej., para envíos postales o direcciones de pago. Si se proporciona una dirección postal, un servicio postal puede enviar artículos a las instalaciones, a la casilla postal o a otras ubicaciones similares. No está diseñado para modelar ubicaciones geográficas (caminos, pueblos, montañas).
En el uso común, una dirección se crearía a través de una entrada del usuario o a partir de la importación de datos existentes, según el tipo de proceso.
Consejos para ingresar o editar direcciones: - Usa un widget de dirección listo para la internacionalización, como https://github.com/google/libaddressinput). - Los usuarios no deben ver elementos de la IU para ingresar o editar campos fuera de países en los que se usa ese campo.
Para obtener orientación sobre cómo usar este esquema, consulta https://support.google.com/business/answer/6397478
Representación JSON |
---|
{ "revision": integer, "regionCode": string, "languageCode": string, "postalCode": string, "sortingCode": string, "administrativeArea": string, "locality": string, "sublocality": string, "addressLines": [ string ], "recipients": [ string ], "organization": string } |
Campos | |
---|---|
revision |
La revisión del esquema de |
regionCode |
Opcional. Código de región de CLDR para el país o la región de la dirección. Para obtener más información, consulta https://cldr.unicode.org/ y https://www.unicode.org/cldr/charts/30/supplemental/territory_information.html. Ejemplo: "CH" para Suiza. Si no se proporciona el código de región, se inferirá de la dirección. Para obtener el mejor rendimiento, te recomendamos que incluyas el código de región (si lo conoces). Tener regiones incoherentes o repetidas puede generar un rendimiento deficiente. Por ejemplo, si |
languageCode |
El código de idioma de la dirección de entrada se reserva para usos futuros y se ignora hoy. La API muestra la dirección en el idioma adecuado en el que se encuentra. |
postalCode |
Opcional. Código postal de la dirección. No todos los países usan o exigen la presencia de códigos postales, pero en los lugares donde se usan, es posible que activen una validación adicional con otras partes de la dirección (p. ej., validación del código postal o el estado en EE.UU.). |
sortingCode |
Opcional. Código de ordenamiento adicional específico para cada país. No se usa en la mayoría de las regiones. Cuando se usa, el valor es una string como "CEDEX", opcionalmente seguida de un número (p.ej., "CEDEX 7") o solo un número, que representa el "código del sector" (Jamaica), el "indicador del área de entrega" (Malaui) o el "indicador de oficina de correo" (p.ej., Costa de Marfil). |
administrativeArea |
Opcional. División administrativa más alta que se usa para las direcciones postales de un país o una región. Por ejemplo, puede ser un estado, una provincia, una óblast o una prefectura. Específicamente, en España se trata de la provincia y no la comunidad autónoma (p.ej., "Barcelona" y no "Cataluña"). Muchos países no usan un área administrativa en las direcciones postales. P. ej., en Suiza se dejaría vacío. |
locality |
Opcional. Por lo general, se refiere a la parte de la dirección que indica la ciudad o el pueblo. Ejemplos: ciudad de EE.UU., comuna de Italia o ciudad postal en el Reino Unido. En regiones del mundo donde las localidades no están bien definidas o no coinciden bien con esta estructura, deja la localidad vacía y usa addressLines. |
sublocality |
Opcional. Sublocalidad de la dirección. Por ejemplo, pueden ser barrios, vecindarios o distritos. |
addressLines[] |
Obligatorio. Líneas de dirección no estructuradas que describen los niveles más bajos de una dirección. |
recipients[] |
Evita configurar este campo. La API de Address Validation no la usa actualmente. Aunque en este momento la API no rechazará las solicitudes con este campo configurado, la información se descartará y no se mostrará en la respuesta. |
organization |
Evita configurar este campo. La API de Address Validation no la usa actualmente. Aunque en este momento la API no rechazará las solicitudes con este campo configurado, la información se descartará y no se mostrará en la respuesta. |
Opciones de idioma
Versión preliminar: Esta función se encuentra en versión preliminar (fase previa a la DG). Los productos y las funciones que se encuentran en la fase previa a la DG pueden tener asistencia limitada, y los cambios en estos productos y funciones podrían no ser compatibles con otras versiones de la fase previa a la DG. Las ofertas que se encuentran en la fase previa a la DG están cubiertas por las Condiciones Específicas del Servicio de Google Maps Platform. Para obtener más información, consulta las descripciones de la etapa de lanzamiento.
Habilita la API de Address Validation para incluir información adicional en la respuesta.
Representación JSON |
---|
{ "returnEnglishLatinAddress": boolean } |
Campos | |
---|---|
returnEnglishLatinAddress |
Vista previa: Muestra un |
ValidationResult
El resultado de la validación de una dirección.
Representación JSON |
---|
{ "verdict": { object ( |
Campos | |
---|---|
verdict |
Marcas de veredicto general |
address |
Incluye información sobre la dirección en sí, a diferencia del geocódigo. |
geocode |
Información sobre la ubicación y el lugar a los que se geocodifica la dirección. |
metadata |
Otra información relevante para la entrega. No se garantiza que |
uspsData |
Marcas de entrega adicionales proporcionadas por USPS Solo se proporciona en las regiones |
englishLatinAddress |
Versión preliminar: Esta función se encuentra en versión preliminar (fase previa a la DG). Los productos y las funciones que se encuentran en la fase previa a la DG pueden tener asistencia limitada, y los cambios en estos productos y funciones podrían no ser compatibles con otras versiones de la fase previa a la DG. Las ofertas que se encuentran en la fase previa a la DG están cubiertas por las Condiciones Específicas del Servicio de Google Maps Platform. Para obtener más información, consulta las descripciones de la etapa de lanzamiento. La dirección se tradujo al inglés. Si una parte de la dirección no tiene traducción al inglés, el servicio muestra esa parte en un idioma alternativo que utilice la escritura latina. Consulta aquí una explicación sobre cómo se selecciona el idioma alternativo. Si una parte de la dirección no tiene traducciones ni transliteraciones en un idioma que utiliza un alfabeto latino, el servicio muestra esa parte en el idioma local asociado a la dirección. Habilitaste este resultado con la marca Nota: Los campos |
Veredicto
Descripción general de alto nivel del resultado de la validación de dirección y el geocódigo
Representación JSON |
---|
{ "inputGranularity": enum ( |
Campos | |
---|---|
inputGranularity |
El nivel de detalle de la dirección input. Este es el resultado del análisis de la dirección de entrada y no proporciona ninguna señal de validación. Para conocer los indicadores de validación, consulta Por ejemplo, si la dirección de entrada incluye un número de departamento específico, |
validationGranularity |
El nivel de detalle con el que la API puede validar por completo la dirección. Por ejemplo, un El resultado de la validación por componente de la dirección se puede encontrar en |
geocodeGranularity |
Información sobre el nivel de detalle de En ocasiones, esto puede diferir de la |
addressComplete |
La dirección se considera completa si no hay tokens sin resolver ni componentes de dirección inesperados o faltantes. Consulta los campos |
hasUnconfirmedComponents |
Al menos un componente de la dirección no se puede categorizar o validar. Consulta |
hasInferredComponents |
Se infirió al menos un componente de la dirección (se agregó) que no estaba en la entrada. Consulta |
hasReplacedComponents |
Se reemplazó al menos un componente de la dirección. Para obtener más información, consulta |
Nivel de detalle
Los diversos niveles de nivel de detalle que puede tener una dirección o un geocódigo. Cuando se usan para indicar el nivel de detalle de una dirección, estos valores indican con qué nivel de detalle la dirección identifica un destino de correo postal. Por ejemplo, una dirección como “123 Main Street, Redwood City, CA, 94061” identifica un PREMISE
, mientras que algo como “Redwood City, CA, 94061” identifica un LOCALITY
. Sin embargo, si no podemos encontrar un geocódigo para “123 Main Street” en Redwood City, el geocódigo que se muestra podría tener un nivel de detalle de LOCALITY
, aunque la dirección sea más detallada.
Enumeradores | |
---|---|
GRANULARITY_UNSPECIFIED |
Valor predeterminado Este valor no se usa. |
SUB_PREMISE |
Resultado del nivel inferior del edificio, como un departamento |
PREMISE |
Resultado a nivel del edificio. |
PREMISE_PROXIMITY |
Un geocódigo que se aproxima a la ubicación de la dirección a nivel de edificio. |
BLOCK |
La dirección o el geocódigo indica un bloque. Solo se usa en regiones que tienen direccionamiento a nivel de bloque, como Japón. |
ROUTE |
El geocódigo o la dirección son detallados para la ruta, como una calle, carretera o autopista. |
OTHER |
Todos los demás niveles de detalle, que se agrupan en buckets porque no se pueden entregar |
Dirección
Detalles de la dirección posterior al procesamiento. El posprocesamiento incluye la corrección de las partes con errores ortográficos de la dirección, el reemplazo de las partes incorrectas y la inferencia de las partes faltantes.
Representación JSON |
---|
{ "formattedAddress": string, "postalAddress": { object ( |
Campos | |
---|---|
formattedAddress |
La dirección procesada con posterioridad, con el formato de una dirección de una sola línea según las reglas de formato de la región donde se encuentra la dirección. |
postalAddress |
La dirección después del procesamiento representada como una dirección postal. |
addressComponents[] |
Lista sin ordenar. Los componentes individuales de la dirección con formato y la corrección corregida, junto con la información de validación. Esto proporciona información sobre el estado de validación de los componentes individuales. Los componentes de dirección no están ordenados de manera particular. No hagas suposiciones sobre el orden de los componentes de dirección en la lista. |
missingComponentTypes[] |
Los tipos de componentes que se esperaban presentes en una dirección de correo con el formato correcto, pero que no se encontraron en la entrada Y no se pudieron inferir. Los componentes de este tipo no están presentes en |
unconfirmedComponentTypes[] |
Los tipos de componentes que están presentes en |
unresolvedTokens[] |
Cualquier token en la entrada que no se pudo resolver. Puede tratarse de una entrada que no se reconoció como una parte válida de una dirección (por ejemplo, en una entrada como "123235253253 Main St, San Francisco, CA, 94105"), los tokens sin resolver pueden tener el siguiente aspecto: |
AddressComponent
Representa un componente de dirección, como una calle, una ciudad o un estado.
Representación JSON |
---|
{ "componentName": { object ( |
Campos | |
---|---|
componentName |
Es el nombre de este componente. |
componentType |
El tipo del componente de la dirección. Consulta la Tabla 2: Tipos adicionales que muestra el servicio Places para obtener una lista de los tipos posibles. |
confirmationLevel |
Indica el nivel de certeza que tenemos de que el componente es correcto. |
inferred |
Indica que el componente no era parte de la entrada, pero lo inferimos para la ubicación de la dirección y creemos que debería proporcionarse para una dirección completa. |
spellCorrected |
Indica una corrección de una falta de ortografía en el nombre del componente. La API no siempre marca los cambios de una variante ortográfica a otra, como cuando cambia “centre” a “center”. Tampoco siempre se marcan los errores ortográficos comunes, como cuando se cambia "Amphitheater Pkwy" a "Amphitheatre Pkwy". |
replaced |
Indica que el nombre del componente se reemplazó por uno completamente diferente; por ejemplo, se reemplazó un código postal incorrecto por uno correcto para la dirección. Este no es un cambio estético, se cambió el componente de entrada por uno diferente. |
unexpected |
Indica un componente de dirección que no se espera que esté presente en una dirección postal de la región determinada. Lo retenemos solo porque era parte de la entrada. |
NombreComponente
Es un wrapper para el nombre del componente.
Representación JSON |
---|
{ "text": string, "languageCode": string } |
Campos | |
---|---|
text |
Es el texto del nombre. Por ejemplo, "Quinta Avenida" para el nombre de la calle o "1253" para el número de la calle. |
languageCode |
Es el código de idioma BCP-47. No estará presente si el nombre del componente no está asociado a un idioma, como un número de calle. |
Nivel de confirmación
Los diferentes valores posibles para los niveles de confirmación.
Enumeradores | |
---|---|
CONFIRMATION_LEVEL_UNSPECIFIED |
Valor predeterminado Este valor no se usa. |
CONFIRMED |
Pudimos verificar que este componente existe y tiene sentido en el contexto del resto de la dirección. |
UNCONFIRMED_BUT_PLAUSIBLE |
No se pudo confirmar este componente, pero es posible que exista. Por ejemplo, un número de calle dentro de un rango válido de números de una calle en la que no se conocen números de casa específicos. |
UNCONFIRMED_AND_SUSPICIOUS |
Este componente no se confirmó y es probable que sea incorrecto. Por ejemplo, un vecindario que no coincide con el resto de la dirección. |
Geocodificación
Contiene información sobre el lugar hasta el cual se geocodifica la entrada.
Representación JSON |
---|
{ "location": { object ( |
Campos | |
---|---|
location |
Es la ubicación geocodificada de la entrada. Es preferible usar IDs de lugar en lugar de direcciones, coordenadas de latitud y longitud o Plus Codes. El uso de coordenadas al trazar o calcular rutas en auto siempre hará que el punto se acople a la ruta más cercana a esas coordenadas. Es posible que esta no sea una ruta que lleve al destino de forma rápida o segura y que no esté cerca de un punto de acceso a la propiedad. A su vez, cuando una ubicación se somete a geocodificación inversa, no hay garantía de que la dirección devuelta coincida con la original. |
plusCode |
El Plus Code correspondiente al |
bounds |
Los límites del lugar geocodificado. |
featureSizeMeters |
Tamaño del lugar geocodificado en metros Esta es otra medida de la toscosidad de la ubicación geocodificada, pero en relación con el tamaño físico y no en el significado semántico. |
placeId |
El PlaceID del lugar al que se geocodifica esta entrada. Para obtener más información sobre los IDs de lugar, consulta este vínculo. |
placeTypes[] |
Los tipos de sitios a los que se geocodifica la entrada. Por ejemplo, |
LatLng
Es un objeto que representa un par de valores de latitud y longitud. Esto se expresa como un par de dobles para representar la latitud en grados y la longitud en grados. A menos que se especifique lo contrario, este objeto debe cumplir con el estándar WGS84. Los valores deben pertenecer a rangos normalizados.
Representación JSON |
---|
{ "latitude": number, "longitude": number } |
Campos | |
---|---|
latitude |
La latitud expresada en grados. Debe pertenecer al rango [-90.0, +90.0]. |
longitude |
La longitud expresada en grados. Debe pertenecer al rango [-180.0, +180.0]. |
Código Plus
El código Plus (http://plus.codes) es una referencia de ubicación con dos formatos: un código global que define un rectángulo de 14 × 14 m (1/8, 000 grados) o un rectángulo más pequeño, y un código compuesto que reemplaza el prefijo por una ubicación de referencia.
Representación JSON |
---|
{ "globalCode": string, "compoundCode": string } |
Campos | |
---|---|
globalCode |
Código global (completo) del lugar, como "9FWM33GV+HQ", que representa un área de 1/8000 por 1/8000 grados (~14 por 14 metros). |
compoundCode |
Código compuesto del lugar, como "33GV+HQ, Ramberg, Noruega", que contiene el sufijo del código global y reemplaza el prefijo con el nombre con formato de una entidad de referencia. |
Viewport
Un viewport de latitud y longitud, representado como dos puntos low
y high
opuestos en diagonal. Un viewport se considera una región cerrada, es decir, incluye su límite. Los límites de latitud deben variar entre -90 y 90 grados inclusive, y los límites de longitud deben variar entre -180 y 180 grados inclusive. Entre los diversos casos, se incluyen los siguientes:
Si
low
=high
, el viewport consta de ese único punto.Si
low.longitude
>high.longitude
, el intervalo de longitud se invierte (el viewport cruza la línea de longitud de 180 grados).Si
low.longitude
= -180 grados yhigh.longitude
= 180 grados, el viewport incluye todas las longitudes.Si
low.longitude
= 180 grados yhigh.longitude
= -180 grados, el rango de longitud estará vacío.Si
low.latitude
>high.latitude
, el rango de latitud está vacío.
Se deben propagar low
y high
, y el cuadro representado no puede estar vacío (como se especifica en las definiciones anteriores). Un viewport vacío generará un error.
Por ejemplo, este viewport abarca por completo la ciudad de Nueva York:
{ "bajo": { "latitud": 40.477398, "longitud": -74.259087 }, "alta": { "latitud": 40.91618, "longitud": -73.70018 } }
Representación JSON |
---|
{ "low": { object ( |
Campos | |
---|---|
low |
Obligatorio. Punto bajo del viewport |
high |
Obligatorio. El punto alto del viewport. |
Metadatos de la dirección
Los metadatos de la dirección. No se garantiza que metadata
se propague por completo para cada dirección que se envía a la API de Address Validation.
Representación JSON |
---|
{ "business": boolean, "poBox": boolean, "residential": boolean } |
Campos | |
---|---|
business |
Indica que esta es la dirección de una empresa. Si no se establece, indica que el valor es desconocido. |
poBox |
Indica la dirección de un apartado postal. Si no se establece, indica que el valor es desconocido. |
residential |
Indica que esta es la dirección de una residencia. Si no se establece, indica que el valor es desconocido. |
Datos de USP
Los datos de USPS para la dirección. No se garantiza que uspsData
se propague por completo en todas las direcciones de EE.UU. o de PR que se envían a la API de Address Validation. Si usas uspsData como la parte principal de la respuesta, se recomienda integrar los campos de dirección de copia de seguridad en la respuesta.
Representación JSON |
---|
{
"standardizedAddress": {
object ( |
Campos | |
---|---|
standardizedAddress |
Dirección estandarizada del USPS. |
deliveryPointCode |
Código de punto de entrega de 2 dígitos |
deliveryPointCheckDigit |
Es el dígito de control del punto de entrega. Este número se agrega al final del código de barras delivery_point_barcode para el correo electrónico analizado de forma mecánica. Si agregas todos los dígitos de delivery_point_barcode, deliveryPointCheckDigit, código postal y ZIP+4, deberías obtener un número divisible por 10. |
dpvConfirmation |
Son los valores posibles para la confirmación de DPV. Muestra un solo carácter.
|
dpvFootnote |
Las notas al pie de la validación del punto de entrega. Es posible que varias notas al pie estén juntas en la misma string.
|
dpvCmra |
Indica si la dirección es una CMRA (agencia de recepción de correo comercial), una empresa privada que recibe correo para los clientes. Muestra un solo carácter.
|
dpvVacant |
¿Está vacante este lugar? Muestra un solo carácter.
|
dpvNoStat |
¿Es una dirección sin estadísticas o una dirección activa? Ninguna dirección estadística es aquella que no se ocupa continuamente o que no brinda el servicio USPS. Muestra un solo carácter.
|
carrierRoute |
Es el código de ruta de la empresa de transporte. Es un código de cuatro caracteres que consta de un prefijo de una letra y un designador de ruta de tres dígitos. Prefijos:
|
carrierRouteIndicator |
Indicador de orden de tarifa de la ruta de la empresa de transporte. |
ewsNoMatch |
La dirección de entrega coincide, pero el archivo EWS indica que una coincidencia exacta estará disponible pronto. |
postOfficeCity |
Ciudad principal de la oficina de correos. |
postOfficeState |
Estado principal de la oficina de correos |
abbreviatedCity |
Ciudad abreviada. |
fipsCountyCode |
Código del condado del FIPS. |
county |
Nombre del condado. |
elotNumber |
Número de línea de viaje mejorada (eLOT). |
elotFlag |
eLOT ascendente/descendente (A/D). |
lacsLinkReturnCode |
Código de devolución de LACSLink. |
lacsLinkIndicator |
Indicador de vínculo de LACS. |
poBoxOnlyPostalCode |
Código postal solo para apartado postal. |
suitelinkFootnote |
Notas al pie que van desde hacer coincidir el registro de una calle o rascacielos con información de un paquete. Si el nombre de la empresa coincide, se muestra el número secundario.
|
pmbDesignator |
Designador de unidades de PMB (buzón privado). |
pmbNumber |
Número de PMB (buzón de correo privado); |
addressRecordType |
El tipo de registro de dirección que coincide con la dirección de entrada.
|
defaultAddress |
Indicador de que se encontró una dirección predeterminada, pero existen direcciones más específicas. |
errorMessage |
Mensaje de error para la recuperación de datos del USPS. Se propaga cuando se suspende el procesamiento de la USPS debido a la detección de direcciones creadas de forma artificial. Es posible que los campos de datos de USPS no se propaguen cuando se presente este error. |
cassProcessed |
Indicador de que se procesó la solicitud de CASS. |
Dirección de US
Representación del USPS de una dirección de EE.UU.
Representación JSON |
---|
{ "firstAddressLine": string, "firm": string, "secondAddressLine": string, "urbanization": string, "cityStateZipAddressLine": string, "city": string, "state": string, "zipCode": string, "zipCodeExtension": string } |
Campos | |
---|---|
firstAddressLine |
Primera línea de dirección. |
firm |
Nombre de la empresa. |
secondAddressLine |
Segunda línea de dirección. |
urbanization |
Nombre de la urbanización puertorriqueña. |
cityStateZipAddressLine |
Ciudad + estado + código postal. |
city |
Nombre de la ciudad. |
state |
Código de estado de 2 letras. |
zipCode |
Código postal, p.ej., 10009. |
zipCodeExtension |
Extensión de código postal de 4 dígitos, p.ej., 5023. |