API de direcciones - Autocompletado por embudo a partir de un código postal (RESTful)

Support DQE
Support DQE
  • Actualización
Autocompletado por embudo - RESTful

Autocompletado de direcciones en tres pasos mediante la API RESTful. funnelpostcode encuentra las ciudades coincidentes a partir de un código postal o un nombre de ciudad; funneladdress devuelve las calles dentro de la ciudad seleccionada; funnelcompl obtiene las opciones de sub-edificio tras la selección de la calle.

Formato de mayúsculas de salida - El formato de mayúsculas sigue la norma postal del país correspondiente.

Selección de ciudad (funnelpostcode)

Primer paso del proceso de embudo. Devuelve las ciudades y códigos postales coincidentes a partir de un código postal parcial o un nombre de ciudad. El CityId de cada resultado alimenta el siguiente paso: funneladdress.

Solicitud

funnelpostcode admite tanto GET como POST.

{SERVER_ADDRESS}, {VERSION} y {LICENCE_CODE} son proporcionados por DQE al crear la cuenta. Póngase en contacto con su gestor de cuenta de DQE para obtener estas credenciales.
GEThttps://{SERVER_ADDRESS}/{VERSION}/funnelpostcode/?PostalCode={POSTAL_CODE}&Country={COUNTRY_CODE}&Licence={LICENCE_CODE}

Ejemplo de cURL

Francia - Búsqueda por código postal

curl "https://{SERVER_ADDRESS}/v1/funnelpostcode/?PostalCode=75008&Country=FRA&Licence={LICENCE_CODE}"
POSThttps://{SERVER_ADDRESS}/{VERSION}/funnelpostcode/

Envíe todos los parámetros en el cuerpo de la solicitud utilizando Content-Type: application/x-www-form-urlencoded. La dirección del servidor permanece en la URL.

Ejemplo de cURL

curl -X POST "https://{SERVER_ADDRESS}/v1/funnelpostcode/" \ -H "Content-Type: application/x-www-form-urlencoded" \ -d "PostalCode=75008" \ -d "Country=FRA" \ -d "Licence={LICENCE_CODE}"

Parámetros

Parámetro Valor Descripción Obl. / Opc.
Licence {LICENCE_CODE} Su clave de licencia DQE o token OAuth2. Póngase en contacto con soporte si todavía no dispone de una. Obligatorio
PostalCode {POSTAL_CODE} Código postal o nombre de ciudad introducido. Obligatorio
Country {COUNTRY_CODE} Código de país ISO 3166-1 alfa-3 para delimitar la búsqueda de direcciones. Ejemplo: FRA o GBR. Obligatorio
Extended Y or N Permite buscar desde solo 2 caracteres en el código postal introducido. Valor predeterminado: N. Opcional
Limit {NB} Número máximo de sugerencias de localidad devueltas. Opcional
Filter {FILTER} Controla el tipo de resultados devueltos. Si se omite, la respuesta incluye códigos postales, calles (cuando estén disponibles) y entradas CEDEX.
1 = solo código postal y CEDEX · 2 = código postal y calle (sin CEDEX) · 3 = solo código postal · 4 = una sugerencia por código postal y ciudad (solo Malasia)
Opcional
Langue {LANGUAGE} Filtra los resultados por idioma/escritura. JPN: JP = kanji · JK = katakana · EN = romanizado. HKG: EN · ZH. THA: EN · TH. Consulte la guía de idiomas. Opcional
Francia y Bélgica: los códigos postales pueden corresponder a varios municipios (agrupación fragmentada). funnelpostcode devolverá una fila de resultado por municipio.

Respuesta

En caso de éxito, la API devuelve un objeto JSON que contiene un contador Found y un array PostalCodes.

Orden de los resultados - Los resultados se clasifican por relevancia, no por orden ascendente de código postal. Cuando se introduce un código postal exacto que corresponde a una única ciudad, se devuelve un único resultado. Cuando se introduce un código postal parcial con Extended=Y, los resultados se ordenan por densidad de población (la ciudad más grande primero). Cuando se introduce un nombre de ciudad (exacto o parcial), las coincidencias exactas aparecen primero, seguidas de una clasificación por relevancia de palabras clave.

