@djangocfg/api 1.2.22 → 1.2.23

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (70) hide show
  1. package/dist/index.cjs +4228 -2450
  2. package/dist/index.cjs.map +1 -1
  3. package/dist/index.d.cts +3122 -738
  4. package/dist/index.d.ts +3122 -738
  5. package/dist/index.mjs +4140 -2370
  6. package/dist/index.mjs.map +1 -1
  7. package/package.json +2 -2
  8. package/src/cfg/generated/_utils/fetchers/cfg__centrifugo__centrifugo_monitoring.ts +3 -3
  9. package/src/cfg/generated/_utils/fetchers/cfg__grpc__grpc_charts.ts +138 -0
  10. package/src/cfg/generated/_utils/fetchers/cfg__grpc__grpc_monitoring.ts +11 -11
  11. package/src/cfg/generated/_utils/fetchers/cfg__grpc__grpc_testing.ts +6 -6
  12. package/src/cfg/generated/_utils/fetchers/index.ts +1 -0
  13. package/src/cfg/generated/_utils/hooks/cfg__centrifugo__centrifugo_monitoring.ts +3 -3
  14. package/src/cfg/generated/_utils/hooks/cfg__grpc__grpc_charts.ts +126 -0
  15. package/src/cfg/generated/_utils/hooks/cfg__grpc__grpc_monitoring.ts +9 -9
  16. package/src/cfg/generated/_utils/hooks/cfg__grpc__grpc_testing.ts +4 -4
  17. package/src/cfg/generated/_utils/hooks/index.ts +1 -0
  18. package/src/cfg/generated/_utils/schemas/CentrifugoClientInfo.schema.ts +2 -2
  19. package/src/cfg/generated/_utils/schemas/CentrifugoHistoryRequestRequest.schema.ts +2 -2
  20. package/src/cfg/generated/_utils/schemas/{OverviewStats.schema.ts → CentrifugoOverviewStats.schema.ts} +3 -3
  21. package/src/cfg/generated/_utils/schemas/CentrifugoPublication.schema.ts +1 -1
  22. package/src/cfg/generated/_utils/schemas/DashboardCharts.schema.ts +30 -0
  23. package/src/cfg/generated/_utils/schemas/DjangoRQConfig.schema.ts +8 -1
  24. package/src/cfg/generated/_utils/schemas/ErrorDistributionChart.schema.ts +24 -0
  25. package/src/cfg/generated/_utils/schemas/ErrorDistributionChartSerializer.schema.ts +24 -0
  26. package/src/cfg/generated/_utils/schemas/ErrorDistributionDataPoint.schema.ts +22 -0
  27. package/src/cfg/generated/_utils/schemas/GRPCHealthCheck.schema.ts +23 -0
  28. package/src/cfg/generated/_utils/schemas/GRPCOverviewStats.schema.ts +27 -0
  29. package/src/cfg/generated/_utils/schemas/GRPCServerConfigSerializer.schema.ts +1 -1
  30. package/src/cfg/generated/_utils/schemas/GRPCServerInfo.schema.ts +1 -1
  31. package/src/cfg/generated/_utils/schemas/{GRPCTestLogSerializer.schema.ts → GRPCTestLog.schema.ts} +4 -4
  32. package/src/cfg/generated/_utils/schemas/MonitoringServiceStatsSerializer.schema.ts +24 -0
  33. package/src/cfg/generated/_utils/schemas/RecentRequest.schema.ts +28 -0
  34. package/src/cfg/generated/_utils/schemas/RequestVolumeChart.schema.ts +25 -0
  35. package/src/cfg/generated/_utils/schemas/RequestVolumeChartSerializer.schema.ts +25 -0
  36. package/src/cfg/generated/_utils/schemas/RequestVolumeDataPoint.schema.ts +23 -0
  37. package/src/cfg/generated/_utils/schemas/ResponseTimeChart.schema.ts +25 -0
  38. package/src/cfg/generated/_utils/schemas/ResponseTimeChartSerializer.schema.ts +25 -0
  39. package/src/cfg/generated/_utils/schemas/ResponseTimeDataPoint.schema.ts +25 -0
  40. package/src/cfg/generated/_utils/schemas/ServerLifecycleChart.schema.ts +25 -0
  41. package/src/cfg/generated/_utils/schemas/ServerLifecycleEvent.schema.ts +24 -0
  42. package/src/cfg/generated/_utils/schemas/ServerUptimeChart.schema.ts +25 -0
  43. package/src/cfg/generated/_utils/schemas/ServerUptimeChartSerializer.schema.ts +25 -0
  44. package/src/cfg/generated/_utils/schemas/ServerUptimeDataPoint.schema.ts +21 -0
  45. package/src/cfg/generated/_utils/schemas/ServiceActivityChart.schema.ts +24 -0
  46. package/src/cfg/generated/_utils/schemas/ServiceActivityChartSerializer.schema.ts +24 -0
  47. package/src/cfg/generated/_utils/schemas/ServiceActivityDataPoint.schema.ts +22 -0
  48. package/src/cfg/generated/_utils/schemas/ServiceList.schema.ts +2 -2
  49. package/src/cfg/generated/_utils/schemas/ServiceStatsSerializer.schema.ts +8 -8
  50. package/src/cfg/generated/_utils/schemas/index.ts +24 -4
  51. package/src/cfg/generated/cfg__centrifugo__centrifugo_admin_api/models.ts +5 -5
  52. package/src/cfg/generated/cfg__centrifugo__centrifugo_monitoring/client.ts +4 -4
  53. package/src/cfg/generated/cfg__centrifugo__centrifugo_monitoring/models.ts +1 -1
  54. package/src/cfg/generated/cfg__dashboard__dashboard_config/models.ts +26 -1
  55. package/src/cfg/generated/cfg__endpoints/client.ts +1 -1
  56. package/src/cfg/generated/cfg__grpc__grpc_charts/client.ts +162 -0
  57. package/src/cfg/generated/cfg__grpc__grpc_charts/index.ts +2 -0
  58. package/src/cfg/generated/cfg__grpc__grpc_charts/models.ts +335 -0
  59. package/src/cfg/generated/cfg__grpc__grpc_configuration/models.ts +2 -2
  60. package/src/cfg/generated/cfg__grpc__grpc_monitoring/client.ts +12 -11
  61. package/src/cfg/generated/cfg__grpc__grpc_monitoring/models.ts +45 -31
  62. package/src/cfg/generated/cfg__grpc__grpc_services/models.ts +11 -11
  63. package/src/cfg/generated/cfg__grpc__grpc_testing/client.ts +9 -10
  64. package/src/cfg/generated/cfg__grpc__grpc_testing/models.ts +22 -38
  65. package/src/cfg/generated/cfg__payments/client.ts +1 -1
  66. package/src/cfg/generated/client.ts +3 -0
  67. package/src/cfg/generated/index.ts +5 -0
  68. package/src/cfg/generated/schema.ts +1621 -342
  69. package/src/cfg/generated/_utils/schemas/GRPCTestLogs.schema.ts +0 -23
  70. package/src/cfg/generated/_utils/schemas/RecentRequests.schema.ts +0 -23
