Create a Dataset

View as MarkdownOpen in Claude
Create a new AI Task Builder dataset. Pass an optional `schema` to create a **V4 dataset** with a structured schema. V4 datasets accept JSONL and CSV uploads, track each upload as an import job, and allow `dataset_field` items in `batch_items` to reference named schema fields. Without a `schema`, a V3 dataset is created (CSV/ZIP only, legacy flow). V4 dataset creation requires the feature to be enabled for the workspace.

Authentication

AuthorizationToken
The Prolific API uses API token to authenticate requests. You can create an API token directly from your settings. Your API token does not have an expiry date and carries full permission, so be sure to keep them secure. If your token is leaked, delete it and create a new one directly in the app. In your requests add `Authorization` header with the value `Token <your token>`.

Request

This endpoint expects an object.
namestringRequired
The name or identifier of the AI Task Builder dataset.
workspace_idstringRequired
The ID of the Prolific workspace the dataset will be created in.
schemaobjectOptional
Optional schema definition. When provided, a V4 dataset is created. Omit for a V3 dataset.

Response

Created
idstringformat: "uuid"
namestring
created_atdatetime
created_bystring
workspace_idstring
total_datapoint_countinteger>=0
schema_versionenum

Internal dataset version. 3 = legacy CSV/ZIP; 4 = structured schema with JSONL/CSV import tracking.

statusenum

Processing status. V3 datasets only. V4 datasets track status per import job via imports.

filenamestring or null

Filename of the uploaded data file. V3 datasets only.

has_predetermined_grouping_idboolean or null

Whether the dataset contains a META_TASK_GROUP_ID column. V3 datasets only.

schemaobject or null

The researcher-defined field schema for this dataset. V4 datasets only. null if no schema has been set yet.

importslist of objects or null

Import jobs for this dataset, most recent first. V4 datasets only. null for V3 datasets.

Errors

4XX
Client Request Error