Nivel superior

Clave Descripción Tipo
Found Número de objetos de sugerencia de localidad devueltos. Integer
PostalCodes Array de objetos de sugerencia de localidad. Array

Objeto de sugerencia de localidad - PostalCodes[n]

Clave Descripción Francia Internacional
PostalCode Código postal de la dirección. String (10) String (10)
City Nombre de la ciudad. String (38) String (50)
Hamlet Localidad denominada o aldea (Francia) o campo equivalente a nivel de distrito (internacional). La disponibilidad varía según el país. String (38) String (50)
SpecialDistribution Indicador CEDEX: 1 = dirección CEDEX, 0 = no CEDEX. String (1) String (1)
Country Código de país ISO 3166-1 alfa-3. String (3) String (3)
AdministrativeArea Provincia o nivel administrativo equivalente. Empty String (50)
StateLabel Etiqueta ISO del estado o región administrativa (p. ej. ISHIKAWA para Japón). Not available String (50)
StateCode Código ISO del estado o región administrativa (p. ej. 17 para Japón). String (50) String (50)
SubLocality Sublocalidad (distrito, municipio, suburbio). Empty String (50)
CityId Identificador único de ciudad (código INSEE para Francia). String (20) String (20)
Latitude Geocoordenadas de la localidad encontrada. No disponible para todos los países - consulte la cobertura. String String
Longitude Geocoordenadas de la localidad encontrada. No disponible para todos los países - consulte la cobertura. String String

Objeto Informations - PostalCodes[n].Informations

Solo se rellena cuando el código postal corresponde directamente a una dirección específica (p. ej. códigos CEDEX en Francia). En caso contrario, todos los campos están vacíos.

Clave Descripción Francia Internacional
AdditionalAddress Línea de dirección adicional. Empty String (50)
AdditionalAddress_2 Segunda línea de dirección adicional. Empty String (50)
StreetNumberList Lista de números de calle válidos separados por punto y coma para la calle encontrada. Contiene siempre todos los números cuando está presente; vacío cuando no hay StreetId. String (1024) String (1024)
StreetType Tipo de vía (p. ej., RUE, AVENUE, BOULEVARD). No se devuelve en todos los conjuntos de datos internacionales. String (20) String (20)
Street Nombre de la calle. String (38) String (150)
Suburb Suburbio o distrito. Empty String (50)
StreetId Identificador único de calle. Solo se rellena cuando el código postal corresponde a una calle específica. Cuando está presente, puede omitir funneladdress y pasar StreetId directamente a funnelcompl. String (20) String (20)
Company Nombre de la empresa. String (38) String (38)

Ejemplo de respuesta

Ejemplo de respuesta - Francia (75008 París)
{ "Found": 1, "PostalCodes": [ { "PostalCode": "75008", "City": "PARIS", "Hamlet": "", "SpecialDistribution": "0", "Country": "FRA", "AdministrativeArea": "", "StateLabel": "", "StateCode": "*", "SubLocality": "", "CityId": "75108", "Latitude": "48.8775112171854", "Longitude": "2.31760169076841", "Informations": { "AdditionalAddress": "", "AdditionalAddress_2": "", "StreetNumberList": "", "StreetType": "", "Street": "", "Suburb": "", "StreetId": "", "Company": "" } } ] }
Ejemplo de respuesta - Japón (108-6390)
{ "Found": 3, "PostalCodes": [ { "PostalCode": "108-6390", "City": "ミナトク", "Hamlet": "", "SpecialDistribution": "0", "Country": "JPN", "AdministrativeArea": "ミナトク", "StateLabel": "トウキヨウト", "StateCode": "13", "SubLocality": "", "CityId": "402574_1086390", "Latitude": "", "Longitude": "", "Informations": { "AdditionalAddress": "", "AdditionalAddress_2": "", "StreetNumberList": "", "StreetType": "", "Street": "", "Suburb": "", "StreetId": "", "Company": "" } } ] }

