Installing Keployβ
This guide walks you through installing the Keploy CLI, which enables you to record API calls and replay them as sandboxes for testing.
1. Install Keploy CLIβ
Keploy captures your app's API calls and turns them into test cases and mocks/stubs. It runs natively on Linux, macOS (Apple Silicon) and Windows (x86-64). Choose your OS to get started π
- Linux
- macOS
- Windows
Make sure your Linux kernel version is 5.10 or higher.
π Choose your preferred method:
- Native
- Docker
- Podman
1. Install Keploy CLIβ
curl --silent -O -L https://keploy.io/install.sh && source install.sh
2. Once done, you should see something like this:β
π° Keploy: 2026-05-05T08:23:30.09586779Z INFO Starting Keploy {"version": "3.4.1", "buildSource": "unknown", "apiServerURL": "https://api.keploy.io", "inDocker": false}
βββββ
ββββββββββ
ββββββββββ
βββββββ ββ β β
ββββββββββ ββ βββ ββββ ββββ ββ ββββββ ββ β
βββββββββββββ βββββ βββββ βββ ββ ββ ββ ββ ββ ββ
βββββββββββββββ ββ ββ ββββ βββββββ βββ ββββββ βββ
ββ βββ ββ
β
Keploy: 3.4.1
Keploy CLI
Usage:
keploy [command]
Available Commands:
agent starts keploy agent for hooking and starting proxy
cloud Manage cloud operations
config manage keploy configuration file
console manage keploy console file
contract Manage keploy contracts
create-branch Create a new branch on a Keploy app
create-test-suite Validate a test suite spec from JSON and insert it via api-server
debug Debug and reproduce Keploy failures locally
dedup manage keploy dedup file
diff compare two keploy test runs and print regressions/fixes
example Example to record and test via keploy
export export Keploy tests as postman collection
import import postman collection to Keploy tests
list-branches List branches on a Keploy app
login Authenticate with your Keploy account
logout Sign out of your Keploy account
mock Managing mocks
normalize Normalize Keploy
record record end to end api-calls
report report the keploy test results from the API calls
sanitize sanitize the keploy testcases to remove the sensitive data
templatize templatize the keploy testcases
test run the recorded testcases and execute assertions
test-gen AI agent-based API test generation β run, coverage, init
test-suite Run keploy test suites
test-suite-format Print the canonical test-suite step schema
ui Manage UI flow capture, testing, and reporting
update update keploy to latest version
update-test-suite Validate edits to a test suite and snapshot-replace it via api-server
Flags:
--config-path string Path to the local directory where keploy configuration file is stored (default ".")
--debug Run in debug mode
--disable-ansi Disable ANSI color in logs
-h, --help help for keploy
--json Print output in JSON format
--manual-login Use manual login prompt instead of opening browser
-v, --version version for keploy
Guided Commands:
help Help about any command
Examples:
Record:
keploy record -c "docker run -p 8080:8080 --name <containerName> --network keploy-network <applicationImage>" --container-name "<containerName>" --buildDelay 60
Test:
keploy test --c "docker run -p 8080:8080 --name <containerName> --network keploy-network <applicationImage>" --delay 10 --buildDelay 60
Config:
keploy config --generate -p "/path/to/localdir"
Use "keploy [command] --help" for more information about a command.
Install Keploy with Docker on Linuxβ
-
Make sure Docker is installed: Youβll need Docker installed on Linux
-
Install Keploy
curl --silent -O -L https://keploy.io/install.sh && source install.sh
- Once done, you should see something like this:
π° Keploy: 2026-05-05T08:23:30.09586779Z INFO Starting Keploy {"version": "3.4.1", "buildSource": "unknown", "apiServerURL": "https://api.keploy.io", "inDocker": false}
βββββ
ββββββββββ
ββββββββββ
βββββββ ββ β β
ββββββββββ ββ βββ ββββ ββββ ββ ββββββ ββ β
βββββββββββββ βββββ βββββ βββ ββ ββ ββ ββ ββ ββ
βββββββββββββββ ββ ββ β βββ βββββββ βββ ββββββ βββ
ββ βββ ββ
β
Keploy: 3.4.1
Keploy CLI
Usage:
keploy [command]
Available Commands:
agent starts keploy agent for hooking and starting proxy
cloud Manage cloud operations
config manage keploy configuration file
console manage keploy console file
contract Manage keploy contracts
create-branch Create a new branch on a Keploy app
create-test-suite Validate a test suite spec from JSON and insert it via api-server
debug Debug and reproduce Keploy failures locally
dedup manage keploy dedup file
diff compare two keploy test runs and print regressions/fixes
example Example to record and test via keploy
export export Keploy tests as postman collection
import import postman collection to Keploy tests
list-branches List branches on a Keploy app
login Authenticate with your Keploy account
logout Sign out of your Keploy account
mock Managing mocks
normalize Normalize Keploy
record record end to end api-calls
report report the keploy test results from the API calls
sanitize sanitize the keploy testcases to remove the sensitive data
templatize templatize the keploy testcases
test run the recorded testcases and execute assertions
test-gen AI agent-based API test generation β run, coverage, init
test-suite Run keploy test suites
test-suite-format Print the canonical test-suite step schema
ui Manage UI flow capture, testing, and reporting
update update keploy to latest version
update-test-suite Validate edits to a test suite and snapshot-replace it via api-server
Flags:
--config-path string Path to the local directory where keploy configuration file is stored (default ".")
--debug Run in debug mode
--disable-ansi Disable ANSI color in logs
-h, --help help for keploy
--json Print output in JSON format
--manual-login Use manual login prompt instead of opening browser
-v, --version version for keploy
Guided Commands:
help Help about any command
Examples:
Record:
keploy record -c "docker run -p 8080:8080 --name <containerName> --network keploy-network <applicationImage>" --container-name "<containerName>" --buildDelay 60
Test:
keploy test --c "docker run -p 8080:8080 --name <containerName> --network keploy-network <applicationImage>" --delay 10 --buildDelay 60
Config:
keploy config --generate -p "/path/to/localdir"
Use "keploy [command] --help" for more information about a command.
Install Keploy with Podman on Linuxβ
Keploy records and tests applications that run in rootful Podman, started with podman run (or podman compose, below). Its agent loads eBPF, which a rootless Podman can't grant, so Keploy runs as root and drives the rootful Podman. See Platform requirements for the details.
-
Make sure Podman is installed on the Linux machine that runs your app. A Podman set up as a podman-remote client isn't supported.
-
Install Keploy. Podman needs v3.8.60 or later; re-run this to update an older Keploy.
curl --silent -O -L https://keploy.io/install.sh && source install.sh
The installer may say Docker isn't found; with Podman, ignore it.
- Build or pull your application's image with
sudo podman, since images in your rootless Podman aren't visible to Keploy, and create a network:
sudo podman build -t <applicationImage> .
sudo podman network exists keploy-network || sudo podman network create keploy-network
- Record and test. The first
keploy recordasks you to sign in (see 2. Log in to Keploy below).
keploy record -c "podman run --rm --name <containerName> --network keploy-network -p 8080:8080 <applicationImage>"
keploy test -c "podman run --rm --name <containerName> --network keploy-network -p 8080:8080 <applicationImage>" --delay 10
With compose: podman compose (Podman 4.7 or later; Keploy is tested with Podman 5) works with Docker Compose v2 or later (docker-compose) as its compose provider, on a host that runs systemd, which Podman's healthchecks need. Name the application's container, as with Docker Compose:
keploy record -c "podman compose up" --container-name "<containerName>"
podman-compose isn't supported.
If the rootful podman.socket is enabled (sudo systemctl enable --now podman.socket), Keploy uses it; otherwise it starts Podman's API service for the run and stops it when Keploy exits.
Keploy runs natively on Apple Silicon Macs: no Lima VM, no Docker and no sudo. Natively it understands the HTTP/HTTPS, MySQL and MongoDB calls of Go, Node.js, Python and Java apps; calls to other services β PostgreSQL, Redis, Kafka, gRPC and the like β are captured only as raw bytes and usually don't replay.
- Your app runs in containers, or depends on one of those other services? Use the Docker tab.
- On an Intel Mac, use the Lima tab. The
keployCLI for macOS is Apple Silicon (arm64) only, and the Docker tab uses it too.
π Choose your preferred method:
- Native
- Lima
- Docker
1. Install Keploy CLIβ
curl --silent -O -L https://keploy.io/install.sh && source install.sh
This installs keploy into ~/.keploy/bin for your user β it never asks for sudo. Prefer Homebrew? brew install keploy/tap/keploy installs the same CLI.
2. Verify the installationβ
keploy --version
3. Good to knowβ
- Start your app itself, not a launcher. macOS removes Keploy from anything a launcher such as
npm start,mvnor a wrapper shell script re-spawns. Build first, then record the app directly:node server.js, your Go binary (go build -o app .then./app, rather thango run) or your jar. Keploy warns you if it could not attach. - Use your own Python and Java. Apple's
/usr/bin/python3and/usr/bin/javaare protected by macOS and record nothing. Use a Homebrew or uv Python, or a virtualenv built on one β with pyenv, its real interpreter ($(pyenv which python3)), not the shim β and your JDK's ownjava:"${JAVA_HOME:-$(/usr/libexec/java_home)}/bin/java" -jar target/<your-app>.jar(anyjavaon yourPATHother than Apple's/usr/bin/java, such as SDKMAN's or Homebrew's, works as it is). - HTTPS works out of the box. Keploy trusts its certificate for your app's process only β nothing is added to your keychain. Apps that pin their own certificates are the exception.
See Installing Keploy on macOS for more.
Install Keploy with Limaβ
Lima runs Keploy inside a Linux VM on your Mac. It is the way to run Keploy on an Intel Mac; on Apple Silicon, the Native tab needs no VM.
-
Check if Lima is installed: If you already have a Lima instance, make it writable (see step 3) and go to Step 5, using its name in place of
debian-12. -
Install Lima
brew install lima
- Create a Debian instance [or any instance of your choice]
limactl create --mount-writable template://debian-12
Lima mounts your Mac's home folder read-only by default; --mount-writable lets Keploy write its test files into your project. If you already have an instance, stop it if it's running (limactl stop <name>), then make it writable with limactl edit <name> --mount-writable --start.
- Start the instance
limactl start debian-12
- Enter the Linux shell
limactl shell debian-12
- Install Keploy inside Lima, from the VM's own home directory
cd ~ && curl --silent -O -L https://keploy.io/install.sh && source install.sh
Then cd into your project under /Users/<you>/β¦ to record it.
- Once done, you should see something like this:
π° Keploy: 2026-05-05T08:23:30.09586779Z INFO Starting Keploy {"version": "3.4.1", "buildSource": "unknown", "apiServerURL": "https://api.keploy.io", "inDocker": false}
βββββ
ββββββββββ
ββββββββββ
βββββββ ββ β β
ββββββββββ ββ βββ ββββ ββββ ββ ββββββ ββ β
βββββββββββββ βββββ βββ ββ βββ ββ ββ ββ ββ ββ ββ
βββββββββββββββ ββ ββ ββββ βββββββ βββ ββββββ βββ
ββ βββ ββ
β
Keploy: 3.4.1
Keploy CLI
Usage:
keploy [command]
Available Commands:
agent starts keploy agent for hooking and starting proxy
cloud Manage cloud operations
config manage keploy configuration file
console manage keploy console file
contract Manage keploy contracts
create-branch Create a new branch on a Keploy app
create-test-suite Validate a test suite spec from JSON and insert it via api-server
debug Debug and reproduce Keploy failures locally
dedup manage keploy dedup file
diff compare two keploy test runs and print regressions/fixes
example Example to record and test via keploy
export export Keploy tests as postman collection
import import postman collection to Keploy tests
list-branches List branches on a Keploy app
login Authenticate with your Keploy account
logout Sign out of your Keploy account
mock Managing mocks
normalize Normalize Keploy
record record end to end api-calls
report report the keploy test results from the API calls
sanitize sanitize the keploy testcases to remove the sensitive data
templatize templatize the keploy testcases
test run the recorded testcases and execute assertions
test-gen AI agent-based API test generation β run, coverage, init
test-suite Run keploy test suites
test-suite-format Print the canonical test-suite step schema
ui Manage UI flow capture, testing, and reporting
update update keploy to latest version
update-test-suite Validate edits to a test suite and snapshot-replace it via api-server
Flags:
--config-path string Path to the local directory where keploy configuration file is stored (default ".")
--debug Run in debug mode
--disable-ansi Disable ANSI color in logs
-h, --help help for keploy
--json Print output in JSON format
--manual-login Use manual login prompt instead of opening browser
-v, --version version for keploy
Guided Commands:
help Help about any command
Examples:
Record:
keploy record -c "docker run -p 8080:8080 --name <containerName> --network keploy-network <applicationImage>" --container-name "<containerName>" --buildDelay 60
Test:
keploy test --c "docker run -p 8080:8080 --name <containerName> --network keploy-network <applicationImage>" --delay 10 --buildDelay 60
Config:
keploy config --generate -p "/path/to/localdir"
Use "keploy [command] --help" for more information about a command.
Install Keploy with Docker on macOSβ
Your application and Keploy's agent run in containers here, but the keploy CLI installed in step 2 β which starts them both β runs on your Mac, and is Apple Silicon (arm64) only. On an Intel Mac use the Lima tab instead.
-
Make sure Docker is installed: Youβll need Docker Desktop running on macOS.
-
Install Keploy
curl --silent -O -L https://keploy.io/install.sh && source install.sh
- Create the Docker network your app's container and Keploy share:
docker network create keploy-network
-
Verify the installation
Once done, you should see something like this:
π° Keploy: 2026-05-05T08:23:30.09586779Z INFO Starting Keploy {"version": "3.4.1", "buildSource": "unknown", "apiServerURL": "https://api.keploy.io", "inDocker": false}
βββββ
ββββββββββ
ββββββββββ
βββββββ ββ β β
ββββββββββ ββ βββ ββββ ββββ ββ ββββββ ββ β
βββββββββββββ βββββ βββββ βββ ββ ββ ββ ββ ββ ββ
βββββββββββββββ ββ ββ ββββ βββββββ βββ ββββββ βββ
ββ βββ ββ
β
Keploy: 3.4.1
Keploy CLI
Usage:
keploy [command]
Available Commands:
agent starts keploy agent for hooking and starting proxy
cloud Manage cloud operations
config manage keploy configuration file
console manage keploy console file
contract Manage keploy contracts
create-branch Create a new branch on a Keploy app
create-test-suite Validate a test suite spec from JSON and insert it via api-server
debug Debug and reproduce Keploy failures locally
dedup manage keploy dedup file
diff compare two keploy test runs and print regressions/fixes
example Example to record and test via keploy
export export Keploy tests as postman collection
import import postman collection to Keploy tests
list-branches List branches on a Keploy app
login Authenticate with your Keploy account
logout Sign out of your Keploy account
mock Managing mocks
normalize Normalize Keploy
record record end to end api-calls
report report the keploy test results from the API calls
sanitize sanitize the keploy testcases to remove the sensitive data
templatize templatize the keploy testcases
test run the recorded testcases and execute assertions
test-gen AI agent-based API test generation β run, coverage, init
test-suite Run keploy test suites
test-suite-format Print the canonical test-suite step schema
ui Manage UI flow capture, testing, and reporting
update update keploy to latest version
update-test-suite Validate edits to a test suite and snapshot-replace it via api-server
Flags:
--config-path string Path to the local directory where keploy configuration file is stored (default ".")
--debug Run in debug mode
--disable-ansi Disable ANSI color in logs
-h, --help help for keploy
--json Print output in JSON format
--manual-login Use manual login prompt instead of opening browser
-v, --version version for keploy
Guided Commands:
help Help about any command
Examples:
Record:
keploy record -c "docker run -p 8080:8080 --name <containerName> --network keploy-network <applicationImage>" --container-name "<containerName>" --buildDelay 60
Test:
keploy test --c "docker run -p 8080:8080 --name <containerName> --network keploy-network <applicationImage>" --delay 10 --buildDelay 60
Config:
keploy config --generate -p "/path/to/localdir"
Use "keploy [command] --help" for more information about a command.
Keploy runs natively on Windows (x86-64): no WSL, no Docker and no Administrator. Natively it understands your app's HTTP/HTTPS, MySQL and MongoDB calls; calls to other services β PostgreSQL, Redis, Kafka, gRPC and the like β are captured only as raw bytes and usually don't replay.
- Your app runs in containers, or depends on one of those other services? Use the Docker tab.
- On Windows on ARM, use the WSL tab.
π Choose your preferred method:
- Native
- WSL
- Docker
1. Install Keployβ
Run this in PowerShell β a normal one; Keploy does not need Administrator. It downloads keploy.exe into %USERPROFILE%\.keploy\bin and adds that folder to your user PATH:
$ProgressPreference = 'SilentlyContinue'
[Net.ServicePointManager]::SecurityProtocol = [Net.ServicePointManager]::SecurityProtocol -bor [Net.SecurityProtocolType]::Tls12
$dir = "$env:USERPROFILE\.keploy\bin"
New-Item -ItemType Directory -Force $dir | Out-Null
Invoke-WebRequest -Uri "https://keploy.io/ent/dl/latest/enterprise_windows_amd64.exe" `
-OutFile "$dir\keploy.exe"
Unblock-File "$dir\keploy.exe"
$userPath = [Environment]::GetEnvironmentVariable("Path", "User")
if ($userPath -notlike "*$dir*") {
[Environment]::SetEnvironmentVariable("Path", "$userPath;$dir", "User")
}
The file is named enterprise_windows_amd64.exe for historical reasons β it is the keploy CLI, and a free account is all you need.
2. Open a new terminalβ
Close your terminals and open a new one, so it picks up the new PATH. If you face issues, make sure cmd.exe and powershell.exe (their default Windows paths) are on your PATH: Keploy starts your app through cmd.exe.
3. Verify Installationβ
In the new terminal, run keploy. You should see something like this:
π° Keploy: 2026-05-05T08:23:30.09586779Z INFO Starting Keploy {"version": "3.4.1", "buildSource": "unknown", "apiServerURL": "https://api.keploy.io", "inDocker": false}
βββββ
ββββββββββ
ββββββββββ
βββββββ ββ β β
ββββββββββ ββ βββ ββββ ββββ ββ ββββββ ββ β
βββββββββββββ βββββ βββββ βββ ββ ββ ββ ββ ββ ββ
βββββββββββββββ ββ ββ ββββ βββββββ βββ ββββββ βββ
ββ βββ ββ
β
Keploy: 3.4.1
Keploy CLI
Usage:
keploy [command]
Available Commands:
agent starts keploy agent for hooking and starting proxy
cloud Manage cloud operations
config manage keploy configuration file
console manage keploy console file
contract Manage keploy contracts
create-branch Create a new branch on a Keploy app
create-test-suite Validate a test suite spec from JSON and insert it via api-server
debug Debug and reproduce Keploy failures locally
dedup manage keploy dedup file
diff compare two keploy test runs and print regressions/fixes
example Example to record and test via keploy
export export Keploy tests as postman collection
import import postman collection to Keploy tests
list-branches List branches on a Keploy app
login Authenticate with your Keploy account
logout Sign out of your Keploy account
mock Managing mocks
normalize Normalize Keploy
record record end to end api-calls
report report the keploy test results from the API calls
sanitize sanitize the keploy testcases to remove the sensitive data
templatize templatize the keploy testcases
test run the recorded testcases and execute assertions
test-gen AI agent-based API test generation β run, coverage, init
test-suite Run keploy test suites
test-suite-format Print the canonical test-suite step schema
ui Manage UI flow capture, testing, and reporting
update update keploy to latest version
update-test-suite Validate edits to a test suite and snapshot-replace it via api-server
Flags:
--config-path string Path to the local directory where keploy configuration file is stored (default ".")
--debug Run in debug mode
--disable-ansi Disable ANSI color in logs
-h, --help help for keploy
--json Print output in JSON format
--manual-login Use manual login prompt instead of opening browser
-v, --version version for keploy
Guided Commands:
help Help about any command
Examples:
Record:
keploy record -c "docker run -p 8080:8080 --name <containerName> --network keploy-network <applicationImage>" --container-name "<containerName>" --buildDelay 60
Test:
keploy test --c "docker run -p 8080:8080 --name <containerName> --network keploy-network <applicationImage>" --delay 10 --buildDelay 60
Config:
keploy config --generate -p "/path/to/localdir"
Use "keploy [command] --help" for more information about a command.
Install Keploy with WSLβ
If you already have WSL, go to Step 2.
Note: Make sure youβre on:
- Windows 10 (version 2004 or later, build 19041+)
- Windows 11
Run the following command in PowerShell (as Administrator):
- Enable WSL
wsl --install -d <Distribution Name>
π We recommend using Ubuntu-22.04 for the best experience. (You can also choose a different distribution if needed.)
- Install Keploy Binary Inside your WSL terminal, run:
curl --silent -O -L https://keploy.io/install.sh && source install.sh
- Verify Installation
π° Keploy: 2026-05-05T08:23:30.09586779Z INFO Starting Keploy {"version": "3.4.1", "buildSource": "unknown", "apiServerURL": "https://api.keploy.io", "inDocker": false}
βββββ
ββββββββββ
ββββββββββ
βββββββ ββ β β
ββββββββββ ββ βββ ββββ ββββ ββ ββββββ ββ β
βββββββββββββ βββββ βββββ βββ ββ ββ ββ ββ ββ ββ
βββββββββββββββ ββ ββ ββββ βββββββ βββ βββ βββ βββ
ββ βββ ββ
β
Keploy: 3.4.1
Keploy CLI
Usage:
keploy [command]
Available Commands:
agent starts keploy agent for hooking and starting proxy
cloud Manage cloud operations
config manage keploy configuration file
console manage keploy console file
contract Manage keploy contracts
create-branch Create a new branch on a Keploy app
create-test-suite Validate a test suite spec from JSON and insert it via api-server
debug Debug and reproduce Keploy failures locally
dedup manage keploy dedup file
diff compare two keploy test runs and print regressions/fixes
example Example to record and test via keploy
export export Keploy tests as postman collection
import import postman collection to Keploy tests
list-branches List branches on a Keploy app
login Authenticate with your Keploy account
logout Sign out of your Keploy account
mock Managing mocks
normalize Normalize Keploy
record record end to end api-calls
report report the keploy test results from the API calls
sanitize sanitize the keploy testcases to remove the sensitive data
templatize templatize the keploy testcases
test run the recorded testcases and execute assertions
test-gen AI agent-based API test generation β run, coverage, init
test-suite Run keploy test suites
test-suite-format Print the canonical test-suite step schema
ui Manage UI flow capture, testing, and reporting
update update keploy to latest version
update-test-suite Validate edits to a test suite and snapshot-replace it via api-server
Flags:
--config-path string Path to the local directory where keploy configuration file is stored (default ".")
--debug Run in debug mode
--disable-ansi Disable ANSI color in logs
-h, --help help for keploy
--json Print output in JSON format
--manual-login Use manual login prompt instead of opening browser
-v, --version version for keploy
Guided Commands:
help Help about any command
Examples:
Record:
keploy record -c "docker run -p 8080:8080 --name <containerName> --network keploy-network <applicationImage>" --container-name "<containerName>" --buildDelay 60
Test:
keploy test --c "docker run -p 8080:8080 --name <containerName> --network keploy-network <applicationImage>" --delay 10 --buildDelay 60
Config:
keploy config --generate -p "/path/to/localdir"
Use "keploy [command] --help" for more information about a command.
Install Keploy with Docker on Windowsβ
-
Make sure Docker is installed : Youβll need Docker Desktop running on Windows.
-
Install Keploy: follow steps 1β2 of the Native tab. The
keployCLI runs on Windows and starts your app's container and Keploy's agent in Docker. -
Create the Docker network your app's container and Keploy share:
docker network create keploy-network
- Verify the installation
In a new terminal, run keploy. You should see something like this:
π° Keploy: 2026-05-05T08:23:30.09586779Z INFO Starting Keploy {"version": "3.4.1", "buildSource": "unknown", "apiServerURL": "https://api.keploy.io", "inDocker": false}
βββββ
ββββββββββ
ββββββββββ
βββββββ ββ β β
ββββββββββ ββ βββ ββββ ββββ ββ ββββββ ββ β
βββββββββββββ βββββ βββββ βββ ββ ββ ββ ββ ββ ββ
βββββββββββββββ ββ ββ ββββ βββββββ βββ ββββββ βββ
ββ βββ ββ
β
Keploy: 3.4.1
Keploy CLI
Usage:
keploy [command]
Available Commands:
agent starts keploy agent for hooking and starting proxy
cloud Manage cloud operations
config manage keploy configuration file
console manage keploy console file
contract Manage keploy contracts
create-branch Create a new branch on a Keploy app
create-test-suite Validate a test suite spec from JSON and insert it via api-server
debug Debug and reproduce Keploy failures locally
dedup manage keploy dedup file
diff compare two keploy test runs and print regressions/fixes
example Example to record and test via keploy
export export Keploy tests as postman collection
import import postman collection to Keploy tests
list-branches List branches on a Keploy app
login Authenticate with your Keploy account
logout Sign out of your Keploy account
mock Managing mocks
normalize Normalize Keploy
record record end to end api-calls
report report the keploy test results from the API calls
sanitize sanitize the keploy testcases to remove the sensitive data
templatize templatize the keploy testcases
test run the recorded testcases and execute assertions
test-gen AI agent-based API test generation β run, coverage, init
test-suite Run keploy test suites
test-suite-format Print the canonical test-suite step schema
ui Manage UI flow capture, testing, and reporting
update update keploy to latest version
update-test-suite Validate edits to a test suite and snapshot-replace it via api-server
Flags:
--config-path string Path to the local directory where keploy configuration file is stored (default ".")
--debug Run in debug mode
--disable-ansi Disable ANSI color in logs
-h, --help help for keploy
--json Print output in JSON format
--manual-login Use manual login prompt instead of opening browser
-v, --version version for keploy
Guided Commands:
help Help about any command
Examples:
Record:
keploy record -c "docker run -p 8080:8080 --name <containerName> --network keploy-network <applicationImage>" --container-name "<containerName>" --buildDelay 60
Test:
keploy test --c "docker run -p 8080:8080 --name <containerName> --network keploy-network <applicationImage>" --delay 10 --buildDelay 60
Config:
keploy config --generate -p "/path/to/localdir"
Use "keploy [command] --help" for more information about a command.
2. Log in to Keployβ
After installing, authenticate with your Keploy account. Choose the method that fits your setup:
- Browser Login (Default)
- Manual Login
- API Key (CI/CD)
Keploy opens a browser window to sign you in automatically:
keploy login
Opening browser for authentication...
If the browser does not open automatically, please visit:
https://app.keploy.io/signin/integration/auth?method=code&code=<YOUR_CODE>
Waiting for authentication...
Logged in successfully!
If a browser cannot open (for example in a remote terminal):
keploy login --manual-login
When prompted, enter your Keploy API key. To get your API key:
- Log in to app.keploy.io
- Click on your user profile at the bottom left
- Go to Account Settings
- In the sidebar, select API Keys
- Click Generate new token
- Fill in the details:
- Token name β give it a recognizable name
- Scopes β select the access level you need:
- Read β read-only access to resources
- Write β read and write access
- Admin β full administrative access
- Expiration β default is 90 days
- Click Generate token
- Copy the token immediately β it will not be shown again
Once your API key is verified, you will see:
API key verified successfully!
You are on the Keploy <plan> plan.
For CI/CD environments, authenticate using an API key:
keploy login --api-key <YOUR_API_KEY>
You can also set it as an environment variable:
export KEPLOY_API_KEY=<YOUR_API_KEY>
How to get your API keyβ
- Log in to app.keploy.io
- Click on your user profile at the bottom left
- Go to Account Settings
- In the sidebar, select API Keys
- Click Generate new token
- Fill in the details:
- Token name β give it a recognizable name
- Scopes β select the access level you need:
- Read β read-only access to resources
- Write β read and write access
- Admin β full administrative access
- Expiration β default is 90 days
- Click Generate token
- Copy the token immediately β it will not be shown again
Once your API key is verified, you will see:
API key verified successfully!
You are on the Keploy <plan> plan.
Now you can start using Keploy to record API calls and replay them as sandboxes for testing your application.
To explore what's available at each tier, visit keploy.io/pricing.
π Congratulations!β
- Linux
- macOS
- Windows
- Native
- Docker
- Podman
Youβve successfully installed Keploy on Linux.
π¬ Start Capturing Test Cases
- Go
- Node.js
- Java
- Python
Record the test cases
keploy record -c "go run main.go"
Run the test cases
keploy test -c "go run main.go" --delay 10
Record the test cases
keploy record -c "npm start"
Run the test cases
keploy test -c "npm start" --delay 10
Record the test cases
keploy record -c "mvn spring-boot:run"
Run the test cases
keploy test -c "mvn spring-boot:run" --delay 10
Record the test cases
keploy record -c "python app.py"
Run the test cases
keploy test -c "python app.py" --delay 10
π Whatβs Next?
Now, take it further by following the Quickstart Guide and see Keploy in action with your app.
Youβve successfully set up Keploy on Linux using Docker.
π¬ Start Capturing Test Cases
- Docker
- Docker Compose
Record the test cases
keploy record -c "docker run -p <appPort>:<hostPort> --name <containerName> --network keploy-network --rm <applicationImage>" --containerName "<containerName>" --delay 10
Run the test cases
keploy test -c "docker run -p <appPort>:<hostPort> --name <containerName> --network keploy-network --rm <applicationImage>" --containerName "<containerName>" --delay 20
Record the test cases
keploy record -c "docker compose up" --container-name <containerName> --build-delay 100
Run the test cases
keploy test -c "docker compose up" --container-name <containerName> --build-delay 50 --delay 20
π Whatβs Next?
Now, take it further by following the Quickstart Guide and see Keploy in action with your app.
Youβve successfully set up Keploy on Linux using Podman. Record and test your app with the keploy record -c "podman run ..." and keploy test -c "podman run ..." commands above.
- Native
- Lima
- Docker
Youβve successfully installed Keploy on macOS.
π¬ Start Capturing Test Cases
- Go
- Node.js
- Java
- Python
Record the test cases
keploy record -c "./app"
Run the test cases
keploy test -c "./app" --delay 10
Record the test cases
keploy record -c "node server.js"
Run the test cases
keploy test -c "node server.js" --delay 10
Record the test cases
keploy record -c "${JAVA_HOME:-$(/usr/libexec/java_home)}/bin/java -jar target/<your-app>.jar"
Run the test cases
keploy test -c "${JAVA_HOME:-$(/usr/libexec/java_home)}/bin/java -jar target/<your-app>.jar" --delay 10
Record the test cases
keploy record -c ".venv/bin/python app.py"
Run the test cases
keploy test -c ".venv/bin/python app.py" --delay 10
On macOS, build first (go build -o app ., mvn package) and start the app itself, not through a launcher such as npm start, mvn or a wrapper script. Use your JDK's own java and a virtualenv built on a Homebrew, uv or pyenv Python, not Apple's /usr/bin/java or /usr/bin/python3. macOS removes Keploy from those processes, and Keploy warns you when that happens.
π Whatβs Next?
Now, take it further by following the Quickstart Guide and see Keploy in action with your app.
Youβve successfully set up Keploy on macOS using Lima.
π¬ Start Capturing Test Cases
- Go
- Node.js
- Java
- Python
Record the test cases
keploy record -c "go run main.go"
Run the test cases
keploy test -c "go run main.go" --delay 10
Record the test cases
keploy record -c "npm start"
Run the test cases
keploy test -c "npm start" --delay 10
Record the test cases
keploy record -c "mvn spring-boot:run"
Run the test cases
keploy test -c "mvn spring-boot:run" --delay 10
Record the test cases
keploy record -c "python app.py"
Run the test cases
keploy test -c "python app.py" --delay 10
π Whatβs Next?
Now, take it further by following the Quickstart Guide and see Keploy in action with your app.
Youβve successfully set up Keploy on macOS using Docker.
π¬ Start Capturing Test Cases
- Docker
- Docker Compose
Record the test cases
keploy record -c "docker run -p <appPort>:<hostPort> --name <containerName> --network keploy-network --rm <applicationImage>" --containerName "<containerName>" --delay 10
Run the test cases
keploy test -c "docker run -p <appPort>:<hostPort> --name <containerName> --network keploy-network --rm <applicationImage>" --containerName "<containerName>" --delay 20
Record the test cases
keploy record -c "docker compose up" --container-name <containerName> --build-delay 100
Run the test cases
keploy test -c "docker compose up" --container-name <containerName> --build-delay 50 --delay 20
π Whatβs Next?
Now, take it further by following the Quickstart Guide and see Keploy in action with your app.
- Native
- WSL
- Docker
Youβve successfully installed Keploy on Windows.
π¬ Start Capturing Test Cases
- Go
- Node.js
- Java
- Python
Record the test cases
keploy record -c "go run main.go"
Run the test cases
keploy test -c "go run main.go" --delay 10
Record the test cases
keploy record -c "npm start"
Run the test cases
keploy test -c "npm start" --delay 10
Record the test cases
keploy record -c "mvn spring-boot:run"
Run the test cases
keploy test -c "mvn spring-boot:run" --delay 10
Record the test cases
keploy record -c "python app.py"
Run the test cases
keploy test -c "python app.py" --delay 10
π What βs Next?
Now, take it further by following the Quickstart Guide and see Keploy in action with your app.
Youβve successfully set up Keploy on Windows using WSL.
π¬ Start Capturing Test Cases
- Go
- Node.js
- Java
- Python
Record the test cases
keploy record -c "go run main.go"
Run the test cases
keploy test -c "go run main.go" --delay 10
Record the test cases
keploy record -c "npm start"
Run the test cases
keploy test -c "npm start" --delay 10
Record the test cases
keploy record -c "mvn spring-boot:run"
Run the test cases
keploy test -c "mvn spring-boot:run" --delay 10
Record the test cases
keploy record -c "python app.py"
Run the test cases
keploy test -c "python app.py" --delay 10
π Whatβs Next?
Now, take it further by following the Quickstart Guide and see Keploy in action with your app.
Youβve successfully set up Keploy on Windows using Docker.
π¬ Start Capturing Test Cases
- Docker
- Docker Compose
Record the test cases
keploy record -c "docker run -p <appPort>:<hostPort> --name <containerName> --network keploy-network --rm <applicationImage>" --containerName "<containerName>" --delay 10
Run the test cases
keploy test -c "docker run -p <appPort>:<hostPort> --name <containerName> --network keploy-network --rm <applicationImage>" --containerName "<containerName>" --delay 20
Record the test cases
keploy record -c "docker compose up" --container-name <containerName> --build-delay 100
Run the test cases
keploy test -c "docker compose up" --container-name <containerName> --build-delay 50 --delay 20
π Whatβs Next?
Now, take it further by following the Quickstart Guide and see Keploy in action with your app.
Relatedβ
- Keploy Local Installation β the quick local install.
- Keploy Go SDK β Install & Merge Test Coverage β set up a language SDK.
- Keploy CLI Commands β commands to run after installing.