This repository contains the JavaScript client library for use with InfluxDB 2.x and Flux. This client supports Node.js, browser, and Deno environments. InfluxDB 3.x users should instead use the lightweight v3 client library. InfluxDB 1.x users may want to use the node-influx client library.
For ease of migration and a consistent query and write experience, v2 users should consider using InfluxQL and the node-influx client library.
This section contains links to the client library documentation.
InfluxDB 2.x client consists of two main packages
- @influxdata/influxdb-client
- Query data using the Flux language
- Write data to InfluxDB
- batch data in the background
- retry automatically on failure
- @influxdata/influxdb-client-apis
- Create/Modify/Delete/Manage
- buckets
- tasks
- authorizations
- sources
- ... and other InfluxDB domain objects
- Delete data from a bucket
- Invoke a flux script
- built on @influxdata/influxdb-client
- Create/Modify/Delete/Manage
To write or query InfluxDB, add @influxdata/influxdb-client
as a dependency to your project using your favorite package manager.
$ npm install --save @influxdata/influxdb-client
$ yarn add @influxdata/influxdb-client
$ pnpm add @influxdata/influxdb-client
If you target Node.js, use @influxdata/influxdb-client. It provides main (CJS), module (ESM), and browser (UMD) exports.
If you target browsers (including Deno and Ionic), use @influxdata/influxdb-client-browser in place of @influxdata/influxdb-client
. It provides main (UMD) and module (ESM) exports.
To use InfluxDB management APIs in your project, also add @influxdata/influxdb-client-apis
as a dependency to your project.
$ npm install --save @influxdata/influxdb-client-apis
$ yarn add @influxdata/influxdb-client-apis
$ pnpm add @influxdata/influxdb-client-apis
Use the following examples to get started with the JavaScript client for InfluxDB:
- @influxdata/influxdb-client
- @influxdata/influxdb-client-apis
See examples for more advanced use case like the following:
- Execute parameterized queries.
- Delete bucket data.
- Use the client library with InfluxDB 1.8+.
- Use the client library in the browser or Deno.
- Process InfluxDB query results with RX Observables.
- Customize the writing of measurement points to InfluxDB.
- Reuse connections in communication with InfluxDB.
JavaScript client API Reference Documentation is available online at https://influxdata.github.io/influxdb-client-js/ .
To contribute code, fork the repository, apply changes and submit a pull request to the master
branch.
Requirements:
- Node.js LTS version, v18 recommended
node --version
- yarn 1.22.19 or higher
yarn -v
Run tests:
$ yarn test
Check code coverage:
$ yarn coverage
Build distributions:
$ yarn build
The InfluxDB 2.x JavaScript client is released under the MIT License.