API Test Data Generator

Runs in browser Test Data

Describe fields (or paste a JSON Schema) and generate valid payloads plus invalid, boundary and missing-field variants, ready to feed data-driven API tests.

TEST DATA ONLY — all generated names, contacts, identifiers and numbers are synthetic and do not belong to real people or accounts.
Privacy: This tool runs entirely in your browser. Your input never leaves your device.
Loading tool…

How to use API Test Data Generator

  1. Describe the fields (or paste a JSON Schema / OpenAPI schema) in the input area.
  2. Choose how many valid rows you need, the output format and whether to include boundary and invalid variants.
  3. Optionally set a seed so the same dataset is generated on every run.
  4. 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) required

Output:

{"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.