openapi: 3.2.0 info: title: Portal Ops IQ API version: 0.1.0 description: '**Requires Premium Ops IQ license** (`ops-iq-premium`). The Ops IQ Telemetry API is available only to accounts with the Premium Ops IQ license bit enabled. Reach out to your Nasuni account team or Support to enable Premium Ops IQ access before using these endpoints. For more information, see the [Ops IQ Documentation](https://docs.nasuni.com/docs/ops-iq-1).' servers: - url: https://am1.portal.api.nasuni.com description: Base URL for accounts assigned the US region. - url: https://eu1.portal.api.nasuni.com description: Base URL for accounts assigned the EU region. - url: https://ap1.portal.api.nasuni.com description: Base URL for accounts assigned the Asia-Pacific region. security: - HTTPBearer: [] tags: - name: Ops IQ description: '**Requires Premium Ops IQ license** (`ops-iq-premium`). The Ops IQ Telemetry API is available only to accounts with the Premium Ops IQ license bit enabled. Reach out to your Nasuni account team or Support to enable Premium Ops IQ access before using these endpoints. For more information, see the [Ops IQ Documentation](https://docs.nasuni.com/docs/ops-iq-1).' paths: /telemetry/appliances/{serial_number}/load_average: post: tags: - Ops IQ summary: Get Appliance Load Average description: Get load average telemetry for an appliance. operationId: get_appliance_load_avg_telemetry_appliances__serial_number__load_average_post security: - HTTPBearer: [] parameters: - name: serial_number in: path required: true schema: type: string format: uuid title: Serial Number requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApplianceTelemetryRequestDto' responses: '200': description: Load average telemetry retrieved successfully content: application/json: schema: $ref: '#/components/schemas/ApplianceTelemetryCpuLoadAvgGraphDto' '401': description: Not authenticated content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '403': description: Insufficient permissions or license content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '404': description: Resource not found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '408': description: Request timeout content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '413': description: Payload too large content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '422': description: Invalid input data content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '429': description: Too many requests (rate limit exceeded) content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '500': description: Internal server error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' /telemetry/appliances/{serial_number}/cache_disk_io_time: post: tags: - Ops IQ summary: Get Appliance Cache Disk I/O Time description: Get cache disk I/O time telemetry for an appliance. operationId: get_appliance_cache_disk_io_time_telemetry_appliances__serial_number__cache_disk_io_time_post security: - HTTPBearer: [] parameters: - name: serial_number in: path required: true schema: type: string format: uuid title: Serial Number requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApplianceTelemetryRequestDto' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ApplianceTelemetryCacheDiskLatencyDto' '401': description: Not authenticated content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '403': description: Insufficient permissions or license content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '404': description: Resource not found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '408': description: Request timeout content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '413': description: Payload too large content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '422': description: Invalid input data content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '429': description: Too many requests (rate limit exceeded) content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '500': description: Internal server error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' /telemetry/appliances/{serial_number}/cache_disk_io_latency: post: tags: - Ops IQ summary: Get Appliance Cache Disk IO Latency description: Get cache disk IO latency telemetry for an appliance. operationId: get_appliance_cache_disk_io_latency_telemetry_appliances__serial_number__cache_disk_io_latency_post security: - HTTPBearer: [] parameters: - name: serial_number in: path required: true schema: type: string format: uuid title: Serial Number requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApplianceTelemetryRequestDto' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ApplianceTelemetryCacheDiskIoLatencyDto' '401': description: Not authenticated content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '403': description: Insufficient permissions or license content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '404': description: Resource not found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '408': description: Request timeout content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '413': description: Payload too large content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '422': description: Invalid input data content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '429': description: Too many requests (rate limit exceeded) content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '500': description: Internal server error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' /telemetry/appliances/{serial_number}/cache_disk_iops: post: tags: - Ops IQ summary: Get Appliance Cache Disk IOPS description: Get cache disk IOPS telemetry for an appliance. operationId: get_appliance_cache_disk_iops_telemetry_appliances__serial_number__cache_disk_iops_post security: - HTTPBearer: [] parameters: - name: serial_number in: path required: true schema: type: string format: uuid title: Serial Number requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApplianceTelemetryRequestDto' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ApplianceTelemetryCacheDiskIoDto' '401': description: Not authenticated content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '403': description: Insufficient permissions or license content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '404': description: Resource not found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '408': description: Request timeout content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '413': description: Payload too large content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '422': description: Invalid input data content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '429': description: Too many requests (rate limit exceeded) content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '500': description: Internal server error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' /telemetry/appliances/{serial_number}/cache_hits_misses: post: tags: - Ops IQ summary: Get Appliance Cache Hits/Misses description: Get cache hits and misses telemetry for an appliance. operationId: get_appliance_cache_hits_misses_telemetry_appliances__serial_number__cache_hits_misses_post security: - HTTPBearer: [] parameters: - name: serial_number in: path required: true schema: type: string format: uuid title: Serial Number requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApplianceTelemetryRequestDto' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ApplianceTelemetryCacheHitsMissesDto' '401': description: Not authenticated content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '403': description: Insufficient permissions or license content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '404': description: Resource not found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '408': description: Request timeout content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '413': description: Payload too large content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '422': description: Invalid input data content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '429': description: Too many requests (rate limit exceeded) content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '500': description: Internal server error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' /telemetry/appliances/{serial_number}/cache_utilization: post: tags: - Ops IQ summary: Get Appliance Cache Utilization description: Get cache utilization telemetry for an appliance. operationId: get_appliance_cache_utilization_telemetry_appliances__serial_number__cache_utilization_post security: - HTTPBearer: [] parameters: - name: serial_number in: path required: true schema: type: string format: uuid title: Serial Number requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApplianceTelemetryRequestDto' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ApplianceTelemetryCacheUtilizationDto' '401': description: Not authenticated content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '403': description: Insufficient permissions or license content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '404': description: Resource not found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '408': description: Request timeout content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '413': description: Payload too large content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '422': description: Invalid input data content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '429': description: Too many requests (rate limit exceeded) content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '500': description: Internal server error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' /telemetry/appliances/{serial_number}/cow_disk_iops: post: tags: - Ops IQ summary: Get Appliance CoW Disk IOPS description: Get CoW disk IOPS telemetry for an appliance. operationId: get_appliance_cow_disk_iops_telemetry_appliances__serial_number__cow_disk_iops_post security: - HTTPBearer: [] parameters: - name: serial_number in: path required: true schema: type: string format: uuid title: Serial Number requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApplianceTelemetryRequestDto' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ApplianceTelemetryCowDiskIoDto' '401': description: Not authenticated content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '403': description: Insufficient permissions or license content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '404': description: Resource not found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '408': description: Request timeout content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '413': description: Payload too large content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '422': description: Invalid input data content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '429': description: Too many requests (rate limit exceeded) content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '500': description: Internal server error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' /telemetry/appliances/{serial_number}/cow_disk_io_time: post: tags: - Ops IQ summary: Get Appliance CoW Disk I/O Time description: Get CoW disk I/O time telemetry for an appliance. operationId: get_appliance_cow_disk_io_time_telemetry_appliances__serial_number__cow_disk_io_time_post security: - HTTPBearer: [] parameters: - name: serial_number in: path required: true schema: type: string format: uuid title: Serial Number requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApplianceTelemetryRequestDto' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ApplianceTelemetryCowDiskLatencyDto' '401': description: Not authenticated content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '403': description: Insufficient permissions or license content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '404': description: Resource not found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '408': description: Request timeout content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '413': description: Payload too large content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '422': description: Invalid input data content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '429': description: Too many requests (rate limit exceeded) content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '500': description: Internal server error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' /telemetry/appliances/{serial_number}/cow_disk_io_latency: post: tags: - Ops IQ summary: Get Appliance CoW Disk IO Latency description: Get CoW disk IO latency telemetry for an appliance. operationId: get_appliance_cow_disk_io_latency_telemetry_appliances__serial_number__cow_disk_io_latency_post security: - HTTPBearer: [] parameters: - name: serial_number in: path required: true schema: type: string format: uuid title: Serial Number requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApplianceTelemetryRequestDto' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ApplianceTelemetryCowDiskIoLatencyDto' '401': description: Not authenticated content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '403': description: Insufficient permissions or license content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '404': description: Resource not found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '408': description: Request timeout content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '413': description: Payload too large content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '422': description: Invalid input data content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '429': description: Too many requests (rate limit exceeded) content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '500': description: Internal server error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' /telemetry/appliances/{serial_number}/file_iq_disk_iops: post: tags: - Ops IQ summary: Get Appliance File IQ DB Disk IOPS description: Get File IQ disk IOPS telemetry for an appliance. operationId: get_appliance_file_iq_disk_iops_telemetry_appliances__serial_number__file_iq_disk_iops_post security: - HTTPBearer: [] parameters: - name: serial_number in: path required: true schema: type: string format: uuid title: Serial Number requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApplianceTelemetryRequestDto' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ApplianceTelemetryFileIqDiskIoDto' '401': description: Not authenticated content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '403': description: Insufficient permissions or license content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '404': description: Resource not found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '408': description: Request timeout content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '413': description: Payload too large content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '422': description: Invalid input data content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '429': description: Too many requests (rate limit exceeded) content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '500': description: Internal server error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' /telemetry/appliances/{serial_number}/file_iq_disk_io_time: post: tags: - Ops IQ summary: Get Appliance File IQ DB Disk I/O Time description: Get File IQ disk I/O time telemetry for an appliance. operationId: get_appliance_file_iq_disk_io_time_telemetry_appliances__serial_number__file_iq_disk_io_time_post security: - HTTPBearer: [] parameters: - name: serial_number in: path required: true schema: type: string format: uuid title: Serial Number requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApplianceTelemetryRequestDto' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ApplianceTelemetryFileIqDiskLatencyDto' '401': description: Not authenticated content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '403': description: Insufficient permissions or license content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '404': description: Resource not found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '408': description: Request timeout content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '413': description: Payload too large content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '422': description: Invalid input data content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '429': description: Too many requests (rate limit exceeded) content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '500': description: Internal server error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' /telemetry/appliances/{serial_number}/file_iq_disk_io_latency: post: tags: - Ops IQ summary: Get Appliance File IQ DB Disk IO Latency description: Get File IQ disk IO latency telemetry for an appliance. operationId: get_appliance_file_iq_disk_io_latency_telemetry_appliances__serial_number__file_iq_disk_io_latency_post security: - HTTPBearer: [] parameters: - name: serial_number in: path required: true schema: type: string format: uuid title: Serial Number requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApplianceTelemetryRequestDto' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ApplianceTelemetryFileIqDiskIoLatencyDto' '401': description: Not authenticated content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '403': description: Insufficient permissions or license content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '404': description: Resource not found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '408': description: Request timeout content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '413': description: Payload too large content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '422': description: Invalid input data content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '429': description: Too many requests (rate limit exceeded) content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '500': description: Internal server error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' /telemetry/appliances/{serial_number}/cpu_utilization: post: tags: - Ops IQ summary: Get Appliance CPU Utilization description: Get CPU usage telemetry for an appliance. operationId: get_appliance_cpu_usage_telemetry_appliances__serial_number__cpu_utilization_post security: - HTTPBearer: [] parameters: - name: serial_number in: path required: true schema: type: string format: uuid title: Serial Number requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApplianceTelemetryRequestDto' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ApplianceTelemetryCpuUsageDto' '401': description: Not authenticated content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '403': description: Insufficient permissions or license content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '404': description: Resource not found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '408': description: Request timeout content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '413': description: Payload too large content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '422': description: Invalid input data content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '429': description: Too many requests (rate limit exceeded) content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '500': description: Internal server error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' /telemetry/appliances/{serial_number}/memory_utilization: post: tags: - Ops IQ summary: Get Appliance Memory Utilization description: Get memory utilization telemetry for an appliance. operationId: get_appliance_memory_utilization_telemetry_appliances__serial_number__memory_utilization_post security: - HTTPBearer: [] parameters: - name: serial_number in: path required: true schema: type: string format: uuid title: Serial Number requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApplianceTelemetryRequestDto' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ApplianceTelemetryMemoryUtilizationDto' '401': description: Not authenticated content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '403': description: Insufficient permissions or license content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '404': description: Resource not found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '408': description: Request timeout content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '413': description: Payload too large content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '422': description: Invalid input data content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '429': description: Too many requests (rate limit exceeded) content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '500': description: Internal server error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' /telemetry/appliances/{serial_number}/memory_utilization_details: post: tags: - Ops IQ summary: Get Appliance Memory Utilization Details description: Get detailed memory utilization telemetry for an appliance. operationId: get_appliance_memory_utilization_details_telemetry_appliances__serial_number__memory_utilization_details_post security: - HTTPBearer: [] parameters: - name: serial_number in: path required: true schema: type: string format: uuid title: Serial Number requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApplianceTelemetryRequestDto' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ApplianceTelemetryMemoryUtilizationDetailsDto' '401': description: Not authenticated content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '403': description: Insufficient permissions or license content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '404': description: Resource not found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '408': description: Request timeout content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '413': description: Payload too large content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '422': description: Invalid input data content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '429': description: Too many requests (rate limit exceeded) content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '500': description: Internal server error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' /telemetry/appliances/{serial_number}/network_utilization: post: tags: - Ops IQ summary: Get Appliance Network Utilization description: Get network utilization telemetry for an appliance. operationId: get_appliance_network_utilization_telemetry_appliances__serial_number__network_utilization_post security: - HTTPBearer: [] parameters: - name: serial_number in: path required: true schema: type: string format: uuid title: Serial Number requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApplianceTelemetryRequestDto' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ApplianceTelemetryNetworkThroughputDto' '401': description: Not authenticated content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '403': description: Insufficient permissions or license content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '404': description: Resource not found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '408': description: Request timeout content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '413': description: Payload too large content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '422': description: Invalid input data content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '429': description: Too many requests (rate limit exceeded) content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '500': description: Internal server error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' /telemetry/appliances/{serial_number}/os_disk_io_time: post: tags: - Ops IQ summary: Get Appliance OS Disk I/O Time description: Get OS disk I/O time telemetry for an appliance. operationId: get_appliance_os_disk_io_time_telemetry_appliances__serial_number__os_disk_io_time_post security: - HTTPBearer: [] parameters: - name: serial_number in: path required: true schema: type: string format: uuid title: Serial Number requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApplianceTelemetryRequestDto' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ApplianceTelemetryOsDiskLatencyDto' '401': description: Not authenticated content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '403': description: Insufficient permissions or license content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '404': description: Resource not found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '408': description: Request timeout content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '413': description: Payload too large content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '422': description: Invalid input data content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '429': description: Too many requests (rate limit exceeded) content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '500': description: Internal server error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' /telemetry/appliances/{serial_number}/os_disk_io_latency: post: tags: - Ops IQ summary: Get Appliance OS Disk IO Latency description: Get OS disk IO latency telemetry for an appliance. operationId: get_appliance_os_disk_io_latency_telemetry_appliances__serial_number__os_disk_io_latency_post security: - HTTPBearer: [] parameters: - name: serial_number in: path required: true schema: type: string format: uuid title: Serial Number requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApplianceTelemetryRequestDto' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ApplianceTelemetryOsDiskIoLatencyDto' '401': description: Not authenticated content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '403': description: Insufficient permissions or license content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '404': description: Resource not found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '408': description: Request timeout content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '413': description: Payload too large content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '422': description: Invalid input data content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '429': description: Too many requests (rate limit exceeded) content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '500': description: Internal server error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' /telemetry/appliances/{serial_number}/os_disk_iops: post: tags: - Ops IQ summary: Get Appliance OS Disk IOPS description: Get OS disk IOPS telemetry for an appliance. operationId: get_appliance_os_disk_iops_telemetry_appliances__serial_number__os_disk_iops_post security: - HTTPBearer: [] parameters: - name: serial_number in: path required: true schema: type: string format: uuid title: Serial Number requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApplianceTelemetryRequestDto' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ApplianceTelemetryOsDiskIoDto' '401': description: Not authenticated content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '403': description: Insufficient permissions or license content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '404': description: Resource not found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '408': description: Request timeout content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '413': description: Payload too large content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '422': description: Invalid input data content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '429': description: Too many requests (rate limit exceeded) content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '500': description: Internal server error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' /telemetry/appliances/{serial_number}/smb_connections: post: tags: - Ops IQ summary: Get Appliance SMB Connections description: Get SMB connections telemetry for an appliance. operationId: get_appliance_smb_connections_telemetry_appliances__serial_number__smb_connections_post security: - HTTPBearer: [] parameters: - name: serial_number in: path required: true schema: type: string format: uuid title: Serial Number requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApplianceTelemetryRequestDto' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ApplianceTelemetrySMBConnectionsDto' '401': description: Not authenticated content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '403': description: Insufficient permissions or license content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '404': description: Resource not found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '408': description: Request timeout content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '413': description: Payload too large content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '422': description: Invalid input data content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '429': description: Too many requests (rate limit exceeded) content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '500': description: Internal server error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' /telemetry/appliances/{serial_number}/current_appliance_performance: post: tags: - Ops IQ summary: Get Current Appliance Performance description: Get current appliance performance telemetry for an appliance. Health is based on the last 30 minutes of data. operationId: get_current_appliance_performance_telemetry_appliances__serial_number__current_appliance_performance_post security: - HTTPBearer: [] parameters: - name: serial_number in: path required: true schema: type: string format: uuid title: Serial Number requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApplianceTelemetryDurationRequestDto' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ApplianceTelemetryCorePerformanceDto' '401': description: Not authenticated content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '403': description: Insufficient permissions or license content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '404': description: Resource not found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '408': description: Request timeout content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '413': description: Payload too large content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '422': description: Invalid input data content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '429': description: Too many requests (rate limit exceeded) content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '500': description: Internal server error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' /telemetry/appliances/{serial_number}/appliance_health_score: post: tags: - Ops IQ summary: Get Appliance Health Score description: Get health score telemetry for an appliance. operationId: get_appliance_health_score_telemetry_appliances__serial_number__appliance_health_score_post security: - HTTPBearer: [] parameters: - name: serial_number in: path required: true schema: type: string format: uuid title: Serial Number requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApplianceHealthScoreRequestDto' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ApplianceHealthScoreDto' '401': description: Not authenticated content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '403': description: Insufficient permissions or license content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '404': description: Resource not found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '408': description: Request timeout content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '413': description: Payload too large content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '422': description: Invalid input data content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '429': description: Too many requests (rate limit exceeded) content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '500': description: Internal server error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' /telemetry/volumes/{volume_id}/average_time_to_protect: post: tags: - Ops IQ summary: Get Volume Average Time To Protect description: Get protection mean telemetry for a volume. operationId: get_volume_average_time_to_protect_telemetry_volumes__volume_id__average_time_to_protect_post security: - HTTPBearer: [] parameters: - name: volume_id in: path required: true schema: type: string title: Volume Id requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/VolumeTelemetryRequestDto' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/VolumeTelemetryProtectMeanDto' '401': description: Not authenticated content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '403': description: Insufficient permissions or license content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '404': description: Resource not found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '408': description: Request timeout content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '413': description: Payload too large content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '422': description: Invalid input data content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '429': description: Too many requests (rate limit exceeded) content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '500': description: Internal server error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' /telemetry/volumes/{volume_id}/snapshot_timeline: post: tags: - Ops IQ summary: Get Volume Snapshot Timeline description: Get push timeline telemetry for a volume. operationId: get_volume_snapshot_timeline_telemetry_volumes__volume_id__snapshot_timeline_post security: - HTTPBearer: [] parameters: - name: volume_id in: path required: true schema: type: string title: Volume Id requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/VolumeTelemetryRequestDto' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/VolumeTelemetryPushTimelineDto' '401': description: Not authenticated content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '403': description: Insufficient permissions or license content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '404': description: Resource not found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '408': description: Request timeout content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '413': description: Payload too large content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '422': description: Invalid input data content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '429': description: Too many requests (rate limit exceeded) content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '500': description: Internal server error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' /telemetry/volumes/{volume_id}/snapshot_content: post: tags: - Ops IQ summary: Get Volume Snapshot Content description: Get object counts telemetry for a volume. operationId: get_volume_snapshot_content_telemetry_volumes__volume_id__snapshot_content_post security: - HTTPBearer: [] parameters: - name: volume_id in: path required: true schema: type: string title: Volume Id requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/VolumeTelemetryRequestDto' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/VolumeTelemetryObjectCountsDto' '401': description: Not authenticated content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '403': description: Insufficient permissions or license content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '404': description: Resource not found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '408': description: Request timeout content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '413': description: Payload too large content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '422': description: Invalid input data content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '429': description: Too many requests (rate limit exceeded) content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '500': description: Internal server error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' /telemetry/volumes/{volume_id}/snapshot_details: post: tags: - Ops IQ summary: Get Volume Snapshot Details description: Get snapshot details telemetry for a volume. operationId: get_volume_snapshot_details_telemetry_volumes__volume_id__snapshot_details_post security: - HTTPBearer: [] parameters: - name: volume_id in: path required: true schema: type: string title: Volume Id requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/VolumeTelemetryRequestDto' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/VolumeTelemetrySnapshotDetailsDto' '401': description: Not authenticated content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '403': description: Insufficient permissions or license content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '404': description: Resource not found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '408': description: Request timeout content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '413': description: Payload too large content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '422': description: Invalid input data content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '429': description: Too many requests (rate limit exceeded) content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '500': description: Internal server error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' /telemetry/volumes/{volume_id}/snapshot_propagation_by_appliance: post: tags: - Ops IQ summary: Get Volume Snapshot Propagation by Appliance description: Get snapshot propagation telemetry by appliance for a volume. operationId: get_volume_snapshot_propagation_by_appliance_telemetry_volumes__volume_id__snapshot_propagation_by_appliance_post security: - HTTPBearer: [] parameters: - name: volume_id in: path required: true schema: type: string title: Volume Id requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/VolumeTelemetryRequestDto' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/VolumeTelemetrySnapshotPropagationDto' '401': description: Not authenticated content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '403': description: Insufficient permissions or license content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '404': description: Resource not found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '408': description: Request timeout content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '413': description: Payload too large content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '422': description: Invalid input data content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '429': description: Too many requests (rate limit exceeded) content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '500': description: Internal server error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' components: schemas: VolumeTelemetryRequestDto: properties: period: type: string title: Period description: 'Time period in ISO 8601 format. Examples: ''PT1H'' (last 1 hour), ''P1D'' (last 1 day), ''2025-01-01T00:00:00Z/2025-01-02T00:00:00Z'' (specific interval), or millisecond timestamps ''1730390400000/1730476800000''. Minimum range: 6 minutes.' serial_numbers: items: type: string format: uuid type: array title: Serial Numbers description: Appliance serial numbers to filter data - ensures stability across DR events chart_width: anyOf: - type: integer maximum: 5200 minimum: 100 - type: 'null' title: Chart Width description: Chart width in pixels (100-5200) - affects sampling density smart_sampling: anyOf: - type: boolean - type: 'null' title: Smart Sampling description: Enable optimized dataset for trend analysis with faster load times type: object required: - period - serial_numbers title: VolumeTelemetryRequestDto description: Request DTO for volume telemetry data (volume_id is in URL path). ApplianceTelemetryCpuLoadAvgGraphDto: properties: metadata: additionalProperties: true type: object title: Metadata description: Telemetry metadata (help text, metric definitions) items: items: additionalProperties: true type: object type: array title: Items description: List of CPU load average records num_cores: anyOf: - type: integer - type: 'null' title: Num Cores description: CPU core count used for load comparison. Null when the core count is unavailable. type: object required: - items - num_cores title: ApplianceTelemetryCpuLoadAvgGraphDto description: CPU load average graph data with core count VolumeTelemetryProtectMeanRecords: properties: appliance: type: string title: Appliance description: Appliance name/description serial_number: type: string title: Serial Number description: Appliance serial number snapshots: items: $ref: '#/components/schemas/VolumeTelemetryProtectMeanRecord' type: array title: Snapshots description: Snapshot protection mean records for this appliance type: object required: - appliance - serial_number title: VolumeTelemetryProtectMeanRecords description: Volume protection mean records grouped by appliance. VolumeTelemetrySnapshotDetailsRecord: properties: appliance: type: string title: Appliance description: Appliance name/description serial_number: type: string title: Serial Number description: Appliance serial number volume: type: string title: Volume description: Volume identifier time: type: integer title: Time description: Timestamp in milliseconds when snapshot completed (same as metadata_snapshot_end) protect_mean: anyOf: - type: string pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$ - type: 'null' title: Protect Mean description: Average time in seconds for files to be protected during this snapshot protect_max: anyOf: - type: string pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$ - type: 'null' title: Protect Max description: Max time in seconds any file took to be protected during this snapshot data_snapshot_start: anyOf: - type: integer - type: 'null' title: Data Snapshot Start description: Timestamp in ms when P1 (data phase) started. Null=GFL-only snapshot data_snapshot_end: anyOf: - type: integer - type: 'null' title: Data Snapshot End description: Timestamp in ms when P1 (data phase) ended. Null=GFL-only snapshot metadata_snapshot_start: type: integer title: Metadata Snapshot Start description: Timestamp in ms when P2 (metadata phase) started metadata_snapshot_end: type: integer title: Metadata Snapshot End description: Timestamp in ms when P2 (metadata phase) ended (snapshot completion) oud: anyOf: - type: integer - type: 'null' title: Oud description: Oldest unprotected data age in seconds - time since oldest file was last protected file_count_ngl: anyOf: - type: integer - type: 'null' title: File Count Ngl description: Count of non-GFL files in snapshot. Null=GFL-only snapshot file_count_gl: anyOf: - type: integer - type: 'null' title: File Count Gl description: Count of Global File Lock files in snapshot file_count_total: anyOf: - type: integer - type: 'null' title: File Count Total description: Total count of all files in snapshot (NGL + GFL) dir_count: type: integer title: Dir Count description: Count of directories in snapshot volume_version: type: integer title: Volume Version description: Sequential snapshot version number for this volume type: object required: - appliance - serial_number - volume - time - metadata_snapshot_start - metadata_snapshot_end - dir_count - volume_version title: VolumeTelemetrySnapshotDetailsRecord description: 'Volume snapshot metadata record per appliance. This provides detailed snapshot information for each appliance, including: - When the data snapshot phase (P1) started and ended - When the metadata snapshot phase (P2) started and ended - Protection metrics and file counts at the time of snapshot' ApplianceTelemetryDiskLatencyRecord: properties: time: type: integer title: Time description: Timestamp in milliseconds io_time: anyOf: - type: string pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$ - type: 'null' title: Io Time description: Time in milliseconds spent on I/O operations weighted_io_time: anyOf: - type: string pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$ - type: 'null' title: Weighted Io Time description: Weighted I/O time in ms - much higher than io_time indicates saturation type: object required: - time title: ApplianceTelemetryDiskLatencyRecord description: Appliance disk latency record. ApplianceTelemetryMemoryUtilizationRecord: properties: time: type: integer title: Time description: Timestamp in milliseconds memory_used: anyOf: - type: string pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$ - type: 'null' title: Memory Used description: Amount of used memory in KB memory_cached: anyOf: - type: string pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$ - type: 'null' title: Memory Cached description: Amount of cached memory in KB memory_buffered: anyOf: - type: string pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$ - type: 'null' title: Memory Buffered description: Amount of buffered memory in KB type: object required: - time title: ApplianceTelemetryMemoryUtilizationRecord description: Appliance memory utilization record (pre-v10.0.4). ApplianceTelemetryFileIqDiskIoRecord: properties: time: type: integer title: Time description: Timestamp in milliseconds file_iq_disk_io_reads: anyOf: - type: string pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$ - type: 'null' title: File Iq Disk Io Reads description: Number of read operations per second on File IQ disk file_iq_disk_io_writes: anyOf: - type: string pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$ - type: 'null' title: File Iq Disk Io Writes description: Number of write operations per second on File IQ disk type: object required: - time title: ApplianceTelemetryFileIqDiskIoRecord description: Appliance File IQ DB Disk IOPS record. ApplianceTelemetrySMBConnectionsRecord: properties: time: type: integer title: Time description: Timestamp in milliseconds connections: anyOf: - type: integer - type: 'null' title: Connections description: Number of active SMB sessions - sudden drops may indicate network issues type: object required: - time title: ApplianceTelemetrySMBConnectionsRecord description: Appliance SMB connections record. ApplianceHealthScoreStatisticsDto: properties: cpu_count: type: integer title: Cpu Count description: Reported CPU count for the appliance used when contextualizing load default: 0 avg_load: type: string pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$ title: Avg Load description: Average load (0-n) across the sampled window rounded to two decimals default: '0' max_load: type: string pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$ title: Max Load description: Maximum load observed within the sampled window rounded to two decimals default: '0' type: object title: ApplianceHealthScoreStatisticsDto description: Summary statistics for appliance health score. ApplianceTelemetryMemoryUtilizationDetailsDto: properties: metadata: additionalProperties: true type: object title: Metadata description: Telemetry metadata (help text, metric definitions) items: items: $ref: '#/components/schemas/ApplianceTelemetryMemoryUtilizationDetailsRecord' type: array title: Items description: Detailed memory utilization records (v10.0.4+) type: object required: - items title: ApplianceTelemetryMemoryUtilizationDetailsDto description: List of appliance memory utilization details records ApplianceTelemetryCacheUtilizationRecord: properties: time: type: integer title: Time description: Timestamp in milliseconds cache_utilization: anyOf: - type: string pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$ - type: 'null' title: Cache Utilization description: Percentage (0-100) of cache disk used - near 100% causes evictions and misses type: object required: - time title: ApplianceTelemetryCacheUtilizationRecord description: Appliance cache utilization record. VolumeTelemetryProtectMeanRecord: properties: time: type: integer title: Time description: Timestamp in milliseconds protect_mean: type: string pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$ title: Protect Mean description: Average time in seconds for files to be protected during this snapshot volume_version: type: integer title: Volume Version description: Sequential snapshot version number type: object required: - time - protect_mean - volume_version title: VolumeTelemetryProtectMeanRecord description: Volume protection mean record. ApplianceTelemetryCpuUsageDto: properties: metadata: additionalProperties: true type: object title: Metadata description: Telemetry metadata (help text, metric definitions) items: items: $ref: '#/components/schemas/ApplianceTelemetryCpuUsageRecord' type: array title: Items description: List of CPU usage records type: object required: - items title: ApplianceTelemetryCpuUsageDto description: List of appliance CPU usage records ApplianceTelemetryCacheDiskIoLatencyDto: properties: metadata: additionalProperties: true type: object title: Metadata description: Telemetry metadata (help text, metric definitions) items: items: $ref: '#/components/schemas/ApplianceTelemetryDiskIoLatencyRecord' type: array title: Items description: List of disk IO latency records type: object required: - items title: ApplianceTelemetryCacheDiskIoLatencyDto description: Cache disk IO latency response with embedded metadata ApplianceTelemetryCacheHitsMissesDto: properties: metadata: additionalProperties: true type: object title: Metadata description: Telemetry metadata (help text, metric definitions) items: items: $ref: '#/components/schemas/ApplianceTelemetryCacheHitsMissesRecord' type: array title: Items description: List of cache hit and miss records type: object required: - items title: ApplianceTelemetryCacheHitsMissesDto description: List of appliance cache hits/misses records VolumeTelemetryPushTimelineMetadataEventDto: properties: phase: type: string enum: - metadata_snapshot - metadata_snapshot_failed title: Phase description: 'Event type: 2 for successful metadata snapshot (P2), -2 for failed metadata snapshot' appliance: type: string title: Appliance description: Appliance name/description serial_number: type: string title: Serial Number description: Appliance serial number start_time: type: integer title: Start Time description: Timestamp in milliseconds when metadata snapshot phase started end_time: type: integer title: End Time description: Timestamp in milliseconds when metadata snapshot phase ended volume_version: type: integer title: Volume Version description: Sequential snapshot version number type: object required: - phase - appliance - serial_number - start_time - end_time - volume_version title: VolumeTelemetryPushTimelineMetadataEventDto description: 'Volume push timeline metadata event. Represents when metadata (directory structure, file info) was pushed during snapshot creation.' ApplianceTelemetryCorePerformanceDto: properties: metadata: additionalProperties: true type: object title: Metadata description: Telemetry metadata (help text, metric definitions) cpu_util: anyOf: - type: string pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$ - type: 'null' title: Cpu Util description: CPU utilization as percentage (0-100) available_memory: anyOf: - type: string pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$ - type: 'null' title: Available Memory description: Available memory (NOC field name is memUsage but represents available) fifteen_minute_load_average: anyOf: - type: string pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$ - type: 'null' title: Fifteen Minute Load Average description: 15-min rolling average of processes in run queue or waiting for CPU time: anyOf: - type: integer - type: 'null' title: Time description: Timestamp in milliseconds uptime: anyOf: - type: integer - type: 'null' title: Uptime description: System uptime in seconds num_cores: anyOf: - type: integer - type: 'null' title: Num Cores description: Number of CPU cores available on the appliance. Null when the core count is unavailable. type: object title: ApplianceTelemetryCorePerformanceDto description: Appliance core performance metrics VolumeTelemetryProtectMeanDto: properties: metadata: additionalProperties: true type: object title: Metadata description: Telemetry metadata (help text, metric definitions) items: items: $ref: '#/components/schemas/VolumeTelemetryProtectMeanRecords' type: array title: Items description: List of protection mean records grouped by appliance type: object required: - items title: VolumeTelemetryProtectMeanDto description: List of volume protection mean records ApplianceTelemetryFileIqDiskLatencyDto: properties: metadata: additionalProperties: true type: object title: Metadata description: Telemetry metadata (help text, metric definitions) items: items: $ref: '#/components/schemas/ApplianceTelemetryDiskLatencyRecord' type: array title: Items description: List of disk I/O latency records type: object required: - items title: ApplianceTelemetryFileIqDiskLatencyDto description: File IQ disk latency response with embedded metadata VolumeTelemetryObjectCountsRecord: properties: appliance: type: string title: Appliance description: Appliance name/description serial_number: type: string title: Serial Number description: Appliance serial number time: type: integer title: Time description: Timestamp in milliseconds non_gl_file_count: anyOf: - type: integer - type: 'null' title: Non Gl File Count description: Count of non-Global File Lock files gl_file_count: anyOf: - type: integer - type: 'null' title: Gl File Count description: Count of Global File Lock files (excluded from time-to-protect) directory_count: type: integer title: Directory Count description: Count of directories volume_version: type: integer title: Volume Version description: Sequential snapshot version number type: object required: - appliance - serial_number - time - directory_count - volume_version title: VolumeTelemetryObjectCountsRecord description: Volume object counts record with appliance info. ApplianceTelemetryNetworkThroughputRecord: properties: time: type: integer title: Time description: Timestamp in milliseconds clients_in: anyOf: - type: integer - type: 'null' title: Clients In description: Bytes per second incoming from client connections clients_out: anyOf: - type: integer - type: 'null' title: Clients Out description: Bytes per second outgoing to client connections cloud_in: anyOf: - type: integer - type: 'null' title: Cloud In description: Bytes per second incoming from cloud - high values suggest data ingestion cloud_out: anyOf: - type: integer - type: 'null' title: Cloud Out description: Bytes/sec to cloud - high values suggest cache misses or restores type: object required: - time title: ApplianceTelemetryNetworkThroughputRecord description: Appliance network throughput record. VolumeTelemetryObjectCountsDto: properties: metadata: additionalProperties: true type: object title: Metadata description: Telemetry metadata (help text, metric definitions) items: items: $ref: '#/components/schemas/VolumeTelemetryObjectCountsRecord' type: array title: Items description: List of object count records (files and directories) type: object required: - items title: VolumeTelemetryObjectCountsDto description: List of volume object counts records ApplianceTelemetryCacheDiskIoRecord: properties: time: type: integer title: Time description: Timestamp in milliseconds cache_io_reads: anyOf: - type: string pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$ - type: 'null' title: Cache Io Reads description: Number of read operations per second performed by cache disk cache_io_writes: anyOf: - type: string pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$ - type: 'null' title: Cache Io Writes description: Number of write operations per second performed by cache disk type: object required: - time title: ApplianceTelemetryCacheDiskIoRecord description: Appliance cache disk I/O record. ErrorResponse: properties: message: type: string title: Message detail: anyOf: - {} - type: 'null' title: Detail type: object required: - message - detail title: ErrorResponse ApplianceTelemetryFileIqDiskIoLatencyDto: properties: metadata: additionalProperties: true type: object title: Metadata description: Telemetry metadata (help text, metric definitions) items: items: $ref: '#/components/schemas/ApplianceTelemetryDiskIoLatencyRecord' type: array title: Items description: List of disk IO latency records type: object required: - items title: ApplianceTelemetryFileIqDiskIoLatencyDto description: File IQ disk IO latency response with embedded metadata ApplianceTelemetryCowDiskIoLatencyDto: properties: metadata: additionalProperties: true type: object title: Metadata description: Telemetry metadata (help text, metric definitions) items: items: $ref: '#/components/schemas/ApplianceTelemetryDiskIoLatencyRecord' type: array title: Items description: List of disk IO latency records type: object required: - items title: ApplianceTelemetryCowDiskIoLatencyDto description: CoW disk IO latency response with embedded metadata ApplianceTelemetryCowDiskIoDto: properties: metadata: additionalProperties: true type: object title: Metadata description: Telemetry metadata (help text, metric definitions) items: items: $ref: '#/components/schemas/ApplianceTelemetryCowDiskIoRecord' type: array title: Items description: List of Copy-on-Write disk I/O records type: object required: - items title: ApplianceTelemetryCowDiskIoDto description: List of appliance CoW Disk IOPS records VolumeTelemetryPushTimelineDto: properties: metadata: additionalProperties: true type: object title: Metadata description: Telemetry metadata (help text, metric definitions) data_events: items: $ref: '#/components/schemas/VolumeTelemetryPushTimelineDataEventDto' type: array title: Data Events description: Data snapshot phase (P1) events - multiple appliances can protect concurrently metadata_events: items: $ref: '#/components/schemas/VolumeTelemetryPushTimelineMetadataEventDto' type: array title: Metadata Events description: Metadata snapshot phase (P2) events - metadata snapshots are serialized appliance_count: type: integer title: Appliance Count description: Total number of appliances involved in snapshots min_time: type: integer title: Min Time description: Earliest timestamp in milliseconds across all events max_time: type: integer title: Max Time description: Latest timestamp in milliseconds across all events type: object required: - data_events - metadata_events - appliance_count - min_time - max_time title: VolumeTelemetryPushTimelineDto description: Volume push timeline with data and metadata events. ApplianceTelemetryCowDiskIoRecord: properties: time: type: integer title: Time description: Timestamp in milliseconds cow_disk_io_reads: anyOf: - type: string pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$ - type: 'null' title: Cow Disk Io Reads description: Number of read operations per second on Copy-on-Write disk cow_disk_io_writes: anyOf: - type: string pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$ - type: 'null' title: Cow Disk Io Writes description: Number of write operations per second on Copy-on-Write disk type: object required: - time title: ApplianceTelemetryCowDiskIoRecord description: Appliance CoW Disk IOPS record. ApplianceTelemetryDurationRequestDto: properties: period: type: string title: Period description: 'Time period in ISO 8601 format. Examples: ''PT1H'' (last 1 hour), ''P1D'' (last 1 day), ''2025-01-01T00:00:00Z/2025-01-02T00:00:00Z'' (specific interval), or millisecond timestamps ''1730390400000/1730476800000''. Minimum range: 6 minutes.' type: object required: - period title: ApplianceTelemetryDurationRequestDto description: Appliance telemetry duration request with 30-day limit. VolumeTelemetrySnapshotPropagationRecord: properties: snapshot_appliance: type: string title: Snapshot Appliance description: Appliance that created the snapshot snapshot_serial_number: type: string title: Snapshot Serial Number description: Serial number of the appliance that created the snapshot snapshot_time: type: integer title: Snapshot Time description: Timestamp in milliseconds when snapshot was created snapshot_version: type: integer title: Snapshot Version description: Sequential snapshot version number sync_appliance: type: string title: Sync Appliance description: Appliance that synced the snapshot sync_serial_number: type: string title: Sync Serial Number description: Serial number of the appliance that synced the snapshot sync_time: type: integer title: Sync Time description: Timestamp in milliseconds when sync completed propagation_duration: type: integer title: Propagation Duration description: Time in milliseconds for snapshot to propagate from creation to sync completion average_propagation_duration: type: integer title: Average Propagation Duration description: Average propagation duration in milliseconds for this snapshot across all appliances deviation: type: integer title: Deviation description: Deviation from average in milliseconds (propagation_duration - average_propagation_duration) type: object required: - snapshot_appliance - snapshot_serial_number - snapshot_time - snapshot_version - sync_appliance - sync_serial_number - sync_time - propagation_duration - average_propagation_duration - deviation title: VolumeTelemetrySnapshotPropagationRecord description: Volume snapshot propagation record with baseline propagation data. VolumeTelemetrySnapshotPropagationDto: properties: metadata: additionalProperties: true type: object title: Metadata description: Telemetry metadata (help text, metric definitions) items: items: $ref: '#/components/schemas/VolumeTelemetrySnapshotPropagationRecord' type: array title: Items description: Snapshot propagation records with statistical analysis snapshot_appliances: items: type: string type: array title: Snapshot Appliances description: List of unique appliance names that created snapshots sync_appliances: items: type: string type: array title: Sync Appliances description: List of unique appliance names that synced snapshots type: object required: - items - snapshot_appliances - sync_appliances title: VolumeTelemetrySnapshotPropagationDto description: Volume snapshot propagation data with appliance lists. ApplianceTelemetryFileIqDiskIoDto: properties: metadata: additionalProperties: true type: object title: Metadata description: Telemetry metadata (help text, metric definitions) items: items: $ref: '#/components/schemas/ApplianceTelemetryFileIqDiskIoRecord' type: array title: Items type: object required: - items title: ApplianceTelemetryFileIqDiskIoDto description: List of appliance File IQ DB Disk IOPS records ValidationErrorResponse: properties: message: type: string title: Message detail: items: additionalProperties: true type: object type: array title: Detail example: - ctx: error: 'invalid length: expected length 32 for simple format, found 3' input: '123' loc: - path - id msg: 'Input should be a valid UUID, invalid length: expected length 32 for simple format, found 3' type: uuid_parsing type: object required: - message - detail title: ValidationErrorResponse ApplianceHealthScoreDescriptionDto: properties: health_status: anyOf: - type: string - type: 'null' title: Health Status description: Health status label returned by telemetry, e.g. Healthy or Warning overview: anyOf: - type: string - type: 'null' title: Overview description: High-level explanation of the appliance condition type: object title: ApplianceHealthScoreDescriptionDto description: Descriptive text returned with appliance health score. ApplianceTelemetryDiskIoLatencyRecord: properties: time: type: integer title: Time description: Timestamp in milliseconds read_latency: anyOf: - type: string pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$ - type: 'null' title: Read Latency description: Average read latency in milliseconds for the disk write_latency: anyOf: - type: string pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$ - type: 'null' title: Write Latency description: Average write latency in milliseconds for the disk type: object required: - time title: ApplianceTelemetryDiskIoLatencyRecord description: Appliance disk IO latency record with read/write latency. ApplianceTelemetryOsDiskIoDto: properties: metadata: additionalProperties: true type: object title: Metadata description: Telemetry metadata (help text, metric definitions) items: items: $ref: '#/components/schemas/ApplianceTelemetryOsDiskIoRecord' type: array title: Items description: List of OS disk I/O records type: object required: - items title: ApplianceTelemetryOsDiskIoDto description: List of appliance OS disk I/O records ApplianceTelemetryCacheDiskIoDto: properties: metadata: additionalProperties: true type: object title: Metadata description: Telemetry metadata (help text, metric definitions) items: items: $ref: '#/components/schemas/ApplianceTelemetryCacheDiskIoRecord' type: array title: Items description: List of cache disk I/O records type: object required: - items title: ApplianceTelemetryCacheDiskIoDto description: List of appliance cache disk I/O records ApplianceTelemetryMemoryUtilizationDetailsRecord: properties: time: type: integer title: Time description: Timestamp in milliseconds total: type: string pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$ title: Total description: Total memory in KB available: type: string pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$ title: Available description: Available memory in KB - memory that can be allocated without swapping shared: type: string pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$ title: Shared description: Shared memory in KB buf_rec: type: string pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$ title: Buf Rec description: Buffer/reclaimable memory in KB free: type: string pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$ title: Free description: Free memory in KB used: type: string pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$ title: Used description: Used memory in KB utilization: type: string pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$ title: Utilization description: Memory utilization as percentage (0-100) calculated as (Total - Available) / Total * 100 type: object required: - time - total - available - shared - buf_rec - free - used - utilization title: ApplianceTelemetryMemoryUtilizationDetailsRecord description: Appliance detailed memory utilization record (v10.0.4+). ApplianceTelemetryOsDiskLatencyDto: properties: metadata: additionalProperties: true type: object title: Metadata description: Telemetry metadata (help text, metric definitions) items: items: $ref: '#/components/schemas/ApplianceTelemetryDiskLatencyRecord' type: array title: Items description: List of disk I/O latency records type: object required: - items title: ApplianceTelemetryOsDiskLatencyDto description: OS disk latency response with embedded metadata ApplianceTelemetryNetworkThroughputDto: properties: metadata: additionalProperties: true type: object title: Metadata description: Telemetry metadata (help text, metric definitions) items: items: $ref: '#/components/schemas/ApplianceTelemetryNetworkThroughputRecord' type: array title: Items description: List of network throughput records type: object required: - items title: ApplianceTelemetryNetworkThroughputDto description: List of appliance network throughput records ApplianceTelemetryCacheHitsMissesRecord: properties: time: type: integer title: Time description: Timestamp in milliseconds cache_misses: anyOf: - type: integer - type: 'null' title: Cache Misses description: Cache misses requiring cloud fetch - high values suggest insufficient cache or cold data cache_reads: anyOf: - type: integer - type: 'null' title: Cache Reads description: Number of cache read operations (hits) type: object required: - time title: ApplianceTelemetryCacheHitsMissesRecord description: Appliance cache hits/misses record. VolumeTelemetryPushTimelineDataEventDto: properties: phase: type: string const: data_snapshot title: Phase description: 'Event type: 1 indicates data snapshot phase (P1)' appliance: type: string title: Appliance description: Appliance name/description serial_number: type: string title: Serial Number description: Appliance serial number start_time: type: integer title: Start Time description: Timestamp in milliseconds when data snapshot phase started end_time: type: integer title: End Time description: Timestamp in milliseconds when data snapshot phase ended type: object required: - phase - appliance - serial_number - start_time - end_time title: VolumeTelemetryPushTimelineDataEventDto description: 'Volume push timeline data event. Represents when file data was pushed to cloud storage during snapshot creation.' ApplianceTelemetryCowDiskLatencyDto: properties: metadata: additionalProperties: true type: object title: Metadata description: Telemetry metadata (help text, metric definitions) items: items: $ref: '#/components/schemas/ApplianceTelemetryDiskLatencyRecord' type: array title: Items description: List of disk I/O latency records type: object required: - items title: ApplianceTelemetryCowDiskLatencyDto description: CoW disk latency response with embedded metadata ApplianceTelemetryRequestDto: properties: period: type: string title: Period description: 'Time period in ISO 8601 format. Examples: ''PT1H'' (last 1 hour), ''P1D'' (last 1 day), ''2025-01-01T00:00:00Z/2025-01-02T00:00:00Z'' (specific interval), or millisecond timestamps ''1730390400000/1730476800000''. Minimum range: 6 minutes.' panel_width: anyOf: - type: integer maximum: 5200 minimum: 100 - type: 'null' title: Panel Width description: Panel width in pixels (100-5200) bin_size: anyOf: - type: integer maximum: 3600 minimum: 60 - type: 'null' title: Bin Size description: Bin size for data aggregation (60-3600) type: object required: - period title: ApplianceTelemetryRequestDto description: Request DTO for appliance telemetry data (filer_id is in URL path). VolumeTelemetrySnapshotDetailsDto: properties: metadata: additionalProperties: true type: object title: Metadata description: Telemetry metadata (help text, metric definitions) items: items: $ref: '#/components/schemas/VolumeTelemetrySnapshotDetailsRecord' type: array title: Items description: Raw snapshot metadata records with full details including P1/P2 phases type: object required: - items title: VolumeTelemetrySnapshotDetailsDto description: List of volume snapshot details records ApplianceHealthScoreDto: properties: metadata: additionalProperties: true type: object title: Metadata description: Telemetry metadata (help text, metric definitions) serial_number: type: string title: Serial Number description: Appliance serial number associated with this health score appliance_name: type: string title: Appliance Name description: Human-readable appliance name health_score: type: string title: Health Score description: Health score text rendered in UI (0-100 or textual state) statistics: $ref: '#/components/schemas/ApplianceHealthScoreStatisticsDto' description: Summary statistics for the appliance health score description: $ref: '#/components/schemas/ApplianceHealthScoreDescriptionDto' description: Descriptive text explaining current status raw_data: $ref: '#/components/schemas/ApplianceHealthScoreRawDataDto' description: Raw charting data for the primary appliance health metric anomaly_details: additionalProperties: true type: object title: Anomaly Details description: Additional context about detected anomalies (counts, window, metric, metadata) type: object required: - serial_number - appliance_name - health_score - statistics - description - raw_data title: ApplianceHealthScoreDto description: appliance health score response following the HealthScoreResponse contract. ApplianceTelemetryOsDiskIoRecord: properties: time: type: integer title: Time description: Timestamp in milliseconds os_disk_io_reads: anyOf: - type: string pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$ - type: 'null' title: Os Disk Io Reads description: Number of read operations per second on OS disk os_disk_io_writes: anyOf: - type: string pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$ - type: 'null' title: Os Disk Io Writes description: Number of write operations per second on OS disk type: object required: - time title: ApplianceTelemetryOsDiskIoRecord description: Appliance OS disk I/O record. ApplianceHealthScoreRequestDto: properties: period: type: string title: Period description: 'Time period in ISO 8601 format. Examples: ''PT1H'' (last 1 hour), ''P1D'' (last 1 day), ''2025-01-01T00:00:00Z/2025-01-02T00:00:00Z'' (specific interval), or millisecond timestamps ''1730390400000/1730476800000''. Minimum range: 6 minutes.' timezone_offset_minutes: type: integer maximum: 1440 minimum: -1440 title: Timezone Offset Minutes description: Client timezone offset in minutes relative to UTC. default: 0 type: object required: - period title: ApplianceHealthScoreRequestDto description: Request body for appliance health score, includes client timezone offset. ApplianceTelemetryOsDiskIoLatencyDto: properties: metadata: additionalProperties: true type: object title: Metadata description: Telemetry metadata (help text, metric definitions) items: items: $ref: '#/components/schemas/ApplianceTelemetryDiskIoLatencyRecord' type: array title: Items description: List of disk IO latency records type: object required: - items title: ApplianceTelemetryOsDiskIoLatencyDto description: OS disk IO latency response with embedded metadata ApplianceTelemetryCacheDiskLatencyDto: properties: metadata: additionalProperties: true type: object title: Metadata description: Telemetry metadata (help text, metric definitions) items: items: $ref: '#/components/schemas/ApplianceTelemetryDiskLatencyRecord' type: array title: Items description: List of disk I/O latency records type: object required: - items title: ApplianceTelemetryCacheDiskLatencyDto description: Cache disk latency response with embedded metadata ApplianceTelemetrySMBConnectionsDto: properties: metadata: additionalProperties: true type: object title: Metadata description: Telemetry metadata (help text, metric definitions) items: items: $ref: '#/components/schemas/ApplianceTelemetrySMBConnectionsRecord' type: array title: Items description: List of SMB connection records type: object required: - items title: ApplianceTelemetrySMBConnectionsDto description: List of appliance SMB connections records ApplianceTelemetryCpuUsageRecord: properties: time: type: integer title: Time description: Timestamp in milliseconds cpu_usage: anyOf: - type: string pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$ - type: 'null' title: Cpu Usage description: CPU usage percentage (0-100) - sustained high (>80%) degrades performance type: object required: - time title: ApplianceTelemetryCpuUsageRecord description: Appliance CPU usage record. ApplianceTelemetryMemoryUtilizationDto: properties: metadata: additionalProperties: true type: object title: Metadata description: Telemetry metadata (help text, metric definitions) items: items: $ref: '#/components/schemas/ApplianceTelemetryMemoryUtilizationRecord' type: array title: Items description: List of memory utilization records (pre-v10.0.4) type: object required: - items title: ApplianceTelemetryMemoryUtilizationDto description: List of appliance memory utilization records ApplianceHealthScoreRawDataRecord: properties: time: type: integer title: Time description: Timestamp in milliseconds value: anyOf: - type: string pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$ - type: 'null' title: Value description: Metric value at this timestamp type: object required: - time title: ApplianceHealthScoreRawDataRecord description: Single data point for appliance health score chart. ApplianceHealthScoreRawDataDto: properties: title: anyOf: - type: string - type: 'null' title: Title description: Chart title for the primary appliance health metric column_names: items: type: string type: array title: Column Names description: Column names used by the frontend chart data: items: $ref: '#/components/schemas/ApplianceHealthScoreRawDataRecord' type: array title: Data description: Data points for plotting type: object required: - column_names - data title: ApplianceHealthScoreRawDataDto description: Raw charting data for appliance health score. ApplianceTelemetryCacheUtilizationDto: properties: metadata: additionalProperties: true type: object title: Metadata description: Telemetry metadata (help text, metric definitions) items: items: $ref: '#/components/schemas/ApplianceTelemetryCacheUtilizationRecord' type: array title: Items description: List of cache utilization records type: object required: - items title: ApplianceTelemetryCacheUtilizationDto description: List of appliance cache utilization records securitySchemes: ServiceKeyHeader: type: apiKey in: header name: x-service-key description: Service key for programmatic API access. Must be used together with x-service-secret. ServiceSecretHeader: type: apiKey in: header name: x-service-secret description: Service secret for programmatic API access. Must be used together with x-service-key. UserKeyHeader: type: apiKey in: header name: x-user-key description: User key for user-specific API access. HTTPBearer: type: http scheme: bearer bearerFormat: JWT description: Bearer token obtained from /auth/token endpoint. OAuth2ClientCredentials: type: oauth2 description: Standard OAuth2 Client Credentials flow (RFC 6749 ยง4.4). Send `client_id` (service key) and `client_secret` (service secret) as form-encoded body parameters to the token endpoint. flows: clientCredentials: tokenUrl: /auth/token scopes: {}