zklighter-perps 1.0.273 → 1.0.275

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.
@@ -128,6 +128,9 @@ models/Referral.ts
128
128
  models/ReferralCode.ts
129
129
  models/ReferralPointEntry.ts
130
130
  models/ReferralPoints.ts
131
+ models/ReferralTotals.ts
132
+ models/ReferralWeeklyStat.ts
133
+ models/ReferralWeeklyStats.ts
131
134
  models/ReqDoFaucet.ts
132
135
  models/ReqExportData.ts
133
136
  models/ReqGetAccount.ts
@@ -180,6 +183,7 @@ models/ReqGetRangeWithIndexSortable.ts
180
183
  models/ReqGetRecentTrades.ts
181
184
  models/ReqGetReferralCode.ts
182
185
  models/ReqGetReferralPoints.ts
186
+ models/ReqGetReferralWeeklyStats.ts
183
187
  models/ReqGetRollingInfo.ts
184
188
  models/ReqGetStockFinancials.ts
185
189
  models/ReqGetSyntheticSpotInfo.ts
@@ -17,6 +17,7 @@ import * as runtime from '../runtime';
17
17
  import type {
18
18
  ReferralCode,
19
19
  ReferralPoints,
20
+ ReferralWeeklyStats,
20
21
  RespUpdateKickback,
21
22
  RespUpdateReferralCode,
22
23
  ResultCode,
@@ -27,6 +28,8 @@ import {
27
28
  ReferralCodeToJSON,
28
29
  ReferralPointsFromJSON,
29
30
  ReferralPointsToJSON,
31
+ ReferralWeeklyStatsFromJSON,
32
+ ReferralWeeklyStatsToJSON,
30
33
  RespUpdateKickbackFromJSON,
31
34
  RespUpdateKickbackToJSON,
32
35
  RespUpdateReferralCodeFromJSON,
@@ -90,6 +93,12 @@ export interface ReferralUserReferralsRequest {
90
93
  stats_end_timestamp?: number;
91
94
  }
92
95
 
96
+ export interface ReferralWeeklyStatsRequest {
97
+ l1_address: string;
98
+ authorization?: string;
99
+ auth?: string;
100
+ }
101
+
93
102
  /**
94
103
  *
95
104
  */
@@ -556,4 +565,51 @@ export class ReferralApi extends runtime.BaseAPI {
556
565
  return await response.value();
557
566
  }
558
567
 
568
+ /**
569
+ * Get weekly trade stats summed across a referrer\'s referred users
570
+ * referral_weeklyStats
571
+ */
572
+ async referralWeeklyStatsRaw(requestParameters: ReferralWeeklyStatsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<ReferralWeeklyStats>> {
573
+ if (requestParameters['l1_address'] == null) {
574
+ throw new runtime.RequiredError(
575
+ 'l1_address',
576
+ 'Required parameter "l1_address" was null or undefined when calling referralWeeklyStats().'
577
+ );
578
+ }
579
+
580
+ const queryParameters: any = {};
581
+
582
+ if (requestParameters['auth'] != null) {
583
+ queryParameters['auth'] = requestParameters['auth'];
584
+ }
585
+
586
+ if (requestParameters['l1_address'] != null) {
587
+ queryParameters['l1_address'] = requestParameters['l1_address'];
588
+ }
589
+
590
+ const headerParameters: runtime.HTTPHeaders = {};
591
+
592
+ if (requestParameters['authorization'] != null) {
593
+ headerParameters['authorization'] = String(requestParameters['authorization']);
594
+ }
595
+
596
+ const response = await this.request({
597
+ path: `/api/v1/referral/weeklyStats`,
598
+ method: 'GET',
599
+ headers: headerParameters,
600
+ query: queryParameters,
601
+ }, initOverrides);
602
+
603
+ return new runtime.JSONApiResponse(response, (jsonValue) => ReferralWeeklyStatsFromJSON(jsonValue));
604
+ }
605
+
606
+ /**
607
+ * Get weekly trade stats summed across a referrer\'s referred users
608
+ * referral_weeklyStats
609
+ */
610
+ async referralWeeklyStats(requestParameters: ReferralWeeklyStatsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<ReferralWeeklyStats> {
611
+ const response = await this.referralWeeklyStatsRaw(requestParameters, initOverrides);
612
+ return await response.value();
613
+ }
614
+
559
615
  }
@@ -883,7 +883,8 @@ export const TransferHistoryTypeEnum = {
883
883
  L2CreatePublicPool: 'L2CreatePublicPool',
884
884
  L2CreateStakingPool: 'L2CreateStakingPool',
885
885
  L1BurnShares: 'L1BurnShares',
886
- L1UnstakeAssets: 'L1UnstakeAssets'
886
+ L1UnstakeAssets: 'L1UnstakeAssets',
887
+ ReferralProgramPayout: 'ReferralProgramPayout'
887
888
  } as const;
888
889
  export type TransferHistoryTypeEnum = typeof TransferHistoryTypeEnum[keyof typeof TransferHistoryTypeEnum];
889
890
  /**
@@ -0,0 +1,124 @@
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 ReferralTotals
20
+ */
21
+ export interface ReferralTotals {
22
+ /**
23
+ *
24
+ * @type {string}
25
+ * @memberof ReferralTotals
26
+ */
27
+ free_maker_volume: string;
28
+ /**
29
+ *
30
+ * @type {string}
31
+ * @memberof ReferralTotals
32
+ */
33
+ free_taker_volume: string;
34
+ /**
35
+ *
36
+ * @type {string}
37
+ * @memberof ReferralTotals
38
+ */
39
+ non_free_maker_volume: string;
40
+ /**
41
+ *
42
+ * @type {string}
43
+ * @memberof ReferralTotals
44
+ */
45
+ non_free_taker_volume: string;
46
+ /**
47
+ *
48
+ * @type {string}
49
+ * @memberof ReferralTotals
50
+ */
51
+ maker_fees_paid: string;
52
+ /**
53
+ *
54
+ * @type {string}
55
+ * @memberof ReferralTotals
56
+ */
57
+ taker_fees_paid: string;
58
+ /**
59
+ *
60
+ * @type {number}
61
+ * @memberof ReferralTotals
62
+ */
63
+ total_referrals: number;
64
+ /**
65
+ *
66
+ * @type {number}
67
+ * @memberof ReferralTotals
68
+ */
69
+ total_premium_referrals: number;
70
+ }
71
+
72
+ /**
73
+ * Check if a given object implements the ReferralTotals interface.
74
+ */
75
+ export function instanceOfReferralTotals(value: object): value is ReferralTotals {
76
+ if (!('free_maker_volume' in value) || value['free_maker_volume'] === undefined) return false;
77
+ if (!('free_taker_volume' in value) || value['free_taker_volume'] === undefined) return false;
78
+ if (!('non_free_maker_volume' in value) || value['non_free_maker_volume'] === undefined) return false;
79
+ if (!('non_free_taker_volume' in value) || value['non_free_taker_volume'] === undefined) return false;
80
+ if (!('maker_fees_paid' in value) || value['maker_fees_paid'] === undefined) return false;
81
+ if (!('taker_fees_paid' in value) || value['taker_fees_paid'] === undefined) return false;
82
+ if (!('total_referrals' in value) || value['total_referrals'] === undefined) return false;
83
+ if (!('total_premium_referrals' in value) || value['total_premium_referrals'] === undefined) return false;
84
+ return true;
85
+ }
86
+
87
+ export function ReferralTotalsFromJSON(json: any): ReferralTotals {
88
+ return ReferralTotalsFromJSONTyped(json, false);
89
+ }
90
+
91
+ export function ReferralTotalsFromJSONTyped(json: any, ignoreDiscriminator: boolean): ReferralTotals {
92
+ if (json == null) {
93
+ return json;
94
+ }
95
+ return {
96
+
97
+ 'free_maker_volume': json['free_maker_volume'],
98
+ 'free_taker_volume': json['free_taker_volume'],
99
+ 'non_free_maker_volume': json['non_free_maker_volume'],
100
+ 'non_free_taker_volume': json['non_free_taker_volume'],
101
+ 'maker_fees_paid': json['maker_fees_paid'],
102
+ 'taker_fees_paid': json['taker_fees_paid'],
103
+ 'total_referrals': json['total_referrals'],
104
+ 'total_premium_referrals': json['total_premium_referrals'],
105
+ };
106
+ }
107
+
108
+ export function ReferralTotalsToJSON(value?: ReferralTotals | null): any {
109
+ if (value == null) {
110
+ return value;
111
+ }
112
+ return {
113
+
114
+ 'free_maker_volume': value['free_maker_volume'],
115
+ 'free_taker_volume': value['free_taker_volume'],
116
+ 'non_free_maker_volume': value['non_free_maker_volume'],
117
+ 'non_free_taker_volume': value['non_free_taker_volume'],
118
+ 'maker_fees_paid': value['maker_fees_paid'],
119
+ 'taker_fees_paid': value['taker_fees_paid'],
120
+ 'total_referrals': value['total_referrals'],
121
+ 'total_premium_referrals': value['total_premium_referrals'],
122
+ };
123
+ }
124
+
@@ -0,0 +1,86 @@
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 { TradeStats } from './TradeStats';
17
+ import {
18
+ TradeStatsFromJSON,
19
+ TradeStatsFromJSONTyped,
20
+ TradeStatsToJSON,
21
+ } from './TradeStats';
22
+
23
+ /**
24
+ *
25
+ * @export
26
+ * @interface ReferralWeeklyStat
27
+ */
28
+ export interface ReferralWeeklyStat {
29
+ /**
30
+ *
31
+ * @type {number}
32
+ * @memberof ReferralWeeklyStat
33
+ */
34
+ start_timestamp: number;
35
+ /**
36
+ *
37
+ * @type {number}
38
+ * @memberof ReferralWeeklyStat
39
+ */
40
+ end_timestamp: number;
41
+ /**
42
+ *
43
+ * @type {TradeStats}
44
+ * @memberof ReferralWeeklyStat
45
+ */
46
+ trade_stats: TradeStats;
47
+ }
48
+
49
+ /**
50
+ * Check if a given object implements the ReferralWeeklyStat interface.
51
+ */
52
+ export function instanceOfReferralWeeklyStat(value: object): value is ReferralWeeklyStat {
53
+ if (!('start_timestamp' in value) || value['start_timestamp'] === undefined) return false;
54
+ if (!('end_timestamp' in value) || value['end_timestamp'] === undefined) return false;
55
+ if (!('trade_stats' in value) || value['trade_stats'] === undefined) return false;
56
+ return true;
57
+ }
58
+
59
+ export function ReferralWeeklyStatFromJSON(json: any): ReferralWeeklyStat {
60
+ return ReferralWeeklyStatFromJSONTyped(json, false);
61
+ }
62
+
63
+ export function ReferralWeeklyStatFromJSONTyped(json: any, ignoreDiscriminator: boolean): ReferralWeeklyStat {
64
+ if (json == null) {
65
+ return json;
66
+ }
67
+ return {
68
+
69
+ 'start_timestamp': json['start_timestamp'],
70
+ 'end_timestamp': json['end_timestamp'],
71
+ 'trade_stats': TradeStatsFromJSON(json['trade_stats']),
72
+ };
73
+ }
74
+
75
+ export function ReferralWeeklyStatToJSON(value?: ReferralWeeklyStat | null): any {
76
+ if (value == null) {
77
+ return value;
78
+ }
79
+ return {
80
+
81
+ 'start_timestamp': value['start_timestamp'],
82
+ 'end_timestamp': value['end_timestamp'],
83
+ 'trade_stats': TradeStatsToJSON(value['trade_stats']),
84
+ };
85
+ }
86
+
@@ -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 { ReferralWeeklyStat } from './ReferralWeeklyStat';
17
+ import {
18
+ ReferralWeeklyStatFromJSON,
19
+ ReferralWeeklyStatFromJSONTyped,
20
+ ReferralWeeklyStatToJSON,
21
+ } from './ReferralWeeklyStat';
22
+
23
+ /**
24
+ *
25
+ * @export
26
+ * @interface ReferralWeeklyStats
27
+ */
28
+ export interface ReferralWeeklyStats {
29
+ /**
30
+ *
31
+ * @type {number}
32
+ * @memberof ReferralWeeklyStats
33
+ */
34
+ code: number;
35
+ /**
36
+ *
37
+ * @type {string}
38
+ * @memberof ReferralWeeklyStats
39
+ */
40
+ message?: string;
41
+ /**
42
+ *
43
+ * @type {Array<ReferralWeeklyStat>}
44
+ * @memberof ReferralWeeklyStats
45
+ */
46
+ weeks: Array<ReferralWeeklyStat>;
47
+ }
48
+
49
+ /**
50
+ * Check if a given object implements the ReferralWeeklyStats interface.
51
+ */
52
+ export function instanceOfReferralWeeklyStats(value: object): value is ReferralWeeklyStats {
53
+ if (!('code' in value) || value['code'] === undefined) return false;
54
+ if (!('weeks' in value) || value['weeks'] === undefined) return false;
55
+ return true;
56
+ }
57
+
58
+ export function ReferralWeeklyStatsFromJSON(json: any): ReferralWeeklyStats {
59
+ return ReferralWeeklyStatsFromJSONTyped(json, false);
60
+ }
61
+
62
+ export function ReferralWeeklyStatsFromJSONTyped(json: any, ignoreDiscriminator: boolean): ReferralWeeklyStats {
63
+ if (json == null) {
64
+ return json;
65
+ }
66
+ return {
67
+
68
+ 'code': json['code'],
69
+ 'message': json['message'] == null ? undefined : json['message'],
70
+ 'weeks': ((json['weeks'] as Array<any>).map(ReferralWeeklyStatFromJSON)),
71
+ };
72
+ }
73
+
74
+ export function ReferralWeeklyStatsToJSON(value?: ReferralWeeklyStats | null): any {
75
+ if (value == null) {
76
+ return value;
77
+ }
78
+ return {
79
+
80
+ 'code': value['code'],
81
+ 'message': value['message'],
82
+ 'weeks': ((value['weeks'] as Array<any>).map(ReferralWeeklyStatToJSON)),
83
+ };
84
+ }
85
+
@@ -0,0 +1,69 @@
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 ReqGetReferralWeeklyStats
20
+ */
21
+ export interface ReqGetReferralWeeklyStats {
22
+ /**
23
+ *
24
+ * @type {string}
25
+ * @memberof ReqGetReferralWeeklyStats
26
+ */
27
+ auth?: string;
28
+ /**
29
+ *
30
+ * @type {string}
31
+ * @memberof ReqGetReferralWeeklyStats
32
+ */
33
+ l1_address: string;
34
+ }
35
+
36
+ /**
37
+ * Check if a given object implements the ReqGetReferralWeeklyStats interface.
38
+ */
39
+ export function instanceOfReqGetReferralWeeklyStats(value: object): value is ReqGetReferralWeeklyStats {
40
+ if (!('l1_address' in value) || value['l1_address'] === undefined) return false;
41
+ return true;
42
+ }
43
+
44
+ export function ReqGetReferralWeeklyStatsFromJSON(json: any): ReqGetReferralWeeklyStats {
45
+ return ReqGetReferralWeeklyStatsFromJSONTyped(json, false);
46
+ }
47
+
48
+ export function ReqGetReferralWeeklyStatsFromJSONTyped(json: any, ignoreDiscriminator: boolean): ReqGetReferralWeeklyStats {
49
+ if (json == null) {
50
+ return json;
51
+ }
52
+ return {
53
+
54
+ 'auth': json['auth'] == null ? undefined : json['auth'],
55
+ 'l1_address': json['l1_address'],
56
+ };
57
+ }
58
+
59
+ export function ReqGetReferralWeeklyStatsToJSON(value?: ReqGetReferralWeeklyStats | null): any {
60
+ if (value == null) {
61
+ return value;
62
+ }
63
+ return {
64
+
65
+ 'auth': value['auth'],
66
+ 'l1_address': value['l1_address'],
67
+ };
68
+ }
69
+
@@ -59,7 +59,8 @@ export const ReqGetTransferHistoryTypeEnum = {
59
59
  L2CreatePublicPool: 'L2CreatePublicPool',
60
60
  L2CreateStakingPool: 'L2CreateStakingPool',
61
61
  L1BurnShares: 'L1BurnShares',
62
- L1UnstakeAssets: 'L1UnstakeAssets'
62
+ L1UnstakeAssets: 'L1UnstakeAssets',
63
+ ReferralProgramPayout: 'ReferralProgramPayout'
63
64
  } as const;
64
65
  export type ReqGetTransferHistoryTypeEnum = typeof ReqGetTransferHistoryTypeEnum[keyof typeof ReqGetTransferHistoryTypeEnum];
65
66
 
@@ -67,6 +67,42 @@ export interface TradeStats {
67
67
  * @memberof TradeStats
68
68
  */
69
69
  mobile_browser_volume: string;
70
+ /**
71
+ *
72
+ * @type {string}
73
+ * @memberof TradeStats
74
+ */
75
+ free_maker_volume: string;
76
+ /**
77
+ *
78
+ * @type {string}
79
+ * @memberof TradeStats
80
+ */
81
+ free_taker_volume: string;
82
+ /**
83
+ *
84
+ * @type {string}
85
+ * @memberof TradeStats
86
+ */
87
+ non_free_maker_volume: string;
88
+ /**
89
+ *
90
+ * @type {string}
91
+ * @memberof TradeStats
92
+ */
93
+ non_free_taker_volume: string;
94
+ /**
95
+ *
96
+ * @type {string}
97
+ * @memberof TradeStats
98
+ */
99
+ maker_fees_paid: string;
100
+ /**
101
+ *
102
+ * @type {string}
103
+ * @memberof TradeStats
104
+ */
105
+ taker_fees_paid: string;
70
106
  }
71
107
 
72
108
  /**
@@ -81,6 +117,12 @@ export function instanceOfTradeStats(value: object): value is TradeStats {
81
117
  if (!('mobile_app_volume' in value) || value['mobile_app_volume'] === undefined) return false;
82
118
  if (!('mobile_browser_count' in value) || value['mobile_browser_count'] === undefined) return false;
83
119
  if (!('mobile_browser_volume' in value) || value['mobile_browser_volume'] === undefined) return false;
120
+ if (!('free_maker_volume' in value) || value['free_maker_volume'] === undefined) return false;
121
+ if (!('free_taker_volume' in value) || value['free_taker_volume'] === undefined) return false;
122
+ if (!('non_free_maker_volume' in value) || value['non_free_maker_volume'] === undefined) return false;
123
+ if (!('non_free_taker_volume' in value) || value['non_free_taker_volume'] === undefined) return false;
124
+ if (!('maker_fees_paid' in value) || value['maker_fees_paid'] === undefined) return false;
125
+ if (!('taker_fees_paid' in value) || value['taker_fees_paid'] === undefined) return false;
84
126
  return true;
85
127
  }
86
128
 
@@ -102,6 +144,12 @@ export function TradeStatsFromJSONTyped(json: any, ignoreDiscriminator: boolean)
102
144
  'mobile_app_volume': json['mobile_app_volume'],
103
145
  'mobile_browser_count': json['mobile_browser_count'],
104
146
  'mobile_browser_volume': json['mobile_browser_volume'],
147
+ 'free_maker_volume': json['free_maker_volume'],
148
+ 'free_taker_volume': json['free_taker_volume'],
149
+ 'non_free_maker_volume': json['non_free_maker_volume'],
150
+ 'non_free_taker_volume': json['non_free_taker_volume'],
151
+ 'maker_fees_paid': json['maker_fees_paid'],
152
+ 'taker_fees_paid': json['taker_fees_paid'],
105
153
  };
106
154
  }
107
155
 
@@ -119,6 +167,12 @@ export function TradeStatsToJSON(value?: TradeStats | null): any {
119
167
  'mobile_app_volume': value['mobile_app_volume'],
120
168
  'mobile_browser_count': value['mobile_browser_count'],
121
169
  'mobile_browser_volume': value['mobile_browser_volume'],
170
+ 'free_maker_volume': value['free_maker_volume'],
171
+ 'free_taker_volume': value['free_taker_volume'],
172
+ 'non_free_maker_volume': value['non_free_maker_volume'],
173
+ 'non_free_taker_volume': value['non_free_taker_volume'],
174
+ 'maker_fees_paid': value['maker_fees_paid'],
175
+ 'taker_fees_paid': value['taker_fees_paid'],
122
176
  };
123
177
  }
124
178
 
@@ -13,6 +13,12 @@
13
13
  */
14
14
 
15
15
  import { mapValues } from '../runtime';
16
+ import type { ReferralTotals } from './ReferralTotals';
17
+ import {
18
+ ReferralTotalsFromJSON,
19
+ ReferralTotalsFromJSONTyped,
20
+ ReferralTotalsToJSON,
21
+ } from './ReferralTotals';
16
22
  import type { Referral } from './Referral';
17
23
  import {
18
24
  ReferralFromJSON,
@@ -50,6 +56,12 @@ export interface UserReferrals {
50
56
  * @memberof UserReferrals
51
57
  */
52
58
  used_code: string;
59
+ /**
60
+ *
61
+ * @type {ReferralTotals}
62
+ * @memberof UserReferrals
63
+ */
64
+ totals: ReferralTotals;
53
65
  /**
54
66
  *
55
67
  * @type {Array<Referral>}
@@ -65,6 +77,7 @@ export function instanceOfUserReferrals(value: object): value is UserReferrals {
65
77
  if (!('code' in value) || value['code'] === undefined) return false;
66
78
  if (!('cursor' in value) || value['cursor'] === undefined) return false;
67
79
  if (!('used_code' in value) || value['used_code'] === undefined) return false;
80
+ if (!('totals' in value) || value['totals'] === undefined) return false;
68
81
  if (!('referrals' in value) || value['referrals'] === undefined) return false;
69
82
  return true;
70
83
  }
@@ -83,6 +96,7 @@ export function UserReferralsFromJSONTyped(json: any, ignoreDiscriminator: boole
83
96
  'message': json['message'] == null ? undefined : json['message'],
84
97
  'cursor': json['cursor'],
85
98
  'used_code': json['used_code'],
99
+ 'totals': ReferralTotalsFromJSON(json['totals']),
86
100
  'referrals': ((json['referrals'] as Array<any>).map(ReferralFromJSON)),
87
101
  };
88
102
  }
@@ -97,6 +111,7 @@ export function UserReferralsToJSON(value?: UserReferrals | null): any {
97
111
  'message': value['message'],
98
112
  'cursor': value['cursor'],
99
113
  'used_code': value['used_code'],
114
+ 'totals': ReferralTotalsToJSON(value['totals']),
100
115
  'referrals': ((value['referrals'] as Array<any>).map(ReferralToJSON)),
101
116
  };
102
117
  }
package/models/index.ts CHANGED
@@ -109,6 +109,9 @@ export * from './Referral';
109
109
  export * from './ReferralCode';
110
110
  export * from './ReferralPointEntry';
111
111
  export * from './ReferralPoints';
112
+ export * from './ReferralTotals';
113
+ export * from './ReferralWeeklyStat';
114
+ export * from './ReferralWeeklyStats';
112
115
  export * from './ReqDoFaucet';
113
116
  export * from './ReqExportData';
114
117
  export * from './ReqGetAccount';
@@ -161,6 +164,7 @@ export * from './ReqGetRangeWithIndexSortable';
161
164
  export * from './ReqGetRecentTrades';
162
165
  export * from './ReqGetReferralCode';
163
166
  export * from './ReqGetReferralPoints';
167
+ export * from './ReqGetReferralWeeklyStats';
164
168
  export * from './ReqGetRollingInfo';
165
169
  export * from './ReqGetStockFinancials';
166
170
  export * from './ReqGetSyntheticSpotInfo';
package/openapi.json CHANGED
@@ -3993,6 +3993,53 @@
3993
3993
  "description": "Get user referrals"
3994
3994
  }
3995
3995
  },
3996
+ "/api/v1/referral/weeklyStats": {
3997
+ "get": {
3998
+ "summary": "referral_weeklyStats",
3999
+ "operationId": "referral_weeklyStats",
4000
+ "responses": {
4001
+ "200": {
4002
+ "description": "A successful response.",
4003
+ "schema": {
4004
+ "$ref": "#/definitions/ReferralWeeklyStats"
4005
+ }
4006
+ },
4007
+ "400": {
4008
+ "description": "Bad request",
4009
+ "schema": {
4010
+ "$ref": "#/definitions/ResultCode"
4011
+ }
4012
+ }
4013
+ },
4014
+ "parameters": [
4015
+ {
4016
+ "name": "authorization",
4017
+ "in": "header",
4018
+ "required": false,
4019
+ "type": "string"
4020
+ },
4021
+ {
4022
+ "name": "auth",
4023
+ "in": "query",
4024
+ "required": false,
4025
+ "type": "string"
4026
+ },
4027
+ {
4028
+ "name": "l1_address",
4029
+ "in": "query",
4030
+ "required": true,
4031
+ "type": "string"
4032
+ }
4033
+ ],
4034
+ "tags": [
4035
+ "referral"
4036
+ ],
4037
+ "consumes": [
4038
+ "multipart/form-data"
4039
+ ],
4040
+ "description": "Get weekly trade stats summed across a referrer's referred users"
4041
+ }
4042
+ },
3996
4043
  "/api/v1/rfq/create": {
3997
4044
  "post": {
3998
4045
  "summary": "rfq_create",
@@ -4927,7 +4974,8 @@
4927
4974
  "L2CreatePublicPool",
4928
4975
  "L2CreateStakingPool",
4929
4976
  "L1BurnShares",
4930
- "L1UnstakeAssets"
4977
+ "L1UnstakeAssets",
4978
+ "ReferralProgramPayout"
4931
4979
  ]
4932
4980
  }
4933
4981
  }
@@ -10508,6 +10556,94 @@
10508
10556
  "reward_point_multiplier"
10509
10557
  ]
10510
10558
  },
10559
+ "ReferralTotals": {
10560
+ "type": "object",
10561
+ "properties": {
10562
+ "free_maker_volume": {
10563
+ "type": "string"
10564
+ },
10565
+ "free_taker_volume": {
10566
+ "type": "string"
10567
+ },
10568
+ "non_free_maker_volume": {
10569
+ "type": "string"
10570
+ },
10571
+ "non_free_taker_volume": {
10572
+ "type": "string"
10573
+ },
10574
+ "maker_fees_paid": {
10575
+ "type": "string"
10576
+ },
10577
+ "taker_fees_paid": {
10578
+ "type": "string"
10579
+ },
10580
+ "total_referrals": {
10581
+ "type": "integer",
10582
+ "format": "int64"
10583
+ },
10584
+ "total_premium_referrals": {
10585
+ "type": "integer",
10586
+ "format": "int64"
10587
+ }
10588
+ },
10589
+ "title": "ReferralTotals",
10590
+ "required": [
10591
+ "free_maker_volume",
10592
+ "free_taker_volume",
10593
+ "non_free_maker_volume",
10594
+ "non_free_taker_volume",
10595
+ "maker_fees_paid",
10596
+ "taker_fees_paid",
10597
+ "total_referrals",
10598
+ "total_premium_referrals"
10599
+ ]
10600
+ },
10601
+ "ReferralWeeklyStat": {
10602
+ "type": "object",
10603
+ "properties": {
10604
+ "start_timestamp": {
10605
+ "type": "integer",
10606
+ "format": "int64"
10607
+ },
10608
+ "end_timestamp": {
10609
+ "type": "integer",
10610
+ "format": "int64"
10611
+ },
10612
+ "trade_stats": {
10613
+ "$ref": "#/definitions/TradeStats"
10614
+ }
10615
+ },
10616
+ "title": "ReferralWeeklyStat",
10617
+ "required": [
10618
+ "start_timestamp",
10619
+ "end_timestamp",
10620
+ "trade_stats"
10621
+ ]
10622
+ },
10623
+ "ReferralWeeklyStats": {
10624
+ "type": "object",
10625
+ "properties": {
10626
+ "code": {
10627
+ "type": "integer",
10628
+ "format": "int32",
10629
+ "example": "200"
10630
+ },
10631
+ "message": {
10632
+ "type": "string"
10633
+ },
10634
+ "weeks": {
10635
+ "type": "array",
10636
+ "items": {
10637
+ "$ref": "#/definitions/ReferralWeeklyStat"
10638
+ }
10639
+ }
10640
+ },
10641
+ "title": "ReferralWeeklyStats",
10642
+ "required": [
10643
+ "code",
10644
+ "weeks"
10645
+ ]
10646
+ },
10511
10647
  "ReqAckNotif": {
10512
10648
  "type": "object",
10513
10649
  "properties": {
@@ -12023,6 +12159,21 @@
12023
12159
  "account_index"
12024
12160
  ]
12025
12161
  },
12162
+ "ReqGetReferralWeeklyStats": {
12163
+ "type": "object",
12164
+ "properties": {
12165
+ "auth": {
12166
+ "type": "string"
12167
+ },
12168
+ "l1_address": {
12169
+ "type": "string"
12170
+ }
12171
+ },
12172
+ "title": "ReqGetReferralWeeklyStats",
12173
+ "required": [
12174
+ "l1_address"
12175
+ ]
12176
+ },
12026
12177
  "ReqGetRollingInfo": {
12027
12178
  "type": "object",
12028
12179
  "properties": {
@@ -12212,7 +12363,8 @@
12212
12363
  "L2CreatePublicPool",
12213
12364
  "L2CreateStakingPool",
12214
12365
  "L1BurnShares",
12215
- "L1UnstakeAssets"
12366
+ "L1UnstakeAssets",
12367
+ "ReferralProgramPayout"
12216
12368
  ]
12217
12369
  }
12218
12370
  }
@@ -15167,6 +15319,24 @@
15167
15319
  },
15168
15320
  "mobile_browser_volume": {
15169
15321
  "type": "string"
15322
+ },
15323
+ "free_maker_volume": {
15324
+ "type": "string"
15325
+ },
15326
+ "free_taker_volume": {
15327
+ "type": "string"
15328
+ },
15329
+ "non_free_maker_volume": {
15330
+ "type": "string"
15331
+ },
15332
+ "non_free_taker_volume": {
15333
+ "type": "string"
15334
+ },
15335
+ "maker_fees_paid": {
15336
+ "type": "string"
15337
+ },
15338
+ "taker_fees_paid": {
15339
+ "type": "string"
15170
15340
  }
15171
15341
  },
15172
15342
  "title": "TradeStats",
@@ -15178,7 +15348,13 @@
15178
15348
  "mobile_app_count",
15179
15349
  "mobile_app_volume",
15180
15350
  "mobile_browser_count",
15181
- "mobile_browser_volume"
15351
+ "mobile_browser_volume",
15352
+ "free_maker_volume",
15353
+ "free_taker_volume",
15354
+ "non_free_maker_volume",
15355
+ "non_free_taker_volume",
15356
+ "maker_fees_paid",
15357
+ "taker_fees_paid"
15182
15358
  ]
15183
15359
  },
15184
15360
  "Trades": {
@@ -15605,6 +15781,9 @@
15605
15781
  "used_code": {
15606
15782
  "type": "string"
15607
15783
  },
15784
+ "totals": {
15785
+ "$ref": "#/definitions/ReferralTotals"
15786
+ },
15608
15787
  "referrals": {
15609
15788
  "type": "array",
15610
15789
  "items": {
@@ -15617,6 +15796,7 @@
15617
15796
  "code",
15618
15797
  "cursor",
15619
15798
  "used_code",
15799
+ "totals",
15620
15800
  "referrals"
15621
15801
  ]
15622
15802
  },
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "zklighter-perps",
3
- "version": "1.0.273",
3
+ "version": "1.0.275",
4
4
  "description": "Lighter Perps SDK",
5
5
  "main": "index.ts",
6
6
  "directories": {