Géocodage batch

Cette page n’est plus maintenue depuis la version 2022 de Geoconcept Web. Pour accéder à la documentation à jour de ce web service, veuillez suivre ce lien.

Principe

La requête comprend une adresse ou plusieurs adresses en entrée, le service retourne, pour chaque item, une ou plusieurs réponses possibles (s’il y a ambiguïté), en incluant l’adresse reconnue, la position, le score de géocodage, le type de géocodage.

Ce service de géocodage interroge la table de référence paramétrée grâce à l’interface Administration de Geoconcept Web.

Disponibilité

Ce web service est disponible en permanence avec Geoconcept Web et une table de référence.

Changement de version

Les versions précédente du web service sont conservées dans Geoconcept Web pour assurer la compatibilité avec les développements antérieurs. Il est recommandé d’utiliser la version la plus récente.

Changements avec la v2

  • Suppression du paramètre "projection", remplacé par "srs"
  • Suppression du paramètre "geocodeScore", remplacé par "score"
  • Suppression des paramètres "projection", "srs" et "maxResponses" dans le bloc "initialAddress"
  • Le paramètre "postalCode" est renommé "postCode"

V2

Paramètres / propriétés

En entrée

paramètre description optionnel défaut

address (geocodeInitialAddress)

Les adresses à géocoder

non

streetMinScore

la valeur de ce paramètre varie, comme pour le score, entre 0 et 100 (Cf. description complète dans le web service du géocodage)

oui

srs

projection (code EPSG comme epsg:4326 ou wgs84)

oui

Sans projection, le résultat est en projection native de l’index de géocodage, habituellement wgs84 .

maxResponses

nombre maximum de résultats d’adresses dans la réponse

oui

Adresses (geocodeInitialAddress)

paramètre description optionnel défaut

addressLine

adresse comprenant numéro, indice de répétition, type de voie et libellé de voie.

oui *

city

ville

oui *

region

État, Comté, …

oui

countryCode

pays sur 2 ou 3 lettres (code ISO 3166-1) par exemple "fr" ou "fra",

oui

postCode

code postal

oui *

(*) Au moins l’un des trois paramètres postCode, addressLine et city doit être renseigné.

En sortie

paramètre type min/max description

geocodedAddress (ou geocodedAddresses en JSON / JSON-P)

geocodedAddress (ou array en JSON / JSON-P)

0/illimité

Adresses géocodées

initialAddress

geocodeInitialAddress

0/1

Adresse initiale

Adresses géocodées (geocodedAddress)

paramètre type min/max description

addressLine

string

0/1

rue trouvée et le cas échéant le numéro

city

string

0/1

ville trouvée

region

string

0/1

État, Comté, … trouvée, varie en fonction des pays, peut également être vide

countryCode

string

1/1

cf. description du paramètre en entrée

postCode

string

0/1

code postal trouvé

secondaryZone

string

0/1

zone qui dépend de l’index de géocodage, habituellement en France il s’agit du code IRIS

score

double

1/1

note du géocodage de 0 à 100, avec 100 pour une correspondance parfaite

geocodeType

int

1/1

type de géocodage : - ville = 1 - rue = 2 - rue amélioré = 3 - numéro de rue = 4 - non géocodé = 0

x

double

1/1

coordonnées X

y

double

1/1

coordonnées Y

place (ou places en JSON / JSON-P)

string (ou array en JSON / JSON-P)

0/illimité

liste des attributs. Valeur des attributs de l’adresse trouvée, en relation avec placeTypes (par exemple ["751010206","930005Y001XCHE"]). Varie en fonction du référentiel utilisé.

placeType (ou placeTypes en JSON / JSON-P)

string (ou array en JSON / JSON-P)

0/illimité

liste des types d’attributs (par exemple ["IRIS","FANTOIR"]). Varie en fonction du référentiel utilisé.

streetNumber

string

0/1

numéro de rue

streetWayType

string

0/1

type de rue (avenue, street, etc )

streetWayName

string

0/1

nom de la rue

streetWay

string

0/1

nom complet de la rue

Adresse initiale (initialAddress)

paramètre type min/max description

addressLine

string

0/1

rue trouvée et le cas échéant le numéro

city

string

0/1

ville trouvée

region

string

0/1

État, Comté, … trouvée, varie en fonction des pays, peut également être vide

countryCode

string

1/1

cf. description du paramètre en entrée

postCode

string

0/1

code postal trouvé

SOAP

WSDL

http://<server>/<webapp>/api/ws/geocodeService?wsdl

