# Aggregate Call Analytics

`ringcentral_aggregate-call-analytics` · RingCentral MCP tool · Analytics

Fetch aggregated call-volume/duration analytics for the RingCentral account, grouped by company, users, queues, sites, or another dimension, over a date-time window. Read-only.

## RingCentral Frequently Asked Questions

**What does the Aggregate Call Analytics tool do?**

This page documents the Aggregate Call Analytics tool (`ringcentral_aggregate-call-analytics`). Fetch aggregated call-volume/duration analytics for the RingCentral account, grouped by company, users, queues, sites, or another dimension, over a date-time window. Read-only. It is one of the RingCentral Analytics tools, invoked through your firm's Weave MCP connection and available to members whose access level permits it.

**What is the RingCentral integration?**

The RingCentral integration connects your firm's RingCentral account to Weave. RingCentral (RingEX) is a cloud phone/UCaaS platform. This integration exposes read-only call log, call analytics, recordings, directory, extension, and account diagnostics data as governed MCP tools, scoped per member by access level. It groups 17 tools into 5 categories, exposed through your firm's Weave MCP connection and filtered per member by access level.

## Input

- **page** `integer` (>= 1) — Which results page to fetch (1-based). Omit for the first page.
- **perPage** `integer` (>= 1, <= 200) — Records per page (max 200). Omit for the RingCentral default.
- **grouping** `object` (required) — How to group the aggregated calls: a fixed dimension via `groupBy`, or a member scope via `groupByMembers`, optionally narrowed to specific entity ids via `keys`.
- **timeSettings** `object` (required) — The report's date-time window and timezone.
  - **timeZone** `string` (required) — IANA time zone name applied to `advancedTimeSettings` and aggregation intervals, e.g. 'America/Los_Angeles', 'US/Pacific'. Does not shift `timeRange`, which already carries its own UTC offset.
  - **timeRange** `object` (required) — The report's date-time window.
    - **timeFrom** `string` (required) — Start of the report window, RFC 3339 date-time (inclusive), e.g. '2026-08-03T00:00:00.000Z'.
    - **timeTo** `string` (required) — End of the report window, RFC 3339 date-time (inclusive). Must not be in the future — RingCentral rejects a future `timeTo` with 400 ANL-302.
  - **advancedTimeSettings** `object` — Optional finer-grained day/hour filters layered on top of `timeRange`.
    - **includeDays** `array` — Restrict the report to these days of the week only.
      - **[]** `string` (enum: "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday")
    - **includeHours** `array` — Restrict the report to these clock-time windows only.
      - **[]** `object`
        - **from** `string` (required) — Start of the interval, `hh:mm` (inclusive).
        - **to** `string` (required) — End of the interval, `hh:mm` (inclusive).
- **callFilters** `object` — Optional filters narrowing which calls are included in the aggregation.
  - **extensionFilters** `object` — Narrow by the extensions that received/placed the call.
    - **fromIds** `array` — Match calls incoming to any of these extension ids (OR).
      - **[]** `string`
    - **toIds** `array` — Match calls outgoing to any of these extension ids (OR).
      - **[]** `string`
  - **queues** `array` — Only calls routed through one of these queue extension ids.
    - **[]** `string`
  - **calledNumbers** `array` — Only calls to one of these direct company numbers.
    - **[]** `string`
  - **directions** `array` — Only calls in one of these directions.
    - **[]** `string` (enum: "Inbound", "Outbound")
  - **origins** `array` — Only calls whose initial segment had/lacked an external party.
    - **[]** `string` (enum: "Internal", "External")
  - **callResponses** `array` — Only calls with one of these first-response outcomes.
    - **[]** `string` (enum: "Answered", "NotAnswered", "Connected", "NotConnected")
  - **callResults** `array` — Only calls with one of these overall results.
    - **[]** `string` (enum: "Completed", "Abandoned", "Voicemail", "Unknown", "Missed", "Accepted")
  - **callSegments** `array` — Only calls that contain one of these segments.
    - **[]** `object`
      - **segment** `string` (required, enum: "Ringing", "LiveTalk", "Hold", "Park", "Transfer", "IvrPrompt", "Voicemail", "VmGreeting", "Setup") — The call segment that must be present.
      - **length** `object` — Optional duration bound on that segment.
        - **minSeconds** `integer` — Lower bound, in seconds (inclusive).
        - **maxSeconds** `integer` — Upper bound, in seconds (inclusive).
  - **callActions** `array` — Only calls that contain one of these actions.
    - **[]** `string` (enum: "HoldOff", "HoldOn", "ParkOn", "ParkOff", "BlindTransfer", "WarmTransfer", "DTMFTransfer")
  - **companyHours** `array` — Only calls placed inside/outside company business hours.
    - **[]** `string` (enum: "BusinessHours", "AfterHours")
  - **callDuration** `object` — Only calls within this total-length range.
    - **minSeconds** `integer` — Lower bound, in seconds (inclusive).
    - **maxSeconds** `integer` — Upper bound, in seconds (inclusive).
  - **timeSpent** `object` — Only calls where the specified mailbox(es) spent this much time on the call.
    - **minSeconds** `integer` — Lower bound, in seconds (inclusive).
    - **maxSeconds** `integer` — Upper bound, in seconds (inclusive).
  - **queueSla** `array` — Only queue calls that were in/out of SLA (Queues grouping only).
    - **[]** `string` (enum: "InSla", "OutSla")
  - **callTypes** `array` — Only calls of one of these types.
    - **[]** `string` (enum: "Direct", "FromQueue", "ParkRetrieval", "Transferred", "Outbound", "Overflow")
