https://github.com/parsecph/clobbr
⚡️ A tool to check the speed and resilience of your API endpoints against multiple parallel or sequence requests.
https://github.com/parsecph/clobbr
api cli developer-tools gql http performance requests speedtest terminal-app testing-tools tools web-app
Last synced: 8 days ago
JSON representation
⚡️ A tool to check the speed and resilience of your API endpoints against multiple parallel or sequence requests.
- Host: GitHub
- URL: https://github.com/parsecph/clobbr
- Owner: parsecph
- License: mit
- Created: 2020-04-05T08:09:53.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2025-09-24T21:32:55.000Z (4 months ago)
- Last Synced: 2025-10-19T21:00:31.020Z (3 months ago)
- Topics: api, cli, developer-tools, gql, http, performance, requests, speedtest, terminal-app, testing-tools, tools, web-app
- Language: TypeScript
- Homepage: https://clobbr.app
- Size: 8.35 MB
- Stars: 229
- Watchers: 2
- Forks: 14
- Open Issues: 33
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Clobbr - test your api's response times
Test your api endpoints to see how well they perform under multiple requests (clobber your apis!), in sequence or parallel.
[](https://github.com/parsecph/clobbr/tree/master/packages/cli) [](https://github.com/parsecph/clobbr/tree/master/packages/api) [](https://github.com/parsecph/clobbr/actions/workflows/nodejs.yml)
|
|
|
|-|-|
## Quick start
### Application
Download on [the Mac App Store](https://apps.apple.com/us/app/clobbr-test-endpoint-speed/id1629096010?mt=12) or [the Microsoft Store](https://apps.microsoft.com/store/detail/clobbr-api-speed-test/9P7CVP0HG5V9?hl=en-us&gl=us) and start testing your api endpoints.
### Command Line (cli)
```bash
npx @clobbr/cli run --url "https://api.github.com/zen"
```
Run `npx @clobbr/cli` to see all options or
head over to [@clobbr/cli docs](./packages/cli/README.md).
Binaries are also available for your favorite OS [here ⬇️ 💿](https://github.com/parsecph/clobbr/releases).
#### CI/CD
The cli can be used in a CI context too.
[See examples with popular CIs here ↗️](https://github.com/parsecph/clobbr-ci-examples)
## What the cli can do
This package can stress-test your API endpoints in various ways so you can get a better idea on how your app would work under a (closer to) real world scenario.
Configure requests, set iterations and analyze response times of your API endpoints in a fashionable ascii chart or jaw-dropping table.
On top of that, get stats on responses such as mean, standard deviation, 5th/95th/99th percentiles and more.
With all that, output to various file formats such as csv, json, yaml and more. Use in your CI of choice or just run it locally.
### Usage examples for the cli
#### Kitchen sink example
```bash
npx @clobbr/cli run \
--url "https://api.github.com/zen" \
--method GET \
--iterations 50 \
--parallel \
--checks mean=200 median=200 stdDev=50 q5=150 q50=200 q95=250 q99=300 pctOfSuccess=95 \
--headersPath "headers.json" \
--dataPath "data.json" \
--outputFile \
--outputFormat yaml \
--table "compact"
```
> This is an advanced run configuration example. Typically, less config is needed. Read on for more.
#### Define iterations
```bash
npx @clobbr/cli run \
--url "https://api.github.com/zen" \
--iterations 30
```

#### Send requests in parallel
```bash
npx @clobbr/cli run \
--url "https://api.github.com/zen" \
--iterations 30 \
--parallel
```

#### Display a summary table
```bash
npx @clobbr/cli run \
--url "https://api.github.com/zen" \
--iterations 30 \
--table "full"
```

#### Display a minimal summary table
```bash
npx @clobbr/cli run \
--url "https://api.github.com/zen" \
--iterations 30 \
--table "compact"
```

#### Customize Request Method
`GET` is used as the default request method, but you can pass an optional request method, such as `POST`, `PUT`, `PATCH`, `DELETE` etc.
```bash
npx @clobbr/cli run \
--url "https://api.github.com/zen" \
--method OPTIONS
```
#### Send Headers
Arbitrary request headers are accepted as a JSON file.
> Tip 💡
>
> Passing { Cookie: "val" } adds a cookie to the request.
```json
# headers.json
{
"Authorization": "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.e30.Et9HFtf9R3",
"User-Agent": "Mozilla/5.0"
}
```
```bash
npx @clobbr/cli run \
--url "https://api.github.com/zen" \
--iterations 20 \
--headersPath "headers.json"
```
#### Send Data
Arbitrary request data is accepted as a JSON file.
```json
# data.json
{
"id": "17b",
"user": {
"firstName": "Jane",
"lastName": "Doe"
},
"visits": 50
}
```
```bash
npx @clobbr/cli run \
--url "https://api.github.com/zen" \
--iterations 20 \
--method "POST" \
--dataPath "data.json"
```
#### Analyze failed request iterations
By default, details on failed iterations are neatly displayed via the table option.
```bash
npx @clobbr/cli run \
--url "https://api.github.com/zen" \
--iterations 20 \
--method "POST" \
--headersPath "headers.json" \
--dataPath "data.json" \
--table "compact"
```

#### Get results in different file formats
Results will be shown in a human-readable format by default, but you can also get results in JSON, YAML and CSV format.
```bash
npx @clobbr/cli run \
--url "https://api.github.com/zen" \
--outputFormat json \
--outputFile
```
#### Run checks against results
Set target values for percentage of success (pctOfSuccess), mean (ms), median (ms), standardDeviation (stdDev in ms) and supported quantiles in ms (q5, q50, q95, q99).
```bash
npx @clobbr/cli run \
--url "https://api.github.com/zen" \
--checks mean=200 median=200 stdDev=50 q5=150 q50=200 q95=250 q99=300 pctOfSuccess=95
```

Only include checks that you want to run. If you don't specify a check, it will not be run.
```bash
npx @clobbr/cli run \
--url "https://api.github.com/zen" \
--checks pctOfSuccess=90
```
-----------------
Save 100s of hours of work by using Page AI to generate a beautiful website. In just minutes!
| | |
| :- | :- |
|
Page AI
AI Website Generator that designs and writes clean code.
Try the app on pageai.pro. |
|
-----------------
Apihustle is a collection of tools to test, improve and get to know your API inside and out.
[apihustle.com](https://apihustle.com)
| | | | |
| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :----------- | :------------------------------------------------------- | :------------------------------------------- |
|
| **Page AI** | AI Website Generator that designs and writes clean code. | [pageai.pro](https://pageai.pro) |
|
| **Shipixen** | Create a personalized blog & landing page in minutes | [shipixen.com](https://shipixen.com) |
|
| **Page UI** | Landing page UI components for React & Next.js | [pageui.dev](https://pageui.dev) |
|
| **Clobbr** | Load test your API endpoints. | [clobbr.app](https://clobbr.app) |
|
| **Crontap** | Schedule API calls using cron syntax. | [crontap.com](https://crontap.com) |
|
| **CronTool** | Debug multiple cron expressions on a calendar. | [tool.crontap.com](https://tool.crontap.com) |
-----------------
-----------------