Data Sources API
Create, list and delete data source connections.
Data sources are always scoped to the workspace in the X-Tenant-ID header.
List sources
GET
/api/datasource/datasources/Auth requiredReturns a paginated list of sources in the active workspace.
Example
curl https://api.introzen.com/api/datasource/datasources/ \
-H "X-Tenant-ID: 42" \
-b cookies.txtCreate a source
POST
/api/datasource/datasources/Auth requiredSend multipart/form-data when uploading a file, or JSON when registering an API endpoint.
File upload
curl -X POST https://api.introzen.com/api/datasource/datasources/ \
-H "X-Tenant-ID: 42" \
-b cookies.txt \
-F "source_name=monthly_sales" \
-F "source_type=csv" \
-F "status=active" \
-F "file=@sales.csv"Extract a sample
POST
/api/datasource/datasources/extract-sample/Auth requiredParses an uploaded file and returns the detected columns plus sample rows. Nothing is persisted.
Delete a source
DELETE
/api/datasource/datasources/{id}/Auth requiredRemoves the source and its stored file. Blocked with 400 while pipelines still reference it.
Field reference
| Field | Type | Description |
|---|---|---|
| source_name | string | Display name, unique within the workspace. |
| source_type | enum | csv, json or api. |
| status | enum | active, inactive or error. |
| file | file | Uploaded artifact for csv and json sources. |
| file_size | integer | Size of the stored artifact in bytes. Read-only. |
| endpoint_url | url | Required for api sources. |
| auth_token | string | Optional bearer token for api sources. |
| columns | string[] | Column names discovered from the stored file. Read-only; empty for remote sources. Drives the pipeline builder's column pickers. |
| created_at | datetime | Read-only creation timestamp. |
Last reviewed October 2026.