---
title: Setup
description: Configure a new InfluxDB OSS v2 instance, including creating the initial user, organization, bucket, and API token.
url: https://docs.influxdata.com/influxdb/v2/api/setup/
estimated_tokens: 658
product: InfluxDB OSS v2
version: v2
publisher: InfluxData
canonical: https://docs.influxdata.com/influxdb/v2/api/setup/
---

[Download InfluxDB API Spec](/openapi/influxdb-oss-v2-api.yml)

Configure a new InfluxDB OSS v2 instance, including creating the initial user, organization, bucket, and API token.

GET`/api/v2/setup`

### Check if database has default user, org, bucket

Returns `true` if no default user, organization, or bucket has been created.

#### Parameters

##### Header parameters

`Zap-Trace-Span`string

OpenTracing span context

Example request[Ask AI about this](#)

```sh
curl --request GET \
  "http://localhost:8086/api/v2/setup" \
  --header "Authorization: Bearer INFLUX_TOKEN"
```

#### Responses

200allowed true or false

`allowed`boolean

If `true`, the InfluxDB instance hasn’t had initial setup;`false` otherwise.

POST`/api/v2/setup`

### Set up initial user, org and bucket

Post an onboarding request to set up initial user, org and bucket.

#### Parameters

##### Header parameters

`Zap-Trace-Span`string

OpenTracing span context

#### Request bodyrequired

Source to create

Content-Type:`application/json`

`bucket`requiredstring

`org`requiredstring

`password`string

`retentionPeriodHrs`integer

Retention period *in nanoseconds* for the new bucket. This key’s name has been misleading since OSS 2.0 GA, please transition to use `retentionPeriodSeconds`

`retentionPeriodSeconds`integer \<int64\>

`token`string

Authentication token to set on the initial user. If not specified, the server will generate a token.

`username`requiredstring

Example request[Ask AI about this](#)

```sh
curl --request POST \
  "http://localhost:8086/api/v2/setup" \
  --header "Authorization: Bearer INFLUX_TOKEN" \
  --header "Content-Type: application/json" \
  --data-raw '{
  "bucket": "BUCKET",
  "org": "ORG",
  "password": "PASSWORD",
  "retentionPeriodHrs": 0,
  "retentionPeriodSeconds": 0,
  "token": "TOKEN",
  "username": "USERNAME"
}'
```

#### Responses

201Created default user, bucket, org

`auth`string

`bucket`string

`org`string

`user`string

defaultNon 2XX error response from server.

`code`requiredstring

code is the machine-readable error code.

Allowed:`internal error`, `not implemented`, `not found`, `conflict`, `invalid`, `unprocessable entity`, `empty value`, `unavailable`, `forbidden`, `too many requests`, `unauthorized`, `method not allowed`, `request too large`, `unsupported media type`

`err`string

Stack of errors that occurred during processing of the request. Useful for debugging.

`message`string

Human-readable message.

`op`string

Describes the logical code operation when the error occurred. Useful for debugging.

#### Related

* [Set up InfluxDB](/influxdb/v2/get-started/)