Requête

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:sch="http://geoconcept.com/gc/schemas">
   <soapenv:Header/>
   <soapenv:Body>
      <sch:batchGeocodeV2>
         <!--Optional:-->
         <addresses>
            <!--Zero or more repetitions:-->
            <address>
               <!--Optional:-->
               <addressLine>23, rue de la gare</addressLine>
               <!--Optional:-->
               <city>Saint-Herblain</city>
               <!--Optional:-->
               <region></region>
               <!--Optional:-->
               <countryCode>FR</countryCode>
               <!--Optional:-->
               <postCode>44800</postCode>
            </address>
            <address>
               <!--Optional:-->
               <addressLine>32 Route de Pornic</addressLine>
               <!--Optional:-->
               <city>Bouguenais</city>
               <!--Optional:-->
               <region></region>
               <!--Optional:-->
               <countryCode>FR</countryCode>
               <!--Optional:-->
               <postCode>44340</postCode>
            </address>
            <address>
               <!--Optional:-->
               <addressLine>5, Avenue Victor Hugo</addressLine>
               <!--Optional:-->
               <city>Sainte-Luce-sur-Loire</city>
               <!--Optional:-->
               <region></region>
               <!--Optional:-->
               <countryCode>FR</countryCode>
               <!--Optional:-->
               <postCode>44980</postCode>
            </address>
            <streetMinScore></streetMinScore>
            <!--Optional:-->
            <srs></srs>
            <maxResponses>2</maxResponses>
         </addresses>
      </sch:batchGeocodeV2>
   </soapenv:Body>
</soapenv:Envelope>

Réponse

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
   <soap:Body>
      <ns2:batchGeocodeV2Response xmlns:ns2="http://geoconcept.com/gc/schemas">
         <BatchGeocodeResult>
            <status>OK</status>
            <result>
               <status>OK</status>
               <geocodedAddress>
                  <addressLine>23 RUE DE LA GARE</addressLine>
                  <city>SAINT-HERBLAIN</city>
                  <countryCode>FR</countryCode>
                  <postCode>44800</postCode>
                  <srs>epsg:4326</srs>
                  <secondaryZone>441620701</secondaryZone>
                  <score>100.0</score>
                  <geocodeType>4</geocodeType>
                  <x>-1.656851</x>
                  <y>47.21028</y>
                  <places>
                     <place>441620701</place>
                     <place>441620701_010</place>
                     <place>4401621080</place>
                     <place>44162</place>
                  </places>
                  <placeTypes>
                     <placeType>IRIS</placeType>
                     <placeType>ILOT</placeType>
                     <placeType>FANTOIR</placeType>
                     <placeType>INSEE</placeType>
                  </placeTypes>
                  <streetNumber>23</streetNumber>
                  <streetWayType>RUE</streetWayType>
                  <streetWayName>DE LA GARE</streetWayName>
                  <streetWay>RUE DE LA GARE</streetWay>
               </geocodedAddress>
               <initialAddress>
                  <addressLine>23, rue de la gare</addressLine>
                  <city>Saint-Herblain</city>
                  <region/>
                  <countryCode>FR</countryCode>
                  <postCode>44800</postCode>
               </initialAddress>
            </result>
            <result>
               <status>OK</status>
               <geocodedAddress>
                  <addressLine>ROUTE DE PORNIC</addressLine>
                  <city>BOUGUENAIS</city>
                  <countryCode>FR</countryCode>
                  <postCode>44340</postCode>
                  <srs>epsg:4326</srs>
                  <secondaryZone>440200106</secondaryZone>
                  <score>100.0</score>
                  <geocodeType>2</geocodeType>
                  <x>-1.581521</x>
                  <y>47.189556</y>
                  <places>
                     <place>440200106</place>
                     <place>440200106_038</place>
                     <place>4400202800</place>
                     <place>44020</place>
                  </places>
                  <placeTypes>
                     <placeType>IRIS</placeType>
                     <placeType>ILOT</placeType>
                     <placeType>FANTOIR</placeType>
                     <placeType>INSEE</placeType>
                  </placeTypes>
                  <streetNumber/>
                  <streetWayType>ROUTE</streetWayType>
                  <streetWayName>DE PORNIC</streetWayName>
                  <streetWay>ROUTE DE PORNIC</streetWay>
               </geocodedAddress>
               <initialAddress>
                  <addressLine>32 Route de Pornic</addressLine>
                  <city>Bouguenais</city>
                  <region/>
                  <countryCode>FR</countryCode>
                  <postCode>44340</postCode>
               </initialAddress>
            </result>
            <result>
               <status>OK</status>
               <geocodedAddress>
                  <addressLine/>
                  <city>SAINTE-LUCE-SUR-LOIRE</city>
                  <countryCode>FR</countryCode>
                  <postCode>44980</postCode>
                  <srs>epsg:4326</srs>
                  <secondaryZone>44172</secondaryZone>
                  <score>100.0</score>
                  <geocodeType>1</geocodeType>
                  <x>-1.48669</x>
                  <y>47.24961</y>
                  <places>
                     <place>44172</place>
                  </places>
                  <placeTypes>
                     <placeType>IRIS</placeType>
                  </placeTypes>
                  <streetNumber/>
                  <streetWayType/>
                  <streetWayName/>
                  <streetWay/>
               </geocodedAddress>
               <initialAddress>
                  <addressLine>5, Avenue Victor Hugo</addressLine>
                  <city>Sainte-Luce-sur-Loire</city>
                  <region/>
                  <countryCode>FR</countryCode>
                  <postCode>44980</postCode>
               </initialAddress>
            </result>
         </BatchGeocodeResult>
      </ns2:batchGeocodeV2Response>
   </soap:Body>
