Skip to content

Releases: intuizi/intuizi-cli

v0.1.6

Choose a tag to compare

@github-actions github-actions released this 27 Sep 11:02
bf64eeb

Install or upgrade: brew upgrade intuizi or npm install -g @intuizi/cli.

The four API reads the CLI had no command for now have one, and a frequency preview can be delivered without a --file body.

New commands

  • audiences estimate create sizes an audience without creating it. It takes exactly what audiences create takes - the same flags, name resolution, --file body and --dry-run - and --wait follows it to the end. An estimate runs as long as a build and counts toward the data-scan limit and the build budget. It sends an Idempotency-Key, so a create that got no response can be retried with --idempotency-key without scanning twice.
  • audiences estimate show <id> [--wait] reads an estimate, with uniques, visits and the other figures as rows. Its status is a word: pending and processing keep a wait going, completed exits 0, and blocked (with its code and reason) and failed exit 1.
  • activations preview --audience-id --freq-min --freq-max counts the devices seen on that range of distinct days, with the valid bounds, the audience totals, the filter_hash, and the histogram as a table. Nothing is created or billed.
  • reference common datastream-visualizations [--dataset-type] lists the data stream visualizations an audience can draw, for the datastreams array of a --file body.

New flags

  • audiences create --frequency runs the frequency analysis for the dataset type (POI, Apps or WebDomain), which a preview needs and which cannot be added after the build. It requires additional permissions; without them the create gets a 403. audiences estimate create accepts it too, but an estimate never runs an analysis.
  • activations create --freq-min --freq-max --filter-hash delivers only the devices seen on that range, sent under freq_limit: true. Pass the filter_hash the preview printed, and the API refuses the export if the range or the audience changed since.

Also

  • --wait on estimates shares the polling, retry and timeout behavior of audiences and activations, and a timeout or give-up names intuizi audiences estimate show <id> --wait.
  • scripts/live-test.sh covers the new commands, and LIVE_FREQ_START, LIVE_FREQ_END and LIVE_FREQ_BRAND pick a window and brand the test console has data for.

Full changelog: v0.1.5...v0.1.6

v0.1.5

Choose a tag to compare

@github-actions github-actions released this 27 Sep 06:19
f34ebdc

Install or upgrade: brew upgrade intuizi or npm install -g @intuizi/cli.

The Intuizi console shipped several fixes on 2026-09-27. This release makes the CLI's help and DOCS.md describe that behavior:

Changes

  • Webhooks. Every failure now sends its webhook. A build or export that stops at 107 Additional Info, or ends in a 4xx error, sends audience.failed or activation.failed. A failed cohort import sends cohort.failed. An activation that reaches 104 with a datastream that failed to deliver still sends activation.completed: check its datastreams[].
  • Lookalike cancel. A cancelled Lookalike Model now ends at 400 Error, which is final, so audiences show <id> --wait exits 1 on it. The only exception is a cancel that arrives while the result is already being published: that run completes.
  • Cohorts. A failed cohort import now ends at 5 Not Available.
  • Schedules. The API rejects an --end-date before the --start date with a 422. The CLI already refused it for flags, and now a --file body gets the same answer.
  • POI submissions. --remove is applied once, over the whole submission. It archives the brand's POIs that no listed location matches. --key location-id matches on each location's location_id, and an omitted or null key means gps-coordinates.
  • scripts/live-test.sh now exits 1 when any step fails, and a Ctrl-C stops it cleanly.

Full changelog: v0.1.4...v0.1.5

v0.1.4

Choose a tag to compare

@github-actions github-actions released this 26 Sep 20:20
d7275e0

Install or upgrade: brew upgrade intuizi or npm install -g @intuizi/cli. Documentation: the CLI section of the Intuizi developer docs.

Features

  • activations create --datastream <id> (repeatable). An activation with no enabled datastream delivers nothing, so creating one from flags without --datastream now warns on stderr.
  • audiences create --type origin, with geography and dates only. Flags that don't apply to Origin are refused. Cohorts, Demographics and ProfileAttributes are refused on the flag path, with a pointer to --file, because flags cannot build a valid body for them.
  • audiences lookalike create --notify is on by default and always sent, so --notify=false turns the completion email off. Before, the flag was a no-op.
  • auth login records the account email. It reuses a stored token only for the same account, and auth status prints an Account: line. auth status refuses a stored token that belongs to another console and exits 1, where it used to send that token to the other console with --verify.
  • The reference common datastreams table shows short string lists inline.

