InfluxDB v3 API client libraries
Client libraries for InfluxDB v3
InfluxDB v3 client libraries are language-specific packages that work with and integrate with your application to write to and query data in InfluxDB Clustered. InfluxData and the user community maintain client libraries for developers who want to take advantage of:
- Idioms for InfluxDB requests, responses, and errors.
- Common patterns in a familiar programming language.
- Faster development and less boilerplate code.
InfluxDB client libraries provide configurable batch writing of data to InfluxDB HTTP APIs. They can be used to construct line protocol data and transform data from other formats to line protocol.
InfluxDB v3 client libraries can query InfluxDB v3 using InfluxDB v3’s IOx-specific Arrow Flight protocol with gRPC. Client libraries use Flight clients to execute SQL and InfluxQL queries, request database information, and retrieve data stored in InfluxDB Clustered.
Additional features may vary among client libraries.
For specifics about a client library, see the library’s GitHub repository. InfluxDB v3 client libraries are part of the Influx Community.
C# .NET
The InfluxDB v3 influxdb3-csharp
C# .NET client library integrates with C# .NET scripts and applications to write and query data stored in an InfluxDB Clustered database.
Go
The InfluxDB v3 influxdb3-go
Go client library integrates with Go scripts and applications to write and query data stored in an database.
Java
The InfluxDB v3 influxdb3-java
Java client library integrates with application code to write and query data stored in an InfluxDB Clustered database.
JavaScript
The InfluxDB v3 influxdb3-js
JavaScript client library integrates with JavaScript scripts and applications to write and query data stored in an InfluxDB Clustered database.
Python
The InfluxDB v3 influxdb3-python
Python client library integrates with Python scripts and applications to write and query data stored in an InfluxDB Clustered database.
from influxdb_client_3 import(InfluxDBClient3,
WriteOptions,
write_client_options)
# Instantiate batch writing options for the client
write_options = WriteOptions()
wco = write_client_options(write_options=write_options)
# Instantiate an InfluxDB v3 client
with InfluxDBClient3(host=f"cluster-host.com",
database=f"DATABASE_NAME",
token=f"DATABASE_TOKEN",
write_client_options=wco) as client:
# Write data in batches
client.write_file(file='./data/home-sensor-data.csv', timestamp_column='time',
tag_columns=["room"])
# Execute a query and retrieve data formatted as a PyArrow Table
table = client.query(
'''SELECT *
FROM home
WHERE time >= now() - INTERVAL '90 days'
ORDER BY time''')
Was this page helpful?
Thank you for your feedback!
Support and feedback
Thank you for being part of our community! We welcome and encourage your feedback and bug reports for InfluxDB and this documentation. To find support, use the following resources:
Customers with an annual or support contract can contact InfluxData Support.