Generators

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 prefix
  • min (default: 1): minimum number
  • max (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 element
  • count: 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.