- **responseOptions** `object` (required) — Which counters/timers to compute and how to aggregate each.
  - **counters** `object` — Call-count breakdowns to compute.
    - **allCalls** `object` — Compute the total call count.
      - **aggregationType** `string` (required, enum: "Sum", "Average", "Max", "Min", "Percent") — How to aggregate this counter/timer. `Sum`/`Percent` ignore `aggregationInterval`; `Min`/`Max`/`Average` require it.
      - **aggregationInterval** `string` (enum: "Hour", "Day", "Week", "Month") — Bucket width for `Min`/`Max`/`Average` aggregation; unsupported for `Sum`/`Percent`.
    - **callsByDirection** `object` — Compute call count by direction.
      - **aggregationType** `string` (required, enum: "Sum", "Average", "Max", "Min", "Percent") — How to aggregate this counter/timer. `Sum`/`Percent` ignore `aggregationInterval`; `Min`/`Max`/`Average` require it.
      - **aggregationInterval** `string` (enum: "Hour", "Day", "Week", "Month") — Bucket width for `Min`/`Max`/`Average` aggregation; unsupported for `Sum`/`Percent`.
    - **callsByOrigin** `object` — Compute call count by origin.
      - **aggregationType** `string` (required, enum: "Sum", "Average", "Max", "Min", "Percent") — How to aggregate this counter/timer. `Sum`/`Percent` ignore `aggregationInterval`; `Min`/`Max`/`Average` require it.
      - **aggregationInterval** `string` (enum: "Hour", "Day", "Week", "Month") — Bucket width for `Min`/`Max`/`Average` aggregation; unsupported for `Sum`/`Percent`.
    - **callsByResponse** `object` — Compute call count by first response.
      - **aggregationType** `string` (required, enum: "Sum", "Average", "Max", "Min", "Percent") — How to aggregate this counter/timer. `Sum`/`Percent` ignore `aggregationInterval`; `Min`/`Max`/`Average` require it.
      - **aggregationInterval** `string` (enum: "Hour", "Day", "Week", "Month") — Bucket width for `Min`/`Max`/`Average` aggregation; unsupported for `Sum`/`Percent`.
    - **callsSegments** `object` — Compute call count by segment.
      - **aggregationType** `string` (required, enum: "Sum", "Average", "Max", "Min", "Percent") — How to aggregate this counter/timer. `Sum`/`Percent` ignore `aggregationInterval`; `Min`/`Max`/`Average` require it.
      - **aggregationInterval** `string` (enum: "Hour", "Day", "Week", "Month") — Bucket width for `Min`/`Max`/`Average` aggregation; unsupported for `Sum`/`Percent`.
    - **callsByResult** `object` — Compute call count by result.
      - **aggregationType** `string` (required, enum: "Sum", "Average", "Max", "Min", "Percent") — How to aggregate this counter/timer. `Sum`/`Percent` ignore `aggregationInterval`; `Min`/`Max`/`Average` require it.
      - **aggregationInterval** `string` (enum: "Hour", "Day", "Week", "Month") — Bucket width for `Min`/`Max`/`Average` aggregation; unsupported for `Sum`/`Percent`.
    - **callsByCompanyHours** `object` — Compute call count by company hours.
      - **aggregationType** `string` (required, enum: "Sum", "Average", "Max", "Min", "Percent") — How to aggregate this counter/timer. `Sum`/`Percent` ignore `aggregationInterval`; `Min`/`Max`/`Average` require it.
      - **aggregationInterval** `string` (enum: "Hour", "Day", "Week", "Month") — Bucket width for `Min`/`Max`/`Average` aggregation; unsupported for `Sum`/`Percent`.
    - **callsByQueueSla** `object` — Compute call count by queue SLA (Queues grouping only).
      - **aggregationType** `string` (required, enum: "Sum", "Average", "Max", "Min", "Percent") — How to aggregate this counter/timer. `Sum`/`Percent` ignore `aggregationInterval`; `Min`/`Max`/`Average` require it.
      - **aggregationInterval** `string` (enum: "Hour", "Day", "Week", "Month") — Bucket width for `Min`/`Max`/`Average` aggregation; unsupported for `Sum`/`Percent`.
    - **callsByActions** `object` — Compute call count by action.
      - **aggregationType** `string` (required, enum: "Sum", "Average", "Max", "Min", "Percent") — How to aggregate this counter/timer. `Sum`/`Percent` ignore `aggregationInterval`; `Min`/`Max`/`Average` require it.
      - **aggregationInterval** `string` (enum: "Hour", "Day", "Week", "Month") — Bucket width for `Min`/`Max`/`Average` aggregation; unsupported for `Sum`/`Percent`.
    - **callsByType** `object` — Compute call count by type.
      - **aggregationType** `string` (required, enum: "Sum", "Average", "Max", "Min", "Percent") — How to aggregate this counter/timer. `Sum`/`Percent` ignore `aggregationInterval`; `Min`/`Max`/`Average` require it.
      - **aggregationInterval** `string` (enum: "Hour", "Day", "Week", "Month") — Bucket width for `Min`/`Max`/`Average` aggregation; unsupported for `Sum`/`Percent`.
    - **queueOpportunities** `object` — Compute queue-opportunity count. Limited to `Users`/member (Department, Queue, Site, UserGroup) grouping.
      - **aggregationType** `string` (required, enum: "Sum") — Only `Sum` is supported for queue opportunities.
  - **timers** `object` — Call-duration breakdowns to compute.
    - **allCallsDuration** `object` — Compute the total call duration.
      - **aggregationType** `string` (required, enum: "Sum", "Average", "Max", "Min", "Percent") — How to aggregate this counter/timer. `Sum`/`Percent` ignore `aggregationInterval`; `Min`/`Max`/`Average` require it.
      - **aggregationInterval** `string` (enum: "Hour", "Day", "Week", "Month") — Bucket width for `Min`/`Max`/`Average` aggregation; unsupported for `Sum`/`Percent`.
    - **callsDurationByDirection** `object` — Compute call duration by direction.
      - **aggregationType** `string` (required, enum: "Sum", "Average", "Max", "Min", "Percent") — How to aggregate this counter/timer. `Sum`/`Percent` ignore `aggregationInterval`; `Min`/`Max`/`Average` require it.
      - **aggregationInterval** `string` (enum: "Hour", "Day", "Week", "Month") — Bucket width for `Min`/`Max`/`Average` aggregation; unsupported for `Sum`/`Percent`.
    - **callsDurationByOrigin** `object` — Compute call duration by origin.
      - **aggregationType** `string` (required, enum: "Sum", "Average", "Max", "Min", "Percent") — How to aggregate this counter/timer. `Sum`/`Percent` ignore `aggregationInterval`; `Min`/`Max`/`Average` require it.
      - **aggregationInterval** `string` (enum: "Hour", "Day", "Week", "Month") — Bucket width for `Min`/`Max`/`Average` aggregation; unsupported for `Sum`/`Percent`.
    - **callsDurationByResponse** `object` — Compute call duration by first response.
      - **aggregationType** `string` (required, enum: "Sum", "Average", "Max", "Min", "Percent") — How to aggregate this counter/timer. `Sum`/`Percent` ignore `aggregationInterval`; `Min`/`Max`/`Average` require it.
      - **aggregationInterval** `string` (enum: "Hour", "Day", "Week", "Month") — Bucket width for `Min`/`Max`/`Average` aggregation; unsupported for `Sum`/`Percent`.
    - **callsSegmentsDuration** `object` — Compute call duration by segment.
      - **aggregationType** `string` (required, enum: "Sum", "Average", "Max", "Min", "Percent") — How to aggregate this counter/timer. `Sum`/`Percent` ignore `aggregationInterval`; `Min`/`Max`/`Average` require it.
      - **aggregationInterval** `string` (enum: "Hour", "Day", "Week", "Month") — Bucket width for `Min`/`Max`/`Average` aggregation; unsupported for `Sum`/`Percent`.
    - **callsDurationByResult** `object` — Compute call duration by result.
      - **aggregationType** `string` (required, enum: "Sum", "Average", "Max", "Min", "Percent") — How to aggregate this counter/timer. `Sum`/`Percent` ignore `aggregationInterval`; `Min`/`Max`/`Average` require it.
      - **aggregationInterval** `string` (enum: "Hour", "Day", "Week", "Month") — Bucket width for `Min`/`Max`/`Average` aggregation; unsupported for `Sum`/`Percent`.
    - **callsDurationByCompanyHours** `object` — Compute call duration by company hours.
      - **aggregationType** `string` (required, enum: "Sum", "Average", "Max", "Min", "Percent") — How to aggregate this counter/timer. `Sum`/`Percent` ignore `aggregationInterval`; `Min`/`Max`/`Average` require it.
      - **aggregationInterval** `string` (enum: "Hour", "Day", "Week", "Month") — Bucket width for `Min`/`Max`/`Average` aggregation; unsupported for `Sum`/`Percent`.
    - **callsDurationByQueueSla** `object` — Compute call duration by queue SLA (Queues grouping only).
      - **aggregationType** `string` (required, enum: "Sum", "Average", "Max", "Min", "Percent") — How to aggregate this counter/timer. `Sum`/`Percent` ignore `aggregationInterval`; `Min`/`Max`/`Average` require it.
      - **aggregationInterval** `string` (enum: "Hour", "Day", "Week", "Month") — Bucket width for `Min`/`Max`/`Average` aggregation; unsupported for `Sum`/`Percent`.
    - **callsDurationByType** `object` — Compute call duration by type.
      - **aggregationType** `string` (required, enum: "Sum", "Average", "Max", "Min", "Percent") — How to aggregate this counter/timer. `Sum`/`Percent` ignore `aggregationInterval`; `Min`/`Max`/`Average` require it.
      - **aggregationInterval** `string` (enum: "Hour", "Day", "Week", "Month") — Bucket width for `Min`/`Max`/`Average` aggregation; unsupported for `Sum`/`Percent`.

