How to use API Test Data Generator
- Describe the fields (or paste a JSON Schema / OpenAPI schema) in the input area.
- Choose how many valid rows you need, the output format and whether to include boundary and invalid variants.
- Optionally set a seed so the same dataset is generated on every run.
- Generate, review the preview and variant tables, then copy or download the files for your test runner.
API Test Data Generator features
- Describe request fields in a one-line-per-field DSL (type, required, min/max, lengths, enum, pattern) or paste a JSON Schema, sample object or OpenAPI document
- Generates up to 1,000 valid rows with realistic synthetic values (emails on example.com, dates, UUIDs, phone patterns) — reproducible with a seed
- Boundary variants at minimum, maximum and one step outside every numeric, length and array limit, each labelled with the expected outcome
- Invalid variants: missing required fields, wrong types, bad formats, out-of-range values, invalid enum members, nulls and extra fields
- Valid rows exported as JSON, JSON Lines or CSV; all variants exported together as JSON for data-driven runners
- Runs entirely in the browser; nothing is uploaded
API Test Data Generator example
Sign-up dataset
Input:
email: email required
age: integer min=18 max=99
plan: enum(free|pro) requiredOutput:
{"email":"harper.reed@example.com","age":31,"plan":"pro"} ← valid row
age = 17 → expected 4xx (minimum − 1 step)
missing "email" → expected 4xx (missing-required)Frequently asked questions about API Test Data Generator
How is this different from the payload generator?
It focuses on datasets: many rows for data-driven tests, from a field list or schema, including boundary and invalid variants.
Is the data real?
No — everything is synthetic test data that never imitates real people. Emails use reserved example.* domains and identifiers are random.
Can I control the output format?
Yes, JSON, JSON Lines and CSV are supported for the valid rows; variants are shown as tables and exported together as JSON.
How do I describe the fields?
One per line: "email: email required", "age: integer min=18 max=99", "plan: enum(free|pro) required", "tags: array maxItems=5". You can paste a JSON Schema, a sample object or an OpenAPI document instead.
What are boundary variants?
Copies of a valid payload with one field set to its minimum, maximum and one step outside each limit (also minLength/maxLength and maxItems), each labelled with the expected API outcome.
Technical notes
The field list is compiled to a JSON Schema (type, format, minimum/maximum, minLength/maxLength, enum, pattern, items) and fed to the same payload engine as the API Payload Generator; boundary rows are derived from the numeric, length and array constraints of that schema.