Errores

El endpoint RESTful devuelve un cuerpo de error JSON estructurado con un código de estado HTTP, un mensaje y un identificador de error.

HTTP Tipo de error Cuerpo de la respuesta
400 Falta un parámetro obligatorio
{"status":400,"message":"Missing parameters","details":"PostalCode,Licence","error":"bad request"}
400 El código de país no es un ISO 3166-1 alfa-3 válido
{"status":400,"message":"Country doesn't exist","details":"INVALID","error":"bad request"}
401 Número de licencia incorrecto o no autorizado
{"status":401,"message":"Your licence is not allowed to cover this functionnality","details":"WRONG","error":"unauthorized_client"}

Probar la API

Haga clic en el botón de abajo para probar este endpoint en directo desde su navegador.

Abrir consola

Búsqueda de dirección (funneladdress)

Segundo paso del proceso de embudo. A partir de un CityId obtenido de funnelpostcode y un nombre de calle parcial, devuelve las calles coincidentes. El StreetId de cada resultado alimenta el paso final: funnelcompl.

Solicitud

funneladdress admite tanto GET como POST.

{SERVER_ADDRESS}, {VERSION} y {LICENCE_CODE} son proporcionados por DQE al crear la cuenta. {CITY_ID} se obtiene de la respuesta de funnelpostcode cuando el usuario selecciona una ciudad. Póngase en contacto con su gestor de cuenta de DQE para obtener estas credenciales.
La dirección introducida debe estar codificada en URL - p. ej. l'églisel%27%C3%A9glise.
GEThttps://{SERVER_ADDRESS}/{VERSION}/funneladdress/?CityId={CITY_ID}&Country={COUNTRY_CODE}&Street={INPUT}&Licence={LICENCE_CODE}

Ejemplo de cURL

Francia - CityId del paso anterior de funnelpostcode

curl "https://{SERVER_ADDRESS}/v1/funneladdress/?CityId=75108&Country=FRA&Street=bienfaisance&Licence={LICENCE_CODE}"
POSThttps://{SERVER_ADDRESS}/{VERSION}/funneladdress/

Envíe todos los parámetros en el cuerpo de la solicitud utilizando Content-Type: application/x-www-form-urlencoded. La dirección del servidor permanece en la URL.

Ejemplo de cURL

curl -X POST "https://{SERVER_ADDRESS}/v1/funneladdress/" \ -H "Content-Type: application/x-www-form-urlencoded" \ -d "CityId=75108" \ -d "Country=FRA" \ -d "Street=bienfaisance" \ -d "Licence={LICENCE_CODE}"

Parámetros

Parámetro Valor Descripción Obl. / Opc.
Licence {LICENCE_CODE} Su clave de licencia DQE o token OAuth2. Póngase en contacto con soporte si todavía no dispone de una. Obligatorio
CityId {CITY_ID} Identificador de ciudad devuelto por funnelpostcode en el campo CityId. Delimita la búsqueda de calles a la ciudad seleccionada. Obligatorio
Country {COUNTRY_CODE} Código de país ISO 3166-1 alfa-3 para delimitar la búsqueda de direcciones. Ejemplo: FRA o GBR. Obligatorio
Street {INPUT} Nombre de calle parcial introducido por el usuario. Obligatorio
Limit {NB} Número máximo de sugerencias de dirección devueltas. Opcional
Length {LENGTH} Longitud máxima de caracteres para los campos de dirección devueltos. Se aplica únicamente a direcciones en caracteres latinos. Valor predeterminado: 38. Mínimo recomendado: 32. Opcional
Langue {LANGUAGE} Filtra los resultados por idioma/escritura. JPN: JP kanji · JK katakana · EN romanizado. HKG: EN · ZH. THA: EN · TH. Consulte la guía de idiomas. Opcional
Version 1.1 Cuando se establece en 1.1, rellena el campo Hamlet para poblaciones pequeñas. Sin él, los nombres de las poblaciones pequeñas aparecen entre corchetes en el campo City. Opcional

