@leaflow/sdk 0.0.0-dev.113.g5d6fb99

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 (49) hide show
  1. package/dist/account/v1/index.d.ts +38 -0
  2. package/dist/account/v1/index.js +5 -0
  3. package/dist/account/v1/schema.d.ts +866 -0
  4. package/dist/account/v1/schema.js +5 -0
  5. package/dist/assistant/v1/index.d.ts +68 -0
  6. package/dist/assistant/v1/index.js +5 -0
  7. package/dist/assistant/v1/schema.d.ts +1884 -0
  8. package/dist/assistant/v1/schema.js +5 -0
  9. package/dist/canopy/v1/index.d.ts +36 -0
  10. package/dist/canopy/v1/index.js +5 -0
  11. package/dist/canopy/v1/schema.d.ts +1100 -0
  12. package/dist/canopy/v1/schema.js +5 -0
  13. package/dist/compute/v1/index.d.ts +200 -0
  14. package/dist/compute/v1/index.js +5 -0
  15. package/dist/compute/v1/schema.d.ts +4439 -0
  16. package/dist/compute/v1/schema.js +5 -0
  17. package/dist/gen/account/v1/schema.d.ts +866 -0
  18. package/dist/gen/account/v1/schema.js +5 -0
  19. package/dist/gen/assistant/v1/schema.d.ts +1884 -0
  20. package/dist/gen/assistant/v1/schema.js +5 -0
  21. package/dist/gen/canopy/v1/schema.d.ts +1100 -0
  22. package/dist/gen/canopy/v1/schema.js +5 -0
  23. package/dist/gen/compute/v1/schema.d.ts +4439 -0
  24. package/dist/gen/compute/v1/schema.js +5 -0
  25. package/dist/gen/iam/v1/schema.d.ts +1230 -0
  26. package/dist/gen/iam/v1/schema.js +5 -0
  27. package/dist/gen/monitoring/v1/schema.d.ts +2291 -0
  28. package/dist/gen/monitoring/v1/schema.js +5 -0
  29. package/dist/gen/tunnel/v1/schema.d.ts +845 -0
  30. package/dist/gen/tunnel/v1/schema.js +5 -0
  31. package/dist/iam/v1/index.d.ts +56 -0
  32. package/dist/iam/v1/index.js +5 -0
  33. package/dist/iam/v1/schema.d.ts +1230 -0
  34. package/dist/iam/v1/schema.js +5 -0
  35. package/dist/index.d.ts +7 -0
  36. package/dist/index.js +6 -0
  37. package/dist/monitoring/v1/index.d.ts +80 -0
  38. package/dist/monitoring/v1/index.js +5 -0
  39. package/dist/monitoring/v1/schema.d.ts +2291 -0
  40. package/dist/monitoring/v1/schema.js +5 -0
  41. package/dist/src/client.d.ts +57 -0
  42. package/dist/src/client.js +41 -0
  43. package/dist/src/index.d.ts +9 -0
  44. package/dist/src/index.js +1 -0
  45. package/dist/tunnel/v1/index.d.ts +34 -0
  46. package/dist/tunnel/v1/index.js +5 -0
  47. package/dist/tunnel/v1/schema.d.ts +845 -0
  48. package/dist/tunnel/v1/schema.js +5 -0
  49. package/package.json +73 -0
