Uploads a dataset.

Dataset file-naming is strictly limited to a fixed set of extensions based on the Dataset Type. You can obtain the supported types (and their extensions) via the /type endpoint. Filenames that do not comply with the supported filename extensions will be rejected.

Datasets can be uploaded in an uncompressed form, or uploaded pre-compressed using the .gz extension.

The Dataset is assigned a unique identity if it has no Parent. If a Parent dataset is named during the upload the uploaded file inherits the Parent's identity and is issued with a new unique version number within the Dataset.

Datasets undergo some processing in an asynchronous Task after control returns to you. The unique identity of the assigned task (the task id) is presented to you in this endpoint's response. Before you can use an uploaded dataset, and before the dataset can be added to any pre-assigned projects, you must wait until the task is complete by making regular calls to the /task/{task-id} endpoint. A Dataset upload is complete when the corresponding task.done is true along with a task.exit_code of 0. If the Dataset upload fails task.done will be true but the task.exit_code will be non-zero.