Skip to content

variable

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

Scopes

Variables are resolved from the most specific scope to the most general:

ScopeDescription
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.

Commands

CommandDescription
variable overviewShow all variables across scopes
variable org listList organization-level variables
variable org describeShow an organization-level variable
variable org createCreate an organization-level variable
variable org setUpdate an organization-level variable
variable org deleteDelete an organization-level variable
variable ou listList OU-level variables
variable ou describeShow an OU-level variable
variable ou createCreate an OU-level variable
variable ou setUpdate an OU-level variable
variable ou deleteDelete an OU-level variable
variable template listList template-level variables
variable template describeShow a template-level variable
variable template createCreate a template-level variable
variable template setUpdate a template-level variable
variable template deleteDelete a template-level variable
variable device listList device-level variables
variable device describeShow a device-level variable
variable device createCreate a device-level variable
variable device setUpdate a device-level variable
variable device deleteDelete a device-level variable

variable overview

Show all variables with their definitions across all scopes. Useful for understanding which variables are defined and where they come from.

Terminal window
ndcli variable overview [flags]

Flags

FlagTypeDefaultDescription
--namestringFilter by name pattern (regex)
--pageint1Page number
--per-pageint50Items per page

Examples

Terminal window
ndcli variable overview
ndcli variable overview --name "dns.*"
ndcli var overview -f json

variable org list

List all variables defined at the organization level.

Terminal window
ndcli variable org list [flags]

Flags

FlagTypeDefaultDescription
--namestringFilter by name pattern (regex)
--pageint1Page number
--per-pageint50Items per page

Examples

Terminal window
ndcli variable org list
ndcli variable org list --name "ntp.*"

variable org describe

Show details of a specific organization-level variable.

Terminal window
ndcli variable org describe [variable]

Arguments

ArgumentRequiredDescription
variableYesVariable name

Examples

Terminal window
ndcli variable org describe ntp_server

variable org create

Create a new organization-level variable.

Terminal window
ndcli variable org create [name] [value] [flags]

Arguments

ArgumentRequiredDescription
nameYesVariable name
valueYesVariable value

Flags

FlagTypeDefaultDescription
--descriptionstringHuman-readable description
--secretboolfalseMark as secret — value is redacted in API responses

Examples

Terminal window
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

variable org set

Update an existing organization-level variable.

Terminal window
ndcli variable org set [variable] [flags]

Arguments

ArgumentRequiredDescription
variableYesVariable name

Flags

FlagTypeDefaultDescription
--valuestringNew value
--descriptionstringNew description

Examples

Terminal window
ndcli variable org set ntp_server --value 10.0.0.1
ndcli variable org set ntp_server --description "Updated NTP server"

variable org delete

Delete an organization-level variable.

Terminal window
ndcli variable org delete [variable] [flags]

Arguments

ArgumentRequiredDescription
variableYesVariable name

Flags

FlagTypeDefaultDescription
-y, --yesboolfalseSkip confirmation prompt

Examples

Terminal window
ndcli variable org delete old_variable

variable ou list

List all variables defined for an Organizational Unit.

Terminal window
ndcli variable ou list [OU] [flags]

Arguments

ArgumentRequiredDescription
OUYesOrganizational Unit name

Flags

FlagTypeDefaultDescription
--namestringFilter by name pattern (regex)
--pageint1Page number
--per-pageint50Items per page

Examples

Terminal window
ndcli variable ou list production

variable ou describe

Show details of a specific OU-level variable.

Terminal window
ndcli variable ou describe [OU] [variable]

Arguments

ArgumentRequiredDescription
OUYesOrganizational Unit name
variableYesVariable name

Examples

Terminal window
ndcli variable ou describe production dns_server

variable ou create

Create a variable at the OU level.

Terminal window
ndcli variable ou create [OU] [name] [value] [flags]

Arguments

ArgumentRequiredDescription
OUYesOrganizational Unit name
nameYesVariable name
valueYesVariable value

Flags

FlagTypeDefaultDescription
--descriptionstringHuman-readable description

Examples

Terminal window
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"

variable ou set

Update an OU-level variable.

Terminal window
ndcli variable ou set [OU] [variable] [flags]

Arguments

