Home Download Docs Code Community

Configuring a client

The various clients (pk put, pk-get, pk-mount…) use a common JSON config file. This page documents the configuration parameters in that file. Run pk env clientconfig to see the default location for that file ($HOME/.config/perkeep/client-config.json on linux). In the following let $CONFIGDIR be the location returned by pk env configdir.

Generating a default config file

Run pk put init.

On unix,

cat $CONFIGDIR/client-config.json

should look something like:

  "identity": "43AD73B1",
  "ignoredFiles": [
  "servers": {
    "localhost": {
      "auth": "localhost",
      "default": true,
      "server": "http://localhost:3179"

Configuration Keys & Values

Top-level keys


servers: Each server the client connects to may have its own configuration section under an alias name as the key. The servers key is the collection of server configurations. For example:

  "servers": {
    "localhost": {
      "server": "http://localhost:3179",
      "default": true,
      "auth": "userpass:foo:bar"
    "backup": {
      "server": "https://some.remote.com",
      "auth": "userpass:pony:magic",
      "trustedCerts": ["ffc7730f4b"]
Website layout inspired by memcached.
Content by the authors.