zklighter-perps 1.0.192 → 1.0.194

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.
@@ -56,6 +56,7 @@ models/DetailedAccount.ts
56
56
  models/DetailedAccounts.ts
57
57
  models/DetailedCandlestick.ts
58
58
  models/EnrichedTx.ts
59
+ models/ExchangeMetric.ts
59
60
  models/ExchangeStats.ts
60
61
  models/ExportData.ts
61
62
  models/Funding.ts
@@ -121,6 +122,7 @@ models/ReqGetByAccount.ts
121
122
  models/ReqGetCandles.ts
122
123
  models/ReqGetCandlesticks.ts
123
124
  models/ReqGetDepositHistory.ts
125
+ models/ReqGetExchangeMetrics.ts
124
126
  models/ReqGetFastWithdrawInfo.ts
125
127
  models/ReqGetFundings.ts
126
128
  models/ReqGetGeckoOrderbook.ts
@@ -150,6 +152,7 @@ models/ReqIsWhitelisted.ts
150
152
  models/RespChangeAccountTier.ts
151
153
  models/RespGetApiTokens.ts
152
154
  models/RespGetBridgesByL1Addr.ts
155
+ models/RespGetExchangeMetrics.ts
153
156
  models/RespGetFastBridgeInfo.ts
154
157
  models/RespGetFastwithdrawalInfo.ts
155
158
  models/RespGetIsNextBridgeFast.ts
package/apis/OrderApi.ts CHANGED
@@ -22,6 +22,7 @@ import type {
22
22
  OrderBookOrders,
23
23
  OrderBooks,
24
24
  Orders,
25
+ RespGetExchangeMetrics,
25
26
  ResultCode,
26
27
  Trades,
27
28
  } from '../models/index';
