---
title: "Create a dataset by uploading data"
method: POST
path: "/v1/datasets"
tags: ["datasets"]
---

# Create a dataset by uploading data

`POST /v1/datasets`

Create a dataset

## Request body

- union
  - CreateDatasetRequestUpload
    - `name` string, required — ID of the dataset.
    - `schema` ColumnSchemaInput[], required — Dataset schema definition.
      - `name` string, required
      - `type` union, required
        - SchemaPrimitive
          - `name` 'string' | 'integer' | 'boolean' | 'float' | 'double' | 'json' | 'null', required
        - SchemaOptionInput
          - `name` 'option', required
          - `item` union, required
            - SchemaPrimitive
              - …
            - SchemaOptionInput — recursive
    - `folder` string, required — Folder path where the dataset is stored.
    - `rows` object[], required — List of rows to be included in the dataset.
    - `ai_project_id` string, nullable — AI Studio project ID to associate with the dataset.
  - CreateDatasetRequestS3
    - `name` string, required — ID of the dataset.
    - `folder` string, required — Folder path where the dataset is stored.
    - `s3_service_url` string, required — S3 URL to import dataset from.
    - `s3_region` string, required — Region of the S3 bucket.
    - `s3_uri` string, required — S3 URI to import dataset from.
    - `s3_key_id` string, required — Secret key id for the S3 bucket.
    - `s3_secret_key` string, required — Secret key for the S3 bucket.
    - `ai_project_id` string, nullable — AI Studio project ID to associate with the dataset.

## Response `200`

Successful Response

- CreateDatasetResponse
  - `id` string, required — The object identifier, which can be referenced in the API endpoints.
  - `name` string, required — ID of the dataset.
  - `status` 'READY' | 'PENDING' | 'FAILED' | 'TEMPORARY' | 'DRAFT', required
  - `schema` ColumnSchemaOutput[], required — Dataset schema definition.
    - `name` string, required
    - `type` union, required
      - SchemaPrimitive
        - `name` 'string' | 'integer' | 'boolean' | 'float' | 'double' | 'json' | 'null', required
      - SchemaOptionOutput
        - `name` 'option', required
        - `item` union, required
          - SchemaPrimitive
            - `name` 'string' | 'integer' | 'boolean' | 'float' | 'double' | 'json' | 'null', required
          - SchemaOptionOutput — recursive
  - `metadata` object, required — Additional metadata associated with the dataset.
  - `current_version_origin` DatasetOriginResponse
    - `type` 'upload' | 's3' | 'demo', required
  - `folder` string, required — Folder path where the dataset is stored.
  - `current_version` string, required — Current version of the dataset.
  - `created_at` integer, required — Unix timestamp when the dataset was created.
  - `error` string, nullable, required — Error message if the dataset is in an error state.
  - `ai_project_id` string, nullable — AI Studio project ID to associate with the dataset.

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/nebius/apis/nebius-openai-compatible-inference-api.md) · [All operations](https://skmtc.net/nebius/apis/nebius-openai-compatible-inference-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/nebius/nebius-openai-compatible-inference-api/versions/0fb323abba3c/schema)
