# Update: Recording download url 403 error

**URL:** <https://devforum.zoom.us/t/update-recording-download-url-403-error/5608>\
**Category:** API and Webhooks\
**Created:** [August 20, 2019, 5:58pm UTC](https://devforum.zoom.us/t/update-recording-download-url-403-error/5608 "2019-08-20T17:58:23Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![michael\_p.zoom](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/michael_p.zoom/32/18105_2.png) [@michael\_p.zoom](https://devforum.zoom.us/u/michael_p.zoom)\
**Post date:** [August 20, 2019, 5:58pm UTC](https://devforum.zoom.us/t/update-recording-download-url-403-error/5608/1 "2019-08-20T17:58:24Z")

</div>

Hello Everyone,

We apologize for any inconvenience that may have happen with the ability to use the cloud recording download url. Last weekend our backend team deployed a new security feature to fix a potential vulnerability with our recordings.

However, since this security fix interrupted our valued customers downloading recordings with the download\_url, we are in the process of removing the change so that you can continue using the download\_url with the access token.

Our Engineering team is currently investigating to make sure we do not cause any other service interruptions and as soon we are able to make the change. Please follow this thread and we will notify you asap.

Update: You are still able to download all of your recordings through the browser.

Thanks  
Michael

---

<div class="post-metadata">

**Author:** ![debra](https://avatars.discourse-cdn.com/v4/letter/d/ecd19e/32.png) [@debra](https://devforum.zoom.us/u/debra)\
**Post date:** [August 20, 2019, 8:47pm UTC](https://devforum.zoom.us/t/update-recording-download-url-403-error/5608/2 "2019-08-20T20:47:17Z")

</div>

Michael,

We just saw the following behavior with our “VoiceVibes” integration – the download\_url which was returned by the Cloud Recordings API for one specific customer results in the following message when it is loaded in a browser or via a download script: “Download has been disabled by the administrator (200)”

Can you confirm that this is caused by the issue you mentioned?

We are seeing all downloads broken for one customer while another customer is fine. Do you anticipate that once this is resolved all customers will work and that error will no longer be shown for download\_url’s returned by your API under any circumstances?

Another post made reference to a user setting called “Require password to access shared cloud recordings” and I just wanted to make sure that that setting isn’t what is breaking this and that once you fix things on your end, any customer who installs our integration will be able to provide non-blocked download\_url’s.

Thanks!

---

<div class="post-metadata">

**Author:** ![tommy](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/tommy/32/72769_2.png) [@tommy](https://devforum.zoom.us/u/tommy)\
**Post date:** [August 20, 2019, 9:29pm UTC](https://devforum.zoom.us/t/update-recording-download-url-403-error/5608/3 "2019-08-20T21:29:28Z")

</div>

Hey @debra,

Your issues is different then the Recording download url 403 error.

To fix your issue, the Admin of the account needs to go to the account settings [https://zoom.us/account/setting?tab=recording](https://zoom.us/account/setting?tab=recording)

And turn off the “Only the host can download cloud recordings” setting.

 ![50%20PM](https://us1.discourse-cdn.com/flex016/uploads/zoomdeveloper/original/2X/0/03ad226500daa71b25826e027a6aecfc85f586df.png)

Then you will no longer get this error:

 ![06%20PM](https://us1.discourse-cdn.com/flex016/uploads/zoomdeveloper/original/2X/4/4e8193dd0c042686e9a1f6cd771cf684a47531cd.png)

Thanks,  
Tommy

---

<div class="post-metadata">

**Author:** ![debra](https://avatars.discourse-cdn.com/v4/letter/d/ecd19e/32.png) [@debra](https://devforum.zoom.us/u/debra)\
**Post date:** [August 20, 2019, 10:40pm UTC](https://devforum.zoom.us/t/update-recording-download-url-403-error/5608/4 "2019-08-20T22:40:42Z")

</div>

Tommy,

Thanks for the reply.

I’m a little disappointed to hear this. This results in a bad customer experience – customers using our integration must now be shown an error first and we then have to make an educated guess as to what caused the error and recommend they change this setting in their Zoom account.

It would be much better if we are able to know ahead of time that the download links are invalid. Is there a way to tell based on user info returned from one of the other API endpoints or some other method that the download links returned for the Cloud recordings won’t actually work when our system attempts to download them? Can you update your API to not return them in the first place (which makes sense since they won’t ever work)?

Since the entire point of our integration hinges on being able to receive working download links, it makes the most sense to handle this during the “setup”/“authorization” phase of installing our integration. We could then show a warning to users who have their download links set to private that they need to change this setting before they can proceed with using the integration.

As it stands now, it looks like we have to assume everything is okay, wait until a customer wants to us to download one of their recordings then try the download link to see if it works. If it doesn’t, we need to show an error and request that they change the setting, which may or may not be the cause of the error (since our backend isn’t currently configured to parse out and look for the “disabled by administrator” text we can’t be sure if the problem is in their settings or a Zoom problem such as the original thread above).

Again… is there any way to tell ahead of time that the account’s download links are set to private and won’t actually work?

Either way, thanks for the response so far.

---

<div class="post-metadata">

**Author:** ![eric](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/eric/32/1490_2.png) [@eric](https://devforum.zoom.us/u/eric)\
**Post date:** [August 20, 2019, 11:03pm UTC](https://devforum.zoom.us/t/update-recording-download-url-403-error/5608/5 "2019-08-20T23:03:47Z")

</div>

This brings up a good question about the API, does the endpoint /users/{userId}/recordings bring back a list of meetings that you have access to the recordings of or recordings of meetings you participated in that have a recording which you may or may not have access to? I assume If this endpoint returns a download\_url for a recording, the user has access to download it with their access token.

---

<div class="post-metadata">

**Author:** ![debra](https://avatars.discourse-cdn.com/v4/letter/d/ecd19e/32.png) [@debra](https://devforum.zoom.us/u/debra)\
**Post date:** [August 20, 2019, 11:54pm UTC](https://devforum.zoom.us/t/update-recording-download-url-403-error/5608/6 "2019-08-20T23:54:14Z")

</div>

Agreed. Also, it seems rather unfortunate to me that the Oauth permission doesn’t override the checkbox in the user settings.

---

<div class="post-metadata">

**Author:** ![shaharsol](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/shaharsol/32/1601_2.png) [@shaharsol](https://devforum.zoom.us/u/shaharsol)\
**Post date:** [August 21, 2019, 6:52am UTC](https://devforum.zoom.us/t/update-recording-download-url-403-error/5608/7 "2019-08-21T06:52:23Z")

</div>

> [@michael\_p.zoom](#):
>
> you can continue using the download\_url with the access token.

In my code now, I don’t use any access token, simply access the `download_url`, and it used to work perfectly until two days ago. Can you confirm that your rollback will not break my code? or should I integrate some kind of `access_token` I currently know nothing about?

Also, do we have an ETA on this issue?

---

<div class="post-metadata">

**Author:** ![selva.iyyamperumal](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/selva.iyyamperumal/32/50293_2.png) [@selva.iyyamperumal](https://devforum.zoom.us/u/selva.iyyamperumal)\
**Post date:** [August 21, 2019, 7:17am UTC](https://devforum.zoom.us/t/update-recording-download-url-403-error/5608/8 "2019-08-21T07:17:05Z")

</div>

Please let us know when this issue will be fixed. This issue forced us to shutdown our services till fixed. We are in the process of finding the alternative options to pull the old files from the affected date till fix date (from Zoom cloud to customers). Is it possible for Zoom to trigger the recording (completed) notification for the old files? Thanks.

---

<div class="post-metadata">

**Author:** ![aakar](https://avatars.discourse-cdn.com/v4/letter/a/b487fb/32.png) [@aakar](https://devforum.zoom.us/u/aakar)\
**Post date:** [August 21, 2019, 7:24am UTC](https://devforum.zoom.us/t/update-recording-download-url-403-error/5608/9 "2019-08-21T07:24:14Z")

</div>

I also have the same question as we are not using access token as of now , simply using download\_url. Do we have to change the code accordingly.

---

<div class="post-metadata">

**Author:** ![michael\_p.zoom](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/michael_p.zoom/32/18105_2.png) [@michael\_p.zoom](https://devforum.zoom.us/u/michael_p.zoom)\
**Post date:** [August 21, 2019, 1:16pm UTC](https://devforum.zoom.us/t/update-recording-download-url-403-error/5608/10 "2019-08-21T13:16:25Z")

</div>

Hi @Everyone,

Good news! Our Engineers have worked tirelessly overnight to resolve the download url issue which you are experiencing. Now that the fix is in place, please try to use your access token with the download url to confirm that it is working.

Let us know if you are still experiencing this or any other issues.

Thanks

---

<div class="post-metadata">

**Author:** ![shaharsol](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/shaharsol/32/1601_2.png) [@shaharsol](https://devforum.zoom.us/u/shaharsol)\
**Post date:** [August 21, 2019, 2:07pm UTC](https://devforum.zoom.us/t/update-recording-download-url-403-error/5608/11 "2019-08-21T14:07:52Z")

</div>

Thanks, all is working as usual again.

---

<div class="post-metadata">

**Author:** ![selva.iyyamperumal](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/selva.iyyamperumal/32/50293_2.png) [@selva.iyyamperumal](https://devforum.zoom.us/u/selva.iyyamperumal)\
**Post date:** [August 21, 2019, 2:45pm UTC](https://devforum.zoom.us/t/update-recording-download-url-403-error/5608/12 "2019-08-21T14:45:46Z")

</div>

Is it possible to trigger the recording completed notification by Zoom for the recording done during the issue period? Otherwise there is no way we can upload the recording to our customers. Thanks.

---

<div class="post-metadata">

**Author:** ![tommy](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/tommy/32/72769_2.png) [@tommy](https://devforum.zoom.us/u/tommy)\
**Post date:** [August 21, 2019, 4:00pm UTC](https://devforum.zoom.us/t/update-recording-download-url-403-error/5608/13 "2019-08-21T16:00:17Z")

</div>

Hey @selva.iyyamperumal,

You can get all recordings by date using the [List all Recordings endpoint](https://marketplace.zoom.us/docs/api-reference/zoom-api/cloud-recording/recordingslist) and then upload them respectively.

Thanks,  
Tommy

---

<div class="post-metadata">

**Author:** ![ryan](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/ryan/32/37137_2.png) [@ryan](https://devforum.zoom.us/u/ryan)\
**Post date:** [August 21, 2019, 4:24pm UTC](https://devforum.zoom.us/t/update-recording-download-url-403-error/5608/14 "2019-08-21T16:24:22Z")

</div>

See the bug/missing feature discussed here: [BUG downloading cloud recordings with access token set results in an invalid response](https://devforum.zoom.us/t/bug-downloading-cloud-recordings-with-access-token-set-results-in-an-invalid-response/4292/27)

---

<div class="post-metadata">

**Author:** ![tommy](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/tommy/32/72769_2.png) [@tommy](https://devforum.zoom.us/u/tommy)\
**Post date:** [August 21, 2019, 4:28pm UTC](https://devforum.zoom.us/t/update-recording-download-url-403-error/5608/15 "2019-08-21T16:28:24Z")

</div>

Thanks for your help Ryan.

---

<div class="post-metadata">

**Author:** ![selva.iyyamperumal](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/selva.iyyamperumal/32/50293_2.png) [@selva.iyyamperumal](https://devforum.zoom.us/u/selva.iyyamperumal)\
**Post date:** [August 21, 2019, 4:33pm UTC](https://devforum.zoom.us/t/update-recording-download-url-403-error/5608/16 "2019-08-21T16:33:17Z")

</div>

Hi Tommy,  
Yes, we have been thinking about this option. We have to develop code to do. All our connectors looking for the recording completed notification and upload the files once received. Is it possible to trigger the recording completed notification by Zoom for the recording done during the issue period?

Thanks.

---

<div class="post-metadata">

**Author:** ![selva.iyyamperumal](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/selva.iyyamperumal/32/50293_2.png) [@selva.iyyamperumal](https://devforum.zoom.us/u/selva.iyyamperumal)\
**Post date:** [August 21, 2019, 4:34pm UTC](https://devforum.zoom.us/t/update-recording-download-url-403-error/5608/17 "2019-08-21T16:34:11Z")

</div>

@michael_p.zoom  
Thanks. We could download the recordings properly now.

---

<div class="post-metadata">

**Author:** ![tommy](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/tommy/32/72769_2.png) [@tommy](https://devforum.zoom.us/u/tommy)\
**Post date:** [August 21, 2019, 5:01pm UTC](https://devforum.zoom.us/t/update-recording-download-url-403-error/5608/18 "2019-08-21T17:01:17Z")

</div>

Hey @selva.iyyamperumal,

> [@selva.iyyamperumal](#):
>
> Is it possible to trigger the recording completed notification by Zoom for the recording done during the issue period?

Unfortunately this is not possible as our webhook notifications are triggered by callbacks after the event occurs.

To accomplish what you want, you can [get all the recordings](https://marketplace.zoom.us/docs/api-reference/zoom-api/cloud-recording/recordingslist) and then reuse your existing logic/code to upload them to your cloud storage service / customers.

-Tommy

---

<div class="post-metadata">

**Author:** ![shaharsol](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/shaharsol/32/1601_2.png) [@shaharsol](https://devforum.zoom.us/u/shaharsol)\
**Post date:** [March 23, 2020, 8:42am UTC](https://devforum.zoom.us/t/update-recording-download-url-403-error/5608/19 "2020-03-23T08:42:54Z")

</div>

Is this happening all over again??? Apparently getting 403 when downloading recordings in the last 18 hours or so!

---

<div class="post-metadata">

**Author:** ![te\_zoom.admin](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/te_zoom.admin/32/1600_2.png) [@te\_zoom.admin](https://devforum.zoom.us/u/te_zoom.admin)\
**Post date:** [March 23, 2020, 9:38am UTC](https://devforum.zoom.us/t/update-recording-download-url-403-error/5608/20 "2020-03-23T09:38:55Z")

</div>

@tommy Even I’m getting the same issue. 403 forbidden while downloading recordings. Can you please check it ?

[Next page](https://devforum.zoom.us/t/update-recording-download-url-403-error/5608.md?page=2)