@@ -40,6 +41,8 @@ import {
40
41
  OrderBooksToJSON,
41
42
  OrdersFromJSON,
42
43
  OrdersToJSON,
44
+ RespGetExchangeMetricsFromJSON,
45
+ RespGetExchangeMetricsToJSON,
43
46
  ResultCodeFromJSON,
44
47
  ResultCodeToJSON,
45
48
  TradesFromJSON,
@@ -76,6 +79,13 @@ export interface AssetDetailsRequest {
76
79
  asset_id?: number;
77
80
  }
78
81
 
82
+ export interface ExchangeMetricsRequest {
83
+ period: ExchangeMetricsPeriodEnum;
84
+ kind: ExchangeMetricsKindEnum;
85
+ filter?: ExchangeMetricsFilterEnum;
86
+ value?: string;
87
+ }
88
+
79
89
  export interface OrderBookDetailsRequest {
80
90
  market_id?: number;
81
91
  filter?: OrderBookDetailsFilterEnum;
@@ -337,6 +347,64 @@ export class OrderApi extends runtime.BaseAPI {
337
347
  return await response.value();
338
348
  }
339
349
 
350
+ /**
351
+ * Get exchange metrics
352
+ * exchangeMetrics
353
+ */
354
+ async exchangeMetricsRaw(requestParameters: ExchangeMetricsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<RespGetExchangeMetrics>> {
355
+ if (requestParameters['period'] == null) {
356
+ throw new runtime.RequiredError(
357
+ 'period',
358
+ 'Required parameter "period" was null or undefined when calling exchangeMetrics().'
359
+ );
360
+ }
361
+
362
+ if (requestParameters['kind'] == null) {
363
+ throw new runtime.RequiredError(
364
+ 'kind',
365
+ 'Required parameter "kind" was null or undefined when calling exchangeMetrics().'
366
+ );
367
+ }
368
+
369
+ const queryParameters: any = {};
370
+
371
+ if (requestParameters['period'] != null) {
372
+ queryParameters['period'] = requestParameters['period'];
373
+ }
374
+
375
+ if (requestParameters['kind'] != null) {
376
+ queryParameters['kind'] = requestParameters['kind'];
377
+ }
378
+
379
+ if (requestParameters['filter'] != null) {
380
+ queryParameters['filter'] = requestParameters['filter'];
381
+ }
382
+
383
+ if (requestParameters['value'] != null) {
384
+ queryParameters['value'] = requestParameters['value'];
385
+ }
386
+
387
+ const headerParameters: runtime.HTTPHeaders = {};
388
+
389
+ const response = await this.request({
390
+ path: `/api/v1/exchangeMetrics`,
391
+ method: 'GET',
392
+ headers: headerParameters,
393
+ query: queryParameters,
394
+ }, initOverrides);
395
+
396
+ return new runtime.JSONApiResponse(response, (jsonValue) => RespGetExchangeMetricsFromJSON(jsonValue));
397
+ }
398
+
399
+ /**
400
+ * Get exchange metrics
401
+ * exchangeMetrics
402
+ */
403
+ async exchangeMetrics(requestParameters: ExchangeMetricsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<RespGetExchangeMetrics> {
404
+ const response = await this.exchangeMetricsRaw(requestParameters, initOverrides);
405
+ return await response.value();
406
+ }
407
+
340
408
  /**
341
409
  * Get exchange stats
342
410
  * exchangeStats
@@ -645,6 +713,44 @@ export const ExportTypeEnum = {
645
713
  Trade: 'trade'
646
714
  } as const;
647
715
  export type ExportTypeEnum = typeof ExportTypeEnum[keyof typeof ExportTypeEnum];
716
+ /**
717
+ * @export
718
+ */
719
+ export const ExchangeMetricsPeriodEnum = {
720
+ W: 'w',
721
+ M: 'm',
722
+ Q: 'q',
723
+ Y: 'y',
724
+ All: 'all'
725
+ } as const;
726
+ export type ExchangeMetricsPeriodEnum = typeof ExchangeMetricsPeriodEnum[keyof typeof ExchangeMetricsPeriodEnum];
727
+ /**
728
+ * @export
729
+ */
730
+ export const ExchangeMetricsKindEnum = {
731
+ Volume: 'volume',
732
+ MakerFee: 'maker_fee',
733
+ TakerFee: 'taker_fee',
734
+ LiquidationFee: 'liquidation_fee',
735
+ TradeCount: 'trade_count',
736
+ LiquidationCount: 'liquidation_count',
737
+ LiquidationVolume: 'liquidation_volume',
738
+ Inflow: 'inflow',
739
+ Outflow: 'outflow',
740
+ TransferFee: 'transfer_fee',
741
+ WithdrawFee: 'withdraw_fee',
742
+ OpenInterest: 'open_interest',
743
+ AccountCount: 'account_count',
744
+ ActiveAccountCount: 'active_account_count'
745
+ } as const;
746
+ export type ExchangeMetricsKindEnum = typeof ExchangeMetricsKindEnum[keyof typeof ExchangeMetricsKindEnum];
747
+ /**
748
+ * @export
749
+ */
750
+ export const ExchangeMetricsFilterEnum = {
751
+ ByMarket: 'byMarket'
752
+ } as const;
753
+ export type ExchangeMetricsFilterEnum = typeof ExchangeMetricsFilterEnum[keyof typeof ExchangeMetricsFilterEnum];
648
754
  /**
649
755
  * @export
650
756
  */
@@ -0,0 +1,70 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ *
5
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
6
+ *
7
+ * The version of the OpenAPI document:
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { mapValues } from '../runtime';
16
+ /**
17
+ *
18
+ * @export
19
+ * @interface ExchangeMetric
20
+ */
21
+ export interface ExchangeMetric {
22
+ /**
23
+ *
24
+ * @type {number}
25
+ * @memberof ExchangeMetric
26
+ */
27
+ timestamp: number;
28
+ /**
29
+ *
30
+ * @type {number}
31
+ * @memberof ExchangeMetric
32
+ */
33
+ data: number;
34
+ }
35
+
36
+ /**
37
+ * Check if a given object implements the ExchangeMetric interface.
38
+ */
39
+ export function instanceOfExchangeMetric(value: object): value is ExchangeMetric {
40
+ if (!('timestamp' in value) || value['timestamp'] === undefined) return false;
41
+ if (!('data' in value) || value['data'] === undefined) return false;
42
+ return true;
43
+ }
44
+
45
+ export function ExchangeMetricFromJSON(json: any): ExchangeMetric {
46
+ return ExchangeMetricFromJSONTyped(json, false);
47
+ }
48
+
49
+ export function ExchangeMetricFromJSONTyped(json: any, ignoreDiscriminator: boolean): ExchangeMetric {
50
+ if (json == null) {
51
+ return json;
52
+ }
53
+ return {
54
+
55
+ 'timestamp': json['timestamp'],
56
+ 'data': json['data'],
57
+ };
58
+ }
59
+
60
+ export function ExchangeMetricToJSON(value?: ExchangeMetric | null): any {
61
+ if (value == null) {
62
+ return value;
63
+ }
64
+ return {
65
+
66
+ 'timestamp': value['timestamp'],
67
+ 'data': value['data'],
68
+ };
69
+ }
70
+
@@ -13,6 +13,12 @@
13
13
  */
14
14
 
15
15
  import { mapValues } from '../runtime';
16
+ import type { AccountAsset } from './AccountAsset';
17
+ import {
18
+ AccountAssetFromJSON,
19
+ AccountAssetFromJSONTyped,
20
+ AccountAssetToJSON,
21
+ } from './AccountAsset';
16
22
  import type { PublicPoolShare } from './PublicPoolShare';
17
23
  import {
18
24
  PublicPoolShareFromJSON,
@@ -128,6 +134,12 @@ export interface PublicPoolMetadata {
128
134
  * @memberof PublicPoolMetadata
129
135
  */
130
136
  account_share?: PublicPoolShare;
137
+ /**
138
+ *
139
+ * @type {Array<AccountAsset>}
140
+ * @memberof PublicPoolMetadata
141
+ */
142
+ assets: Array<AccountAsset>;
131
143
  }
132
144
 
133
145
  /**
@@ -149,6 +161,7 @@ export function instanceOfPublicPoolMetadata(value: object): value is PublicPool
149
161
  if (!('total_spot_value' in value) || value['total_spot_value'] === undefined) return false;
150
162
  if (!('total_perps_value' in value) || value['total_perps_value'] === undefined) return false;
151
163
  if (!('total_shares' in value) || value['total_shares'] === undefined) return false;
164
+ if (!('assets' in value) || value['assets'] === undefined) return false;
152
165
  return true;
153
166
  }
154
167
 
@@ -179,6 +192,7 @@ export function PublicPoolMetadataFromJSONTyped(json: any, ignoreDiscriminator:
179
192
  'total_perps_value': json['total_perps_value'],
180
193
  'total_shares': json['total_shares'],
181
194
  'account_share': json['account_share'] == null ? undefined : PublicPoolShareFromJSON(json['account_share']),
195
+ 'assets': ((json['assets'] as Array<any>).map(AccountAssetFromJSON)),
182
196
  };
183
197
  }
184
198
 
@@ -205,6 +219,7 @@ export function PublicPoolMetadataToJSON(value?: PublicPoolMetadata | null): any
205
219
  'total_perps_value': value['total_perps_value'],
206
220
  'total_shares': value['total_shares'],
207
221
  'account_share': PublicPoolShareToJSON(value['account_share']),
222
+ 'assets': ((value['assets'] as Array<any>).map(AccountAssetToJSON)),
208
223
  };
209
224
  }
210
225
 
@@ -0,0 +1,129 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ *
5
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
6
+ *
7
+ * The version of the OpenAPI document:
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { mapValues } from '../runtime';
16
+ /**
17
+ *
18
+ * @export
19
+ * @interface ReqGetExchangeMetrics
20
+ */
21
+ export interface ReqGetExchangeMetrics {
22
+ /**
23
+ *
24
+ * @type {string}
25
+ * @memberof ReqGetExchangeMetrics
26
+ */
27
+ period: ReqGetExchangeMetricsPeriodEnum;
28
+ /**
29
+ *
30
+ * @type {string}
31
+ * @memberof ReqGetExchangeMetrics
32
+ */
33
+ kind: ReqGetExchangeMetricsKindEnum;
34
+ /**
35
+ *
36
+ * @type {string}
37
+ * @memberof ReqGetExchangeMetrics
38
+ */
39
+ filter?: ReqGetExchangeMetricsFilterEnum;
40
+ /**
41
+ *
42
+ * @type {string}
43
+ * @memberof ReqGetExchangeMetrics
44
+ */
45
+ value?: string;
46
+ }
47
+
48
+
49
+ /**
50
+ * @export
51
+ */
52
+ export const ReqGetExchangeMetricsPeriodEnum = {
53
+ W: 'w',
54
+ M: 'm',
55
+ Q: 'q',
56
+ Y: 'y',
57
+ All: 'all'
58
+ } as const;
59
+ export type ReqGetExchangeMetricsPeriodEnum = typeof ReqGetExchangeMetricsPeriodEnum[keyof typeof ReqGetExchangeMetricsPeriodEnum];
60
+
61
+ /**
62
+ * @export
63
+ */
64
+ export const ReqGetExchangeMetricsKindEnum = {
65
+ Volume: 'volume',
66
+ MakerFee: 'maker_fee',
67
+ TakerFee: 'taker_fee',
68
+ LiquidationFee: 'liquidation_fee',
69
+ TradeCount: 'trade_count',
70
+ LiquidationCount: 'liquidation_count',
71
+ LiquidationVolume: 'liquidation_volume',
72
+ Inflow: 'inflow',
73
+ Outflow: 'outflow',
74
+ TransferFee: 'transfer_fee',
75
+ WithdrawFee: 'withdraw_fee',
76
+ OpenInterest: 'open_interest',
77
+ AccountCount: 'account_count',
78
+ ActiveAccountCount: 'active_account_count'
79
+ } as const;
80
+ export type ReqGetExchangeMetricsKindEnum = typeof ReqGetExchangeMetricsKindEnum[keyof typeof ReqGetExchangeMetricsKindEnum];
81
+
82
+ /**
83
+ * @export
84
+ */
85
+ export const ReqGetExchangeMetricsFilterEnum = {
86
+ ByMarket: 'byMarket'
87
+ } as const;
88
+ export type ReqGetExchangeMetricsFilterEnum = typeof ReqGetExchangeMetricsFilterEnum[keyof typeof ReqGetExchangeMetricsFilterEnum];
89
+
90
+
91
+ /**
92
+ * Check if a given object implements the ReqGetExchangeMetrics interface.
93
+ */
94
+ export function instanceOfReqGetExchangeMetrics(value: object): value is ReqGetExchangeMetrics {
95
+ if (!('period' in value) || value['period'] === undefined) return false;
96
+ if (!('kind' in value) || value['kind'] === undefined) return false;
97
+ return true;
98
+ }
99
+
100
+ export function ReqGetExchangeMetricsFromJSON(json: any): ReqGetExchangeMetrics {
101
+ return ReqGetExchangeMetricsFromJSONTyped(json, false);
102
+ }
103
+
104
+ export function ReqGetExchangeMetricsFromJSONTyped(json: any, ignoreDiscriminator: boolean): ReqGetExchangeMetrics {
105
+ if (json == null) {
106
+ return json;
107
+ }
108
+ return {
109
+
110
+ 'period': json['period'],
111
+ 'kind': json['kind'],
112
+ 'filter': json['filter'] == null ? undefined : json['filter'],
113
+ 'value': json['value'] == null ? undefined : json['value'],
114
+ };
115
+ }
116
+
117
+ export function ReqGetExchangeMetricsToJSON(value?: ReqGetExchangeMetrics | null): any {
118
+ if (value == null) {
119
+ return value;
120
+ }
121
+ return {
122
+
123
+ 'period': value['period'],
124
+ 'kind': value['kind'],
125
+ 'filter': value['filter'],
126
+ 'value': value['value'],
127
+ };
128
+ }
129
+
@@ -0,0 +1,85 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ *
5
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
6
+ *
7
+ * The version of the OpenAPI document:
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { mapValues } from '../runtime';
16
+ import type { ExchangeMetric } from './ExchangeMetric';
17
+ import {
18
+ ExchangeMetricFromJSON,
19
+ ExchangeMetricFromJSONTyped,
20
+ ExchangeMetricToJSON,
21
+ } from './ExchangeMetric';
22
+
23
+ /**
24
+ *
25
+ * @export
26
+ * @interface RespGetExchangeMetrics
27
+ */
28
+ export interface RespGetExchangeMetrics {
29
+ /**
30
+ *
31
+ * @type {number}
32
+ * @memberof RespGetExchangeMetrics
33
+ */
34
+ code: number;
35
+ /**
36
+ *
37
+ * @type {string}
38
+ * @memberof RespGetExchangeMetrics
39
+ */
40
+ message?: string;
41
+ /**
42
+ *
43
+ * @type {Array<ExchangeMetric>}
44
+ * @memberof RespGetExchangeMetrics
45
+ */
46
+ metrics: Array<ExchangeMetric>;
47
+ }
48
+
49
+ /**
50
+ * Check if a given object implements the RespGetExchangeMetrics interface.
51
+ */
52
+ export function instanceOfRespGetExchangeMetrics(value: object): value is RespGetExchangeMetrics {
53
+ if (!('code' in value) || value['code'] === undefined) return false;
54
+ if (!('metrics' in value) || value['metrics'] === undefined) return false;
55
+ return true;
56
+ }
57
+
58
+ export function RespGetExchangeMetricsFromJSON(json: any): RespGetExchangeMetrics {
59
+ return RespGetExchangeMetricsFromJSONTyped(json, false);
60
+ }
61
+
62
+ export function RespGetExchangeMetricsFromJSONTyped(json: any, ignoreDiscriminator: boolean): RespGetExchangeMetrics {
63
+ if (json == null) {
64
+ return json;
65
+ }
66
+ return {
67
+
68
+ 'code': json['code'],
69
+ 'message': json['message'] == null ? undefined : json['message'],
70
+ 'metrics': ((json['metrics'] as Array<any>).map(ExchangeMetricFromJSON)),
71
+ };
72
+ }
73
+
74
+ export function RespGetExchangeMetricsToJSON(value?: RespGetExchangeMetrics | null): any {
75
+ if (value == null) {
76
+ return value;
77
+ }
78
+ return {
79
+
80
+ 'code': value['code'],
81
+ 'message': value['message'],
82
+ 'metrics': ((value['metrics'] as Array<any>).map(ExchangeMetricToJSON)),
83
+ };
84
+ }
85
+
package/models/index.ts CHANGED
@@ -42,6 +42,7 @@ export * from './DetailedAccount';
42
42
  export * from './DetailedAccounts';
43
43
  export * from './DetailedCandlestick';
44
44
  export * from './EnrichedTx';
45
+ export * from './ExchangeMetric';
45
46
  export * from './ExchangeStats';
46
47
  export * from './ExportData';
47
48
  export * from './Funding';
@@ -107,6 +108,7 @@ export * from './ReqGetByAccount';
107
108
  export * from './ReqGetCandles';
108
109
  export * from './ReqGetCandlesticks';
109
110
  export * from './ReqGetDepositHistory';
111
+ export * from './ReqGetExchangeMetrics';
110
112
  export * from './ReqGetFastWithdrawInfo';
111
113
  export * from './ReqGetFundings';
112
114
  export * from './ReqGetGeckoOrderbook';
@@ -136,6 +138,7 @@ export * from './ReqIsWhitelisted';
136
138
  export * from './RespChangeAccountTier';
137
139
  export * from './RespGetApiTokens';
138
140
  export * from './RespGetBridgesByL1Addr';
141
+ export * from './RespGetExchangeMetrics';
139
142
  export * from './RespGetFastBridgeInfo';
140
143
  export * from './RespGetFastwithdrawalInfo';
141
144
  export * from './RespGetIsNextBridgeFast';
package/openapi.json CHANGED
@@ -1276,6 +1276,85 @@
1276
1276
  "description": "Get deposit supporting networks"
1277
1277
  }
1278
1278
  },
1279
+ "/api/v1/exchangeMetrics": {
1280
+ "get": {
1281
+ "summary": "exchangeMetrics",
1282
+ "operationId": "exchangeMetrics",
1283
+ "responses": {
1284
+ "200": {
1285
+ "description": "A successful response.",
1286
+ "schema": {
1287
+ "$ref": "#/definitions/RespGetExchangeMetrics"
1288
+ }
1289
+ },
1290
+ "400": {
1291
+ "description": "Bad request",
1292
+ "schema": {
1293
+ "$ref": "#/definitions/ResultCode"
1294
+ }
1295
+ }
1296
+ },
1297
+ "parameters": [
1298
+ {
1299
+ "name": "period",
1300
+ "in": "query",
1301
+ "required": true,
1302
+ "type": "string",
1303
+ "enum": [
1304
+ "w",
1305
+ "m",
1306
+ "q",
1307
+ "y",
1308
+ "all"
1309
+ ]
1310
+ },
1311
+ {
1312
+ "name": "kind",
1313
+ "in": "query",
1314
+ "required": true,
1315
+ "type": "string",
1316
+ "enum": [
1317
+ "volume",
1318
+ "maker_fee",
1319
+ "taker_fee",
1320
+ "liquidation_fee",
1321
+ "trade_count",
1322
+ "liquidation_count",
1323
+ "liquidation_volume",
1324
+ "inflow",
1325
+ "outflow",
1326
+ "transfer_fee",
1327
+ "withdraw_fee",
1328
+ "open_interest",
1329
+ "account_count",
1330
+ "active_account_count"
1331
+ ]
1332
+ },
1333
+ {
1334
+ "name": "filter",
1335
+ "in": "query",
1336
+ "required": false,
1337
+ "type": "string",
1338
+ "enum": [
1339
+ "byMarket"
1340
+ ]
1341
+ },
1342
+ {
1343
+ "name": "value",
1344
+ "in": "query",
1345
+ "required": false,
1346
+ "type": "string"
1347
+ }
1348
+ ],
1349
+ "tags": [
1350
+ "order"
1351
+ ],
1352
+ "consumes": [
1353
+ "multipart/form-data"
1354
+ ],
1355
+ "description": "Get exchange metrics"
1356
+ }
1357
+ },
1279
1358
  "/api/v1/exchangeStats": {
1280
1359
  "get": {
1281
1360
  "summary": "exchangeStats",
@@ -5511,6 +5590,26 @@
5511
5590
  "verified_at"
5512
5591
  ]
5513
5592
  },
5593
+ "ExchangeMetric": {
5594
+ "type": "object",
5595
+ "properties": {
5596
+ "timestamp": {
5597
+ "type": "integer",
5598
+ "format": "int64",
5599
+ "example": "1640995200"
5600
+ },
5601
+ "data": {
5602
+ "type": "number",
5603
+ "format": "double",
5604
+ "example": "93566.25"
5605
+ }
5606
+ },
5607
+ "title": "ExchangeMetric",
5608
+ "required": [
5609
+ "timestamp",
5610
+ "data"
5611
+ ]
5612
+ },
5514
5613
  "ExchangeStats": {
5515
5614
  "type": "object",
5516
5615
  "properties": {
@@ -7520,6 +7619,12 @@
7520
7619
  },
7521
7620
  "account_share": {
7522
7621
  "$ref": "#/definitions/PublicPoolShare"
7622
+ },
7623
+ "assets": {
7624
+ "type": "array",
7625
+ "items": {
7626
+ "$ref": "#/definitions/AccountAsset"
7627
+ }
7523
7628
  }
7524
7629
  },
7525
7630
  "title": "PublicPoolMetadata",
@@ -7538,7 +7643,8 @@
7538
7643
  "total_asset_value",
7539
7644
  "total_spot_value",
7540
7645
  "total_perps_value",
7541
- "total_shares"
7646
+ "total_shares",
7647
+ "assets"
7542
7648
  ]
7543
7649
  },
7544
7650
  "PublicPoolShare": {
@@ -8347,6 +8453,54 @@
8347
8453
  "l1_address"
8348
8454
  ]
8349
8455
  },