Fixes

  • --wait status set. The wait now keeps polling through 109 (Visualizing data streams), which the worker posts before 105/104; before, it exited 1 while the build was still running. It stops on 107 (Additional Info), which is terminal in production; before, it polled until --timeout and then suggested resuming. The waiting set is exactly 100-103, 105, 108 and 109, and it's pinned by a test.
  • Failed, timed-out and given-up waits print the last record in table and --json mode (the --json envelope as last polled). The exit code is unchanged.
  • 429 handling.
    • A create carrying an upload_reference is no longer auto-retried after a build-budget 429. The first attempt had already claimed the reference, so the retry failed with "already used".
    • A Retry-After over 60s is returned at once, not slept on twice.
    • Each retry is announced on stderr.
  • poi submissions create --list:
    • --update=false, --remove=false and --key now override the file's values. Before, a true in the body won silently, and remove: true archives the brand's unlisted POIs.
    • An override that changes a value is noted on stderr.
    • --file now warns that --idempotency-key has no effect, like every other unkeyed route.
  • Local checks mirroring the API:
    • schedules: an end date before the start, a name over 255 characters, and time zones outside DateTimeZone::ALL are refused;
    • lookalikes: a contrast audience equal to the seed is refused;
    • cohorts: --project-id with --audience-id is refused (the API ignores it), and so is mixing IAB kinds in --category.
  • Smaller fixes:
    • auth login says where the token went (the OS credential store or the config file).
    • INTUIZI_NO_KEYRING=0 or false no longer disables the store.
    • The npm launcher forwards SIGTERM and SIGHUP, so it exits 143 like the binary.
    • The lookalike create output points to audiences show <id> --wait.

Help, README and DOCS.md

Corrected wherever they disagreed with the API:

  • cohorts:
    • preview does not sniff formats (it defaults to csv);
    • --ip-enrichment is household enrichment;
    • failed imports report a code outside 1-4, never 5.
  • POI:
    • segments are the available list and can't be created;
    • --list takes a path or -;
    • --geometry takes a value;
    • --remove archives the brand's POIs the submission does not list.
  • uploads: put does the reserve and the PUT, and the reservation expires after 15 minutes.
  • Stop rules: a wrong stop-rule field is a 422, not ignored.
  • Lookalikes and usage:
    • Lookalike Model and usage gating, in the docs' wording;
    • usage lists all six operation types;
    • build_budget is shown in --json only.
  • Completion and catalogs:
    • shell completion per shell, macOS included;
    • the catalog cascade (DMAs need --countries, cities need --states, POI parents are optional).
  • README: the em dashes are replaced with hyphens.

Script-visible changes

  • Table-mode stdout is no longer empty after a failed wait, so branch on the exit code.
  • auth status gains an Account: line between Token and Expires.
  • auth status against another console now exits 1.
  • --wait exits 1 on 107 without waiting out --timeout, and exits 0 through 109.

Also new since v0.1.3

  • --debug (global) prints every HTTP request and response on stderr, with credentials redacted (#22).
  • auth login keeps the token in the OS credential store (macOS Keychain, Windows Credential Manager, Linux secret service) where one exists, and falls back to the owner-only config file otherwise. INTUIZI_NO_KEYRING=1 keeps it in the file (#23).
  • Shell completion now completes the values of --type, --signal, --file-format, --identifier-type, --frequency and --purpose (#26).
  • A --brand or --category name that matches several catalog entries takes the one labelled with exactly that name, but only when the whole result arrived on one page (#26).
  • An upload error no longer quotes the presigned URL (#27).
  • Releases ship an SBOM (#24). CI now covers Windows (#21) and an npm install smoke test (#32).

Full changelog: v0.1.3...v0.1.4

v0.1.3

Choose a tag to compare

@github-actions github-actions released this 18 Sep 08:25
24baa36

Changelog

v0.1.2

Choose a tag to compare

@github-actions github-actions released this 18 Sep 08:13
eff6df6

Changelog

v0.1.1

Choose a tag to compare

@github-actions github-actions released this 18 Sep 08:05
4edcf5a

Changelog

v0.1.0

Choose a tag to compare

@github-actions github-actions released this 18 Sep 06:29
549e215

Changelog

v0.0.2

v0.0.2 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 12 Sep 12:09
9f10ab7

Changelog

v0.0.1

v0.0.1 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 05 Sep 00:27

Changelog

Read more