API

Dataset uploads

How to upload CSV data into Everyn and wait for a durable dataset.

Dataset uploads turn a CSV file into a durable Everyn dataset. The API accepts direct multipart CSV uploads up to 25 MiB, creates a DatasetUpload resource, and processes the dataset asynchronously.

Dataset upload workflow

Create an upload:

curl -sS -X POST "$EVERYN_BASE_URL/v1/dataset-uploads" \
  -H "Authorization: Bearer $EVERYN_API_KEY" \
  -H "Idempotency-Key: upload-leads-001" \
  -F "sourceType=csv" \
  -F "sourceName=leads.csv" \
  -F 'metadata={"purpose":"sample-run"}' \
  -F "file=@./leads.csv;type=text/csv"

Poll the upload:

curl -sS "$EVERYN_BASE_URL/v1/dataset-uploads/upl_..." \
  -H "Authorization: Bearer $EVERYN_API_KEY"

Key fields:

FieldMeaning
idStable upload resource ID, prefixed upl_.
statusprocessing, completed, failed, or expired.
datasetIdDurable dataset ID after completion; null before completion or on failure.
sizeBytes / bytesReceivedHonest byte counts for the direct upload.
failureResource-local failure details for failed uploads.

Direct multipart limit: 25 MiB of file bytes.

Retry only retryable failed uploads:

curl -sS -X POST "$EVERYN_BASE_URL/v1/dataset-uploads/upl_.../retry" \
  -H "Authorization: Bearer $EVERYN_API_KEY"

Use the generated Dataset Uploads API reference for route-level details.