industry enum Pin every company to this industry — the `industry` field matches and the `catchphrase` uses that industry's vocabulary. Omit for a random mix.
Fake companies with locale-aware names, industry-flavored catchphrases, founding years, log-distributed headcounts and safe example.com websites and emails.
Generated test data for fixtures and development
| Parameter | Type | Default & allowed | Description |
|---|---|---|---|
industry | enum | allowed: technology | finance | healthcare | retail | manufacturing | energy | media | transportation | hospitality | construction | agriculture | education example: technology | Pin every company to this industry — the `industry` field matches and the `catchphrase` uses that industry's vocabulary. Omit for a random mix. |
industry enum Pin every company to this industry — the `industry` field matches and the `catchphrase` uses that industry's vocabulary. Omit for a random mix.
| 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). |
locale | enum | default: en allowed: en | da | de | fr | es | it | pt | ja example: da | Locale for the generated data (names, addresses, …). |
fields | list | example: name,legalName | Return only these fields (comma-separated). Mutually exclusive with 'exclude'. |
exclude | list | example: email | 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).
locale enum Locale for the generated data (names, addresses, …).
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 |
|---|---|---|---|
name | string | Company display name from Faker — locale-aware (try ?locale=de or ?locale=ja). | Greenholt - Kerluke |
legalName | string | The name plus a locale-appropriate legal suffix (Inc., GmbH, ApS, …) — kept as-is when the generated name already carries one (e.g. 'Beier Inc', '株式会社永井不動産'). | Greenholt - Kerluke LLC |
industry | string | One of 12 industries; every record matches ?industry when set. | technology |
catchphrase | string | Marketing tagline built from the company's industry vocabulary (English in all locales). | Rethinking cloud infrastructure for modern enterprises |
foundedYear | integer | Founding year, uniform between 1950 and last calendar year (relative to request time). | 1998 |
employees | integer | Headcount, log-distributed between 2 and 50 000 — most companies are small, a few are huge (like reality). | 240 |
website | string (URL) | https://<slugified-name>.example.com — example.com is RFC 2606-reserved, so it can never be a real site. Non-Latin names use a company-NNN slug. | https://greenholt-kerluke.example.com |
email | string | contact@ mailbox on the same reserved, non-deliverable domain as the website. | contact@greenholt-kerluke.example.com |
name string Company display name from Faker — locale-aware (try ?locale=de or ?locale=ja).
example: Greenholt - Kerluke
legalName string The name plus a locale-appropriate legal suffix (Inc., GmbH, ApS, …) — kept as-is when the generated name already carries one (e.g. 'Beier Inc', '株式会社永井不動産').
example: Greenholt - Kerluke LLC
industry string One of 12 industries; every record matches ?industry when set.
example: technology
catchphrase string Marketing tagline built from the company's industry vocabulary (English in all locales).
example: Rethinking cloud infrastructure for modern enterprises
foundedYear integer Founding year, uniform between 1950 and last calendar year (relative to request time).
example: 1998
employees integer Headcount, log-distributed between 2 and 50 000 — most companies are small, a few are huge (like reality).
example: 240
website string (URL) https://<slugified-name>.example.com — example.com is RFC 2606-reserved, so it can never be a real site. Non-Latin names use a company-NNN slug.
example: https://greenholt-kerluke.example.com
email string contact@ mailbox on the same reserved, non-deliverable domain as the website.
example: contact@greenholt-kerluke.example.com
/api/companies?count=5&seed=42 {
"data": [
{
"name": "Hammes and Sons",
"legalName": "Hammes and Sons",
"industry": "energy",
"catchphrase": "Your partner in seamless renewables",
"foundedYear": 1952,
"employees": 4,
"website": "https://hammes-and-sons.example.com",
"email": "contact@hammes-and-sons.example.com"
},
{
"name": "Flatley-Friesen, Kassulke and Fisher-Hyatt",
"legalName": "Flatley-Friesen, Kassulke and Fisher-Hyatt Inc.",
"industry": "technology",
"catchphrase": "Smarter cybersecurity for busy professionals",
"foundedYear": 1971,
"employees": 407,
"website": "https://flatley-friesen-kassulke-and-fisher-hyatt.example.com",
"email": "contact@flatley-friesen-kassulke-and-fisher-hyatt.example.com"
},
{
"name": "Sipes, Heller and Schowalter-Stracke",
"legalName": "Sipes, Heller and Schowalter-Stracke Inc.",
"industry": "agriculture",
"catchphrase": "Reliable livestock management for everyday customers",
"foundedYear": 1994,
"employees": 3,
"website": "https://sipes-heller-and-schowalter-stracke.example.com",
"email": "contact@sipes-heller-and-schowalter-stracke.example.com"
},
{
"name": "Franecki, Rolfson and Ritchie",
"legalName": "Franecki, Rolfson and Ritchie Holdings",
"industry": "finance",
"catchphrase": "Rethinking banking for busy professionals",
"foundedYear": 2002,
"employees": 50,
"website": "https://franecki-rolfson-and-ritchie.example.com",
…
"generatedAt": "2026-07-29T08:13:22.000Z"
}
} /api/companies?industry=healthcare&count=10 {
"data": [
{
"name": "Hammes and Sons",
"legalName": "Hammes and Sons",
"industry": "healthcare",
"catchphrase": "Rethinking pharmacy services for local businesses",
"foundedYear": 1990,
"employees": 3,
"website": "https://hammes-and-sons.example.com",
"email": "contact@hammes-and-sons.example.com"
},
{
"name": "Flatley-Friesen, Kassulke and Fisher-Hyatt",
"legalName": "Flatley-Friesen, Kassulke and Fisher-Hyatt Holdings",
"industry": "healthcare",
"catchphrase": "Effortless electronic health records for everyday customers",
"foundedYear": 1963,
"employees": 37,
"website": "https://flatley-friesen-kassulke-and-fisher-hyatt.example.com",
"email": "contact@flatley-friesen-kassulke-and-fisher-hyatt.example.com"
},
{
"name": "Sipes, Heller and Schowalter-Stracke",
"legalName": "Sipes, Heller and Schowalter-Stracke Ltd.",
"industry": "healthcare",
"catchphrase": "Bringing effortless clinical workflows to global brands",
"foundedYear": 1950,
"employees": 797,
"website": "https://sipes-heller-and-schowalter-stracke.example.com",
"email": "contact@sipes-heller-and-schowalter-stracke.example.com"
},
{
"name": "Franecki, Rolfson and Ritchie",
"legalName": "Franecki, Rolfson and Ritchie Holdings",
"industry": "healthcare",
"catchphrase": "Seamless patient care for modern enterprises",
"foundedYear": 2014,
"employees": 2106,
"website": "https://franecki-rolfson-and-ritchie.example.com",
…
"generatedAt": "2026-07-29T08:13:22.000Z"
}
} /api/companies?locale=de&fields=name,website&count=8&seed=7 {
"data": [
{
"name": "Schwanitz-Neubert",
"website": "https://schwanitz-neubert.example.com"
},
{
"name": "Möldner-Hache",
"website": "https://moldner-hache.example.com"
},
{
"name": "Matschke-Emert",
"website": "https://matschke-emert.example.com"
},
{
"name": "Marxen AG",
"website": "https://marxen-ag.example.com"
},
{
"name": "Koha Gruppe",
"website": "https://koha-gruppe.example.com"
},
{
"name": "Hold-Hackelbusch",
"website": "https://hold-hackelbusch.example.com"
},
{
"name": "Bruder KG",
"website": "https://bruder-kg.example.com"
},
{
"name": "Richter, Stöppler und Gradzki",
"website": "https://richter-stoppler-und-gradzki.example.com"
}
],
"meta": {
"endpoint": "companies",
"count": 8,
"seed": 7,
"locale": "de",
"params": {},
"generatedAt": "2026-07-29T08:13:22.000Z"
}
} Generates believable fake companies in 8 locales: the name comes from Faker (Danish names with ApS/A/S, German GmbHs, Japanese 株式会社…), the legalName adds a locale-appropriate legal suffix when the name doesn't already carry one, and the website and email derive from the actual name on the RFC 2606-reserved example.com domain — they can never resolve to a real company's site or deliver mail. Non-Latin names (e.g. ?locale=ja) fall back to a deterministic company-NNN slug so the URL is always valid.
Set industry and every record is pinned to it: the industry field matches and the catchphrase is built from that industry's own vocabulary — solar power and grid management for energy, telehealth and diagnostics for healthcare, and so on. Omit it for a random mix where each catchphrase still matches its own record's industry. Catchphrases are English in every locale.
The numbers behave like the real economy: foundedYear is uniform between 1950 and last calendar year, while employees is log-distributed between 2 and 50 000 — lots of small shops, the occasional giant — so size-dependent UI states actually appear in fixtures. With seed, the same request returns byte-identical companies forever.
No — names, domains and catchphrases are generated; resemblance to real firms is coincidental, which is exactly what you want in demo screenshots.
Yes — industry filters generation to that sector, and the name, catchphrase and metadata stay coherent with it.
No — they're syntactically valid but fake. Use them for display; don't send mail or fetch pages against them.
Complete fake people — name, age-consistent birth date, email, phone, job and address — with working filters for gender, age range and email domain.
Realistic job postings with level-coherent USD salary ranges — filter by level, department, employment type and remote, and every filter truly works.
Fake e-commerce products with category-themed names, prices in real currencies (whole yen for JPY), valid EAN-13 barcodes, SKUs, ratings and image URLs.
Fake account transactions with realistic merchants, weighted statuses and currency-correct amounts — filter by type, status, amount range and date window.