diff --git a/CHANGELOG.md b/CHANGELOG.md index 66fc386..3088a36 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,8 +1,16 @@ # Changelog -## 1.0.1 - +## 1.1.0 + +- **New: `metric data`** loads a metric's values over a date range (`--from`, `--to`, `--granularity daily|weekly|monthly|quarterly|yearly|allTime`), optionally broken down with `--dimension-id` and filtered with `--filters`. It works for every kind of metric, including integration metrics (pass `--source-id` for those). The platform may sync the metric first, so a first call can take about two minutes; a `Sync:` line on stderr, or `syncInfo` (`{status, lastSyncedAt, message}`) in `--json`, says how current the values are. See [Reading Metric Values](https://github.com/databox/databox-cli#reading-metric-values). +- **New: `dashboard` commands.** `dashboard list`, `dashboard metrics DASHBOARDID` and `dashboard rename DASHBOARDID --name`, which renames a dashboard (an Admin or Editor any dashboard they can see, a User one they created). See [Dashboards](https://github.com/databox/databox-cli#dashboards). +- **Deprecated: `databoard list` and `databoard metrics`.** They keep working, with the same output as `dashboard list` and `dashboard metrics`, and print a deprecation warning on stderr. They will be removed in a future major version; switch scripts to `dashboard`. +- **Metric descriptions.** `metric get` shows a metric's description, and `metric list --json` and `metric get --json` carry it as `description` (`null` when there is none). `metric update --description` sets it on a dataset-based custom metric, and `--description ""` clears it. See [Metric Descriptions](https://github.com/databox/databox-cli#metric-descriptions). +- **Merged datasets.** `dataset list --type mergedDataset` lists merged datasets (`--type dataset`, the default, lists the others). Datasets now report their `type` in `--json` and in a Type column of `dataset list`; a merged dataset has no data source. +- **Errors show when to retry.** When the API sends `Retry-After`, the error adds a `Retry after N s` line. That covers `429 rate_limited` and `409 modification_in_progress`, which dataset reads and metric commands return for a few seconds after a dataset modification is saved. The CLI does not retry by itself. See [Errors and Exit Codes](https://github.com/databox/databox-cli#errors-and-exit-codes). +- **`metric get` lists no `hourly` granularity** any more, as the API no longer offers it for metrics; `metric data` does not accept it. - **A request ID on every request, and in every error.** The CLI sends its own `x-request-id` with each request. Every error now shows a Request ID, including a bare `413` or `502` from a proxy, a network failure and a timeout; where no response came back, it is the CLI's own ID, and still the one to quote to support. A timed-out `dataset ingest` may still have been processed: check `dataset ingestions`. See [Errors and Exit Codes](https://github.com/databox/databox-cli#errors-and-exit-codes). +- **`--api-url`, `DATABOX_API_URL` and a stored API URL must be an `http://` or `https://` URL**, with no username, password, query string or fragment; surrounding whitespace is ignored. A bad value exits 2 (1 when it is the stored one) before anything is sent. - **User-Agent.** Requests identify themselves as `databox-cli/ (node ; )`. - **Ingest payload limit corrected to 10 MB** (10,485,760 bytes), what the API accepts. 1.0.0 allowed 30 MB, so a payload between the two was sent and then refused by the API with `413`; the CLI now refuses it before sending (exit 2). - **Packaging fixes** in `package.json` (the `bin` path and repository URL npm warned about at publish), and dependency updates in the lockfile. diff --git a/README.md b/README.md index 4fca01a..c6b6572 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,8 @@ # databox-cli -Command-line interface for the [Databox](https://databox.com) API. Manage data sources, datasets and the data in them, custom metrics, databoards, users, your organization and its accounts, connections and billing — from the terminal, from scripts, or through an AI agent. Running it from a script or an agent? Read [Scripts and AI Agents](#scripts-and-ai-agents) first. +Command-line interface for the [Databox](https://databox.com) API. Manage data sources, datasets and the data in them, custom metrics, dashboards, users, your organization and its accounts, connections and billing — from the terminal, from scripts, or through an AI agent. Running it from a script or an agent? Read [Scripts and AI Agents](#scripts-and-ai-agents) first. -Version 1.0 targets the Databox V2 API. Upgrading from 0.x? The [1.0.0 migration guide](https://github.com/databox/databox-cli/blob/main/CHANGELOG.md) lists every renamed command and flag. +Since 1.0, the CLI targets the Databox V2 API. Upgrading from 0.x? The [1.0.0 migration guide](https://github.com/databox/databox-cli/blob/main/CHANGELOG.md) lists every renamed command and flag. ## Installation @@ -25,6 +25,7 @@ A **data source** holds **datasets**. You push rows into a dataset, then build c |---|---|---| | Datetime values in ingested records | ISO 8601 | `"2026-01-15"`, `"2026-01-15T10:30:00Z"` | | `metric drilldown --start-timestamp` / `--end-timestamp` | Unix seconds | `1767225600` (2026-01-01 00:00 UTC). Convert with `date -u -d 2026-01-01 +%s` (Linux) or `date -u -j -f '%F %T' '2026-01-01 00:00:00' +%s` (macOS) | +| `metric data --from` / `--to` | Date, `YYYY-MM-DD` | `2026-06-30`. Both days are included. | | `activity-log list --date-from` / `--date-to` | Date, `YYYY-MM-DD` | `2026-01-31`. A bare date means the start of that day (UTC), so `--date-to 2026-01-31` leaves out most of the 31st; pass `--date-to 2026-02-01` to include it | ### Finding IDs @@ -34,13 +35,49 @@ Most commands take the ID of a data source, a dataset or a metric. Every one of | ID | What it is | Where to find it | |---|---|---| | Data source ID | A number, e.g. `12345`. The container your datasets live in. | `databox data-source list`; `id` from `data-source create`. In the Databox app, open the data source in **Data Manager**: the number in the page URL, `app.databox.com/data-manager/connected/12345/datasets/view`, is its ID. | -| Dataset ID | A number, e.g. `67890`. Each dataset has its own ID, separate from its data source's. | `databox dataset list --search "Orders"`, or `databox data-source datasets 12345` for one data source's datasets; `id` from `dataset create`. In the Databox app, open the dataset in **Data Manager** and read the number from the URL, as above. | +| Dataset ID | A number, e.g. `67890`. Each dataset has its own ID, separate from its data source's. | `databox dataset list --search "Orders"`, or `databox data-source datasets 12345` for one data source's datasets; `id` from `dataset create`. Merged datasets are listed with `databox dataset list --type mergedDataset`; they belong to no data source. In the Databox app, open the dataset in **Data Manager** and read the number from the URL, as above. | | Metric ID | A string: `\|`, e.g. `12345\|custom_query_100`. | `databox metric list --search revenue`; `id` from `metric create`. Quote it in the shell. | | Ingestion ID | A UUID. One ingest request, not a dataset. | Returned as `ingestionId` by `dataset ingest`; `databox dataset ingestions DATASETID` lists them. | +| Dashboard ID | A number, e.g. `54321`. | `databox dashboard list --search "Marketing"`. | | Account ID | A number. An account your organization manages, for `--account-id`. | `databox account list`. | Data source and dataset IDs share one ID space, so a number names exactly one of them: pass a dataset ID to `dataset` commands and a data source ID to `data-source` commands. The dataset GUIDs that 0.x used (`a1b2c3d4-e5f6-…`) are not accepted; look the dataset up by name with `databox dataset list --search`. +### Reading Metric Values + +`metric data` returns a metric's values over a date range, one per `--granularity` bucket, for any metric: integration, custom, calculated or pushed. An integration metric's ID names no source, so pass `--source-id` (its `sourceId` in `metric list`). + +```bash +databox metric data --metric-id "67890|custom_query_100" --from 2026-06-01 --to 2026-06-30 --granularity daily +databox metric data --metric-id "GoogleAnalytics4@sessions" --source-id 12345 \ + --from 2026-01-01 --to 2026-06-30 --granularity monthly --dimension-id country --json +``` + +The platform may sync the metric before reading it, so the first call on a metric that has never synced can take about two minutes. After the table or CSV, a `Sync: — ` line on stderr says how current the values are; `--json` returns it as `syncInfo` (`{status, lastSyncedAt, message}`), beside `metric` and `dataPoints`. + +| Status | What to do | +|---|---| +| `synced` | This call synced the metric. Use the values. | +| `skipped` | No sync was needed; the values are stored data, current as of `lastSyncedAt`. Use them. Calling again sooner does not sync. | +| `inProgress` | A sync is running, so values may be missing or stale. Call again in about a minute. | +| `neverSynced` | The metric has not synced yet, so values may be empty. Call again shortly. | +| `failed` | The metric's last sync failed; the values are what was stored before. Fix the data source, such as its connection, then call again. | +| Any other | The values may not be current. | + +A `null` value in a bucket means it has no data. `syncInfo` is `null`, and the stderr line reads `Sync: unknown`, for a metric that never syncs, such as a constant. + +A `504 service_unavailable` ("The metric is still syncing") means the sync outlived the API's 150 seconds; it carries on, so retry shortly. `metric data` allows 30 calls per account per minute; over it you get `429 rate_limited` with a `Retry after N s` line: wait that long. For a metric on a dataset whose modification is still being applied, see [Errors and Exit Codes](#errors-and-exit-codes). + +### Metric Descriptions + +`metric get` shows a metric's description, and `metric list --json` and `metric get --json` return it as `description` (`null` when there is none). `metric update METRICID --description "…"` sets it on a dataset-based custom metric, and `--description ""` clears it. `metric create` takes no description: set it with `metric update` afterwards. The `metric update` output shows the change at once; `metric get` and `metric list` can take a few seconds to catch up. + +### Dashboards + +`dashboard list` lists your dashboards, `dashboard metrics DASHBOARDID` shows the metrics on each of a dashboard's datablocks, with their dimensions, date range and filters, and `dashboard rename DASHBOARDID --name "…"` renames one. An Admin or Editor can rename any dashboard they can see, a User only one they created. + +`databoard list` and `databoard metrics` are deprecated: they still work, return the same output as their `dashboard` equivalents, and print a deprecation warning on stderr. They will be removed in a future major version, so switch scripts to `dashboard`. + ## Getting Started A complete run, from an empty organization to a metric's rows. It uses [jq](https://jqlang.org) to capture each new ID; without jq, copy the ID from the command's table output. @@ -136,6 +173,7 @@ The API applies the Databox app's role rules. Your role (Admin, User, Editor or | `user invite` | Anyone. A non-admin can invite only with the `user` role. | | `connection update`, `connection set-permissions` | An admin, or the user who owns the connection | | `connection delete` | The user who owns the connection | +| `dashboard rename` | An Admin or Editor, for any dashboard they can see; a User, for one they created | Connections follow the app's sharing rules: @@ -156,7 +194,7 @@ Every command except `auth login` accepts these: | `--verbose` | — | Print each request and response (method, URL, status, duration, request ID) to stderr. The API key is never printed. | | `--no-color` | `NO_COLOR` | Disable coloured output. A non-empty `NO_COLOR` does the same. | | `--api-key` | `DATABOX_API_KEY` | Use this API key instead of the stored one. | -| `--api-url` | `DATABOX_API_URL` | Override the API base URL (default `https://api.databox.com`). `auth login` saves the URL it was given to the config file, and later commands keep using it. | +| `--api-url` | `DATABOX_API_URL` | Override the API base URL (default `https://api.databox.com`). It must be an `http://` or `https://` URL, optionally with a base path, and no username, password, query string or fragment; surrounding whitespace is ignored. A bad value exits 2 before anything is sent. `auth login` saves the URL it was given to the config file, and later commands keep using it. | | `--account-id` | `DATABOX_ACCOUNT_ID` | Target an account in your organization (see [Organizations and Accounts](#organizations-and-accounts)). | | `-h`, `--help` | — | Show help for a command or topic. | @@ -166,7 +204,7 @@ One exception: `auth login` takes only `--api-key` (and `--api-url`); `--json` a ### List Flags -Commands that return a list page by page also take these. `metric dimension-values`, `organization timezones`, `organization countries` and `databoard metrics` return everything at once and take none of them. +Commands that return a list page by page also take these. `metric dimension-values`, `organization timezones`, `organization countries` and `dashboard metrics` return everything at once and take none of them. | Flag | Description | |------|-------------| @@ -202,7 +240,8 @@ Several flags take JSON. Quote it in single quotes. Each command's `--help` has | `dataset ingest --records`, `--file`, stdin | A bare array of row objects, keyed by column `id`. `'[{"order_id":"A-1","amount":42}]'` | | `metric create` / `update` `--measure`, `--date`, `--dimension` | A column reference. `'{"id":"amount","displayName":"Amount"}'` | | `metric create` / `update` `--filters` | One group of conditions, lower-case `logicalOperator`, values as strings. `'{"logicalOperator":"and","conditions":[{"field":"country","operator":"ANY_OF","values":["US"]}]}'` | -| `metric drilldown --filters` | **A different shape**: upper-case, nested `groups`, each condition with a `type`. Copy it from `databoard metrics --json`. `'{"logicalOperator":"AND","groups":[{"logicalOperator":"AND","conditions":[{"type":"dimension","field":"country","operator":"ANY_OF","values":["US"]}]}]}'` | +| `metric data --filters` | One flat group: `logicalOperator` `AND` or `OR`, each condition with a `type` (`dimension` or `unit`) and a `field`. Operators: `ANY_OF`, `NONE_OF`, `EQ`, `NEQ`, `CONTAINS`, `NOT_CONTAINS`; operators are case-insensitive, so `"and"` as `metric get` shows it works too. `'{"logicalOperator":"AND","conditions":[{"type":"dimension","field":"country","operator":"ANY_OF","values":["US"]}]}'` | +| `metric drilldown --filters` | **A different shape**: upper-case, nested `groups`, each condition with a `type`. Copy it from `dashboard metrics --json`. `'{"logicalOperator":"AND","groups":[{"logicalOperator":"AND","conditions":[{"type":"dimension","field":"country","operator":"ANY_OF","values":["US"]}]}]}'` | | `dataset update-modification` / `preview-modification` `--data` | Any of `filters`, `formulas`, `displayNames`, `dataTypes`, `order`, `visibility`. `update-modification` replaces the whole definition, so start from `dataset modifications ID --json`. `'{"formulas":{"totalWithTax":"$amount * 1.2"},"displayNames":{"amount":"Revenue"}}'` | | `dataset set-column-metadata --columns` | Array of `{id, description?, conceptType?, synonyms?}`. `'[{"id":"country","conceptType":"dimension","synonyms":["nation"]}]'` | | `organization update --settings` | `{dateFormat, numberFormat, firstDayOfWeek, calendar, fiscalYearStart}`. `'{"calendar":"customFiscal","fiscalYearStart":{"month":4,"day":1}}'` | @@ -227,7 +266,7 @@ databox dataset data 67890 --all --output csv > orders.csv What `--json` prints: - **Lists** print a JSON array of the items, each exactly as the API returned it. With `--all`, the array holds every page; without it, only the first (see [List Flags](#list-flags)). -- **Responses that carry more than a list** print the whole response object: `dataset schema` (`{items, primaryKey}`), `dataset data` (`{items, pagination, schema, lastUpdatedAt}`), `dataset preview-modification` and `metric drilldown` (`{items, schema, pagination}`), `dataset lineage` and `metric lineage` (`{parents, children}`), `metric dimension-values`, `dataset modifications`, `dataset modification-rules` and `databoard metrics`. A command's `--help` says when `--json` returns the whole response. Under `--all`, `dataset data` and `metric drilldown` leave out `pagination`. +- **Responses that carry more than a list** print the whole response object: `dataset schema` (`{items, primaryKey}`), `dataset data` (`{items, pagination, schema, lastUpdatedAt}`), `dataset preview-modification` and `metric drilldown` (`{items, schema, pagination}`), `metric data` (`{metric, dataPoints, syncInfo}`), `dataset lineage` and `metric lineage` (`{parents, children}`), `metric dimension-values`, `dataset modifications`, `dataset modification-rules` and `dashboard metrics`. A command's `--help` says when `--json` returns the whole response. Under `--all`, `dataset data` and `metric drilldown` leave out `pagination`. - **Single resources** print the object the API returned. - **`metric create` and `metric update`** print the metric as `metric get` does, in every format. - **`set-timezone`, `set-sync-frequency` and `set-verification`** print a one-line confirmation in table mode, and the updated resource with `--json` or `--output csv`. Every other `set-*` command prints what the API returned in every format: the updated resource, or for `dataset set-column-metadata` the dataset's columns. @@ -246,7 +285,8 @@ Stdout carries only the result. Pagination footers appear in table mode only, an | Columns per dataset | 100 | | Dataset size | Set per dataset: `maxSize` in `dataset get`. | | Rate limit, per API key | 10 requests per second, 10,000 per hour, enforced by Databox's gateway. Over it you get HTTP 429 (exit 1), possibly with no error code: back off and retry, with `--idempotency-key` on writes. | -| Request timeout | 30 seconds, or 5 minutes for `dataset ingest` (exit 2). | +| Rate limit, `metric data` | 30 calls per account per minute, on top of the gateway's limit. Over it you get `429 rate_limited` with a `Retry after N s` line (exit 1). | +| Request timeout | 30 seconds, 170 seconds for `metric data`, or 5 minutes for `dataset ingest` (exit 2). | With a primary key (`dataset create --primary-key`), ingesting a row whose key already exists overwrites it. Without one, every ingest appends, so sending the same rows twice duplicates them. @@ -272,10 +312,19 @@ Every error shows a Request ID, including a network failure or a timeout, where A timed-out `dataset ingest` may still have been processed: check `databox dataset ingestions DATASETID` before sending it again. +When the API says when to retry, with a `Retry-After` header, the error adds a `Retry after N s` line. It comes with `429 rate_limited` and with `409 modification_in_progress`, which reads and metric commands on a dataset (`dataset data`, `dataset schema`, `metric create`, `metric update`, `metric data`, `metric drilldown` and others) return for a few seconds after a dataset modification is saved, while it is applied. Wait that long and run the same command again; the CLI does not retry by itself. `409 modification_failed` means the modification could not be applied, and retrying will not help: save it again with `dataset update-modification`, or remove it with `dataset clear-modifications`. + +``` + › Error: modification_in_progress + › The dataset's modification is being applied. Retry in a few seconds. + › Retry after 5 s + › Request ID: 3c63e510-276f-4541-9c66-8c00161fda82 +``` + | Exit code | Meaning | |-----------|---------| | `0` | Success. Answering anything but `y` or `yes` to a confirmation prompt, at a terminal or piped, also exits 0 after printing `Aborted.`. | -| `1` | The API returned an error (4xx or 5xx, including the rate limit, and `forbidden` when your role does not allow the command; see [Permissions](#permissions)). Also: no API key is configured, the stored config file is not valid JSON or holds an API URL that is not `http://` or `https://`, the response was not JSON (usually a wrong `--api-url`), an update command was given no field to change, or `dataset ingest` was run at a terminal with no `--records` or `--file`. | +| `1` | The API returned an error (4xx or 5xx, including the rate limit, and `forbidden` when your role does not allow the command; see [Permissions](#permissions)). Also: no API key is configured, the stored config file is not valid JSON or holds an API URL that `--api-url` would refuse (this fails `auth login` too, unless it is given `--api-url`), the response was not JSON (usually a wrong `--api-url`), an update command was given no field to change, or `dataset ingest` was run at a terminal with no `--records` or `--file`. | | `2` | The request was never sent, or never reached the API: an unknown flag, a value outside a flag's options, a malformed ID, `--api-url` or JSON value, an ingest over the limits, or a network failure, timeout or redirect (the CLI does not follow a redirect: it would resend your API key). Also a command that would prompt when stdin is not a terminal and nothing is piped: a delete, purge or clear without `--force`, or `auth login` without `--api-key` (see [Authentication](#authentication)). | | `130` | A prompt (a confirmation, or the API key at `auth login`) was interrupted with Ctrl-C. | @@ -321,7 +370,7 @@ This package includes skills that let AI agents (like [Claude Code](https://clau | `databox-organization` | Organization info, usage, settings, timezones | | `databox-data-sources` | Data source CRUD, timezone, sync frequency, permissions, purge | | `databox-datasets` | Dataset CRUD, schema, data ingestion, metadata, verification, modifications, lineage | -| `databox-metrics` | Custom metric CRUD, dimension values, drilldown, lineage, usages, verification | +| `databox-metrics` | Metric values over time, custom metric CRUD, dimension values, drilldown, lineage, usages, verification | | `databox-users` | User invites, roles, removal | | `databox-accounts` | Managing the accounts in your organization | | `databox-connections` | Connection management and permissions | @@ -374,6 +423,9 @@ Once installed, Claude Code can manage your Databox resources directly — your * [`databox connection permissions CONNECTIONID`](#databox-connection-permissions-connectionid) * [`databox connection set-permissions CONNECTIONID`](#databox-connection-set-permissions-connectionid) * [`databox connection update CONNECTIONID`](#databox-connection-update-connectionid) +* [`databox dashboard list`](#databox-dashboard-list) +* [`databox dashboard metrics DASHBOARDID`](#databox-dashboard-metrics-dashboardid) +* [`databox dashboard rename DASHBOARDID`](#databox-dashboard-rename-dashboardid) * [`databox data-source create`](#databox-data-source-create) * [`databox data-source datasets DATASOURCEID`](#databox-data-source-datasets-datasourceid) * [`databox data-source delete DATASOURCEID`](#databox-data-source-delete-datasourceid) @@ -387,7 +439,7 @@ Once installed, Claude Code can manage your Databox resources directly — your * [`databox data-source sync-frequency-options DATASOURCEID`](#databox-data-source-sync-frequency-options-datasourceid) * [`databox data-source update DATASOURCEID`](#databox-data-source-update-datasourceid) * [`databox databoard list`](#databox-databoard-list) -* [`databox databoard metrics DATABOARDID`](#databox-databoard-metrics-databoardid) +* [`databox databoard metrics DASHBOARDID`](#databox-databoard-metrics-dashboardid) * [`databox dataset clear-modifications DATASETID`](#databox-dataset-clear-modifications-datasetid) * [`databox dataset column-metadata DATASETID`](#databox-dataset-column-metadata-datasetid) * [`databox dataset create`](#databox-dataset-create) @@ -425,6 +477,7 @@ Once installed, Claude Code can manage your Databox resources directly — your * [`databox integration get INTEGRATIONID`](#databox-integration-get-integrationid) * [`databox integration list`](#databox-integration-list) * [`databox metric create`](#databox-metric-create) +* [`databox metric data`](#databox-metric-data) * [`databox metric delete METRICID`](#databox-metric-delete-metricid) * [`databox metric dimension-values`](#databox-metric-dimension-values) * [`databox metric drilldown`](#databox-metric-drilldown) @@ -483,7 +536,7 @@ EXAMPLES $ databox account create --name "Acme Inc" --json ``` -_See code: [src/commands/account/create.ts](https://github.com/databox/databox-cli/blob/v1.0.1/src/commands/account/create.ts)_ +_See code: [src/commands/account/create.ts](https://github.com/databox/databox-cli/blob/v1.1.0/src/commands/account/create.ts)_ ## `databox account delete ACCOUNTID` @@ -513,7 +566,7 @@ EXAMPLES $ databox account delete 12345 --force ``` -_See code: [src/commands/account/delete.ts](https://github.com/databox/databox-cli/blob/v1.0.1/src/commands/account/delete.ts)_ +_See code: [src/commands/account/delete.ts](https://github.com/databox/databox-cli/blob/v1.1.0/src/commands/account/delete.ts)_ ## `databox account get ACCOUNTID` @@ -542,7 +595,7 @@ EXAMPLES $ databox account get 12345 --json ``` -_See code: [src/commands/account/get.ts](https://github.com/databox/databox-cli/blob/v1.0.1/src/commands/account/get.ts)_ +_See code: [src/commands/account/get.ts](https://github.com/databox/databox-cli/blob/v1.1.0/src/commands/account/get.ts)_ ## `databox account list` @@ -580,7 +633,7 @@ EXAMPLES $ databox account list --json ``` -_See code: [src/commands/account/list.ts](https://github.com/databox/databox-cli/blob/v1.0.1/src/commands/account/list.ts)_ +_See code: [src/commands/account/list.ts](https://github.com/databox/databox-cli/blob/v1.1.0/src/commands/account/list.ts)_ ## `databox account update ACCOUNTID` @@ -615,7 +668,7 @@ EXAMPLES $ databox account update 12345 --name "New Name" --json ``` -_See code: [src/commands/account/update.ts](https://github.com/databox/databox-cli/blob/v1.0.1/src/commands/account/update.ts)_ +_See code: [src/commands/account/update.ts](https://github.com/databox/databox-cli/blob/v1.1.0/src/commands/account/update.ts)_ ## `databox activity-log list` @@ -658,7 +711,7 @@ EXAMPLES $ databox activity-log list --json ``` -_See code: [src/commands/activity-log/list.ts](https://github.com/databox/databox-cli/blob/v1.0.1/src/commands/activity-log/list.ts)_ +_See code: [src/commands/activity-log/list.ts](https://github.com/databox/databox-cli/blob/v1.1.0/src/commands/activity-log/list.ts)_ ## `databox auth login` @@ -682,7 +735,7 @@ EXAMPLES pass show databox | databox auth login ``` -_See code: [src/commands/auth/login.ts](https://github.com/databox/databox-cli/blob/v1.0.1/src/commands/auth/login.ts)_ +_See code: [src/commands/auth/login.ts](https://github.com/databox/databox-cli/blob/v1.1.0/src/commands/auth/login.ts)_ ## `databox auth validate` @@ -708,7 +761,7 @@ EXAMPLES $ databox auth validate --json ``` -_See code: [src/commands/auth/validate.ts](https://github.com/databox/databox-cli/blob/v1.0.1/src/commands/auth/validate.ts)_ +_See code: [src/commands/auth/validate.ts](https://github.com/databox/databox-cli/blob/v1.1.0/src/commands/auth/validate.ts)_ ## `databox billing info` @@ -734,7 +787,7 @@ EXAMPLES $ databox billing info --json ``` -_See code: [src/commands/billing/info.ts](https://github.com/databox/databox-cli/blob/v1.0.1/src/commands/billing/info.ts)_ +_See code: [src/commands/billing/info.ts](https://github.com/databox/databox-cli/blob/v1.1.0/src/commands/billing/info.ts)_ ## `databox billing invoices` @@ -764,7 +817,7 @@ EXAMPLES $ databox billing invoices --json ``` -_See code: [src/commands/billing/invoices.ts](https://github.com/databox/databox-cli/blob/v1.0.1/src/commands/billing/invoices.ts)_ +_See code: [src/commands/billing/invoices.ts](https://github.com/databox/databox-cli/blob/v1.1.0/src/commands/billing/invoices.ts)_ ## `databox connection delete CONNECTIONID` @@ -794,7 +847,7 @@ EXAMPLES $ databox connection delete 12345 --force ``` -_See code: [src/commands/connection/delete.ts](https://github.com/databox/databox-cli/blob/v1.0.1/src/commands/connection/delete.ts)_ +_See code: [src/commands/connection/delete.ts](https://github.com/databox/databox-cli/blob/v1.1.0/src/commands/connection/delete.ts)_ ## `databox connection get CONNECTIONID` @@ -825,7 +878,7 @@ EXAMPLES $ databox connection get 12345 --json ``` -_See code: [src/commands/connection/get.ts](https://github.com/databox/databox-cli/blob/v1.0.1/src/commands/connection/get.ts)_ +_See code: [src/commands/connection/get.ts](https://github.com/databox/databox-cli/blob/v1.1.0/src/commands/connection/get.ts)_ ## `databox connection list` @@ -861,7 +914,7 @@ EXAMPLES $ databox connection list --json ``` -_See code: [src/commands/connection/list.ts](https://github.com/databox/databox-cli/blob/v1.0.1/src/commands/connection/list.ts)_ +_See code: [src/commands/connection/list.ts](https://github.com/databox/databox-cli/blob/v1.1.0/src/commands/connection/list.ts)_ ## `databox connection permissions CONNECTIONID` @@ -892,7 +945,7 @@ EXAMPLES $ databox connection permissions 12345 --json ``` -_See code: [src/commands/connection/permissions.ts](https://github.com/databox/databox-cli/blob/v1.0.1/src/commands/connection/permissions.ts)_ +_See code: [src/commands/connection/permissions.ts](https://github.com/databox/databox-cli/blob/v1.1.0/src/commands/connection/permissions.ts)_ ## `databox connection set-permissions CONNECTIONID` @@ -934,7 +987,7 @@ EXAMPLES $ databox connection set-permissions 12345 --access-level selectedUsers --access-list 31 --no-shared-with-accounts ``` -_See code: [src/commands/connection/set-permissions.ts](https://github.com/databox/databox-cli/blob/v1.0.1/src/commands/connection/set-permissions.ts)_ +_See code: [src/commands/connection/set-permissions.ts](https://github.com/databox/databox-cli/blob/v1.1.0/src/commands/connection/set-permissions.ts)_ ## `databox connection update CONNECTIONID` @@ -964,7 +1017,106 @@ EXAMPLES $ databox connection update 12345 --name "New Name" --json ``` -_See code: [src/commands/connection/update.ts](https://github.com/databox/databox-cli/blob/v1.0.1/src/commands/connection/update.ts)_ +_See code: [src/commands/connection/update.ts](https://github.com/databox/databox-cli/blob/v1.1.0/src/commands/connection/update.ts)_ + +## `databox dashboard list` + +List dashboards + +``` +USAGE + $ databox dashboard list [--no-color] [--output table|json|csv | --json] [--verbose] [--all | --page ] + [--page-size ] [--search ] + +FLAGS + --all Fetch every page (100 items per request unless --page-size is given) and print them as one list + --json Output as JSON (shorthand for --output json) + --no-color Disable coloured output (a non-empty NO_COLOR environment variable does the same) + --output=