Examples
Worked examples for common CLI workflows. Assumes you have run truto login and have at least one integrated account.
Orientation
truto whoami
truto whoami -o json
truto whoami -p staging
truto profiles list
truto team get -o jsonDiscover integrations
truto integrations list
truto integrations list --name hubspot
truto integrations unified-apis <integration-id>
truto integrations tools <integration-id>Discover what an account can do
ACCOUNT=<your-integrated-account-id>
truto accounts tools $ACCOUNT
truto accounts identify $ACCOUNT
truto accounts tools $ACCOUNT --methods list
truto accounts tools $ACCOUNT --methods list,get --tags contacts,deals
truto capabilities $ACCOUNT --type proxyFor coding agents, accounts tools is the best starting point when you do not know which resources an account supports.
Proxy API
ACCOUNT=<your-integrated-account-id>
truto proxy contacts -a $ACCOUNT
truto proxy contacts 1 -m get -a $ACCOUNT -o json
truto proxy contacts -m create -a $ACCOUNT -b '{"properties":{"email":"jane@example.com"}}'Unified API
ACCOUNT=<your-integrated-account-id>
truto unified crm contacts -a $ACCOUNT
truto unified crm contacts <id> -m get -a $ACCOUNT -o json
truto unified crm contacts -m create -a $ACCOUNT -b '{"first_name":"Jane","last_name":"Doe"}'Test a response mapping
# Evaluate a mapping against a saved raw API response (no live call)
truto unified test-mapping \
--model crm --resource contacts --integration hubspot \
--input sample-list-response.json
# Or pass the JSONata expression directly
truto unified test-mapping \
--mapping '$map(results, function($r) { $r })' \
--input sample-list-response.jsonExport and analyze
ACCOUNT=<your-integrated-account-id>
truto export crm/contacts -a $ACCOUNT -o ndjson --out contacts.ndjson
truto export crm/contacts -a $ACCOUNT -o ndjson | jq -r '.email' | sort -u
wc -l < contacts.ndjsonProfiles and staging
truto login --token $STAGING_TOKEN --profile-name staging
truto use staging
truto integrations list
truto use defaultIntegration build workflow
export ANTHROPIC_API_KEY=sk-ant-...
# Agentic build → working file → refinement (press Enter when done) → my-vendor.integration.json
truto integrations build https://docs.vendor.com/openapi.json my-vendor
# Add only endpoints missing from the live integration
truto integrations build https://docs.vendor.com/openapi.json my-vendor --only-missing
truto integrations lint my-vendor.integration.json
truto integrations apply my-vendor.integration.jsonBuild on Fireworks AI instead of Anthropic
export FIREWORKS_API_KEY=...
export FIRECRAWL_API_KEY=... # required for web_search / web_fetch under Fireworks
# Default workhorse (kimi-k2p7) for agent + extraction, deepseek-v4-flash for classification
truto integrations build https://docs.vendor.com/openapi.json my-vendor \
--llm-provider fireworks
# Pin a different workhorse (1M context GLM 5.2) and a cheaper classifier
truto integrations build https://docs.vendor.com/openapi.json my-vendor \
--llm-provider fireworks \
--llm-model glm-5p2 \
--llm-classification-model gpt-oss-20b
# Use Fireworks-hosted Qwen3 embeddings instead of the local ONNX default
truto integrations build https://docs.vendor.com/openapi.json my-vendor \
--llm-provider fireworks \
--embedding-provider fireworks \
--embedding-model qwen3-embedding-8bSee AI-powered build — LLM providers for the full preset table and the --anthropic-model / --llm-model exclusivity rule.
To add a single endpoint when you already have the HTTP verb and path, use truto integrations add-method — see Add method.
Unified mappings build workflow
export ANTHROPIC_API_KEY=sk-ant-...
ACCOUNT=<your-integrated-account-id>
# Agentic build → JSONata mapping rows grounded on live samples → my-vendor.crm.mappings.json
truto unified-mappings build my-vendor crm --account $ACCOUNT
# Audit, then push to the base mapping rows
truto unified-mappings validate my-vendor.crm.mappings.json
truto unified-mappings apply my-vendor.crm.mappings.json --target baseSee Unified mappings build for the sample ladder, flags, and the MappingFile shape.
Verbose debugging
truto proxy contacts -a $ACCOUNT -v
# stderr shows → GET ... and ← statusPiping between commands
# Create multiple integrations from a file
cat integrations.ndjson | truto integrations create --stdin
# Chain export into proxy create on another account
truto export crm/contacts -a $ACCOUNT_A -o ndjson | \
head -5 | \
truto proxy contacts -m create -a $ACCOUNT_B --stdinMore help
- Data plane — unified vs proxy
- Power features — export, diff, JSONata
- AI-powered build — full build options
- Run
truto contextfor an LLM-oriented reference (truto context --fullfor the full tree)