# Missing recordings when using recordings API

**URL:** <https://devforum.zoom.us/t/missing-recordings-when-using-recordings-api/131370>\
**Category:** Meetings\
**Created:** [April 11, 2025, 6:03pm UTC](https://devforum.zoom.us/t/missing-recordings-when-using-recordings-api/131370 "2025-04-11T18:03:20Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![crazyjncsu](https://avatars.discourse-cdn.com/v4/letter/c/5f9b8f/32.png) [@crazyjncsu](https://devforum.zoom.us/u/crazyjncsu)\
**Post date:** [April 11, 2025, 6:03pm UTC](https://devforum.zoom.us/t/missing-recordings-when-using-recordings-api/131370/1 "2025-04-11T18:03:20Z")

</div>

The “Recordings and Transcripts” page on your web app (/recording/meeting/transcript) lists many recordings.

There is only a single user in the account (verified by calling /v2/users)

A call to list the recordings (/v2/users/me/recordings), regardless of parameters I’ve specified always returns zero results.

```auto
{"from":"2025-03-11","to":"2025-04-11","page_count":0,"page_size":0,"total_records":0,"next_page_token":"","meetings":[]}

```

I’ve tried to call to list an individual meeting’s recordings (/v2/meetings/:meetingId/recordings) by passing it meeting ID. That fails for most meetings, but it actually succeeds for one, but it only returns an instance of the recording from February (and this particular meeting room has had many meetings since).

How am I screwing this up?

---

<div class="post-metadata">

**Author:** ![amanda-recallai](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/amanda-recallai/32/44747_2.png) [@amanda-recallai](https://devforum.zoom.us/u/amanda-recallai)\
**Post date:** [April 14, 2025, 3:49pm UTC](https://devforum.zoom.us/t/missing-recordings-when-using-recordings-api/131370/2 "2025-04-14T15:49:21Z")

</div>

Hi @crazyjncsu,

In your tests, are you by chance trying to fetch recordings for different instances of a recurring meeting?

If so, this would be expected behavior since you need to get the ID’s of all past instances of that meeting, and then call the /meetingId/recordings endpoint for each of those meetings.

This would explain why only one instance’s recording is showing up through the API from your initial call.

You can get all past instances using this endpoint: [Zoom Meeting API](https://developers.zoom.us/docs/api/rest/reference/zoom-api/methods/#operation/pastMeetings)

Let me know if you have any questions about this!

---

<div class="post-metadata">

**Author:** ![crazyjncsu](https://avatars.discourse-cdn.com/v4/letter/c/5f9b8f/32.png) [@crazyjncsu](https://devforum.zoom.us/u/crazyjncsu)\
**Post date:** [April 14, 2025, 6:02pm UTC](https://devforum.zoom.us/t/missing-recordings-when-using-recordings-api/131370/3 "2025-04-14T18:02:49Z")

</div>

I had tried with meeting UUIDs (probably /v2/meeting/:meetingId/recordings) and did not get any results (for meetings that showed recordings in the web UI). So that is an issue too, but I suppose that could be the call formatting or something (or more likely the same underlying issue that is preventing the per-user recordings from showing up)

---

<div class="post-metadata">

**Author:** ![gianni.zoom](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/gianni.zoom/32/32523_2.png) [@gianni.zoom](https://devforum.zoom.us/u/gianni.zoom)\
**Post date:** [April 14, 2025, 6:56pm UTC](https://devforum.zoom.us/t/missing-recordings-when-using-recordings-api/131370/4 "2025-04-14T18:56:32Z")

</div>

> [@crazyjncsu](#):
>
> (and this particular meeting room has had many meetings since).

Hi @crazyjncsu , from this line, can you please clarify if you are using the Zoom Rooms product to start meetings?

> [@crazyjncsu](#):
>
> The “Recordings and Transcripts” page on your web app (/recording/meeting/transcript) lists many recordings.
> 
> There is only a single user in the account (verified by calling /v2/users)
> 
> A call to list the recordings (/v2/users/me/recordings), regardless of parameters I’ve specified always returns zero results.
> 
> ```auto
> 
> ```

Are these meetings that you’ve hosted? Or have some of them been hosted by other people, you were a participant and they’ve shared the recordings with you?

If you did not host the meeting, you may not be able to request the recordings via API unless you are an admin with the correct scopes to query. The scopes you need are on the endpoint documentation: [Meetings APIs](https://developers.zoom.us/docs/api/meetings/#tag/cloud-recording)

Here are a couple of tips that can help you identify why you are not seeing the recordings you expect? [Optimize Zoom cloud recording workflows -- guidance and tips for developers for extracting data-rich AI-powered insights](https://developers.zoom.us/blog/openapi-guide-cloud-recording/#developer-tips-for-zoom-cloud-recording)

---

<div class="post-metadata">

**Author:** ![crazyjncsu](https://avatars.discourse-cdn.com/v4/letter/c/5f9b8f/32.png) [@crazyjncsu](https://devforum.zoom.us/u/crazyjncsu)\
**Post date:** [April 16, 2025, 8:16am UTC](https://devforum.zoom.us/t/missing-recordings-when-using-recordings-api/131370/5 "2025-04-16T08:16:47Z")

</div>

> Hi @crazyjncsu , from this line, can you please clarify if you are using the Zoom Rooms product to start meetings?

This is for my client’s account, so I don’t know for sure, but I doubt they are using an additional product. I think they just have a meeting room which they reuse. Should it matter?

> Are these meetings that you’ve hosted? Or have some of them been hosted by other people, you were a participant and they’ve shared the recordings with you?

They are all meeting that they’ve hosted and appear on their Transcripts area in your web UI. I’m really just trying to emulate what that page is listing.

I think I have the required scope (cloud\_recording:read:list\_user\_recordings:admin):  
(not letting me embed my image)

Wouldn’t the API give an error if I didn’t have scopes configured correctly?

> Here are a couple of tips that can help you identify why you are not seeing the recordings you expect

I read those but really couldn’t find anything to help me with this.

---

<div class="post-metadata">

**Author:** ![gianni.zoom](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/gianni.zoom/32/32523_2.png) [@gianni.zoom](https://devforum.zoom.us/u/gianni.zoom)\
**Post date:** [April 17, 2025, 4:48pm UTC](https://devforum.zoom.us/t/missing-recordings-when-using-recordings-api/131370/6 "2025-04-17T16:48:28Z")

</div>

Hi @crazyjncsu , it sounds like you are external to the client who’s info you are trying to access. Are you trying to access their data through a published marketplace app you’ve created and they’ve installed giving you permission to access their data? Or have they provided you with their credentials for an app they’ve created to access their data?

---

<div class="post-metadata">

**Author:** ![crazyjncsu](https://avatars.discourse-cdn.com/v4/letter/c/5f9b8f/32.png) [@crazyjncsu](https://devforum.zoom.us/u/crazyjncsu)\
**Post date:** [April 17, 2025, 9:28pm UTC](https://devforum.zoom.us/t/missing-recordings-when-using-recordings-api/131370/7 "2025-04-17T21:28:58Z")

</div>

I had the app created in a different account until I realized the burden required to share it with this account. So then I just got her login to create the app in her account. It is an “Admin-managed” app (as certain things I was trying to do prior to being “admin-managed” were requiring “\*:admin” scopes, presumably because they are under the single admin user?)

So the app is in her account. Shouldn’t it have the right scopes and everything if that endpoint is not returning an error?

I would be glad to engage with anyone or provide any account information, but it won’t even let me share images or links here.

I really just want to pull the recordings via API that are listed in the web UI.

---

<div class="post-metadata">

**Author:** ![sohaibpro58](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/sohaibpro58/32/50456_2.png) [@sohaibpro58](https://devforum.zoom.us/u/sohaibpro58)\
**Post date:** [April 18, 2025, 1:28pm UTC](https://devforum.zoom.us/t/missing-recordings-when-using-recordings-api/131370/8 "2025-04-18T13:28:39Z")

</div>

It could be that the meetings weren’t recorded to the cloud or the meeting IDs are incorrect. Also, recordings tied to other hosts (even in the same account) won’t show up. Double-check cloud recording was enabled and the IDs are correct.

---

<div class="post-metadata">

**Author:** ![crazyjncsu](https://avatars.discourse-cdn.com/v4/letter/c/5f9b8f/32.png) [@crazyjncsu](https://devforum.zoom.us/u/crazyjncsu)\
**Post date:** [April 18, 2025, 7:19pm UTC](https://devforum.zoom.us/t/missing-recordings-when-using-recordings-api/131370/9 "2025-04-18T19:19:58Z")

</div>

> It could be that the meetings weren’t recorded to the cloud or the meeting IDs are incorrect. Also, recordings tied to other hosts (even in the same account) won’t show up. Double-check cloud recording was enabled and the IDs are correct.

The meetings are in the web UI. Even though they were conducted from her computer, I can download the transcripts from the web.

There are no other hosts. There is a single user in the account. (as mentioned above)

Is there some weird runtime filtering happening because my app isn’t published? I’ve tried using the Development and Production credentials for the oauth flows (they both succeed) but no difference.

---

<div class="post-metadata">

**Author:** ![crazyjncsu](https://avatars.discourse-cdn.com/v4/letter/c/5f9b8f/32.png) [@crazyjncsu](https://devforum.zoom.us/u/crazyjncsu)\
**Post date:** [April 25, 2025, 2:31pm UTC](https://devforum.zoom.us/t/missing-recordings-when-using-recordings-api/131370/10 "2025-04-25T14:31:11Z")

</div>

I’m still struggling hard with this.

It won’t let me post links, but there is a thread on this forum: “Retrieve a meeting’s recordings”

It suggests having the scopes: `recording:read:admin` or `recording:read`

Those don’t see available anymore? All now start with cloud\_recording:\*

This is such a struggle. I don’t see why it is returning an empty result set from /v2/users/me/recordings when they show up in the Web UI and there is only one user in the account.

Still:

```auto
{
  "from": "2025-03-25",
  "to": "2025-04-25",
  "next_page_token": "",
  "page_count": 0,
  "page_size": 0,
  "total_records": 0,
  "meetings": []
}

```

---

<div class="post-metadata">

**Author:** ![crazyjncsu](https://avatars.discourse-cdn.com/v4/letter/c/5f9b8f/32.png) [@crazyjncsu](https://devforum.zoom.us/u/crazyjncsu)\
**Post date:** [April 25, 2025, 2:48pm UTC](https://devforum.zoom.us/t/missing-recordings-when-using-recordings-api/131370/11 "2025-04-25T14:48:50Z")

</div>

OK, so there is that single recording from Feb 20 I referenced in my original post. I can list it and do all the fun operations on it including downloading the transcript.

The funny thing is that although it appears in the Web UI (at least a meeting that starts with the same ID on the same minute), the web UI gives the message “The transcription file has expired” when attempting to download it.

Still poking around trying to figure out this mess…

---

<div class="post-metadata">

**Author:** ![gianni.zoom](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/gianni.zoom/32/32523_2.png) [@gianni.zoom](https://devforum.zoom.us/u/gianni.zoom)\
**Post date:** [April 25, 2025, 2:55pm UTC](https://devforum.zoom.us/t/missing-recordings-when-using-recordings-api/131370/12 "2025-04-25T14:55:38Z")

</div>

Hi @crazyjncsu , unfortunately, I do not get all the notifications unless I am tagged.

Thank you for clarifying the account details.

I noticed you’re calling for meeting “from”: “2025-03-25”,  
“to”: “2025-04-25”, – are all the meetings that you see in the web portal from that time? Could any of the meeting you’re trying to download be older than 6 months? We have a limit on pulling meeting info via API if it’s older than 6 months.

If they are not, double check the date parameter is accurate.

---

<div class="post-metadata">

**Author:** ![crazyjncsu](https://avatars.discourse-cdn.com/v4/letter/c/5f9b8f/32.png) [@crazyjncsu](https://devforum.zoom.us/u/crazyjncsu)\
**Post date:** [April 25, 2025, 4:15pm UTC](https://devforum.zoom.us/t/missing-recordings-when-using-recordings-api/131370/14 "2025-04-25T16:15:59Z")

</div>

Yes, @gianni.zoom, in the Web UI I see over 20 recordings for that date range.

---

<div class="post-metadata">

**Author:** ![gianni.zoom](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/gianni.zoom/32/32523_2.png) [@gianni.zoom](https://devforum.zoom.us/u/gianni.zoom)\
**Post date:** [April 28, 2025, 6:17pm UTC](https://devforum.zoom.us/t/missing-recordings-when-using-recordings-api/131370/15 "2025-04-28T18:17:25Z")

</div>

Hi @crazyjncsu , you have the correct scope `cloud_recording:read:list_user_recordings:admin` based on the app type you’re using for [the endpoint](https://developers.zoom.us/docs/api/meetings/#tag/cloud-recording/GET/users/%7BuserId%7D/recordings).

I’m wondering if your request parameters are the issue since you said you’ve tried a few combinations. Let’s simply try this–copy and append to the base url:

`/users/me/recordings?page_size=300&mc=false&trash=false&from=2025-03-25&to=2025-04-25`

Please query with a valid access token and tell me if it works?

---

<div class="post-metadata">

**Author:** ![crazyjncsu](https://avatars.discourse-cdn.com/v4/letter/c/5f9b8f/32.png) [@crazyjncsu](https://devforum.zoom.us/u/crazyjncsu)\
**Post date:** [April 29, 2025, 12:05pm UTC](https://devforum.zoom.us/t/missing-recordings-when-using-recordings-api/131370/16 "2025-04-29T12:05:06Z")

</div>

> [@gianni.zoom](#):
>
> /users/me/recordings?page\_size=300&mc=false&trash=false&from=2025-03-25&to=2025-04-25

@gianni.zoom

I inserted your string into the URL verbatim, same results:

```auto
jake@Jakes-MacBook-Air dir % curl 'https://api.zoom.us/v2/users/me/recordings?page_size=300&mc=false&trash=false&from=2025-03-25&to=2025-04-25' -X GET -H "Authorization: Bearer [redacted]"

{"from":"2025-03-25","to":"2025-04-25","page_count":0,"page_size":0,"total_records":0,"next_page_token":"","meetings":[]}%                                                                   

jake@Jakes-MacBook-Air dir % 

```

I’d be very happy to provide more info such as the account ID, any tokens, etc. This forum limits screenshots and posting of URLs. And some of it is sensitive, yet this forum is my only outlet to support.

BTW all other operations are working quite well. I can list meetings, pull AI meeting summaries, list attendees, etc. Just these recordings are returning empty results.

---

<div class="post-metadata">

**Author:** ![gianni.zoom](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/gianni.zoom/32/32523_2.png) [@gianni.zoom](https://devforum.zoom.us/u/gianni.zoom)\
**Post date:** [April 29, 2025, 3:34pm UTC](https://devforum.zoom.us/t/missing-recordings-when-using-recordings-api/131370/17 "2025-04-29T15:34:55Z")

</div>

Hi @crazyjncsu , I see! Thank you for testing this. We’ve changed up the workflow between Developer Advocate public community help and private developer suport. I want you to submit a [support ticket](https://support.zoom.com/hc/en/new-request?id=new_request&sys_id=7a69170f87cee15089a37408dabb3591&product=developer&_gl=1*1s6uhga*_gcl_aw*R0NMLjE3NDU4NjEwMTYuQ2owS0NRand6cnpBQmhEOEFSSXNBTmxTV05OTDBHX1c5eWxQdElkR2cyZTRLR21oLVdSWDBUQl9oMGxLWlZVazdVV2FJQ0VxNlRSOXdyY2FBc2xuRUFMd193Y0I.*_gcl_au*NDY2NTMxODA3LjE3NDE5MDQ4NzE.*_ga*MjEzODU3MjQ0Ni4xNzEyMTc1Mzc3*_ga_L8TBF28DDX*MTc0NTkzOTIzNy4zODAuMS4xNzQ1OTQwNTMzLjAuMC4w) to evaluate any account filters that may be impacting the API response.

In your support ticket, please include a link to this post as well as:

- account id
- client id
- zm-tracking-id
- screenshot of full request response

Please let me know the result of the investigation in this thread.

---

<div class="post-metadata">

**Author:** ![crazyjncsu](https://avatars.discourse-cdn.com/v4/letter/c/5f9b8f/32.png) [@crazyjncsu](https://devforum.zoom.us/u/crazyjncsu)\
**Post date:** [April 30, 2025, 1:36am UTC](https://devforum.zoom.us/t/missing-recordings-when-using-recordings-api/131370/18 "2025-04-30T01:36:39Z")

</div>

Thanks!

> Please let me know the result of the investigation in this thread.

Sure thing.

---

<div class="post-metadata">

**Author:** ![Faiqharris](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/faiqharris/32/68872_2.png) [@Faiqharris](https://devforum.zoom.us/u/Faiqharris)\
**Post date:** [April 30, 2025, 11:23am UTC](https://devforum.zoom.us/t/missing-recordings-when-using-recordings-api/131370/19 "2025-04-30T11:23:39Z")

</div>

> [@crazyjncsu](#):
>
> The “Recordings and Transcripts” page on your web app (/recording/meeting/transcript) lists many recordings.
> 
> There is only a single user in the account (verified by calling /v2/users)
> 
> A call to list the recordings (/v2/users/me/recordings), regardless of parameters I’ve specified always returns zero results.
> 
> ```auto
> {"from":"2025-03-11","to":"2025-04-11","page_count":0,"page_size":0,"total_records":0,"next_page_token":"","meetings":[]}
> 
> ```
> 
> I’ve tried to call to list an individual meeting’s recordings (/v2/meetings/:meetingId/recordings) by passing it meeting ID. That fails for most meetings, but it actually succeeds for one, but it only returns an instance of the recording from February (and this particular meeting room has had many meetings since).
> 
> How am I screwing this up?

It looks like there might be an issue with the date range or meeting ID you’re using. Double-check that the meeting IDs and the specified date range match the available recordings.

---

<div class="post-metadata">

**Author:** ![crazyjncsu](https://avatars.discourse-cdn.com/v4/letter/c/5f9b8f/32.png) [@crazyjncsu](https://devforum.zoom.us/u/crazyjncsu)\
**Post date:** [April 30, 2025, 9:48pm UTC](https://devforum.zoom.us/t/missing-recordings-when-using-recordings-api/131370/20 "2025-04-30T21:48:54Z")

</div>

@gianni.zoom .. I provided the information you suggested included the zm-tracking-id, screenshots of the recordings in the web UI, etc.

I was asked when the issue started happening, and I responded that it started happening when I attempted to use the API.

Then I just received this:

```auto
Hello,

Our Technical Support team assists with product-level defects. We have confirmed this issue is configuration-related and not within the scope of your account’s Developer Support Plan, as such this case will be closed.

For help with developer configuration issues, custom solutions, custom integrations, or feature requests, please visit our Developer Forum where Zoom Developers and community members are available to assist you.

If you are interested in additional developer support options for your account, such as live developer consultations, please visit https://explore.zoom.us/docs/en-us/developer-support-plans.html for more information on our Developer Support tiers.

Thank you,
Zoom Support

```

Do I have any outlet to get help?

---

<div class="post-metadata">

**Author:** ![crazyjncsu](https://avatars.discourse-cdn.com/v4/letter/c/5f9b8f/32.png) [@crazyjncsu](https://devforum.zoom.us/u/crazyjncsu)\
**Post date:** [May 2, 2025, 3:26pm UTC](https://devforum.zoom.us/t/missing-recordings-when-using-recordings-api/131370/21 "2025-05-02T15:26:47Z")

</div>

@gianni.zoom Any update?

The support ticket was just abruptly closed with no way for me to respond. They said they confirmed it was “configuration-related” but gave no details. Should I submit another support ticket?

[Next page](https://devforum.zoom.us/t/missing-recordings-when-using-recordings-api/131370.md?page=2)