</soap:Envelope>
REST (POST)

Requête

Requête 

http://<server>/<webapp>/api/lbs/geocode/batch/v2.xml

Data (XML) 

<?xml version="1.0" encoding="UTF-8"?>
<batchGeocodeRequestV2>
  <address>
    <addressLine>23, rue de la gare</addressLine>
    <city>Saint-Herblain</city>
    <region></region>
    <countryCode>FR</countryCode>
    <postCode>44800</postCode>
  </address>
  <address>
    <addressLine>32 Route de Pornic</addressLine>
    <city>Bouguenais</city>
    <region></region>
    <countryCode>FR</countryCode>
    <postCode>44340</postCode>
  </address>
    <address>
    <addressLine>5, Avenue Victor Hugo</addressLine>
    <city>Sainte-Luce-sur-Loire</city>
    <region></region>
    <countryCode>FR</countryCode>
    <postCode>44980</postCode>
  </address>
  <streetMinScore></streetMinScore>
  <srs>epsg:4326</srs>
  <maxResponses>2</maxResponses>
</batchGeocodeRequestV2>

Réponse

La réponse est toujours encodée en UTF-8.

Format XML 

<batchGeocodeResultV2>
   <status>OK</status>
   <result>
      <status>OK</status>
      <geocodedAddress>
         <addressLine>23 RUE DE LA GARE</addressLine>
         <city>SAINT-HERBLAIN</city>
         <countryCode>FR</countryCode>
         <postCode>44800</postCode>
         <srs>epsg:4326</srs>
         <secondaryZone>441620701</secondaryZone>
         <score>100.0</score>
         <geocodeType>4</geocodeType>
         <x>-1.656851</x>
         <y>47.21028</y>
         <places>
            <place>441620701</place>
            <place>441620701_010</place>
            <place>4401621080</place>
            <place>44162</place>
         </places>
         <placeTypes>
            <placeType>IRIS</placeType>
            <placeType>ILOT</placeType>
            <placeType>FANTOIR</placeType>
            <placeType>INSEE</placeType>
         </placeTypes>
         <streetNumber>23</streetNumber>
         <streetWayType>RUE</streetWayType>
         <streetWayName>DE LA GARE</streetWayName>
         <streetWay>RUE DE LA GARE</streetWay>
      </geocodedAddress>
      <initialAddress>
         <addressLine>23, rue de la gare</addressLine>
         <city>Saint-Herblain</city>
         <region/>
         <countryCode>FR</countryCode>
         <postCode>44800</postCode>
      </initialAddress>
   </result>
   <result>
      <status>OK</status>
      <geocodedAddress>
         <addressLine>ROUTE DE PORNIC</addressLine>
         <city>BOUGUENAIS</city>
         <countryCode>FR</countryCode>
         <postCode>44340</postCode>
         <srs>epsg:4326</srs>
         <secondaryZone>440200106</secondaryZone>
         <score>100.0</score>
         <geocodeType>2</geocodeType>
         <x>-1.581521</x>
         <y>47.189556</y>
         <places>
            <place>440200106</place>
            <place>440200106_038</place>
            <place>4400202800</place>
            <place>44020</place>
         </places>
         <placeTypes>
            <placeType>IRIS</placeType>
            <placeType>ILOT</placeType>
            <placeType>FANTOIR</placeType>
            <placeType>INSEE</placeType>
         </placeTypes>
         <streetNumber/>
         <streetWayType>ROUTE</streetWayType>
         <streetWayName>DE PORNIC</streetWayName>
         <streetWay>ROUTE DE PORNIC</streetWay>
      </geocodedAddress>
      <initialAddress>
         <addressLine>32 Route de Pornic</addressLine>
         <city>Bouguenais</city>
         <region/>
         <countryCode>FR</countryCode>
         <postCode>44340</postCode>
      </initialAddress>
   </result>
   <result>
      <status>OK</status>
      <geocodedAddress>
         <addressLine/>
         <city>SAINTE-LUCE-SUR-LOIRE</city>
         <countryCode>FR</countryCode>
         <postCode>44980</postCode>
         <srs>epsg:4326</srs>
         <secondaryZone>44172</secondaryZone>
         <score>100.0</score>
         <geocodeType>1</geocodeType>
         <x>-1.48669</x>
         <y>47.24961</y>
         <places>
            <place>44172</place>
         </places>
         <placeTypes>
            <placeType>IRIS</placeType>
         </placeTypes>
         <streetNumber/>
         <streetWayType/>
         <streetWayName/>
         <streetWay/>
      </geocodedAddress>
      <initialAddress>
         <addressLine>5, Avenue Victor Hugo</addressLine>
         <city>Sainte-Luce-sur-Loire</city>
         <region/>
         <countryCode>FR</countryCode>
         <postCode>44980</postCode>
      </initialAddress>
   </result>