@@ -0,0 +1,335 @@
1
+ /**
2
+ * Combined dashboard charts data.
3
+ *
4
+ * Response model (includes read-only fields).
5
+ */
6
+ export interface DashboardCharts {
7
+ server_uptime: Record<string, any>;
8
+ request_volume: Record<string, any>;
9
+ response_time: Record<string, any>;
10
+ service_activity: Record<string, any>;
11
+ error_distribution: Record<string, any>;
12
+ /** Period in hours for all charts */
13
+ period_hours: number;
14
+ /** When data was generated */
15
+ generated_at: string;
16
+ }
17
+
18
+ /**
19
+ * Error distribution chart data.
20
+ *
21
+ * Response model (includes read-only fields).
22
+ */
23
+ export interface ErrorDistributionChart {
24
+ /** Chart title */
25
+ title?: string;
26
+ /** Error distribution data */
27
+ error_types?: Array<ErrorDistributionDataPoint>;
28
+ /** Period in hours */
29
+ period_hours: number;
30
+ /** Total number of errors */
31
+ total_errors: number;
32
+ /** Most common error code */
33
+ most_common_error?: string | null;
34
+ }
35
+
36
+ /**
37
+ * Request volume over time chart data.
38
+ *
39
+ * Response model (includes read-only fields).
40
+ */
41
+ export interface RequestVolumeChart {
42
+ /** Chart title */
43
+ title?: string;
44
+ /** Volume data points */
45
+ data_points?: Array<RequestVolumeDataPoint>;
46
+ /** Period in hours */
47
+ period_hours: number;
48
+ /** Data granularity */
49
+ granularity: string;
50
+ /** Total requests in period */
51
+ total_requests: number;
52
+ /** Average success rate */
53
+ avg_success_rate: number;
54
+ }
55
+
56
+ /**
57
+ * Response time over time chart data.
58
+ *
59
+ * Response model (includes read-only fields).
60
+ */
61
+ export interface ResponseTimeChart {
62
+ /** Chart title */
63
+ title?: string;
64
+ /** Response time data points */
65
+ data_points?: Array<ResponseTimeDataPoint>;
66
+ /** Period in hours */
67
+ period_hours: number;
68
+ /** Data granularity */
69
+ granularity: string;
70
+ /** Overall average duration */
71
+ overall_avg_ms: number;
72
+ /** Overall P95 duration */
73
+ overall_p95_ms: number;
74
+ }
75
+
76
+ /**
77
+ * Server lifecycle events timeline.
78
+ *
79
+ * Response model (includes read-only fields).
80
+ */
81
+ export interface ServerLifecycleChart {
82
+ /** Chart title */
83
+ title?: string;
84
+ /** Lifecycle events */
85
+ events?: Array<ServerLifecycleEvent>;
86
+ /** Period in hours */
87
+ period_hours: number;
88
+ /** Total number of events */
89
+ total_events: number;
90
+ /** Number of server restarts */
91
+ restart_count: number;
92
+ /** Number of error events */
93
+ error_count: number;
94
+ }
95
+
96
+ /**
97
+ * Server uptime over time chart data.
98
+ *
99
+ * Response model (includes read-only fields).
100
+ */
101
+ export interface ServerUptimeChart {
102
+ /** Chart title */
103
+ title?: string;
104
+ /** Uptime data points */
105
+ data_points?: Array<ServerUptimeDataPoint>;
106
+ /** Period in hours */
107
+ period_hours: number;
108
+ /** Data granularity */
109
+ granularity: string;
110
+ /** Total unique servers in period */
111
+ total_servers: number;
112
+ /** Currently running servers */
113
+ currently_running: number;
114
+ }
115
+
116
+ /**
117
+ * Service activity comparison chart data.
118
+ *
119
+ * Response model (includes read-only fields).
120
+ */
121
+ export interface ServiceActivityChart {
122
+ /** Chart title */
123
+ title?: string;
124
+ /** Service activity data */
125
+ services?: Array<ServiceActivityDataPoint>;
126
+ /** Period in hours */
127
+ period_hours: number;
128
+ /** Total number of services */
129
+ total_services: number;
130
+ /** Most active service name */
131
+ most_active_service?: string | null;
132
+ }
133
+
134
+ /**
135
+ * Server uptime over time chart data.
136
+ *
137
+ * Response model (includes read-only fields).
138
+ */
139
+ export interface ServerUptimeChartSerializer {
140
+ /** Chart title */
141
+ title?: string;
142
+ /** Uptime data points */
143
+ data_points?: Array<ServerUptimeDataPoint>;
144
+ /** Period in hours */
145
+ period_hours: number;
146
+ /** Data granularity */
147
+ granularity: string;
148
+ /** Total unique servers in period */
149
+ total_servers: number;
150
+ /** Currently running servers */
151
+ currently_running: number;
152
+ }
153
+
154
+ /**
155
+ * Request volume over time chart data.
156
+ *
157
+ * Response model (includes read-only fields).
158
+ */
159
+ export interface RequestVolumeChartSerializer {
160
+ /** Chart title */
161
+ title?: string;
162
+ /** Volume data points */
163
+ data_points?: Array<RequestVolumeDataPoint>;
164
+ /** Period in hours */
165
+ period_hours: number;
166
+ /** Data granularity */
167
+ granularity: string;
168
+ /** Total requests in period */
169
+ total_requests: number;
170
+ /** Average success rate */
171
+ avg_success_rate: number;
172
+ }
173
+
174
+ /**
175
+ * Response time over time chart data.
176
+ *
177
+ * Response model (includes read-only fields).
178
+ */
179
+ export interface ResponseTimeChartSerializer {
180
+ /** Chart title */
181
+ title?: string;
182
+ /** Response time data points */
183
+ data_points?: Array<ResponseTimeDataPoint>;
184
+ /** Period in hours */
185
+ period_hours: number;
186
+ /** Data granularity */
187
+ granularity: string;
188
+ /** Overall average duration */
189
+ overall_avg_ms: number;
190
+ /** Overall P95 duration */
191
+ overall_p95_ms: number;
192
+ }
193
+
194
+ /**
195
+ * Service activity comparison chart data.
196
+ *
197
+ * Response model (includes read-only fields).
198
+ */
199
+ export interface ServiceActivityChartSerializer {
200
+ /** Chart title */
201
+ title?: string;
202
+ /** Service activity data */
203
+ services?: Array<ServiceActivityDataPoint>;
204
+ /** Period in hours */
205
+ period_hours: number;
206
+ /** Total number of services */
207
+ total_services: number;
208
+ /** Most active service name */
209
+ most_active_service?: string | null;
210
+ }
211
+
212
+ /**
213
+ * Error distribution chart data.
214
+ *
215
+ * Response model (includes read-only fields).
216
+ */
217
+ export interface ErrorDistributionChartSerializer {
218
+ /** Chart title */
219
+ title?: string;
220
+ /** Error distribution data */
221
+ error_types?: Array<ErrorDistributionDataPoint>;
222
+ /** Period in hours */
223
+ period_hours: number;
224
+ /** Total number of errors */
225
+ total_errors: number;
226
+ /** Most common error code */
227
+ most_common_error?: string | null;
228
+ }
229
+
230
+ /**
231
+ * Error distribution data point.
232
+ *
233
+ * Response model (includes read-only fields).
234
+ */
235
+ export interface ErrorDistributionDataPoint {
236
+ /** gRPC status code */
237
+ error_code: string;
238
+ /** Number of occurrences */
239
+ count: number;
240
+ /** Percentage of total errors */
241
+ percentage: number;
242
+ /** Service name if filtered */
243
+ service_name?: string | null;
244
+ }
245
+
246
+ /**
247
+ * Request volume data point.
248
+ *
249
+ * Response model (includes read-only fields).
250
+ */
251
+ export interface RequestVolumeDataPoint {
252
+ /** ISO timestamp */
253
+ timestamp: string;
254
+ /** Total requests in period */
255
+ total_requests: number;
256
+ /** Successful requests */
257
+ successful_requests: number;
258
+ /** Failed requests */
259
+ failed_requests: number;
260
+ /** Success rate percentage */
261
+ success_rate: number;
262
+ }
263
+
264
+ /**
265
+ * Response time statistics data point.
266
+ *
267
+ * Response model (includes read-only fields).
268
+ */
269
+ export interface ResponseTimeDataPoint {
270
+ /** ISO timestamp */
271
+ timestamp: string;
272
+ /** Average duration */
273
+ avg_duration_ms: number;
274
+ /** P50 percentile */
275
+ p50_duration_ms: number;
276
+ /** P95 percentile */
277
+ p95_duration_ms: number;
278
+ /** P99 percentile */
279
+ p99_duration_ms: number;
280
+ /** Minimum duration */
281
+ min_duration_ms: number;
282
+ /** Maximum duration */
283
+ max_duration_ms: number;
284
+ }
285
+
286
+ /**
287
+ * Server lifecycle event.
288
+ *
289
+ * Response model (includes read-only fields).
290
+ */
291
+ export interface ServerLifecycleEvent {
292
+ /** Event timestamp */
293
+ timestamp: string;
294
+ /** Event type (started, stopped, error) */
295
+ event_type: string;
296
+ /** Server address */
297
+ server_address: string;
298
+ /** Server process ID */
299
+ server_pid: number;
300
+ /** Uptime at event time (for stop events) */
301
+ uptime_seconds?: number | null;
302
+ /** Error message if applicable */
303
+ error_message?: string | null;
304
+ }
305
+
306
+ /**
307
+ * Server uptime data point.
308
+ *
309
+ * Response model (includes read-only fields).
310
+ */
311
+ export interface ServerUptimeDataPoint {
312
+ /** ISO timestamp */
313
+ timestamp: string;
314
+ /** Number of running servers */
315
+ server_count: number;
316
+ /** List of server addresses */
317
+ servers?: Array<string>;
318
+ }
319
+
320
+ /**
321
+ * Service activity data point.
322
+ *
323
+ * Response model (includes read-only fields).
324
+ */
325
+ export interface ServiceActivityDataPoint {
326
+ /** Service name */
327
+ service_name: string;
328
+ /** Number of requests */
329
+ request_count: number;
330
+ /** Success rate percentage */
331
+ success_rate: number;
332
+ /** Average duration */
333
+ avg_duration_ms: number;
334
+ }
335
+
@@ -26,7 +26,7 @@ export interface GRPCServerInfo {
26
26
  /** Server start timestamp */
27
27
  started_at?: string | null;
28
28
  /** Server uptime in seconds */
29
- uptime_seconds?: string | null;
29
+ uptime_seconds?: number | null;
30
30
  /** Registered services */
31
31
  services?: Array<GRPCServiceInfoSerializer>;
32
32
  /** Active interceptors */
@@ -49,7 +49,7 @@ export interface GRPCServerConfigSerializer {
49
49
  /** Maximum worker threads */
50
50
  max_workers: number;
51
51
  /** Maximum concurrent RPCs */
52
- max_concurrent_rpcs?: string | null;
52
+ max_concurrent_rpcs?: number | null;
53
53
  }
54
54
 
55
55
  /**
@@ -16,7 +16,7 @@ export class CfgGrpcMonitoring {
16
16
  *
17
17
  * Returns the current health status of the gRPC server.
18
18
  */
19
- async grpcMonitorHealthRetrieve(): Promise<Models.HealthCheck> {
19
+ async grpcMonitorHealthRetrieve(): Promise<Models.GRPCHealthCheck> {
20
20
  const response = await this.client.request('GET', "/cfg/grpc/monitor/health/");
21
21
  return response;
22
22
  }
@@ -39,18 +39,18 @@ export class CfgGrpcMonitoring {
39
39
  params = { hours: args[0], service: args[1] };
40
40
  }
41
41
  const response = await this.client.request('GET', "/cfg/grpc/monitor/methods/", { params });
42
- return (response as any).results || [];
42
+ return response;
43
43
  }
44
44
 
45
- async grpcMonitorOverviewRetrieve(hours?: number): Promise<Models.OverviewStats>;
46
- async grpcMonitorOverviewRetrieve(params?: { hours?: number }): Promise<Models.OverviewStats>;
45
+ async grpcMonitorOverviewRetrieve(hours?: number): Promise<Models.GRPCOverviewStats>;
46
+ async grpcMonitorOverviewRetrieve(params?: { hours?: number }): Promise<Models.GRPCOverviewStats>;
47
47
 
48
48
  /**
49
49
  * Get overview statistics
50
50
  *
51
51
  * Returns overview statistics for gRPC requests.
52
52
  */
53
- async grpcMonitorOverviewRetrieve(...args: any[]): Promise<Models.OverviewStats> {
53
+ async grpcMonitorOverviewRetrieve(...args: any[]): Promise<Models.GRPCOverviewStats> {
54
54
  const isParamsObject = args.length === 1 && typeof args[0] === 'object' && args[0] !== null && !Array.isArray(args[0]);
55
55
 
56
56
  let params;
@@ -63,22 +63,23 @@ export class CfgGrpcMonitoring {
63
63
  return response;
64
64
  }
65
65
 
66
- async grpcMonitorRequestsRetrieve(count?: number, method?: string, offset?: number, service?: string, status?: string): Promise<Models.RecentRequests>;
67
- async grpcMonitorRequestsRetrieve(params?: { count?: number; method?: string; offset?: number; service?: string; status?: string }): Promise<Models.RecentRequests>;
66
+ async grpcMonitorRequestsRetrieve(method?: string, service?: string, status?: string): Promise<Models.RecentRequest>;
67
+ async grpcMonitorRequestsRetrieve(params?: { method?: string; service?: string; status?: string }): Promise<Models.RecentRequest>;
68
68
 
69
69
  /**
70
70
  * Get recent requests
71
71
  *
72
- * Returns a list of recent gRPC requests with their details.
72
+ * Returns a list of recent gRPC requests with their details. Uses standard
73
+ * DRF pagination.
73
74
  */
74
- async grpcMonitorRequestsRetrieve(...args: any[]): Promise<Models.RecentRequests> {
75
+ async grpcMonitorRequestsRetrieve(...args: any[]): Promise<Models.RecentRequest> {
75
76
  const isParamsObject = args.length === 1 && typeof args[0] === 'object' && args[0] !== null && !Array.isArray(args[0]);
76
77
 
77
78
  let params;
78
79
  if (isParamsObject) {
79
80
  params = args[0];
80
81
  } else {
81
- params = { count: args[0], method: args[1], offset: args[2], service: args[3], status: args[4] };
82
+ params = { method: args[0], service: args[1], status: args[2] };
82
83
  }
83
84
  const response = await this.client.request('GET', "/cfg/grpc/monitor/requests/", { params });
84
85
  return response;
@@ -102,7 +103,7 @@ export class CfgGrpcMonitoring {
102
103
  params = { hours: args[0] };
103
104
  }
104
105
  const response = await this.client.request('GET', "/cfg/grpc/monitor/services/", { params });
105
- return (response as any).results || [];
106
+ return response;
106
107
  }
107
108
 
108
109
  async grpcMonitorTimelineRetrieve(hours?: number, interval?: string): Promise<any>;
@@ -1,15 +1,17 @@
1
1
  /**
2
- * Health check response.
2
+ * gRPC health check response.
3
3
  *
4
4
  * Response model (includes read-only fields).
5
5
  */
6
- export interface HealthCheck {
6
+ export interface GRPCHealthCheck {
7
7
  /** Health status: healthy or unhealthy */
8
8
  status: string;
9
- /** Configured wrapper URL */
10
- wrapper_url: string;
11
- /** Whether API key is configured */
12
- has_api_key: boolean;
9
+ /** Configured gRPC server host */
10
+ server_host: string;
11
+ /** Configured gRPC server port */
12
+ server_port: number;
13
+ /** Whether gRPC is enabled */
14
+ enabled: boolean;
13
15
  /** Current timestamp */
14
16
  timestamp: string;
15
17
  }
@@ -27,45 +29,57 @@ export interface MethodList {
27
29
  }
28
30
 
29
31
  /**
30
- * Overview statistics for Centrifugo publishes.
32
+ * Overview statistics for gRPC requests.
31
33
  *
32
34
  * Response model (includes read-only fields).
33
35
  */
34
- export interface OverviewStats {
35
- /** Total publishes in period */
36
+ export interface GRPCOverviewStats {
37
+ /** Total requests in period */
36
38
  total: number;
37
- /** Successful publishes */
39
+ /** Successful requests */
38
40
  successful: number;
39
- /** Failed publishes */
40
- failed: number;
41
- /** Timeout publishes */
41
+ /** Error requests */
42
+ errors: number;
43
+ /** Cancelled requests */
44
+ cancelled: number;
45
+ /** Timeout requests */
42
46
  timeout: number;
43
47
  /** Success rate percentage */
44
48
  success_rate: number;
45
49
  /** Average duration in milliseconds */
46
50
  avg_duration_ms: number;
47
- /** Average ACKs received */
48
- avg_acks_received: number;
51
+ /** 95th percentile duration in milliseconds */
52
+ p95_duration_ms: number;
49
53
  /** Statistics period in hours */
50
54
  period_hours: number;
51
55
  }
52
56
 
53
57
  /**
54
- * Recent gRPC requests list.
58
+ * Recent request information.
55
59
  *
56
- * Response model (includes read-only fields).
60
+ * Request model (no read-only fields).
57
61
  */
58
- export interface RecentRequests {
59
- /** List of recent requests */
60
- requests: Array<Record<string, any>>;
61
- /** Number of requests returned */
62
- count: number;
63
- /** Total requests available */
64
- total_available: number;
65
- /** Current offset for pagination */
66
- offset?: number;
67
- /** Whether more results are available */
68
- has_more?: boolean;
62
+ export interface RecentRequest {
63
+ /** Database ID */
64
+ id: number;
65
+ /** Request ID */
66
+ request_id: string;
67
+ /** Service name */
68
+ service_name: string;
69
+ /** Method name */
70
+ method_name: string;
71
+ /** Request status */
72
+ status: string;
73
+ /** Duration in milliseconds */
74
+ duration_ms?: number;
75
+ /** gRPC status code */
76
+ grpc_status_code?: string;
77
+ /** Error message if failed */
78
+ error_message?: string;
79
+ /** Request timestamp */
80
+ created_at: string;
81
+ /** Client IP address */
82
+ client_ip?: string;
69
83
  }
70
84
 
71
85
  /**
@@ -75,7 +89,7 @@ export interface RecentRequests {
75
89
  */
76
90
  export interface ServiceList {
77
91
  /** Service statistics */
78
- services: Array<ServiceStatsSerializer>;
92
+ services: Array<MonitoringServiceStatsSerializer>;
79
93
  /** Total number of services */
80
94
  total_services: number;
81
95
  }
@@ -103,11 +117,11 @@ export interface MethodStatsSerializer {
103
117
  }
104
118
 
105
119
  /**
106
- * Statistics for a single gRPC service.
120
+ * Statistics for a single gRPC service (monitoring endpoint).
107
121
  *
108
122
  * Response model (includes read-only fields).
109
123
  */
110
- export interface ServiceStatsSerializer {
124
+ export interface MonitoringServiceStatsSerializer {
111
125
  /** Service name */
112
126
  service_name: string;
113
127
  /** Total requests */
@@ -60,23 +60,23 @@ export interface MethodInfoSerializer {
60
60
  }
61
61
 
62
62
  /**
63
- * Statistics for a single gRPC service.
63
+ * Service statistics.
64
64
  *
65
65
  * Response model (includes read-only fields).
66
66
  */
67
67
  export interface ServiceStatsSerializer {
68
- /** Service name */
69
- service_name: string;
70
68
  /** Total requests */
71
- total: number;
69
+ total_requests?: number;
72
70
  /** Successful requests */
73
- successful: number;
74
- /** Error requests */
75
- errors: number;
76
- /** Average duration */
77
- avg_duration_ms: number;
78
- /** Last activity timestamp */
79
- last_activity_at: string | null;
71
+ successful?: number;
72
+ /** Failed requests */
73
+ errors?: number;
74
+ /** Success rate percentage */
75
+ success_rate?: number;
76
+ /** Average duration in milliseconds */
77
+ avg_duration_ms?: number;
78
+ /** Requests in last 24 hours */
79
+ last_24h_requests?: number;
80
80
  }
81
81
 
82
82
  /**
@@ -12,11 +12,10 @@ export class CfgGrpcTesting {
12
12
  }
13
13
 
14
14
  /**
15
- * Call gRPC method (placeholder)
15
+ * Call gRPC method
16
16
  *
17
- * Interactive gRPC method calling. NOTE: This is a placeholder endpoint.
18
- * Dynamic gRPC invocation is not yet implemented. Use grpcurl or implement
19
- * Phase 4 for this functionality.
17
+ * Interactive gRPC method calling using dynamic invocation. Uses gRPC
18
+ * Reflection API to discover and call methods without compiled stubs.
20
19
  */
21
20
  async grpcTestCallCreate(data: Models.GRPCCallRequestRequest): Promise<Models.GRPCCallResponse> {
22
21
  const response = await this.client.request('POST', "/cfg/grpc/test/call/", { body: data });
@@ -41,25 +40,25 @@ export class CfgGrpcTesting {
41
40
  params = { method: args[0], service: args[1] };
42
41
  }
43
42
  const response = await this.client.request('GET', "/cfg/grpc/test/examples/", { params });
44
- return (response as any).results || [];
43
+ return (response as any).results || response;
45
44
  }
46
45
 
47
- async grpcTestLogsRetrieve(limit?: number, method?: string, offset?: number, service?: string, status?: string): Promise<Models.GRPCTestLogs>;
48
- async grpcTestLogsRetrieve(params?: { limit?: number; method?: string; offset?: number; service?: string; status?: string }): Promise<Models.GRPCTestLogs>;
46
+ async grpcTestLogsRetrieve(method?: string, service?: string, status?: string): Promise<Models.GRPCTestLog>;
47
+ async grpcTestLogsRetrieve(params?: { method?: string; service?: string; status?: string }): Promise<Models.GRPCTestLog>;
49
48
 
50
49
  /**
51
50
  * Get test logs
52
51
  *
53
- * Returns logs from test gRPC calls.
52
+ * Returns logs from test gRPC calls. Uses standard DRF pagination.
54
53
  */
55
- async grpcTestLogsRetrieve(...args: any[]): Promise<Models.GRPCTestLogs> {
54
+ async grpcTestLogsRetrieve(...args: any[]): Promise<Models.GRPCTestLog> {
56
55
  const isParamsObject = args.length === 1 && typeof args[0] === 'object' && args[0] !== null && !Array.isArray(args[0]);
57
56
 
58
57
  let params;
59
58
  if (isParamsObject) {
60
59
  params = args[0];
61
60
  } else {
62
- params = { limit: args[0], method: args[1], offset: args[2], service: args[3], status: args[4] };
61
+ params = { method: args[0], service: args[1], status: args[2] };
63
62
  }
64
63
  const response = await this.client.request('GET', "/cfg/grpc/test/logs/", { params });
65
64
  return response;