Data Generators
GlassGen provides a variety of data generators to create synthetic data. Each generator can be used in the schema configuration using the $generator_type syntax.
Basic Types
String Generator
{ "field": "$string" }Generates a random word.
Integer Generator
{ "field": "$int" }Generates a random integer.
Integer Range Generator
{ "field": "$intrange(1,100)" }Generates a random integer within the specified range (inclusive). Only non-negative integers are supported as parameters.
Float Generator
{ "field": "$float" }Generates a random floating-point number with no fixed range (delegates to faker.pyfloat — values can be positive, negative, very large, or very small).
Price Generator
{ "field": "$price" }Generates a random price rounded to 2 decimal places. Defaults: min=0.99, max=9999.99. You can specify a custom range and decimal places:
{ "field": "$price(1.2, 2.3, 3)" }This generates a price between 1.2 and 2.3 with 3 decimal places.
Boolean Generator
{ "field": "$boolean" }Generates a random boolean value.
Choice Generator
{ "field": "$choice(red,blue,green)" }Randomly picks one value from the provided list.
Datetime Generator
{ "field": "$datetime" }Generates the current timestamp in ISO format (e.g., "2024-03-15T14:30:45.123456"). You can specify a custom format:
{ "field": "$datetime(\"%Y-%m-%d %H:%M:%S\")" }Timestamp Generator
{ "field": "$timestamp" }Generates the current Unix timestamp in seconds (e.g., 1710503445).
UUID Generator
{ "field": "$uuid" }Generates a random UUID v4 string. $uuid and $uuid4 are equivalent — both produce UUID v4 values.
Greeting Generator
{ "field": "$greeting" }Generates a random greeting: "Hello", "Hi", "Hey", "Greetings", or "Welcome".
Prefixed ID Generator
{ "field": "$prefixed_id(prod, 1, 9999)" }Generates a string in the format prefix_number (e.g., prod_42). Parameters:
prefix(default:item): string prefixmin(default:1): minimum numbermax(default:1000): maximum number
{ "order_id": "$prefixed_id(order, 1000, 9999)" }Array Generator
{ "field": "$array(email, 3)" }Generates a list of values using any other generator. Parameters:
generator_name: the name of the generator to use for each elementcount: number of elements in the array- additional parameters are forwarded to the underlying generator
Examples:
{
"tags": "$array(choice(red,blue,green), 2)",
"scores": "$array(intrange(0,100), 5)",
"emails": "$array(email, 3)"
}Query String Generator
{ "field": "$query_string" }Generates a URL query string that mimics a Google Analytics 4 event, including fields like cid, sid, en (event name), dt (page title), ul (language), and ur (region). Useful for simulating web analytics data.
Personal Information
Name Generator
{ "field": "$name" }Generates a random full name.
Email Generators
{ "field": "$email" }Generates a random email address.
{ "field": "$company_email" }Generates a random company email address.
Username Generator
{ "field": "$user_name" }Generates a random username.
Password Generator
{ "field": "$password" }Generates a random password.
Phone Number Generator
{ "field": "$phone_number" }Generates a random phone number.
SSN Generator
{ "field": "$ssn" }Generates a random Social Security Number.
Location
Country Generator
{ "field": "$country" }Generates a random country name.
City Generator
{ "field": "$city" }Generates a random city name.
Address Generator
{ "field": "$address" }Generates a random street address.
Zipcode Generator
{ "field": "$zipcode" }Generates a random zip code.
Business
Company Generator
{ "field": "$company" }Generates a random company name.
Job Generator
{ "field": "$job" }Generates a random job title.
URL Generator
{ "field": "$url" }Generates a random URL.
Other
Text Generator
{ "field": "$text" }Generates a random text paragraph.
IPv4 Generator
{ "field": "$ipv4" }Generates a random IPv4 address.
Currency Name Generator
{ "field": "$currency_name" }Generates a random currency name.
Color Name Generator
{ "field": "$color_name" }Generates a random color name.