Respuesta

En caso de éxito, la respuesta es un objeto JSON con dos claves de nivel superior: Found (entero) y Addresses (array de objetos de sugerencia de dirección).

Nivel superior

Clave Descripción Tipo
Found Número de objetos de sugerencia de dirección devueltos. Integer
Addresses Array de objetos de sugerencia de dirección. Array

Objeto de sugerencia de dirección - Addresses[n]

Clave Descripción Francia Internacional
PostalCode Código postal de la dirección. String (10) String (10)
City Nombre de la ciudad. String (38) String (50)
Hamlet Localidad denominada o aldea (Francia) o campo equivalente a nivel de distrito (internacional). Se rellena cuando se establece Version=1.1. La disponibilidad varía según el país. String (38) String (50)
SpecialDistribution Indicador CEDEX: 1 = dirección CEDEX, 0 = no CEDEX. String (1) String (1)
Country Código de país ISO 3166-1 alfa-3. String (3) String (3)
StateCode Código ISO del estado o región administrativa (p. ej. 17 para Japón). Empty String (50)
StateLabel Etiqueta ISO del estado o región administrativa (p. ej. ISHIKAWA para Japón). Not available String (50)
AdministrativeArea Provincia o nivel administrativo equivalente. Empty String (50)
SubLocality Sublocalidad (distrito, municipio, suburbio). Empty String (50)
Suburb Suburbio o distrito. Empty String (50)
CityId Identificador único de ciudad (código INSEE para Francia). String (20) String (20)
Input Forma normalizada de la calle introducida. Puede diferir de la entrada original en mayúsculas/minúsculas o formato. String (255) String (255)
Label Cadena lista para mostrar en una lista desplegable de autocompletado. Los números entre [corchetes] indican que el número no se encontró en los datos de referencia. Consulte Campo Label - solo visualización para notas de uso.
Utilice Label únicamente para rellenar la lista desplegable de sugerencias, nunca para almacenar la dirección. Ver guía de integración →
Empty String (255)
Street Nombre de la calle. String (38) String (150)
StreetId Identificador único de calle. Se utiliza como entrada para funnelcompl. String (20) String (20)
StreetType Tipo de vía (p. ej., RUE, AVENUE, BOULEVARD). No se devuelve en todos los conjuntos de datos internacionales. String (20) String (20)
StreetNumber Número de calle completo, incluyendo cualquier complemento (bis, ter, etc.). String (38) String (38)
StreetNumberOnly Solo el número de calle, sin ningún complemento (bis, ter, etc.). Empty String (4)
StreetNumberList Lista de números de calle válidos separados por punto y coma. Contiene todos los números cuando no se introdujo ningún número o cuando el número introducido no se encontró; en caso contrario, contiene únicamente el número encontrado. String (1024) String (1024)
StreetNumberListCount Cuando el número consultado no se encuentra o falta, devuelve el número total de números de calle válidos para esta calle. Empty String
IsValidStreetNumber Indicador de validez del número de calle. 1 si el número existe en los datos de referencia, 0 en caso contrario. Devuelve una cadena vacía para algunas direcciones internacionales donde la validación a nivel de número no está disponible. Not available Integer
AdditionalAddress Información adicional de la dirección (nombre del edificio, planta, etc.). La disponibilidad varía según el país - consulte la guía de integración. Empty String (50)
Company Nombre de la empresa asociada a la dirección. String (38) String (38)
Latitude Geocoordenadas de la dirección encontrada. No disponible para todos los países - consulte la cobertura. String String
Longitude Geocoordenadas de la dirección encontrada. No disponible para todos los países - consulte la cobertura. String String

Se rellena cuando Version=1.1

¿Calle seleccionada sin número? Ver guía de integración →

Ejemplo de respuesta

