Datasets API
API endpoints for managing datasets.
Endpoints
List Datasets
GET /api/datasets
Returns datasets accessible to the current user.
Query Parameters:
| Parameter | Type | Description |
|---|---|---|
status | string | Filter by status (draft, published, archived) |
limit | number | Max results (default: 50) |
offset | number | Pagination offset |
Response:
{
"datasets": [
{
"id": "uuid",
"name": "My Dataset",
"description": "Description",
"status": "published",
"created_at": "2024-01-01T00:00:00Z",
"owner_id": "uuid"
}
],
"total": 100
}
Get Dataset
GET /api/datasets/:id
Returns a single dataset with its versions.
Create Dataset
POST /api/datasets
Body:
{
"name": "My Dataset",
"description": "Optional description"
}
Update Dataset
PATCH /api/datasets/:id
Body:
{
"name": "Updated Name",
"status": "published"
}
Delete Dataset
DELETE /api/datasets/:id
Soft-deletes the dataset.
Version Endpoints
Upload Version
POST /api/datasets/:id/versions
Upload a new version of the dataset.
Body: multipart/form-data
file: The data file (CSV, Excel, JSON)
Get Version
GET /api/datasets/:id/versions/:versionId
Acquire Data
POST /api/datasets/:id/versions/:versionId/acquire
Fetch data from external source (URL, Google Sheets).
Body:
{
"source_type": "url",
"source_url": "https://example.com/data.csv"
}
Star/Bookmark
Star Dataset
POST /api/datasets/:id/star
Unstar Dataset
DELETE /api/datasets/:id/star
Bookmark Dataset
POST /api/datasets/:id/bookmark
Body:
{
"list_id": "uuid" // optional, for adding to specific list
}