openapi: 3.2.0
info:
title: Webex Historical Analytics APIs API
version: 1.0.0
description: 'Operations tagged Historical Analytics APIs across 2 of this provider''s published API definitions: webex-admin-openapi.json,
webex-historical-analytics-apis-api-openapi.yml. Each path carries the servers of the definition it was published in.'
x-provenance:
method: harvested
authored_by: Cisco Webex
harvested_by: API Evangelist
harvested_on: '2026-08-19'
first_party: true
note: Published by Cisco. Retrieved unmodified except for this x-provenance block.
provider_published: true
derived_view: Per-tag view of webex-admin-openapi.json, the provider's source document. Operations and schemas are the
provider's, unmodified; only the partition is ours.
derived_from: webex-admin-openapi.json
operation_coverage: 3/3
x-evidence:
- type: source
url: https://github.com/webex/webex-openapi-specs/blob/main/public-spec/webex-admin.json
- type: raw
url: https://raw.githubusercontent.com/webex/webex-openapi-specs/main/public-spec/webex-admin.json
tags:
- name: Historical Analytics APIs
paths:
/v1/analytics/messagingMetrics/dailyTotals:
get:
responses:
'200':
description: OK
headers: {}
content:
application/json:
schema:
type: object
properties:
startDate:
type: string
example: '2020-08-01'
description: UTC start date of the data set.
endDate:
type: string
example: '2020-08-03'
description: UTC end date of the data set.
metrics:
type: object
properties:
dates:
type: string
example: '[''2020-08-01'',''2020-08-02'']'
description: An Array containing the UTC dates for which the data is returned.
dailyActiveUsers:
type: string
example: '[200, 300]'
description: An array containing the aggregated values for each day for which the data is returned.
totalMessagesSent:
type: string
example: '[2000, 3000]'
deskTopMessagesSent:
type: string
example: '[289, 456]'
mobileMessagesSent:
type: string
example: '[122, 233]'
totalActiveSpaces:
type: string
example: '[2,3]'
groupActiveSpaces:
type: string
example: '[3,4]'
one2oneActiveSpaces:
type: string
example: '[5,6]'
video:
type: string
sharing:
type: object
properties:
totalFilesShared:
type: string
example: '[1,2]'
fileShareSize:
type: string
example: '`[6,7]` ## Bytes'
recording:
type: string
audio:
type: string
example:
startDate: '2020-08-01'
endDate: '2020-08-03'
metrics:
dates: '[''2020-08-01'',''2020-08-02'']'
dailyActiveUsers: '[200, 300]'
totalMessagesSent: '[2000, 3000]'
deskTopMessagesSent: '[289, 456]'
mobileMessagesSent: '[122, 233]'
totalActiveSpaces: '[2,3]'
groupActiveSpaces: '[3,4]'
one2oneActiveSpaces: '[5,6]'
video: ''
sharing:
totalFilesShared: '[1,2]'
fileShareSize: '`[6,7]` ## Bytes'
recording: ''
audio: ''
'400':
description: 'Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message
will explain further.'
'401':
description: 'Unauthorized: Authentication credentials were missing or incorrect.'
'403':
description: 'Forbidden: The request is understood, but it has been refused or access is not allowed.'
'404':
description: 'Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist.
Also returned when the requested format is not supported by the requested method.'
'405':
description: 'Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported.'
'409':
description: 'Conflict: The request could not be processed because it conflicts with some established rule of the
system. For example, a person may not be added to a room more than once.'
'410':
description: 'Gone: The requested resource is no longer available.'
'415':
description: 'Unsupported Media Type: The request was made to a resource without specifying a media type or used
a media type that is not supported.'
'423':
description: 'Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that
specifies how many seconds you need to wait before attempting the request again.'
'428':
description: 'Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded.'
'429':
description: 'Too Many Requests: Too many requests have been sent in a given amount of time and the request has
been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before
a successful request can be made.'
'500':
description: 'Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact
the [Webex Developer Support team](/explore/support).'
'502':
description: 'Bad Gateway: The server received an invalid response from an upstream server while processing the
request. Try again later.'
'503':
description: 'Service Unavailable: Server is overloaded with requests. Try again later.'
'504':
description: 'Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please
try to reduce it.'
summary: Historical Data related to Messaging
operationId: Historical Data related to Messaging
description: 'Returns daily aggregates of various metrics related to Webex messaging.
<div><Callout type="error">The base URL for these APIs is **analytics.webexapis.com**, which does not work with the
**Try It** feature. </Callout></div>'
tags:
- Historical Analytics APIs
parameters:
- name: from
in: query
description: UTC date starting from which the data needs to be returned.
example: '2020-08-01'
schema:
type: string
default: Data related to the date mentioned in 'to' parameter if 'from' parameter is not provided. If neither 'from'
nor 'to' are provided then yesterday's data is returned.
- name: to
in: query
description: UTC date up to which the data needs to be returned
example: '2020-08-03'
schema:
type: string
default: Data from the date mentioned in 'from' parameter up to yesterday if 'to' parameter is not provided. If
neither 'from' nor 'to' are provided then yesterday's data is returned. Yesterday's data would be the latest data
returned.
/v1/analytics/roomDeviceMetrics/dailyTotals:
get:
responses:
'200':
description: OK
headers: {}
content:
application/json:
schema:
type: object
properties:
startDate:
type: string
example: '2020-08-01'
description: Data is returned starting from this UTC date.
endDate:
type: string
example: '2020-08-03'
description: Data is returned up to this UTC date.
metrics:
type: object
properties:
dates:
type: string
example: '[''2020-08-01'',''2020-08-02'']'
description: An Array containing the UTC dates for which the data is returned
totalActiveDevices:
type: string
example: '[200,300]'
description: An array containing the aggregated values for each day for which the data is returned.
totalAssistantCommands:
type: string
example: '[2,3]'
totalUsageHours:
type: string
example: '[100,100]'
incallUsageDuration:
type: string
example: '[50,50]'
signageUsageDuration:
type: string
example: '[1,1]'
usbpassthroughUsageDuration:
type: string
example: '[1,2]'
whiteboardingUsageDuration:
type: string
example: '[3,4]'
video:
type: string
sharing:
type: object
properties:
localsharingcableUsageDuration:
type: string
example: '[1,1]'
localsharingwirelessUsageDuration:
type: string
example: '[2,2]'
recording:
type: string
audio:
type: string
example:
startDate: '2020-08-01'
endDate: '2020-08-03'
metrics:
dates: '[''2020-08-01'',''2020-08-02'']'
totalActiveDevices: '[200,300]'
totalAssistantCommands: '[2,3]'
totalUsageHours: '[100,100]'
incallUsageDuration: '[50,50]'
signageUsageDuration: '[1,1]'
usbpassthroughUsageDuration: '[1,2]'
whiteboardingUsageDuration: '[3,4]'
video: ''
sharing:
localsharingcableUsageDuration: '[1,1]'
localsharingwirelessUsageDuration: '[2,2]'
recording: ''
audio: ''
'400':
description: 'Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message
will explain further.'
'401':
description: 'Unauthorized: Authentication credentials were missing or incorrect.'
'403':
description: 'Forbidden: The request is understood, but it has been refused or access is not allowed.'
'404':
description: 'Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist.
Also returned when the requested format is not supported by the requested method.'
'405':
description: 'Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported.'
'409':
description: 'Conflict: The request could not be processed because it conflicts with some established rule of the
system. For example, a person may not be added to a room more than once.'
'410':
description: 'Gone: The requested resource is no longer available.'
'415':
description: 'Unsupported Media Type: The request was made to a resource without specifying a media type or used
a media type that is not supported.'
'423':
description: 'Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that
specifies how many seconds you need to wait before attempting the request again.'
'428':
description: 'Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded.'
'429':
description: 'Too Many Requests: Too many requests have been sent in a given amount of time and the request has
been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before
a successful request can be made.'
'500':
description: 'Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact
the [Webex Developer Support team](/explore/support).'
'502':
description: 'Bad Gateway: The server received an invalid response from an upstream server while processing the
request. Try again later.'
'503':
description: 'Service Unavailable: Server is overloaded with requests. Try again later.'
'504':
description: 'Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please
try to reduce it.'
summary: Historical Data related to Room Devices
operationId: Historical Data related to Room Devices
description: 'Returns daily aggregates of various metrics related to Room Devices.
<div><Callout type="error">The base URL for these APIs is **analytics.webexapis.com**, which does not work with the
**Try It** feature. </Callout></div>'
tags:
- Historical Analytics APIs
parameters:
- name: from
in: query
description: Starting UTC Date from which historical data should be returned.
example: '2020-08-01'
schema:
type: string
default: Data related to the date specified in 'to' if 'from' is not provided. If neither 'from' nor 'to' are provided
then yesterday's data is returned.
- name: to
in: query
description: Ending UTC Date for which data should be returned.
example: '2020-08-03'
schema:
type: string
default: Data from the date mentioned in 'from' parameter up to yesterday if 'to' parameter is not provided. Yesterday's
data is returned if neither 'from' nor 'to' are provided. Yesterday is the latest day the data series will contain.
/v1/analytics/meetingsMetrics/aggregates:
get:
responses:
'200':
description: OK
headers: {}
content:
application/json:
schema:
type: object
properties:
siteUrl:
type: string
example: cisco.webex.com
description: Site related to which the data is returned.
startDate:
type: string
example: '2020-08-01'
description: UTC start date of the data set.
endDate:
type: string
example: '2020-08-03'
description: UTC end date of the data set.
metrics:
type: object
properties:
totalMeetings:
type: number
example: 123
description: Total number of meetings held over the selected date range. includes Webex Meetings,
Webex Events, Webex Support, and Webex Training sessions
totalParticipants:
type: number
example: 123
description: Total number of joins by participant and devices from all Webex meetings over the selected
date range
totalUniqueHosts:
type: number
example: 123
description: Total number of unique hosts who started at least one webex meeting over the selected
date range
totalMeetingMinutes:
type: number
example: 1234
description: Total number of minutes for all meetings over selected date range
totalAudioMinutes:
type: number
example: 1234
description: Total number of VoIP and telephony minutes used during meetings over the selected date
range
totalTelephoneMinutes:
type: number
example: 1234
totalVoIPMinutes:
type: number
example: 1234
videoMeetings:
type: number
example: 123
description: Total number of meetings held where at least one participant enabled video for any amount
of time
sharingMeetings:
type: number
example: 123
description: Total number of meetings held where at least one participant enabled sharing for any
amount of time
recordingMeetings:
type: number
example: 123
description: Total number of meetings held where at least one participant enable recording for any
amount of time
participantsByJoinMethods:
type: object
properties:
webApp:
type: number
example: 123
cloudVideoDevice:
type: number
example: 123
mobileMeetingsApp:
type: number
example: 123
description: Participant Count for each join/client type. This list is dynamic and can change
participantsByRoles:
type: object
properties:
host:
type: number
example: 123
attendee:
type: number
example: 123
description: Participant Count for each Role
participantsByLocation:
type: array
items:
type: object
properties:
country:
type: string
example: United States
totalParticipants:
type: number
example: 123
description: Participant Count for each Location. This is a json array of countries
example:
siteUrl: cisco.webex.com
startDate: '2020-08-01'
endDate: '2020-08-03'
metrics:
totalMeetings: 123
totalParticipants: 123
totalUniqueHosts: 123
totalMeetingMinutes: 1234
totalAudioMinutes: 1234
totalTelephoneMinutes: 1234
totalVoIPMinutes: 1234
videoMeetings: 123
sharingMeetings: 123
recordingMeetings: 123
participantsByJoinMethods:
webApp: 123
cloudVideoDevice: 123
mobileMeetingsApp: 123
participantsByRoles:
host: 123
attendee: 123
participantsByLocation:
- country: United States
totalParticipants: 123
'400':
description: 'Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message
will explain further.'
'401':
description: 'Unauthorized: Authentication credentials were missing or incorrect.'
'403':
description: 'Forbidden: The request is understood, but it has been refused or access is not allowed.'
'404':
description: 'Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist.
Also returned when the requested format is not supported by the requested method.'
'405':
description: 'Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported.'
'409':
description: 'Conflict: The request could not be processed because it conflicts with some established rule of the
system. For example, a person may not be added to a room more than once.'
'410':
description: 'Gone: The requested resource is no longer available.'
'415':
description: 'Unsupported Media Type: The request was made to a resource without specifying a media type or used
a media type that is not supported.'
'423':
description: 'Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that
specifies how many seconds you need to wait before attempting the request again.'
'428':
description: 'Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded.'
'429':
description: 'Too Many Requests: Too many requests have been sent in a given amount of time and the request has
been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before
a successful request can be made.'
'500':
description: 'Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact
the [Webex Developer Support team](/explore/support).'
'502':
description: 'Bad Gateway: The server received an invalid response from an upstream server while processing the
request. Try again later.'
'503':
description: 'Service Unavailable: Server is overloaded with requests. Try again later.'
'504':
description: 'Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please
try to reduce it.'
summary: Historical Data related to Meetings
operationId: Historical Data related to Meetings
description: 'Return aggregates of various metrics related to meetings for a given Webex site over a specified time
range.
<div><Callout type="error">The base URL for these APIs is **analytics.webexapis.com**, which does not work with the
**Try It** feature.</Callout></div>'
tags:
- Historical Analytics APIs
parameters:
- name: siteUrl
in: query
description: URL of the Webex site for which historical data is requested.
required: true
example: cisco.webex.com
schema:
type: string
- name: from
in: query
description: UTC Date starting from which the data needs to be returned
example: '2020-08-01'
schema:
type: string
default: Data related to the date mentioned in 'to' parameter if 'from' parameter is not provided. Yesterday's data
if neither 'from' nor 'to' are provided
- name: to
in: query
description: UTC Date up to which the data needs to be returned
example: '2020-08-03'
schema:
type: string
default: Data from the date mentioned in 'from' parameter up to yesterday if 'to' parameter is not provided. Yesterday's
data is returned if neither 'from' nor 'to' are provided. Yesterday is the earliest date for which there will
be results.
components:
securitySchemes:
oauth2:
flows:
authorizationCode:
authorizationUrl: /
scopes: {}
tokenUrl: /
type: oauth2
bearer-key:
type: http
description: e.g. Bearer YOUR_AUTHORIZATION_TOKEN
scheme: bearer
bearerFormat: JWT
bearerAuth:
type: oauth2
description: OAuth 2.0 Bearer token authentication
flows:
authorizationCode:
authorizationUrl: https://webexapis.com/v1/authorize
tokenUrl: https://webexapis.com/v1/access_token
scopes:
spark:applications_token: Create access tokens for Service Apps
x-refined-from:
- webex-admin-openapi.json
- webex-historical-analytics-apis-api-openapi.yml