## Create downloads `stream.downloads.create(stridentifier, DownloadCreateParams**kwargs) -> DownloadCreateResponse` **post** `/accounts/{account_id}/stream/{identifier}/downloads` Creates a download for a video when a video is ready to view. Use `/downloads/{download_type}` instead for type-specific downloads. Available types are `default` and `audio`. ### Parameters - `account_id: str` Identifier. - `identifier: str` A Cloudflare-generated unique identifier for a media item. - `body: object` ### Returns - `class DownloadCreateResponse: …` - `percent_complete: Optional[float]` Indicates the progress as a percentage between 0 and 100. - `status: Optional[Literal["ready", "inprogress", "error"]]` The status of a generated download. - `"ready"` - `"inprogress"` - `"error"` - `url: Optional[str]` The URL to access the generated download. ### Example ```python import os from cloudflare import Cloudflare client = Cloudflare( api_token=os.environ.get("CLOUDFLARE_API_TOKEN"), # This is the default and can be omitted ) download = client.stream.downloads.create( identifier="ea95132c15732412d22c1476fa83f27a", account_id="023e105f4ecef8ad9ca31a8372d0c353", body={}, ) print(download.percent_complete) ``` #### Response ```json { "errors": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "messages": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "success": true, "result": { "percentComplete": 0, "status": "ready", "url": "https://customer-m033z5x00ks6nunl.cloudflarestream.com/ea95132c15732412d22c1476fa83f27a/downloads/default.mp4" } } ```