Test your APIs under realistic traffic conditions
API Load Testing
Simulate hundreds of concurrent API requests to find bottlenecks before your users do. Every run is a k6 script generated from your plan, so REST and GraphQL over HTTP use the same engine.
Test REST, GraphQL, WebSocket, and gRPC APIs
Open-model arrival rate: a fixed request rate, whatever the response time
Real-time response time and error rate monitoring
Custom headers, authentication, and payloads
JavaScript-based test scripting with k6
Detailed percentile breakdowns (p50, p95, p99)
api-load-test.js
import http from 'k6/http';
import { check, sleep } from 'k6';
export const options = {
vus: 100,
duration: '2m',
};
export default function () {
const res = http.get('https://api.example.com/users');
check(res, {
'status is 200': (r) => r.status === 200,
'response time < 500ms': (r) => r.timings.duration < 500,
});
sleep(1);
}Frequently asked questions
Related guides
Run this as a plan
Put the scenario in your app's Config/load-plan.json and run it from the narduk-app CLI.