Skip to main content
Version: v0.33.0

Command Line Tool (CLI)

Karakeep comes with a simple CLI for those users who want to do more advanced manipulation.

Features​

  • Manipulate bookmarks, lists and tags
  • Mass import/export of bookmarks

Installation (NPM)​

npm install -g @karakeep/cli

Installation (Docker)​

docker run --rm ghcr.io/karakeep-app/karakeep-cli:release --help

Usage​

karakeep
Usage: karakeep [options] [command]

A CLI interface to interact with the karakeep api

Options:
--api-key <key> the API key to interact with the API (env: KARAKEEP_API_KEY)
--server-addr <addr> the address of the server to connect to (env: KARAKEEP_SERVER_ADDR)
--json to output the result as JSON
-V, --version output the version number
-h, --help display help for command

Commands:
auth authentication commands
bookmarks manipulating bookmarks
lists manipulating lists
tags manipulating tags
whoami returns info about the owner of this API key
help [command] display help for command

And some of the subcommands:

karakeep bookmarks
Usage: karakeep bookmarks [options] [command]

Manipulating bookmarks

Options:
-h, --help display help for command

Commands:
add [options] creates a new bookmark
get <id> fetch information about a bookmark
update [options] <id> updates bookmark
list [options] list all bookmarks
delete <id> delete a bookmark
help [command] display help for command

karakeep lists
Usage: karakeep lists [options] [command]

Manipulating lists

Options:
-h, --help display help for command

Commands:
list lists all lists
delete <id> deletes a list
add-bookmark [options] add a bookmark to list
remove-bookmark [options] remove a bookmark from list
help [command] display help for command

Obtaining an API Key​

To use the CLI, you'll need to get an API key from your karakeep settings. You can validate that it's working by running:

karakeep --api-key <key> --server-addr <addr> whoami

For example:

karakeep --api-key mysupersecretkey --server-addr https://try.karakeep.app whoami
{
id: 'j29gnbzxxd01q74j2lu88tnb',
name: 'Test User',
}

You can also store the server address and API key in $XDG_CONFIG_HOME/karakeep/config.json. If XDG_CONFIG_HOME is not set, the CLI reads ~/.config/karakeep/config.json.

{
"serverAddr": "https://try.karakeep.app",
"apiKey": "mysupersecretkey"
}

Command-line options take precedence over environment variables, and environment variables take precedence over the config file. If no server address is provided, the CLI defaults to https://cloud.karakeep.app.

To create or update this file interactively, run:

karakeep auth init

Other clients​

There also exists a non-official, community-maintained, python package called karakeep-python-api that can be accessed from the CLI, but is not official.