Bulk Operations - Content Management
Bulk Operations
Use bulk upload actions to create categories, assign members, or assign entries in batch via CSV.
Bulk Category Creation
curl -X POST "$KALTURA_SERVICE_URL/service/category/action/addFromBulkUpload" \
-d "ks=$KALTURA_KS" \
-d "format=1" \
-d "bulkUploadData[objectType]=KalturaBulkUploadCsvJobData" \
--form "fileData=@categories.csv"
CSV columns: name, parentId, referenceId, description, tags, privacy, contributionPolicy, appearInList, privacyContext
Response: A KalturaBulkUpload job object.
Bulk Membership Assignment
curl -X POST "$KALTURA_SERVICE_URL/service/categoryUser/action/addFromBulkUpload" \
-d "ks=$KALTURA_KS" \
-d "format=1" \
-d "bulkUploadData[objectType]=KalturaBulkUploadCsvJobData" \
--form "fileData=@category_members.csv"
CSV columns: categoryId, userId, permissionLevel, status
Bulk Content Assignment
curl -X POST "$KALTURA_SERVICE_URL/service/categoryEntry/action/addFromBulkUpload" \
-d "ks=$KALTURA_KS" \
-d "format=1" \
-d "bulkUploadData[objectType]=KalturaBulkUploadCsvJobData" \
--form "fileData=@category_entries.csv"
CSV columns: categoryId, entryId
Tracking Bulk Job Status
curl -X POST "$KALTURA_SERVICE_URL/service/bulk/action/get" \
-d "ks=$KALTURA_KS" \
-d "format=1" \
-d "id=$BULK_JOB_ID"
| Status Value | Name | Description |
|---|---|---|
| 0 | PENDING | Job queued |
| 1 | UPLOADING | File is being uploaded |
| 2 | UPLOADED | File uploaded, processing not started |
| 3 | PROCESSING | Job is in progress |
| 4 | PROCESSED | Job completed (check errorCount for partial failures) |
| 5 | ABORTED | Job was cancelled |