Zoom Phone Dashboard API

The Dashboard API from Zoom Phone — 11 operation(s) for dashboard.

Operations 11

GET /phone/metrics/call_logs List call logs #
GET /phone/metrics/call_logs/{callId}/qos Get call QoS #
GET /phone/metrics/call_logs/{call_id} Get call details from call log #
GET /phone/metrics/emergency_services/default_emergency_address/users List default emergency address users #
GET /phone/metrics/emergency_services/detectable_personal_location/users List detectable personal location users #
GET /phone/metrics/emergency_services/location_sharing_permission/users List users permission for location sharing #
GET /phone/metrics/emergency_services/nomadic_emergency_services/users List nomadic emergency services users #
GET /phone/metrics/emergency_services/realtime_location/devices List real time location for IP phones #
GET /phone/metrics/emergency_services/realtime_location/users List real time location for users #
GET /phone/metrics/location_tracking List tracked locations #
GET /phone/metrics/past_calls List past call metrics #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/zoom-phone-dashboard-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

zoom-phone-dashboard-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Phone Dashboard API
  description: "You can access information from Zoom with Zoom Phone APIs to build private services or public applications on the [Zoom App Marketplace](https://marketplace.zoom.us/).\n\n  To learn how to get your credentials and create private or public applications, see Zoom APIs use [OAuth 2.0 authorization](https://developers.zoom.us/docs/integrations/oauth/). \n\n  All endpoints are available through `https` at `api.zoom.us/v2/`. For instance, `https://api.zoom.us/v2/users/` returns all users on an account. You'll receive a `403` error message if you have not set up Zoom Phone."
  termsOfService: https://zoom.us/docs/en-us/zoom_api_license_and_tou.html
  contact:
    name: Zoom Developers
    url: https://developer.zoom.us/
  version: '2'
