mirror of
https://github.com/EZ-Api/ez-api.git
synced 2026-01-13 17:47:51 +00:00
docs(api): update swagger documentation for traffic charts and trends
Regenerate API documentation to reflect recent statistics features: - Add definition for new `/admin/logs/stats/traffic-chart` endpoint - Update dashboard summary with `include_trends` parameter and new time periods - Add `DashboardTrends` and `TrafficChartResponse` data structures - Update alert types to include `traffic_spike
This commit is contained in:
@@ -179,6 +179,8 @@ definitions:
|
||||
type: integer
|
||||
latency_ms:
|
||||
type: integer
|
||||
master_id:
|
||||
type: integer
|
||||
model:
|
||||
type: string
|
||||
provider_id:
|
||||
@@ -594,9 +596,24 @@ definitions:
|
||||
items:
|
||||
$ref: '#/definitions/internal_api.TopModelStat'
|
||||
type: array
|
||||
trends:
|
||||
allOf:
|
||||
- $ref: '#/definitions/internal_api.DashboardTrends'
|
||||
description: Only present when include_trends=true
|
||||
updated_at:
|
||||
type: integer
|
||||
type: object
|
||||
internal_api.DashboardTrends:
|
||||
properties:
|
||||
error_rate:
|
||||
$ref: '#/definitions/internal_api.TrendInfo'
|
||||
latency:
|
||||
$ref: '#/definitions/internal_api.TrendInfo'
|
||||
requests:
|
||||
$ref: '#/definitions/internal_api.TrendInfo'
|
||||
tokens:
|
||||
$ref: '#/definitions/internal_api.TrendInfo'
|
||||
type: object
|
||||
internal_api.DeleteLogsRequest:
|
||||
properties:
|
||||
before:
|
||||
@@ -1053,6 +1070,54 @@ definitions:
|
||||
tokens:
|
||||
type: integer
|
||||
type: object
|
||||
internal_api.TrafficBucket:
|
||||
properties:
|
||||
breakdown:
|
||||
additionalProperties:
|
||||
$ref: '#/definitions/internal_api.TrafficMetrics'
|
||||
type: object
|
||||
time:
|
||||
type: string
|
||||
timestamp:
|
||||
type: integer
|
||||
total:
|
||||
$ref: '#/definitions/internal_api.TrafficMetrics'
|
||||
type: object
|
||||
internal_api.TrafficChartResponse:
|
||||
properties:
|
||||
buckets:
|
||||
items:
|
||||
$ref: '#/definitions/internal_api.TrafficBucket'
|
||||
type: array
|
||||
granularity:
|
||||
type: string
|
||||
models:
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
since:
|
||||
type: integer
|
||||
until:
|
||||
type: integer
|
||||
type: object
|
||||
internal_api.TrafficMetrics:
|
||||
properties:
|
||||
count:
|
||||
type: integer
|
||||
tokens_in:
|
||||
type: integer
|
||||
tokens_out:
|
||||
type: integer
|
||||
type: object
|
||||
internal_api.TrendInfo:
|
||||
properties:
|
||||
delta:
|
||||
description: Percentage change from previous period (nil if no baseline)
|
||||
type: number
|
||||
direction:
|
||||
description: '"up", "down", "stable", or "new" (no baseline)'
|
||||
type: string
|
||||
type: object
|
||||
internal_api.UpdateAccessRequest:
|
||||
properties:
|
||||
default_namespace:
|
||||
@@ -1349,7 +1414,7 @@ paths:
|
||||
name: severity
|
||||
type: string
|
||||
- description: filter by type (rate_limit, error_spike, quota_exceeded, key_disabled,
|
||||
key_expired, provider_down)
|
||||
key_expired, provider_down, traffic_spike)
|
||||
in: query
|
||||
name: type
|
||||
type: string
|
||||
@@ -2045,7 +2110,7 @@ paths:
|
||||
description: Returns aggregated metrics for dashboard display including requests,
|
||||
tokens, latency, masters, keys, and provider keys statistics
|
||||
parameters:
|
||||
- description: 'time period: today, week, month, all'
|
||||
- description: 'time period: today, week, month, last7d, last30d, all'
|
||||
in: query
|
||||
name: period
|
||||
type: string
|
||||
@@ -2057,6 +2122,10 @@ paths:
|
||||
in: query
|
||||
name: until
|
||||
type: integer
|
||||
- description: include trend data comparing to previous period
|
||||
in: query
|
||||
name: include_trends
|
||||
type: boolean
|
||||
produces:
|
||||
- application/json
|
||||
responses:
|
||||
@@ -2331,6 +2400,50 @@ paths:
|
||||
summary: Log stats (admin)
|
||||
tags:
|
||||
- admin
|
||||
/admin/logs/stats/traffic-chart:
|
||||
get:
|
||||
description: Get time × model aggregated data for stacked traffic charts. Returns
|
||||
time buckets with per-model breakdown.
|
||||
parameters:
|
||||
- description: 'Time granularity: hour (default) or minute'
|
||||
enum:
|
||||
- hour
|
||||
- minute
|
||||
in: query
|
||||
name: granularity
|
||||
type: string
|
||||
- description: Start time (unix seconds), defaults to 24h ago
|
||||
in: query
|
||||
name: since
|
||||
type: integer
|
||||
- description: End time (unix seconds), defaults to now
|
||||
in: query
|
||||
name: until
|
||||
type: integer
|
||||
- description: Number of top models to return (1-20), defaults to 5
|
||||
in: query
|
||||
name: top_n
|
||||
type: integer
|
||||
produces:
|
||||
- application/json
|
||||
responses:
|
||||
"200":
|
||||
description: OK
|
||||
schema:
|
||||
$ref: '#/definitions/internal_api.TrafficChartResponse'
|
||||
"400":
|
||||
description: Bad Request
|
||||
schema:
|
||||
$ref: '#/definitions/gin.H'
|
||||
"500":
|
||||
description: Internal Server Error
|
||||
schema:
|
||||
$ref: '#/definitions/gin.H'
|
||||
security:
|
||||
- AdminAuth: []
|
||||
summary: Traffic chart data (admin)
|
||||
tags:
|
||||
- admin
|
||||
/admin/logs/webhook:
|
||||
get:
|
||||
description: Returns current webhook notification config
|
||||
|
||||
Reference in New Issue
Block a user