Skip to main content

Configuration Management

The screening API provides endpoints for managing screening configurations programmatically. These endpoints allow you to create, retrieve, update, and manage configurations for different query types.

Get Configuration

Retrieve configurations for your account.

# Get all configurations
curl --location 'https://api.enigma.com/evaluation/sanctions/configuration' \
--header 'x-api-key: <YOUR API KEY>' \
--header 'Account-Name: <YOUR ACCOUNT NAME>'

# Get configuration for a specific query type
curl --location 'https://api.enigma.com/evaluation/sanctions/configuration/<query_type>' \
--header 'x-api-key: <YOUR API KEY>' \
--header 'Account-Name: <YOUR ACCOUNT NAME>'

# Get previous version of configuration
curl --location 'https://api.enigma.com/evaluation/sanctions/configuration/<query_type>?previous=true' \
--header 'x-api-key: <YOUR API KEY>' \
--header 'Account-Name: <YOUR ACCOUNT NAME>'

Create/Update Configuration

Create or update a configuration for a specific query type.

curl --location --request POST 'https://api.enigma.com/evaluation/sanctions/configuration/<query_type>' \
--header 'x-api-key: <YOUR API KEY>' \
--header 'Content-Type: application/json' \
--header 'Account-Name: <YOUR ACCOUNT NAME>' \
--data '{
"entity": {
"alert_threshold": 0.8,
"hit_threshold": 0.5,
"max_results": 30,
"weights": {
"person_name": 3,
"org_name": 3,
"address": 1,
"dob": 1,
"country_of_affiliation": 2
}
},
"general": {
"archive_retention_days": 90,
"entity_detail_level": "minimum",
"overrides_on": true
},
"list_groups": [
"pos/sdn/all",
"pos/non_sdn/all"
],
"text": {
"alert_threshold": 0.8,
"hit_threshold": 0.5
}
}'

Configuration Fields

FieldDescription
entity.alert_thresholdScore threshold for raising alerts (0-1)
entity.hit_thresholdMinimum score for a result to be considered a hit (0-1)
entity.max_resultsMaximum number of hits to return
entity.weightsRelevance weights for each attribute type
general.archive_retention_daysHow long to retain screening records
general.entity_detail_levelLevel of detail in entity responses
general.overrides_onWhether to apply override rules
general.use_case_managerEnable decision recording for case management
list_groupsWhich watchlists to screen against
text.alert_thresholdAlert threshold for text searches
text.hit_thresholdHit threshold for text searches

Delete Configuration

Delete a configuration for a specific query type.

curl --location --request DELETE 'https://api.enigma.com/evaluation/sanctions/configuration/<query_type>' \
--header 'x-api-key: <YOUR API KEY>' \
--header 'Account-Name: <YOUR ACCOUNT NAME>'

Configuration Rollback

Rollback a configuration to its previous version.

curl --location --request POST 'https://api.enigma.com/evaluation/sanctions/configuration_rollback/<query_type>' \
--header 'x-api-key: <YOUR API KEY>' \
--header 'Account-Name: <YOUR ACCOUNT NAME>'

Freeze/Unfreeze Configuration

Freeze a configuration to prevent modifications, or unfreeze to allow changes. This is useful for protecting production configurations from accidental changes.

# Freeze configuration
curl --location --request POST 'https://api.enigma.com/evaluation/sanctions/configuration_freeze/<query_type>' \
--header 'x-api-key: <YOUR API KEY>' \
--header 'Account-Name: <YOUR ACCOUNT NAME>'

# Unfreeze configuration
curl --location --request POST 'https://api.enigma.com/evaluation/sanctions/configuration_unfreeze/<query_type>' \
--header 'x-api-key: <YOUR API KEY>' \
--header 'Account-Name: <YOUR ACCOUNT NAME>'

Configuration Promotion

Promote a configuration from one environment to another, such as from staging to production.

curl --location --request POST 'https://api.enigma.com/evaluation/sanctions/configuration_promotion' \
--header 'x-api-key: <YOUR API KEY>' \
--header 'Content-Type: application/json' \
--header 'Account-Name: <YOUR ACCOUNT NAME>' \
--data '{
"source_query_type": "staging_config",
"target_query_type": "production_config"
}'