Senzing API Quickstart Guide
This article outlines connecting to the Senzing software repository for your Linux distribution, installing the Senzing API package and performing your first ingestion of data with supplied demo data.
TipThe intended and supported platforms are RedHat / CentOS and Debian based systems on x86_64 architectures. For full and up to date information see System Requirements
If you are a Python, Java, or REST API developer you might want to head over to our Jumpstart pages targeted for you.
Installing Senzing - Red Hat Based Distributions
Add and enable the Senzing repository to the currently configured list managed by yum. This step only needs to be completed once.
sudo yum install https://senzing-production-yum.s3.amazonaws.com/senzingrepo-1.0.0-1.x86_64.rpm
The latest version of Senzing can now be installed. As part of the installation you will be asked to accept the End User License Agreement (EULA), this can be viewed at https://senzing.com/end-user-license-agreement/
sudo yum install senzingapi
TipDuring the first installation of Senzing to a system you will also be prompted to accept the Senzing public key. Accepting the prompt imports the public key to verify future installations come from Senzing.
Retrieving key from https://senzing-production-yum.s3.amazonaws.com/senzing-production.key Importing GPG key 0xD99E309D: Userid : "Senzing, Inc. <firstname.lastname@example.org>" Fingerprint: e38c a28c f7ab 06d5 120b bda7 4f67 bf4d d99e 309d From : https://senzing-production-yum.s3.amazonaws.com/senzing-production.key Is this ok [y/N]: y
Installing Senzing - Debian Based Distributions
Add and enable the Senzing repository to the currently configured list managed by apt. These 4 steps only need to be completed once.
sudo apt install apt-transport-https
sudo apt install ./senzingrepo_1.0.0-1_amd64.deb
sudo apt update
InfoThe latest version of Senzing can now be installed. As part of the installation you will be asked to accept the End User License Agreement (EULA), this can be viewed at https://senzing.com/end-user-license-agreement/
sudo apt install senzingapi
Creating a Senzing Project
To begin using Senzing first create a project, this deploys an instance of Senzing into a specified path. The project folder must not already exist and will be created by the G2CreateProject.py utility.
Creating and using projects provides independent and isolated instances of Senzing.Projects can be upgraded separately from prior Senzing versions.
python3 /opt/senzing/g2/python/G2CreateProject.py ~/senzing
The above command creates the Senzing project in your current users home path in a new directory named senzing.
Now setup your environment variables for the project. The setupEnv script is project dependent and needs to be run whenever you are working with a Senzing project; for example between logging in and out of shell sessions.
Tip<project_path> refers to the path specified on the G2CreateProject.py command when creating a project. In the example above this is ~/senzing - which translates to a directory named senzing under your users home directory.
Updating Database with Senzing Configuration
The Senzing engine is configured with a JSON document, on a fresh install this document needs to be registered in the Senzing database. This only needs to happen once with a new project.
Loading the Sample Demo Data
You can now load some sample demo data.
python3 python/G2Loader.py -P
G2Loader with only the -P argument will perform a purge of any existing data in the Senzing repository database (an embedded SQLite database on a default deployment) and load the sample data identified within the python/demo/sample/project.csv file.
Using a Different Database
Senzing embeds SQLite to expedite getting started without having to deploy and configure a relational database for the Senzing repository. This article uses this embedded SQLite database, if you would like to use a different supported database please see the Technical Database section.
Now loading of the sample data has completed, how about exploring and reviewing the outcomes with some of the supplied python utilities? Follow these links for suggested next steps: