--jsonswitches any command to raw, pipe-safe JSON on stdout.--no-waitsubmits async work and prints thejob_idinstead of polling; resume withpulse jobs get.--api-keyoverrides the stored credential for one invocation (also read from thePULSE_API_KEYenvironment variable).-hafter any command prints its full options.
pulse extract
Convert documents to markdown and JSON. Accepts any mix of file paths, directories (recursed for supported types), and URLs.<name>.pulse.md and <name>.pulse.json next to the source file
(-o <dir> redirects; URL inputs land in the current directory). The output always
includes the extraction_id you’ll need for follow-up commands.
Add --schema to run extraction and structured output as one pipeline; the structured
fields are written to <name>.pulse.schema.json:
Files up to 50 MB upload directly. Pass larger documents by URL. See
supported file types.
pulse schema
Structured extraction against a previous extraction. (To extract and structure in one command, usepulse extract --schema above.)
pulse schema generate
AI-draft a JSON Schema from a plain-English description, or refine an existing one:pulse schema apply
Run a schema against extracted content:pulse split
Split a prior extraction into sections by topic:
Returns per-topic page ranges and content. The resulting
split_id feeds
pulse schema apply --split-id for per-topic structured extraction.
pulse tables
Pull tables out of a prior extraction:pulse jobs
Every long-running command runs async under the hood and polls for you. Hand control back with--no-wait, or press Ctrl-C while polling (the job keeps running
server-side), and resume any time:
pulse usage
Plan and usage for the current billing period: pages used vs. allowance, plus a breakdown by source (documents, pages, latency):pulse open
Jump from the terminal to the platform:pulse login / whoami / logout
--api-key <key>flagPULSE_API_KEYenvironment variable (recommended for CI)- Stored credential from
pulse login(OS keychain)
pulse login --base-url <url> points the CLI at a different engine (for example a VPC
deployment).
Interactive mode
- Bare
pulsestarts an interactive shell with the full command set and inline help. pulse dashboardopens a full-screen account and usage view.
Scripting and output
- Human-readable progress goes to the terminal;
--jsonmakes stdout pure JSON, sopulse extract report.pdf --json | jq .markdownjust works. - File-writing commands echo every path they write plus the
extraction_id. - Exit codes:
0success,1failure (any document in a batch failing),130interrupted (job still running server-side).
Troubleshooting
Authentication failed or 401
Authentication failed or 401
Run
pulse whoami to see which credential is active and where it came from. A flag
or PULSE_API_KEY overrides the stored key, so a stale environment variable is the
usual culprit. Re-run pulse login to refresh the stored key.The command returned a job_id but no result
The command returned a job_id but no result
You passed
--no-wait or interrupted polling. The job is still running server-side:
pulse jobs get <job_id> --watch picks it back up.pulse usage errors but extraction works
pulse usage errors but extraction works
pulse usage talks to the platform API rather than the extraction engine. Re-run
pulse login (browser flow configures both), or set the platform URL with
pulse login --platform-url https://platform.runpulse.com.My file is over 50 MB
My file is over 50 MB
Direct uploads cap at 50 MB. Host the document somewhere reachable (a pre-signed S3
URL works) and pass the URL to
pulse extract.Payment required / out of credits
Payment required / out of credits
Your plan limit was reached. Check
pulse usage, upgrade in the
platform, or
contact support.Next steps
CLI overview
Install, login, and when to use the CLI.
API reference
The endpoints behind every command.