form enum Pin the payload shape, or allow any supported form.
Generate coherent fake contact, signup, survey and application submissions with exact validation, attachment, spam and processing states.
Generated test data for fixtures and development
| Parameter | Type | Default & allowed | Description |
|---|---|---|---|
form | enum | default: any allowed: contact | signup | survey | application | any example: signup | Pin the payload shape, or allow any supported form. |
status | enum | default: any allowed: valid | invalid | pending | spam | any example: invalid | Pin valid, invalid, pending or spam processing state, or allow any. |
errorCount | int | allowed: 1 – 5 example: 3 | Exact validation errors; only valid for invalid status. With status=any it selects invalid. |
attachmentCount | int | default: 0 allowed: 0 – 2 example: 2 | Exact safe attachment metadata records per submission. |
windowDays | int | default: 30 allowed: 1 – 90 example: 14 | Elapsed days before asOf that may contain submission timestamps. |
asOf | date | example: 2026-07-10T12:00:00.000Z | Replay anchor; defaults to the request clock and is always echoed. |
form enum Pin the payload shape, or allow any supported form.
status enum Pin valid, invalid, pending or spam processing state, or allow any.
errorCount int Exact validation errors; only valid for invalid status. With status=any it selects invalid.
attachmentCount int Exact safe attachment metadata records per submission.
windowDays int Elapsed days before asOf that may contain submission timestamps.
asOf date Replay anchor; defaults to the request clock and is always echoed.
| Parameter | Type | Default & allowed | Description |
|---|---|---|---|
count | int | default: 10 allowed: 1 – 100 example: 3 | How many records to generate (1–100). |
seed | int | example: 42 | Deterministic output: the same seed always returns the same records. Omit for random (the used seed is echoed in meta.seed). |
fields | list | example: id,form | Return only these fields (comma-separated). Mutually exclusive with 'exclude'. |
exclude | list | example: accepted | Return all fields except these (comma-separated). |
format | enum | default: json allowed: json | ndjson | csv example: csv | Response format: json envelope, ndjson (one record per line) or csv. |
pretty | boolean | default: false example: true | Pretty-print the JSON response. |
unwrap | boolean | default: false example: true | Drop the envelope: return the raw array/object without data/meta wrapper. |
count int How many records to generate (1–100).
seed int Deterministic output: the same seed always returns the same records. Omit for random (the used seed is echoed in meta.seed).
fields list Return only these fields (comma-separated). Mutually exclusive with 'exclude'.
exclude list Return all fields except these (comma-separated).
format enum Response format: json envelope, ndjson (one record per line) or csv.
pretty boolean Pretty-print the JSON response.
unwrap boolean Drop the envelope: return the raw array/object without data/meta wrapper.
| Field | Type | Description | Example |
|---|---|---|---|
id | string | Distinct fictional submission ID. | submission_fixture_0_a12b34c56d78ef |
form | string | contact | signup | survey | application. | signup |
status | string | valid | invalid | pending | spam. | invalid |
payload | object | Bounded form-specific fictional values. | {"name":"Avery Jensen","email":"submitter-a1b2c3d4@example.org","username":"fixture_1234abcd","password":"not-a-secret-1234","acceptedTerms":true,"marketingOptIn":false} |
errors | object[] | Field-addressable required, format or type errors; nonempty only for invalid status. Each rejectedValue exactly matches the deliberately invalid value retained in payload. | [{"field":"email","code":"invalid_format","message":"The fictional email value has an invalid format.","rejectedValue":"not-an-email"}] |
attachments | object[] | Zero to two safe metadata-only attachments with coherent MIME type. | [{"id":"att_fixture_1","fileName":"fixture-1.pdf","mimeType":"application/pdf","sizeBytes":42000,"url":"https://uploads.example/files/att_fixture_1"}] |
submittedAt | string (ISO 8601) | Submission time inside the resolved window. | 2026-07-09T10:00:00.000Z |
processedAt nullable | string (ISO 8601) | Ordered processing time; null only while pending. | 2026-07-09T10:01:00.000Z |
spam nullable | object | Threshold-consistent spam score/reason for spam status only. | null |
accepted | boolean | True exactly for valid submissions. | false |
id string Distinct fictional submission ID.
example: submission_fixture_0_a12b34c56d78ef
form string contact | signup | survey | application.
example: signup
status string valid | invalid | pending | spam.
example: invalid
payload object Bounded form-specific fictional values.
example: {"name":"Avery Jensen","email":"submitter-a1b2c3d4@example.org","username":"fixture_1234abcd","password":"not-a-secret-1234","acceptedTerms":true,"marketingOptIn":false}
errors object[] Field-addressable required, format or type errors; nonempty only for invalid status. Each rejectedValue exactly matches the deliberately invalid value retained in payload.
example: [{"field":"email","code":"invalid_format","message":"The fictional email value has an invalid format.","rejectedValue":"not-an-email"}]
attachments object[] Zero to two safe metadata-only attachments with coherent MIME type.
example: [{"id":"att_fixture_1","fileName":"fixture-1.pdf","mimeType":"application/pdf","sizeBytes":42000,"url":"https://uploads.example/files/att_fixture_1"}]
submittedAt string (ISO 8601) Submission time inside the resolved window.
example: 2026-07-09T10:00:00.000Z
processedAt string (ISO 8601) nullable Ordered processing time; null only while pending.
example: 2026-07-09T10:01:00.000Z
spam object nullable Threshold-consistent spam score/reason for spam status only.
example: null
accepted boolean True exactly for valid submissions.
example: false
/api/form-submissions?form=signup&status=invalid&errorCount=3&count=8&seed=42&asOf=2026-07-10T12%3A00%3A00.000Z {
"data": [
{
"id": "submission_fixture_0_15863c1d1cff87",
"form": "signup",
"status": "invalid",
"payload": {
"name": 12345,
"email": "submitter-7a958016@example.org",
"username": "fixture_cfb6a5c8",
"password": null,
"acceptedTerms": "not-a-boolean",
"marketingOptIn": true
},
"errors": [
{
"field": "acceptedTerms",
"code": "invalid_type",
"message": "The fictional acceptedTerms value has an invalid type.",
"rejectedValue": "not-a-boolean"
},
{
"field": "password",
"code": "required",
"message": "The fictional password field is required.",
"rejectedValue": null
},
{
"field": "name",
"code": "invalid_type",
"message": "The fictional name value has an invalid type.",
"rejectedValue": 12345
}
],
"attachments": [],
"submittedAt": "2026-07-08T18:09:40.151Z",
"processedAt": "2026-07-08T19:37:25.771Z",
"spam": null,
"accepted": false
},
…
"generatedAt": "2026-07-29T08:13:22.000Z"
}
} /api/form-submissions?form=application&status=pending&attachmentCount=2&count=5&seed=9&asOf=2026-07-10T12%3A00%3A00.000Z {
"data": [
{
"id": "submission_fixture_0_b31b86a1a956a6",
"form": "application",
"status": "pending",
"payload": {
"name": "Christian Lebsack",
"email": "submitter-51f328b2@example.org",
"role": "engineer",
"experienceYears": 6,
"portfolioUrl": "https://portfolio.example/73e779f6",
"coverNote": "This synthetic application demonstrates a bounded form payload."
},
"errors": [],
"attachments": [
{
"id": "att_fixture_0_1_e4850cde",
"fileName": "fixture-1-1.pdf",
"mimeType": "application/pdf",
"sizeBytes": 358312,
"url": "https://uploads.example/files/att_fixture_0_1_e4850cde"
},
{
"id": "att_fixture_0_2_2308cd05",
"fileName": "fixture-1-2.txt",
"mimeType": "text/plain",
"sizeBytes": 41449,
"url": "https://uploads.example/files/att_fixture_0_2_2308cd05"
}
],
"submittedAt": "2026-06-17T01:49:55.259Z",
"processedAt": null,
"spam": null,
"accepted": false
},
{
"id": "submission_fixture_1_b1fafad2aede49",
"form": "application",
"status": "pending",
…
"generatedAt": "2026-07-29T08:13:22.000Z"
}
} /api/form-submissions?form=contact&status=spam&count=6&seed=17&asOf=2026-07-10T12%3A00%3A00.000Z {
"data": [
{
"id": "submission_fixture_0_252bc1d3605563",
"form": "contact",
"status": "spam",
"payload": {
"name": "Mary Welch",
"email": "submitter-88755abf@example.org",
"subject": "Question about a fictional account",
"message": "This is synthetic form content for testing a contact workflow.",
"category": "account",
"consent": true
},
"errors": [],
"attachments": [],
"submittedAt": "2026-06-18T05:51:29.526Z",
"processedAt": "2026-06-18T07:49:33.146Z",
"spam": {
"score": 0.947,
"reason": "repeated_links"
},
"accepted": false
},
{
"id": "submission_fixture_1_1a411bb239200a",
"form": "contact",
"status": "spam",
"payload": {
"name": "Erick Heller",
"email": "submitter-c1cb87ee@example.org",
"subject": "Question about a fictional account",
"message": "This is synthetic form content for testing a contact workflow.",
"category": "billing",
"consent": true
},
"errors": [],
"attachments": [],
"submittedAt": "2026-06-12T19:20:22.897Z",
"processedAt": "2026-06-12T21:05:11.271Z",
…
"generatedAt": "2026-07-29T08:13:22.000Z"
}
} Generates bounded fictional form submissions for inboxes, moderation queues and validation-error interfaces. Four form shapes—contact, signup, survey and application—return realistic but safe payloads using reserved domains and obviously synthetic content.
Status controls every dependent field. Valid submissions are accepted with no validation errors; invalid submissions contain an exact requested number of errors and every error points to a field that exists in the payload; pending submissions have no processing timestamp; spam submissions carry a threshold-consistent score and reason. Attachments have extension/MIME agreement and safe .example URLs.
Omitted asOf resolves from the request clock and is echoed with windowDays, so the same seed can be replayed explicitly. Payload, error and attachment arrays are deliberately capped to keep count=100 responses within the release budget.
Yes. Every error names a field present in the returned payload and includes a stable code, message and rejected fixture value.
Yes. Use status=invalid&errorCount=3; incompatible status/error combinations return a clear 400.
No. Emails use reserved example domains and attachment links use the non-resolving .example namespace.
Build deterministic mock search pages with exact pagination, relevance or date sorting, facets, highlights, empty states and suggestions.
Generate coherent reservation lifecycles and deterministic IANA-timezone availability slots with exact capacity and DST behavior.
Generate coherent mock file-upload sessions and multipart records with exact byte progress, lifecycle states, checksums and safe example URLs.
Fake email addresses with name-derived usernames on guaranteed non-deliverable domains (example.com/net/org and .test) — or stamp your own with ?domain=.
Deterministic offset and opaque-cursor pagination fixtures with exact totals, stable sorting and no duplicated or skipped records.