Variable management commands for NDCLI. Variables are key-value pairs that can be defined at different scopes and referenced in snippets and templates using a {{ variable_name }} syntax.
Command alias: var
Variables are resolved from the most specific scope to the most general:
Scope Description deviceApplies to a single device ouApplies to all devices in an Organizational Unit templateApplies to all devices using a template orgApplies to all devices in the organization
When the same variable name is defined at multiple scopes, the most specific scope wins.
Show all variables with their definitions across all scopes. Useful for understanding which variables are defined and where they come from.
ndcli variable overview [flags]
Flag Type Default Description --namestring Filter by name pattern (regex) --pageint 1Page number --per-pageint 50Items per page
ndcli variable overview --name " dns.* "
ndcli var overview -f json
List all variables defined at the organization level.
ndcli variable org list [flags]
Flag Type Default Description --namestring Filter by name pattern (regex) --pageint 1Page number --per-pageint 50Items per page
ndcli variable org list --name " ntp.* "
Show details of a specific organization-level variable.
ndcli variable org describe [variable]
Argument Required Description variableYes Variable name
ndcli variable org describe ntp_server
Create a new organization-level variable.
ndcli variable org create [name] [value] [flags]
Argument Required Description nameYes Variable name valueYes Variable value
Flag Type Default Description --descriptionstring Human-readable description --secretbool falseMark as secret — value is redacted in API responses
ndcli variable org create ntp_server 192.168.1.1
ndcli variable org create ntp_server 192.168.1.1 --description " Primary NTP server "
ndcli variable org create api_key " my-secret " --secret
Update an existing organization-level variable.
ndcli variable org set [variable] [flags]
Argument Required Description variableYes Variable name
Flag Type Default Description --valuestring New value --descriptionstring New description
ndcli variable org set ntp_server --value 10.0.0.1
ndcli variable org set ntp_server --description " Updated NTP server "
Delete an organization-level variable.
ndcli variable org delete [variable] [flags]
Argument Required Description variableYes Variable name
Flag Type Default Description -y, --yesbool falseSkip confirmation prompt
ndcli variable org delete old_variable
List all variables defined for an Organizational Unit.
ndcli variable ou list [OU] [flags]
Argument Required Description OUYes Organizational Unit name
Flag Type Default Description --namestring Filter by name pattern (regex) --pageint 1Page number --per-pageint 50Items per page
ndcli variable ou list production
Show details of a specific OU-level variable.
ndcli variable ou describe [OU] [variable]
Argument Required Description OUYes Organizational Unit name variableYes Variable name
ndcli variable ou describe production dns_server
Create a variable at the OU level.
ndcli variable ou create [OU] [name] [value] [flags]
Argument Required Description OUYes Organizational Unit name nameYes Variable name valueYes Variable value
Flag Type Default Description --descriptionstring Human-readable description
ndcli variable ou create production dns_server 10.10.0.53
ndcli variable ou create staging dns_server 10.20.0.53 --description " Staging DNS "
Update an OU-level variable.
ndcli variable ou set [OU] [variable] [flags]
Argument Required Description OUYes Organizational Unit name variableYes Variable name
Flag Type Default Description --valuestring New value --descriptionstring New description
ndcli variable ou set production dns_server --value 10.10.1.53
Delete an OU-level variable.
ndcli variable ou delete [OU] [variable] [flags]
Argument Required Description OUYes Organizational Unit name variableYes Variable name
Flag Type Default Description -y, --yesbool falseSkip confirmation prompt
ndcli variable ou delete production old_var
List all variables defined for a template.
ndcli variable template list [template] [flags]
Argument Required Description templateYes Template name
Flag Type Default Description --namestring Filter by name pattern (regex) --pageint 1Page number --per-pageint 50Items per page
ndcli variable template list base-config
Show details of a specific template-level variable.
ndcli variable template describe [template] [variable]
Argument Required Description templateYes Template name variableYes Variable name
ndcli variable template describe base-config timezone
Create a variable at the template level.
ndcli variable template create [template] [name] [value] [flags]
Argument Required Description templateYes Template name nameYes Variable name valueYes Variable value
Flag Type Default Description --descriptionstring Human-readable description
ndcli variable template create base-config timezone UTC
ndcli variable template create base-config timezone " America/New_York " --description " Default timezone "
Update a template-level variable.
ndcli variable template set [template] [variable] [flags]
Argument Required Description templateYes Template name variableYes Variable name
Flag Type Default Description --valuestring New value --descriptionstring New description
ndcli variable template set base-config timezone --value " Europe/London "
Delete a template-level variable.
ndcli variable template delete [template] [variable] [flags]
Argument Required Description templateYes Template name variableYes Variable name
Flag Type Default Description -y, --yesbool falseSkip confirmation prompt
ndcli variable template delete base-config old_var
List all variables defined for a specific device.
ndcli variable device list [device] [flags]
Argument Required Description deviceYes Device name
Flag Type Default Description --namestring Filter by name pattern (regex) --pageint 1Page number --per-pageint 50Items per page
ndcli variable device list my-firewall
Show details of a specific device-level variable.
ndcli variable device describe [device] [variable]
Argument Required Description deviceYes Device name variableYes Variable name
ndcli variable device describe my-firewall wan_ip
Create a variable at the device level.
ndcli variable device create [device] [name] [value] [flags]
Argument Required Description deviceYes Device name nameYes Variable name valueYes Variable value
Flag Type Default Description --descriptionstring Human-readable description
ndcli variable device create my-firewall wan_ip 203.0.113.1
ndcli variable device create my-firewall wan_ip 203.0.113.1 --description " WAN IP address "
Update a device-level variable.
ndcli variable device set [device] [variable] [flags]
Argument Required Description deviceYes Device name variableYes Variable name
Flag Type Default Description --valuestring New value --descriptionstring New description
ndcli variable device set my-firewall wan_ip --value 203.0.113.2
Delete a device-level variable.
ndcli variable device delete [device] [variable] [flags]
Argument Required Description deviceYes Device name variableYes Variable name
Flag Type Default Description -y, --yesbool falseSkip confirmation prompt
ndcli variable device delete my-firewall old_var