I have a use case whereby after a user performs a specific action, they are allowed to download a private video once and only once (for each provisioned signed URL / token).
Currently, the docs support video downloads similar to how signed URLs / tokens work, i.e. that the URL is valid until the specified expiry date.
The benefit of the existing URL expiry method is that in the event that the download fails or is cancelled accidentally, it allows the user to download again. However, that’s a potential issue because full downloads are billed in this manner:
MP4 downloads are billed in the same way as streaming of the video. You will be billed for the duration of the video each time the MP4 for the video is downloaded. For example, if you have a 10 minute video that is downloaded 100 times during the month, the downloads will count as 1000 minutes of minutes served. You will not incur any additional cost for storage when you enable MP4s.
This opens up the possibility of abuse and racking up of excessive charges, hence the requirement to restrict the number of downloads for each URL/token: