Client libraries
Some client libraries have been developed by us or by us or other developers. Additionally, you can go to the add-ons page to see how Gisgraphy can integrate with other software. If you have developed a library, or if you do something cool with Gisgraphy, please let us know, we would be glad to see it. The following libraries are currently available :
OpenGTS
Gisgraphy is supported by OpenGTS. That means that you can do geocoding on OpenGTS via Gisgraphy. (see documentation)
Traccar
Gisgraphy is supported by Traccar. That means that you can do geocoding on Traccar via Gisgraphy. (see documentation)
Graphhopper
Graphhopper is a popular routing engine. You can use Gisgraphy to do the geocoding and the autocompletion to have the GPS coordinates of places and addresses and then do routing with Graphhopper. A geocoder-converter converts Gisgraphy results into the expected format of Graphhopper.
In MS Excel
We provide an Excel plugin to use Gisgraphy geocoding from an Excel Sheet.
FME (safe.com)
it is possible to do Geocoding with Gisgraphy in FME. learn More
Java
Some Java clients (one per services) are available in Gisgraphy-utils package.
Javascript
Gisgraphy has a Javascript API and a leaflet plug-in.
Python
A client library is available. The code is available on the Github repository.
Some other contributions have also be done by the Gisgraphy community : https://github.com/JeffAMcGee/localcrawl/blob/master/gisgraphy.py. The Geocoder Python also include Gisgraphy as a provider.
Scala
A client library developed by third party is available. The code is available on the Github repository
Symfony (PHP framework)
A bundle for the PHP framework Symfony is available and developed by third party. The code is available on the Github repository
PHP
We suggest you use the REST client library available in the Github repository.
<? // dummy examples of Gisgraphy query. //geocoding $query = RestClient::get("http://services.gisgraphy.com/geocoding/geocode", array('format'=>'php', 'address'=>'1 avenue des champs elysees 75003 paris', 'country'=>'FR' ) ); //address parser $query = RestClient::get("http://services.gisgraphy.com/addressparser/parse", array('format'=>'php', 'address'=>'1 avenue des champs elysees 75003 paris', 'country'=>'FR' ) ); //street search $query = RestClient::get("http://services.gisgraphy.com/street/streetsearch", array('format'=>'php', 'lat'=>'48.8534088134765', 'lng'=>'2.34879994392395', 'name'=>'Champs' ) ); //fulltext $query = RestClient::get("http://services.gisgraphy.com/fulltext/fulltextsearch", array('format'=>'php', 'q'=>'paris' ) ); //geoloc-find nearby $query = RestClient::get("http://services.gisgraphy.com/geoloc/search", array('format'=>'php', 'lat'=>'48.8534088134765', 'lng'=>'2.34879994392395', 'placetype'=>'city') ); var_dump($query->getResponse()); var_dump($query->getResponseCode()); var_dump($query->getResponseContentType()); //Note that 'format'=>'php' is in case you want to do something like : //eval("\$str =$query->getResponse()");echo (print_r($str)); //feel free to use xml, json, any format you want. ?>