Illegal query expression response when querying v2/metrics/meetings

API Endpoint(s) and/or Zoom API Event(s)
v2/metrics/meetings

Description
We have multiple clients using our Zoom marketplace integration. As of two days ago we have started seeing an error message that we have never seen before when hitting v2/metrics/meetings.

Error?
It is returning a status code 400 with the body:

{
“code”: -1,
“message”: “Illegal query expression: Either the hash key conditions or the key condition expression must be specified but not both.”
}

It seems to only happen when we pass a type of pastOne and we’ve tried various combinations of date ranges. The only time we are getting success responses is when there are no results so our best guess is that it is doing this whenever there would have been results.

How To Reproduce
We’ve managed to reproduce this for multiple clients.
*1. Hitting anything similar to v2/metrics/meetings?page_size=300&from=2024-10-03&to=2024-10-05&type=pastOne - although it only seems to fail when there would have been a result
*2. Using OAuth 2.0 app
*3. Getting the 400 as shown above.

Hi @zoom-connector
Thanks for reaching out to us and welcome to the Zoom Developer Forum
I have never seen this error before.
Can you confirm the what endpoint are you calling, this one v2/metrics/meetings is not a valid endpoint so I am wondering if that’s the reason why you are getting said error

Hi,

Thanks for the response!

I probably didn’t need the v2 bit, it’s this one:

List meetings: /docs/api/rest/reference/account/methods/#operation/dashboardMeetings

It’s working fine for most clients still and has been working consistently for, I think, at least a couple of years. We’ve only managed to get it to error this week passing in pastOne and we get a Success response if we hit a range with what looks like no results.

We could have been doing something wrong the whole time and not realised but we don’t understand why we’re only getting failures this week. Searching around that message looks as if it could be a DynamoDb error, which I believe Zoom use. So maybe it is bleeding out an internal failure accidentally?

Hey @zoom-connector
the v2 is actually correct, my bad!
It is pretty strange … would you be able to grab a tracking ID from the response headers of any of these requests so we can investigate this further?

Thanks, appreciate the responses!

So I’ll get some for a couple of different clients and show a failure and success for each, over the weekend we’ve had it happen for another so it’s definitely a generic problem.

I’m assuming the header you mean is x-zm-trackingid? If not let me know!

Client 1:

Failure:

Call - v2/metrics/meetings?type=pastOne&page_size=300&from=2022-08-24&to=2024-08-26

x-zm-trackingid - v=2.0;clid=aw1;rid=WEB_5557ef5ccf5df48449d8c91b191b77e3

Response - 400 with body mentioned above

Success:

Call -v2/metrics/meetings?type=pastOne&page_size=300&from=2022-08-24&to=2024-08-25

x-zm-trackingid - v=2.0;clid=aw1;rid=WEB_fe1ec6b662c472430336da06171e16de

Response - 200 with {
“from”: “2024-07-25”,
“to”: “2024-08-25”,
“page_count”: 0,
“page_size”: 300,
“total_records”: 0,
“next_page_token”: “”,
“meetings”:
}

Client 2:

Failure:

Call - v2/metrics/meetings?type=pastOne&page_size=300&from=2025-01-09&to=2025-01-10

x-zm-trackingid - v=2.0;clid=aw1;rid=WEB_60351360d1528682f7c1555c67a675a6

Response - 400 with body mentioned above

Success:

Call -v2/metrics/meetings?type=pastOne&page_size=300&from=2025-01-08&to=2025-01-09

x-zm-trackingid - v=2.0;clid=aw1;rid=WEB_4b7da50b34e69d68fb6cb29e883a7b60

Response - 200 with {
“from”: “2025-01-08”,
“to”: “2025-01-09”,
“page_count”: 0,
“page_size”: 300,
“total_records”: 0,
“next_page_token”: “”,
“meetings”:
}

Hey @zoom-connector
The only thing that I notice in your requests is that some of the date ranges that you are using are too big.
The metrics endpoint should be called with date range of 1 month, because the reports include only one month worth of data at once.
could you try fixing the dates in your requests and try again