The first release of this FinTech Studios forks brings no (intended) breaking changes over the upstream's 1.6.1 release and adds some new features, namely bulk requests. It does add some new required permissions that must be accepted on installation.
Bulk Requests
The Resolution API now exposes two new endpoints, POST /_zentity/resolution/_bulk
and POST /resolution/{entity_type}/_bulk
for submitting multiple resolution jobs in a single request. They follow a similar newline delimited JSON (NDJSON) request body to the Elasticsearch Bulk API, with repeating pairs of metadata and body objects on separate lines. The new bulk endpoints accept all the same request query parameters as the non-bulk versions and optionally allow overriding on a per-job basis in the metadata object.
Ex:
// Mixed entity type requests
POST /_zentity/resolution/_bulk?_score
{ "entity_type": "organization" }
{ "terms": ["Appl"] }
{ "entity_type": "location" }
{ "terms": ["New York"] }
{ "entity_type": "person" }
{ "terms": ["Jane Doe"] }
// Single entity type, w/ param override for just first job
POST /_zentity/resolution/organization/_bulk?_score
{ "_explanation": true, /*..*/ }
{ "terms": ["Appl"] }
{}
{ "terms": ["New York Nets"] }
{}
{ "terms": ["Google Inc"] }
Other Features
Configuration File
Zentity can now be configured (though not set up) at installation time with custom configuration via a zentity.yml
file in the standard ES_PATH_CONF
directory.
The format is:
# Where zentity stores system information
index:
name: string
default_number_of_shards: number
default_number_of_replicas: number
# Concurrency control for resolution requests
resolution:
max_concurrent_jobs: number
max_concurrent_jobs_per_request: number
Uninstallation/ Teardown Route
Similar to how Zentity can be set up through the POST /_zentity/_setup
, the Zentity resources can now be removed through a DELETE /_zentity/_setup
route. This is helpful when overriding the index name for an installation, so end-users don't have to know any Zentity internals to clean it up.
Deprecations
- The
/_zentity
route is now deprecated for all methods besidesGET
. Support for others will be removed in a future version.