# Generator summary

The following table summarizes the available generators. The table includes generator characteristics that you might take into account when you select the generator to use for a column.

[common-usage](https://docs.tonic.ai/app/generation/generators-assign-config/common-usage "mention") also provides some suggestions for generators to use for specific use cases.

<details>

<summary>Information in the table</summary>

The generator summary includes the following columns:

* **Generator** - The name of the generator, linked to the entry in the [generator reference](https://docs.tonic.ai/app/generation/generators/generator-reference).
* **Description** - An overview description of the generator.&#x20;
* **Supported features -** Includes the following information:
  * The [generator characteristics](https://docs.tonic.ai/app/generation/generators/generator-characteristics) that the generator supports
  * Whether the generator is a [composite generator](https://docs.tonic.ai/app/generation/generators/generator-types/generators-composite) or a [primary key generator](https://docs.tonic.ai/app/generation/generators/generator-types/primary-key-generators)
  * The generator [privacy ranking](https://docs.tonic.ai/app/privacy-report#privacy-report-privacy-ranking-about)

</details>

<table data-full-width="true"><thead><tr><th valign="top">Generator</th><th valign="top">Description</th><th valign="top">Supported features</th></tr></thead><tbody><tr><td valign="top"><a href="generator-reference/address">Address</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-address">AddressGenerator</a></td><td valign="top"><p>Generates replacement values for U.S. mailing addresses.</p><p>You select the address component or format for the replacement values.</p><p>For example, the column might only contain a street address or a postal code, or it might contain a full address.</p></td><td valign="top"><p>Consistency - Self and other<br>Linkable</p><p>Differential privacy if not consistent</p><p>Data-free if not consistent<br><br>Privacy ranking:</p><ul><li>1 if not consistent</li><li>4 if consistent</li></ul></td></tr><tr><td valign="top"><a href="generator-reference/algebraic">Algebraic</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-algebraic">AlgebraicGenerator</a></td><td valign="top"><p>Identifies the algebraic relationship between 3 or more numeric values, including at least one non-integer.</p><p>Based on the relationship, generates new values to match. If there is no relationship, uses the Categorical generator.</p></td><td valign="top">Linkable - linking is required<br><br>Privacy ranking: 3</td></tr><tr><td valign="top"><a href="generator-reference/alphanumeric-string-key">Alphanumeric String Key</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-alphanumeric-string-key">AlphaNumericPkGenerator</a></td><td valign="top"><p>Generates unique alphanumeric strings of the same length as the input.</p><p>For example, for the origin value <code>ABC123</code>, the output value is a six-character alphanumeric string such as <code>D24N05</code>.</p></td><td valign="top"><p>Consistency - Self only</p><p>Primary key generator</p><p>Unique columns allowed</p><p>Format-preserving encryption (FPE)<br><br>Privacy ranking:</p><ul><li>3 if not consistent</li><li>4 if consistent</li></ul></td></tr><tr><td valign="top"><a href="generator-reference/array-character-scramble">Array Character Scramble</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-array-character-scramble">ArrayTextMaskGenerator</a></td><td valign="top"><p>Within an array, replaces letters with random other letters, and numbers with random other numbers.</p><p>Preserves punctuation and whitespace.</p></td><td valign="top"><p>Consistency - Self only<br><br>Privacy ranking:</p><ul><li>3 if not consistent</li><li>4 if consistent</li></ul></td></tr><tr><td valign="top"><a href="generator-reference/array-json-mask">Array JSON Mask</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-array-json-mask">ArrayJsonMaskGenerator</a></td><td valign="top"><p>Used to transform array values in JSON.</p><p>To identify values to transform, you provide a list of JSONPaths.</p><p>For each JSONPath, you assign a sub-generator to apply to matching values.</p></td><td valign="top">Composite generator. Feature support is based on the sub-generators.<br><br>Privacy ranking: 5</td></tr><tr><td valign="top"><a href="generator-reference/array-regex-mask">Array Regex Mask</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-array-regex-mask">ArrayRegexMaskGenerator</a></td><td valign="top"><p>Used to transform values in an array.</p><p>To identify values to transform, you provide a regular expression.</p><p>For each capture group in an expression, you assign a sub-generator to apply to matching values.</p></td><td valign="top">Composite generator. Feature support is based on the sub-generators.<br><br>Privacy ranking: 5</td></tr><tr><td valign="top"><a href="generator-reference/ascii-key">ASCII Key</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-ascii-key">AsciiPkGenerator</a></td><td valign="top"><p>Generates unique alpha-numeric strings based on any printable ASCII characters.</p><p>You can optionally exclude lowercase letters from the generated values.</p><p>The replacement value does not preserve the length of the original value.</p></td><td valign="top"><p>Consistency - Self only</p><p>Primary key generator</p><p>Unique columns allowed</p><p>Format-preserving encryption (FPE)<br><br>Privacy ranking:</p><ul><li>3 if not consistent</li><li>4 if consistent</li></ul></td></tr><tr><td valign="top"><a href="generator-reference/business-name">Business Name</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-businessnamegenerator">BusinessNameGenerator</a></td><td valign="top">Generates a random company name-like string.</td><td valign="top"><p>Consistency - Self or other</p><p>Differential privacy if not consistent</p><p>Data-free if not consistent<br><br>Privacy ranking:</p><ul><li>1 if not consistent</li><li>4 if consistent</li></ul></td></tr><tr><td valign="top"><a href="generator-reference/categorical">Categorical</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-categorical">CategoricalGenerator</a></td><td valign="top"><p>Shuffles the original values for a column to different rows. Maintains the overall frequency of each value.</p><p>For example, a column contains the values <code>Small</code> (3 times), <code>Medium</code> (4 times), and <code>Large</code> (5 times).</p><p>In the transformed data, each value appears the same number of times, but the values are shuffled to different rows.</p></td><td valign="top"><p>Linkable</p><p>Differential privacy is configurable<br><br>Privacy ranking:</p><ul><li>2 with differential privac</li><li>3 without differential privacy</li></ul></td></tr><tr><td valign="top"><a href="generator-reference/character-scramble">Character Scramble</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-character-scramble">TextMaskGenerator</a></td><td valign="top"><p>Replaces letters with random other letters and numbers with random other numbers.</p><p>Preserves punctuation, whitespace, and mathematical symbols.</p></td><td valign="top"><p>Consistency - Self only<br><br>Privacy ranking:</p><ul><li>3 if not consistent</li><li>4 if consistent</li></ul></td></tr><tr><td valign="top"><a href="generator-reference/character-substitution">Character Substitution</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-character-substitution">StringMaskGenerator</a></td><td valign="top"><p>Replaces characters with other random characters. Preserves punctuation, capitalization, and whitespace.</p><p>A replacement character is always from within the same Unicode Block as the source character.</p><p>A source character is always mapped to the same destination character. For example, <code>M</code> might always map to <code>V</code>.</p></td><td valign="top"><p>Always self-consistent </p><p>Unique columns allowed<br><br>Privacy ranking: 4</p></td></tr><tr><td valign="top"><a href="generator-reference/company-name">Company Name</a> (Deprecated)<br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-company-name">CompanyNameGenerator</a></td><td valign="top"><p>This generator is deprecated. Use the <a href="../generator-reference#business-name">Business Name</a> generator instead.</p><p>Generates a random company name-like string.</p></td><td valign="top"><p>Consistency - Self or other</p><p>Differential privacy if not consistent</p><p>Data-free if not consistent<br><br>Privacy ranking:</p><ul><li>1 if not consistent</li><li>4 if consistent</li></ul></td></tr><tr><td valign="top"><a href="generator-reference/conditional">Conditional</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-conditional">ConditionalGenerator</a></td><td valign="top"><p>Applies different generators to rows conditionally based on the column value.</p><p>For example, apply the Character Scramble generator for values other than Test.</p><p>You configure a list of conditions. Each condition performs a check against the column value.</p><p>For each condition, you assign a sub-generator to apply to matching values.</p></td><td valign="top"><p>Unique columns allowed</p><p>Composite generator. Other feature support is based on the sub-generators.</p><p></p><p>Privacy ranking:</p><ul><li>If a fallback generator is selected, then the lower of 5 or the fallback generator.</li><li>5 if no fallback generator is selected.</li></ul></td></tr><tr><td valign="top"><a href="generator-reference/constant">Constant</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-constant">ConstantGenerator</a></td><td valign="top"><p>Uses a single specified value to replace all of the values in the column.</p><p>The replacement value must be compatible with the column data type.</p></td><td valign="top"><p>Differential privacy</p><p>Data-free<br><br>Privacy ranking: 1</p></td></tr><tr><td valign="top"><a href="generator-reference/continuous">Continuous</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-continuous">GaussianGenerator</a></td><td valign="top"><p>Generates a continuous distribution to fit the underlying data.</p><p>Can link to other columns to create multivariate distributions.</p><p>Can also be partitioned by other columns.</p></td><td valign="top"><p>Linkable</p><p>Differential privacy is configurable<br><br>Privacy ranking:</p><ul><li>2 with differential privacy</li><li>3 without differential privacy</li></ul></td></tr><tr><td valign="top"><a href="generator-reference/cross-table-sum">Cross Table Sum</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-cross-table-sum">CrossTableAggregateGenerator</a></td><td valign="top"><p>Populates the column using the sum of values from a column in another table.</p><p>To select the rows to use, uses a foreign key value that matches the primary key value for the current row.</p><p>For example, to transform the <strong>Total_Sales</strong> column in the <strong>Customers</strong> table, from the <strong>Transactions</strong> table, use the sum of the <strong>Amount</strong> values for rows where the <strong>Customer_ID</strong> value matches the primary key value for the current customer.</p></td><td valign="top">Privacy ranking: 3</td></tr><tr><td valign="top"><a href="generator-reference/csv-mask">CSV Mask</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-csv-mask">CsvMaskGenerator</a></td><td valign="top"><p>Used to mask text in a delimited format.</p><p>Parses the text as a row where the columns are delimited by a specified character.</p><p>For each index, you assign a sub-generator to apply to the index value.</p></td><td valign="top">Composite generator. Feature support is based on the sub-generators.<br><br>Privacy ranking: 5</td></tr><tr><td valign="top"><a href="generator-reference/custom-categorical">Custom Categorical</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-custom-categorical">CustomCategoricalGenerator</a></td><td valign="top">Replaces the original column value with a value from list of values that you provide.</td><td valign="top"><p>Consistency - Self and other</p><p>Linkable</p><p>Differential privacy if not consistent</p><p>Data-free if not consistent<br><br>Privacy ranking:</p><ul><li>1 if not consistent</li><li>4 if consistent</li></ul></td></tr><tr><td valign="top"><a href="generator-reference/date-truncation">Date Truncation</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-date-truncation">DateTruncationGenerator</a></td><td valign="top"><p>Truncates dates or timestamps to a specific date or time component.</p><p>For example, you might truncate a date value to the month or a timestamp to the hour.</p></td><td valign="top">Privacy ranking: 5</td></tr><tr><td valign="top"><a href="generator-reference/email">Email</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-email">EmailGenerator</a></td><td valign="top"><p>Scrambles characters in an email address.</p><p>Preserves the formatting and keeps the <code>@</code> and <code>.</code>. </p><p>You can identify specific email domains to not scramble.</p></td><td valign="top"><p>Consistency - Self only<br><br>Privacy ranking:</p><ul><li>3 if not consistent</li><li>4 if consistent</li></ul></td></tr><tr><td valign="top"><a href="generator-reference/event-timestamps">Event Timestamps</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-event-timestamps">EventGenerator</a></td><td valign="top"><p>Generates timestamps that fit an event distribution.</p><p>You can link columns to create a sequence of events across multiple columns.</p><p>You can also partition the generator by other columns.</p></td><td valign="top">Linkable<br><br>Privacy ranking: 3</td></tr><tr><td valign="top"><a href="generator-reference/file-name">File Name</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-file-name">FileNameGenerator</a></td><td valign="top"><p>Scrambles characters in a file name.</p><p>Preserves the formatting and the file extension.</p></td><td valign="top"><p>Consistency - Self only<br><br>Privacy ranking:</p><ul><li>3 if not consistent</li><li>4 if consistent</li></ul></td></tr><tr><td valign="top"><a href="generator-reference/find-and-replace">Find and Replace</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-find-and-replace">FindAndReplaceGenerator</a></td><td valign="top"><p>Replaces all instances of the find string with the replace string.</p><p>For the find string, you can optionally provide a regular expression.</p></td><td valign="top">Privacy ranking: 5</td></tr><tr><td valign="top"><p><a href="generator-reference/finnish-personal-identity-code">Finnish Personal Identity Code</a><br></p><p>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-finnish-pic">FinnishPicGenerator</a></p></td><td valign="top"><p>Generates a valid Finnish Personal Identity Code (PIC).</p><p>You configure the date range during which the PIC was issued.</p></td><td valign="top"><p>Consistency - Self only</p><p>Data-free if not consistent</p><p>Unique columns allowed</p><p>Format-preserving encryption (FPE)<br></p><p>Privacy ranking:</p><ul><li>1 if not consistent</li><li>4 if consistent</li></ul></td></tr><tr><td valign="top"><a href="generator-reference/fnr">FNR</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-fnr">FnrGenerator</a></td><td valign="top"><p>Transforms Norwegian national identity numbers.</p><p>You can optionally preserve the gender and birthdate portions of the identifier values.</p></td><td valign="top"><p>Consistency - Self and other</p><p>Unique columns allowed<br><br>Privacy ranking:</p><ul><li>3 if not consistent</li><li>4 if consistent</li></ul></td></tr><tr><td valign="top"><a href="generator-reference/geo">Geo</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-geo">GeoGenerator</a></td><td valign="top">Used to transform columns that contain latitude and longitude values.</td><td valign="top"><p>Linkable</p><p>Unique columns allowed<br><br>Privacy ranking: 3</p></td></tr><tr><td valign="top"><a href="generator-reference/hipaa-address">HIPAA Address</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-hipaa-address">HipaaAddressGenerator</a></td><td valign="top">Can be used to generate cities, states, zip codes, and latitude/longitude values that follow HIPAA guidelines for safe harbor.</td><td valign="top"><p>Consistency - Self only<br><br>Privacy ranking:</p><ul><li>3 if not consistent</li><li>4 if consistent</li></ul></td></tr><tr><td valign="top"><a href="generator-reference/hostname">Hostname</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-hostname">HostnameGenerator</a></td><td valign="top">Generates random host names, based on the English language.</td><td valign="top"><p>Consistency - Self and other</p><p>Differential privacy if not consistent</p><p>Data-free if not consistent<br><br>Privacy ranking:</p><ul><li>1 if not consistent</li><li>4 if consistent</li></ul></td></tr><tr><td valign="top"><a href="generator-reference/hstore-mask">HStore Mask</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-hstore-mask">HStoreMaskGenerator</a></td><td valign="top"><p>Used to transform values in an HStore column in a PostgreSQL database.</p><p>You specify a list of keys for which to transform the values.</p><p>For each key, you assign a generator to apply to the key value.</p></td><td valign="top">Composite generator. Feature support is based on the sub-generators.<br><br>Privacy ranking: 5</td></tr><tr><td valign="top"><a href="generator-reference/html-mask">HTML Mask</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-html-mask">HtmlMaskGenerator</a></td><td valign="top"><p>Used to transform columns that contain HTML content.</p><p>To identify the values to transform, you provide a list of path expressions.</p><p>For each path expression, you assign a generator to apply to the matching value.</p></td><td valign="top">Composite generator. Feature support is based on the sub-generators.<br><br>Privacy ranking: 5</td></tr><tr><td valign="top"><p><a href="generator-reference/iban">IBAN</a><br></p><p>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/iban-ibangenerator">IbanGenerator</a></p></td><td valign="top"><p>Generates an International Bank Account Number (IBAN).</p><p>You determine whether to preserve the banking code and country code from the original value.</p></td><td valign="top"><p>Consistency - Self only</p><p>Unique columns allowed</p><p>Format-preserving encryption (FPE) when either:</p><ul><li>Assigned to a primary key column.</li><li>Consistency is enabled.</li></ul><p></p><p>Privacy ranking - </p><ul><li>3 if not consistent</li><li>4 if consistent</li></ul></td></tr><tr><td valign="top"><a href="generator-reference/integer-key">Integer Key</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-integer-key">IntegerPkGenerator</a></td><td valign="top"><p>Generates unique integer values.</p><p>By default, the generated values are within the range of the column’s data type.</p><p>You can also specify a range for the generated values. The source values must be within that range.</p></td><td valign="top"><p>Consistency - Self only</p><p>Differential privacy if not consistent</p><p>Data-free if not consistent</p><p>Primary key generator</p><p>Unique columns allowed</p><p>Format-preserving encryption (FPE)<br><br>Privacy ranking:</p><ul><li>1 if not consistent</li><li>4 if consistent</li></ul></td></tr><tr><td valign="top"><a href="generator-reference/international-address">International Address</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/international-address-internationaladdressgenerator">InternationalAddressGenerator</a></td><td valign="top"><p>For Canadian mailing addresses, can generate:</p><ul><li>Street name</li><li>Postal code</li></ul><p>For United Kingdom (UK) mailing addresses, can generate:</p><ul><li>City</li><li>County</li><li>District</li><li>Country</li><li>Postal code</li></ul></td><td valign="top"><p>Consistency - Self only</p><p>Differential privacy if not consistent</p><p>Data-free if not consistent<br><br>Privacy ranking:</p><ul><li>1 if not consistent</li><li>4 if consistent</li></ul></td></tr><tr><td valign="top"><a href="generator-reference/ip-address">IP Address</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-ip-address">IPAddressGenerator</a></td><td valign="top"><p>Generates a random IP address-formatted string.</p><p>You specify the percentage of IPv4 addresses.</p><p>The remaining addresses are IPv6.</p></td><td valign="top"><p>Consistency - Self or other</p><p>Differential privacy if not consistent</p><p>Data-free if not consistent<br><br>Privacy ranking:</p><ul><li>1 if not consistent</li><li>4 if consistent</li></ul></td></tr><tr><td valign="top"><a href="generator-reference/json-mask">JSON Mask</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-json-mask">JsonMaskGenerator</a></td><td valign="top"><p>Used to transform values in JSON columns.</p><p>To identify values to transform, you provide a list of JSONPaths.</p><p>For each JSONPath, you assign a sub-generator to apply to matching values.</p></td><td valign="top">Composite generator. Feature support is based on the sub-generators.<br><br>Privacy ranking: 5</td></tr><tr><td valign="top"><a href="generator-reference/mac-address">MAC Address</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-mac-address">MACAddressGenerator</a></td><td valign="top">Generates a random MAC address formatted string.</td><td valign="top"><p>Consistency - Self only</p><p>Differential privacy if not consistent</p><p>Data-free if not consistent</p><p>Format-preserving encryption (FPE)<br><br>Privacy ranking:</p><ul><li>1 if not consistent</li><li>4 if consistent</li></ul></td></tr><tr><td valign="top"><a href="generator-reference/mongo-objectid-key">Mongo ObjectId Key</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-objectid-key">ObjectIdPkGenerator</a></td><td valign="top"><p>Generates unique MongoDB objectId values.</p><p>Can be assigned to text columns that contain MongoDB ObjectId values.</p><p>The column value must be 12 bytes long.</p></td><td valign="top"><p>Consistency - Self only<br><br>Privacy ranking:</p><ul><li>3 if not consistent</li><li>4 if consistent</li></ul></td></tr><tr><td valign="top"><a href="generator-reference/name">Name</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-name">NameGenerator</a></td><td valign="top"><p>Generates a random name string from a dictionary of first and last names.</p><p>You specify the name format.</p><p>For example, a column might contain only a first name, or a full name that is last name first.</p></td><td valign="top"><p>Consistency - Self or other</p><p>Differential privacy if not consistent</p><p>Data-free if not consistent<br><br>Privacy ranking:</p><ul><li>1 if not consistent</li><li>4 if consistent</li></ul></td></tr><tr><td valign="top"><a href="generator-reference/noise-generator">Noise Generator</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-noise-generator">NoiseGenerator</a></td><td valign="top"><p>Masks values in numeric columns.</p><p>Either adds or multiplies the original value by random noise.</p></td><td valign="top"><p>Consistency - Self or other<br><br>Privacy ranking:</p><ul><li>3 if not consistent</li><li>4 if consistent</li></ul></td></tr><tr><td valign="top"><a href="generator-reference/null">Null</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-null">NullGenerator</a></td><td valign="top">Replaces all of the column values with <code>NULL</code> values.</td><td valign="top"><p>Differential privacy</p><p>Data-free</p><p>Unique columns allowed<br><br>Privacy ranking: 1</p></td></tr><tr><td valign="top"><a href="generator-reference/numeric-string-key">Numeric String Key</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-numeric-string-key">NumericStringPkGenerator</a></td><td valign="top">Generates unique numeric strings of the same length as the input numeric string.</td><td valign="top"><p>Consistency - Self only</p><p>Primary key generator</p><p>Unique columns allowed</p><p>Format-preserving encryption (FPE)<br><br>Privacy ranking:</p><ul><li>3 if not consistent</li><li>4 if consistent</li></ul></td></tr><tr><td valign="top"><a href="generator-reference/passthrough">Passthrough</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-passthrough">PassthroughGenerator</a></td><td valign="top"><p>Default generator.</p><p>Does not perform any transformation on the source data.</p></td><td valign="top">Unique columns allowed<br><br>Privacy ranking: 6</td></tr><tr><td valign="top"><a href="generator-reference/phone">Phone</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-phone">USPhoneNumberGenerator</a></td><td valign="top"><p>Generates a random telephone number that matches the country or region and format of the input telephone number.</p><p>For invalid telephone numbers, either replaces individual numbers or generates a valid replacement number.</p></td><td valign="top">Consistency - Self only<br><br>Privacy ranking: 3</td></tr><tr><td valign="top"><a href="generator-reference/random-boolean">Random Boolean</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-random-boolean">RandomBooleanGenerator</a></td><td valign="top"><p>Generates a random boolean value.</p><p>You specify the percentage of true values. The remaining values are false.</p></td><td valign="top"><p>Differential privacy</p><p>Data-free<br><br>Privacy ranking: 1</p></td></tr><tr><td valign="top"><a href="generator-reference/random-double">Random Double</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-random-double">RandomDoubleGenerator</a></td><td valign="top">Generates a random double number that is between the specified minimum (inclusive) and maximum (exclusive) values.</td><td valign="top"><p>Differential privacy</p><p>Data-free<br><br>Privacy ranking: 1</p></td></tr><tr><td valign="top"><a href="generator-reference/random-hash">Random Hash</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-random-hash">RandomStringGenerator</a></td><td valign="top">Generates a random hash string.</td><td valign="top"><p>Differential privacy</p><p>Data-free<br><br>Privacy ranking: 1</p></td></tr><tr><td valign="top"><a href="generator-reference/random-integer">Random Integer</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-random-integer">RandomIntegerGenerator</a></td><td valign="top">Returns a random integer that is between the specified minimum (inclusive) and maximum (exclusive) values.</td><td valign="top"><p>Differential privacy</p><p>Data-free<br><br>Privacy ranking: 1</p></td></tr><tr><td valign="top"><a href="generator-reference/random-timestamp">Random Timestamp</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-random-timestamp">RandomTimestampGenerator</a></td><td valign="top">Generates random dates, times, and timestamps that fall within a specified range.</td><td valign="top"><p>Differential privacy</p><p>Data-free<br><br>Privacy ranking: 1</p></td></tr><tr><td valign="top"><a href="generator-reference/random-uuid">Random UUID</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-random-uuid">UUIDGenerator</a></td><td valign="top">Generates a random new UUID string.</td><td valign="top"><p>Differential privacy</p><p>Data-free</p><p>Unique columns allowed<br><br>Privacy ranking: 1</p></td></tr><tr><td valign="top"><a href="generator-reference/regex-mask">Regex Mask</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-regex-mask">RegexMaskGenerator</a></td><td valign="top"><p>To identify values to transform, you provide a regular expression.</p><p>For each capture group in an expression, you assign a sub-generator to apply to matching values.</p></td><td valign="top"><p>Unique columns allowed</p><p>Composite generator. Other feature support is based on the sub-generators.<br><br>Privacy ranking: 5</p></td></tr><tr><td valign="top"><a href="generator-reference/sequential-integer">Sequential Integer</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-sequential-integer">UniqueIntegerGenerator</a></td><td valign="top">Generates a column of unique integer values that start with specified value, and then increment by 1 for each processed row.</td><td valign="top"><p>Linkable</p><p>Unique columns allowed<br><br>Privacy ranking: 3</p></td></tr><tr><td valign="top"><a href="generator-reference/shipping-container">Shipping Container</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-shipping-container">ShippingContainerGenerator</a></td><td valign="top"><p>Generates values of ISO 6346 compliant shipping container codes.</p><p>The codes are all in the freight ("U") category.</p></td><td valign="top"><p>Consistency - Self or other</p><p>Differential privacy if not consistent</p><p>Data-free if not consistent<br><br>Privacy ranking:</p><ul><li>1 if not consistent</li><li>4 if consistent</li></ul></td></tr><tr><td valign="top"><a href="generator-reference/sin">SIN</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-sin">SINGenerator</a></td><td valign="top"><p>Generates a new valid Canadian Social Insurance Number.</p><p>Preserves the formatting from the original value.</p></td><td valign="top"><p>Consistency - Self only</p><p>Data-free if not consistent</p><p>Unique columns allowed</p><p>Format-preserving encryption (FPE)<br><br>Privacy ranking:</p><ul><li>1 if not consistent</li><li>4 if consistent</li></ul></td></tr><tr><td valign="top"><a href="generator-reference/ssn">SSN</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-ssn">SsnGenerator</a></td><td valign="top"><p>Generates a new valid United States Social Security Number.</p><p>For numeric columns, the dashes (xxx-xx-xxxx) are always excluded.</p><p>Otherwise, you can specify the percentage of values for which to include the dashes.</p></td><td valign="top"><p>Consistency - Self or other</p><p>Differential privacy if not consistent</p><p>Data-free if not consistent<br><br>Privacy ranking:</p><ul><li>1 if not consistent</li><li>4 if consistent</li></ul></td></tr><tr><td valign="top"><a href="generator-reference/struct-mask">Struct Mask</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-struct-mask">StructMaskGenerator</a></td><td valign="top"><p>Used to transform StructFields within a StructType in Databricks data.</p><p>To identify the StructField value to transform, you provide a path expression.</p><p>For each path expression, you assign a sub-generator to apply to the matching values.</p></td><td valign="top">Composite generator. Feature support is based on the sub-generators.<br><br>Privacy ranking: 5</td></tr><tr><td valign="top"><p><a href="generator-reference/text-composition">Text Composition</a></p><p></p><p>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/text-composition-textcompositiongenerator">TextCompositionGenerator</a></p></td><td valign="top">Generates a replacement text value that includes values from other columns in the same row.</td><td valign="top"><p>Consistent by default with the included columns.</p><p></p><p>Privacy ranking: 5</p></td></tr><tr><td valign="top"><a href="generator-reference/timestamp-shift-generator">Timestamp Shift</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-timestamp-shift">TimestampShiftGenerator</a></td><td valign="top"><p>Shifts timestamps by a random amount of a specific unit of time, within a set range.</p><p>The range can start before the original value.</p></td><td valign="top"><p>Consistency - Self or other<br><br>Privacy ranking:</p><ul><li>3 if not consistent</li><li>4 if consistent</li></ul></td></tr><tr><td valign="top"><a href="generator-reference/unique-email">Unique Email</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-unique-email">UniqueEmailGenerator</a></td><td valign="top"><p>Generates unique email addresses.</p><p>Replaces the username with a randomly generated GUID, and masks the domain with a character scramble.</p></td><td valign="top"><p>Consistency - Self only</p><p>Unique columns allowed<br><br>Privacy ranking:</p><ul><li>3 if not consistent</li><li>4 if consistent</li></ul></td></tr><tr><td valign="top"><a href="generator-reference/url">URL</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-url">UrlGenerator</a></td><td valign="top"><p>Used to transform URLs.</p><p>Preserves the formatting. Keeps the URL scheme and top-level domain intact.</p></td><td valign="top">Unique columns allowed<br><br>Privacy ranking: 3</td></tr><tr><td valign="top"><a href="generator-reference/uuid-key">UUID Key</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-uuid-key">UuidPkGenerator</a></td><td valign="top">Generates UUIDs.</td><td valign="top"><p>Consistency - Self only</p><p>Primary key generator</p><p>Unique columns allowed</p><p>Format-preserving encryption (FPE)<br><br>Privacy ranking:</p><ul><li>3 if not consistent</li><li>4 if consistent</li></ul></td></tr><tr><td valign="top"><a href="generator-reference/xml-mask">XML Mask</a><br><br>API: <a href="../../api/quick-start-guide/tonic-api-generator-assignment/generator-api-reference/generator-api-ref-xml-mask">XmlMaskGenerator</a></td><td valign="top"><p>Used to transform values in XML columns.</p><p>To identify the values to transform, you provide XPaths.</p><p>For each XPath, you assign a sub-generator to apply to the matching values.</p></td><td valign="top">Composite generator. Feature support is based on the sub-generators.<br><br>Privacy ranking: 5</td></tr></tbody></table>