</batchGeocodeResultV2>

Requête

Requête JSON 

http://<server>/<webapp>/api/lbs/geocode/batch/v2.json

JSON 

{
  "addresses" :
  [
  {
    "addressLine" : "23, rue de la gare",
    "city" : "Saint-Herblain",
    "region" : "",
    "countryCode" : "FR",
    "postCode" : "44800"
  },
  {
    "addressLine" : "32 Route de Pornic",
    "city" : "Bouguenais",
    "region" : "",
    "countryCode" : "FR",
    "postCode" : "44340"
  },
  {
    "addressLine" : "5, Avenue Victor Hugo",
    "city" : "Sainte-Luce-sur-Loire",
    "region" : "",
    "countryCode" : "FR",
    "postCode" : "44980"
  }
 ],
  "streetMinScore" : 80 ,
  "srs" : "epsg:4326",
  "maxResponses" : 2
}

Réponse

La réponse est toujours encodée en UTF-8.

Format JSON 

{
   "message": null,
   "status": "OK",
   "results":    [
            {
         "message": null,
         "status": "OK",
         "geocodedAddresses": [         {
            "addressLine": "23 RUE DE LA GARE",
            "city": "SAINT-HERBLAIN",
            "countryCode": "FR",
            "postCode": "44800",
            "srs": "epsg:4326",
            "secondaryZone": "",
            "score": 100,
            "geocodeType": 4,
            "x": -1.65801,
            "y": 47.20903,
            "places": [""],
            "placeTypes": ["IRIS"],
            "streetNumber": "23",
            "streetWayType": "RUE",
            "streetWayName": "DE LA GARE",
            "streetWay": "RUE DE LA GARE"
         }],
         "initialAddress":          {
            "addressLine": "23, rue de la gare",
            "city": "Saint-Herblain",
            "region": "",
            "countryCode": "FR",
            "postCode": "44800"
         }
      },
            {
         "message": null,
         "status": "OK",
         "geocodedAddresses": [         {
            "addressLine": "32 ROUTE DE PORNIC",
            "city": "BOUGUENAIS",
            "countryCode": "FR",
            "postCode": "44340",
            "srs": "epsg:4326",
            "secondaryZone": "",
            "score": 100,
            "geocodeType": 3,
            "x": -1.58862,
            "y": 47.18768,
            "places": [""],
            "placeTypes": ["IRIS"],
            "streetNumber": "32",
            "streetWayType": "ROUTE",
            "streetWayName": "DE PORNIC",
            "streetWay": "ROUTE DE PORNIC"
         }],
         "initialAddress":          {
            "addressLine": "32 Route de Pornic",
            "city": "Bouguenais",
            "region": "",
            "countryCode": "FR",
            "postCode": "44340"
         }
      },
            {
         "message": null,
         "status": "OK",
         "geocodedAddresses": [         {
            "addressLine": "",
            "city": "SAINTE-LUCE-SUR-LOIRE",
            "countryCode": "FR",
            "postCode": "44980",
            "srs": "epsg:4326",
            "secondaryZone": "",
            "score": 100,
            "geocodeType": 1,
            "x": -1.48669,
            "y": 47.24961,
            "places": [""],
            "placeTypes": ["IRIS"],
            "streetNumber": "",
            "streetWayType": "",
            "streetWayName": "",
            "streetWay": ""
         }],
         "initialAddress":          {
            "addressLine": "5, Avenue Victor Hugo",
            "city": "Sainte-Luce-sur-Loire",
            "region": "",
            "countryCode": "FR",
            "postCode": "44980"
         }
      }
   ]
}

Retours possibles

Cas d’une adresse trouvée (batchGeocodeResponse/batchGeocodeResult/status est OK) 

<ns2:batchGeocodeV2Response xmlns:ns2="http://geoconcept.com/gc/schemas">
 <BatchGeocodeResult>
    <status>OK</status>
    <result>
       <status>OK</status>
       <geocodedAddress>
          <addressLine>23 RUE DE LA GARE</addressLine>
          <city>SAINT-HERBLAIN</city>
          <countryCode>FR</countryCode>
          <postCode>44800</postCode>
          <srs>epsg:4326</srs>
          <secondaryZone>441620701</secondaryZone>
          <score>100.0</score>
          <geocodeType>4</geocodeType>
          <x>-1.656851</x>
          <y>47.21028</y>
          <places>
             <place>441620701</place>
             <place>441620701_010</place>
             <place>4401621080</place>
             <place>44162</place>
          </places>
          <placeTypes>
             <placeType>IRIS</placeType>
             <placeType>ILOT</placeType>
             <placeType>FANTOIR</placeType>
             <placeType>INSEE</placeType>
          </placeTypes>
          <streetNumber>23</streetNumber>
          <streetWayType>RUE</streetWayType>
          <streetWayName>DE LA GARE</streetWayName>
          <streetWay>RUE DE LA GARE</streetWay>
       </geocodedAddress>
       <initialAddress>
          <addressLine>23, rue de la gare</addressLine>
          <city>Saint-Herblain</city>
          <region/>
          <countryCode>FR</countryCode>
          <postCode>44800</postCode>
       </initialAddress>
    </result>
    <result>
        [...]
    </result>
 </BatchGeocodeResult>
