Quickstart#
Introduction#
Welcome to the GeoLib Service by Melissa. The GeoLib Service is able to access geopraphic data using Melissa Address Key (MAK) or the combination of Zip+4 and delivery point. The GeoLib service will pick the best input to generate the response for you. This allows you to obtain latitude and longitude geographic coordinates, census tract and block numbers, as well as county name and FIPS numbers.
System Requirements#
Melissa Updater (for data files)
Latest Linux containerization technology like Docker.
Getting Started#
To get started with the GeoLib Service you need to download the necessary data files, spin up a container instance and then send requests to this local instance.
Download the Data Files#
Use Melissa Updater to download the data files using the manifest named geocoder_data
.
.\MelissaUpdater manifest \
-p "geocoder_data" \
-r "latest" \
-l "{{license_key}}"
Spin up the Container Instance#
Once you have the proper data files downloaded, you need to set up a containerization service to host the GeoLib Service on your local machine, like Docker. It will help to have the following readily available:
Data files path
Desired web service listening port for the container
License key
Getting Credentials/Licensing#
The License Key is a software key required to use the service. You will receive your license key from your Melissa representative. If you don’t have a license key, contact the Melissa sales team at sales@melissa.com or 800-MELISSA ext. 3 (800-635-4772 ext. 3). Without a license key this service will not function.
Logging in to Docker#
You must first login to Melissa’s container repository in order to download the GeoLib Service image:
docker login hub.melissadata.net
You will be prompted for your username and password, this will be where you use the credentials you received from the Melissa sales team.
Example Docker Setup#
docker pull hub.melissadata.net/melissadata/dqt/geolibservice:latest
docker run -d --name geolibservice --restart unless-stopped \
-p {{port_number}}:6245
-e MD_LICENSE="{{license_key}}" \
-v "{{data_path}}":/data \
hub.melissadata.com/mdlibservices/geolibservice:latest
The first port section
-p {{port_number}}:
can be whatever port you want on your local machine, but the second port (6245
) should stay the same.-v "{{data_path}}":
is the location of the data files on your local machine or server.
What Can I Do?#
Once you have the GeoLib Service set up in a Docker instance, you can then access it like a Melissa Cloud API with GET or POST requests.
Check the Version#
GeoLib Service can check the version of the latest available release.
Endpoint#
Click here to go to the full endpoint documentation.
Try it Now#
curl -X GET \
"http://{{machine_name}}:{{port_number}}/V4/WEB/Geo/GetVersion" \
-H "accept: application/json"
Get Latitude and Longitude by MAK#
GeoLib Service can give you geopraphic information by using Melissa Address Key (MAK).
Endpoint#
/V4/WEB/Geo/DoGeoCode (by MAK)
Click here to go to the full endpoint documentation.
Try it Now#
curl -X GET \
"http://{{machine_name}}:{{port_number}}/V4/WEB/Geo/DoGeoCode?\
t=test\
&id={{license_key}}\
&mak=8008006245" \
-H "accept: application/json"
curl -X POST \
"http://{{machine_name}}:{{port_number}}/V4/WEB/Geo/DoGeoCode" \
-H "accept: application/json" \
-H "Content-Type: application/json" \
-d '{
"customerId": "{{license_key}}",
"transmissionReference": "test",
"records": [
{
"mak": "8008006245"
}
]
}'
Get Latitude and Longitude by Addresskey#
GeoLib Service can give geopraphic information by using Addresskey (Zip+4 and Delivery Point).
Endpoint#
/V4/WEB/Geo/DoGeoCode (by Addresskey)
Click here to go to the full endpoint documentation.
Try it Now#
curl -X GET \
"http://{{machine_name}}:{{port_number}}/V4/WEB/Geo/DoGeoCode?\
t=test\
&id={{license_key}}\
&zip=92688\
&plus4=2112\
&dp=82" \
-H "accept: application/json"
curl -X POST \
"http://{{machine_name}}:{{port_number}}/V4/WEB/Geo/DoGeoCode" \
-H "accept: application/json" \
-H "Content-Type: application/json" \
-d '{
"customerId": "{{license_key}}",
"transmissionReference": "test",
"records": [
{
"zip": "92688",
"plus4": "2112",
"deliverypointcode": "82"
}
]
}'