By using the [direct file upload API](🔗) you can upload your local video assets to our CDN and use it to create a new Stream.

# Step 1

Request a signed URL for file uploading.



# Step 2

Extract `data.result.id` and `data.result.uploadUrl` from the response, you will need them in the next steps.



# Step 3

Upload your video asset to the `uploadUrl` you received from the response in `Step 2`



The returned `uploadUrl` is only valid for 5 minutes. Should it expire you need to request a new one



# Step 4

Once your file has been uploaded, you can use its `id` property (that we also received as part of the result in`Step 2`) and construct the input asset URL and [create a new Stream](🔗).



Asset URLs from the direct file upload input have the following format: `https://api.bitmovin.com/v1/encoding/inputs/direct-file-upload/${inputId}`



There you go, a new Stream is created and ready to be published :tada:



The response contains the `streamId` in the `data.result.id` field, which you can use to embed and share your Stream.

If you need more information on how to share or embed your Stream, make sure to check out our product guides for the [webcomponent](🔗), [iframe embed](🔗) and [sharing options](🔗)