@@ -0,0 +1,1100 @@
1
+ /**
2
+ * This file was auto-generated by openapi-typescript.
3
+ * Do not make direct changes to the file.
4
+ */
5
+ export interface paths {
6
+ "/api/v1/keys": {
7
+ parameters: {
8
+ query?: never;
9
+ header?: never;
10
+ path?: never;
11
+ cookie?: never;
12
+ };
13
+ /** 列出 API Key */
14
+ get: operations["list-api-keys"];
15
+ put?: never;
16
+ /**
17
+ * 签发一把 API Key
18
+ * @description 响应里的 `secret` 是完整的 key,**只在这一次出现**——服务端只存它的哈希,之后任何接口都不会再返回它。丢了只能撤销重建。
19
+ *
20
+ * 把它填进 `OPENAI_API_KEY` 一类的地方即可,转发接口同时接受 OpenAI、Anthropic、Gemini 三种调用格式。
21
+ */
22
+ post: operations["create-api-key"];
23
+ delete?: never;
24
+ options?: never;
25
+ head?: never;
26
+ patch?: never;
27
+ trace?: never;
28
+ };
29
+ "/api/v1/keys/{keyId}": {
30
+ parameters: {
31
+ query?: never;
32
+ header?: never;
33
+ path?: never;
34
+ cookie?: never;
35
+ };
36
+ /** 查看 API Key */
37
+ get: operations["get-api-key"];
38
+ put?: never;
39
+ post?: never;
40
+ delete?: never;
41
+ options?: never;
42
+ head?: never;
43
+ /**
44
+ * 修改 API Key
45
+ * @description 只改属性,不改状态——启用、停用、撤销各有自己的接口。
46
+ *
47
+ * 没提到的字段保持不变。要把到期时间改成「永不过期」请传 `clear_expiry: true`,而不是把 `expires_at` 传成 null。
48
+ *
49
+ * 已撤销的 key 不接受任何修改。
50
+ */
51
+ patch: operations["update-api-key"];
52
+ trace?: never;
53
+ };
54
+ "/api/v1/keys/{keyId}/disable": {
55
+ parameters: {
56
+ query?: never;
57
+ header?: never;
58
+ path?: never;
59
+ cookie?: never;
60
+ };
61
+ get?: never;
62
+ put?: never;
63
+ /**
64
+ * 停用 API Key
65
+ * @description 临时停用,随时可以启用回来。要永久失效请用撤销。
66
+ */
67
+ post: operations["disable-api-key"];
68
+ delete?: never;
69
+ options?: never;
70
+ head?: never;
71
+ patch?: never;
72
+ trace?: never;
73
+ };
74
+ "/api/v1/keys/{keyId}/enable": {
75
+ parameters: {
76
+ query?: never;
77
+ header?: never;
78
+ path?: never;
79
+ cookie?: never;
80
+ };
81
+ get?: never;
82
+ put?: never;
83
+ /**
84
+ * 启用 API Key
85
+ * @description 两种情况开不回来:已撤销的(`API_KEY_REVOKED`),以及因项目停服被停的(`API_KEY_PROJECT_SUSPENDED`,响应里 `suspended` 为 true)。后者要等项目恢复。
86
+ */
87
+ post: operations["enable-api-key"];
88
+ delete?: never;
89
+ options?: never;
90
+ head?: never;
91
+ patch?: never;
92
+ trace?: never;
93
+ };
94
+ "/api/v1/keys/{keyId}/revoke": {
95
+ parameters: {
96
+ query?: never;
97
+ header?: never;
98
+ path?: never;
99
+ cookie?: never;
100
+ };
101
+ get?: never;
102
+ put?: never;
103
+ /**
104
+ * 撤销 API Key
105
+ * @description **不可逆。** 用于这把 key 泄露了的情况——比如被提交进了仓库。
106
+ *
107
+ * 记录不删除:这把 key 在被撤销前打了多少请求仍然查得到,那正是出事之后要看的。
108
+ *
109
+ * 只是想临时停一下请用停用。
110
+ */
111
+ post: operations["revoke-api-key"];
112
+ delete?: never;
113
+ options?: never;
114
+ head?: never;
115
+ patch?: never;
116
+ trace?: never;
117
+ };
118
+ "/api/v1/models": {
119
+ parameters: {
120
+ query?: never;
121
+ header?: never;
122
+ path?: never;
123
+ cookie?: never;
124
+ };
125
+ /**
126
+ * 列出可用模型
127
+ * @description 已下架(`retired`)的模型不出现在这里,但仍然查得到——见查看单个模型。
128
+ *
129
+ * `context_length` 和 `max_output_tokens` 仅供客户端提示:服务端不据此截断,请求体原样转给上游。
130
+ */
131
+ get: operations["list-models"];
132
+ put?: never;
133
+ post?: never;
134
+ delete?: never;
135
+ options?: never;
136
+ head?: never;
137
+ patch?: never;
138
+ trace?: never;
139
+ };
140
+ "/api/v1/models/{modelId}": {
141
+ parameters: {
142
+ query?: never;
143
+ header?: never;
144
+ path?: never;
145
+ cookie?: never;
146
+ };
147
+ /**
148
+ * 查看模型
149
+ * @description 已下架的模型在这里查得到,但转发时会被拒(`MODEL_RETIRED`)——这和「这个模型不存在」是两件事,前者说明它曾经有过。
150
+ */
151
+ get: operations["get-model"];
152
+ put?: never;
153
+ post?: never;
154
+ delete?: never;
155
+ options?: never;
156
+ head?: never;
157
+ patch?: never;
158
+ trace?: never;
159
+ };
160
+ "/api/v1/requests": {
161
+ parameters: {
162
+ query?: never;
163
+ header?: never;
164
+ path?: never;
165
+ cookie?: never;
166
+ };
167
+ /**
168
+ * 列出请求流水
169
+ * @description 游标翻页,按时间倒序。`next_cursor` 为空表示已经到底。
170
+ *
171
+ * **不返回请求体和响应体**——canopy 一张表都不存它们。排障请提供 `upstream_request_id`。
172
+ *
173
+ * `usage_source` 为 `estimated` 表示上游这次没给用量,那几个数是我们按字符类估的。
174
+ */
175
+ get: operations["list-requests"];
176
+ put?: never;
177
+ post?: never;
178
+ delete?: never;
179
+ options?: never;
180
+ head?: never;
181
+ patch?: never;
182
+ trace?: never;
183
+ };
184
+ "/api/v1/requests/{requestId}": {
185
+ parameters: {
186
+ query?: never;
187
+ header?: never;
188
+ path?: never;
189
+ cookie?: never;
190
+ };
191
+ /** 查看单条流水 */
192
+ get: operations["get-request"];
193
+ put?: never;
194
+ post?: never;
195
+ delete?: never;
196
+ options?: never;
197
+ head?: never;
198
+ patch?: never;
199
+ trace?: never;
200
+ };
201
+ "/api/v1/usage/by-api-key": {
202
+ parameters: {
203
+ query?: never;
204
+ header?: never;
205
+ path?: never;
206
+ cookie?: never;
207
+ };
208
+ /**
209
+ * 按 API Key 看用量
210
+ * @description 用来回答「哪把 key 在烧钱」。已撤销的 key 仍然出现在这里——它在被撤销前的用量正是要看的东西。
211
+ */
212
+ get: operations["list-usage-by-api-key"];
213
+ put?: never;
214
+ post?: never;
215
+ delete?: never;
216
+ options?: never;
217
+ head?: never;
218
+ patch?: never;
219
+ trace?: never;
220
+ };
221
+ "/api/v1/usage/by-model": {
222
+ parameters: {
223
+ query?: never;
224
+ header?: never;
225
+ path?: never;
226
+ cookie?: never;
227
+ };
228
+ /** 按模型看用量 */
229
+ get: operations["list-usage-by-model"];
230
+ put?: never;
231
+ post?: never;
232
+ delete?: never;
233
+ options?: never;
234
+ head?: never;
235
+ patch?: never;
236
+ trace?: never;
237
+ };
238
+ "/api/v1/usage/summary": {
239
+ parameters: {
240
+ query?: never;
241
+ header?: never;
242
+ path?: never;
243
+ cookie?: never;
244
+ };
245
+ /**
246
+ * 用量合计
247
+ * @description `from` / `to` 必填,跨度不超过 31 天。两者带时区偏移,传 `2026-08-01T00:00:00+08:00` 得到的就是东八区那一刻起算。
248
+ *
249
+ * 五档 token 分开给:缓存命中的读取比普通输入便宜一个数量级,合成一个总数就再也拆不开了。
250
+ */
251
+ get: operations["get-usage-summary"];
252
+ put?: never;
253
+ post?: never;
254
+ delete?: never;
255
+ options?: never;
256
+ head?: never;
257
+ patch?: never;
258
+ trace?: never;
259
+ };
260
+ "/api/v1/usage/timeline": {
261
+ parameters: {
262
+ query?: never;
263
+ header?: never;
264
+ path?: never;
265
+ cookie?: never;
266
+ };
267
+ /**
268
+ * 用量曲线
269
+ * @description 从 `from` 起按 `bucket` 切段,最后一段可能不满。段数上限 100。
270
+ *
271
+ * 要按本地日切分就把 `from` 传成本地时间的零点(带偏移)、`bucket` 传 `24h`——服务端不猜时区。
272
+ */
273
+ get: operations["get-usage-timeline"];
274
+ put?: never;
275
+ post?: never;
276
+ delete?: never;
277
+ options?: never;
278
+ head?: never;
279
+ patch?: never;
280
+ trace?: never;
281
+ };
282
+ }
283
+ export type webhooks = Record<string, never>;
284
+ export interface components {
285
+ schemas: {
286
+ Error: {
287
+ code?: string;
288
+ message: string;
289
+ meta?: {
290
+ [key: string]: unknown;
291
+ };
292
+ /** Format: int64 */
293
+ status: number;
294
+ };
295
+ APIKeyResource: {
296
+ /** @description restrict_models 为 false 时无意义 */
297
+ allowed_models: string[];
298
+ /** Format: date-time */
299
+ created_at: string;
300
+ /**
301
+ * Format: uuid
302
+ * @description 建这把 key 的人
303
+ */
304
+ created_by: string;
305
+ /**
306
+ * Format: date-time
307
+ * @description 到期时间;null 表示永不过期
308
+ */
309
+ expires_at: string | null;
310
+ /** Format: uuid */
311
+ id: string;
312
+ /** @description 明文的后四位 */
313
+ last_four: string;
314
+ /**
315
+ * Format: date-time
316
+ * @description 最后一次成功用它转发的时刻,精度约一分钟
317
+ */
318
+ last_used_at: string | null;
319
+ name: string;
320
+ /** @description 明文的前几位,用来在列表里辨认 */
321
+ prefix: string;
322
+ /** @description true 时只允许 allowed_models 里的模型 */
323
+ restrict_models: boolean;
324
+ /** @enum {string} */
325
+ status: "active" | "disabled" | "revoked";
326
+ /** @description true 表示这把 key 因项目停服被停,需要项目恢复后才能再用 */
327
+ suspended: boolean;
328
+ };
329
+ LengthAwarePageAPIKeyResource: {
330
+ /** @description 这一页的内容 */
331
+ items: components["schemas"]["APIKeyResource"][];
332
+ /**
333
+ * Format: int64
334
+ * @description 这一页最多几条,回显请求里的值
335
+ */
336
+ limit: number;
337
+ /**
338
+ * Format: int64
339
+ * @description 跳过了多少条,回显请求里的值
340
+ */
341
+ offset: number;
342
+ /**
343
+ * Format: int64
344
+ * @description 命中的总条数,不只是这一页
345
+ */
346
+ total: number;
347
+ };
348
+ CreateAPIKeyRequestBody: {
349
+ /** @description restrict_models 为 false 时忽略 */
350
+ allowed_models?: string[] | null;
351
+ /**
352
+ * Format: date-time
353
+ * @description 到期时间;不填表示永不过期
354
+ */
355
+ expires_at?: string | null;
356
+ /** @description 给自己看的名字,比如「CI」「生产」 */
357
+ name: string;
358
+ /** @description true 时只允许 allowed_models 里的模型 */
359
+ restrict_models?: boolean;
360
+ };
361
+ IssuedAPIKeyResource: {
362
+ /** @description restrict_models 为 false 时无意义 */
363
+ allowed_models: string[];
364
+ /** Format: date-time */
365
+ created_at: string;
366
+ /**
367
+ * Format: uuid
368
+ * @description 建这把 key 的人
369
+ */
370
+ created_by: string;
371
+ /**
372
+ * Format: date-time
373
+ * @description 到期时间;null 表示永不过期
374
+ */
375
+ expires_at: string | null;
376
+ /** Format: uuid */
377
+ id: string;
378
+ /** @description 明文的后四位 */
379
+ last_four: string;
380
+ /**
381
+ * Format: date-time
382
+ * @description 最后一次成功用它转发的时刻,精度约一分钟
383
+ */
384
+ last_used_at: string | null;
385
+ name: string;
386
+ /** @description 明文的前几位,用来在列表里辨认 */
387
+ prefix: string;
388
+ /** @description true 时只允许 allowed_models 里的模型 */
389
+ restrict_models: boolean;
390
+ /** @description 完整的 key,**只在这一次响应里出现**,请立即保存 */
391
+ secret: string;
392
+ /** @enum {string} */
393
+ status: "active" | "disabled" | "revoked";
394
+ /** @description true 表示这把 key 因项目停服被停,需要项目恢复后才能再用 */
395
+ suspended: boolean;
396
+ };
397
+ UpdateAPIKeyRequestBody: {
398
+ allowed_models?: string[] | null;
399
+ /** @description true 表示改成永不过期 */
400
+ clear_expiry?: boolean;
401
+ /**
402
+ * Format: date-time
403
+ * @description 改到期时间;要改成永不过期请用 clear_expiry
404
+ */
405
+ expires_at?: string | null;
406
+ name?: string | null;
407
+ restrict_models?: boolean | null;
408
+ };
409
+ ModelResource: {
410
+ /**
411
+ * Format: int64
412
+ * @description 上下文窗口,仅供客户端提示,服务端不据此截断
413
+ */
414
+ context_length: number;
415
+ display_name: string;
416
+ /** @description 同一系列聚在一起用,如 claude、gpt、gemini */
417
+ family: string;
418
+ /** @description 请求体里 model 字段要填的那个字符串 */
419
+ id: string;
420
+ /**
421
+ * Format: int64
422
+ * @description 最大输出,仅供客户端提示
423
+ */
424
+ max_output_tokens: number;
425
+ /** @description reasoning_effort 能填的值;空表示不支持 */
426
+ reasoning_tiers: string[];
427
+ /** @enum {string} */
428
+ status: "available" | "draining" | "retired";
429
+ supports_reasoning: boolean;
430
+ supports_tools: boolean;
431
+ supports_vision: boolean;
432
+ };
433
+ ModelListResponseBody: {
434
+ items: components["schemas"]["ModelResource"][];
435
+ };
436
+ RequestResource: {
437
+ /** Format: uuid */
438
+ api_key_id: string;
439
+ /**
440
+ * Format: int64
441
+ * @description 命中上游前缀缓存的部分,比普通输入便宜一个数量级
442
+ */
443
+ cache_read_tokens: number;
444
+ /** Format: int64 */
445
+ cache_write_tokens: number;
446
+ /** @description 失败时的错误码;成功时为空 */
447
+ error_code: string;
448
+ /** Format: date-time */
449
+ finished_at: string | null;
450
+ /** Format: date-time */
451
+ first_token_at: string | null;
452
+ /** Format: uuid */
453
+ id: string;
454
+ /** Format: int64 */
455
+ input_tokens: number;
456
+ /** @description 请求里写的模型名 */
457
+ model_id: string;
458
+ /** Format: int64 */
459
+ output_tokens: number;
460
+ /** Format: int64 */
461
+ reasoning_tokens: number;
462
+ /** Format: int64 */
463
+ retries: number;
464
+ /** Format: date-time */
465
+ started_at: string;
466
+ /** @enum {string} */
467
+ status: "in_flight" | "succeeded" | "refused" | "upstream_failed" | "client_aborted";
468
+ stream: boolean;
469
+ /** @description 上游那边的请求 id,报障时提供给我们 */
470
+ upstream_request_id: string;
471
+ /**
472
+ * Format: int64
473
+ * @description 上游返回的 HTTP 状态码;0 表示没打到上游
474
+ */
475
+ upstream_status: number;
476
+ /**
477
+ * @description upstream 是上游报的,estimated 是我们按字符类估的
478
+ * @enum {string}
479
+ */
480
+ usage_source: "none" | "upstream" | "estimated";
481
+ };
482
+ CursorPageRequestResource: {
483
+ /** @description 这一页的内容 */
484
+ items: components["schemas"]["RequestResource"][];
485
+ /** @description 下一页的游标;为空表示已经到底 */
486
+ next_cursor: string;
487
+ };
488
+ APIKeyUsageResource: {
489
+ /** Format: uuid */
490
+ api_key_id: string;
491
+ /** Format: int64 */
492
+ cache_read_tokens: number;
493
+ /** Format: int64 */
494
+ cache_write_tokens: number;
495
+ /** Format: int64 */
496
+ input_tokens: number;
497
+ /** Format: int64 */
498
+ output_tokens: number;
499
+ /** Format: int64 */
500
+ reasoning_tokens: number;
501
+ /** Format: int64 */
502
+ requests: number;
503
+ };
504
+ APIKeyUsageListResponseBody: {
505
+ items: components["schemas"]["APIKeyUsageResource"][];
506
+ };
507
+ ModelUsageResource: {
508
+ /** Format: int64 */
509
+ cache_read_tokens: number;
510
+ /** Format: int64 */
511
+ cache_write_tokens: number;
512
+ /** Format: int64 */
513
+ input_tokens: number;
514
+ model_id: string;
515
+ /** Format: int64 */
516
+ output_tokens: number;
517
+ /** Format: int64 */
518
+ reasoning_tokens: number;
519
+ /** Format: int64 */
520
+ requests: number;
521
+ };
522
+ ModelUsageListResponseBody: {
523
+ items: components["schemas"]["ModelUsageResource"][];
524
+ };
525
+ TotalsResource: {
526
+ /** Format: int64 */
527
+ cache_read_tokens: number;
528
+ /** Format: int64 */
529
+ cache_write_tokens: number;
530
+ /** Format: int64 */
531
+ input_tokens: number;
532
+ /** Format: int64 */
533
+ output_tokens: number;
534
+ /** Format: int64 */
535
+ reasoning_tokens: number;
536
+ /** Format: int64 */
537
+ requests: number;
538
+ };
539
+ UsageBucketResource: {
540
+ /** Format: int64 */
541
+ cache_read_tokens: number;
542
+ /** Format: int64 */
543
+ cache_write_tokens: number;
544
+ /**
545
+ * Format: date-time
546
+ * @description 这一段的起点,含
547
+ */
548
+ from: string;
549
+ /** Format: int64 */
550
+ input_tokens: number;
551
+ /** Format: int64 */
552
+ output_tokens: number;
553
+ /** Format: int64 */
554
+ reasoning_tokens: number;
555
+ /** Format: int64 */
556
+ requests: number;
557
+ /**
558
+ * Format: date-time
559
+ * @description 这一段的终点,不含
560
+ */
561
+ to: string;
562
+ };
563
+ UsageTimelineResponseBody: {
564
+ items: components["schemas"]["UsageBucketResource"][];
565
+ };
566
+ };
567
+ responses: never;
568
+ parameters: never;
569
+ requestBodies: never;
570
+ headers: never;
571
+ pathItems: never;
572
+ }
573
+ export type $defs = Record<string, never>;
574
+ export interface operations {
575
+ "list-api-keys": {
576
+ parameters: {
577
+ query?: {
578
+ /** @description 这一页最多返回多少条 */
579
+ limit?: number;
580
+ /** @description 跳过多少条。要翻得更深请改用游标翻页的接口 */
581
+ offset?: number;
582
+ /** @description 只看这个状态的;不传表示全部 */
583
+ status?: "active" | "disabled" | "revoked";
584
+ };
585
+ header?: never;
586
+ path?: never;
587
+ cookie?: never;
588
+ };
589
+ requestBody?: never;
590
+ responses: {
591
+ /** @description OK */
592
+ 200: {
593
+ headers: {
594
+ [name: string]: unknown;
595
+ };
596
+ content: {
597
+ "application/json": components["schemas"]["LengthAwarePageAPIKeyResource"];
598
+ };
599
+ };
600
+ /** @description Error */
601
+ default: {
602
+ headers: {
603
+ [name: string]: unknown;
604
+ };
605
+ content: {
606
+ "application/json": components["schemas"]["Error"];
607
+ };
608
+ };
609
+ };
610
+ };
611
+ "create-api-key": {
612
+ parameters: {
613
+ query?: never;
614
+ header?: never;
615
+ path?: never;
616
+ cookie?: never;
617
+ };
618
+ requestBody: {
619
+ content: {
620
+ "application/json": components["schemas"]["CreateAPIKeyRequestBody"];
621
+ };
622
+ };
623
+ responses: {
624
+ /** @description Created */
625
+ 201: {
626
+ headers: {
627
+ [name: string]: unknown;
628
+ };
629
+ content: {
630
+ "application/json": components["schemas"]["IssuedAPIKeyResource"];
631
+ };
632
+ };
633
+ /** @description Error */
634
+ default: {
635
+ headers: {
636
+ [name: string]: unknown;
637
+ };
638
+ content: {
639
+ "application/json": components["schemas"]["Error"];
640
+ };
641
+ };
642
+ };
643
+ };
644
+ "get-api-key": {
645
+ parameters: {
646
+ query?: never;
647
+ header?: never;
648
+ path: {
649
+ keyId: string;
650
+ };
651
+ cookie?: never;
652
+ };
653
+ requestBody?: never;
654
+ responses: {
655
+ /** @description OK */
656
+ 200: {
657
+ headers: {
658
+ [name: string]: unknown;
659
+ };
660
+ content: {
661
+ "application/json": components["schemas"]["APIKeyResource"];
662
+ };
663
+ };
664
+ /** @description Error */
665
+ default: {
666
+ headers: {
667
+ [name: string]: unknown;
668
+ };
669
+ content: {
670
+ "application/json": components["schemas"]["Error"];
671
+ };
672
+ };
673
+ };
674
+ };
675
+ "update-api-key": {
676
+ parameters: {
677
+ query?: never;
678
+ header?: never;
679
+ path: {
680
+ keyId: string;
681
+ };
682
+ cookie?: never;
683
+ };
684
+ requestBody: {
685
+ content: {
686
+ "application/json": components["schemas"]["UpdateAPIKeyRequestBody"];
687
+ };
688
+ };
689
+ responses: {
690
+ /** @description OK */
691
+ 200: {
692
+ headers: {
693
+ [name: string]: unknown;
694
+ };
695
+ content: {
696
+ "application/json": components["schemas"]["APIKeyResource"];
697
+ };
698
+ };
699
+ /** @description Error */
700
+ default: {
701
+ headers: {
702
+ [name: string]: unknown;
703
+ };
704
+ content: {
705
+ "application/json": components["schemas"]["Error"];
706
+ };
707
+ };
708
+ };
709
+ };
710
+ "disable-api-key": {
711
+ parameters: {
712
+ query?: never;
713
+ header?: never;
714
+ path: {
715
+ keyId: string;
716
+ };
717
+ cookie?: never;
718
+ };
719
+ requestBody?: never;
720
+ responses: {
721
+ /** @description OK */
722
+ 200: {
723
+ headers: {
724
+ [name: string]: unknown;
725
+ };
726
+ content: {
727
+ "application/json": components["schemas"]["APIKeyResource"];
728
+ };
729
+ };
730
+ /** @description Error */
731
+ default: {
732
+ headers: {
733
+ [name: string]: unknown;
734
+ };
735
+ content: {
736
+ "application/json": components["schemas"]["Error"];
737
+ };
738
+ };
739
+ };
740
+ };
741
+ "enable-api-key": {
742
+ parameters: {
743
+ query?: never;
744
+ header?: never;
745
+ path: {
746
+ keyId: string;
747
+ };
748
+ cookie?: never;
749
+ };
750
+ requestBody?: never;
751
+ responses: {
752
+ /** @description OK */
753
+ 200: {
754
+ headers: {
755
+ [name: string]: unknown;
756
+ };
757
+ content: {
758
+ "application/json": components["schemas"]["APIKeyResource"];
759
+ };
760
+ };
761
+ /** @description Error */
762
+ default: {
763
+ headers: {
764
+ [name: string]: unknown;
765
+ };
766
+ content: {
767
+ "application/json": components["schemas"]["Error"];
768
+ };
769
+ };
770
+ };
771
+ };
772
+ "revoke-api-key": {
773
+ parameters: {
774
+ query?: never;
775
+ header?: never;
776
+ path: {
777
+ keyId: string;
778
+ };
779
+ cookie?: never;
780
+ };
781
+ requestBody?: never;
782
+ responses: {
783
+ /** @description OK */
784
+ 200: {
785
+ headers: {
786
+ [name: string]: unknown;
787
+ };
788
+ content: {
789
+ "application/json": components["schemas"]["APIKeyResource"];
790
+ };
791
+ };
792
+ /** @description Error */
793
+ default: {
794
+ headers: {
795
+ [name: string]: unknown;
796
+ };
797
+ content: {
798
+ "application/json": components["schemas"]["Error"];
799
+ };
800
+ };
801
+ };
802
+ };
803
+ "list-models": {
804
+ parameters: {
805
+ query?: never;
806
+ header?: never;
807
+ path?: never;
808
+ cookie?: never;
809
+ };
810
+ requestBody?: never;
811
+ responses: {
812
+ /** @description OK */
813
+ 200: {
814
+ headers: {
815
+ [name: string]: unknown;
816
+ };
817
+ content: {
818
+ "application/json": components["schemas"]["ModelListResponseBody"];
819
+ };
820
+ };
821
+ /** @description Error */
822
+ default: {
823
+ headers: {
824
+ [name: string]: unknown;
825
+ };
826
+ content: {
827
+ "application/json": components["schemas"]["Error"];
828
+ };
829
+ };
830
+ };
831
+ };
832
+ "get-model": {
833
+ parameters: {
834
+ query?: never;
835
+ header?: never;
836
+ path: {
837
+ modelId: string;
838
+ };
839
+ cookie?: never;
840
+ };
841
+ requestBody?: never;
842
+ responses: {
843
+ /** @description OK */
844
+ 200: {
845
+ headers: {
846
+ [name: string]: unknown;
847
+ };
848
+ content: {
849
+ "application/json": components["schemas"]["ModelResource"];
850
+ };
851
+ };
852
+ /** @description Error */
853
+ default: {
854
+ headers: {
855
+ [name: string]: unknown;
856
+ };
857
+ content: {
858
+ "application/json": components["schemas"]["Error"];
859
+ };
860
+ };
861
+ };
862
+ };
863
+ "list-requests": {
864
+ parameters: {
865
+ query: {
866
+ /** @description 起点,含。RFC 3339,带时区偏移 */
867
+ from: string;
868
+ /** @description 终点,不含。RFC 3339,带时区偏移 */
869
+ to: string;
870
+ /** @description 只看这个模型 */
871
+ model_id?: string;
872
+ /** @description 只看这把 key */
873
+ api_key_id?: string;
874
+ /** @description 只看这个状态的 */
875
+ status?: "in_flight" | "succeeded" | "refused" | "upstream_failed" | "client_aborted";
876
+ /** @description 这一页最多返回多少条 */
877
+ limit?: number;
878
+ /** @description 上一页返回的 next_cursor;首页不填 */
879
+ cursor?: string;
880
+ };
881
+ header?: never;
882
+ path?: never;
883
+ cookie?: never;
884
+ };
885
+ requestBody?: never;
886
+ responses: {
887
+ /** @description OK */
888
+ 200: {
889
+ headers: {
890
+ [name: string]: unknown;
891
+ };
892
+ content: {
893
+ "application/json": components["schemas"]["CursorPageRequestResource"];
894
+ };
895
+ };
896
+ /** @description Error */
897
+ default: {
898
+ headers: {
899
+ [name: string]: unknown;
900
+ };
901
+ content: {
902
+ "application/json": components["schemas"]["Error"];
903
+ };
904
+ };
905
+ };
906
+ };
907
+ "get-request": {
908
+ parameters: {
909
+ query?: never;
910
+ header?: never;
911
+ path: {
912
+ requestId: string;
913
+ };
914
+ cookie?: never;
915
+ };
916
+ requestBody?: never;
917
+ responses: {
918
+ /** @description OK */
919
+ 200: {
920
+ headers: {
921
+ [name: string]: unknown;
922
+ };
923
+ content: {
924
+ "application/json": components["schemas"]["RequestResource"];
925
+ };
926
+ };
927
+ /** @description Error */
928
+ default: {
929
+ headers: {
930
+ [name: string]: unknown;
931
+ };
932
+ content: {
933
+ "application/json": components["schemas"]["Error"];
934
+ };
935
+ };
936
+ };
937
+ };
938
+ "list-usage-by-api-key": {
939
+ parameters: {
940
+ query: {
941
+ /** @description 起点,含。RFC 3339,带时区偏移 */
942
+ from: string;
943
+ /** @description 终点,不含。RFC 3339,带时区偏移 */
944
+ to: string;
945
+ /** @description 只看这个模型 */
946
+ model_id?: string;
947
+ /** @description 只看这把 key */
948
+ api_key_id?: string;
949
+ /** @description 只看这个状态的 */
950
+ status?: "in_flight" | "succeeded" | "refused" | "upstream_failed" | "client_aborted";
951
+ };
952
+ header?: never;
953
+ path?: never;
954
+ cookie?: never;
955
+ };
956
+ requestBody?: never;
957
+ responses: {
958
+ /** @description OK */
959
+ 200: {
960
+ headers: {
961
+ [name: string]: unknown;
962
+ };
963
+ content: {
964
+ "application/json": components["schemas"]["APIKeyUsageListResponseBody"];
965
+ };
966
+ };
967
+ /** @description Error */
968
+ default: {
969
+ headers: {
970
+ [name: string]: unknown;
971
+ };
972
+ content: {
973
+ "application/json": components["schemas"]["Error"];
974
+ };
975
+ };
976
+ };
977
+ };
978
+ "list-usage-by-model": {
979
+ parameters: {
980
+ query: {
981
+ /** @description 起点,含。RFC 3339,带时区偏移 */
982
+ from: string;
983
+ /** @description 终点,不含。RFC 3339,带时区偏移 */
984
+ to: string;
985
+ /** @description 只看这个模型 */
986
+ model_id?: string;
987
+ /** @description 只看这把 key */
988
+ api_key_id?: string;
989
+ /** @description 只看这个状态的 */
990
+ status?: "in_flight" | "succeeded" | "refused" | "upstream_failed" | "client_aborted";
991
+ };
992
+ header?: never;
993
+ path?: never;
994
+ cookie?: never;
995
+ };
996
+ requestBody?: never;
997
+ responses: {
998
+ /** @description OK */
999
+ 200: {
1000
+ headers: {
1001
+ [name: string]: unknown;
1002
+ };
1003
+ content: {
1004
+ "application/json": components["schemas"]["ModelUsageListResponseBody"];
1005
+ };
1006
+ };
1007
+ /** @description Error */
1008
+ default: {
1009
+ headers: {
1010
+ [name: string]: unknown;
1011
+ };
1012
+ content: {
1013
+ "application/json": components["schemas"]["Error"];
1014
+ };
1015
+ };
1016
+ };
1017
+ };
1018
+ "get-usage-summary": {
1019
+ parameters: {
1020
+ query: {
1021
+ /** @description 起点,含。RFC 3339,带时区偏移 */
1022
+ from: string;
1023
+ /** @description 终点,不含。RFC 3339,带时区偏移 */
1024
+ to: string;
1025
+ /** @description 只看这个模型 */
1026
+ model_id?: string;
1027
+ /** @description 只看这把 key */
1028
+ api_key_id?: string;
1029
+ /** @description 只看这个状态的 */
1030
+ status?: "in_flight" | "succeeded" | "refused" | "upstream_failed" | "client_aborted";
1031
+ };
1032
+ header?: never;
1033
+ path?: never;
1034
+ cookie?: never;
1035
+ };
1036
+ requestBody?: never;
1037
+ responses: {
1038
+ /** @description OK */
1039
+ 200: {
1040
+ headers: {
1041
+ [name: string]: unknown;
1042
+ };
1043
+ content: {
1044
+ "application/json": components["schemas"]["TotalsResource"];
1045
+ };
1046
+ };
1047
+ /** @description Error */
1048
+ default: {
1049
+ headers: {
1050
+ [name: string]: unknown;
1051
+ };
1052
+ content: {
1053
+ "application/json": components["schemas"]["Error"];
1054
+ };
1055
+ };
1056
+ };
1057
+ };
1058
+ "get-usage-timeline": {
1059
+ parameters: {
1060
+ query: {
1061
+ /** @description 起点,含。RFC 3339,带时区偏移 */
1062
+ from: string;
1063
+ /** @description 终点,不含。RFC 3339,带时区偏移 */
1064
+ to: string;
1065
+ /** @description 只看这个模型 */
1066
+ model_id?: string;
1067
+ /** @description 只看这把 key */
1068
+ api_key_id?: string;
1069
+ /** @description 只看这个状态的 */
1070
+ status?: "in_flight" | "succeeded" | "refused" | "upstream_failed" | "client_aborted";
1071
+ /** @description 每段多长,Go 的时长写法,如 1h、24h。段数上限 100 */
1072
+ bucket?: string;
1073
+ };
1074
+ header?: never;
1075
+ path?: never;
1076
+ cookie?: never;
1077
+ };
1078
+ requestBody?: never;
1079
+ responses: {
1080
+ /** @description OK */
1081
+ 200: {
1082
+ headers: {
1083
+ [name: string]: unknown;
1084
+ };
1085
+ content: {
1086
+ "application/json": components["schemas"]["UsageTimelineResponseBody"];
1087
+ };
1088
+ };
1089
+ /** @description Error */
1090
+ default: {
1091
+ headers: {
1092
+ [name: string]: unknown;
1093
+ };
1094
+ content: {
1095
+ "application/json": components["schemas"]["Error"];
1096
+ };
1097
+ };
1098
+ };
1099
+ };
1100
+ }