Skip to main content
POST
/
catchAll
/
datasets
/
upload
Create dataset from CSV
curl --request POST \
  --url https://catchall.newscatcherapi.com/catchAll/datasets/upload \
  --header 'Content-Type: multipart/form-data' \
  --header 'x-api-key: <api-key>' \
  --form file='@example-file' \
  --form 'name=My Portfolio' \
  --form 'description=Companies from Q1 2026 watchlist'
{
  "dataset_id": "ccabb755-afc2-4047-b84c-78d1f23d49b2",
  "dataset_name": "My Portfolio",
  "entities_created": 3,
  "validation_report": {
    "total_rows": 4,
    "valid_rows": 3,
    "skipped_count": 1,
    "skipped_rows": [
      {
        "row": 3,
        "reason": "missing required field: name"
      }
    ]
  }
}

Authorizations

x-api-key
string
header
required

API key for authentication.

Body

multipart/form-data
file
file
required

The CSV file to upload.

name
string
required

Name for the new dataset.

Example:

"My Portfolio"

description
string

Optional description for the dataset.

Example:

"Companies from Q1 2026 watchlist"

Response

Dataset created from CSV successfully.

dataset_id
string<uuid>
required

Unique identifier of the created dataset.

Example:

"ccabb755-afc2-4047-b84c-78d1f23d49b2"

dataset_name
string
required

Name of the created dataset.

Example:

"My Portfolio"

entities_created
integer
required

Number of entities successfully created from the CSV.

Example:

3

validation_report
object
required

Summary of CSV processing results.