Ejemplo de respuesta - Francia (Rue de la Bienfaisance, 75008 París)
{ "Found": 1, "Addresses": [ { "PostalCode": "75008", "City": "PARIS", "Hamlet": "", "SpecialDistribution": "0", "Country": "FRA", "StateCode": "", "SubLocality": "", "CityId": "75108", "Input": "bienfaisance", "Label": "", "AdditionalAddress": "", "StreetNumber": "", "StreetType": "RUE", "Street": "RUE DE LA BIENFAISANCE", "StreetId": "1454259", "IsValidStreetNumber": "", "StreetNumberListCount":"", "StreetNumberList": "1;2;3;3B;4;6;7;7B;8;9;10;12;12B;15;16;17;19;20;21;23;25;26;27;28;29;30;32;33;34;35;36;37;39;40;41;42;43;44;45;46;47;48;50;51;52;52B;54", "StreetNumberOnly": "", "StateLabel": "", "AdministrativeArea": "", "Suburb": "", "Company": "", "Latitude": "48.876526", "Longitude": "2.316451" } ] }
Ejemplo de respuesta - Japón (三田, 108-6390)

Japón - CityId 402573_1086390, Langue=JP (Kanji)

{ "Found": 1, "Addresses": [ { "PostalCode": "108-6390", "City": "港区", "Hamlet": "", "SpecialDistribution": "", "Country": "JPN", "StateCode": "13", "SubLocality": "", "CityId": "402573", "Input": "三田", "Label": "〒108-6390 東京都港区三田", "AdditionalAddress": "", "StreetNumber": "", "StreetType": "", "Street": "三田", "StreetId": "558203", "IsValidStreetNumber": 1, "StreetNumberListCount":0, "StreetNumberList": "", "StreetNumberOnly": "", "StateLabel": "東京都", "AdministrativeArea": "港区", "Suburb": "", "Company": "", "Latitude": "", "Longitude": "" } ] }

Errores

El endpoint RESTful devuelve un cuerpo de error JSON estructurado con un código de estado HTTP, un mensaje y un identificador de error.

HTTP Tipo de error Cuerpo de la respuesta
400 Falta un parámetro obligatorio
{"status":400,"message":"Missing parameters","details":"CityID","error":"bad request"}
400 El código de país no es un ISO 3166-1 alfa-3 válido
{"status":400,"message":"Country doesn't exist","details":"JPNde","error":"bad request"}
401 Número de licencia incorrecto o no autorizado
{"status":401,"message":"Your licence is not allowed to cover this functionnality","details":"WRONG LICENSE","error":"unauthorized_client"}

Probar la API

Haga clic en el botón de abajo para probar este endpoint en directo desde su navegador.

Abrir consola

Edificio (funnelcompl)

Paso final del proceso de embudo. A partir de un StreetId y un StreetNumber obtenidos de funneladdress, devuelve una lista de sugerencias de sub-edificio: nombres de edificios, números de planta, nombres de empresas, números de apartamento.

Solicitud

funnelcompl admite tanto GET como POST.

{SERVER_ADDRESS}, {VERSION} y {LICENCE_CODE} son proporcionados por DQE al crear la cuenta. {STREET_ID} se obtiene del campo StreetId de la respuesta de funneladdress cuando el usuario selecciona una calle. Póngase en contacto con su gestor de cuenta de DQE para obtener estas credenciales.
GEThttps://{SERVER_ADDRESS}/{VERSION}/funnelcompl/?StreetId={STREET_ID}&Country={COUNTRY_CODE}&StreetNumber={NUMBER}&Licence={LICENCE_CODE}

Ejemplo de cURL

Francia - StreetId del paso anterior de funneladdress

curl "https://{SERVER_ADDRESS}/v1/funnelcompl/?StreetId=2408474&Country=FRA&StreetNumber=1&Licence={LICENCE_CODE}"

Cuando el usuario no ha introducido un número de calle, pase un parámetro StreetNumber vacío: &StreetNumber=

POSThttps://{SERVER_ADDRESS}/{VERSION}/funnelcompl/

Envíe todos los parámetros en el cuerpo de la solicitud utilizando Content-Type: application/x-www-form-urlencoded. La dirección del servidor permanece en la URL.

Ejemplo de cURL

