InfluxDB Sink Node
Quick Reference
Use Credentials (Optional) The InfluxDB API token. Leave empty to connect without authentication.
InfluxDB URL
Base URL of the InfluxDB server.
ex: https://influx:8086
Organization / Bucket The InfluxDB organization and the bucket to write into.
Measurement Source
Literal name uses one fixed measurement for every record; From record field reads the name off each record.
Tag Fields Record fields written as InfluxDB tags. Indexed — use for low-cardinality dimensions.
Value Fields Record fields written as InfluxDB values. Leave empty to write all remaining fields.
Timestamp Field (optional) Record field holding the point time. Write time is used when empty.
Timestamp Precision Precision of the point timestamp.
Batch Size Records written per request.
Overview
The InfluxDB Sink node writes records from your workflow to InfluxDB. Because InfluxDB stores measurements rather than rows, each record has to be mapped into a point: a measurement name, a set of tags (indexed dimensions you filter and group by), a set of values (the actual numbers being recorded), and a timestamp.
You declare that mapping by naming record fields — no expression language involved. The default makes the common case short: name your tags, and every other field becomes a value automatically.
The measurement name can be fixed, or read from a field on each record so a single workflow can fan one stream out across many measurements.
Configuration
| Field | Description | Required | Default |
|---|---|---|---|
| Use Credentials | Select or create an API key credential holding the InfluxDB API token. Leave empty to connect without authentication (local or unsecured InfluxDB). | No | — |
| InfluxDB URL | Base URL of the InfluxDB server (e.g. https://influx:8086). | Yes | — |
| Organization | The InfluxDB organization to write under. | Yes | — |
| Bucket | The target bucket. | Yes | — |
| Measurement Source | Literal name for a fixed measurement, or From record field to read the name from each record. | Yes | Literal name |
| Measurement | The fixed measurement name (e.g. cpu). Shown when Measurement Source is Literal name. | Conditional | — |
| Measurement Field | Record field whose value is used as the measurement name (e.g. metric_name). Shown when Measurement Source is From record field. | Conditional | — |
| Tag Fields | Record fields written as InfluxDB tags. Values are converted to strings. | No | — |
| Value Fields | Record fields written as InfluxDB values. Leave empty to write all remaining fields — see below. | No | — |
| Timestamp Field | Record field holding the point timestamp. Leave empty to stamp points with the write time. | No | — |
| Timestamp Precision | Precision of the point timestamp: Nanoseconds, Microseconds, Milliseconds, or Seconds. | No | Milliseconds |
| Batch Size | Maximum records per write request. | No | 1000 |
All field selectors are top-level record field names, not JSON paths.
Mapping Records to Points
Tags vs Values
Tags are indexed. They are what you filter and group by in queries — host, region, device_id. Their values are always stored as strings. Keep tag cardinality low: a tag with a value per request (a request id, a session id) makes the index grow without bound and will degrade the database.
Values are the measurements themselves and keep their type — numbers stay numbers, booleans stay booleans. Nested objects or arrays are stored as JSON strings.
Leaving Value Fields empty writes every remaining field: every record field not used as a tag, as the timestamp, or as the measurement source. When your records are already shaped like metrics, this means you only need to list the tags.
InfluxDB requires at least one value per point. A record that produces none is rejected individually and the rest of the batch still writes.
Measurement Source
Literal name writes every record to the same measurement — the normal choice when a workflow handles one kind of metric.
From record field reads the measurement name from the named field on each record. Use it when one stream carries several metric types that should be stored separately. A record where that field is missing or blank is rejected.
Timestamp Field
Leave Timestamp Field empty and points are stamped with the time the workflow wrote them — fine for live telemetry, wrong for backfills or any data where the event time matters.
Set it, and the record must carry that field. Its value is read as:
| Value | Interpretation |
|---|---|
| A number | An epoch value already in the configured Timestamp Precision |
| A string | An ISO-8601 instant such as 2026-07-23T14:02:11Z |
| Missing, or another type | The record is rejected |
Because a numeric timestamp is interpreted using Timestamp Precision, the two must agree. Epoch milliseconds read at Seconds precision land tens of thousands of years in the future.
Example
With Measurement host_metrics, Tag Fields host and region, Timestamp Field ts, Timestamp Precision Milliseconds, and Value Fields left empty, this record:
{ "host": "web-01", "region": "us-east-1", "cpu": 0.82, "mem_used": 6291456, "ts": 1753280531000 }
is written as the point:
host_metrics,host=web-01,region=us-east-1 cpu=0.82,mem_used=6291456i 1753280531000
cpu and mem_used became values automatically, because they were the fields left over after the tags and timestamp were claimed.
Related Nodes
- TimescaleDB Sink: Alternative time-series destination backed by PostgreSQL
- JDBC Sink: Write records to a relational database
- Elasticsearch Sink: Index records into Elasticsearch