Upload to dashboard
After a CLI scan, you can send dataflow.json to DataParade and open Preview & Edit in the web app — without manually uploading the file through the create dialog.
The upload creates an import preview draft (a saved preview session), not a finished assessment. You review components, flows, and properties in the app, then create the diagram when ready.
Auto-upload after scan
After every successful scan (unless you opt out), the CLI auto-uploads dataflow.json to DataParade and prints a Preview ready URL.
- Opt out:
--skip-auto-uploadorDATAPARADE_SKIP_AUTO_UPLOAD=true/1 - With workspace API key (
DATAPARADE_WORKSPACE_API_KEYfrom Workspace → Access keys): preview opens on the dashboard for that workspace (?importDraft=) - Without a workspace API key: preview is stored temporarily; the URL opens sign up (
/preview/cli/<token>). After you create an account, the scan appears on your dashboard. - Upload alone does not consume scan quota — only hosted scans and CLI runs with platform AI use workspace scan quotas
Console output with workspace API key:
[scan] dataflow.json written to /path/to/dataflow.json
[scan] Preview ready: https://app.dataparade.io/dashboard?importDraft=<draftId>Console output without workspace API key:
[scan] dataflow.json written to /path/to/dataflow.json
[scan] Preview ready: https://app.dataparade.io/preview/cli/<claimToken>
[scan] Claiming this preview after signup uses 1 scan slot.Auto-upload uses the same assessment name as the scan’s --project-name / projectName in config when set. Otherwise the preview defaults to Imported scan YYYY-MM-DD.
upload command
Upload an existing dataflow.json without re-scanning:
npx @dataparade/cli upload ./dataflow.json --project-name "My service"| Argument / option | Purpose |
|---|---|
<file> | Path to a valid dataflow.json wrapper (see Output and results) |
--project-name <name> | Assessment name shown in preview (optional; falls back to metadata.projectName in the file, then Imported scan YYYY-MM-DD) |
--workspace-api-key <key> | Workspace API key (or set DATAPARADE_WORKSPACE_API_KEY). Optional — without a key, upload uses the anonymous preview + signup flow. |
On success the CLI prints:
[upload] Preview ready: https://app.dataparade.io/dashboard?importDraft=<draftId>Preview deep link
Workspace API key: the URL opens the dashboard with ?importDraft=<draftId>. If you are signed in to the matching workspace, the CLI import preview modal opens automatically.
No API key: the URL opens /preview/cli/<claimToken>, redirects you to sign up, then attaches the preview to your new account and opens the same import modal on the dashboard.
- Confirm or edit the assessment name (required before creating the diagram).
- Review assets, third parties, actors, and data flows — same preview as manual CLI import.
- Create the assessment when satisfied.
Workspace owners and editors can open drafts uploaded to that workspace. Viewers cannot create assessments from CLI uploads.
Access keys
Workspace owners create CLI access keys on Workspace → Access keys. The same key authenticates:
- Upload and auto-upload (
POST /api/scans/cli/uploadwith a key, orPOST /api/scans/cli/previewwithout) - Platform AI when inference is on (default): quota preflight, infer tasks, complete
- Anonymous scans: session + IP caps; actual tokens accrue on the job and debit at claim. The ~100k figure is a server hard ceiling, not the working scan budget (CLI defaults to ~12k unless you raise
SCAN_AI_BUDGET_TOKENS)
- Anonymous scans: session + IP caps; actual tokens accrue on the job and debit at claim. The ~100k figure is a server hard ceiling, not the working scan budget (CLI defaults to ~12k unless you raise
See Workspace and team for key limits and handling.
Environment variables
| Variable | Purpose |
|---|---|
DATAPARADE_WORKSPACE_API_KEY | Auth for upload and platform AI |
DATAPARADE_API_BASE_URL | Backend API origin (omit for published npm CLI; use http://localhost:3000 for local backend) |
DATAPARADE_APP_URL | Frontend origin for preview links (omit for production; use http://localhost:3001 for local frontend) |
DATAPARADE_SKIP_AUTO_UPLOAD | Skip post-scan upload when true or 1 |
Full detail: Environment variables.
Quota
| Action | Uses scan quota? |
|---|---|
Structural-only scan (no AI) | No — even with a workspace key |
upload / auto-upload | No |
scan with platform AI (default; workspace key) | Yes — preflight, per-infer billing, complete |
scan with anonymous platform AI (no workspace key) | Session + IP cap; tokens debit on claim |
Related
- CLI Run and Export — build and run
scan - Creation and Imports — manual file import and preview behavior
- Output and results —
dataflow.jsonformat and console lines - Troubleshooting — upload and import errors