servers:
- url: https://api.zoom.us/v2
tags:
- name: Dashboard
paths:
  /phone/metrics/call_logs:
    get:
      tags:
      - Dashboard
      summary: List call logs
      description: "Returns monthly call logs metrics.\n\nThe call logs that provide a record of all incoming and outgoing calls over Zoom Phone in an account. \n\nYou can use query parameters to filter the response by date, site and MOS(Mean Opinion Score) of the call. \n\n**Prerequisites:**\n* Business or Education account\n* Zoom Phone license \n\n\n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `phone:read:admin`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `phone:read:list_call_logs:admin`\n\n**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `HEAVY`"
      operationId: listCallLogsMetrics
      parameters:
      - name: from
        in: query
        description: The start date in **yyyy-mm-dd** format. The date range defined by the `from` and `to` parameters should be a month as the response only includes one month's worth of data at once. If unspecified, returns data from the past 1 day.
        required: false
        schema:
          type: string
          format: date
          example: '2021-12-01'
      - name: to
        in: query
        description: This setting is **required** only when the `from` parameter is specified. The end date is in **yyyy-mm-dd** format, which is the same format as the `from` parameter.
        required: false
        schema:
          type: string
          format: date
          example: '2021-12-31'
      - name: site_id
        in: query
        description: The unique identifier of the [site](https://support.zoom.us/hc/en-us/articles/360020809672-Managing-multiple-sites). Use this query parameter if you have enabled multiple sites and would like to filter the response of this API call by call logs of a specific phone site.
        required: false
        schema:
          type: string
          example: SQv52YtkRLC2dwrDdYtGsA
      - name: quality_type
        in: query
        description: "This setting filters call logs by voice quality. Zoom uses MOS of 3.5 as a general baseline to categorize calls by call quality. A MOS greater than or equal to 3.5 means good quality, while below 3.5 means poor quality.   \n   \n The value of this field can be one of the following:  \n \n* `good`: Retrieve call logs of the call(s) with good quality of voice.  \n \n* `bad`: Retrieve call logs of the call(s) with good quality of voice.  \n \n* `all`: Retrieve all call logs without filtering by voice quality. \n\n\n\n"
        required: false
        schema:
          type: string
          example: good
      - name: page_size
        in: query
        description: The number of records returned within a single call.
        required: false
        schema:
          maximum: 100
          type: integer
          example: 30
          default: 30
      - name: next_page_token
        in: query
        description: The next page token paginates through a large set of results. A next page token will be returned whenever the set of available results exceeds the current page size. The expiration period for this token is 15 minutes.
        required: false
        schema:
          type: string
          example: T6WMY4fJBIAlxPUiqRtwvQS9dvsq8AoRam2
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  call_logs:
                    type: array
                    description: Call logs.
                    items:
                      type: object
                      properties:
                        call_id:
                          type: string
                          description: The unique identifier of the phone call.
                          example: '7081466125443483485'
                        callee:
                          type: object
                          properties:
                            codec:
                              type: string
                              description: The audio codec.
                              example: ES8311
                            device_private_ip:
                              type: string
                              description: This setting displays the device's private IP address if the account has the `show_device_ip_for_call_log` parameter set to `enabled`.
                              example: 10.100.111.237
                            device_public_ip:
                              type: string
                              description: This setting displays the device's public IP address if the account has the `show_device_ip_for_call_log` parameter set to `enabled`.
                              example: 38.99.100.2
                            device_type:
                              type: string
                              description: "The device type, and if applicable, its version number. Acceptable device types: \n* `Windows_Client` \n* `MAC_Client` \n* `Linux_Client`  \n* `Android_Phone` \n* `IOS_Phone` \n* `Android_Pad` \n* `IOS_Pad` \n* [Zoom Phone Appliance](https://support.zoom.us/hc/en-us/articles/360001299063#h_cc0dac0d-44aa-4fb6-8e39-359166c38715) \n* `Windows_VDI_Client` \n* `MAC_VDI_Client` \n* `Linux_VDI_Client`"
                              example: MAC_Client 5.11.9.9957
                            extension_number:
                              type: string
                              description: The full extension number of the callee.
                              example: '100994'
                            headset:
                              type: string
                              description: The headset the callee uses.
                              example: Edifier
                            isp:
                              type: string
                              description: ISP.
                              example: Cogent Communications
                            microphone:
                              type: string
                              description: The microphone the callee uses for the call.
                              example: '+12053194087'
                            phone_number:
                              type: string
                              description: The phone number of the callee in E164 format.
                              example: '+12053194087'
                            site_id:
                              type: string
                              description: The unique identifier of the [site](https://support.zoom.us/hc/en-us/articles/360020809672-Managing-multiple-sites).
                              example: ZNWikLeVSjuaMvUoxFqCuw
                          description: The callee object that contains information of the calee.
                        caller:
                          type: object
                          properties:
                            codec:
                              type: string
                              description: Audio codec.
                              example: ES8311
                            device_private_ip:
                              type: string
                              description: This setting displays the device's private IP address if the account has the `show_device_ip_for_call_log` parameter set to `enabled`.
                              example: 10.100.111.232
                            device_public_ip:
                              type: string
                              description: This setting display sthe device's public IP address if the account has the `show_device_ip_for_call_log` parameter set to `enabled`.
                              example: 38.99.100.3
                            device_type:
                              type: string
                              description: "The device type, and if applicable, its version number. Acceptable device types: \n* `Windows_Client` \n* `MAC_Client` \n* `Linux_Client`  \n* `Android_Phone` \n* `IOS_Phone` \n* `Android_Pad` \n* `IOS_Pad` \n* [Zoom Phone Appliance](https://support.zoom.us/hc/en-us/articles/360001299063#h_cc0dac0d-44aa-4fb6-8e39-359166c38715) \n* `Windows_VDI_Client` \n* `MAC_VDI_Client` \n* `Linux_VDI_Client` "
                              example: MAC_Client
                            extension_number:
                              type: string
                              description: The full extension number of the caller.
                              example: '100152'
                            headset:
                              type: string
                              description: The headset the caller uses for the call.
                              example: Edifier
                            isp:
                              type: string
                              description: ISP.
                              example: Cogent Communications
                            microphone:
                              type: string
                              description: The microphone the caller uses for the call.
                              example: '+12053194087'
                            phone_number:
                              type: string
                              description: The phone number of the caller in E164 format.
                              example: '+12053194087'
                            site_id:
                              type: string
                              description: The unique identifier of the [site](https://support.zoom.us/hc/en-us/articles/360020809672-Managing-multiple-sites).
                              example: ZNWikLeVSjuaMvUoxFqCuw
                          description: The caller object that contains information of the caller.
                        date_time:
                          type: string
                          description: The date and time when the call started.
                          example: '2021-04-01T02:59:32Z'
                        direction:
                          type: string
                          description: The direction of the call. The value of this field can be either `internal` or `outbound`.
                          example: internal
                        duration:
                          type: integer
                          description: The duration of the full call in seconds.
                          example: 20
                        mos:
                          type: string
                          description: The  Mean Opinion Score (MOS). Zoom uses MOS as the main measurement to report on voice quality. MOS measures voice quality on a scale of one to five. A score of 1 indicates unacceptable voice quality for all users. A score of five is the best voice quality.
                          example: '4.5'
                  from:
                    type: string
                    description: The start time and date of the report.
                    example: '2021-03-31'
                  next_page_token:
                    type: string
                    description: The next page token paginates through a large set of results. A next page token is returned whenever the set of available results exceeds the current page size. The expiration period for this token is 15 minutes.
                    example: T6WMY4fJBIAlxPUiqRtwvQS9dvsq8AoRam2
                  page_size:
                    type: integer
                    description: The number of records returned within a single call.
                    example: 30
                  to:
                    type: string
                    description: The end time and date of the report.
                    example: '2021-04-01'
                  total_records:
                    type: integer
                    description: The total number of records available across all pages.
                    example: 20
        '429':
          description: "**HTTP Status Code:** `429` <br>\n Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/). \n\n "
      security:
      - openapi_oauth:
        - phone:read:admin
        - phone:read:list_call_logs:admin
        openapi_authorization: []
      x-extensions:
        x-permissions: []
        x-macro-scopes:
        - phone:read:admin
        x-granular-scopes:
        - phone:read:list_call_logs:admin
  /phone/metrics/call_logs/{callId}/qos:
    get:
      tags:
      - Dashboard
      summary: Get call QoS
      description: "Gets the call quality of service (QoS) data for a call made or received by a Zoom phone user in the account. \n\n**Prerequisites:**\n* Business, or Education account\n* Zoom Phone license   \n   \n \n\n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `phone:read:admin`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `phone:read:call_qos:admin`\n\n**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `Light`"
      operationId: getCallQoS
      parameters:
      - name: callId
        in: path
        description: The unique identifier of the call.
        required: true
        schema:
          type: string
          example: '7081466125443483485'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  call_id:
                    type: string
                    description: The unique identifier of the phone call.
                    example: '7081466125443483485'
                  callee_qos:
                    type: object
                    properties:
                      device_private_ip:
                        type: string
                        description: This setting displays the device's private IP address if the account has the `show_device_ip_for_call_log` parameter set to `enabled`.
                        example: 10.100.111.237
                      device_public_ip:
                        type: string
                        description: This setting displays the device's public IP address if the account has the `show_device_ip_for_call_log` parameter set to `enabled`.
                        example: 38.99.100.2
                      receiving:
                        type: array
                        description: The QoS that the callee receives.
                        items:
                          type: object
                          properties:
                            date_time:
                              type: string
                              description: The date and time when the QoS was received.
                              format: date-time
                              example: '2022-04-01T03:05:43Z'
                            qos:
                              type: object
                              properties:
                                avg_loss:
                                  type: string
                                  description: The average amount of packet loss. For example, the percentage of packets that fail to arrive at their destination.
                                  example: 0.82%
                                bitrate:
                                  type: string
                                  description: The number of bits per second, in kbps, that can be transmitted along a digital network.
                                  example: 14.98kbps
                                jitter:
                                  type: string
                                  description: The variation in the delay of received packets, in milliseconds.
                                  example: 7.53ms
                                max_loss:
                                  type: string
                                  description: The maximum amount of packet loss. For example, the maximum percentage of packets that fail to arrive at their destination.
                                  example: 1.51%
                                mos:
                                  type: string
                                  description: 'The MOS (Mean Opinion Score).


                                    MOS measures voice quality on a scale of 1 to 5. A score than or equal to 3.5 means good quality, while below 3.5 means poor quality.'
                                  example: '3.6'
                                network_delay:
                                  type: string
                                  description: The amount of time, in milliseconds, it takes for a VoIP (Voice Over IP) packet to travel from one point to another.
                                  example: '307'
                      sending:
                        type: array
                        description: The QoS that the callee sends.
                        items:
                          type: object
                          properties:
                            date_time:
                              type: string
                              description: The date and time when the QoS was delivered.
                              format: date-time
                              example: '2022-04-01T03:05:43Z'
                            qos:
                              type: object
                              properties:
                                avg_loss:
                                  type: string
                                  description: The average amount of packet loss. For example, the percentage of packets that fail to arrive at their destination.
                                  example: 0.82%
                                bitrate:
                                  type: string
                                  description: The number of bits per second, in kbps, that can be transmitted along a digital network.
                                  example: 14.98kbps
                                jitter:
                                  type: string
                                  description: The variation in the delay of received packets, in milliseconds.
                                  example: 7.53ms
                                max_loss:
                                  type: string
                                  description: The maximum amount of packet loss. For example, the maximum percentage of packets that fail to arrive at their destination.
                                  example: 1.51%
                                mos:
                                  type: string
                                  description: 'The MOS (Mean Opinion Score).


                                    MOS measures voice quality on a scale of 1 to 5. A score than or equal to 3.5 means good quality, while below 3.5 means poor quality.'
                                  example: '3.6'
                                network_delay:
                                  type: string
                                  description: The amount of time, in milliseconds, it takes for a VoIP (Voice Over IP) packet to travel from one point to another.
                                  example: '307'
                  caller_qos:
                    type: object
                    properties:
                      device_private_ip:
                        type: string
                        description: This setting displays the device's private IP address if the account has the `show_device_ip_for_call_log` parameter set to `enabled`.
                        example: 10.100.111.237
                      device_public_ip:
                        type: string
                        description: This setting displays the device's public IP address if the account has the `show_device_ip_for_call_log` parameter set to `enabled`.
                        example: 38.99.100.2
                      receiving:
                        type: array
                        description: The QoS (quality of service) that the caller receives .
                        items:
                          type: object
                          properties:
                            date_time:
                              type: string
                              description: The date and time when the QoS was received.
                              format: date-time
                              example: '2022-04-01T03:05:43Z'
                            qos:
                              type: object
                              properties:
                                avg_loss:
                                  type: string
                                  description: The average amount of packet loss. For example, the percentage of packets that fail to arrive at their destination.
                                  example: 1.29%
                                bitrate:
                                  type: string
                                  description: The number of bits per second, in kbps, that can be transmitted along a digital network.
                                  example: 16.31kbps
                                jitter:
                                  type: string
                                  description: The variation in the delay of received packets in milliseconds.
                                  example: 5.15ms
                                max_loss:
                                  type: string
                                  description: The maximum amount of packet loss. For example, the maximum percentage of packets that fail to arrive at their destination.
                                  example: 2.01%
                                mos:
                                  type: string
                                  description: 'The MOS (Mean Opinion Score).


                                    MOS measures voice quality on a scale of 1 to 5. A score than or equal to 3.5 means good quality, while below 3.5 means poor quality.'
                                  example: '3.6'
                                network_delay:
                                  type: string
                                  description: The amount of time, in milliseconds, it takes for a VoIP (Voice Over IP) packet to travel from one point to another.
                                  example: '301'
                      sending:
                        type: array
                        description: The QoS that the caller sent.
                        items:
                          type: object
                          properties:
                            date_time:
                              type: string
                              description: The date and time when the QoS was delivered.
                              format: date-time
                              example: '2022-04-01T03:05:43Z'
                            qos:
                              type: object
                              properties:
                                avg_loss:
                                  type: string
                                  description: The average amount of packet loss, i.e., the percentage of packets that fail to arrive at their destination.
                                  example: 1.29%
                                bitrate:
                                  type: string
                                  description: The number of bits per second in kbps that can be transmitted along a digital network.
                                  example: 16.31kbps
                                jitter:
                                  type: string
                                  description: The variation in the delay of received packets. The value of this field is expressed in milliseconds.
                                  example: 5.15ms
                                max_loss:
                                  type: string
                                  description: The maximum amount of packet loss, i.e., the maximum percentage of packets that fail to arrive at their destination.
                                  example: 2.01%
                                mos:
                                  type: string
                                  description: The Mean Opinion Score (MOS) measures voice quality on a scale of one to five. A MOS greater than or equal to 3.5 means good quality, while below 3.5 means poor quality.
                                  example: '3.6'
                                network_delay:
                                  type: string
                                  description: The amount of time (in milliseconds) it takes for a VoIP packet to travel from one point to another.
                                  example: '303'
                    description: The quality of service object that represents the call quality data of the caller.
        '429':
          description: "**HTTP Status Code:** `429` <br>\n Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/). \n\n "
      security:
      - openapi_oauth:
        - phone:read:admin
        - phone:read:call_qos:admin
        openapi_authorization: []
      x-extensions:
        x-permissions: []
        x-macro-scopes:
        - phone:read:admin
        x-granular-scopes:
        - phone:read:call_qos:admin
  /phone/metrics/call_logs/{call_id}:
    get:
      tags:
      - Dashboard
      summary: Get call details from call log
      description: "Returns call log details of a specific call. \n\nThe call logs provide a record of all incoming and outgoing calls over Zoom Phone in an account.\n\n **Prerequisites:**\n * Business, or Education account\n * Zoom Phone license \n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `phone:read:admin`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `phone:read:call_log:admin`"
      operationId: getCallLogMetricsDetails
      parameters:
      - name: call_id
        in: path
        description: "The unique identifier of the phone call. \nThe value of this field can be retrieved from [List Call Logs]() API."
        required: true
        schema:
          type: string
          example: '7081466125443483485'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  call_id:
                    type: string
                    description: The unique identifier of the phone call.
                    example: '7081466125443483485'
                  callee:
                    type: object
                    properties:
                      codec:
                        type: string
                        description: The audio codec.
                        example: ES8311
                      device_private_ip:
                        type: string
                        description: This setting displays the device's private IP address if the account has the `show_device_ip_for_call_log` parameter set to `enabled`.
                        example: 10.100.111.237
                      device_public_ip:
                        type: string
                        description: This setting displays the device's public IP address if the account has the `show_device_ip_for_call_log` parameter set to `enabled`.
                        example: 38.99.100.2
                      device_type:
                        type: string
                        description: "The device type, and if applicable, its version number. Acceptable device types: \n* `Windows_Client` \n* `MAC_Client` \n* `Linux_Client`  \n* `Android_Phone` \n* `IOS_Phone` \n* `Android_Pad` \n* `IOS_Pad` \n* [Zoom Phone Appliance](https://support.zoom.us/hc/en-us/articles/360001299063#h_cc0dac0d-44aa-4fb6-8e39-359166c38715) \n* `Windows_VDI_Client` \n* `MAC_VDI_Client` \n* `Linux_VDI_Client` "
                        example: MAC_Client
                      extension_number:
                        type: string
                        description: The full extension number of the callee.
                        example: '100994'
                      headset:
                        type: string
                        description: The headset the callee uses for the call.
                        example: Edifier
                      isp:
                        type: string
                        description: ISP.
                        example: Cogent Communications
                      microphone:
                        type: string
                        description: The microphone the callee uses for the call.
                        example: '+18889843519'
                      phone_number:
                        type: string
                        description: The phone number of the callee in E164 format.
                        example: '+18889843519'
                      site_id:
                        type: string
                        description: The unique identifier of the [site](https://support.zoom.us/hc/en-us/articles/360020809672-Managing-multiple-sites).
                        example: ZNWikLeVSjuaMvUoxFqCuw
                      id:
                        type: string
                        description: The ID of the extension for `user`, `callQueue`, `autoReceptionist`, or `sharedLineGroup`.
                        example: DYHrdpjrS3uaOf7dPkkg8w
                      extension_type:
                        type: string
                        description: "The type of extension:  \n* `user`  \n* `callQueue` \n* `autoReceptionist` \n* `sharedLineGroup`"
                        example: user
                        enum:
                        - user
                        - callQueue
                        - autoReceptionist
                        - sharedLineGroup
                      display_name:
                        type: string
                        description: The extension's name.
                        example: user A
                    description: The callee object that contains information of the callee.
                  caller:
                    type: object
                    properties:
                      codec:
                        type: string
                        description: The audio codec.
                        example: ES8311
                      device_private_ip:
                        type: string
                        description: This setting displays the device's private IP address if the account has the `show_device_ip_for_call_log` parameter set to `enabled`.
                        example: 10.100.111.237
                      device_public_ip:
                        type: string
                        description: This setting displays the device's public IP address if the account has the `show_device_ip_for_call_log` parameter set to `enabled`.
                        example: 38.99.100.2
                      device_type:
                        type: string
                        description: "The device type, and if applicable, its version number. Acceptable device types: \n* `Windows_Client` \n* `MAC_Client` \n* `Linux_Client`  \n* `Android_Phone` \n* `IOS_Phone` \n* `Android_Pad` \n* `IOS_Pad` \n* [Zoom Phone Appliance](https://support.zoom.us/hc/en-us/articles/360001299063#h_cc0dac0d-44aa-4fb6-8e39-359166c38715) \n* `Windows_VDI_Client` \n* `MAC

# --- truncated at 32 KB (130 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/zoom-phone/refs/heads/main/openapi/zoom-phone-dashboard-api-openapi.yml