Skip to main content
View as Markdown

Overview - Content Management

Upload & Ingestion Overview​

This guide covers the complete lifecycle of getting content into Kaltura: creating upload tokens, uploading files (including chunked/resumable transfers), creating media, document, and data entries, importing from URLs, copying entries, replacing content, and managing flavor assets and attachments.

Base URL: $KALTURA_SERVICE_URL (default: https://www.kaltura.com/api_v3)
Auth: All requests require a valid KS (see Session Guide)
Format: Form-encoded POST, format=1 for JSON responses

When to Use​

ScenarioWhat to Use
Media onboarding pipeline — Ingest video, audio, or images from local storageuploadToken + media.add + media.addContent with KalturaUploadedFileTokenResource
CMS integration — Programmatic upload with progress tracking and resumeChunked uploadToken.upload with resume=true
Bulk migration — Move thousands of files from an existing librarymedia.add + media.addContent with KalturaUrlResource, or CSV bulkUploadAdd
Content replacement — Swap a video's source file without changing its entry IDmedia.updateContent
Entry cloning — Duplicate an entry with all metadata and assetsbaseEntry.clone (full deep copy with granular options)
Clipping / trimming — Extract a time segment from an existing videomedia.addContent with KalturaOperationResource + KalturaClipAttributes
Concatenation — Combine segments from multiple videos into onemedia.addContent with KalturaOperationResources (plural)
Multi-bitrate ingest — Upload pre-transcoded renditions without re-encodingmedia.addContent with KalturaAssetsParamsResourceContainers
SFTP import — Pull files from secure servers with SSH key authmedia.addContent with KalturaSshUrlResource
Remote storage — Register content on external CDN/S3 without copyingmedia.addContent with KalturaRemoteStorageResource
Document management — Upload PDFs, slides, or Word docs for web viewingdocuments.addContent with KalturaDocumentEntry
Arbitrary file storage — Store JSON, CSV, ZIP, or config filesdata.add with KalturaDataEntry (type=6)
Supplementary files — Attach transcripts, slide decks, or data files to a videoattachmentAsset.add + attachmentAsset.setContent
Automated post-upload processing — Trigger captions, translation, or AI enrichmentUpload, then use Agents Manager or REACH rules

Prerequisites​

  • Kaltura Session (KS): ADMIN KS (type=2) for upload and entry management. See Session Guide.
  • Partner ID and API credentials: Available from KMC > Settings > Integration Settings.
  • Service URL: Set $KALTURA_SERVICE_URL to your regional endpoint (default: https://www.kaltura.com/api_v3).
  • Permissions: CONTENT_MANAGE_BASE permission for creating entries and uploading content.