ArgumentRequiredDescription
OUYesOrganizational Unit name
variableYesVariable name

Flags

FlagTypeDefaultDescription
--valuestringNew value
--descriptionstringNew description

Examples

Terminal window
ndcli variable ou set production dns_server --value 10.10.1.53

variable ou delete

Delete an OU-level variable.

Terminal window
ndcli variable ou delete [OU] [variable] [flags]

Arguments

ArgumentRequiredDescription
OUYesOrganizational Unit name
variableYesVariable name

Flags

FlagTypeDefaultDescription
-y, --yesboolfalseSkip confirmation prompt

Examples

Terminal window
ndcli variable ou delete production old_var

variable template list

List all variables defined for a template.

Terminal window
ndcli variable template list [template] [flags]

Arguments

ArgumentRequiredDescription
templateYesTemplate name

Flags

FlagTypeDefaultDescription
--namestringFilter by name pattern (regex)
--pageint1Page number
--per-pageint50Items per page

Examples

Terminal window
ndcli variable template list base-config

variable template describe

Show details of a specific template-level variable.

Terminal window
ndcli variable template describe [template] [variable]

Arguments

ArgumentRequiredDescription
templateYesTemplate name
variableYesVariable name

Examples

Terminal window
ndcli variable template describe base-config timezone

variable template create

Create a variable at the template level.

Terminal window
ndcli variable template create [template] [name] [value] [flags]

Arguments

ArgumentRequiredDescription
templateYesTemplate name
nameYesVariable name
valueYesVariable value

Flags

FlagTypeDefaultDescription
--descriptionstringHuman-readable description

Examples

Terminal window
ndcli variable template create base-config timezone UTC
ndcli variable template create base-config timezone "America/New_York" --description "Default timezone"

variable template set

Update a template-level variable.

Terminal window
ndcli variable template set [template] [variable] [flags]

Arguments

ArgumentRequiredDescription
templateYesTemplate name
variableYesVariable name

Flags

FlagTypeDefaultDescription
--valuestringNew value
--descriptionstringNew description

Examples

Terminal window
ndcli variable template set base-config timezone --value "Europe/London"

variable template delete

Delete a template-level variable.

Terminal window
ndcli variable template delete [template] [variable] [flags]

Arguments

ArgumentRequiredDescription
templateYesTemplate name
variableYesVariable name

Flags

FlagTypeDefaultDescription
-y, --yesboolfalseSkip confirmation prompt

Examples

Terminal window
ndcli variable template delete base-config old_var

variable device list

List all variables defined for a specific device.

Terminal window
ndcli variable device list [device] [flags]

Arguments

ArgumentRequiredDescription
deviceYesDevice name

Flags

FlagTypeDefaultDescription
--namestringFilter by name pattern (regex)
--pageint1Page number
--per-pageint50Items per page

Examples

Terminal window
ndcli variable device list my-firewall

variable device describe

Show details of a specific device-level variable.

Terminal window
ndcli variable device describe [device] [variable]

Arguments

ArgumentRequiredDescription
deviceYesDevice name
variableYesVariable name

Examples

Terminal window
ndcli variable device describe my-firewall wan_ip

variable device create

Create a variable at the device level.

Terminal window
ndcli variable device create [device] [name] [value] [flags]

Arguments

ArgumentRequiredDescription
deviceYesDevice name
nameYesVariable name
valueYesVariable value

Flags

FlagTypeDefaultDescription
--descriptionstringHuman-readable description

Examples

Terminal window
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"

variable device set

Update a device-level variable.

Terminal window
ndcli variable device set [device] [variable] [flags]

Arguments

ArgumentRequiredDescription
deviceYesDevice name
variableYesVariable name

Flags

FlagTypeDefaultDescription
--valuestringNew value
--descriptionstringNew description

Examples

Terminal window
ndcli variable device set my-firewall wan_ip --value 203.0.113.2

variable device delete

Delete a device-level variable.

Terminal window
ndcli variable device delete [device] [variable] [flags]

Arguments

ArgumentRequiredDescription
deviceYesDevice name
variableYesVariable name

Flags

FlagTypeDefaultDescription
-y, --yesboolfalseSkip confirmation prompt

Examples

Terminal window
ndcli variable device delete my-firewall old_var