content/shared/influxdb3-cli/update/trigger.md
The influxdb3 update trigger command updates an existing trigger in your {{< product-name >}} instance.
Use this command to update trigger plugin code, configuration, or behavior without recreating the trigger. This preserves trigger history and configuration while allowing you to iterate on plugin development.
influxdb3 update trigger [OPTIONS] \
--database <DATABASE_NAME> \
--trigger-name <TRIGGER_NAME>
DATABASE_NAME: (Required) The name of the database containing the trigger.TRIGGER_NAME: (Required) The name of the trigger to update.| Option | Description | |
|---|---|---|
-H | --host | Host URL of the running {{< product-name >}} server (default is http://127.0.0.1:8181) |
-d | --database | ({{< req >}}) Name of the database containing the trigger |
--trigger-name | ({{< req >}}) Name of the trigger to update | |
-p | --path | Path to plugin file or directory (single .py file or directory containing __init__.py for multifile plugins). Can be local path (with --upload) or server path. |
--upload | Upload local plugin files to the server. Requires admin token. Use with --path to specify local files. | |
--trigger-arguments | Additional arguments for the trigger, in the format key=value, separated by commas (for example, arg1=val1,arg2=val2) | |
--disabled | Set the trigger state to disabled | |
--enabled | Set the trigger state to enabled | |
--error-behavior | Error handling behavior: log, retry, or disable | |
--token | Authentication token | |
--tls-ca | Path to a custom TLS certificate authority (for testing or self-signed certificates) | |
--tls-no-verify | Disable TLS certificate verification (Not recommended in production, useful for self-signed certificates) | |
-h | --help | Print help information |
--help-all | Print detailed help information |
You can use the following environment variables instead of providing CLI options directly:
| Environment Variable | Option |
|---|---|
INFLUXDB3_HOST_URL | --host |
INFLUXDB3_DATABASE_NAME | --database |
INFLUXDB3_AUTH_TOKEN | --token |
INFLUXDB3_TLS_CA | --tls-ca |
INFLUXDB3_TLS_NO_VERIFY | --tls-no-verify |
The following examples show how to update triggers in different scenarios.
Replace the following placeholders with your values:
DATABASE_NAME{{% /code-placeholder-key %}}: Database nameAUTH_TOKEN{{% /code-placeholder-key %}}: Authentication tokenTRIGGER_NAME{{% /code-placeholder-key %}}: Name of the trigger to update{{% code-placeholders "(DATABASE|TRIGGER)_NAME|AUTH_TOKEN" %}}
Update a trigger to use modified plugin code from the server's plugin directory.
<!--pytest.mark.skip-->influxdb3 update trigger \
--database DATABASE_NAME \
--trigger-name TRIGGER_NAME \
--path "my_plugin.py" \
--token AUTH_TOKEN
Upload new plugin code from your local machine and update the trigger in a single operation. Requires admin token.
<!--pytest.mark.skip--># Upload single-file plugin
influxdb3 update trigger \
--database DATABASE_NAME \
--trigger-name TRIGGER_NAME \
--path "/local/path/to/updated_plugin.py" \
--upload \
--token AUTH_TOKEN
# Upload multifile plugin directory
influxdb3 update trigger \
--database DATABASE_NAME \
--trigger-name TRIGGER_NAME \
--path "/local/path/to/plugin_directory" \
--upload \
--token AUTH_TOKEN
The --upload flag transfers local files to the server's plugin directory, making it easy to iterate on plugin development without manual file copying.
Modify the arguments passed to a trigger's plugin code.
<!--pytest.mark.skip-->influxdb3 update trigger \
--database DATABASE_NAME \
--trigger-name TRIGGER_NAME \
--trigger-arguments threshold=100,window=5m \
--token AUTH_TOKEN
Change the trigger's enabled state without modifying other configuration.
<!--pytest.mark.skip--># Disable a trigger
influxdb3 update trigger \
--database DATABASE_NAME \
--trigger-name TRIGGER_NAME \
--disabled \
--token AUTH_TOKEN
# Enable a trigger
influxdb3 update trigger \
--database DATABASE_NAME \
--trigger-name TRIGGER_NAME \
--enabled \
--token AUTH_TOKEN
Change how the trigger responds to errors.
<!--pytest.mark.skip--># Log errors without retrying
influxdb3 update trigger \
--database DATABASE_NAME \
--trigger-name TRIGGER_NAME \
--error-behavior log \
--token AUTH_TOKEN
# Retry on errors
influxdb3 update trigger \
--database DATABASE_NAME \
--trigger-name TRIGGER_NAME \
--error-behavior retry \
--token AUTH_TOKEN
# Disable trigger on error
influxdb3 update trigger \
--database DATABASE_NAME \
--trigger-name TRIGGER_NAME \
--error-behavior disable \
--token AUTH_TOKEN
{{% /code-placeholders %}}