Output schemas
Commands that return data write JSON to stdout on success. Progress and human-readable status messages may be written to stderr;auth status, for example, reports authentication state there. This page documents the main machine-readable response shapes.
search / default query
match person / match company
enrich
--company-fields or --person-fields you requested. Absent fields were not requested or not available.
workflow contact-enrich
Contact enrichment is a dataset workflow. The trigger and wait responses contain workflow metadata, including the workflow run ID and, after success, the enriched child dataset ID.landbase-cli workflow status <workflow-run-id> or landbase-cli workflow wait <workflow-run-id> to inspect the run. Continue with output_dataset_id; it is a child dataset and does not replace the source dataset in place.
See workflow contact-enrich for channel flags, row slices, background recovery, and pending-row behavior.
datasets list
datasets show
runs is populated when --include-runs is passed.
upload
workflow trigger (without —wait)
runs list
account
landbase-cli account (no args) — the active account, read from local config:
landbase-cli account list — every account the user can access:
landbase-cli account set prints the newly active account: { "accountId": "5093" }.
landbase-cli account users — the users of the active account you can assign
campaigns or dialer sessions to (Account Owners see every current member;
everyone else sees only themselves):
onboarding get
Iterate
schema and ask the user the question verbatim for every entry where
required is true and filled is false, then submit one update combining
the answers.
onboarding update
Request body — a partial payload; at least one section is required:onboarding get.
Partial-merge rules. aboutCompany and aboutCompetition are
partial-mergeable — send only the fields you’re changing and the server spreads
them over current state. aboutAudience must be a complete segment (every
required audience field in one payload); the validator rejects partials.
Field types (per schema.type — what to put on the wire):
Clear a field. The merge is a JS object spread (
{ ...current, ...incoming }),
so the incoming value wins — including null and []. To clear a field, send it
explicitly with a falsy/empty value, e.g.
{ "aboutCompany": { "customerCount": null, "painPoints": [] } }. Omitting a
field preserves its prior value. Clearing a required field flips it back to
filled: false and the validator may reject the next update until it’s refilled.
contacts-import
contacts-import start response (202 Accepted):
runRef is for audit only — don’t branch on it. Processing is asynchronous; poll
status <importId> until phase is terminal.
contacts-import status / wait / start --watch final status — a compact,
stable shape (keys present in every phase, null until known):
email-campaigns status
email-campaigns list
linkedin-campaigns status
linkedin-campaigns list
dialer-sessions
landbase-cli dialer-sessions create --json session.json:
landbase-cli dialer-sessions status 9:
See dialer-sessions for the create body and full
workflow.

