Skip to content
LifeSim

API reference

One GET request returns one or more fictional people as JSON. No key is needed. Version 3 keeps every v2 field and URL.

Quick start

curl "https://lifesim.io/api/v1/people?seed=12345"
curl "https://lifesim.io/api/v1/people?num=100&format=csv" -o people.csv

Endpoints

Method and pathReturns
GET /api/The original v2 endpoint, kept unchanged for existing clients. For repeatable seeds and batches, use /api/v1/people.
GET /api/v1/peoplePeople as JSON or CSV (format=csv). The parameters, seeds and errors below apply to this endpoint.
GET /openapi.jsonThis reference as an OpenAPI 3.0.3 document.

Parameters

NameTypeDefaultRule
numinteger11 to 100
seedintegerrandom0 to 2147483647
formatstringjsonjson or csv, /api/v1/people only

Seeds

The same seed returns the same person. The birthday is fixed, so the age goes up as time passes.

With num above 1, the first person uses your seed and the rest use seeds derived from it. Every person carries its own seed, so you can fetch any one of them again alone.

A seed is repeatable against one reference dataset. The response names it in meta.dataset.

Errors

Errors return JSON with a code you can test and a message you can show.

{
  "error": {
    "code": "invalid_num",
    "message": "num must be from 1 to 100. You sent 500."
  }
}
StatusCodeWhen
400invalid_numnum is not a whole number from 1 to 100
400invalid_seedseed is not a whole number from 0 to 2147483647
400invalid_formatformat is not json or csv, or csv was asked of /api/
422seed_unavailablethe generator cannot make a person from this seed; try another seed
502upstream_failedthe generator behind the API did not answer
503unavailablereference data is not loaded

Response

time is the generation time in seconds, people is the list, and meta names the engine and dataset. The example below leaves out married and timeline to keep it short.

{
  "time": 0.004,
  "people": [
    {
      "age": 71,
      "birth_day": "1955-03-05",
      "children": {
        "children": false
      },
      "education": {
        "education_highest": "Bachelor's degree"
      },
      "email": {
        "status": true,
        "address": "carmen.vazquez@gmail.com"
      },
      "employment": {
        "status": "Employed",
        "company": {
          "size": "Large"
        },
        "schedule": {
          "start": "7:00",
          "end": "18:00",
          "days": {
            "text": "Monday-Friday",
            "day_nums": [1, 2, 3, 4, 5]
          }
        },
        "commute": {
          "time": 36,
          "type": "car",
          "description": "Carmen has a rural 36 minute commute by car.",
          "text": "by car"
        }
      },
      "favorite_color": "Blue",
      "housing": {
        "owns": true,
        "type": "House",
        "status": "Homeowner"
      },
      "income": {
        "num": 3.8,
        "min": 150000,
        "max": 200000,
        "amount": 162322
      },
      "location": {
        "id": "1600000US2577890",
        "density": "rural",
        "location": "West Springfield Town, Massachusetts",
        "population": "28391",
        "city": "West Springfield Town",
        "state": "Massachusetts",
        "state_abbrev": "MA",
        "location_exact": {
          "lat": 42.092957100999996,
          "lng": -72.64807676
        },
        "races": {
          "white": "24508",
          "black": "939",
          "asian": "4",
          "american_indian": "1",
          "hispanic": 3475
        }
      },
      "name_first": "Carmen",
      "name_last": "Vazquez",
      "personality": {
        "bigFive": {
          "openness": 56,
          "conscientiousness": 55,
          "extraversion": 42,
          "agreeableness": 50,
          "neuroticism": 47
        }
      },
      "pets": {
        "has_pets": true,
        "pets": ["Bird"]
      },
      "phone": {
        "phone": true,
        "smartphone": false,
        "carrier": "AT&T"
      },
      "physical": {
        "gender": "Male",
        "height": {
          "cm": 171,
          "imperial": {
            "ft": 5,
            "in": 7
          }
        },
        "weight": {
          "kg": 64,
          "lbs": 141,
          "bmi": 22,
          "bmiDescription": "Healthy Weight"
        },
        "hair_color": "Brown",
        "eye_color": "Brown",
        "sexuality": "Heterosexual",
        "handedness": "Right Handed",
        "vision": {
          "color_vision": true
        },
        "lactose_tolerance": true,
        "race": "Hispanic",
        "pronouns": {
          "personal": "he",
          "possessive": "his",
          "objective": "him"
        },
        "penis_size": {
          "cm": 15,
          "imperial": {
            "ft": 0,
            "in": 6
          }
        },
        "piercing": {
          "earlobe": false
        },
        "blood_type": "B+",
        "allergies": ["Penicillin"],
        "has_allergies": true
      },
      "religion": "Catholic",
      "religiousity": 33,
      "seed": 12345,
      "smoking": {
        "smoking": false
      },
      "social_media": {
        "uses_social_media": true,
        "platforms": ["Facebook", "YouTube", "Reddit"],
        "platform_count": 3
      },
      "summary": "Carmen Vazquez is a 71 year old hispanic male. He lives in West Springfield Town, Massachusetts, a rural city of 28,000 people. Carmen works at a large company and commutes by car.",
      "swim_ability": true,
      "tendencies": {
        "musicGenres": ["Pop", "Country"],
        "podcastAffinity": 0,
        "drinking": {
          "drinking": true
        }
      },
      "vehicles": {
        "has_vehicle": true,
        "count": 2,
        "primary_transport": "Personal Vehicle"
      },
      "veteran": {
        "is_veteran": true,
        "branch": "Marines",
        "service_period": "Vietnam Era"
      },
      "wallet": {
        "credit_cards": [
          {
            "num": "3675394150182975",
            "type": "American Express",
            "prefix": 3,
            "name": "Carmen Vazquez",
            "date": "16/28",
            "cvv": 500
          },
          {
            "num": "5141044754060280",
            "type": "Master Card",
            "prefix": 5,
            "name": "Carmen Vazquez",
            "date": "04/29",
            "cvv": 882
          },
          {
            "num": "4692019975126231",
            "type": "Visa",
            "prefix": 4,
            "name": "Carmen Vazquez",
            "date": "24/31",
            "cvv": 698
          },
          {
            "num": "4034542091485279",
            "type": "Visa",
            "prefix": 4,
            "name": "Carmen Vazquez",
            "date": "07/27",
            "cvv": 226
          },
          {
            "num": "4165340580917907",
            "type": "Visa",
            "prefix": 4,
            "name": "Carmen Vazquez",
            "date": "30/29",
            "cvv": 176
          },
          {
            "num": "6092659878783314",
            "type": "Discover",
            "prefix": 6,
            "name": "Carmen Vazquez",
            "date": "20/27",
            "cvv": 857
          }
        ],
        "cash": 24,
        "misc": []
      }
    }
  ],
  "meta": {
    "jsonapi": {
      "version": 3
    },
    "engine": "upstream",
    "dataset": "upstream"
  }
}