</ns2:batchGeocodeV2Response>

Cas d’une adresse non trouvée (batchGeocodeResponse/BatchGeocodeResult/status est OK et pas de geocodedAddress) 

<BatchGeocodeResult>
<status>OK</status>
<result>
   <status>OK</status>
   <initialAddress>
      <addressLine/>
      <city>#hdkvnjsdvn</city>
      <region/>
      <countryCode/>
      <postCode/>
   </initialAddress>
</result>
</BatchGeocodeResult>

Cas d’une requête ayant une erreur XML ou ne respectant pas le WSDL ⇒ erreur avec faultstring qui contient la description 

<soap:Fault>
 <faultcode xmlns:ns1="geoconcept.com">ns1:8</faultcode>
 <faultstring>Message part {http://geoconcept.com/gc/schemas}batchGeocodeV2fff was not recognized.  (Does it exist in service WSDL?)</faultstring>
</soap:Fault>

Cas d’une requête avec un système de reprojection inexistant ⇒ erreur avec faultstring qui contient la description 

<soap:Fault>
        <faultcode xmlns:ns1="geoconcept.com">ns1:8</faultcode>
        <faultstring>Geocode failed Failed to process geocoding task Unsupported coordinate system 'epsg:432666666'</faultstring>
</soap:Fault>

V1

Paramètres / propriétés

En entrée

paramètre description optionnel défaut

address (geocodeInitialAddress)

Les adresses à géocoder

non

streetMinScore

la valeur de ce paramètre varie, comme pour le score, entre 0 et 100 (Cf. description complète dans le web service du géocodage)

oui

srs

projection (code EPSG comme epsg:4326 ou wgs84)

oui

Sans projection, le résultat est en projection native de l’index de géocodage, habituellement wgs84 .

maxResponses

nombre maximum de résultats d’adresses dans la réponse

oui

Adresses (geocodeInitialAddress)

paramètre description optionnel défaut

addressLine

adresse comprenant numéro, indice de répétition, type de voie et libellé de voie.

oui *

city

ville

oui *

region

État, Comté, …

oui

countryCode

pays sur deux lettres (code ISO 3166-1 ou ccTLD) par exemple "fr",

oui

postalCode

code postal

oui *

projection

déprécié

oui

srs

déprécié

oui

maxResponses

déprécié

oui

(*) Au moins l’un des trois paramètres postalCode, addressLine et city doit être renseigné.

En sortie

paramètre type min/max description

geocodedAddress (ou geocodedAddresses en JSON / JSON-P)

geocodedAddress (ou array en JSON / JSON-P)

0/illimité

Adresses géocodées

initialAddress

geocodeInitialAddress

0/1

Adresse initiale

Adresses géocodées (geocodedAddress)

paramètre type min/max description

secondaryZone

string

0/1

zone qui dépend de l’index de géocodage, habituellement en France il s’agit du code IRIS

score

double

1/1

note du géocodage de 0 à 100, avec 100 pour une correspondance parfaite

geocodeType

int

1/1

type de géocodage : - ville = 1 - rue = 2 - rue amélioré = 3 - numéro de rue = 4 - non géocodé = 0

x

double

1/1

coordonnées X

y

double

1/1

coordonnées Y

place (ou places en JSON / JSON-P)

string (ou array en JSON / JSON-P)

0/illimité

liste des attributs. Valeur des attributs de l’adresse trouvée, en relation avec placeTypes (par exemple ["751010206","930005Y001XCHE"]). Dépend du référentiel utilisé.

placeType (ou placeTypes en JSON / JSON-P)

string (ou array en JSON / JSON-P)

0/illimité

liste des types d’attributs (par exemple ["IRIS","FANTOIR"]) .Dépend de la table de référence utilisée.

streetNumber

string

0/1

numéro de rue

streetWayType

string

0/1

type de rue (avenue, street, etc )

streetWayName

string

0/1

nom de la rue

streetWay

string

0/1

nom complet de la rue

Adresse initiale (initialAddress)

paramètre type min/max description

addressLine

string

0/1

rue trouvée et le cas échéant le numéro

city

string

0/1

ville trouvée

region

string

0/1

État, Comté, … trouvée, varie en fonction des pays, peut également être vide

countryCode

string

1/1

cf. description du paramètre en entrée

postalCode

string

0/1

code postal trouvé

SOAP

WSDL

http://<server>/<webapp>/api/ws/geocodeService?wsdl

Requête

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:sch="http://geoconcept.com/gc/schemas">
   <soapenv:Header/>
   <soapenv:Body>
      <sch:batchGeocode>
         <!--Optional:-->
         <addresses>
            <!--Zero or more repetitions:-->
            <address>
               <!--Optional:-->
               <addressLine>23, rue de la gare</addressLine>
               <!--Optional:-->
               <city>Saint-Herblain</city>
               <!--Optional:-->
               <region></region>
               <!--Optional:-->
               <countryCode>FR</countryCode>
               <!--Optional:-->
               <postalCode>44800</postalCode>
               <!--Optional:-->
               <projection></projection>
               <!--Optional:-->
               <srs>epsg:4326</srs>
               <!--Optional:-->
               <maxResponses></maxResponses>
            </address>
            <address>
               <!--Optional:-->
               <addressLine>32 Route de Pornic</addressLine>
               <!--Optional:-->
               <city>Bouguenais</city>
               <!--Optional:-->
               <region></region>
               <!--Optional:-->
               <countryCode>FR</countryCode>
               <!--Optional:-->
               <postalCode>44340</postalCode>
               <!--Optional:-->
               <projection></projection>
               <!--Optional:-->
               <srs>epsg:4326</srs>
               <!--Optional:-->
               <maxResponses></maxResponses>
            </address>
            <address>
               <!--Optional:-->
               <addressLine>5, Avenue Victor Hugo</addressLine>
               <!--Optional:-->
               <city>Sainte-Luce-sur-Loire</city>
               <!--Optional:-->
               <region></region>
               <!--Optional:-->
               <countryCode>FR</countryCode>
               <!--Optional:-->
               <postalCode>44980</postalCode>
               <!--Optional:-->
               <projection></projection>
               <!--Optional:-->
               <srs>epsg:4326</srs>
               <!--Optional:-->
               <maxResponses></maxResponses>
            </address>
            <streetMinScore></streetMinScore>
            <!--Optional:-->
            <srs>epsg:4326</srs>
            <maxResponses>2</maxResponses>
         </addresses>
      </sch:batchGeocode>
   </soapenv:Body>
</soapenv:Envelope>

Réponse

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
   <soap:Body>
      <ns2:batchGeocodeResponse xmlns:ns2="http://geoconcept.com/gc/schemas">
         <BatchGeocodeResult>
            <status>OK</status>
            <result>
               <status>OK</status>
               <geocodedAddress>
                  <addressLine>23 RUE DE LA GARE</addressLine>
                  <city>SAINT-HERBLAIN</city>
                  <countryCode>FR</countryCode>
                  <postalCode>44800</postalCode>
                  <projection>epsg:4326</projection>
                  <srs>epsg:4326</srs>
                  <secondaryZone>441620701</secondaryZone>
                  <geocodeScore>20.0</geocodeScore>
                  <score>100.0</score>
                  <geocodeType>4</geocodeType>
                  <x>-1.6568714</x>
                  <y>47.2102641</y>
                  <places>
                     <place>441620701</place>
                  </places>
                  <placeTypes>
                     <placeType>IRIS</placeType>
                  </placeTypes>
                  <streetNumber>23</streetNumber>
                  <streetWayType>RUE</streetWayType>
                  <streetWayName>DE LA GARE</streetWayName>
                  <streetWay>RUE DE LA GARE</streetWay>
               </geocodedAddress>
               <initialAddress>
                  <addressLine>23, rue de la gare</addressLine>
                  <city>Saint-Herblain</city>
                  <region/>
                  <countryCode>FR</countryCode>
                  <postalCode>44800</postalCode>
                  <projection/>
                  <srs>epsg:4326</srs>
                  <maxResponses/>
               </initialAddress>
            </result>
            <result>
               <status>OK</status>
               <geocodedAddress>
                  <addressLine>ROUTE DE PORNIC</addressLine>
                  <city>BOUGUENAIS</city>
                  <countryCode>FR</countryCode>
                  <postalCode>44340</postalCode>
                  <projection>epsg:4326</projection>
                  <srs>epsg:4326</srs>
                  <secondaryZone>440200106</secondaryZone>
                  <geocodeScore>20.0</geocodeScore>
                  <score>100.0</score>
                  <geocodeType>2</geocodeType>
                  <x>-1.5799805</x>
                  <y>47.1901969</y>
                  <places>
                     <place>440200106</place>
                  </places>
                  <placeTypes>
                     <placeType>IRIS</placeType>
                  </placeTypes>
                  <streetNumber/>
                  <streetWayType>ROUTE</streetWayType>
                  <streetWayName>DE PORNIC</streetWayName>
                  <streetWay>ROUTE DE PORNIC</streetWay>
               </geocodedAddress>
               <initialAddress>
                  <addressLine>32 Route de Pornic</addressLine>
                  <city>Bouguenais</city>
                  <region/>
                  <countryCode>FR</countryCode>
                  <postalCode>44340</postalCode>
                  <projection/>
                  <srs>epsg:4326</srs>
                  <maxResponses/>
               </initialAddress>
            </result>
            <result>
               <status>OK</status>
               <geocodedAddress>
                  <addressLine/>
                  <city>SAINTE-LUCE-SUR-LOIRE</city>
                  <countryCode>FR</countryCode>
                  <postalCode>44980</postalCode>
                  <projection>epsg:4326</projection>
                  <srs>epsg:4326</srs>
                  <secondaryZone>441720105</secondaryZone>
                  <geocodeScore>20.0</geocodeScore>
                  <score>100.0</score>
                  <geocodeType>1</geocodeType>
                  <x>-1.4787216</x>
                  <y>47.2565577</y>
                  <places>
                     <place>441720105</place>
                  </places>
                  <placeTypes>
                     <placeType>IRIS</placeType>
                  </placeTypes>
                  <streetNumber/>
                  <streetWayType/>
                  <streetWayName/>
                  <streetWay/>
               </geocodedAddress>
               <initialAddress>
                  <addressLine>5, Avenue Victor Hugo</addressLine>
                  <city>Sainte-Luce-sur-Loire</city>
                  <region/>
                  <countryCode>FR</countryCode>
                  <postalCode>44980</postalCode>
                  <projection/>
                  <srs>epsg:4326</srs>
                  <maxResponses/>
               </initialAddress>
            </result>
         </BatchGeocodeResult>
      </ns2:batchGeocodeResponse>
   </soap:Body>
</soap:Envelope>
REST (POST)

Requête

Requête 

http://<server>/<webapp>/api/lbs/geocode/batch/v1.xml

Data (XML) 

<?xml version="1.0" encoding="UTF-8"?>
<batchGeocodeRequest>
  <address>
    <addressLine>23, rue de la gare</addressLine>
    <city>Saint-Herblain</city>
    <region></region>
    <countryCode>FR</countryCode>
    <postalCode>44800</postalCode>
    <projection></projection>
  </address>
  <address>
    <addressLine>32 Route de Pornic</addressLine>
    <city>Bouguenais</city>
    <region></region>
    <countryCode>FR</countryCode>
    <postalCode>44340</postalCode>
    <projection></projection>
  </address>
    <address>
    <addressLine>5, Avenue Victor Hugo</addressLine>
    <city>Sainte-Luce-sur-Loire</city>
    <region></region>
    <countryCode>FR</countryCode>
    <postalCode>44980</postalCode>
    <projection></projection>
  </address>
  <streetMinScore></streetMinScore>
  <srs>epsg:4326</srs>
  <maxResponses>2</maxResponses>
</batchGeocodeRequest>

Réponse

La réponse est toujours encodée en UTF-8.

Format XML 

<batchGeocodeResult>
   <status>OK</status>
   <result>
      <status>OK</status>
      <geocodedAddress>
         <addressLine>23 RUE DE LA GARE</addressLine>
         <city>SAINT-HERBLAIN</city>
         <countryCode>FR</countryCode>
         <postalCode>44800</postalCode>
         <projection>epsg:4326</projection>
         <srs>epsg:4326</srs>
         <secondaryZone>441620701</secondaryZone>
         <geocodeScore>20.0</geocodeScore>
         <score>100.0</score>
         <geocodeType>4</geocodeType>
         <x>-1.6568714</x>
         <y>47.2102641</y>
         <places>
            <place>441620701</place>
         </places>
         <placeTypes>
            <placeType>IRIS</placeType>
         </placeTypes>
         <streetNumber>23</streetNumber>
         <streetWayType>RUE</streetWayType>
         <streetWayName>DE LA GARE</streetWayName>
         <streetWay>RUE DE LA GARE</streetWay>
      </geocodedAddress>
      <initialAddress>
         <addressLine>23, rue de la gare</addressLine>
         <city>Saint-Herblain</city>
         <region/>
         <countryCode>FR</countryCode>
         <postalCode>44800</postalCode>
         <projection/>
      </initialAddress>
   </result>
   <result>
      <status>OK</status>
      <geocodedAddress>
         <addressLine>ROUTE DE PORNIC</addressLine>
         <city>BOUGUENAIS</city>
         <countryCode>FR</countryCode>
         <postalCode>44340</postalCode>
         <projection>epsg:4326</projection>
         <srs>epsg:4326</srs>
         <secondaryZone>440200106</secondaryZone>
         <geocodeScore>20.0</geocodeScore>
         <score>100.0</score>
         <geocodeType>2</geocodeType>
         <x>-1.5799805</x>
         <y>47.1901969</y>
         <places>
            <place>440200106</place>
         </places>
         <placeTypes>
            <placeType>IRIS</placeType>
         </placeTypes>
         <streetNumber/>
         <streetWayType>ROUTE</streetWayType>
         <streetWayName>DE PORNIC</streetWayName>
         <streetWay>ROUTE DE PORNIC</streetWay>
      </geocodedAddress>
      <initialAddress>
         <addressLine>32 Route de Pornic</addressLine>
         <city>Bouguenais</city>
         <region/>
         <countryCode>FR</countryCode>
         <postalCode>44340</postalCode>
         <projection/>
      </initialAddress>
   </result>
   <result>
      <status>OK</status>
      <geocodedAddress>
         <addressLine/>
         <city>SAINTE-LUCE-SUR-LOIRE</city>
         <countryCode>FR</countryCode>
         <postalCode>44980</postalCode>
         <projection>epsg:4326</projection>
         <srs>epsg:4326</srs>
         <secondaryZone>441720105</secondaryZone>
         <geocodeScore>20.0</geocodeScore>
         <score>100.0</score>
         <geocodeType>1</geocodeType>
         <x>-1.4787216</x>
         <y>47.2565577</y>
         <places>
            <place>441720105</place>
         </places>
         <placeTypes>
            <placeType>IRIS</placeType>
         </placeTypes>
         <streetNumber/>
         <streetWayType/>
         <streetWayName/>
         <streetWay/>
      </geocodedAddress>
      <initialAddress>
         <addressLine>5, Avenue Victor Hugo</addressLine>
         <city>Sainte-Luce-sur-Loire</city>
         <region/>
         <countryCode>FR</countryCode>
         <postalCode>44980</postalCode>
         <projection/>
      </initialAddress>
   </result>
</batchGeocodeResult>

Retours possibles

Cas d’une adresse trouvée (batchGeocodeResponse/batchGeocodeResult/status est OK) 

<ns2:batchGeocodeResponse xmlns:ns2="http://geoconcept.com/gc/schemas">
         <BatchGeocodeResult>
            <status>OK</status>
            <result>
               <status>OK</status>
               <geocodedAddress>
                  <addressLine>23 RUE DE LA GARE</addressLine>
                  <city>SAINT-HERBLAIN</city>
                  <countryCode>FR</countryCode>
                  <postalCode>44800</postalCode>
                  <projection>epsg:4326</projection>
                  <srs>epsg:4326</srs>
                  <secondaryZone>441620701</secondaryZone>
                  <geocodeScore>20.0</geocodeScore>
                  <score>100.0</score>
                  <geocodeType>4</geocodeType>
                  <x>-1.6568714</x>
                  <y>47.2102641</y>
                  <places>
                     <place>441620701</place>
                  </places>
                  <placeTypes>
                     <placeType>IRIS</placeType>
                  </placeTypes>
                  <streetNumber>23</streetNumber>
                  <streetWayType>RUE</streetWayType>
                  <streetWayName>DE LA GARE</streetWayName>
                  <streetWay>RUE DE LA GARE</streetWay>
               </geocodedAddress>
               <initialAddress>
                  <addressLine>23, rue de la gare</addressLine>
                  <city>Saint-Herblain</city>
                  <region/>
                  <countryCode>FR</countryCode>
                  <postalCode>44800</postalCode>
                  <projection/>
                  <srs>epsg:4326</srs>
                  <maxResponses/>
               </initialAddress>
            </result>
            <result>
            ...
            </result>
         </BatchGeocodeResult>
</ns2:batchGeocodeResponse>

Cas d’une adresse non trouvée (batchGeocodeResponse/BatchGeocodeResult/status est OK et pas de geocodedAddress) 

<ns2:batchGeocodeResponse xmlns:ns2="http://geoconcept.com/gc/schemas">
        <BatchGeocodeResult>
                <status>OK</status>
                <initialAddress>
                        <city>#hdkvnjsdvn</city>
                </initialAddress>
        </BatchGeocodeResult>
</ns2:batchGeocodeResponse>

Cas d’une requête ayant une erreur XML ou ne respectant pas le WSDL ⇒ erreur avec faultstring qui contient la description 

<soap:Fault>
        <faultcode xmlns:ns1="geoconcept.com">ns1:8</faultcode>
        <faultstring>Message part {http://geoconcept.com/gc/schemas}geocodeABCD was not recognized.  (Does it exist in service WSDL?)</faultstring>
</soap:Fault>

Cas d’une requête avec un système de reprojection inexistant ⇒ erreur avec faultstring qui contient la description 

<soap:Fault>
        <faultcode xmlns:ns1="geoconcept.com">ns1:8</faultcode>
        <faultstring>Geocode failed Failed to process geocoding task Unsupported coordinate system 'epsg:432666666'</faultstring>
</soap:Fault>

FAQ

Voir web service de géocodage.

1. Comment géocoder depuis la commande cURL ?

1.

Comment géocoder depuis la commande cURL ?

Il est nécessaire d’appeler un fichier d’adresse, ici au format json, avec la ligne de commande suivante :

curl -X POST "https://<server>/<webapp>/api/lbs/geocode/batch/v2.json" -H "Content-Type: application/json" --data-binary @"adresses.json"
Fichier : adresses.json
{
   "addresses":[
      {
         "addressLine":"200 Quai Charles de Gaulle",
         "city":"Lyon",
         "region":"",
         "countryCode":"FR",
         "postCode":"69006"
      },
      {
         "addressLine":"Bruno Kreisky Platz 1",
         "city":"Wien",
         "region":"",
         "countryCode":"AT",
         "postCode":"1220"
      },
      {
         "addressLine":"Route des Morillons 15",
         "city":"Genève",
         "region":"",
         "countryCode":"CH",
         "postCode":"1202"
      }
   ],
   "streetMinScore":80,
   "srs":"epsg:4326",
   "maxResponses":2
}