openapi: 3.2.0 info: title: ADEM data Rum Controller API version: 2.1.1 description: "This API provides access to the Autonomous Digital Experience Management timeseries data.\nAll responses are aggregates over a period of time specified by the start, end, or timerange query parameters. \nThe aggregrate used for each field will depend on the field type. For simple numerical types, for example application score, \nthe aggregate will typically be an average (for example, scores or metrics). In some cases, it may be a maximum, minimum, or sum. \nFor string fields, it may be a comma separated concatenation of distinct values in the sample period. This spec was created on February 13, 2026. © 2026 Palo Alto Networks, Inc." servers: - url: https://api.sase.paloaltonetworks.com security: - jwt: [] tags: - name: RumController paths: /adem/telemetry/v2/measure/rum/metric: get: x-controller-name: RumController x-operation-name: getRumMetric tags: - RumController summary: Real User Metrics responses: '200': description: Real User Metrics content: application/json: schema: oneOf: - $ref: '#/components/schemas/RumMetricSummary' - $ref: '#/components/schemas/RumMetricSeries' - $ref: '#/components/schemas/RumMetricDistribution' - $ref: '#/components/schemas/RumMetricSummaryCollection' - $ref: '#/components/schemas/RumMetricSeriesCollection' '400': description: Invalid Request '401': description: Invalid Client '500': description: Server Error parameters: - name: start in: query required: false schema: type: integer format: int64 maximum: 2147483648 description: sample start time in seconds (unix epoch) - name: end in: query required: false schema: type: integer format: int64 maximum: 2147483648 description: sample end time in seconds (unix epoch) - name: timerange in: query required: false schema: type: string description: A time range e.g 'last_3_hours', 'last_7_days' - name: truncate-timerange in: query required: false schema: type: boolean description: round timestamps to nearest sample period default: true - name: filter in: query required: false schema: type: string description: filter results e.g. application==zoom-meeting or application==zoom-meeting, application==Gmail - name: Prisma-Tenant in: header schema: type: string description: Tenant ( tenant_service_group or tenant_service_group:subtenant ) required: true - name: Prisma-SubTenant in: header schema: type: string description: SubTenant required: false - name: Prisma-Client-RequestId in: header schema: type: string description: optional request identifier required: false - name: response-type in: query required: true schema: type: string enum: - timeseries - summary - distribution - grouped-summary - grouped-timeseries - grouped-distribution - name: group in: query required: false schema: type: string description: entity to group results by (e.g. Entity.user or Entity.user,Entity.endpoint) - name: include in: query required: false schema: type: string description: include entity counts e.g. EntityCounts.endpoint,EntityCounts.user - name: result-filter in: query required: false schema: type: string description: aggregate filter e.g. Score.application==poor,fair or MuAgent.selfServeUserEnabled==false - name: pagination in: query required: false schema: type: string description: paginate results (e.g. page==0;limit==10;sortBy==application;sortOrder==asc operationId: RumController.getRumMetric description: Retrieve the metric details through this endpoint. /adem/telemetry/v2/measure/rum/score: get: x-controller-name: RumController x-operation-name: getRumScore tags: - RumController summary: Real User Metrics Score responses: '200': description: Real User Metrics Score content: application/json: schema: oneOf: - $ref: '#/components/schemas/RumScoreSummary' - $ref: '#/components/schemas/RumScoreSeries' - $ref: '#/components/schemas/RumScoreDistributionCollection' - $ref: '#/components/schemas/RumScoreSummaryCollection' - $ref: '#/components/schemas/RumScoreSeriesCollection' '400': description: Invalid Request '401': description: Invalid Client '500': description: Server Error parameters: - name: start in: query required: false schema: type: integer format: int64 maximum: 2147483648 description: sample start time in seconds (unix epoch) - name: end in: query required: false schema: type: integer format: int64 maximum: 2147483648 description: sample end time in seconds (unix epoch) - name: timerange in: query required: false schema: type: string description: A time range e.g 'last_3_hours', 'last_7_days' - name: truncate-timerange in: query required: false schema: type: boolean description: round timestamps to nearest sample period default: true - name: filter in: query required: false schema: type: string description: filter results e.g. application==zoom-meeting or application==zoom-meeting, application==Gmail - name: Prisma-Tenant in: header schema: type: string description: Tenant ( tenant_service_group or tenant_service_group:subtenant ) required: true - name: Prisma-SubTenant in: header schema: type: string description: SubTenant required: false - name: Prisma-Client-RequestId in: header schema: type: string description: optional request identifier required: false - name: response-type in: query required: true schema: type: string enum: - timeseries - summary - distribution - grouped-summary - grouped-timeseries - grouped-distribution - name: group in: query required: false schema: type: string description: entity to group results by (e.g. Entity.user or Entity.user,Entity.endpoint) - name: include in: query required: false schema: type: string description: include entity counts e.g. EntityCounts.endpoint,EntityCounts.user - name: result-filter in: query required: false schema: type: string description: aggregate filter e.g. Score.application==poor,fair or MuAgent.selfServeUserEnabled==false - name: pagination in: query required: false schema: type: string description: paginate results (e.g. page==0;limit==10;sortBy==application;sortOrder==asc - name: distribution-by in: query required: false schema: type: string description: distribution entity e.g. Entity.user or Entity.endpoint - name: distribution-score in: query required: false schema: type: string description: Score entity to run distribution on (e.g if endpointScore is specified, distribution will be based on it) operationId: RumController.getRumScore description: Retrieve the score details through this endpoint. components: schemas: RumScoreDistributionCollection: title: RumScoreDistributionCollection type: object properties: startTime: type: number description: sample start time (Unix timestamp) endTime: type: number description: sample end time (Unix timestamp) endpointType: type: string description: 'endpoint type : muAgent, muProbe, rnAgent, rnProbe' tenantServiceGroup: type: string description: array of tenant service groups pagination: $ref: '#/components/schemas/Pagination' rowCount: type: number classifier: type: string description: score classifier e.g. poor:[0 - 30],fair:[30 - 70],good:[70 - 100] entityCounts: $ref: '#/components/schemas/RumEntity' collection: type: array items: $ref: '#/components/schemas/RumScoreDistribution' additionalProperties: false RumMetricSummaryCollection: title: RumMetricSummaryCollection type: object properties: startTime: type: number description: sample start time (Unix timestamp) endTime: type: number description: sample end time (Unix timestamp) endpointType: type: string description: 'endpoint type : muAgent, muProbe, rnAgent, rnProbe' tenantServiceGroup: type: string description: array of tenant service groups pagination: $ref: '#/components/schemas/Pagination' rowCount: type: number collection: type: array items: $ref: '#/components/schemas/RumMetricSummary' additionalProperties: false MuInternet: title: MuInternet type: object properties: username: type: string operatingSystem: type: string computerName: type: string model: type: string country: type: string city: type: string globalProtectGatewayLocation: type: string asnOrgName: type: string totalMemoryBytes: type: number selfServeConfigEnabled: type: boolean selfServeUserEnabled: type: boolean wifiLinkQualityNotification: type: number wifiSsidChangeNotification: type: number internetConnectivityNotification: type: number systemCpuNotification: type: number systemMemoryNotification: type: number systemCpuMemoryNotification: type: number wifiConnectivityNotification: type: number totalNotifications: type: number proxyType: type: string proxyHost: type: string proxyPort: type: number onRampType: type: number proxyComputeRegion: type: string additionalProperties: false Pagination: title: Pagination type: object properties: page: type: number description: page number limit: type: number description: page limit sortBy: type: string description: sort by field sortOrder: type: string description: 'sort order : asc, desc' enabled: type: boolean additionalProperties: false RumAgent: title: RumAgent type: object properties: username: type: string operatingSystem: type: string computerName: type: string model: type: string country: type: string city: type: string agentGlobalProtectGatewayLocation: type: string asnOrgName: type: string selfServeConfigEnabled: type: boolean selfServeUserEnabled: type: boolean wifiLinkQualityNotification: type: number wifiSsidChangeNotification: type: number internetConnectivityNotification: type: number systemCpuNotification: type: number systemMemoryNotification: type: number systemCpuMemoryNotification: type: number wifiConnectivityNotification: type: number totalNotifications: type: number proxyType: type: string proxyHost: type: string proxyPort: type: number onRampType: type: number proxyComputeRegion: type: string gwType: type: number description: Gateway type. PRISMA_ACCESS = 1 or NGFW_GPGW = 2 additionalProperties: false RumMetricSeries: title: RumMetricSeries type: object properties: startTime: type: number description: sample start time (Unix timestamp) endTime: type: number description: sample end time (Unix timestamp) endpointType: type: string description: 'endpoint type : muAgent, muProbe, rnAgent, rnProbe' tenantServiceGroup: type: string description: array of tenant service groups pagination: $ref: '#/components/schemas/Pagination' rowCount: type: number id: type: string samplePeriod: type: number description: sample period in seconds series: type: array items: $ref: '#/components/schemas/RumMetric' seriesEntityCount: type: array items: $ref: '#/components/schemas/RumEntity' required: - id additionalProperties: false RumScore: title: RumScore type: object properties: sample: type: number description: sample time (Unix timestamp) source: type: number endpointScore: type: number wlan: type: number lan: type: number vpnUnderlay: type: number vpnOverlay: type: number application: type: number explicitProxy: type: number applicationSegmentImpactTime: type: number browserTypes: type: string description: aggregated list of multiple browser types (comma separated string) rcas: type: array items: type: object description: list of information about rcas across all the levels rcaNames: type: string description: aggregated list of rcas (comma separated string) additionalProperties: false RumMetric: title: RumMetric type: object properties: sample: type: number description: sample time (Unix timestamp) source: type: number rumPageViewCount: type: number rumPageViewGoodScoreCount: type: number rumPageViewFairScoreCount: type: number rumPageViewPoorScoreCount: type: number endpointScore: type: number explicitProxy: type: number wlan: type: number lan: type: number vpnUnderlay: type: number vpnOverlay: type: number application: type: number rumUniquePathCount: type: number rumInp: type: number rumLcp: type: number rumTtfb: type: number rumFid: type: number rumCls: type: number rumSystemCpuUsage: type: number rumSystemMemoryUsage: type: number rumSystemMemoryTotalUsage: type: number totalRumDomainTime: type: number allSegmentImpactTime: type: number deviceSegmentImpactTime: type: number wlanSegmentImpactTime: type: number lanSegmentImpactTime: type: number vpnUnderlaySegmentImpactTime: type: number applicationSegmentImpactTime: type: number allImpactTime: type: number allImpactPageCount: type: number gwImpactTime: type: number gwImpactPageCount: type: number applicationImpactTime: type: number applicationImpactPageCount: type: number applicationOutageImpactTime: type: number applicationOutagePageCount: type: number applicationDegradedImpactTime: type: number applicationDegradedPageCount: type: number applicationTtfbImpactTime: type: number applicationTtfbPageCount: type: number applicationLcpImpactTime: type: number applicationLcpPageCount: type: number applicationInpImpactTime: type: number applicationInpPageCount: type: number deviceImpactTime: type: number deviceImpactPageCount: type: number deviceCpuImpactTime: type: number deviceCpuImpactPageCount: type: number deviceMemImpactTime: type: number deviceMemImpactPageCount: type: number wifiImpactTime: type: number wifiImpactPageCount: type: number wifiRssiImpactTime: type: number wifiRssiImpactPageCount: type: number lanImpactTime: type: number lanImpactPageCount: type: number lanJitterImpactTime: type: number lanJitterImpactPageCount: type: number lanPacketlossImpactTime: type: number lanPacketlossImpactPageCount: type: number lanRttImpactTime: type: number lanRttImpactPageCount: type: number underlayImpactTime: type: number underlayImpactPageCount: type: number underlayJitterImpactTime: type: number underlayJitterImpactPageCount: type: number underlayPacketlossImpactTime: type: number underlayPacketlossImpactPageCount: type: number underlayRttImpactTime: type: number underlayRttImpactPageCount: type: number availability: type: number allImpactDomainCount: type: number rumDomainCount: type: number gwImpactDomainCount: type: number applicationImpactDomainCount: type: number applicationOutageDomainCount: type: number applicationDegradedDomainCount: type: number applicationTtfbDomainCount: type: number applicationInpDomainCount: type: number applicationLcpDomainCount: type: number deviceImpactDomainCount: type: number deviceCpuImpactDomainCount: type: number deviceMemImpactDomainCount: type: number wifiImpactDomainCount: type: number wifiRssiImpactDomainCount: type: number lanImpactDomainCount: type: number lanJitterImpactDomainCount: type: number lanPacketlossImpactDomainCount: type: number lanRttImpactDomainCount: type: number underlayImpactDomainCount: type: number underlayJitterImpactDomainCount: type: number underlayPacketlossImpactDomainCount: type: number underlayRttImpactDomainCount: type: number rcaApplication: type: number rcaDevice: type: number agentRcaWifi: type: number agentRcaLan: type: number agentRcaUnderlay: type: number agentGlobalProtectVersions: type: string description: list of all gp versions (`,` separated) agentGPVersions: type: array items: type: object description: list of all gp versions along with prisma_access_agent browsers: type: array items: type: object description: list of information about multiple browsers (type and version) computerName: type: string operatingSystem: type: string pageView: type: array items: $ref: '#/components/schemas/RumPageView' additionalProperties: false RumEntity: title: RumEntity type: object properties: tenantServiceGroup: type: string username: type: string usergroups: type: string domain: type: string agentUuid: type: string agentApplicationName: type: string macAddress: type: string agentGlobalProtectGatewayLocation: type: string source: type: number country: type: string countryName: type: string city: type: string baseAppId: type: string testName: type: string paRouteType: type: number gwType: type: number description: Gateway type. PRISMA_ACCESS = 1 or NGFW_GPGW = 2 browserType: type: string description: PAB=1 CB=2 Chrome=3 Edge=4 Firefox=5 Safari=6 rcaL1: type: number rcaL2: type: number rcaL3Segment1: type: number rcaL3Segment2: type: number rcaL3Segment3: type: number rcaL4Segment1: type: number rcaNames: type: string rcas: type: array items: type: object description: list of information about rcas across all the levels additionalProperties: false RumMetricDistribution: title: RumMetricDistribution type: object properties: startTime: type: number description: sample start time (Unix timestamp) endTime: type: number description: sample end time (Unix timestamp) endpointType: type: string description: 'endpoint type : muAgent, muProbe, rnAgent, rnProbe' tenantServiceGroup: type: string description: array of tenant service groups pagination: $ref: '#/components/schemas/Pagination' rowCount: type: number id: type: string classifier: type: string description: score classifier e.g. poor:[0 - 30],fair:[30 - 70],good:[70 - 100] entityCounts: $ref: '#/components/schemas/RumEntity' distribution: $ref: '#/components/schemas/Distribution' additionalProperties: false Distribution: title: Distribution type: object properties: sample: type: number score: type: number description: average of all scores in distribution clients: type: number description: count of distribution entity e.g. application tests, endpoints poor: type: number description: count of scores classified as poor poorValues: type: array items: type: string fair: type: number description: count of scores classified as fair fairValues: type: array items: type: string good: type: number description: count of scores classified as good goodValues: type: array items: type: string unclassified: type: number description: count of unclassified scores additionalProperties: false RumScoreSummary: title: RumScoreSummary type: object properties: startTime: type: number description: sample start time (Unix timestamp) endTime: type: number description: sample end time (Unix timestamp) endpointType: type: string description: 'endpoint type : muAgent, muProbe, rnAgent, rnProbe' tenantServiceGroup: type: string description: array of tenant service groups pagination: $ref: '#/components/schemas/Pagination' rowCount: type: number id: type: string average: $ref: '#/components/schemas/RumScore' entityCounts: $ref: '#/components/schemas/RumEntity' agentProperties: $ref: '#/components/schemas/RumAgent' testProperties: $ref: '#/components/schemas/MuInternet' required: - id additionalProperties: false RumPageView: title: RumPageView type: object properties: path: type: string protocol: type: string httpStatusCode: type: number durationMs: type: number activeTimeSec: type: number ttfbMs: type: number lcpMs: type: number cls: type: number dnsMs: type: number fcpMs: type: number tcpMs: type: number rdirMs: type: number tlsMs: type: number srtMs: type: number dttMs: type: number dclMs: type: number fidMs: type: number appScore: type: number pageLoadTimeMs: type: number inpCount: type: number inpMs: type: number lcpScore: type: number ttfbScore: type: number inpScore: type: number additionalProperties: false RumMetricSeriesCollection: title: RumMetricSeriesCollection type: object properties: startTime: type: number description: sample start time (Unix timestamp) endTime: type: number description: sample end time (Unix timestamp) endpointType: type: string description: 'endpoint type : muAgent, muProbe, rnAgent, rnProbe' tenantServiceGroup: type: string description: array of tenant service groups pagination: $ref: '#/components/schemas/Pagination' rowCount: type: number collection: type: array items: $ref: '#/components/schemas/RumMetricSeries' samplePeriod: type: number description: sample period in seconds additionalProperties: false RumScoreDistribution: title: RumScoreDistribution type: object properties: startTime: type: number description: sample start time (Unix timestamp) endTime: type: number description: sample end time (Unix timestamp) endpointType: type: string description: 'endpoint type : muAgent, muProbe, rnAgent, rnProbe' tenantServiceGroup: type: string description: array of tenant service groups pagination: $ref: '#/components/schemas/Pagination' rowCount: type: number id: type: string classifier: type: string description: score classifier e.g. poor:[0 - 30],fair:[30 - 70],good:[70 - 100] entityCounts: $ref: '#/components/schemas/RumEntity' distribution: $ref: '#/components/schemas/Distribution' additionalProperties: false RumScoreSeriesCollection: title: RumScoreSeriesCollection type: object properties: startTime: type: number description: sample start time (Unix timestamp) endTime: type: number description: sample end time (Unix timestamp) endpointType: type: string description: 'endpoint type : muAgent, muProbe, rnAgent, rnProbe' tenantServiceGroup: type: string description: array of tenant service groups pagination: $ref: '#/components/schemas/Pagination' rowCount: type: number collection: type: array items: $ref: '#/components/schemas/RumScoreSeries' samplePeriod: type: number description: sample period in seconds additionalProperties: false RumScoreSummaryCollection: title: RumScoreSummaryCollection type: object properties: startTime: type: number description: sample start time (Unix timestamp) endTime: type: number description: sample end time (Unix timestamp) endpointType: type: string description: 'endpoint type : muAgent, muProbe, rnAgent, rnProbe' tenantServiceGroup: type: string description: array of tenant service groups pagination: $ref: '#/components/schemas/Pagination' rowCount: type: number collection: type: array items: $ref: '#/components/schemas/RumScoreSummary' additionalProperties: false RumMetricSummary: title: RumMetricSummary type: object properties: startTime: type: number description: sample start time (Unix timestamp) endTime: type: number description: sample end time (Unix timestamp) endpointType: type: string description: 'endpoint type : muAgent, muProbe, rnAgent, rnProbe' tenantServiceGroup: type: string description: array of tenant service groups pagination: $ref: '#/components/schemas/Pagination' rowCount: type: number id: type: string average: $ref: '#/components/schemas/RumMetric' agentProperties: $ref: '#/components/schemas/RumAgent' entityCounts: $ref: '#/components/schemas/RumEntity' required: - id additionalProperties: false RumScoreSeries: title: RumScoreSeries type: object properties: startTime: type: number description: sample start time (Unix timestamp) endTime: type: number description: sample end time (Unix timestamp) endpointType: type: string description: 'endpoint type : muAgent, muProbe, rnAgent, rnProbe' tenantServiceGroup: type: string description: array of tenant service groups pagination: $ref: '#/components/schemas/Pagination' rowCount: type: number id: type: string samplePeriod: type: number description: sample period in seconds series: type: array items: $ref: '#/components/schemas/RumScore' seriesEntityCount: type: array items: $ref: '#/components/schemas/RumEntity' required: - id additionalProperties: false securitySchemes: jwt: type: http scheme: bearer bearerFormat: JWT