---
title: InfluxDB syntaxes
description: InfluxDB uses a handful of languages and syntaxes to perform tasks such as writing, querying, processing, and deleting data.
url: https://docs.influxdata.com/influxdb/v2/reference/syntax/
estimated_tokens: 611
product: InfluxDB OSS v2
version: v2
---

# InfluxDB syntaxes

This page documents an earlier version of InfluxDB OSS. [InfluxDB 3 Core](/influxdb3/core/) is the latest stable version.

#### API token hashing is enabled by default in InfluxDB OSS 2.9.0

Stronger token security: tokens are stored as hashes on disk, so a copy of the database file doesn’t expose usable tokens. Existing tokens are hashed on first startup and the original strings can’t be recovered afterward — **capture any plaintext tokens you still need before you upgrade**.

For more information, see [Token hashing](/influxdb/v2/admin/tokens/#token-hashing).

InfluxDB uses a handful of languages and syntaxes to perform tasks such as writing, querying, processing, and deleting data. The following articles provide information about the different syntaxes used with InfluxDB and the contexts in which they’re used:

### [Flux](/influxdb/v2/reference/syntax/flux/)

Flux is a functional data scripting language designed for querying, analyzing, and acting on data.

### [InfluxQL](/influxdb/v2/reference/syntax/influxql/)

InfluxQL is an SQL-like query language for interacting with data in InfluxDB.

### [Line protocol](/influxdb/v2/reference/syntax/line-protocol/)

InfluxDB uses line protocol to write data points. It is a text-based format that provides the measurement, tag set, field set, and timestamp of a data point.

### [Annotated CSV](/influxdb/v2/reference/syntax/annotated-csv/)

InfluxDB and Flux return query results in annotated CSV format. You can also read annotated CSV directly from Flux with the `csv.from()` function, write data to InfluxDB using annotated CSV and the `influx write` command, or upload a CSV file in the UI.

### [Delete predicate](/influxdb/v2/reference/syntax/delete-predicate/)

InfluxDB uses an InfluxQL-like predicate syntax to determine what data points to delete.

[syntax](/influxdb/v2/tags/syntax/)