Fields

Every field of a person, grouped as in the response. Nested fields use dotted paths.

Person

FieldTypeMeaning
seedintegerSeed for this person; pass it back to get the same person
name_firststringFirst name
name_laststringLast name
ageintegerAge in years on the generation date
birth_daydateDate of birth, YYYY-MM-DD
religionstringReligious affiliation
religiousityintegerHow religious, 0 to 100 (spelling kept from API v2)
favorite_colorstringFavorite color
swim_abilitybooleanCan swim
timelinemap of TimelineEventLife events keyed by name, for example birth or wedding
summarystringOne-paragraph description

Physical

FieldTypeMeaning
physical.genderstringSex as recorded on the census formOne of: Male, Female
physical.height.cmintegerHeight in centimeters
physical.height.imperial.ftintegerFeet part of the height
physical.height.imperial.inintegerInches part of the height
physical.weight.kgintegerWeight in kilograms
physical.weight.lbsintegerWeight in pounds
physical.weight.bmiintegerBody mass index, rounded
physical.weight.bmiDescriptionstringCDC BMI categoryOne of: Underweight, Healthy Weight, Overweight, Obese
physical.hair_colorstringHair color
physical.eye_colorstringEye color
physical.racestringRace or ethnicity, drawn from the place's population mix
physical.sexualitystringSexual orientation
physical.handednessstringDominant handOne of: Right Handed, Left Handed, Ambidextrous
physical.vision.color_visionbooleanTrue when the person is not color blind
physical.lactose_tolerancebooleanCan digest lactose
physical.blood_typestringABO and Rh blood type, weighted by raceOne of: O+, O-, A+, A-, B+, B-, AB+, AB-
physical.allergiesarray of stringFood, environmental and drug allergies
physical.has_allergiesbooleanTrue when allergies is not empty
physical.pronouns.personalstringSubject pronoun, for example she
physical.pronouns.possessivestringPossessive pronoun, for example her
physical.pronouns.objectivestringObject pronoun, for example her
physical.piercing.earlobebooleanHas pierced earlobes

Location

