docs-v2/content/influxdb/cloud/admin/buckets/create-bucket.md

6.8 KiB

title seotitle description menu weight aliases alt_links
Create a bucket Create a bucket in InfluxDB Cloud Create buckets to store time series data in InfluxDB Cloud using the InfluxDB UI, influx CLI, or InfluxDB HTTP API.
influxdb_cloud
name parent
Create a bucket Manage buckets
201
/influxdb/cloud/organizations/buckets/create-bucket/
cloud-serverless cloud-dedicated clustered
/influxdb3/cloud-serverless/admin/buckets/create-bucket/ /influxdb3/cloud-dedicated/admin/databases/create/ /influxdb3/clustered/admin/databases/create/

Use the InfluxDB user interface (UI), the influx command line interface (CLI), or the InfluxDB HTTP API to create a bucket.

By default, buckets have an implicit schema-type and a schema that conforms to your data. To require measurements to have specific columns and data types and prevent non-conforming write requests, create a bucket with the explicit schema-type.

{{< tabs-wrapper >}} {{% tabs %}} InfluxDB UI influx CLI InfluxDB API {{% /tabs %}}

{{% tab-content %}}

There are two places you can create a bucket in the UI.

Create a bucket from the Load Data menu

  1. In the navigation menu on the left, select Load Data > Buckets.

{{< nav-icon "data" >}}

  1. Click {{< icon "plus" >}} Create Bucket in the upper right.
  2. Enter a Name for the bucket (see Bucket naming restrictions).
  3. Select when to Delete Data:
    • Never to retain data forever.
    • Older than to choose a specific retention period.
  4. Click Create to create the bucket.

Create a bucket in the Data Explorer

  1. In the navigation menu on the left, select *Explore (Data Explorer).

{{< nav-icon "data-explorer" >}}

  1. In the From panel in the Flux Builder, select + Create Bucket.
  2. Enter a Name for the bucket (see Bucket naming restrictions).
  3. Select when to Delete Data:
    • Never to retain data forever.
    • Older than to choose a specific retention period.
  4. Click Create to create the bucket.

{{% /tab-content %}}

{{% tab-content %}}

Create a bucket using the influx CLI

To create a bucket with the influx CLI, use the influx bucket create command and specify values for the following flags:

  • -o, --org: Organization name
  • -n, --name: Bucket name (see Bucket naming restrictions)
  • -r, --retention: Retention period duration

The following example creates a bucket with a retention period of 72 hours:

influx bucket create \
  --name my-bucket \
  --org {INFLUX_ORG} \
  --retention 72h

{{% /tab-content %}}

{{% tab-content %}}

To create a bucket with the InfluxDB HTTP API, send a request to the following endpoint:

{{< api-endpoint method="post" endpoint="https://cloud2.influxdata.com/api/v2/buckets" api-ref="/influxdb/cloud/api/#operation/PostBuckets" >}}

Include the following in your request:

  • Headers:
    • Authorization: Token scheme with your InfluxDB API token
    • Content-type: application/json
  • Request body: JSON object with the following fields:
    {{< req type="key" >}}
    • {{< req "*" >}} name: Bucket name
    • orgID: InfluxDB organization ID
    • description: Bucket description
    • {{< req "*" >}} retentionRules: JSON array containing a single object with the following fields:
      • type: expire
      • everySecond: Number of seconds to retain data (0 means forever)
      • shardGroupDuration: Number of seconds to retain shard groups (0 means forever)

The following example creates a bucket with a retention period of 86,400 seconds, or 24 hours:

{{% get-shared-text "api/v2.0/buckets/oss/create.sh" %}}

For information about InfluxDB API options and response codes, see InfluxDB API Buckets reference documentation.

{{% /tab-content %}}

{{< /tabs-wrapper >}}

Create a bucket that enforces explicit schemas

A bucket with the explicit schema-type enforces measurement schemas that you define for the bucket and rejects writes that don't conform to any of the schemas.

Use the influx CLI or InfluxDB HTTP API to create a bucket with the explicit schema-type.

{{< tabs-wrapper >}} {{% tabs %}} influx CLI InfluxDB API {{% /tabs %}}

{{% tab-content %}}

Use the influx bucket create command and specify the --schema-type=explicit flag:

{{< get-shared-text "bucket-schema/bucket-schema-type.sh" >}}

{{% /tab-content %}} {{% tab-content %}}

Use the HTTP API /api/v2/buckets endpoint and set the schemaType property value to explicit in the request body--for example:

{{< api-endpoint method="post" endpoint="https://cloud2.influxdata.com/api/v2/buckets" api-ref="/influxdb/cloud/api/#operation/PostBuckets" >}}

{
  "orgID": "{INFLUX_ORG_ID}",
  "name": "my-explicit-bucket",
  "description": "My Explicit Bucket",
  "rp": "string",
  "retentionRules": [
    {
      "type": "expire",
      "everySeconds": 86400,
      "shardGroupDurationSeconds": 0
    }
  ],
  "schemaType": "explicit"
}

{{% /tab-content %}} {{< /tabs-wrapper >}}

Next, see how to create an explicit bucket schema for a measurement.

Bucket naming restrictions

Bucket names must adhere to the following naming restrictions:

  • Must contain two or more characters
  • Cannot start with an underscore (_)
  • Cannot contain a double quote (")