List resource tokens
Use the influxdb3 CLI or the HTTP API to list resource tokens with fine-grained
access permissions in your InfluxDB 3 Enterprise instance.
Use the influxdb3 show tokens command to list all tokens or use SQL to query token
metadata directly from the system.tokens table.
Resource tokens have fine-grained permissions for InfluxDB 3 resources, such
as databases and system tables.
The permissions are in the format RESOURCE_TYPE:RESOURCE_NAMES:ACTIONS.
RESOURCE_TYPEis the type of resource (for example,db,system)RESOURCE_NAMESis the specific resource name (for example, a list of database names or*for all)ACTIONSis the permission level (read,write, or*for all)
Database resource tokens have permissions in the format db:database_names:actions.
System resource tokens have permissions in the format system:system_endpoint_names:read.
In the following examples, replace AUTH_TOKEN
with your InfluxDB token
that has read permission on the _internal system database.
List all tokens
The influxdb3 show tokens CLI command lists all admin and resource tokens in your InfluxDB 3 instance.
influxdb3 show tokensQuery token metadata
To filter tokens and retrieve specific details using SQL, query the system.tokens table in the
_internal system database–for example:
influxdb3 query \
--db _internal \
"SELECT name, permissions FROM system.tokens WHERE permissions NOT LIKE '\*%'"curl -G \
"http://localhost:8181/api/v3/query_sql" \
--data-urlencode "db=_internal" \
--data-urlencode "q=SELECT * FROM system.tokens WHERE permissions NOT LIKE '\*%'" \
--header 'Accept: application/json' \
--header "Authorization: Bearer AUTH_TOKEN" Format the output
Use the format option to specify the output format for
the influxdb3 show tokens command or the HTTP API response.
InfluxDB 3 Enterprise supports the following output formats:
pretty(default for CLI)json(default for HTTP API)jsonlcsvparquet(output to a file)
influxdb3 show tokens \
--format csvcurl -G \
"http://localhost:8181/api/v3/query_sql" \
--data-urlencode "db=_internal" \
--data-urlencode "q=SELECT * FROM system.tokens" \
--data-urlencode "format=csv" \
--header 'Accept: text/csv' \
--header "Authorization: Bearer AUTH_TOKEN"Output to a Parquet file
Parquet is a binary format.
To output to a Parquet file using the CLI, include the --output option
with a destination path for the file.
To output a Parquet file using the HTTP API, your client must be able to handle binary data–for example,
using cURL’s --output option.
influxdb3 show tokens \
--format parquet \
--output /PATH/TO/FILE.parquetcurl -G \
"http://localhost:8181/api/v3/query_sql" \
--data-urlencode "db=_internal" \
--data-urlencode "q=SELECT * FROM system.tokens" \
--data-urlencode "format=parquet" \
--header "Accept: application/parquet" \
--header "Authorization: Bearer AUTH_TOKEN" \
--output /PATH/TO/FILE.parquetReplace /PATH/TO/FILE.parquet
with the path to the file where you want to save the Parquet data.
Filter the output for resource tokens
You can use tools such as grep or jq to filter the token list–for example:
Use grep to filter for resource (non-admin) tokens:
influxdb3 show tokens --format pretty | grep -v '*:*:*'curl -G \
"http://localhost:8181/api/v3/query_sql" \
--data-urlencode "db=_internal" \
--data-urlencode "q=SELECT * FROM system.tokens" \
--data-urlencode "format=jsonl" \
--header 'Accept: application/json' \
--header "Authorization: Bearer AUTH_TOKEN" |
grep -v "*:*:*"Use jq to filter for system tokens and display their permissions:
influxdb3 show tokens --format json |
jq '.[] | select(.permissions | startswith("system:")) | {name: .name, permissions: .permissions}'curl -G \
"http://localhost:8181/api/v3/query_sql" \
--data-urlencode "db=_internal" \
--data-urlencode "q=SELECT * FROM system.tokens" \
--data-urlencode "format=json" \
--header "Accept: application/json" \
--header "Authorization: Bearer AUTH_TOKEN" |
jq '.[] | select(.permissions | startswith("system:")) | {name: .name, permissions: .permissions}'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 3 Enterprise and this documentation. To find support, use the following resources:
Customers with an annual or support contract can contact InfluxData Support. Customers using a trial license can email trial@influxdata.com for assistance.