FieldTypeMeaning
location.idstringCensus-style place id, 1600000US + state FIPS + place code
location.citystringCity or town
location.statestringState name
location.state_abbrevstringTwo-letter state code
location.locationstringCity and state as one string
location.populationstringPlace population (a string, as in API v2)
location.densitystringSettlement typeOne of: urban, suburban, rural
location.location_exact.latnumberLatitude of a point near the place
location.location_exact.lngnumberLongitude of a point near the place
location.races.whitestringShare of the place that is White, percent
location.races.blackstringShare that is Black, percent
location.races.asianstringShare that is Asian, percent
location.races.american_indianstringShare that is American Indian or Alaska Native, percent
location.races.hispanicnumberShare that is Hispanic or Latino, percent (a number, as in API v2)

Income

FieldTypeMeaning
income.amountintegerAnnual income in US dollars
income.minintegerLower bound of the income bracket
income.maxintegerUpper bound of the income bracket
income.numnumberIncome percentile, 1 to 99

Education

FieldTypeMeaning
education.education_higheststringHighest level finishedOne of: No High School, Some High School, High School Graduate, Some College, Associate's degree, Bachelor's degree, Master's degree, Doctorate

Employment

FieldTypeMeaning
employment.statusstringWork statusOne of: Employed, Unemployed, Retired, Student
employment.company.sizestringEmployer sizeOne of: Small, Medium, Large
employment.schedule.startstringShift start, 24-hour H:MM
employment.schedule.endstringShift end, 24-hour H:MM
employment.schedule.days.textstringWorking days as text, for example Monday-Friday
employment.schedule.days.day_numsarray of integerWorking days, 0 = Sunday
employment.commute.timeintegerOne-way commute in minutes
employment.commute.typestringMode: car, bus, train, bike, walk or remote
employment.commute.descriptionstringOne sentence about the commute
employment.commute.textstringMode as a phrase, for example by car

Marriage

FieldTypeMeaning
married.marriedbooleanCurrently married
married.wedding_day.date(optional)dateWedding date
married.wedding_day.date_formatted(optional)stringWedding date as text, for example July 4, 1995
married.wedding_day.age(optional)integerAge at the wedding
married.spouse(optional)any

Housing

FieldTypeMeaning
housing.ownsbooleanOwns their home
housing.typestringKind of homeOne of: House, Apartment, Condo, Townhouse, Mobile Home, Farmhouse
housing.statusstringTenureOne of: Homeowner, Renter

Pets

FieldTypeMeaning
pets.has_petsbooleanHas at least one pet
pets.petsarray of stringKinds of petsOne of: Dog, Cat, Fish, Bird, Small Animal, Reptile
pets.dog_count(optional)integerNumber of dogs, when pets includes Dog
pets.cat_count(optional)integerNumber of cats, when pets includes Cat

Veteran

FieldTypeMeaning
veteran.is_veteranbooleanServed in the US military
veteran.branch(optional)stringBranch, veterans onlyOne of: Army, Navy, Air Force, Marines, Coast Guard
veteran.service_period(optional)stringEra of service, veterans onlyOne of: World War II, Korean War, Vietnam Era, Gulf War Era I, Gulf War Era II

Social media

FieldTypeMeaning
social_media.uses_social_mediabooleanUses at least one platform
social_media.platformsarray of stringPlatforms usedOne of: Facebook, YouTube, Instagram, TikTok, Snapchat, LinkedIn, X, Reddit, Pinterest
social_media.platform_countintegerNumber of platforms used

Vehicles

FieldTypeMeaning
vehicles.has_vehiclebooleanHousehold has a vehicle
vehicles.countintegerVehicles owned
vehicles.primary_transportstringMain way of getting aroundOne of: Personal Vehicle, Public Transit

Phone

FieldTypeMeaning
phone.phonebooleanHas a mobile phone
phone.number(optional)stringFictional number in the 555-01xx range
phone.smartphone.OSstringPhone operating systemOne of: iOS, Android
phone.smartphone.BrandstringPhone maker
phone.smartphone.modelstringPhone model
phone.carrierstringMobile carrier

Email

FieldTypeMeaning
email.statusbooleanHas an email address
email.addressstringAddress on a reserved example domain, never deliverable

Personality

FieldTypeMeaning
personality.bigFive.opennessintegerOpenness to experience, 0 to 100
personality.bigFive.conscientiousnessintegerConscientiousness, 0 to 100
personality.bigFive.extraversionintegerExtraversion, 0 to 100
personality.bigFive.agreeablenessintegerAgreeableness, 0 to 100
personality.bigFive.neuroticismintegerNeuroticism, 0 to 100

Tendencies

FieldTypeMeaning
tendencies.musicGenresarray of stringFavorite music genres
tendencies.podcastAffinityintegerHow likely they are to listen to podcasts, 0 to 100
tendencies.drinking.drinkingbooleanDrinks alcohol

Limits and access

The API is free and needs no key. For API keys and higher rate limits, use the LifeSim listing on RapidAPI.

Try requests in the playground.

API reference | LifeSim