Endpoint:
GET``https://api.zoom.us/v2/phone/call_history
Reference:
https://developers.zoom.us/docs/api/rest/reference/zoom-phone/methods/#operation/phoneCallHistory
Description
We are encountering an issue where some valid Zoom Phone calls:
-
appear in the Zoom admin UI
-
are fully retrievable using
GET /v2/phone/call_logs/{callId} -
have end_times that fall inside the queried
from→towindow -
meet the expected filters (
connect_types=external,call_results=answered,connected)
but do NOT appear in the /phone/call_history search results unless the time window is expanded significantly.
This creates a situation where the same call appears:
-
in the Zoom UI
-
in
/call_logs/{callId} -
in a wider call_history search window
but is missing from the correct call_history search window.
This suggests a possible inconsistency in how /phone/call_history indexes or filters calls, potentially applying start_time bucketing even when time_type=end_time is used.
Error / Issue
A specific call (ID anonymized as CALL_ID_A) with:
-
start_time:
2025-10-24T21:56:46Z -
end_time:
2025-10-24T22:13:58Z
is missing from the expected search window, even though its end_time clearly falls within the from → to range.
The call only appears if the window is greatly widened.
We have confirmed this behavior with multiple call IDs.
Actual IDs can be provided privately to Zoom Support.
How To Reproduce
1. Request URL (call NOT returned)
This request should include CALL_ID_A based on its end_time, but it does not:
GET /v2/phone/call_history
?from=2025-10-24T22:12:19Z
&to=2025-10-24T22:29:24Z
&connect_types=external
&call_results=answered,connected
&time_type=end_time
&page_size=300
Expected:
CALL_ID_A should appear.
Actual:
CALL_ID_A is missing.
2. Request URL (call IS returned)
When the time window is widened substantially, the same call appears:
GET /v2/phone/call_history
?from=2025-10-24T21:13:46Z
&to=2025-10-24T22:54:08Z
&connect_types=external
&call_results=answered,connected
&time_type=end_time
&page_size=300
Actual:
CALL_ID_A shows up in results.
3. Direct lookup always succeeds
GET /v2/phone/call_logs/{CALL_ID_A}
The call appears here every time, confirming the call definitely exists and is recorded correctly.
Authentication Method / App Type
-
Server-to-Server OAuth
-
Scopes:
-
phone:read -
phone_call_logs:read
-
Summary
There appears to be a possible inconsistency in the /phone/call_history endpoint, where calls:
-
are valid
-
exist in the Zoom UI
-
are retrievable via
/call_logs/{callId} -
have end_times inside the requested window
-
match filters
but fail to appear unless the time window is widened significantly.
This may indicate:
-
indexing based on
start_timeinstead ofend_time, or -
filter processing that excludes valid results, or
-
another underlying search issue.
We are happy to provide the exact call IDs and full API responses privately.
Our Questions: