# API /users/{userId}/recordings ... completed? in progress?

**URL:** <https://devforum.zoom.us/t/api-users-userid-recordings-completed-in-progress/9179>\
**Category:** API and Webhooks\
**Created:** [March 21, 2020, 8:10pm UTC](https://devforum.zoom.us/t/api-users-userid-recordings-completed-in-progress/9179 "2020-03-21T20:10:57Z")\
**Posts on this page:** 19\
**Page:** 1

<div class="post-metadata">

**Author:** ![kchan](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/kchan/32/3397_2.png) [@kchan](https://devforum.zoom.us/u/kchan)\
**Post date:** [March 21, 2020, 8:10pm UTC](https://devforum.zoom.us/t/api-users-userid-recordings-completed-in-progress/9179/1 "2020-03-21T20:10:57Z")

</div>

Folks,  
For the cloud recordings api call /users/{userId}/recordings … would that only include completed recordings or would meetings in progress also appear. I know “recording\_files” has a status of completed but what would be the efficient workflow to be sure you’re downloading a recording that’s complete vs in progress?

Thanks,  
kenwrick

---

<div class="post-metadata">

**Author:** ![ojus.zoom](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/ojus.zoom/32/734_2.png) [@ojus.zoom](https://devforum.zoom.us/u/ojus.zoom)\
**Post date:** [March 21, 2020, 10:08pm UTC](https://devforum.zoom.us/t/api-users-userid-recordings-completed-in-progress/9179/2 "2020-03-21T22:08:25Z")

</div>

Hi @kchan,

They would include only the recordings that are complete.

Thanks,  
Ojus

---

<div class="post-metadata">

**Author:** ![kchan](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/kchan/32/3397_2.png) [@kchan](https://devforum.zoom.us/u/kchan)\
**Post date:** [March 22, 2020, 7:58pm UTC](https://devforum.zoom.us/t/api-users-userid-recordings-completed-in-progress/9179/3 "2020-03-22T19:58:14Z")

</div>

Sorry for the late reply. Thanks! This is very, very helpful.

---

<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:** [March 23, 2020, 6:49pm UTC](https://devforum.zoom.us/t/api-users-userid-recordings-completed-in-progress/9179/4 "2020-03-23T18:49:18Z")

</div>

Let us know if you have additional questions! 🙂

Thanks,  
Tommy

---

<div class="post-metadata">

**Author:** ![kchan](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/kchan/32/3397_2.png) [@kchan](https://devforum.zoom.us/u/kchan)\
**Post date:** [May 16, 2020, 7:07pm UTC](https://devforum.zoom.us/t/api-users-userid-recordings-completed-in-progress/9179/5 "2020-05-16T19:07:33Z")

</div>

Folks,  
I’m wondering if there is a change in functionality with /users/{userId}/recordings? When I look at the api documentation there is nothing there that lists state, but it seems that some calls to the api have not recording files associated with it but if I try it again days later there are listed recording files.

---

<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:** [May 20, 2020, 10:41pm UTC](https://devforum.zoom.us/t/api-users-userid-recordings-completed-in-progress/9179/6 "2020-05-20T22:41:41Z")

</div>

Hey @kchan,

Can you please email the meeting id that had this issue along with info on what recording files were delayed to [developersupport@zoom.us](mailto:developersupport@zoom.us)?

Thanks,  
Tommy

---

<div class="post-metadata">

**Author:** ![EVant](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/evant/32/3511_2.png) [@EVant](https://devforum.zoom.us/u/EVant)\
**Post date:** [May 27, 2020, 7:52am UTC](https://devforum.zoom.us/t/api-users-userid-recordings-completed-in-progress/9179/7 "2020-05-27T07:52:41Z")

</div>

I’m having the same problem with a file recorded in december.

The file is processing (or not available) but the url is provided by the api, and the status can’t be checked.

I’m writing to developersupport with all the details

Thanks

---

<div class="post-metadata">

**Author:** ![michael.zoom](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/michael.zoom/32/37213_2.png) [@michael.zoom](https://devforum.zoom.us/u/michael.zoom)\
**Post date:** [June 1, 2020, 3:20pm UTC](https://devforum.zoom.us/t/api-users-userid-recordings-completed-in-progress/9179/8 "2020-06-01T15:20:11Z")

</div>

Thanks @EVant, @ojus.zoom will look out for that 🙂

---

<div class="post-metadata">

**Author:** ![ojus.zoom](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/ojus.zoom/32/734_2.png) [@ojus.zoom](https://devforum.zoom.us/u/ojus.zoom)\
**Post date:** [June 1, 2020, 3:32pm UTC](https://devforum.zoom.us/t/api-users-userid-recordings-completed-in-progress/9179/9 "2020-06-01T15:32:49Z")

</div>

Hi @EVant ,

I have responded to you with a follow-up question for confirmation, can you please respond to it so that we could investigate this further?

Thanks,  
Ojus

---

<div class="post-metadata">

**Author:** ![kchan](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/kchan/32/3397_2.png) [@kchan](https://devforum.zoom.us/u/kchan)\
**Post date:** [June 3, 2020, 6:37pm UTC](https://devforum.zoom.us/t/api-users-userid-recordings-completed-in-progress/9179/10 "2020-06-03T18:37:03Z")

</div>

For me, what’s making it hard to trace is we’re not keeping the results of the api call. I had another that was “bad” yesterday (meeting id KjtcQ+PjQ1ytQoL3mzmu8A==), the call to recording files did have a processing status for one file. I deleted the meeting from my database and did the api call again it resulted in recording\_files with 3 media references.

---

<div class="post-metadata">

**Author:** ![kchan](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/kchan/32/3397_2.png) [@kchan](https://devforum.zoom.us/u/kchan)\
**Post date:** [June 3, 2020, 9:55pm UTC](https://devforum.zoom.us/t/api-users-userid-recordings-completed-in-progress/9179/11 "2020-06-03T21:55:24Z")

</div>

Would/should the api return a meeting with the recording\_count equal 0? {meeting uuid=e6VjgHrrSCuauA9RUAq4OA==}

---

<div class="post-metadata">

**Author:** ![kchan](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/kchan/32/3397_2.png) [@kchan](https://devforum.zoom.us/u/kchan)\
**Post date:** [June 3, 2020, 11:05pm UTC](https://devforum.zoom.us/t/api-users-userid-recordings-completed-in-progress/9179/12 "2020-06-03T23:05:35Z")

</div>

I changed my collection code to bypass results of the api with a recording count of 0. So is it possible to have an ongoing meeting over the span of two days with say 9 recording files? Do I need to keep that checking for an extending period of time to see if new recording files are added.

---

<div class="post-metadata">

**Author:** ![michael.zoom](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/michael.zoom/32/37213_2.png) [@michael.zoom](https://devforum.zoom.us/u/michael.zoom)\
**Post date:** [June 6, 2020, 12:55am UTC](https://devforum.zoom.us/t/api-users-userid-recordings-completed-in-progress/9179/13 "2020-06-06T00:55:47Z")

</div>

Hi @kchan I would recommend listening for the [Recording Completed event](https://marketplace.zoom.us/docs/api-reference/webhook-reference/recording-events/recording-completed) to get the UUID and download URL for each recording once it has been processed.

---

<div class="post-metadata">

**Author:** ![kchan](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/kchan/32/3397_2.png) [@kchan](https://devforum.zoom.us/u/kchan)\
**Post date:** [June 6, 2020, 1:46am UTC](https://devforum.zoom.us/t/api-users-userid-recordings-completed-in-progress/9179/14 "2020-06-06T01:46:50Z")

</div>

I guess I’m confused by the notion that the recording completed event is part of a marketplace app. Just about all of what we’re trying to do is get a copy of finished recordings. To me a marketplace app seems to be something you add to the zoom client to extend it’s functionality.

---

<div class="post-metadata">

**Author:** ![kchan](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/kchan/32/3397_2.png) [@kchan](https://devforum.zoom.us/u/kchan)\
**Post date:** [June 6, 2020, 5:07pm UTC](https://devforum.zoom.us/t/api-users-userid-recordings-completed-in-progress/9179/15 "2020-06-06T17:07:05Z")

</div>

Right now we have a meeting that transcription is in a “stuck” state … it’s be "transcribing … " for several days. In the case of using “Recording Completed event” would have it been triggered that meeting recording is finished after all the recording files (including transcription) are “complete”?

Since a meeting could have many start/stop points (I’ve had meetings with recording\_files with various start/stop times) … at what point does the system say “finished”.

---

<div class="post-metadata">

**Author:** ![michael.zoom](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/michael.zoom/32/37213_2.png) [@michael.zoom](https://devforum.zoom.us/u/michael.zoom)\
**Post date:** [June 10, 2020, 6:20pm UTC](https://devforum.zoom.us/t/api-users-userid-recordings-completed-in-progress/9179/16 "2020-06-10T18:20:47Z")

</div>

@kchan, Marketplace apps are our method of providing you with API credentials, and administering OAuth scopes to match user permissions. Apps are not installed at the client, as user authentication/permissions are not handled by it.

Within a meeting, a recording stopped event will show the single or multiple times a recording has been stopped, including when the meeting ends.

A recording completed event will be delivered when the MP4, M4A and transcript files are all available for download. (“Finished”)

---

<div class="post-metadata">

**Author:** ![kchan](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/kchan/32/3397_2.png) [@kchan](https://devforum.zoom.us/u/kchan)\
**Post date:** [June 10, 2020, 6:45pm UTC](https://devforum.zoom.us/t/api-users-userid-recordings-completed-in-progress/9179/17 "2020-06-10T18:45:05Z")

</div>

Sorry for the dumb question, but for an ad hoc meeting where the start/end time is not defined how does the system know when the meeting is finished.

and for my meeting that’s still transcribing for many days … if I had set up a recording completed trigger in advance, it’ll only fire if that transcription finishes?

---

<div class="post-metadata">

**Author:** ![michael.zoom](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/michael.zoom/32/37213_2.png) [@michael.zoom](https://devforum.zoom.us/u/michael.zoom)\
**Post date:** [June 13, 2020, 1:00am UTC](https://devforum.zoom.us/t/api-users-userid-recordings-completed-in-progress/9179/18 "2020-06-13T01:00:59Z")

</div>

Hey @kchan, no dumb questions!

An ad hoc meeting is ended when the host ends the meeting. If the original host leaves but does not end the meeting, the new host would have this capability.

A recording completed event will fire only once the processing finishes, this is correct.

---

<div class="post-metadata">

**Author:** ![DeveloperBot](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/developerbot/32/12632_2.png) [@DeveloperBot](https://devforum.zoom.us/u/DeveloperBot)\
**Post date:** [August 21, 2020, 10:02pm UTC](https://devforum.zoom.us/t/api-users-userid-recordings-completed-in-progress/9179/19 "2020-08-21T22:02:53Z")

</div>

Closed on August 21, 2020, 10:02pm UTC


