---
title: Complete Delivery Workflow
url: https://docs.kaltura.com/docs/rich-media-cms-apis/content-management/content-delivery-complete-delivery-workflow
---

## Complete Delivery Workflow



```
1. Upload & transcode content (see Upload & Ingestion Guide)
2. Entry reaches READY status (status=2)

For adaptive streaming:
3a. Construct playManifest URL:
    /p/\{PID\}/sp/\{PID\}00/playManifest/entryId/\{EID\}/format/applehttp/protocol/https
4a. Player fetches HLS manifest, selects bitrate, plays

For direct file access:
3b. Construct raw URL:
    /p/\{PID\}/raw/entry_id/\{EID\}/direct_serve/1/forceproxy/true
4b. Browser serves file inline or prompts download

For specific flavor download:
3c. List flavors: flavorAsset.list with entryIdEqual
4c. Get URL: flavorAsset.getUrl with flavor asset ID
5c. Redirect user to the returned URL

For access-controlled content:
- Append /ks/\{KS\} to any delivery URL
- Access control rules are evaluated automatically
```