curl -X POST "https://{SERVER_ADDRESS}/v1/funnelcompl/" \ -H "Content-Type: application/x-www-form-urlencoded" \ -d "StreetId=0751080070" \ -d "Country=FRA" \ -d "StreetNumber=17" \ -d "Licence={LICENCE_CODE}"

Parámetros

Parámetro Valor Descripción Obl. / Opc.
Licence {LICENCE_CODE} Su clave de licencia DQE o token OAuth2. Póngase en contacto con soporte si todavía no dispone de una. Obligatorio
StreetId {STREET_ID} Identificador único de calle devuelto por funneladdress en el campo StreetId. Obligatorio
Country {COUNTRY_CODE} Código de país ISO 3166-1 alfa-3 para delimitar la búsqueda de direcciones. Ejemplo: FRA o GBR. Obligatorio
StreetNumber {NUMBER} Número de calle seleccionado por el usuario - corresponde al campo StreetNumber de la respuesta de funneladdress. Obligatorio
Length {LENGTH} Longitud máxima de caracteres para los campos de dirección devueltos. Se aplica únicamente a direcciones en caracteres latinos. Un valor demasiado bajo puede truncar los resultados. Valor predeterminado: 38. Mínimo recomendado: 32. Opcional

Respuesta

En caso de éxito, la respuesta es un objeto JSON con tres claves de nivel superior: Found, AdditionalAddresses (array) y un objeto de geocoordenadas Geolocalisation.

Que no haya datos de sub-edificio no es un error. Ver guía de integración →

Nivel superior

Clave Descripción Tipo
Found Número de objetos de complemento de dirección devueltos. Integer
AdditionalAddresses Array de objetos de complemento de dirección. Array
Geolocalisation Geocoordenadas de la dirección encontrada. Vacío cuando no está disponible para este tipo de dirección. Object

Objeto AdditionalAddress - AdditionalAddresses[n]

Clave Descripción Francia Internacional
AdditionalAddress Etiqueta de complemento de edificio o apartamento. String (38) String (150)
PostalCode Código postal asociado al complemento. String String

Geocoordenadas - Geolocalisation

Clave Descripción Francia Internacional
Latitude Geocoordenadas de la dirección encontrada. No disponible para todos los países - consulte la cobertura. String String
Longitude Geocoordenadas de la dirección encontrada. No disponible para todos los países - consulte la cobertura. String String

Ejemplo de respuesta

Ejemplo de respuesta - Francia (1 Rue de la Louisiane, 31200 Toulouse)
{ "Found": 4, "AdditionalAddresses": [ { "AdditionalAddress": "BATIMENT A RESIDENCE ALLEE DES CEDRES", "PostalCode": "" }, { "AdditionalAddress": "BATIMENT B RESIDENCE ALLEE DES CEDRES", "PostalCode": "" }, { "AdditionalAddress": "BATIMENT C RESIDENCE ALLEE DES CEDRES", "PostalCode": "" }, { "AdditionalAddress": "BATIMENT D RESIDENCE ALLEE DES CEDRES", "PostalCode": "" } ], "Geolocalisation": { "Latitude": "", "Longitude": "" } }

Errores

El endpoint RESTful devuelve un cuerpo de error JSON estructurado con un código de estado HTTP, un mensaje y un identificador de error.

HTTP Tipo de error Cuerpo de la respuesta
400 Falta un parámetro obligatorio
{"status":400,"message":"Missing parameters","details":"StreetId","error":"bad request"}
400 El código de país no es un ISO 3166-1 alfa-3 válido
{"status":400,"message":"Country doesn't exist","details":"JPNde","error":"bad request"}
401 Número de licencia incorrecto o no autorizado
{"status":401,"message":"Your licence is not allowed to cover this functionnality","details":"WRONG LICENSE","error":"unauthorized_client"}

Probar la API

Haga clic en el botón de abajo para probar este endpoint en directo desde su navegador.

Abrir consola

Ver también

Relacionada con

¿Fue útil este artículo?

Usuarios a los que les pareció útil: 0 de 0