AppsSynthetic Data

Developers and governance · Autessa Synthetic Data

Synthetic data CLI

Every Autessa Synthetic Data action is an Autessa CLI command under autessa synthetic-data. Propose a schema, generate rows, create and poll jobs, review staged batches, approve, append and export, all from a terminal or a script.

A core synthetic data capability, done properly
Start free
TerminalSAMPLE
$ autessa synthetic-data help
  append            Generate more rows on an existing job...
  approve           Write all remaining staged rows...
  cancel            Stop an unfinished job.
  create            Start a synthetic-data generation job...
  discard           Throw away every staged row...
  exclude-rows      Drop rows from one staged batch...
  export            Get a temporary download link...
  generate          Generate a small set of rows...
  get               Fetch one job with its status...
  list              List your company's synthetic-data jobs...
  preview           Read staged (not yet written) rows...
  propose-schema    Suggest a table name and columns...
  regenerate-batch  Replace one staged batch...

The problem

Test data belongs in your scripts

Seeding a staging environment or regenerating fixtures should be one command in a setup script, not a series of clicks someone has to remember.

What you get

  • Thirteen commands: append, approve, cancel, create, discard, exclude-rows, export, generate, get, list, preview, propose-schema and regenerate-batch.
  • Run autessa synthetic-data <command> help for every argument.
  • Object and array arguments take JSON; the whole body can be passed with --json.
  • Jobs are asynchronous: create returns a jobId, and get is the command to poll.
  • From the CLI, create defaults to a JSONL dataset file written directly.
  • Separate profiles let one script target different companies.

How it works

How does synthetic data CLI work?

  1. Sign in

    Run autessa login (add --profile <name> to keep several companies apart).

  2. Draft columns

    Run propose-schema with a description to get columns you can reuse.

  3. Create a job

    Run create with a name, description, row count and target.

  4. Poll and finish

    Poll get until the job is final or awaiting review, then approve, discard or export.

Every option

Commands and their arguments

OptionWhat it does
propose-schema--description (required), --sampleRowsJson.
generate--description, --columnDefinitions, --rowCount 1 to 50 (all required), --sampleRowsJson.
create--name, --description, --rowCount 1 to 5000 (required); --targetType, --writeMode, --tableId, --createTable, --fileFormat, --columnDefinitions, --sampleRowsJson.
list / getlist takes no arguments; get --jobId.
preview--jobId, --batchIndex (defaults to 0).
exclude-rows--jobId, --batchId, --rowIndexes.
regenerate-batch--jobId, --batchId.
approve / discard / cancel / export--jobId.
append--jobId, --additionalRowCount.

Example

A complete job from the terminal

Replace the ids with your own.

autessa synthetic-dataEXAMPLE
# 1. Draft columns from a description (creates nothing)
autessa synthetic-data propose-schema \
  --description "Customers of a project-management SaaS, with realistic signup notes"

# 2. Start a job: a JSONL dataset file by default, staged for review here
autessa synthetic-data create \
  --name "Demo customers" \
  --description "Customers of a project-management SaaS, with realistic signup notes" \
  --rowCount 500 \
  --writeMode REVIEW \
  --columnDefinitions '[{"columnName":"company","columnType":"SHORT_TEXT","required":true},
    {"columnName":"plan","columnType":"SINGLE_SELECT","allowedValues":["Starter","Team","Business"]},
    {"columnName":"signup_note","columnType":"LONG_TEXT"}]'

# 3. Poll until AWAITING_REVIEW, then review, approve and download
autessa synthetic-data get --jobId <jobId>
autessa synthetic-data preview --jobId <jobId> --batchIndex 0
autessa synthetic-data approve --jobId <jobId>
autessa synthetic-data export --jobId <jobId>

Permissions

Who can do what?

WhoCan
Signed-in CLI userEverything the app allows, acting as you in your active company.
Table permissionsRows written into a table are written as the person who started the job, with that person’s access to the table.

Connected

How synthetic data CLI connects to the rest of Autessa

FAQ

Questions about synthetic data CLI

What is the default target on the CLI?

A JSONL dataset file written directly. Omit `--targetType` to get one, and pass `--columnDefinitions` for its columns.

How do I wait for a job?

Poll `autessa synthetic-data get --jobId <id>` until the status is COMPLETED, PARTIALLY_COMPLETED, FAILED, CANCELLED, DISCARDED or AWAITING_REVIEW. `get` is also the only command that returns batch ids.

Where do I install the CLI?

Follow the install and sign-in guide in the Autessa docs at docs.autessa.com/docs/cli/install.

Also in Developers and governance:Synthetic data REST APIYour model and PII stripping

Try synthetic data CLI in Autessa Synthetic Data

The Autessa CLI covers every Synthetic Data action, from propose-schema and generate to create, preview, approve, append and export.

Start free

Describe it · review it · write it · or download JSONL and CSV

100% customizable, code and all

Make Autessa Synthetic Data fully your own.

Use it out of the box, then change anything. Ask Autobot, Autessa’s AI builder, for a new field, screen, report, workflow or agent and it builds it into your copy of the app. Or open the code and edit it yourself. Nothing is locked: the app, its data and its code are yours.

Start free and make it yours