8456
+ "ReqGetExchangeMetrics": {
8457
+ "type": "object",
8458
+ "properties": {
8459
+ "period": {
8460
+ "type": "string",
8461
+ "enum": [
8462
+ "w",
8463
+ "m",
8464
+ "q",
8465
+ "y",
8466
+ "all"
8467
+ ]
8468
+ },
8469
+ "kind": {
8470
+ "type": "string",
8471
+ "enum": [
8472
+ "volume",
8473
+ "maker_fee",
8474
+ "taker_fee",
8475
+ "liquidation_fee",
8476
+ "trade_count",
8477
+ "liquidation_count",
8478
+ "liquidation_volume",
8479
+ "inflow",
8480
+ "outflow",
8481
+ "transfer_fee",
8482
+ "withdraw_fee",
8483
+ "open_interest",
8484
+ "account_count",
8485
+ "active_account_count"
8486
+ ]
8487
+ },
8488
+ "filter": {
8489
+ "type": "string",
8490
+ "enum": [
8491
+ "byMarket"
8492
+ ]
8493
+ },
8494
+ "value": {
8495
+ "type": "string"
8496
+ }
8497
+ },
8498
+ "title": "ReqGetExchangeMetrics",
8499
+ "required": [
8500
+ "period",
8501
+ "kind"
8502
+ ]
8503
+ },
8350
8504
  "ReqGetExchangeStats": {
8351
8505
  "type": "object",
8352
8506
  "title": "ReqGetExchangeStats"
@@ -9245,6 +9399,30 @@
9245
9399
  "bridges"
9246
9400
  ]
9247
9401
  },
9402
+ "RespGetExchangeMetrics": {
9403
+ "type": "object",
9404
+ "properties": {
9405
+ "code": {
9406
+ "type": "integer",
9407
+ "format": "int32",
9408
+ "example": "200"
9409
+ },
9410
+ "message": {
9411
+ "type": "string"
9412
+ },
9413
+ "metrics": {
9414
+ "type": "array",
9415
+ "items": {
9416
+ "$ref": "#/definitions/ExchangeMetric"
9417
+ }
9418
+ }
9419
+ },
9420
+ "title": "RespGetExchangeMetrics",
9421
+ "required": [
9422
+ "code",
9423
+ "metrics"
9424
+ ]
9425
+ },
9248
9426
  "RespGetFastBridgeInfo": {
9249
9427
  "type": "object",
9250
9428
  "properties": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "zklighter-perps",
3
- "version": "1.0.192",
3
+ "version": "1.0.194",
4
4
  "description": "zkLighter Perps SDK",
5
5
  "main": "index.ts",
6
6
  "directories": {