## Output

- **paging** `object` (required) — Pagination metadata for `data.records`.
  - **page** `integer` (required) — The current page number.
  - **perPage** `integer` (required) — Items displayed per page.
  - **totalPages** `integer` (required) — Total number of pages in the result set.
  - **totalElements** `integer` (required) — Total number of items in the result set.
- **data** `object` (required) — Aggregation result (rc-platform.yml `AggregationResponseData` ~L41567–41579).
  - **groupedBy** `string` (required, enum: "Company", "CompanyNumbers", "Users", "Queues", "IVRs", "SharedLines", "UserGroups", "Sites", "Departments") — The grouping dimension actually applied.
  - **records** `array` — One aggregation result per grouping key.
    - **[]** `object`
      - **key** `string` (required) — The grouping key (e.g. account id, extension id).
      - **info** `object` — Human-readable label for `key`.
        - **extensionNumber** `string` — The extension number, when the key is one.
        - **name** `string` — Display name for the grouping key.
      - **timers** `object` — Requested call-duration breakdowns.
        - **allCalls** `object` — Total call duration.
          - **valueType** `string` (required, enum: "Percent", "Seconds", "Instances") — Unit of `values` (instances, seconds, or percent).
          - **values** `number` (required) — Aggregated value for all calls.
        - **callsByDirection** `object` — Call duration by direction.
          - **valueType** `string` (required, enum: "Percent", "Seconds", "Instances") — Unit of each value in `values`.
          - **values** `object` (required) — Breakdown by call direction.
            - **inbound** `number` (required) — Value for inbound calls.
            - **outbound** `number` (required) — Value for outbound calls.
        - **callsByOrigin** `object` — Call duration by origin.
          - **valueType** `string` (required, enum: "Percent", "Seconds", "Instances") — Unit of each value in `values`.
          - **values** `object` (required) — Breakdown by call origin.
            - **internal** `number` (required) — Value for internal-origin calls.
            - **external** `number` (required) — Value for external-origin calls.
        - **callsByResponse** `object` — Call duration by first response.
          - **valueType** `string` (required, enum: "Percent", "Seconds", "Instances") — Unit of each value in `values`.
          - **values** `object` (required) — Breakdown by first-response outcome.
            - **answered** `number` (required) — Value for answered calls.
            - **notAnswered** `number` (required) — Value for unanswered calls.
            - **connected** `number` (required) — Value for connected calls.
            - **notConnected** `number` (required) — Value for unconnected calls.
        - **callsSegments** `object` — Call duration by segment.
          - **valueType** `string` (required, enum: "Percent", "Seconds", "Instances") — Unit of each value in `values`.
          - **values** `object` (required) — Breakdown by call segment.
            - **ringing** `number` (required) — Value for the ringing segment.
            - **liveTalk** `number` (required) — Value for the live-talk segment.
            - **hold** `number` (required) — Value for the hold segment.
            - **park** `number` (required) — Value for the park segment.
            - **transfer** `number` (required) — Value for the transfer segment.
            - **ivrPrompt** `number` (required) — Value for the IVR-prompt segment.
            - **voicemail** `number` (required) — Value for the voicemail segment.
            - **vmGreeting** `number` (required) — Value for the voicemail-greeting segment.
            - **setup** `number` (required) — Value for the call-setup segment.
        - **callsByResult** `object` — Call duration by result.
          - **valueType** `string` (required, enum: "Percent", "Seconds", "Instances") — Unit of each value in `values`.
          - **values** `object` (required) — Breakdown by call result.
            - **completed** `number` (required) — Value for completed calls.
            - **abandoned** `number` (required) — Value for abandoned calls.
            - **voicemail** `number` (required) — Value for calls that went to voicemail.
            - **missed** `number` (required) — Value for missed calls.
            - **accepted** `number` (required) — Value for accepted calls.
            - **unknown** `number` (required) — Value for calls of unknown result.
            - **transferred** `number` — Value for transferred calls (live-observed, undocumented in the spec component).
            - **pickedUp** `number` — Value for calls picked up elsewhere (live-observed, undocumented).
            - **answeredElsewhere** `number` — Value for calls answered on another device (live-observed, undocumented).
            - **forwarded** `number` — Value for forwarded calls (live-observed, undocumented).
        - **callsByCompanyHours** `object` — Call duration by company hours.
          - **valueType** `string` (required, enum: "Percent", "Seconds", "Instances") — Unit of each value in `values`.
          - **values** `object` (required) — Breakdown by company hours.
            - **businessHours** `number` (required) — Value during company business hours.
            - **afterHours** `number` (required) — Value outside company business hours.
        - **callsByQueueSla** `object` — Call duration by queue SLA.
          - **valueType** `string` (required, enum: "Percent", "Seconds", "Instances") — Unit of each value in `values`.
          - **values** `object` (required) — Breakdown by queue SLA (Queues grouping only).
            - **inSla** `number` (required) — Value for calls within queue SLA.
            - **outOfSla** `number` (required) — Value for calls outside queue SLA.
        - **callsByType** `object` — Call duration by type.
          - **valueType** `string` (required, enum: "Percent", "Seconds", "Instances") — Unit of each value in `values`.
          - **values** `object` (required) — Breakdown by call type.
            - **direct** `number` (required) — Value for direct calls.
            - **fromQueue** `number` (required) — Value for calls routed from a queue.
            - **parkRetrieval** `number` (required) — Value for park-retrieval calls.
            - **transferred** `number` (required) — Value for transferred calls.
            - **outbound** `number` (required) — Value for outbound calls.
            - **overflow** `number` (required) — Value for overflow calls.
      - **counters** `object` — Requested call-count breakdowns.
        - **allCalls** `object` — Total call count.
          - **valueType** `string` (required, enum: "Percent", "Seconds", "Instances") — Unit of `values` (instances, seconds, or percent).
          - **values** `number` (required) — Aggregated value for all calls.
        - **callsByDirection** `object` — Call count by direction.
          - **valueType** `string` (required, enum: "Percent", "Seconds", "Instances") — Unit of each value in `values`.
          - **values** `object` (required) — Breakdown by call direction.
            - **inbound** `number` (required) — Value for inbound calls.
            - **outbound** `number` (required) — Value for outbound calls.
        - **callsByOrigin** `object` — Call count by origin.
          - **valueType** `string` (required, enum: "Percent", "Seconds", "Instances") — Unit of each value in `values`.
          - **values** `object` (required) — Breakdown by call origin.
            - **internal** `number` (required) — Value for internal-origin calls.
            - **external** `number` (required) — Value for external-origin calls.
        - **callsByResponse** `object` — Call count by first response.
          - **valueType** `string` (required, enum: "Percent", "Seconds", "Instances") — Unit of each value in `values`.
          - **values** `object` (required) — Breakdown by first-response outcome.
            - **answered** `number` (required) — Value for answered calls.
            - **notAnswered** `number` (required) — Value for unanswered calls.
            - **connected** `number` (required) — Value for connected calls.
            - **notConnected** `number` (required) — Value for unconnected calls.
        - **callsSegments** `object` — Call count by segment.
          - **valueType** `string` (required, enum: "Percent", "Seconds", "Instances") — Unit of each value in `values`.
          - **values** `object` (required) — Breakdown by call segment.
            - **ringing** `number` (required) — Value for the ringing segment.
            - **liveTalk** `number` (required) — Value for the live-talk segment.
            - **hold** `number` (required) — Value for the hold segment.
            - **park** `number` (required) — Value for the park segment.
            - **transfer** `number` (required) — Value for the transfer segment.
            - **ivrPrompt** `number` (required) — Value for the IVR-prompt segment.
            - **voicemail** `number` (required) — Value for the voicemail segment.
            - **vmGreeting** `number` (required) — Value for the voicemail-greeting segment.
            - **setup** `number` (required) — Value for the call-setup segment.
        - **callsByResult** `object` — Call count by result.
          - **valueType** `string` (required, enum: "Percent", "Seconds", "Instances") — Unit of each value in `values`.
          - **values** `object` (required) — Breakdown by call result.
            - **completed** `number` (required) — Value for completed calls.
            - **abandoned** `number` (required) — Value for abandoned calls.
            - **voicemail** `number` (required) — Value for calls that went to voicemail.
            - **missed** `number` (required) — Value for missed calls.
            - **accepted** `number` (required) — Value for accepted calls.
            - **unknown** `number` (required) — Value for calls of unknown result.
            - **transferred** `number` — Value for transferred calls (live-observed, undocumented in the spec component).
            - **pickedUp** `number` — Value for calls picked up elsewhere (live-observed, undocumented).
            - **answeredElsewhere** `number` — Value for calls answered on another device (live-observed, undocumented).
            - **forwarded** `number` — Value for forwarded calls (live-observed, undocumented).
        - **callsActions** `object` — Call count by action.
          - **valueType** `string` (required, enum: "Percent", "Seconds", "Instances") — Unit of each value in `values`.
          - **values** `object` (required) — Breakdown by call action.
            - **parkOn** `number` (required) — Value for the ParkOn action.
            - **parkOff** `number` (required) — Value for the ParkOff action.
            - **holdOn** `number` (required) — Value for the HoldOn action.
            - **holdOff** `number` (required) — Value for the HoldOff action.
            - **blindTransfer** `number` (required) — Value for the BlindTransfer action.
            - **warmTransfer** `number` (required) — Value for the WarmTransfer action.
            - **dtmfTransfer** `number` (required) — Value for the DTMFTransfer action.
        - **callsByCompanyHours** `object` — Call count by company hours.
          - **valueType** `string` (required, enum: "Percent", "Seconds", "Instances") — Unit of each value in `values`.
          - **values** `object` (required) — Breakdown by company hours.
            - **businessHours** `number` (required) — Value during company business hours.
            - **afterHours** `number` (required) — Value outside company business hours.
        - **callsByQueueSla** `object` — Call count by queue SLA.
          - **valueType** `string` (required, enum: "Percent", "Seconds", "Instances") — Unit of each value in `values`.
          - **values** `object` (required) — Breakdown by queue SLA (Queues grouping only).
            - **inSla** `number` (required) — Value for calls within queue SLA.
            - **outOfSla** `number` (required) — Value for calls outside queue SLA.
        - **callsByType** `object` — Call count by type.
          - **valueType** `string` (required, enum: "Percent", "Seconds", "Instances") — Unit of each value in `values`.
          - **values** `object` (required) — Breakdown by call type.
            - **direct** `number` (required) — Value for direct calls.
            - **fromQueue** `number` (required) — Value for calls routed from a queue.
            - **parkRetrieval** `number` (required) — Value for park-retrieval calls.
            - **transferred** `number` (required) — Value for transferred calls.
            - **outbound** `number` (required) — Value for outbound calls.
            - **overflow** `number` (required) — Value for overflow calls.
        - **queueOpportunities** `object` — Count of queue opportunities presented to the user.
          - **valueType** `string` (required, enum: "Percent", "Seconds", "Instances") — Unit of `values` (typically instances).
          - **values** `number` (required) — Aggregated value for queue opportunities.
