Configuration Options

Location of config options

All config options from Reference of config options can be provided either in:

environment variables

set via either export key=val or --env settings when used for docker.

conf/apoc.conf

located in the same folder as neo4j.conf

The order of this table matches their config option precedence. E.g. any env setting will override options set in apoc.conf.

APOC Extended internally relies on Apache commons-config for resolving config settings. The meta-configuration is located in src/main/resources/apoc-config.xml.

Reference of config options

Set these config options in $NEO4J_HOME/conf/apoc.conf, or by using environment variables.

All boolean options default to false. This means that they are disabled, unless mentioned otherwise.

Property Description

apoc.couchbase.<key>.uri=couchbase-url-with-credentials

store couchbase-urls under a key to be used by couchbase procedures

apoc.es.<key>.uri=es-url-with-credentials

store es-urls under a key to be used by elasticsearch procedures

apoc.import.file.enabled=false/true

Enable reading local files from disk

apoc.import.file.use_neo4j_config=true/false (default true)

the procedures check whether file system access is allowed and possibly constrained to a specific directory by reading the two configuration parameters dbms.security.allow_csv_import_from_file_urls and server.directories.import respectively

apoc.jdbc.<key>.uri=jdbc-url-with-credentials

store jdbc-urls under a key to be used by apoc.load.jdbc

apoc.mongodb.<key>.uri=mongodb-url-with-credentials

store mongodb-urls under a key to be used by mongodb procedures

apoc.ttl.enabled=false/true

Enable time to live background task

apoc.ttl.enabled.<name_db>=false/true (default true)

Enable time to live background task for a specific db. Please note that this key has to be set necessarily in apoc.conf. If is true TTL is enabled for the db even if apoc.ttl.enabled is false, instead if is false is disabled for the db even if apoc.ttl.enabled is true

apoc.ttl.schedule=<secs> (default 60)

Set frequency in seconds to run ttl background task

apoc.ttl.schedule.<name_db>=<secs> (default 60)

Set frequency in seconds to run ttl background task for a specific db. It has priority over apoc.ttl.schedule. Please note that this key has to be set necessarily in apoc.conf.

apoc.ttl.limit=<number> (default 1000)

Maximum number of nodes being deleted in one background transaction, that is the batchSize applied to apoc.periodic.iterate() during removing nodes

apoc.ttl.limit.<name_db>=<number> (default 1000)

Maximum number of nodes being deleted in one background transaction for a specific db, that is the batchSize applied to apoc.periodic.iterate() during removing nodes for a specific db. It has priority over apoc.ttl.limit. Please note that this key has to be set necessarily in apoc.conf.

apoc.uuid.enabled=false/true (default false)

global switch to enable uuid handlers

apoc.uuid.enabled.<name_db>=false/true (default true)

Enable/disable uuid handlers for a specific db. Please note that this key has to be set necessarily in apoc.conf. If is true UUID is enabled for the db even if apoc.uuid.enabled is false, instead if is false is disabled for the db even if apoc.uuid.enabled is true