{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/emporix/main/json-schema/emporix-agent-analytics-response-schema.json",
  "title": "AgentAnalyticsResponse",
  "description": "Combined analytics payload for admin and partner dashboards.",
  "x-generated": "2026-10-18",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/emporix-ai-service-openapi.yml#/components/schemas/AgentAnalyticsResponse",
  "type": "object",
  "properties": {
    "requests": {
      "$ref": "#/$defs/AnalyticsLogMetrics"
    },
    "sessions": {
      "$ref": "#/$defs/AnalyticsSessionMetrics"
    },
    "resolutionEfficiency": {
      "$ref": "#/$defs/AnalyticsResolutionEfficiency"
    },
    "requestTrend": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/AnalyticsRequestTrendPoint"
      }
    },
    "sessionTrend": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/AnalyticsSessionTrendPoint"
      }
    }
  },
  "$defs": {
    "AnalyticsLogMetrics": {
      "type": "object",
      "properties": {
        "total": {
          "type": "integer",
          "description": "Total number of request logs in scope."
        },
        "bySeverity": {
          "$ref": "#/$defs/AnalyticsSeverityCounts"
        },
        "errorRate": {
          "type": "number",
          "format": "double",
          "description": "Share of error-severity logs among request logs."
        }
      }
    },
    "AnalyticsRequestTrendPoint": {
      "type": "object",
      "properties": {
        "date": {
          "type": "string",
          "format": "date-time",
          "description": "Week start instant (UTC)."
        },
        "total": {
          "type": "integer"
        },
        "errors": {
          "type": "integer"
        },
        "errorRate": {
          "type": "number",
          "format": "double"
        }
      }
    },
    "AnalyticsResolutionEfficiency": {
      "type": "object",
      "properties": {
        "requestsPerSession": {
          "type": "number",
          "format": "double",
          "description": "Average number of requests per session."
        },
        "totalRequests": {
          "type": "integer"
        },
        "totalSessions": {
          "type": "integer"
        }
      }
    },
    "AnalyticsSessionMetrics": {
      "type": "object",
      "properties": {
        "total": {
          "type": "integer",
          "description": "Total number of sessions in scope."
        },
        "bySeverity": {
          "$ref": "#/$defs/AnalyticsSessionSeverityCounts"
        },
        "errorRate": {
          "type": "number",
          "format": "double",
          "description": "Share of error outcome sessions among sessions."
        }
      }
    },
    "AnalyticsSessionSeverityCounts": {
      "type": "object",
      "description": "Session counts by outcome severity.",
      "properties": {
        "success": {
          "type": "integer"
        },
        "warning": {
          "type": "integer"
        },
        "error": {
          "type": "integer"
        }
      }
    },
    "AnalyticsSessionTrendPoint": {
      "type": "object",
      "properties": {
        "date": {
          "type": "string",
          "format": "date-time",
          "description": "Week start instant (UTC)."
        },
        "totalSessions": {
          "type": "integer"
        },
        "errorSessions": {
          "type": "integer"
        },
        "errorRate": {
          "type": "number",
          "format": "double"
        }
      }
    },
    "AnalyticsSeverityCounts": {
      "type": "object",
      "description": "Request log counts by severity.",
      "properties": {
        "info": {
          "type": "integer"
        },
        "warning": {
          "type": "integer"
        },
        "error": {
          "type": "integer"
        }
      }
    }
  }
}