Generator · US data

US person

Endpoint GET /v1/us/person

What it covers

Returns a consistent synthetic US person: name, surname, initials, birth date, sex, and a matching SSN. The `sex` and age filters work as they do for every other country — but note why they can. A Danish CPR or Polish PESEL *encodes* the birth date and sex, so those endpoints read the filters back out of the identifier. A US SSN encodes **neither**, so here the filters shape the drawn birth date and name directly, and nothing about the resulting SSN reflects them. `invalid=true` makes only the SSN fail validation; the name and birth date stay clean.

Parameters

ParameterTypeDescription
atAgeintegerExact age in years at request time.
bornAfterstringpattern ^\d{4}(?:-\d{2}(?:-\d{2})?)?$Born after this date or fragment (YYYY, YYYY-MM, YYYY-MM-DD).
bornBeforestringpattern ^\d{4}(?:-\d{2}(?:-\d{2})?)?$Born before this date or fragment (YYYY, YYYY-MM, YYYY-MM-DD).
bornOnstringpattern ^\d{4}(?:-\d{2}(?:-\d{2})?)?$Born on a date or within a fragment: YYYY, YYYY-MM, or YYYY-MM-DD.
caseStrictbooleanKeep proper name casing (default `true`). Set `false` to deliberately mangle it — all-lowercase, all-UPPERCASE, or random — to stress-test case-insensitive consumers. Initials stay uppercase regardless.
countinteger1–10000Number of records to return, 1–10000. Omitted returns a single record; set it for a batch. Costs 1 token plus a tenth per record.
edgebooleanRestrict output to valid edge cases from the rare corners of the domain.
extremebooleanReturn a correct value wrapped in a hostile encoding (untrimmed whitespace, invisible/zero-width characters, BOM, or bidi/combining marks). Homoglyphs are excluded so the value stays machine-parseable; it still validates after normalisation.
format"plain" | "with-hyphens"SSN rendering: `with-hyphens` (default, `123-45-6789`) or `plain` (9 bare digits).
invalidbooleanReturn a deliberately invalid value that fails validation, for testing rejection paths.
olderThanintegerMinimum age in years at request time.
seedintegerInteger seed for reproducible output: the same seed always yields the same record.
sex"m" | "f"Encoded sex: "m" or "f".
youngerThanintegerMaximum age in years at request time.

Response fields

FieldTypeDescription
namestringGiven name(s), including a middle name where drawn.
surnamestringSurname, e.g. `Rodriguez`.
initialsstringUppercase initials of name and surname, no dots.
birthDatestringThe birth date, ISO `YYYY-MM-DD`. Drawn independently — the SSN encodes no date.
sex"m" | "f"The person’s sex. Drawn independently — the SSN encodes no sex.
ssnstringThe matching SSN, rendered per the requested format.

Other generators for United States

See all generators for United States →

The same kind of identifier elsewhere

Try it

Generate a live example below — every response is valid by format and entirely synthetic.