Parameters and input files
How the Nodaro CLI turns repeated --param and --input key=value pairs into a request body, how values get their type, and when to send a JSON file instead.
Parameters are the values you pass to a run on the command line. nodaro nodes run takes them as --param key=value and nodaro apps run as --input key=value. Both flags repeat, both follow the same rules, and a JSON file with --params-file covers anything that does not fit on a flag.
Write key=value pairs
Repeat the flag once per value. Quote a value that contains spaces, so the shell passes it as one argument.
nodaro nodes run generate-video \
--param prompt="a paper boat drifting down a rainy street" \
--param provider=seedance-2-fast \
--param duration=8The CLI gives each value a type before it sends the request:
| You type | The request body gets |
|---|---|
true or false | A boolean |
null | null |
A whole number, such as 8 | A number |
A decimal number, such as 0.5 | A number |
A value that starts with [ or { and is valid JSON | A JSON array or object |
| Anything else | A string |
Only the first = separates the key from the value. The rest of the text is kept, so --param query=a=b=c sends the string a=b=c.
An inline JSON array looks like this. Wrap the pair in single quotes, so the shell keeps the double quotes:
nodaro nodes run generate-image --param prompt="the same mug on a marble counter" --param 'referenceImageUrls=["https://example.com/mug-front.png","https://example.com/mug-side.png"]'To find the keys a node accepts, run nodaro nodes get <type>. For an app, run nodaro apps get <slug>.
Send a JSON file
For nested objects, long arrays or any value that does not fit the flag form, write the whole body to a JSON file and pass it with --params-file. The file must contain one JSON object.
cat > body.json <<'EOF'
{
"prompt": "a lighthouse on a cliff at dawn, cinematic",
"provider": "flux",
"aspectRatio": "16:9"
}
EOF
nodaro nodes run generate-image --params-file body.json --param aspectRatio=9:16Flags override the file. In this example, the run uses the 9:16 aspect ratio from the flag, and the rest of the body from the file.
Set app inputs and raw node fields
nodaro apps run takes the app's input names as keys:
nodaro apps run hair-styler-dd3erw --input prompt="curly red hair" --watch--override reaches node fields that the app does not expose, for this run only. Write it as <nodeId>.<field>=<value>:
nodaro apps run hair-styler-dd3erw --input prompt="curly red hair" \
--override n1.promptPrefix="Studio portrait of" --override n1.promptSuffix=", 85mm, soft light"This example wraps the user's prompt with hidden text before and after it. See Prompt pre and post text. An override can never change where a node sends or fetches data, such as the address of a Webhook Output node; the run is refused with locked_field.
Run input and source nodes
Input and source nodes run the same way. Web Scrape, web-scrape, takes its source as actor: google-search, content-crawler, rss or tiktok.
# Google Search results
nodaro nodes run web-scrape --param actor=google-search --param query="running shoes" --param maxResults=5
# The text of one web page, as Markdown
nodaro nodes run web-scrape --param actor=content-crawler --param url=https://example.com --param mode=pageOn a self-hosted install, Web Scrape needs APIFY_API_TOKEN on the server, or a connection to Nodaro Cloud that runs and bills the scrape.
Frequently asked questions
Related
Commands
Output and exit codes
Examples
Nodes
Last updated on
Commands
Every core Nodaro CLI command with its options, for projects, workflows and sharing, apps, nodes, models, pickers, executions, jobs, prompts and Recast.
Output and exit codes
Read Nodaro CLI output as tables or JSON, follow runs to the end with --watch, and branch on the exit codes for failed, cancelled and held runs in scripts.