Sample JSON Files — Download Test Data (Nested Objects, 10 to 5,000 Records + JSONL)
JavaScript Object Notation (and JSON Lines) · .json, .jsonl · MIME type application/json
Download a sample JSON file shaped like a real API response: a meta object, then an orders array whose records contain nested items arrays and shipping objects with Canadian addresses. Three sizes (10, 500 and 5,000 records) cover fixture, integration and load tests, and a 1,000-line JSON Lines file covers streaming and log-style parsers.
JSON is the interchange format of the web, and its failure modes are well known: large files that must be streamed rather than loaded, numbers that lose precision, and NDJSON confused with a JSON array. These files give you a clean, deterministic input for each case.
Download sample JSON files
| File | Details | Size | Download |
|---|---|---|---|
sample-data-small.json | 10 records | 6 KB | |
sample-data-1000-lines.jsonl | 1,000 records | 234 KB | |
sample-data-medium.json | 500 records | 274 KB | |
sample-data-large.json | 5,000 records | 2.7 MB |
Need one of every data format? Download the data sample pack (202 KB, one small file of every data format (17 files)).
Use these files from the command line or CI
Every URL is stable and CORS-open. Pin the SHA-256 in your test and you will know the moment a fixture changes.
# Download one file curl -O https://pnb-website-bucket.s3.us-east-2.amazonaws.com/samples/data/json/sample-data-small.json # Verify it (SHA-256 is listed for every file above) shasum -a 256 sample-data-small.json # Machine-readable index of every sample file curl https://pnb-website-bucket.s3.us-east-2.amazonaws.com/samples/index.json | jq '.files[] | select(.format=="json")'
JSON format at a glance
| Full name | JavaScript Object Notation (and JSON Lines) |
|---|---|
| Extensions | .json, .jsonl |
| MIME type | application/json |
| Standard | RFC 8259 / ECMA-404; JSON Lines (jsonlines.org) |
| Structure | { meta, orders: [ { …, items: [], shipping: {} } ] } |
| Formatting | Pretty-printed, 2-space indent (JSON); one object per line (JSONL) |
| Encoding | UTF-8 |
What people test with sample JSON files
- API mocking and contract tests
- Streaming parsers (JSONL) versus DOM parsers (JSON)
- JSON → CSV flattening of nested structures
- Schema validation
Frequently asked questions
What is the difference between JSON and JSON Lines?
A JSON file is one value — here an object containing an array. A JSON Lines (.jsonl / NDJSON) file is one complete JSON object per line with no enclosing array, so it can be appended to and streamed line by line. Logs, exports and ML datasets use JSONL; APIs use JSON.
Are these JSON files safe to download?
Yes. Every file is generated by our own open script from scratch — nothing is scraped or user-uploaded — and contains no scripts, macros or executables. The SHA-256 of each file is published on this page so you can verify what you received.
Can I use the sample JSON files commercially?
Yes. They are free for any purpose, including commercial products, test suites, demos and redistribution, with no attribution required. There is nothing to license and no one to ask.
Can I hotlink these files or use them in CI?
Yes. Every link is a stable direct URL over HTTPS with Access-Control-Allow-Origin: * and long cache headers, so curl, wget, fetch() and test runners can pull them directly. A JSON index of every file is linked from each page (see the command-line section).
Related sample files
Testing a file pipeline? We build them.
Uploads, conversions, previews, document processing and media workflows are the kind of production systems Pine & Birch designs and runs for clients — which is why we needed these files in the first place.
See how we can help