@snagsolutions/sdk 0.1.0-alpha.20 → 0.1.0-alpha.201
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.
- package/CHANGELOG.md +1634 -0
- package/README.md +13 -23
- package/core.d.ts +19 -5
- package/core.d.ts.map +1 -1
- package/core.js +24 -17
- package/core.js.map +1 -1
- package/core.mjs +24 -17
- package/core.mjs.map +1 -1
- package/index.d.mts +7 -4
- package/index.d.ts +7 -4
- package/index.d.ts.map +1 -1
- package/index.js +8 -4
- package/index.js.map +1 -1
- package/index.mjs +8 -4
- package/index.mjs.map +1 -1
- package/package.json +4 -5
- package/resource.d.ts +1 -1
- package/resource.d.ts.map +1 -1
- package/resource.js.map +1 -1
- package/resource.mjs.map +1 -1
- package/resources/assets.d.ts +16 -2
- package/resources/assets.d.ts.map +1 -1
- package/resources/assets.js +8 -0
- package/resources/assets.js.map +1 -1
- package/resources/assets.mjs +8 -0
- package/resources/assets.mjs.map +1 -1
- package/resources/auctions/auctions.d.ts +368 -0
- package/resources/auctions/auctions.d.ts.map +1 -0
- package/resources/auctions/auctions.js +72 -0
- package/resources/auctions/auctions.js.map +1 -0
- package/resources/auctions/auctions.mjs +45 -0
- package/resources/auctions/auctions.mjs.map +1 -0
- package/resources/auctions/index.d.ts +3 -0
- package/resources/auctions/index.d.ts.map +1 -0
- package/resources/auctions/index.js +9 -0
- package/resources/auctions/index.js.map +1 -0
- package/resources/auctions/index.mjs +4 -0
- package/resources/auctions/index.mjs.map +1 -0
- package/resources/auctions/website-user-attributes/index.d.ts +3 -0
- package/resources/auctions/website-user-attributes/index.d.ts.map +1 -0
- package/resources/auctions/website-user-attributes/index.js +9 -0
- package/resources/auctions/website-user-attributes/index.js.map +1 -0
- package/resources/auctions/website-user-attributes/index.mjs +4 -0
- package/resources/auctions/website-user-attributes/index.mjs.map +1 -0
- package/resources/auctions/website-user-attributes/values.d.ts +126 -0
- package/resources/auctions/website-user-attributes/values.d.ts.map +1 -0
- package/resources/auctions/website-user-attributes/values.js +49 -0
- package/resources/auctions/website-user-attributes/values.js.map +1 -0
- package/resources/auctions/website-user-attributes/values.mjs +45 -0
- package/resources/auctions/website-user-attributes/values.mjs.map +1 -0
- package/resources/auctions/website-user-attributes/website-user-attributes.d.ts +136 -0
- package/resources/auctions/website-user-attributes/website-user-attributes.d.ts.map +1 -0
- package/resources/auctions/website-user-attributes/website-user-attributes.js +76 -0
- package/resources/auctions/website-user-attributes/website-user-attributes.js.map +1 -0
- package/resources/auctions/website-user-attributes/website-user-attributes.mjs +49 -0
- package/resources/auctions/website-user-attributes/website-user-attributes.mjs.map +1 -0
- package/resources/auctions/website-user-attributes.d.ts +2 -0
- package/resources/auctions/website-user-attributes.d.ts.map +1 -0
- package/resources/auctions/website-user-attributes.js +19 -0
- package/resources/auctions/website-user-attributes.js.map +1 -0
- package/resources/auctions/website-user-attributes.mjs +3 -0
- package/resources/auctions/website-user-attributes.mjs.map +1 -0
- package/resources/auctions.d.ts +1 -133
- package/resources/auctions.d.ts.map +1 -1
- package/resources/auctions.js +15 -22
- package/resources/auctions.js.map +1 -1
- package/resources/auctions.mjs +1 -20
- package/resources/auctions.mjs.map +1 -1
- package/resources/auth.d.ts +17 -4
- package/resources/auth.d.ts.map +1 -1
- package/resources/auth.js.map +1 -1
- package/resources/auth.mjs.map +1 -1
- package/resources/index.d.ts +2 -2
- package/resources/index.d.ts.map +1 -1
- package/resources/index.js +1 -1
- package/resources/index.js.map +1 -1
- package/resources/index.mjs +1 -1
- package/resources/index.mjs.map +1 -1
- package/resources/loyalty/account-streaks.d.ts +81 -0
- package/resources/loyalty/account-streaks.d.ts.map +1 -0
- package/resources/loyalty/account-streaks.js +24 -0
- package/resources/loyalty/account-streaks.js.map +1 -0
- package/resources/loyalty/account-streaks.mjs +20 -0
- package/resources/loyalty/account-streaks.mjs.map +1 -0
- package/resources/loyalty/accounts.d.ts +60 -16
- package/resources/loyalty/accounts.d.ts.map +1 -1
- package/resources/loyalty/accounts.js +14 -0
- package/resources/loyalty/accounts.js.map +1 -1
- package/resources/loyalty/accounts.mjs +14 -0
- package/resources/loyalty/accounts.mjs.map +1 -1
- package/resources/loyalty/badges.d.ts +666 -135
- package/resources/loyalty/badges.d.ts.map +1 -1
- package/resources/loyalty/badges.js +19 -1
- package/resources/loyalty/badges.js.map +1 -1
- package/resources/loyalty/badges.mjs +19 -1
- package/resources/loyalty/badges.mjs.map +1 -1
- package/resources/loyalty/currencies.d.ts +19 -0
- package/resources/loyalty/currencies.d.ts.map +1 -1
- package/resources/loyalty/currencies.js +19 -0
- package/resources/loyalty/currencies.js.map +1 -1
- package/resources/loyalty/currencies.mjs +19 -0
- package/resources/loyalty/currencies.mjs.map +1 -1
- package/resources/loyalty/index.d.ts +4 -4
- package/resources/loyalty/index.d.ts.map +1 -1
- package/resources/loyalty/index.js +5 -5
- package/resources/loyalty/index.js.map +1 -1
- package/resources/loyalty/index.mjs +3 -3
- package/resources/loyalty/index.mjs.map +1 -1
- package/resources/loyalty/loyalty.d.ts +11 -11
- package/resources/loyalty/loyalty.d.ts.map +1 -1
- package/resources/loyalty/loyalty.js +6 -6
- package/resources/loyalty/loyalty.js.map +1 -1
- package/resources/loyalty/loyalty.mjs +7 -7
- package/resources/loyalty/loyalty.mjs.map +1 -1
- package/resources/loyalty/multipliers.d.ts +39 -2
- package/resources/loyalty/multipliers.d.ts.map +1 -1
- package/resources/loyalty/multipliers.js +23 -0
- package/resources/loyalty/multipliers.js.map +1 -1
- package/resources/loyalty/multipliers.mjs +23 -0
- package/resources/loyalty/multipliers.mjs.map +1 -1
- package/resources/loyalty/questions-responses.d.ts +55 -4
- package/resources/loyalty/questions-responses.d.ts.map +1 -1
- package/resources/loyalty/questions-responses.js +9 -0
- package/resources/loyalty/questions-responses.js.map +1 -1
- package/resources/loyalty/questions-responses.mjs +9 -0
- package/resources/loyalty/questions-responses.mjs.map +1 -1
- package/resources/loyalty/questions.d.ts +52 -6
- package/resources/loyalty/questions.d.ts.map +1 -1
- package/resources/loyalty/questions.js +31 -0
- package/resources/loyalty/questions.js.map +1 -1
- package/resources/loyalty/questions.mjs +31 -0
- package/resources/loyalty/questions.mjs.map +1 -1
- package/resources/loyalty/rule-edits.d.ts +2646 -8
- package/resources/loyalty/rule-edits.d.ts.map +1 -1
- package/resources/loyalty/rule-edits.js +14 -0
- package/resources/loyalty/rule-edits.js.map +1 -1
- package/resources/loyalty/rule-edits.mjs +14 -0
- package/resources/loyalty/rule-edits.mjs.map +1 -1
- package/resources/loyalty/rule-groups.d.ts +283 -64
- package/resources/loyalty/rule-groups.d.ts.map +1 -1
- package/resources/loyalty/rule-groups.js +38 -2
- package/resources/loyalty/rule-groups.js.map +1 -1
- package/resources/loyalty/rule-groups.mjs +38 -2
- package/resources/loyalty/rule-groups.mjs.map +1 -1
- package/resources/loyalty/rules.d.ts +1930 -269
- package/resources/loyalty/rules.d.ts.map +1 -1
- package/resources/loyalty/rules.js +40 -9
- package/resources/loyalty/rules.js.map +1 -1
- package/resources/loyalty/rules.mjs +40 -9
- package/resources/loyalty/rules.mjs.map +1 -1
- package/resources/loyalty/transactions/index.d.ts +3 -0
- package/resources/loyalty/transactions/index.d.ts.map +1 -0
- package/resources/loyalty/transactions/index.js +9 -0
- package/resources/loyalty/transactions/index.js.map +1 -0
- package/resources/loyalty/transactions/index.mjs +4 -0
- package/resources/loyalty/transactions/index.mjs.map +1 -0
- package/resources/loyalty/transactions/rule-statuses.d.ts +120 -0
- package/resources/loyalty/transactions/rule-statuses.d.ts.map +1 -0
- package/resources/loyalty/transactions/rule-statuses.js +30 -0
- package/resources/loyalty/transactions/rule-statuses.js.map +1 -0
- package/resources/loyalty/transactions/rule-statuses.mjs +26 -0
- package/resources/loyalty/transactions/rule-statuses.mjs.map +1 -0
- package/resources/loyalty/transactions/transactions.d.ts +410 -0
- package/resources/loyalty/transactions/transactions.d.ts.map +1 -0
- package/resources/loyalty/transactions/transactions.js +76 -0
- package/resources/loyalty/transactions/transactions.js.map +1 -0
- package/resources/loyalty/transactions/transactions.mjs +49 -0
- package/resources/loyalty/transactions/transactions.mjs.map +1 -0
- package/resources/loyalty/transactions.d.ts +1 -247
- package/resources/loyalty/transactions.d.ts.map +1 -1
- package/resources/loyalty/transactions.js +15 -18
- package/resources/loyalty/transactions.js.map +1 -1
- package/resources/loyalty/transactions.mjs +1 -16
- package/resources/loyalty/transactions.mjs.map +1 -1
- package/resources/minting.d.ts +5 -5
- package/resources/minting.d.ts.map +1 -1
- package/resources/referral/referral.d.ts +11 -3
- package/resources/referral/referral.d.ts.map +1 -1
- package/resources/referral/referral.js +11 -5
- package/resources/referral/referral.js.map +1 -1
- package/resources/referral/referral.mjs +11 -5
- package/resources/referral/referral.mjs.map +1 -1
- package/resources/referral/users.d.ts +29 -3
- package/resources/referral/users.d.ts.map +1 -1
- package/resources/referral/users.js +12 -4
- package/resources/referral/users.js.map +1 -1
- package/resources/referral/users.mjs +12 -4
- package/resources/referral/users.mjs.map +1 -1
- package/resources/users/index.d.ts +1 -1
- package/resources/users/index.d.ts.map +1 -1
- package/resources/users/index.js.map +1 -1
- package/resources/users/index.mjs.map +1 -1
- package/resources/users/metadatas.d.ts +36 -3
- package/resources/users/metadatas.d.ts.map +1 -1
- package/resources/users/metadatas.js.map +1 -1
- package/resources/users/metadatas.mjs.map +1 -1
- package/resources/users/users.d.ts +184 -35
- package/resources/users/users.d.ts.map +1 -1
- package/resources/users/users.js +58 -1
- package/resources/users/users.js.map +1 -1
- package/resources/users/users.mjs +58 -1
- package/resources/users/users.mjs.map +1 -1
- package/resources/websites/website-collections.d.ts +22 -1
- package/resources/websites/website-collections.d.ts.map +1 -1
- package/resources/websites/website-collections.js +21 -0
- package/resources/websites/website-collections.js.map +1 -1
- package/resources/websites/website-collections.mjs +21 -0
- package/resources/websites/website-collections.mjs.map +1 -1
- package/resources/websites/website-user-roles.d.ts +24 -1
- package/resources/websites/website-user-roles.d.ts.map +1 -1
- package/resources/websites/website-user-roles.js +23 -0
- package/resources/websites/website-user-roles.js.map +1 -1
- package/resources/websites/website-user-roles.mjs +23 -0
- package/resources/websites/website-user-roles.mjs.map +1 -1
- package/resources/websites/websites.d.ts +12 -0
- package/resources/websites/websites.d.ts.map +1 -1
- package/resources/websites/websites.js +7 -0
- package/resources/websites/websites.js.map +1 -1
- package/resources/websites/websites.mjs +7 -0
- package/resources/websites/websites.mjs.map +1 -1
- package/src/core.ts +39 -16
- package/src/index.ts +31 -2
- package/src/resource.ts +1 -1
- package/src/resources/assets.ts +18 -3
- package/src/resources/auctions/auctions.ts +561 -0
- package/src/resources/auctions/index.ts +19 -0
- package/src/resources/auctions/website-user-attributes/index.ts +18 -0
- package/src/resources/auctions/website-user-attributes/values.ts +170 -0
- package/src/resources/auctions/website-user-attributes/website-user-attributes.ts +212 -0
- package/src/resources/auctions/website-user-attributes.ts +3 -0
- package/src/resources/auctions.ts +1 -207
- package/src/resources/auth.ts +21 -5
- package/src/resources/index.ts +12 -1
- package/src/resources/loyalty/account-streaks.ts +110 -0
- package/src/resources/loyalty/accounts.ts +65 -18
- package/src/resources/loyalty/badges.ts +790 -146
- package/src/resources/loyalty/currencies.ts +19 -0
- package/src/resources/loyalty/index.ts +19 -3
- package/src/resources/loyalty/loyalty.ts +39 -15
- package/src/resources/loyalty/multipliers.ts +43 -4
- package/src/resources/loyalty/questions-responses.ts +64 -4
- package/src/resources/loyalty/questions.ts +56 -6
- package/src/resources/loyalty/rule-edits.ts +3854 -100
- package/src/resources/loyalty/rule-groups.ts +500 -76
- package/src/resources/loyalty/rules.ts +3040 -318
- package/src/resources/loyalty/transactions/index.ts +18 -0
- package/src/resources/loyalty/transactions/rule-statuses.ts +178 -0
- package/src/resources/loyalty/transactions/transactions.ts +689 -0
- package/src/resources/loyalty/transactions.ts +1 -330
- package/src/resources/minting.ts +25 -5
- package/src/resources/referral/referral.ts +13 -11
- package/src/resources/referral/users.ts +43 -5
- package/src/resources/users/index.ts +4 -0
- package/src/resources/users/metadatas.ts +61 -3
- package/src/resources/users/users.ts +249 -38
- package/src/resources/websites/website-collections.ts +42 -1
- package/src/resources/websites/website-user-roles.ts +25 -1
- package/src/resources/websites/websites.ts +12 -0
- package/src/version.ts +1 -1
- package/version.d.ts +1 -1
- package/version.d.ts.map +1 -1
- package/version.js +1 -1
- package/version.js.map +1 -1
- package/version.mjs +1 -1
- package/version.mjs.map +1 -1
- package/resources/loyalty/rule-chains.d.ts +0 -34
- package/resources/loyalty/rule-chains.d.ts.map +0 -1
- package/resources/loyalty/rule-chains.js +0 -15
- package/resources/loyalty/rule-chains.js.map +0 -1
- package/resources/loyalty/rule-chains.mjs +0 -11
- package/resources/loyalty/rule-chains.mjs.map +0 -1
- package/src/resources/loyalty/rule-chains.ts +0 -45
|
@@ -7,6 +7,24 @@ import * as Core from '../../core';
|
|
|
7
7
|
export class Rules extends APIResource {
|
|
8
8
|
/**
|
|
9
9
|
* Create a new Loyalty Rule
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```ts
|
|
13
|
+
* const rule = await client.loyalty.rules.create({
|
|
14
|
+
* amount: '10.5',
|
|
15
|
+
* effectiveEndTime: '2024-12-31T23:59:00Z',
|
|
16
|
+
* effectiveStartTime: '2024-01-01T00:00:00Z',
|
|
17
|
+
* endTime: '2024-12-31T23:59:00Z',
|
|
18
|
+
* frequency: 'daily',
|
|
19
|
+
* loyaltyCurrencyId: '456e1234-e89b-12d3-a456-426614174003',
|
|
20
|
+
* metadata: {},
|
|
21
|
+
* name: 'Referral Bonus Rule',
|
|
22
|
+
* organizationId: '123e4567-e89b-12d3-a456-426614174001',
|
|
23
|
+
* startTime: '2024-01-01T00:00:00Z',
|
|
24
|
+
* type: 'Bonus',
|
|
25
|
+
* websiteId: '123e4567-e89b-12d3-a456-426614174002',
|
|
26
|
+
* });
|
|
27
|
+
* ```
|
|
10
28
|
*/
|
|
11
29
|
create(body: RuleCreateParams, options?: Core.RequestOptions): Core.APIPromise<RuleCreateResponse> {
|
|
12
30
|
return this._client.post('/api/loyalty/rules', { body, ...options });
|
|
@@ -14,6 +32,18 @@ export class Rules extends APIResource {
|
|
|
14
32
|
|
|
15
33
|
/**
|
|
16
34
|
* Update an existing Loyalty Rule
|
|
35
|
+
*
|
|
36
|
+
* @example
|
|
37
|
+
* ```ts
|
|
38
|
+
* const rule = await client.loyalty.rules.update(
|
|
39
|
+
* '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
|
|
40
|
+
* {
|
|
41
|
+
* amount: '10.5',
|
|
42
|
+
* endTime: '2024-12-31T23:59:00Z',
|
|
43
|
+
* name: 'Daily Rewards Program',
|
|
44
|
+
* },
|
|
45
|
+
* );
|
|
46
|
+
* ```
|
|
17
47
|
*/
|
|
18
48
|
update(
|
|
19
49
|
id: string,
|
|
@@ -25,6 +55,11 @@ export class Rules extends APIResource {
|
|
|
25
55
|
|
|
26
56
|
/**
|
|
27
57
|
* Retrieve configured loyalty rules with optional pagination and filters
|
|
58
|
+
*
|
|
59
|
+
* @example
|
|
60
|
+
* ```ts
|
|
61
|
+
* const rules = await client.loyalty.rules.list();
|
|
62
|
+
* ```
|
|
28
63
|
*/
|
|
29
64
|
list(query?: RuleListParams, options?: Core.RequestOptions): Core.APIPromise<RuleListResponse>;
|
|
30
65
|
list(options?: Core.RequestOptions): Core.APIPromise<RuleListResponse>;
|
|
@@ -40,9 +75,30 @@ export class Rules extends APIResource {
|
|
|
40
75
|
|
|
41
76
|
/**
|
|
42
77
|
* Delete an existing Loyalty Rule
|
|
78
|
+
*
|
|
79
|
+
* @example
|
|
80
|
+
* ```ts
|
|
81
|
+
* const rule = await client.loyalty.rules.delete(
|
|
82
|
+
* '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
|
|
83
|
+
* );
|
|
84
|
+
* ```
|
|
43
85
|
*/
|
|
44
|
-
delete(
|
|
45
|
-
|
|
86
|
+
delete(
|
|
87
|
+
id: string,
|
|
88
|
+
params?: RuleDeleteParams,
|
|
89
|
+
options?: Core.RequestOptions,
|
|
90
|
+
): Core.APIPromise<RuleDeleteResponse>;
|
|
91
|
+
delete(id: string, options?: Core.RequestOptions): Core.APIPromise<RuleDeleteResponse>;
|
|
92
|
+
delete(
|
|
93
|
+
id: string,
|
|
94
|
+
params: RuleDeleteParams | Core.RequestOptions = {},
|
|
95
|
+
options?: Core.RequestOptions,
|
|
96
|
+
): Core.APIPromise<RuleDeleteResponse> {
|
|
97
|
+
if (isRequestOptions(params)) {
|
|
98
|
+
return this.delete(id, {}, params);
|
|
99
|
+
}
|
|
100
|
+
const { debitLoyaltyPoints } = params;
|
|
101
|
+
return this._client.delete(`/api/loyalty/rules/${id}`, { query: { debitLoyaltyPoints }, ...options });
|
|
46
102
|
}
|
|
47
103
|
|
|
48
104
|
/**
|
|
@@ -50,7 +106,15 @@ export class Rules extends APIResource {
|
|
|
50
106
|
* endpoint currently only supports following rule types code_entry, text_input,
|
|
51
107
|
* link_click, discord_member, connect_wallet, check_in, external_rule,
|
|
52
108
|
* drip_x_follow, drip_x_new_tweet, drip_x_text_in_bio, drip_x_text_in_name,
|
|
53
|
-
* drip_x_text_in_comment, drip_x_tweet, telegram_join, DiscordMessages
|
|
109
|
+
* drip_x_text_in_comment, drip_x_tweet, telegram_join, DiscordMessages,
|
|
110
|
+
* youtube_subscribers, youtube_comment, steam_wishlist, discord_role_grant
|
|
111
|
+
*
|
|
112
|
+
* @example
|
|
113
|
+
* ```ts
|
|
114
|
+
* const response = await client.loyalty.rules.complete(
|
|
115
|
+
* '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
|
|
116
|
+
* );
|
|
117
|
+
* ```
|
|
54
118
|
*/
|
|
55
119
|
complete(
|
|
56
120
|
id: string,
|
|
@@ -70,12 +134,26 @@ export class Rules extends APIResource {
|
|
|
70
134
|
}
|
|
71
135
|
|
|
72
136
|
/**
|
|
73
|
-
* This will return the processing status of quests for a specific user
|
|
137
|
+
* This will return the processing status of quests for a specific user and also
|
|
138
|
+
* the progress of the loyalty rule
|
|
139
|
+
*
|
|
140
|
+
* @example
|
|
141
|
+
* ```ts
|
|
142
|
+
* const response = await client.loyalty.rules.getStatus();
|
|
143
|
+
* ```
|
|
74
144
|
*/
|
|
75
145
|
getStatus(
|
|
76
|
-
query
|
|
146
|
+
query?: RuleGetStatusParams,
|
|
147
|
+
options?: Core.RequestOptions,
|
|
148
|
+
): Core.APIPromise<RuleGetStatusResponse>;
|
|
149
|
+
getStatus(options?: Core.RequestOptions): Core.APIPromise<RuleGetStatusResponse>;
|
|
150
|
+
getStatus(
|
|
151
|
+
query: RuleGetStatusParams | Core.RequestOptions = {},
|
|
77
152
|
options?: Core.RequestOptions,
|
|
78
153
|
): Core.APIPromise<RuleGetStatusResponse> {
|
|
154
|
+
if (isRequestOptions(query)) {
|
|
155
|
+
return this.getStatus({}, query);
|
|
156
|
+
}
|
|
79
157
|
return this._client.get('/api/loyalty/rules/status', { query, ...options });
|
|
80
158
|
}
|
|
81
159
|
}
|
|
@@ -160,6 +238,7 @@ export interface RuleCreateResponse {
|
|
|
160
238
|
| 'connected_discord'
|
|
161
239
|
| 'connected_email'
|
|
162
240
|
| 'connected_epic'
|
|
241
|
+
| 'connected_github'
|
|
163
242
|
| 'connected_steam'
|
|
164
243
|
| 'connected_telegram'
|
|
165
244
|
| 'connected_twitter'
|
|
@@ -189,7 +268,24 @@ export interface RuleCreateResponse {
|
|
|
189
268
|
| 'twitter_like'
|
|
190
269
|
| 'twitter_post_hashtag'
|
|
191
270
|
| 'quiz'
|
|
192
|
-
| 'poll'
|
|
271
|
+
| 'poll'
|
|
272
|
+
| 'steam_wishlist'
|
|
273
|
+
| 'liquidity_uniswap_v2'
|
|
274
|
+
| 'liquidity_uniswap_v3'
|
|
275
|
+
| 'points_airdrop'
|
|
276
|
+
| 'youtube_subscribers'
|
|
277
|
+
| 'youtube_comment'
|
|
278
|
+
| 'shopify_spend'
|
|
279
|
+
| 'swap'
|
|
280
|
+
| 'tiktok_post'
|
|
281
|
+
| 'post_impressions'
|
|
282
|
+
| 'discord_join'
|
|
283
|
+
| 'connected_youtube'
|
|
284
|
+
| 'stratus_function'
|
|
285
|
+
| 'connected_tiktok'
|
|
286
|
+
| 'tiktok_follow'
|
|
287
|
+
| 'github_repo_star'
|
|
288
|
+
| 'discord_role_grant';
|
|
193
289
|
|
|
194
290
|
/**
|
|
195
291
|
* Unique identifier for the associated website
|
|
@@ -201,6 +297,11 @@ export interface RuleCreateResponse {
|
|
|
201
297
|
*/
|
|
202
298
|
backgroundAssetUrl?: string;
|
|
203
299
|
|
|
300
|
+
/**
|
|
301
|
+
* The type of claim for the reward
|
|
302
|
+
*/
|
|
303
|
+
claimType?: 'manual' | 'auto' | null;
|
|
304
|
+
|
|
204
305
|
/**
|
|
205
306
|
* Blockchain address of the associated collection
|
|
206
307
|
*/
|
|
@@ -226,6 +327,18 @@ export interface RuleCreateResponse {
|
|
|
226
327
|
*/
|
|
227
328
|
description?: string;
|
|
228
329
|
|
|
330
|
+
duplicatedFromId?: string | null;
|
|
331
|
+
|
|
332
|
+
/**
|
|
333
|
+
* ID of the external integration
|
|
334
|
+
*/
|
|
335
|
+
externalIntegrationId?: string | null;
|
|
336
|
+
|
|
337
|
+
/**
|
|
338
|
+
* Optional stratus function id for the rule
|
|
339
|
+
*/
|
|
340
|
+
functionId?: string | null;
|
|
341
|
+
|
|
229
342
|
/**
|
|
230
343
|
* Whether to hide this rule in the user interface
|
|
231
344
|
*/
|
|
@@ -234,18 +347,40 @@ export interface RuleCreateResponse {
|
|
|
234
347
|
/**
|
|
235
348
|
* Interval between rule executions
|
|
236
349
|
*/
|
|
237
|
-
interval?: 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | null;
|
|
350
|
+
interval?: 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | 'unlimited' | null;
|
|
238
351
|
|
|
239
352
|
/**
|
|
240
353
|
* Whether this rule is mandatory
|
|
241
354
|
*/
|
|
242
355
|
isRequired?: boolean;
|
|
243
356
|
|
|
357
|
+
/**
|
|
358
|
+
* Unique identifier for the loyalty badge
|
|
359
|
+
*/
|
|
360
|
+
loyaltyBadgeId?: string | null;
|
|
361
|
+
|
|
244
362
|
/**
|
|
245
363
|
* Unique identifier for the loyalty rule group
|
|
246
364
|
*/
|
|
247
365
|
loyaltyRuleGroupId?: 'no-section' | (string & {}) | null;
|
|
248
366
|
|
|
367
|
+
/**
|
|
368
|
+
* URL for uploading loyalty user allotment via CSV
|
|
369
|
+
*/
|
|
370
|
+
loyaltyUserAllotmentCsvUrl?: string;
|
|
371
|
+
|
|
372
|
+
/**
|
|
373
|
+
* The interval for the max amount. Available for the smart contract and external
|
|
374
|
+
* rules.
|
|
375
|
+
*/
|
|
376
|
+
maxAmountInterval?: 'daily' | 'weekly' | 'monthly' | 'lifetime' | null;
|
|
377
|
+
|
|
378
|
+
/**
|
|
379
|
+
* The maximum amount of points a user can earn per interval. Available for the
|
|
380
|
+
* smart contract and external rules.
|
|
381
|
+
*/
|
|
382
|
+
maxAmountPerInterval?: number | null;
|
|
383
|
+
|
|
249
384
|
/**
|
|
250
385
|
* URL of the media to be displayed
|
|
251
386
|
*/
|
|
@@ -255,13 +390,17 @@ export interface RuleCreateResponse {
|
|
|
255
390
|
* Blockchain network where the rule will apply
|
|
256
391
|
*/
|
|
257
392
|
network?:
|
|
393
|
+
| 'abstract'
|
|
394
|
+
| 'abstractTestnet'
|
|
258
395
|
| 'apechain'
|
|
259
396
|
| 'arbitrum'
|
|
260
397
|
| 'avalanche'
|
|
261
398
|
| 'avalancheFuji'
|
|
262
399
|
| 'base'
|
|
263
400
|
| 'baseSepolia'
|
|
401
|
+
| 'berachain'
|
|
264
402
|
| 'berachainArtio'
|
|
403
|
+
| 'berachainBepolia'
|
|
265
404
|
| 'binance'
|
|
266
405
|
| 'bscTestnet'
|
|
267
406
|
| 'campTestnet'
|
|
@@ -269,18 +408,30 @@ export interface RuleCreateResponse {
|
|
|
269
408
|
| 'fantomTestnet'
|
|
270
409
|
| 'flowMainnet'
|
|
271
410
|
| 'mainnet'
|
|
411
|
+
| 'nexusTestnet'
|
|
272
412
|
| 'optimism'
|
|
273
413
|
| 'polygon'
|
|
274
414
|
| 'polygon_mumbai'
|
|
275
415
|
| 'skaleNebula'
|
|
416
|
+
| 'skaleEuropa'
|
|
417
|
+
| 'skaleCalypso'
|
|
276
418
|
| 'solana'
|
|
277
419
|
| 'sophon'
|
|
420
|
+
| 'sophonTestnet'
|
|
278
421
|
| 'sui'
|
|
279
422
|
| 'superseed'
|
|
280
423
|
| 'superseedSepolia'
|
|
281
424
|
| 'vanar'
|
|
282
425
|
| 'xai'
|
|
283
426
|
| 'zksync'
|
|
427
|
+
| 'coti'
|
|
428
|
+
| 'cotiTestnet'
|
|
429
|
+
| 'morph'
|
|
430
|
+
| 'morphTestnet'
|
|
431
|
+
| 'morphHolesky'
|
|
432
|
+
| 'ultra'
|
|
433
|
+
| 'ultraTestnet'
|
|
434
|
+
| 'nitrograph'
|
|
284
435
|
| 'sepolia'
|
|
285
436
|
| 'optimism_sepolia'
|
|
286
437
|
| 'arbitrumSepolia'
|
|
@@ -288,22 +439,41 @@ export interface RuleCreateResponse {
|
|
|
288
439
|
| 'optimism_goerli'
|
|
289
440
|
| 'arbitrumGoerli'
|
|
290
441
|
| 'basecamp'
|
|
291
|
-
| '
|
|
442
|
+
| 'somnia'
|
|
443
|
+
| 'zkverify'
|
|
444
|
+
| 'polkadot'
|
|
445
|
+
| 'kusama'
|
|
446
|
+
| 'flow_cadence';
|
|
292
447
|
|
|
293
448
|
/**
|
|
294
449
|
* OAuth credentials associated with the rule
|
|
295
450
|
*/
|
|
296
451
|
oauthCredentialsId?: string | null;
|
|
297
452
|
|
|
453
|
+
/**
|
|
454
|
+
* The lifetime of the reward
|
|
455
|
+
*/
|
|
456
|
+
rewardLifetime?: 'permanent' | 'dynamic' | null;
|
|
457
|
+
|
|
298
458
|
/**
|
|
299
459
|
* Type of reward issued by the rule
|
|
300
460
|
*/
|
|
301
|
-
rewardType?: 'points' | 'multiplier';
|
|
461
|
+
rewardType?: 'points' | 'multiplier' | 'badge';
|
|
462
|
+
|
|
463
|
+
/**
|
|
464
|
+
* URL of the Shopify store
|
|
465
|
+
*/
|
|
466
|
+
shopifyStoreUrl?: string | null;
|
|
467
|
+
|
|
468
|
+
/**
|
|
469
|
+
* Whether to show this rule before the start time
|
|
470
|
+
*/
|
|
471
|
+
showBeforeStart?: boolean;
|
|
302
472
|
|
|
303
473
|
/**
|
|
304
|
-
*
|
|
474
|
+
* Optional stratus subscription id for the rule
|
|
305
475
|
*/
|
|
306
|
-
|
|
476
|
+
subscriptionId?: string | null;
|
|
307
477
|
}
|
|
308
478
|
|
|
309
479
|
export namespace RuleCreateResponse {
|
|
@@ -311,6 +481,11 @@ export namespace RuleCreateResponse {
|
|
|
311
481
|
* Additional metadata for the loyalty rule
|
|
312
482
|
*/
|
|
313
483
|
export interface Metadata {
|
|
484
|
+
/**
|
|
485
|
+
* Number of tokens per batch.
|
|
486
|
+
*/
|
|
487
|
+
batchSize?: number | null;
|
|
488
|
+
|
|
314
489
|
/**
|
|
315
490
|
* Text displayed on the action button.
|
|
316
491
|
*/
|
|
@@ -334,7 +509,7 @@ export namespace RuleCreateResponse {
|
|
|
334
509
|
/**
|
|
335
510
|
* Text to check in the Twitter post, username, or bio.
|
|
336
511
|
*/
|
|
337
|
-
checkText?: string | null;
|
|
512
|
+
checkText?: string | Array<string> | null;
|
|
338
513
|
|
|
339
514
|
/**
|
|
340
515
|
* Array of collections associated with the rule.
|
|
@@ -344,7 +519,12 @@ export namespace RuleCreateResponse {
|
|
|
344
519
|
/**
|
|
345
520
|
* Conditions for completing the profile.
|
|
346
521
|
*/
|
|
347
|
-
completeProfileConditions?:
|
|
522
|
+
completeProfileConditions?: { [key: string]: boolean } | null;
|
|
523
|
+
|
|
524
|
+
/**
|
|
525
|
+
* Description of the external rule condition (only for external rules)
|
|
526
|
+
*/
|
|
527
|
+
conditionDescription?: string;
|
|
348
528
|
|
|
349
529
|
/**
|
|
350
530
|
* Object containing details for the call-to-action.
|
|
@@ -356,6 +536,11 @@ export namespace RuleCreateResponse {
|
|
|
356
536
|
*/
|
|
357
537
|
customRewardsApiKey?: string;
|
|
358
538
|
|
|
539
|
+
/**
|
|
540
|
+
* Flag indicating if the rule should use direct RPC to get the balance of tokens.
|
|
541
|
+
*/
|
|
542
|
+
directRpc?: boolean;
|
|
543
|
+
|
|
359
544
|
/**
|
|
360
545
|
* Array of Discord servers, channels, and roles to join.
|
|
361
546
|
*/
|
|
@@ -381,6 +566,11 @@ export namespace RuleCreateResponse {
|
|
|
381
566
|
*/
|
|
382
567
|
enableVerifiedMultiplier?: boolean;
|
|
383
568
|
|
|
569
|
+
/**
|
|
570
|
+
* Type of ERC20 token for the loyalty rule.
|
|
571
|
+
*/
|
|
572
|
+
erc20Type?: 'erc20' | 'native';
|
|
573
|
+
|
|
384
574
|
/**
|
|
385
575
|
* Fill source of the order for the token sale
|
|
386
576
|
*/
|
|
@@ -391,6 +581,11 @@ export namespace RuleCreateResponse {
|
|
|
391
581
|
*/
|
|
392
582
|
firstReferralReward?: number | null;
|
|
393
583
|
|
|
584
|
+
/**
|
|
585
|
+
* URL of the GitHub repository to check for star.
|
|
586
|
+
*/
|
|
587
|
+
githubRepoUrl?: string | null;
|
|
588
|
+
|
|
394
589
|
/**
|
|
395
590
|
* Flag indicating whether the fill source is included.
|
|
396
591
|
*/
|
|
@@ -401,11 +596,6 @@ export namespace RuleCreateResponse {
|
|
|
401
596
|
*/
|
|
402
597
|
hasNeverSold?: boolean;
|
|
403
598
|
|
|
404
|
-
/**
|
|
405
|
-
* Flag indicating whether the order source is included.
|
|
406
|
-
*/
|
|
407
|
-
hasOrderSource?: boolean;
|
|
408
|
-
|
|
409
599
|
/**
|
|
410
600
|
* Indicates if the full royalty has been paid for items.
|
|
411
601
|
*/
|
|
@@ -426,11 +616,21 @@ export namespace RuleCreateResponse {
|
|
|
426
616
|
*/
|
|
427
617
|
imageUrl?: string | null;
|
|
428
618
|
|
|
619
|
+
/**
|
|
620
|
+
* If enabled, the first transaction done on the platform will complete this rule
|
|
621
|
+
*/
|
|
622
|
+
isCheckInOnEveryTxn?: boolean;
|
|
623
|
+
|
|
429
624
|
/**
|
|
430
625
|
* Indicates if the multiplier has been applied to rewards.
|
|
431
626
|
*/
|
|
432
627
|
isMultiplierApplied?: boolean;
|
|
433
628
|
|
|
629
|
+
/**
|
|
630
|
+
* Flag indicating if the rule is restricted to new users.
|
|
631
|
+
*/
|
|
632
|
+
isRestrictedToNewUsers?: boolean;
|
|
633
|
+
|
|
434
634
|
/**
|
|
435
635
|
* Flag indicating if rewards are applied retroactively.
|
|
436
636
|
*/
|
|
@@ -446,6 +646,11 @@ export namespace RuleCreateResponse {
|
|
|
446
646
|
*/
|
|
447
647
|
link?: string | null;
|
|
448
648
|
|
|
649
|
+
/**
|
|
650
|
+
* Liquidity pool details.
|
|
651
|
+
*/
|
|
652
|
+
liquidity?: Metadata.Liquidity;
|
|
653
|
+
|
|
449
654
|
/**
|
|
450
655
|
* Maximum quantity constraint for token holding.
|
|
451
656
|
*/
|
|
@@ -487,14 +692,24 @@ export namespace RuleCreateResponse {
|
|
|
487
692
|
onlyRewardSingleTokenOwnership?: boolean | null;
|
|
488
693
|
|
|
489
694
|
/**
|
|
490
|
-
*
|
|
695
|
+
* Promotional code associated with the rule.
|
|
491
696
|
*/
|
|
492
|
-
|
|
697
|
+
promoCode?: string;
|
|
493
698
|
|
|
494
699
|
/**
|
|
495
|
-
*
|
|
700
|
+
* URL of the CSV file containing promo codes.
|
|
496
701
|
*/
|
|
497
|
-
|
|
702
|
+
promoCodeCsvUrl?: string;
|
|
703
|
+
|
|
704
|
+
/**
|
|
705
|
+
* Numbers of the promotional code to be generated.
|
|
706
|
+
*/
|
|
707
|
+
promoCodeLength?: number | null;
|
|
708
|
+
|
|
709
|
+
/**
|
|
710
|
+
* Type of the promotional code.
|
|
711
|
+
*/
|
|
712
|
+
promoCodeType?: 'code' | 'csv' | 'generate';
|
|
498
713
|
|
|
499
714
|
/**
|
|
500
715
|
* Array defining ranges and corresponding rewards.
|
|
@@ -511,11 +726,62 @@ export namespace RuleCreateResponse {
|
|
|
511
726
|
*/
|
|
512
727
|
referrerReward?: number | null;
|
|
513
728
|
|
|
729
|
+
/**
|
|
730
|
+
* Loyalty currency ID of the referrer reward.
|
|
731
|
+
*/
|
|
732
|
+
referrerRewardLoyaltyCurrencyId?: string | null;
|
|
733
|
+
|
|
734
|
+
/**
|
|
735
|
+
* Flag indicating if the post link is required.
|
|
736
|
+
*/
|
|
737
|
+
requirePostLink?: boolean | null;
|
|
738
|
+
|
|
739
|
+
/**
|
|
740
|
+
* Flag indicating if media metadata is required.
|
|
741
|
+
*/
|
|
742
|
+
requirePostMediaLink?: boolean | null;
|
|
743
|
+
|
|
744
|
+
/**
|
|
745
|
+
* Flag indicating if the rule can also reward badges per range.
|
|
746
|
+
*/
|
|
747
|
+
rewardBadgePerRange?: boolean;
|
|
748
|
+
|
|
749
|
+
/**
|
|
750
|
+
* Flag indicating if the reward is rewarded by batch.
|
|
751
|
+
*/
|
|
752
|
+
rewardByBatch?: boolean | null;
|
|
753
|
+
|
|
754
|
+
/**
|
|
755
|
+
* Criteria to evaluate the reward.
|
|
756
|
+
*/
|
|
757
|
+
rewardCriteria?: 'IMPRESSIONS_COUNT' | 'ELIGIBLE_POST' | null;
|
|
758
|
+
|
|
759
|
+
/**
|
|
760
|
+
* Flag indicating if the reward is rewarded per action.
|
|
761
|
+
*/
|
|
762
|
+
rewardPerAction?: boolean | null;
|
|
763
|
+
|
|
514
764
|
/**
|
|
515
765
|
* Flag indicating if rewards are given per impression.
|
|
516
766
|
*/
|
|
517
767
|
rewardPerImpression?: boolean | null;
|
|
518
768
|
|
|
769
|
+
/**
|
|
770
|
+
* Flag indicating if the rule should reward based on value of traded tokens
|
|
771
|
+
* instead of count.
|
|
772
|
+
*/
|
|
773
|
+
rewardPerValue?: boolean;
|
|
774
|
+
|
|
775
|
+
/**
|
|
776
|
+
* Wallet address of the user can only be used if userId is not provided
|
|
777
|
+
*/
|
|
778
|
+
royaltyAddress?: string;
|
|
779
|
+
|
|
780
|
+
/**
|
|
781
|
+
* Royalty percentage of the item.
|
|
782
|
+
*/
|
|
783
|
+
royaltyPercentage?: number;
|
|
784
|
+
|
|
519
785
|
/**
|
|
520
786
|
* Currency associated with sales.
|
|
521
787
|
*/
|
|
@@ -555,6 +821,8 @@ export namespace RuleCreateResponse {
|
|
|
555
821
|
| 'Twitch'
|
|
556
822
|
| 'X(Twitter)'
|
|
557
823
|
| 'YouTube'
|
|
824
|
+
| 'Google'
|
|
825
|
+
| 'GitHub'
|
|
558
826
|
| null;
|
|
559
827
|
|
|
560
828
|
/**
|
|
@@ -567,11 +835,21 @@ export namespace RuleCreateResponse {
|
|
|
567
835
|
*/
|
|
568
836
|
socialPlatformName?: string | null;
|
|
569
837
|
|
|
838
|
+
/**
|
|
839
|
+
* ID of the Steam app.
|
|
840
|
+
*/
|
|
841
|
+
steamAppId?: string | null;
|
|
842
|
+
|
|
570
843
|
/**
|
|
571
844
|
* Array of streak milestones and corresponding rewards.
|
|
572
845
|
*/
|
|
573
846
|
streakArray?: Array<Metadata.StreakArray> | null;
|
|
574
847
|
|
|
848
|
+
/**
|
|
849
|
+
* Metadata for swap loyalty rules
|
|
850
|
+
*/
|
|
851
|
+
swap?: Metadata.Swap;
|
|
852
|
+
|
|
575
853
|
/**
|
|
576
854
|
* ID of the Telegram channel.
|
|
577
855
|
*/
|
|
@@ -587,6 +865,12 @@ export namespace RuleCreateResponse {
|
|
|
587
865
|
*/
|
|
588
866
|
trackAllContracts?: boolean | null;
|
|
589
867
|
|
|
868
|
+
/**
|
|
869
|
+
* Flag indicating if the progress is tracked. If enabled, the rule can only be
|
|
870
|
+
* completed once the progress is 100%.
|
|
871
|
+
*/
|
|
872
|
+
trackProgress?: boolean | null;
|
|
873
|
+
|
|
590
874
|
/**
|
|
591
875
|
* URL of the associated Twitter account.
|
|
592
876
|
*/
|
|
@@ -630,7 +914,28 @@ export namespace RuleCreateResponse {
|
|
|
630
914
|
/**
|
|
631
915
|
* Type of wallet associated with the rule.
|
|
632
916
|
*/
|
|
633
|
-
walletType?:
|
|
917
|
+
walletType?:
|
|
918
|
+
| 'evm'
|
|
919
|
+
| 'solana'
|
|
920
|
+
| 'imx'
|
|
921
|
+
| 'sui'
|
|
922
|
+
| 'ton'
|
|
923
|
+
| 'cosmos'
|
|
924
|
+
| 'ultra'
|
|
925
|
+
| 'agw'
|
|
926
|
+
| 'flow_cadence'
|
|
927
|
+
| 'substrate'
|
|
928
|
+
| null;
|
|
929
|
+
|
|
930
|
+
/**
|
|
931
|
+
* ID of the Youtube channel.
|
|
932
|
+
*/
|
|
933
|
+
youtubeChannelId?: string | null;
|
|
934
|
+
|
|
935
|
+
/**
|
|
936
|
+
* ID of the Youtube video.
|
|
937
|
+
*/
|
|
938
|
+
youtubeVideoId?: string | null;
|
|
634
939
|
}
|
|
635
940
|
|
|
636
941
|
export namespace Metadata {
|
|
@@ -649,13 +954,17 @@ export namespace RuleCreateResponse {
|
|
|
649
954
|
* Blockchain network of the collection.
|
|
650
955
|
*/
|
|
651
956
|
network?:
|
|
957
|
+
| 'abstract'
|
|
958
|
+
| 'abstractTestnet'
|
|
652
959
|
| 'apechain'
|
|
653
960
|
| 'arbitrum'
|
|
654
961
|
| 'avalanche'
|
|
655
962
|
| 'avalancheFuji'
|
|
656
963
|
| 'base'
|
|
657
964
|
| 'baseSepolia'
|
|
965
|
+
| 'berachain'
|
|
658
966
|
| 'berachainArtio'
|
|
967
|
+
| 'berachainBepolia'
|
|
659
968
|
| 'binance'
|
|
660
969
|
| 'bscTestnet'
|
|
661
970
|
| 'campTestnet'
|
|
@@ -663,18 +972,30 @@ export namespace RuleCreateResponse {
|
|
|
663
972
|
| 'fantomTestnet'
|
|
664
973
|
| 'flowMainnet'
|
|
665
974
|
| 'mainnet'
|
|
975
|
+
| 'nexusTestnet'
|
|
666
976
|
| 'optimism'
|
|
667
977
|
| 'polygon'
|
|
668
978
|
| 'polygon_mumbai'
|
|
669
979
|
| 'skaleNebula'
|
|
980
|
+
| 'skaleEuropa'
|
|
981
|
+
| 'skaleCalypso'
|
|
670
982
|
| 'solana'
|
|
671
983
|
| 'sophon'
|
|
984
|
+
| 'sophonTestnet'
|
|
672
985
|
| 'sui'
|
|
673
986
|
| 'superseed'
|
|
674
987
|
| 'superseedSepolia'
|
|
675
988
|
| 'vanar'
|
|
676
989
|
| 'xai'
|
|
677
990
|
| 'zksync'
|
|
991
|
+
| 'coti'
|
|
992
|
+
| 'cotiTestnet'
|
|
993
|
+
| 'morph'
|
|
994
|
+
| 'morphTestnet'
|
|
995
|
+
| 'morphHolesky'
|
|
996
|
+
| 'ultra'
|
|
997
|
+
| 'ultraTestnet'
|
|
998
|
+
| 'nitrograph'
|
|
678
999
|
| 'sepolia'
|
|
679
1000
|
| 'optimism_sepolia'
|
|
680
1001
|
| 'arbitrumSepolia'
|
|
@@ -682,7 +1003,11 @@ export namespace RuleCreateResponse {
|
|
|
682
1003
|
| 'optimism_goerli'
|
|
683
1004
|
| 'arbitrumGoerli'
|
|
684
1005
|
| 'basecamp'
|
|
685
|
-
| '
|
|
1006
|
+
| 'somnia'
|
|
1007
|
+
| 'zkverify'
|
|
1008
|
+
| 'polkadot'
|
|
1009
|
+
| 'kusama'
|
|
1010
|
+
| 'flow_cadence';
|
|
686
1011
|
}
|
|
687
1012
|
|
|
688
1013
|
/**
|
|
@@ -759,6 +1084,111 @@ export namespace RuleCreateResponse {
|
|
|
759
1084
|
id: string;
|
|
760
1085
|
}
|
|
761
1086
|
|
|
1087
|
+
/**
|
|
1088
|
+
* Liquidity pool details.
|
|
1089
|
+
*/
|
|
1090
|
+
export interface Liquidity {
|
|
1091
|
+
/**
|
|
1092
|
+
* Calculation type of the liquidity pool.
|
|
1093
|
+
*/
|
|
1094
|
+
calculationType?: 'fixed' | 'custom';
|
|
1095
|
+
|
|
1096
|
+
/**
|
|
1097
|
+
* Custom function to calculate the the reward amount based on the liquidity
|
|
1098
|
+
* provided per day. X is the reward amount, Y is the liquidity provided per day in
|
|
1099
|
+
* USD.
|
|
1100
|
+
*/
|
|
1101
|
+
customFunction?: string;
|
|
1102
|
+
|
|
1103
|
+
/**
|
|
1104
|
+
* Liquidity provided per day in USD
|
|
1105
|
+
*/
|
|
1106
|
+
liquidityPerDay?: number;
|
|
1107
|
+
|
|
1108
|
+
/**
|
|
1109
|
+
* Blockchain network of the liquidity pool.
|
|
1110
|
+
*/
|
|
1111
|
+
network?:
|
|
1112
|
+
| 'abstract'
|
|
1113
|
+
| 'abstractTestnet'
|
|
1114
|
+
| 'apechain'
|
|
1115
|
+
| 'arbitrum'
|
|
1116
|
+
| 'avalanche'
|
|
1117
|
+
| 'avalancheFuji'
|
|
1118
|
+
| 'base'
|
|
1119
|
+
| 'baseSepolia'
|
|
1120
|
+
| 'berachain'
|
|
1121
|
+
| 'berachainArtio'
|
|
1122
|
+
| 'berachainBepolia'
|
|
1123
|
+
| 'binance'
|
|
1124
|
+
| 'bscTestnet'
|
|
1125
|
+
| 'campTestnet'
|
|
1126
|
+
| 'fantom'
|
|
1127
|
+
| 'fantomTestnet'
|
|
1128
|
+
| 'flowMainnet'
|
|
1129
|
+
| 'mainnet'
|
|
1130
|
+
| 'nexusTestnet'
|
|
1131
|
+
| 'optimism'
|
|
1132
|
+
| 'polygon'
|
|
1133
|
+
| 'polygon_mumbai'
|
|
1134
|
+
| 'skaleNebula'
|
|
1135
|
+
| 'skaleEuropa'
|
|
1136
|
+
| 'skaleCalypso'
|
|
1137
|
+
| 'solana'
|
|
1138
|
+
| 'sophon'
|
|
1139
|
+
| 'sophonTestnet'
|
|
1140
|
+
| 'sui'
|
|
1141
|
+
| 'superseed'
|
|
1142
|
+
| 'superseedSepolia'
|
|
1143
|
+
| 'vanar'
|
|
1144
|
+
| 'xai'
|
|
1145
|
+
| 'zksync'
|
|
1146
|
+
| 'coti'
|
|
1147
|
+
| 'cotiTestnet'
|
|
1148
|
+
| 'morph'
|
|
1149
|
+
| 'morphTestnet'
|
|
1150
|
+
| 'morphHolesky'
|
|
1151
|
+
| 'ultra'
|
|
1152
|
+
| 'ultraTestnet'
|
|
1153
|
+
| 'nitrograph'
|
|
1154
|
+
| 'sepolia'
|
|
1155
|
+
| 'optimism_sepolia'
|
|
1156
|
+
| 'arbitrumSepolia'
|
|
1157
|
+
| 'goerli'
|
|
1158
|
+
| 'optimism_goerli'
|
|
1159
|
+
| 'arbitrumGoerli'
|
|
1160
|
+
| 'basecamp'
|
|
1161
|
+
| 'somnia'
|
|
1162
|
+
| 'zkverify'
|
|
1163
|
+
| 'polkadot'
|
|
1164
|
+
| 'kusama'
|
|
1165
|
+
| 'flow_cadence';
|
|
1166
|
+
|
|
1167
|
+
/**
|
|
1168
|
+
* Indicates if only in-range liquidity is rewarded.
|
|
1169
|
+
*/
|
|
1170
|
+
onlyRewardInRangeLiquidity?: boolean;
|
|
1171
|
+
|
|
1172
|
+
/**
|
|
1173
|
+
* Array of liquidity pools associated with the rule.
|
|
1174
|
+
*/
|
|
1175
|
+
pools?: Array<Liquidity.Pool>;
|
|
1176
|
+
|
|
1177
|
+
/**
|
|
1178
|
+
* Protocol of the liquidity pool.
|
|
1179
|
+
*/
|
|
1180
|
+
protocol?: string;
|
|
1181
|
+
}
|
|
1182
|
+
|
|
1183
|
+
export namespace Liquidity {
|
|
1184
|
+
export interface Pool {
|
|
1185
|
+
/**
|
|
1186
|
+
* Unique identifier of the liquidity pool.
|
|
1187
|
+
*/
|
|
1188
|
+
id: string;
|
|
1189
|
+
}
|
|
1190
|
+
}
|
|
1191
|
+
|
|
762
1192
|
export interface Range {
|
|
763
1193
|
/**
|
|
764
1194
|
* Reward amount for this range.
|
|
@@ -774,6 +1204,16 @@ export namespace RuleCreateResponse {
|
|
|
774
1204
|
* Start value of the range.
|
|
775
1205
|
*/
|
|
776
1206
|
startRange: number;
|
|
1207
|
+
|
|
1208
|
+
/**
|
|
1209
|
+
* ID of the loyalty badge for this range.
|
|
1210
|
+
*/
|
|
1211
|
+
loyaltyBadgeId?: string;
|
|
1212
|
+
|
|
1213
|
+
/**
|
|
1214
|
+
* Amount of the loyalty multiplier for this range.
|
|
1215
|
+
*/
|
|
1216
|
+
loyaltyMultiplierAmount?: number;
|
|
777
1217
|
}
|
|
778
1218
|
|
|
779
1219
|
/**
|
|
@@ -826,20 +1266,15 @@ export namespace RuleCreateResponse {
|
|
|
826
1266
|
* Object containing details of the associated smart contract.
|
|
827
1267
|
*/
|
|
828
1268
|
export interface SmartContract {
|
|
829
|
-
/**
|
|
830
|
-
* ABI of the smart contract.
|
|
831
|
-
*/
|
|
832
|
-
abi?: string | null;
|
|
833
|
-
|
|
834
1269
|
/**
|
|
835
1270
|
* Mapping of addresses for the smart contract.
|
|
836
1271
|
*/
|
|
837
1272
|
addressMapping?: string | null;
|
|
838
1273
|
|
|
839
1274
|
/**
|
|
840
|
-
*
|
|
1275
|
+
* Object containing details of the amount multiplier from the event.
|
|
841
1276
|
*/
|
|
842
|
-
|
|
1277
|
+
amountMultiplier?: SmartContract.AmountMultiplier | null;
|
|
843
1278
|
|
|
844
1279
|
/**
|
|
845
1280
|
* ID of the smart contract.
|
|
@@ -851,68 +1286,31 @@ export namespace RuleCreateResponse {
|
|
|
851
1286
|
*/
|
|
852
1287
|
criteria?: 'everyEvent' | 'byParameter' | null;
|
|
853
1288
|
|
|
854
|
-
/**
|
|
855
|
-
* Time range applied to the rule.
|
|
856
|
-
*/
|
|
857
|
-
customRange?: SmartContract.CustomRange | null;
|
|
858
|
-
|
|
859
1289
|
/**
|
|
860
1290
|
* Event emitted by the smart contract.
|
|
861
1291
|
*/
|
|
862
1292
|
event?: string | null;
|
|
863
1293
|
|
|
864
|
-
/**
|
|
865
|
-
* Maximum value allowed for the parameter.
|
|
866
|
-
*/
|
|
867
|
-
max?: number | null;
|
|
868
|
-
|
|
869
1294
|
/**
|
|
870
1295
|
* Array of parameters for the smart contract.
|
|
871
1296
|
*/
|
|
872
1297
|
params?: Array<SmartContract.Param> | null;
|
|
873
1298
|
|
|
874
1299
|
/**
|
|
875
|
-
*
|
|
876
|
-
*/
|
|
877
|
-
withBonus?: boolean | null;
|
|
878
|
-
|
|
879
|
-
/**
|
|
880
|
-
* Flag indicating if a custom range is applied.
|
|
881
|
-
*/
|
|
882
|
-
withCustomRange?: boolean | null;
|
|
883
|
-
|
|
884
|
-
/**
|
|
885
|
-
* Flag indicating if a maximum limit is applied.
|
|
1300
|
+
* Type of the smart contract interaction.
|
|
886
1301
|
*/
|
|
887
|
-
|
|
1302
|
+
type?: 'function' | 'event' | null;
|
|
888
1303
|
}
|
|
889
1304
|
|
|
890
1305
|
export namespace SmartContract {
|
|
891
|
-
export interface Bonus {
|
|
892
|
-
/**
|
|
893
|
-
* Amount of the bonus.
|
|
894
|
-
*/
|
|
895
|
-
amount?: number | null;
|
|
896
|
-
|
|
897
|
-
/**
|
|
898
|
-
* Number of times the bonus is applied.
|
|
899
|
-
*/
|
|
900
|
-
count?: number | null;
|
|
901
|
-
}
|
|
902
|
-
|
|
903
1306
|
/**
|
|
904
|
-
*
|
|
1307
|
+
* Object containing details of the amount multiplier from the event.
|
|
905
1308
|
*/
|
|
906
|
-
export interface
|
|
907
|
-
/**
|
|
908
|
-
* End time of the custom range.
|
|
909
|
-
*/
|
|
910
|
-
endsAt?: string | null;
|
|
911
|
-
|
|
1309
|
+
export interface AmountMultiplier {
|
|
912
1310
|
/**
|
|
913
|
-
*
|
|
1311
|
+
* Mapping of the value for the smart contract.
|
|
914
1312
|
*/
|
|
915
|
-
|
|
1313
|
+
valueMapping?: string | null;
|
|
916
1314
|
}
|
|
917
1315
|
|
|
918
1316
|
export interface Param {
|
|
@@ -956,6 +1354,33 @@ export namespace RuleCreateResponse {
|
|
|
956
1354
|
*/
|
|
957
1355
|
streakMilestone: number;
|
|
958
1356
|
}
|
|
1357
|
+
|
|
1358
|
+
/**
|
|
1359
|
+
* Metadata for swap loyalty rules
|
|
1360
|
+
*/
|
|
1361
|
+
export interface Swap {
|
|
1362
|
+
provider?: 'any' | 'relay' | 'lifi';
|
|
1363
|
+
|
|
1364
|
+
relayReferrerId?: string;
|
|
1365
|
+
|
|
1366
|
+
requireCrossChainSwap?: boolean;
|
|
1367
|
+
|
|
1368
|
+
swappedToChain?: 'any' | number | string;
|
|
1369
|
+
|
|
1370
|
+
swappedToTokens?: Array<Swap.SwappedToToken>;
|
|
1371
|
+
|
|
1372
|
+
tokenMode?: 'any' | 'specific';
|
|
1373
|
+
|
|
1374
|
+
trackTokenAmount?: boolean;
|
|
1375
|
+
}
|
|
1376
|
+
|
|
1377
|
+
export namespace Swap {
|
|
1378
|
+
export interface SwappedToToken {
|
|
1379
|
+
address: string;
|
|
1380
|
+
|
|
1381
|
+
chainId: string;
|
|
1382
|
+
}
|
|
1383
|
+
}
|
|
959
1384
|
}
|
|
960
1385
|
|
|
961
1386
|
export interface Collection {
|
|
@@ -968,13 +1393,17 @@ export namespace RuleCreateResponse {
|
|
|
968
1393
|
* Blockchain network for the collection
|
|
969
1394
|
*/
|
|
970
1395
|
network:
|
|
1396
|
+
| 'abstract'
|
|
1397
|
+
| 'abstractTestnet'
|
|
971
1398
|
| 'apechain'
|
|
972
1399
|
| 'arbitrum'
|
|
973
1400
|
| 'avalanche'
|
|
974
1401
|
| 'avalancheFuji'
|
|
975
1402
|
| 'base'
|
|
976
1403
|
| 'baseSepolia'
|
|
1404
|
+
| 'berachain'
|
|
977
1405
|
| 'berachainArtio'
|
|
1406
|
+
| 'berachainBepolia'
|
|
978
1407
|
| 'binance'
|
|
979
1408
|
| 'bscTestnet'
|
|
980
1409
|
| 'campTestnet'
|
|
@@ -982,18 +1411,30 @@ export namespace RuleCreateResponse {
|
|
|
982
1411
|
| 'fantomTestnet'
|
|
983
1412
|
| 'flowMainnet'
|
|
984
1413
|
| 'mainnet'
|
|
1414
|
+
| 'nexusTestnet'
|
|
985
1415
|
| 'optimism'
|
|
986
1416
|
| 'polygon'
|
|
987
1417
|
| 'polygon_mumbai'
|
|
988
1418
|
| 'skaleNebula'
|
|
1419
|
+
| 'skaleEuropa'
|
|
1420
|
+
| 'skaleCalypso'
|
|
989
1421
|
| 'solana'
|
|
990
1422
|
| 'sophon'
|
|
1423
|
+
| 'sophonTestnet'
|
|
991
1424
|
| 'sui'
|
|
992
1425
|
| 'superseed'
|
|
993
1426
|
| 'superseedSepolia'
|
|
994
1427
|
| 'vanar'
|
|
995
1428
|
| 'xai'
|
|
996
1429
|
| 'zksync'
|
|
1430
|
+
| 'coti'
|
|
1431
|
+
| 'cotiTestnet'
|
|
1432
|
+
| 'morph'
|
|
1433
|
+
| 'morphTestnet'
|
|
1434
|
+
| 'morphHolesky'
|
|
1435
|
+
| 'ultra'
|
|
1436
|
+
| 'ultraTestnet'
|
|
1437
|
+
| 'nitrograph'
|
|
997
1438
|
| 'sepolia'
|
|
998
1439
|
| 'optimism_sepolia'
|
|
999
1440
|
| 'arbitrumSepolia'
|
|
@@ -1001,7 +1442,16 @@ export namespace RuleCreateResponse {
|
|
|
1001
1442
|
| 'optimism_goerli'
|
|
1002
1443
|
| 'arbitrumGoerli'
|
|
1003
1444
|
| 'basecamp'
|
|
1004
|
-
| '
|
|
1445
|
+
| 'somnia'
|
|
1446
|
+
| 'zkverify'
|
|
1447
|
+
| 'polkadot'
|
|
1448
|
+
| 'kusama'
|
|
1449
|
+
| 'flow_cadence';
|
|
1450
|
+
|
|
1451
|
+
/**
|
|
1452
|
+
* Symbol of the collection.
|
|
1453
|
+
*/
|
|
1454
|
+
symbol?: string;
|
|
1005
1455
|
}
|
|
1006
1456
|
}
|
|
1007
1457
|
|
|
@@ -1023,10 +1473,15 @@ export interface RuleUpdateResponse {
|
|
|
1023
1473
|
*/
|
|
1024
1474
|
name: string;
|
|
1025
1475
|
|
|
1476
|
+
/**
|
|
1477
|
+
* The type of claim for the reward
|
|
1478
|
+
*/
|
|
1479
|
+
claimType?: 'manual' | 'auto' | null;
|
|
1480
|
+
|
|
1026
1481
|
/**
|
|
1027
1482
|
* Blockchain address of the associated collection
|
|
1028
1483
|
*/
|
|
1029
|
-
collectionAddress?: string;
|
|
1484
|
+
collectionAddress?: string | null;
|
|
1030
1485
|
|
|
1031
1486
|
/**
|
|
1032
1487
|
* List of associated collections
|
|
@@ -1058,11 +1513,21 @@ export interface RuleUpdateResponse {
|
|
|
1058
1513
|
*/
|
|
1059
1514
|
effectiveStartTime?: string | null;
|
|
1060
1515
|
|
|
1516
|
+
/**
|
|
1517
|
+
* ID of the external integration
|
|
1518
|
+
*/
|
|
1519
|
+
externalIntegrationId?: string | null;
|
|
1520
|
+
|
|
1061
1521
|
/**
|
|
1062
1522
|
* Frequency of the rule execution
|
|
1063
1523
|
*/
|
|
1064
1524
|
frequency?: 'none' | 'once' | 'daily' | 'weekly' | 'monthly' | 'immediately';
|
|
1065
1525
|
|
|
1526
|
+
/**
|
|
1527
|
+
* Optional stratus function id for the rule
|
|
1528
|
+
*/
|
|
1529
|
+
functionId?: string | null;
|
|
1530
|
+
|
|
1066
1531
|
/**
|
|
1067
1532
|
* Whether to hide this rule in the user interface
|
|
1068
1533
|
*/
|
|
@@ -1071,7 +1536,7 @@ export interface RuleUpdateResponse {
|
|
|
1071
1536
|
/**
|
|
1072
1537
|
* Time interval for recurring rule execution
|
|
1073
1538
|
*/
|
|
1074
|
-
interval?: 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | null;
|
|
1539
|
+
interval?: 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | 'unlimited' | null;
|
|
1075
1540
|
|
|
1076
1541
|
/**
|
|
1077
1542
|
* Whether this rule is required for participation
|
|
@@ -1083,6 +1548,18 @@ export interface RuleUpdateResponse {
|
|
|
1083
1548
|
*/
|
|
1084
1549
|
loyaltyRuleGroupId?: (string & {}) | 'no-section' | null;
|
|
1085
1550
|
|
|
1551
|
+
/**
|
|
1552
|
+
* The interval for the max amount. Available for the smart contract and external
|
|
1553
|
+
* rules.
|
|
1554
|
+
*/
|
|
1555
|
+
maxAmountInterval?: 'daily' | 'weekly' | 'monthly' | 'lifetime' | null;
|
|
1556
|
+
|
|
1557
|
+
/**
|
|
1558
|
+
* The maximum amount of points a user can earn per interval. Available for the
|
|
1559
|
+
* smart contract and external rules.
|
|
1560
|
+
*/
|
|
1561
|
+
maxAmountPerInterval?: number | null;
|
|
1562
|
+
|
|
1086
1563
|
/**
|
|
1087
1564
|
* URL of the media to be displayed
|
|
1088
1565
|
*/
|
|
@@ -1097,13 +1574,17 @@ export interface RuleUpdateResponse {
|
|
|
1097
1574
|
* Blockchain network where the rule will apply
|
|
1098
1575
|
*/
|
|
1099
1576
|
network?:
|
|
1577
|
+
| 'abstract'
|
|
1578
|
+
| 'abstractTestnet'
|
|
1100
1579
|
| 'apechain'
|
|
1101
1580
|
| 'arbitrum'
|
|
1102
1581
|
| 'avalanche'
|
|
1103
1582
|
| 'avalancheFuji'
|
|
1104
1583
|
| 'base'
|
|
1105
1584
|
| 'baseSepolia'
|
|
1585
|
+
| 'berachain'
|
|
1106
1586
|
| 'berachainArtio'
|
|
1587
|
+
| 'berachainBepolia'
|
|
1107
1588
|
| 'binance'
|
|
1108
1589
|
| 'bscTestnet'
|
|
1109
1590
|
| 'campTestnet'
|
|
@@ -1111,18 +1592,30 @@ export interface RuleUpdateResponse {
|
|
|
1111
1592
|
| 'fantomTestnet'
|
|
1112
1593
|
| 'flowMainnet'
|
|
1113
1594
|
| 'mainnet'
|
|
1595
|
+
| 'nexusTestnet'
|
|
1114
1596
|
| 'optimism'
|
|
1115
1597
|
| 'polygon'
|
|
1116
1598
|
| 'polygon_mumbai'
|
|
1117
1599
|
| 'skaleNebula'
|
|
1600
|
+
| 'skaleEuropa'
|
|
1601
|
+
| 'skaleCalypso'
|
|
1118
1602
|
| 'solana'
|
|
1119
1603
|
| 'sophon'
|
|
1604
|
+
| 'sophonTestnet'
|
|
1120
1605
|
| 'sui'
|
|
1121
1606
|
| 'superseed'
|
|
1122
1607
|
| 'superseedSepolia'
|
|
1123
1608
|
| 'vanar'
|
|
1124
1609
|
| 'xai'
|
|
1125
1610
|
| 'zksync'
|
|
1611
|
+
| 'coti'
|
|
1612
|
+
| 'cotiTestnet'
|
|
1613
|
+
| 'morph'
|
|
1614
|
+
| 'morphTestnet'
|
|
1615
|
+
| 'morphHolesky'
|
|
1616
|
+
| 'ultra'
|
|
1617
|
+
| 'ultraTestnet'
|
|
1618
|
+
| 'nitrograph'
|
|
1126
1619
|
| 'sepolia'
|
|
1127
1620
|
| 'optimism_sepolia'
|
|
1128
1621
|
| 'arbitrumSepolia'
|
|
@@ -1130,7 +1623,11 @@ export interface RuleUpdateResponse {
|
|
|
1130
1623
|
| 'optimism_goerli'
|
|
1131
1624
|
| 'arbitrumGoerli'
|
|
1132
1625
|
| 'basecamp'
|
|
1133
|
-
| '
|
|
1626
|
+
| 'somnia'
|
|
1627
|
+
| 'zkverify'
|
|
1628
|
+
| 'polkadot'
|
|
1629
|
+
| 'kusama'
|
|
1630
|
+
| 'flow_cadence';
|
|
1134
1631
|
|
|
1135
1632
|
/**
|
|
1136
1633
|
* ID for associated OAuth credentials
|
|
@@ -1138,19 +1635,34 @@ export interface RuleUpdateResponse {
|
|
|
1138
1635
|
oauthCredentialsId?: string | null;
|
|
1139
1636
|
|
|
1140
1637
|
/**
|
|
1141
|
-
*
|
|
1638
|
+
* The lifetime of the reward
|
|
1142
1639
|
*/
|
|
1143
|
-
|
|
1640
|
+
rewardLifetime?: 'permanent' | 'dynamic' | null;
|
|
1144
1641
|
|
|
1145
1642
|
/**
|
|
1146
|
-
*
|
|
1643
|
+
* Type of reward issued by this rule
|
|
1644
|
+
*/
|
|
1645
|
+
rewardType?: 'points' | 'multiplier' | 'badge';
|
|
1646
|
+
|
|
1647
|
+
/**
|
|
1648
|
+
* URL of the Shopify store
|
|
1649
|
+
*/
|
|
1650
|
+
shopifyStoreUrl?: string | null;
|
|
1651
|
+
|
|
1652
|
+
/**
|
|
1653
|
+
* Whether to show this rule before the start time
|
|
1654
|
+
*/
|
|
1655
|
+
showBeforeStart?: boolean;
|
|
1656
|
+
|
|
1657
|
+
/**
|
|
1658
|
+
* Start time for the loyalty rule
|
|
1147
1659
|
*/
|
|
1148
1660
|
startTime?: string | null;
|
|
1149
1661
|
|
|
1150
1662
|
/**
|
|
1151
|
-
* Optional subscription
|
|
1663
|
+
* Optional stratus subscription id for the rule
|
|
1152
1664
|
*/
|
|
1153
|
-
|
|
1665
|
+
subscriptionId?: string | null;
|
|
1154
1666
|
}
|
|
1155
1667
|
|
|
1156
1668
|
export namespace RuleUpdateResponse {
|
|
@@ -1164,13 +1676,17 @@ export namespace RuleUpdateResponse {
|
|
|
1164
1676
|
* Blockchain network for the collection
|
|
1165
1677
|
*/
|
|
1166
1678
|
network:
|
|
1679
|
+
| 'abstract'
|
|
1680
|
+
| 'abstractTestnet'
|
|
1167
1681
|
| 'apechain'
|
|
1168
1682
|
| 'arbitrum'
|
|
1169
1683
|
| 'avalanche'
|
|
1170
1684
|
| 'avalancheFuji'
|
|
1171
1685
|
| 'base'
|
|
1172
1686
|
| 'baseSepolia'
|
|
1687
|
+
| 'berachain'
|
|
1173
1688
|
| 'berachainArtio'
|
|
1689
|
+
| 'berachainBepolia'
|
|
1174
1690
|
| 'binance'
|
|
1175
1691
|
| 'bscTestnet'
|
|
1176
1692
|
| 'campTestnet'
|
|
@@ -1178,18 +1694,30 @@ export namespace RuleUpdateResponse {
|
|
|
1178
1694
|
| 'fantomTestnet'
|
|
1179
1695
|
| 'flowMainnet'
|
|
1180
1696
|
| 'mainnet'
|
|
1697
|
+
| 'nexusTestnet'
|
|
1181
1698
|
| 'optimism'
|
|
1182
1699
|
| 'polygon'
|
|
1183
1700
|
| 'polygon_mumbai'
|
|
1184
1701
|
| 'skaleNebula'
|
|
1702
|
+
| 'skaleEuropa'
|
|
1703
|
+
| 'skaleCalypso'
|
|
1185
1704
|
| 'solana'
|
|
1186
1705
|
| 'sophon'
|
|
1706
|
+
| 'sophonTestnet'
|
|
1187
1707
|
| 'sui'
|
|
1188
1708
|
| 'superseed'
|
|
1189
1709
|
| 'superseedSepolia'
|
|
1190
1710
|
| 'vanar'
|
|
1191
1711
|
| 'xai'
|
|
1192
1712
|
| 'zksync'
|
|
1713
|
+
| 'coti'
|
|
1714
|
+
| 'cotiTestnet'
|
|
1715
|
+
| 'morph'
|
|
1716
|
+
| 'morphTestnet'
|
|
1717
|
+
| 'morphHolesky'
|
|
1718
|
+
| 'ultra'
|
|
1719
|
+
| 'ultraTestnet'
|
|
1720
|
+
| 'nitrograph'
|
|
1193
1721
|
| 'sepolia'
|
|
1194
1722
|
| 'optimism_sepolia'
|
|
1195
1723
|
| 'arbitrumSepolia'
|
|
@@ -1197,13 +1725,27 @@ export namespace RuleUpdateResponse {
|
|
|
1197
1725
|
| 'optimism_goerli'
|
|
1198
1726
|
| 'arbitrumGoerli'
|
|
1199
1727
|
| 'basecamp'
|
|
1200
|
-
| '
|
|
1728
|
+
| 'somnia'
|
|
1729
|
+
| 'zkverify'
|
|
1730
|
+
| 'polkadot'
|
|
1731
|
+
| 'kusama'
|
|
1732
|
+
| 'flow_cadence';
|
|
1733
|
+
|
|
1734
|
+
/**
|
|
1735
|
+
* Symbol of the collection.
|
|
1736
|
+
*/
|
|
1737
|
+
symbol?: string;
|
|
1201
1738
|
}
|
|
1202
1739
|
|
|
1203
1740
|
/**
|
|
1204
1741
|
* Additional metadata for the loyalty rule
|
|
1205
1742
|
*/
|
|
1206
1743
|
export interface Metadata {
|
|
1744
|
+
/**
|
|
1745
|
+
* Number of tokens per batch.
|
|
1746
|
+
*/
|
|
1747
|
+
batchSize?: number | null;
|
|
1748
|
+
|
|
1207
1749
|
/**
|
|
1208
1750
|
* Text displayed on the action button.
|
|
1209
1751
|
*/
|
|
@@ -1227,7 +1769,7 @@ export namespace RuleUpdateResponse {
|
|
|
1227
1769
|
/**
|
|
1228
1770
|
* Text to check in the Twitter post, username, or bio.
|
|
1229
1771
|
*/
|
|
1230
|
-
checkText?: string | null;
|
|
1772
|
+
checkText?: string | Array<string> | null;
|
|
1231
1773
|
|
|
1232
1774
|
/**
|
|
1233
1775
|
* Array of collections associated with the rule.
|
|
@@ -1237,7 +1779,12 @@ export namespace RuleUpdateResponse {
|
|
|
1237
1779
|
/**
|
|
1238
1780
|
* Conditions for completing the profile.
|
|
1239
1781
|
*/
|
|
1240
|
-
completeProfileConditions?:
|
|
1782
|
+
completeProfileConditions?: { [key: string]: boolean } | null;
|
|
1783
|
+
|
|
1784
|
+
/**
|
|
1785
|
+
* Description of the external rule condition (only for external rules)
|
|
1786
|
+
*/
|
|
1787
|
+
conditionDescription?: string;
|
|
1241
1788
|
|
|
1242
1789
|
/**
|
|
1243
1790
|
* Object containing details for the call-to-action.
|
|
@@ -1249,6 +1796,11 @@ export namespace RuleUpdateResponse {
|
|
|
1249
1796
|
*/
|
|
1250
1797
|
customRewardsApiKey?: string;
|
|
1251
1798
|
|
|
1799
|
+
/**
|
|
1800
|
+
* Flag indicating if the rule should use direct RPC to get the balance of tokens.
|
|
1801
|
+
*/
|
|
1802
|
+
directRpc?: boolean;
|
|
1803
|
+
|
|
1252
1804
|
/**
|
|
1253
1805
|
* Array of Discord servers, channels, and roles to join.
|
|
1254
1806
|
*/
|
|
@@ -1274,6 +1826,11 @@ export namespace RuleUpdateResponse {
|
|
|
1274
1826
|
*/
|
|
1275
1827
|
enableVerifiedMultiplier?: boolean;
|
|
1276
1828
|
|
|
1829
|
+
/**
|
|
1830
|
+
* Type of ERC20 token for the loyalty rule.
|
|
1831
|
+
*/
|
|
1832
|
+
erc20Type?: 'erc20' | 'native';
|
|
1833
|
+
|
|
1277
1834
|
/**
|
|
1278
1835
|
* Fill source of the order for the token sale
|
|
1279
1836
|
*/
|
|
@@ -1284,6 +1841,11 @@ export namespace RuleUpdateResponse {
|
|
|
1284
1841
|
*/
|
|
1285
1842
|
firstReferralReward?: number | null;
|
|
1286
1843
|
|
|
1844
|
+
/**
|
|
1845
|
+
* URL of the GitHub repository to check for star.
|
|
1846
|
+
*/
|
|
1847
|
+
githubRepoUrl?: string | null;
|
|
1848
|
+
|
|
1287
1849
|
/**
|
|
1288
1850
|
* Flag indicating whether the fill source is included.
|
|
1289
1851
|
*/
|
|
@@ -1294,11 +1856,6 @@ export namespace RuleUpdateResponse {
|
|
|
1294
1856
|
*/
|
|
1295
1857
|
hasNeverSold?: boolean;
|
|
1296
1858
|
|
|
1297
|
-
/**
|
|
1298
|
-
* Flag indicating whether the order source is included.
|
|
1299
|
-
*/
|
|
1300
|
-
hasOrderSource?: boolean;
|
|
1301
|
-
|
|
1302
1859
|
/**
|
|
1303
1860
|
* Indicates if the full royalty has been paid for items.
|
|
1304
1861
|
*/
|
|
@@ -1319,11 +1876,21 @@ export namespace RuleUpdateResponse {
|
|
|
1319
1876
|
*/
|
|
1320
1877
|
imageUrl?: string | null;
|
|
1321
1878
|
|
|
1879
|
+
/**
|
|
1880
|
+
* If enabled, the first transaction done on the platform will complete this rule
|
|
1881
|
+
*/
|
|
1882
|
+
isCheckInOnEveryTxn?: boolean;
|
|
1883
|
+
|
|
1322
1884
|
/**
|
|
1323
1885
|
* Indicates if the multiplier has been applied to rewards.
|
|
1324
1886
|
*/
|
|
1325
1887
|
isMultiplierApplied?: boolean;
|
|
1326
1888
|
|
|
1889
|
+
/**
|
|
1890
|
+
* Flag indicating if the rule is restricted to new users.
|
|
1891
|
+
*/
|
|
1892
|
+
isRestrictedToNewUsers?: boolean;
|
|
1893
|
+
|
|
1327
1894
|
/**
|
|
1328
1895
|
* Flag indicating if rewards are applied retroactively.
|
|
1329
1896
|
*/
|
|
@@ -1339,6 +1906,11 @@ export namespace RuleUpdateResponse {
|
|
|
1339
1906
|
*/
|
|
1340
1907
|
link?: string | null;
|
|
1341
1908
|
|
|
1909
|
+
/**
|
|
1910
|
+
* Liquidity pool details.
|
|
1911
|
+
*/
|
|
1912
|
+
liquidity?: Metadata.Liquidity;
|
|
1913
|
+
|
|
1342
1914
|
/**
|
|
1343
1915
|
* Maximum quantity constraint for token holding.
|
|
1344
1916
|
*/
|
|
@@ -1380,14 +1952,24 @@ export namespace RuleUpdateResponse {
|
|
|
1380
1952
|
onlyRewardSingleTokenOwnership?: boolean | null;
|
|
1381
1953
|
|
|
1382
1954
|
/**
|
|
1383
|
-
*
|
|
1955
|
+
* Promotional code associated with the rule.
|
|
1384
1956
|
*/
|
|
1385
|
-
|
|
1957
|
+
promoCode?: string;
|
|
1386
1958
|
|
|
1387
1959
|
/**
|
|
1388
|
-
*
|
|
1960
|
+
* URL of the CSV file containing promo codes.
|
|
1389
1961
|
*/
|
|
1390
|
-
|
|
1962
|
+
promoCodeCsvUrl?: string;
|
|
1963
|
+
|
|
1964
|
+
/**
|
|
1965
|
+
* Numbers of the promotional code to be generated.
|
|
1966
|
+
*/
|
|
1967
|
+
promoCodeLength?: number | null;
|
|
1968
|
+
|
|
1969
|
+
/**
|
|
1970
|
+
* Type of the promotional code.
|
|
1971
|
+
*/
|
|
1972
|
+
promoCodeType?: 'code' | 'csv' | 'generate';
|
|
1391
1973
|
|
|
1392
1974
|
/**
|
|
1393
1975
|
* Array defining ranges and corresponding rewards.
|
|
@@ -1404,11 +1986,62 @@ export namespace RuleUpdateResponse {
|
|
|
1404
1986
|
*/
|
|
1405
1987
|
referrerReward?: number | null;
|
|
1406
1988
|
|
|
1989
|
+
/**
|
|
1990
|
+
* Loyalty currency ID of the referrer reward.
|
|
1991
|
+
*/
|
|
1992
|
+
referrerRewardLoyaltyCurrencyId?: string | null;
|
|
1993
|
+
|
|
1994
|
+
/**
|
|
1995
|
+
* Flag indicating if the post link is required.
|
|
1996
|
+
*/
|
|
1997
|
+
requirePostLink?: boolean | null;
|
|
1998
|
+
|
|
1999
|
+
/**
|
|
2000
|
+
* Flag indicating if media metadata is required.
|
|
2001
|
+
*/
|
|
2002
|
+
requirePostMediaLink?: boolean | null;
|
|
2003
|
+
|
|
2004
|
+
/**
|
|
2005
|
+
* Flag indicating if the rule can also reward badges per range.
|
|
2006
|
+
*/
|
|
2007
|
+
rewardBadgePerRange?: boolean;
|
|
2008
|
+
|
|
2009
|
+
/**
|
|
2010
|
+
* Flag indicating if the reward is rewarded by batch.
|
|
2011
|
+
*/
|
|
2012
|
+
rewardByBatch?: boolean | null;
|
|
2013
|
+
|
|
2014
|
+
/**
|
|
2015
|
+
* Criteria to evaluate the reward.
|
|
2016
|
+
*/
|
|
2017
|
+
rewardCriteria?: 'IMPRESSIONS_COUNT' | 'ELIGIBLE_POST' | null;
|
|
2018
|
+
|
|
2019
|
+
/**
|
|
2020
|
+
* Flag indicating if the reward is rewarded per action.
|
|
2021
|
+
*/
|
|
2022
|
+
rewardPerAction?: boolean | null;
|
|
2023
|
+
|
|
1407
2024
|
/**
|
|
1408
2025
|
* Flag indicating if rewards are given per impression.
|
|
1409
2026
|
*/
|
|
1410
2027
|
rewardPerImpression?: boolean | null;
|
|
1411
2028
|
|
|
2029
|
+
/**
|
|
2030
|
+
* Flag indicating if the rule should reward based on value of traded tokens
|
|
2031
|
+
* instead of count.
|
|
2032
|
+
*/
|
|
2033
|
+
rewardPerValue?: boolean;
|
|
2034
|
+
|
|
2035
|
+
/**
|
|
2036
|
+
* Wallet address of the user can only be used if userId is not provided
|
|
2037
|
+
*/
|
|
2038
|
+
royaltyAddress?: string;
|
|
2039
|
+
|
|
2040
|
+
/**
|
|
2041
|
+
* Royalty percentage of the item.
|
|
2042
|
+
*/
|
|
2043
|
+
royaltyPercentage?: number;
|
|
2044
|
+
|
|
1412
2045
|
/**
|
|
1413
2046
|
* Currency associated with sales.
|
|
1414
2047
|
*/
|
|
@@ -1448,6 +2081,8 @@ export namespace RuleUpdateResponse {
|
|
|
1448
2081
|
| 'Twitch'
|
|
1449
2082
|
| 'X(Twitter)'
|
|
1450
2083
|
| 'YouTube'
|
|
2084
|
+
| 'Google'
|
|
2085
|
+
| 'GitHub'
|
|
1451
2086
|
| null;
|
|
1452
2087
|
|
|
1453
2088
|
/**
|
|
@@ -1460,11 +2095,21 @@ export namespace RuleUpdateResponse {
|
|
|
1460
2095
|
*/
|
|
1461
2096
|
socialPlatformName?: string | null;
|
|
1462
2097
|
|
|
2098
|
+
/**
|
|
2099
|
+
* ID of the Steam app.
|
|
2100
|
+
*/
|
|
2101
|
+
steamAppId?: string | null;
|
|
2102
|
+
|
|
1463
2103
|
/**
|
|
1464
2104
|
* Array of streak milestones and corresponding rewards.
|
|
1465
2105
|
*/
|
|
1466
2106
|
streakArray?: Array<Metadata.StreakArray> | null;
|
|
1467
2107
|
|
|
2108
|
+
/**
|
|
2109
|
+
* Metadata for swap loyalty rules
|
|
2110
|
+
*/
|
|
2111
|
+
swap?: Metadata.Swap;
|
|
2112
|
+
|
|
1468
2113
|
/**
|
|
1469
2114
|
* ID of the Telegram channel.
|
|
1470
2115
|
*/
|
|
@@ -1480,6 +2125,12 @@ export namespace RuleUpdateResponse {
|
|
|
1480
2125
|
*/
|
|
1481
2126
|
trackAllContracts?: boolean | null;
|
|
1482
2127
|
|
|
2128
|
+
/**
|
|
2129
|
+
* Flag indicating if the progress is tracked. If enabled, the rule can only be
|
|
2130
|
+
* completed once the progress is 100%.
|
|
2131
|
+
*/
|
|
2132
|
+
trackProgress?: boolean | null;
|
|
2133
|
+
|
|
1483
2134
|
/**
|
|
1484
2135
|
* URL of the associated Twitter account.
|
|
1485
2136
|
*/
|
|
@@ -1523,7 +2174,28 @@ export namespace RuleUpdateResponse {
|
|
|
1523
2174
|
/**
|
|
1524
2175
|
* Type of wallet associated with the rule.
|
|
1525
2176
|
*/
|
|
1526
|
-
walletType?:
|
|
2177
|
+
walletType?:
|
|
2178
|
+
| 'evm'
|
|
2179
|
+
| 'solana'
|
|
2180
|
+
| 'imx'
|
|
2181
|
+
| 'sui'
|
|
2182
|
+
| 'ton'
|
|
2183
|
+
| 'cosmos'
|
|
2184
|
+
| 'ultra'
|
|
2185
|
+
| 'agw'
|
|
2186
|
+
| 'flow_cadence'
|
|
2187
|
+
| 'substrate'
|
|
2188
|
+
| null;
|
|
2189
|
+
|
|
2190
|
+
/**
|
|
2191
|
+
* ID of the Youtube channel.
|
|
2192
|
+
*/
|
|
2193
|
+
youtubeChannelId?: string | null;
|
|
2194
|
+
|
|
2195
|
+
/**
|
|
2196
|
+
* ID of the Youtube video.
|
|
2197
|
+
*/
|
|
2198
|
+
youtubeVideoId?: string | null;
|
|
1527
2199
|
}
|
|
1528
2200
|
|
|
1529
2201
|
export namespace Metadata {
|
|
@@ -1542,13 +2214,17 @@ export namespace RuleUpdateResponse {
|
|
|
1542
2214
|
* Blockchain network of the collection.
|
|
1543
2215
|
*/
|
|
1544
2216
|
network?:
|
|
2217
|
+
| 'abstract'
|
|
2218
|
+
| 'abstractTestnet'
|
|
1545
2219
|
| 'apechain'
|
|
1546
2220
|
| 'arbitrum'
|
|
1547
2221
|
| 'avalanche'
|
|
1548
2222
|
| 'avalancheFuji'
|
|
1549
2223
|
| 'base'
|
|
1550
2224
|
| 'baseSepolia'
|
|
2225
|
+
| 'berachain'
|
|
1551
2226
|
| 'berachainArtio'
|
|
2227
|
+
| 'berachainBepolia'
|
|
1552
2228
|
| 'binance'
|
|
1553
2229
|
| 'bscTestnet'
|
|
1554
2230
|
| 'campTestnet'
|
|
@@ -1556,18 +2232,30 @@ export namespace RuleUpdateResponse {
|
|
|
1556
2232
|
| 'fantomTestnet'
|
|
1557
2233
|
| 'flowMainnet'
|
|
1558
2234
|
| 'mainnet'
|
|
2235
|
+
| 'nexusTestnet'
|
|
1559
2236
|
| 'optimism'
|
|
1560
2237
|
| 'polygon'
|
|
1561
2238
|
| 'polygon_mumbai'
|
|
1562
2239
|
| 'skaleNebula'
|
|
2240
|
+
| 'skaleEuropa'
|
|
2241
|
+
| 'skaleCalypso'
|
|
1563
2242
|
| 'solana'
|
|
1564
2243
|
| 'sophon'
|
|
2244
|
+
| 'sophonTestnet'
|
|
1565
2245
|
| 'sui'
|
|
1566
2246
|
| 'superseed'
|
|
1567
2247
|
| 'superseedSepolia'
|
|
1568
2248
|
| 'vanar'
|
|
1569
2249
|
| 'xai'
|
|
1570
2250
|
| 'zksync'
|
|
2251
|
+
| 'coti'
|
|
2252
|
+
| 'cotiTestnet'
|
|
2253
|
+
| 'morph'
|
|
2254
|
+
| 'morphTestnet'
|
|
2255
|
+
| 'morphHolesky'
|
|
2256
|
+
| 'ultra'
|
|
2257
|
+
| 'ultraTestnet'
|
|
2258
|
+
| 'nitrograph'
|
|
1571
2259
|
| 'sepolia'
|
|
1572
2260
|
| 'optimism_sepolia'
|
|
1573
2261
|
| 'arbitrumSepolia'
|
|
@@ -1575,7 +2263,11 @@ export namespace RuleUpdateResponse {
|
|
|
1575
2263
|
| 'optimism_goerli'
|
|
1576
2264
|
| 'arbitrumGoerli'
|
|
1577
2265
|
| 'basecamp'
|
|
1578
|
-
| '
|
|
2266
|
+
| 'somnia'
|
|
2267
|
+
| 'zkverify'
|
|
2268
|
+
| 'polkadot'
|
|
2269
|
+
| 'kusama'
|
|
2270
|
+
| 'flow_cadence';
|
|
1579
2271
|
}
|
|
1580
2272
|
|
|
1581
2273
|
/**
|
|
@@ -1652,6 +2344,111 @@ export namespace RuleUpdateResponse {
|
|
|
1652
2344
|
id: string;
|
|
1653
2345
|
}
|
|
1654
2346
|
|
|
2347
|
+
/**
|
|
2348
|
+
* Liquidity pool details.
|
|
2349
|
+
*/
|
|
2350
|
+
export interface Liquidity {
|
|
2351
|
+
/**
|
|
2352
|
+
* Calculation type of the liquidity pool.
|
|
2353
|
+
*/
|
|
2354
|
+
calculationType?: 'fixed' | 'custom';
|
|
2355
|
+
|
|
2356
|
+
/**
|
|
2357
|
+
* Custom function to calculate the the reward amount based on the liquidity
|
|
2358
|
+
* provided per day. X is the reward amount, Y is the liquidity provided per day in
|
|
2359
|
+
* USD.
|
|
2360
|
+
*/
|
|
2361
|
+
customFunction?: string;
|
|
2362
|
+
|
|
2363
|
+
/**
|
|
2364
|
+
* Liquidity provided per day in USD
|
|
2365
|
+
*/
|
|
2366
|
+
liquidityPerDay?: number;
|
|
2367
|
+
|
|
2368
|
+
/**
|
|
2369
|
+
* Blockchain network of the liquidity pool.
|
|
2370
|
+
*/
|
|
2371
|
+
network?:
|
|
2372
|
+
| 'abstract'
|
|
2373
|
+
| 'abstractTestnet'
|
|
2374
|
+
| 'apechain'
|
|
2375
|
+
| 'arbitrum'
|
|
2376
|
+
| 'avalanche'
|
|
2377
|
+
| 'avalancheFuji'
|
|
2378
|
+
| 'base'
|
|
2379
|
+
| 'baseSepolia'
|
|
2380
|
+
| 'berachain'
|
|
2381
|
+
| 'berachainArtio'
|
|
2382
|
+
| 'berachainBepolia'
|
|
2383
|
+
| 'binance'
|
|
2384
|
+
| 'bscTestnet'
|
|
2385
|
+
| 'campTestnet'
|
|
2386
|
+
| 'fantom'
|
|
2387
|
+
| 'fantomTestnet'
|
|
2388
|
+
| 'flowMainnet'
|
|
2389
|
+
| 'mainnet'
|
|
2390
|
+
| 'nexusTestnet'
|
|
2391
|
+
| 'optimism'
|
|
2392
|
+
| 'polygon'
|
|
2393
|
+
| 'polygon_mumbai'
|
|
2394
|
+
| 'skaleNebula'
|
|
2395
|
+
| 'skaleEuropa'
|
|
2396
|
+
| 'skaleCalypso'
|
|
2397
|
+
| 'solana'
|
|
2398
|
+
| 'sophon'
|
|
2399
|
+
| 'sophonTestnet'
|
|
2400
|
+
| 'sui'
|
|
2401
|
+
| 'superseed'
|
|
2402
|
+
| 'superseedSepolia'
|
|
2403
|
+
| 'vanar'
|
|
2404
|
+
| 'xai'
|
|
2405
|
+
| 'zksync'
|
|
2406
|
+
| 'coti'
|
|
2407
|
+
| 'cotiTestnet'
|
|
2408
|
+
| 'morph'
|
|
2409
|
+
| 'morphTestnet'
|
|
2410
|
+
| 'morphHolesky'
|
|
2411
|
+
| 'ultra'
|
|
2412
|
+
| 'ultraTestnet'
|
|
2413
|
+
| 'nitrograph'
|
|
2414
|
+
| 'sepolia'
|
|
2415
|
+
| 'optimism_sepolia'
|
|
2416
|
+
| 'arbitrumSepolia'
|
|
2417
|
+
| 'goerli'
|
|
2418
|
+
| 'optimism_goerli'
|
|
2419
|
+
| 'arbitrumGoerli'
|
|
2420
|
+
| 'basecamp'
|
|
2421
|
+
| 'somnia'
|
|
2422
|
+
| 'zkverify'
|
|
2423
|
+
| 'polkadot'
|
|
2424
|
+
| 'kusama'
|
|
2425
|
+
| 'flow_cadence';
|
|
2426
|
+
|
|
2427
|
+
/**
|
|
2428
|
+
* Indicates if only in-range liquidity is rewarded.
|
|
2429
|
+
*/
|
|
2430
|
+
onlyRewardInRangeLiquidity?: boolean;
|
|
2431
|
+
|
|
2432
|
+
/**
|
|
2433
|
+
* Array of liquidity pools associated with the rule.
|
|
2434
|
+
*/
|
|
2435
|
+
pools?: Array<Liquidity.Pool>;
|
|
2436
|
+
|
|
2437
|
+
/**
|
|
2438
|
+
* Protocol of the liquidity pool.
|
|
2439
|
+
*/
|
|
2440
|
+
protocol?: string;
|
|
2441
|
+
}
|
|
2442
|
+
|
|
2443
|
+
export namespace Liquidity {
|
|
2444
|
+
export interface Pool {
|
|
2445
|
+
/**
|
|
2446
|
+
* Unique identifier of the liquidity pool.
|
|
2447
|
+
*/
|
|
2448
|
+
id: string;
|
|
2449
|
+
}
|
|
2450
|
+
}
|
|
2451
|
+
|
|
1655
2452
|
export interface Range {
|
|
1656
2453
|
/**
|
|
1657
2454
|
* Reward amount for this range.
|
|
@@ -1667,6 +2464,16 @@ export namespace RuleUpdateResponse {
|
|
|
1667
2464
|
* Start value of the range.
|
|
1668
2465
|
*/
|
|
1669
2466
|
startRange: number;
|
|
2467
|
+
|
|
2468
|
+
/**
|
|
2469
|
+
* ID of the loyalty badge for this range.
|
|
2470
|
+
*/
|
|
2471
|
+
loyaltyBadgeId?: string;
|
|
2472
|
+
|
|
2473
|
+
/**
|
|
2474
|
+
* Amount of the loyalty multiplier for this range.
|
|
2475
|
+
*/
|
|
2476
|
+
loyaltyMultiplierAmount?: number;
|
|
1670
2477
|
}
|
|
1671
2478
|
|
|
1672
2479
|
/**
|
|
@@ -1719,20 +2526,15 @@ export namespace RuleUpdateResponse {
|
|
|
1719
2526
|
* Object containing details of the associated smart contract.
|
|
1720
2527
|
*/
|
|
1721
2528
|
export interface SmartContract {
|
|
1722
|
-
/**
|
|
1723
|
-
* ABI of the smart contract.
|
|
1724
|
-
*/
|
|
1725
|
-
abi?: string | null;
|
|
1726
|
-
|
|
1727
2529
|
/**
|
|
1728
2530
|
* Mapping of addresses for the smart contract.
|
|
1729
2531
|
*/
|
|
1730
2532
|
addressMapping?: string | null;
|
|
1731
2533
|
|
|
1732
2534
|
/**
|
|
1733
|
-
*
|
|
2535
|
+
* Object containing details of the amount multiplier from the event.
|
|
1734
2536
|
*/
|
|
1735
|
-
|
|
2537
|
+
amountMultiplier?: SmartContract.AmountMultiplier | null;
|
|
1736
2538
|
|
|
1737
2539
|
/**
|
|
1738
2540
|
* ID of the smart contract.
|
|
@@ -1744,68 +2546,31 @@ export namespace RuleUpdateResponse {
|
|
|
1744
2546
|
*/
|
|
1745
2547
|
criteria?: 'everyEvent' | 'byParameter' | null;
|
|
1746
2548
|
|
|
1747
|
-
/**
|
|
1748
|
-
* Time range applied to the rule.
|
|
1749
|
-
*/
|
|
1750
|
-
customRange?: SmartContract.CustomRange | null;
|
|
1751
|
-
|
|
1752
2549
|
/**
|
|
1753
2550
|
* Event emitted by the smart contract.
|
|
1754
2551
|
*/
|
|
1755
2552
|
event?: string | null;
|
|
1756
2553
|
|
|
1757
|
-
/**
|
|
1758
|
-
* Maximum value allowed for the parameter.
|
|
1759
|
-
*/
|
|
1760
|
-
max?: number | null;
|
|
1761
|
-
|
|
1762
2554
|
/**
|
|
1763
2555
|
* Array of parameters for the smart contract.
|
|
1764
2556
|
*/
|
|
1765
2557
|
params?: Array<SmartContract.Param> | null;
|
|
1766
2558
|
|
|
1767
2559
|
/**
|
|
1768
|
-
*
|
|
1769
|
-
*/
|
|
1770
|
-
withBonus?: boolean | null;
|
|
1771
|
-
|
|
1772
|
-
/**
|
|
1773
|
-
* Flag indicating if a custom range is applied.
|
|
1774
|
-
*/
|
|
1775
|
-
withCustomRange?: boolean | null;
|
|
1776
|
-
|
|
1777
|
-
/**
|
|
1778
|
-
* Flag indicating if a maximum limit is applied.
|
|
2560
|
+
* Type of the smart contract interaction.
|
|
1779
2561
|
*/
|
|
1780
|
-
|
|
2562
|
+
type?: 'function' | 'event' | null;
|
|
1781
2563
|
}
|
|
1782
2564
|
|
|
1783
2565
|
export namespace SmartContract {
|
|
1784
|
-
export interface Bonus {
|
|
1785
|
-
/**
|
|
1786
|
-
* Amount of the bonus.
|
|
1787
|
-
*/
|
|
1788
|
-
amount?: number | null;
|
|
1789
|
-
|
|
1790
|
-
/**
|
|
1791
|
-
* Number of times the bonus is applied.
|
|
1792
|
-
*/
|
|
1793
|
-
count?: number | null;
|
|
1794
|
-
}
|
|
1795
|
-
|
|
1796
2566
|
/**
|
|
1797
|
-
*
|
|
2567
|
+
* Object containing details of the amount multiplier from the event.
|
|
1798
2568
|
*/
|
|
1799
|
-
export interface
|
|
2569
|
+
export interface AmountMultiplier {
|
|
1800
2570
|
/**
|
|
1801
|
-
*
|
|
2571
|
+
* Mapping of the value for the smart contract.
|
|
1802
2572
|
*/
|
|
1803
|
-
|
|
1804
|
-
|
|
1805
|
-
/**
|
|
1806
|
-
* Start time of the custom range.
|
|
1807
|
-
*/
|
|
1808
|
-
startsAt?: string | null;
|
|
2573
|
+
valueMapping?: string | null;
|
|
1809
2574
|
}
|
|
1810
2575
|
|
|
1811
2576
|
export interface Param {
|
|
@@ -1849,6 +2614,33 @@ export namespace RuleUpdateResponse {
|
|
|
1849
2614
|
*/
|
|
1850
2615
|
streakMilestone: number;
|
|
1851
2616
|
}
|
|
2617
|
+
|
|
2618
|
+
/**
|
|
2619
|
+
* Metadata for swap loyalty rules
|
|
2620
|
+
*/
|
|
2621
|
+
export interface Swap {
|
|
2622
|
+
provider?: 'any' | 'relay' | 'lifi';
|
|
2623
|
+
|
|
2624
|
+
relayReferrerId?: string;
|
|
2625
|
+
|
|
2626
|
+
requireCrossChainSwap?: boolean;
|
|
2627
|
+
|
|
2628
|
+
swappedToChain?: 'any' | number | string;
|
|
2629
|
+
|
|
2630
|
+
swappedToTokens?: Array<Swap.SwappedToToken>;
|
|
2631
|
+
|
|
2632
|
+
tokenMode?: 'any' | 'specific';
|
|
2633
|
+
|
|
2634
|
+
trackTokenAmount?: boolean;
|
|
2635
|
+
}
|
|
2636
|
+
|
|
2637
|
+
export namespace Swap {
|
|
2638
|
+
export interface SwappedToToken {
|
|
2639
|
+
address: string;
|
|
2640
|
+
|
|
2641
|
+
chainId: string;
|
|
2642
|
+
}
|
|
2643
|
+
}
|
|
1852
2644
|
}
|
|
1853
2645
|
}
|
|
1854
2646
|
|
|
@@ -1859,9 +2651,6 @@ export interface RuleListResponse {
|
|
|
1859
2651
|
}
|
|
1860
2652
|
|
|
1861
2653
|
export namespace RuleListResponse {
|
|
1862
|
-
/**
|
|
1863
|
-
* Schema for a loyalty rule
|
|
1864
|
-
*/
|
|
1865
2654
|
export interface Data {
|
|
1866
2655
|
/**
|
|
1867
2656
|
* Unique identifier for the loyalty rule
|
|
@@ -1871,7 +2660,7 @@ export namespace RuleListResponse {
|
|
|
1871
2660
|
/**
|
|
1872
2661
|
* Amount associated with the loyalty rule
|
|
1873
2662
|
*/
|
|
1874
|
-
amount: number;
|
|
2663
|
+
amount: number | null;
|
|
1875
2664
|
|
|
1876
2665
|
/**
|
|
1877
2666
|
* Timestamp when the loyalty rule was created
|
|
@@ -1883,16 +2672,46 @@ export namespace RuleListResponse {
|
|
|
1883
2672
|
*/
|
|
1884
2673
|
deletedAt: string | null;
|
|
1885
2674
|
|
|
2675
|
+
/**
|
|
2676
|
+
* Description of the loyalty rule
|
|
2677
|
+
*/
|
|
2678
|
+
description: string;
|
|
2679
|
+
|
|
2680
|
+
/**
|
|
2681
|
+
* End time of the loyalty rule
|
|
2682
|
+
*/
|
|
2683
|
+
endTime: string | null;
|
|
2684
|
+
|
|
1886
2685
|
/**
|
|
1887
2686
|
* Frequency of the loyalty rule
|
|
1888
2687
|
*/
|
|
1889
2688
|
frequency: string;
|
|
1890
2689
|
|
|
2690
|
+
/**
|
|
2691
|
+
* Chains attached to the loyalty rule
|
|
2692
|
+
*/
|
|
2693
|
+
loyaltyRuleChain: Array<Data.LoyaltyRuleChain>;
|
|
2694
|
+
|
|
2695
|
+
/**
|
|
2696
|
+
* Name of the loyalty rule
|
|
2697
|
+
*/
|
|
2698
|
+
name: string;
|
|
2699
|
+
|
|
1891
2700
|
/**
|
|
1892
2701
|
* Unique identifier for the organization
|
|
1893
2702
|
*/
|
|
1894
2703
|
organizationId: string;
|
|
1895
2704
|
|
|
2705
|
+
/**
|
|
2706
|
+
* Type of the reward
|
|
2707
|
+
*/
|
|
2708
|
+
rewardType: 'points' | 'multiplier' | 'badge';
|
|
2709
|
+
|
|
2710
|
+
/**
|
|
2711
|
+
* Start time of the loyalty rule
|
|
2712
|
+
*/
|
|
2713
|
+
startTime: string | null;
|
|
2714
|
+
|
|
1896
2715
|
/**
|
|
1897
2716
|
* Type of the loyalty rule
|
|
1898
2717
|
*/
|
|
@@ -1913,36 +2732,1156 @@ export namespace RuleListResponse {
|
|
|
1913
2732
|
*/
|
|
1914
2733
|
collectionAddress?: string;
|
|
1915
2734
|
|
|
2735
|
+
/**
|
|
2736
|
+
* URL of the media associated with the loyalty rule
|
|
2737
|
+
*/
|
|
2738
|
+
mediaUrl?: string | null;
|
|
2739
|
+
|
|
1916
2740
|
/**
|
|
1917
2741
|
* Optional metadata for the loyalty rule
|
|
1918
2742
|
*/
|
|
1919
|
-
metadata?:
|
|
2743
|
+
metadata?: { [key: string]: Data.Metadata };
|
|
1920
2744
|
}
|
|
1921
|
-
}
|
|
1922
2745
|
|
|
1923
|
-
export
|
|
1924
|
-
|
|
2746
|
+
export namespace Data {
|
|
2747
|
+
export interface LoyaltyRuleChain {
|
|
2748
|
+
/**
|
|
2749
|
+
* Unique identifier for the rule chain
|
|
2750
|
+
*/
|
|
2751
|
+
id: string;
|
|
1925
2752
|
|
|
1926
|
-
|
|
1927
|
-
}
|
|
2753
|
+
loyaltyConditions: Array<LoyaltyRuleChain.LoyaltyCondition>;
|
|
1928
2754
|
|
|
1929
|
-
|
|
1930
|
-
|
|
1931
|
-
|
|
2755
|
+
/**
|
|
2756
|
+
* Unique identifier for the loyalty rule
|
|
2757
|
+
*/
|
|
2758
|
+
loyaltyRuleId: string;
|
|
1932
2759
|
|
|
1933
|
-
|
|
1934
|
-
|
|
1935
|
-
|
|
2760
|
+
/**
|
|
2761
|
+
* Name of the rule chain
|
|
2762
|
+
*/
|
|
2763
|
+
name: string;
|
|
2764
|
+
}
|
|
1936
2765
|
|
|
1937
|
-
export namespace
|
|
1938
|
-
|
|
1939
|
-
|
|
2766
|
+
export namespace LoyaltyRuleChain {
|
|
2767
|
+
export interface LoyaltyCondition {
|
|
2768
|
+
/**
|
|
2769
|
+
* Unique identifier for the condition
|
|
2770
|
+
*/
|
|
2771
|
+
id: string;
|
|
2772
|
+
|
|
2773
|
+
/**
|
|
2774
|
+
* Amount of the condition
|
|
2775
|
+
*/
|
|
2776
|
+
amount: number | null;
|
|
2777
|
+
|
|
2778
|
+
association: Array<LoyaltyCondition.Association>;
|
|
2779
|
+
|
|
2780
|
+
/**
|
|
2781
|
+
* URL of the CSV file
|
|
2782
|
+
*/
|
|
2783
|
+
csvUrl: string | null;
|
|
2784
|
+
|
|
2785
|
+
/**
|
|
2786
|
+
* Description of the condition
|
|
2787
|
+
*/
|
|
2788
|
+
description: string | null;
|
|
2789
|
+
|
|
2790
|
+
/**
|
|
2791
|
+
* Number of times the condition must be met
|
|
2792
|
+
*/
|
|
2793
|
+
repeatCount: number | null;
|
|
2794
|
+
|
|
2795
|
+
/**
|
|
2796
|
+
* Number of times the condition must be met
|
|
2797
|
+
*/
|
|
2798
|
+
requiredCount: number | null;
|
|
2799
|
+
|
|
2800
|
+
/**
|
|
2801
|
+
* Type of the condition
|
|
2802
|
+
*/
|
|
2803
|
+
type: 'rule' | 'rules' | 'points' | 'section' | 'level' | 'api' | 'badge' | 'badges' | 'csv';
|
|
2804
|
+
}
|
|
2805
|
+
|
|
2806
|
+
export namespace LoyaltyCondition {
|
|
2807
|
+
export interface Association {
|
|
2808
|
+
/**
|
|
2809
|
+
* Unique identifier for the association
|
|
2810
|
+
*/
|
|
2811
|
+
id: string;
|
|
2812
|
+
|
|
2813
|
+
/**
|
|
2814
|
+
* Unique identifier for the loyalty badge
|
|
2815
|
+
*/
|
|
2816
|
+
loyaltyBadgeId: string | null;
|
|
2817
|
+
|
|
2818
|
+
/**
|
|
2819
|
+
* Unique identifier for the loyalty currency
|
|
2820
|
+
*/
|
|
2821
|
+
loyaltyCurrencyId: string | null;
|
|
2822
|
+
|
|
2823
|
+
loyaltyRule: Association.LoyaltyRule | null;
|
|
2824
|
+
|
|
2825
|
+
/**
|
|
2826
|
+
* Unique identifier for the loyalty rule group
|
|
2827
|
+
*/
|
|
2828
|
+
loyaltyRuleGroupId: string | null;
|
|
2829
|
+
|
|
2830
|
+
/**
|
|
2831
|
+
* Unique identifier for the loyalty rule
|
|
2832
|
+
*/
|
|
2833
|
+
loyaltyRuleId: string | null;
|
|
2834
|
+
}
|
|
2835
|
+
|
|
2836
|
+
export namespace Association {
|
|
2837
|
+
export interface LoyaltyRule {
|
|
2838
|
+
/**
|
|
2839
|
+
* Name of the loyalty rule
|
|
2840
|
+
*/
|
|
2841
|
+
name: string;
|
|
2842
|
+
}
|
|
2843
|
+
}
|
|
2844
|
+
}
|
|
2845
|
+
}
|
|
2846
|
+
|
|
2847
|
+
export interface Metadata {
|
|
2848
|
+
/**
|
|
2849
|
+
* Number of tokens per batch.
|
|
2850
|
+
*/
|
|
2851
|
+
batchSize?: number | null;
|
|
2852
|
+
|
|
2853
|
+
/**
|
|
2854
|
+
* Text displayed on the action button.
|
|
2855
|
+
*/
|
|
2856
|
+
buttonText?: string | null;
|
|
2857
|
+
|
|
2858
|
+
/**
|
|
2859
|
+
* Flag indicating if commenting is required.
|
|
2860
|
+
*/
|
|
2861
|
+
checkComment?: boolean | null;
|
|
2862
|
+
|
|
2863
|
+
/**
|
|
2864
|
+
* Flag indicating if liking the post is required.
|
|
2865
|
+
*/
|
|
2866
|
+
checkLike?: boolean | null;
|
|
2867
|
+
|
|
2868
|
+
/**
|
|
2869
|
+
* Flag indicating if reposting is required.
|
|
2870
|
+
*/
|
|
2871
|
+
checkRepost?: boolean | null;
|
|
2872
|
+
|
|
2873
|
+
/**
|
|
2874
|
+
* Text to check in the Twitter post, username, or bio.
|
|
2875
|
+
*/
|
|
2876
|
+
checkText?: string | Array<string> | null;
|
|
2877
|
+
|
|
2878
|
+
/**
|
|
2879
|
+
* Array of collections associated with the rule.
|
|
2880
|
+
*/
|
|
2881
|
+
collection?: Array<Metadata.Collection>;
|
|
2882
|
+
|
|
2883
|
+
/**
|
|
2884
|
+
* Conditions for completing the profile.
|
|
2885
|
+
*/
|
|
2886
|
+
completeProfileConditions?: { [key: string]: boolean } | null;
|
|
2887
|
+
|
|
2888
|
+
/**
|
|
2889
|
+
* Description of the external rule condition (only for external rules)
|
|
2890
|
+
*/
|
|
2891
|
+
conditionDescription?: string;
|
|
2892
|
+
|
|
2893
|
+
/**
|
|
2894
|
+
* Object containing details for the call-to-action.
|
|
2895
|
+
*/
|
|
2896
|
+
cta?: Metadata.Cta | null;
|
|
2897
|
+
|
|
2898
|
+
/**
|
|
2899
|
+
* API key for custom rewards integration.
|
|
2900
|
+
*/
|
|
2901
|
+
customRewardsApiKey?: string;
|
|
2902
|
+
|
|
2903
|
+
/**
|
|
2904
|
+
* Flag indicating if the rule should use direct RPC to get the balance of tokens.
|
|
2905
|
+
*/
|
|
2906
|
+
directRpc?: boolean;
|
|
2907
|
+
|
|
2908
|
+
/**
|
|
2909
|
+
* Array of Discord servers, channels, and roles to join.
|
|
2910
|
+
*/
|
|
2911
|
+
discordServersToJoin?: Array<Metadata.DiscordServersToJoin> | null;
|
|
2912
|
+
|
|
2913
|
+
/**
|
|
2914
|
+
* Array of drip quests required to complete the rule.
|
|
2915
|
+
*/
|
|
2916
|
+
dripQuestsToComplete?: Array<Metadata.DripQuestsToComplete> | null;
|
|
2917
|
+
|
|
2918
|
+
/**
|
|
2919
|
+
* Flag indicating whether joining Discord servers is required.
|
|
2920
|
+
*/
|
|
2921
|
+
enableJoinDiscordServers?: boolean | null;
|
|
2922
|
+
|
|
2923
|
+
/**
|
|
2924
|
+
* Flag indicating whether streaks are enabled.
|
|
2925
|
+
*/
|
|
2926
|
+
enableStreaks?: boolean | null;
|
|
2927
|
+
|
|
2928
|
+
/**
|
|
2929
|
+
* Flag indicating whether the verified multiplier is enabled.
|
|
2930
|
+
*/
|
|
2931
|
+
enableVerifiedMultiplier?: boolean;
|
|
2932
|
+
|
|
2933
|
+
/**
|
|
2934
|
+
* Type of ERC20 token for the loyalty rule.
|
|
2935
|
+
*/
|
|
2936
|
+
erc20Type?: 'erc20' | 'native';
|
|
2937
|
+
|
|
2938
|
+
/**
|
|
2939
|
+
* Fill source of the order for the token sale
|
|
2940
|
+
*/
|
|
2941
|
+
fillSource?: string;
|
|
2942
|
+
|
|
2943
|
+
/**
|
|
2944
|
+
* Percentage reward given to a user for their first referral.
|
|
2945
|
+
*/
|
|
2946
|
+
firstReferralReward?: number | null;
|
|
2947
|
+
|
|
2948
|
+
/**
|
|
2949
|
+
* URL of the GitHub repository to check for star.
|
|
2950
|
+
*/
|
|
2951
|
+
githubRepoUrl?: string | null;
|
|
2952
|
+
|
|
2953
|
+
/**
|
|
2954
|
+
* Flag indicating whether the fill source is included.
|
|
2955
|
+
*/
|
|
2956
|
+
hasFillSource?: boolean;
|
|
2957
|
+
|
|
2958
|
+
/**
|
|
2959
|
+
* Indicates if the item has never been sold.
|
|
2960
|
+
*/
|
|
2961
|
+
hasNeverSold?: boolean;
|
|
2962
|
+
|
|
2963
|
+
/**
|
|
2964
|
+
* Indicates if the full royalty has been paid for items.
|
|
2965
|
+
*/
|
|
2966
|
+
hasPaidFullRoyalty?: boolean;
|
|
2967
|
+
|
|
2968
|
+
/**
|
|
2969
|
+
* Flag indicating if the sale currency is included.
|
|
2970
|
+
*/
|
|
2971
|
+
hasSaleCurrency?: boolean;
|
|
2972
|
+
|
|
2973
|
+
/**
|
|
2974
|
+
* Indicates if the user has a verified Twitter account.
|
|
2975
|
+
*/
|
|
2976
|
+
hasVerifiedTwitter?: boolean;
|
|
2977
|
+
|
|
2978
|
+
/**
|
|
2979
|
+
* URL of the image associated with the rule.
|
|
2980
|
+
*/
|
|
2981
|
+
imageUrl?: string | null;
|
|
2982
|
+
|
|
2983
|
+
/**
|
|
2984
|
+
* If enabled, the first transaction done on the platform will complete this rule
|
|
2985
|
+
*/
|
|
2986
|
+
isCheckInOnEveryTxn?: boolean;
|
|
2987
|
+
|
|
2988
|
+
/**
|
|
2989
|
+
* Indicates if the multiplier has been applied to rewards.
|
|
2990
|
+
*/
|
|
2991
|
+
isMultiplierApplied?: boolean;
|
|
2992
|
+
|
|
2993
|
+
/**
|
|
2994
|
+
* Flag indicating if the rule is restricted to new users.
|
|
2995
|
+
*/
|
|
2996
|
+
isRestrictedToNewUsers?: boolean;
|
|
2997
|
+
|
|
2998
|
+
/**
|
|
2999
|
+
* Flag indicating if rewards are applied retroactively.
|
|
3000
|
+
*/
|
|
3001
|
+
isRetroactive?: boolean | null;
|
|
3002
|
+
|
|
3003
|
+
/**
|
|
3004
|
+
* Flag indicating if the token hold multiplier is applied.
|
|
3005
|
+
*/
|
|
3006
|
+
isTokenHoldMultiplier?: boolean;
|
|
3007
|
+
|
|
3008
|
+
/**
|
|
3009
|
+
* Optional link associated with the metadata.
|
|
3010
|
+
*/
|
|
3011
|
+
link?: string | null;
|
|
3012
|
+
|
|
3013
|
+
/**
|
|
3014
|
+
* Liquidity pool details.
|
|
3015
|
+
*/
|
|
3016
|
+
liquidity?: Metadata.Liquidity;
|
|
3017
|
+
|
|
3018
|
+
/**
|
|
3019
|
+
* Maximum quantity constraint for token holding.
|
|
3020
|
+
*/
|
|
3021
|
+
maxQty?: number | null;
|
|
3022
|
+
|
|
3023
|
+
/**
|
|
3024
|
+
* Minimum quantity constraint for token holding.
|
|
3025
|
+
*/
|
|
3026
|
+
minQty?: number | null;
|
|
3027
|
+
|
|
3028
|
+
/**
|
|
3029
|
+
* Array of loyalty currency IDs used for multipliers.
|
|
3030
|
+
*/
|
|
3031
|
+
multiplierLoyaltyCurrencyIds?: Array<string> | null;
|
|
3032
|
+
|
|
3033
|
+
/**
|
|
3034
|
+
* Flag indicating whether to include only known users.
|
|
3035
|
+
*/
|
|
3036
|
+
onlyKnownUsers?: boolean;
|
|
3037
|
+
|
|
3038
|
+
/**
|
|
3039
|
+
* Flag indicating whether to include only native tokens.
|
|
3040
|
+
*/
|
|
3041
|
+
onlyNative?: boolean;
|
|
3042
|
+
|
|
3043
|
+
/**
|
|
3044
|
+
* Flag indicating whether to include only non-listed items.
|
|
3045
|
+
*/
|
|
3046
|
+
onlyNonListed?: boolean;
|
|
3047
|
+
|
|
3048
|
+
/**
|
|
3049
|
+
* Indicates if only existing users are rewarded.
|
|
3050
|
+
*/
|
|
3051
|
+
onlyRewardExistingUser?: boolean;
|
|
3052
|
+
|
|
3053
|
+
/**
|
|
3054
|
+
* give points for only one token ownership per contract
|
|
3055
|
+
*/
|
|
3056
|
+
onlyRewardSingleTokenOwnership?: boolean | null;
|
|
3057
|
+
|
|
3058
|
+
/**
|
|
3059
|
+
* Promotional code associated with the rule.
|
|
3060
|
+
*/
|
|
3061
|
+
promoCode?: string;
|
|
3062
|
+
|
|
3063
|
+
/**
|
|
3064
|
+
* URL of the CSV file containing promo codes.
|
|
3065
|
+
*/
|
|
3066
|
+
promoCodeCsvUrl?: string;
|
|
3067
|
+
|
|
3068
|
+
/**
|
|
3069
|
+
* Numbers of the promotional code to be generated.
|
|
3070
|
+
*/
|
|
3071
|
+
promoCodeLength?: number | null;
|
|
3072
|
+
|
|
3073
|
+
/**
|
|
3074
|
+
* Type of the promotional code.
|
|
3075
|
+
*/
|
|
3076
|
+
promoCodeType?: 'code' | 'csv' | 'generate';
|
|
3077
|
+
|
|
3078
|
+
/**
|
|
3079
|
+
* Array defining ranges and corresponding rewards.
|
|
3080
|
+
*/
|
|
3081
|
+
range?: Array<Metadata.Range>;
|
|
3082
|
+
|
|
3083
|
+
/**
|
|
3084
|
+
* Object defining referral requirements.
|
|
3085
|
+
*/
|
|
3086
|
+
referralRequirements?: Metadata.ReferralRequirements | null;
|
|
3087
|
+
|
|
3088
|
+
/**
|
|
3089
|
+
* Lump sum reward given to a referrer.
|
|
3090
|
+
*/
|
|
3091
|
+
referrerReward?: number | null;
|
|
3092
|
+
|
|
3093
|
+
/**
|
|
3094
|
+
* Loyalty currency ID of the referrer reward.
|
|
3095
|
+
*/
|
|
3096
|
+
referrerRewardLoyaltyCurrencyId?: string | null;
|
|
3097
|
+
|
|
3098
|
+
/**
|
|
3099
|
+
* Flag indicating if the post link is required.
|
|
3100
|
+
*/
|
|
3101
|
+
requirePostLink?: boolean | null;
|
|
3102
|
+
|
|
3103
|
+
/**
|
|
3104
|
+
* Flag indicating if media metadata is required.
|
|
3105
|
+
*/
|
|
3106
|
+
requirePostMediaLink?: boolean | null;
|
|
3107
|
+
|
|
3108
|
+
/**
|
|
3109
|
+
* Flag indicating if the rule can also reward badges per range.
|
|
3110
|
+
*/
|
|
3111
|
+
rewardBadgePerRange?: boolean;
|
|
3112
|
+
|
|
3113
|
+
/**
|
|
3114
|
+
* Flag indicating if the reward is rewarded by batch.
|
|
3115
|
+
*/
|
|
3116
|
+
rewardByBatch?: boolean | null;
|
|
3117
|
+
|
|
3118
|
+
/**
|
|
3119
|
+
* Criteria to evaluate the reward.
|
|
3120
|
+
*/
|
|
3121
|
+
rewardCriteria?: 'IMPRESSIONS_COUNT' | 'ELIGIBLE_POST' | null;
|
|
3122
|
+
|
|
3123
|
+
/**
|
|
3124
|
+
* Flag indicating if the reward is rewarded per action.
|
|
3125
|
+
*/
|
|
3126
|
+
rewardPerAction?: boolean | null;
|
|
3127
|
+
|
|
3128
|
+
/**
|
|
3129
|
+
* Flag indicating if rewards are given per impression.
|
|
3130
|
+
*/
|
|
3131
|
+
rewardPerImpression?: boolean | null;
|
|
3132
|
+
|
|
3133
|
+
/**
|
|
3134
|
+
* Flag indicating if the rule should reward based on value of traded tokens
|
|
3135
|
+
* instead of count.
|
|
3136
|
+
*/
|
|
3137
|
+
rewardPerValue?: boolean;
|
|
3138
|
+
|
|
3139
|
+
/**
|
|
3140
|
+
* Wallet address of the user can only be used if userId is not provided
|
|
3141
|
+
*/
|
|
3142
|
+
royaltyAddress?: string;
|
|
3143
|
+
|
|
3144
|
+
/**
|
|
3145
|
+
* Royalty percentage of the item.
|
|
3146
|
+
*/
|
|
3147
|
+
royaltyPercentage?: number;
|
|
3148
|
+
|
|
3149
|
+
/**
|
|
3150
|
+
* Currency associated with sales.
|
|
3151
|
+
*/
|
|
3152
|
+
saleCurrency?: string;
|
|
3153
|
+
|
|
3154
|
+
/**
|
|
3155
|
+
* Percentage reward given for a second-level referral.
|
|
3156
|
+
*/
|
|
3157
|
+
secondReferralReward?: number | null;
|
|
3158
|
+
|
|
3159
|
+
/**
|
|
3160
|
+
* Flag indicating if the multiplier is skipped.
|
|
3161
|
+
*/
|
|
3162
|
+
skipMultiplier?: boolean | null;
|
|
3163
|
+
|
|
3164
|
+
/**
|
|
3165
|
+
* Object containing details of the associated smart contract.
|
|
3166
|
+
*/
|
|
3167
|
+
smartContract?: Metadata.SmartContract;
|
|
3168
|
+
|
|
3169
|
+
/**
|
|
3170
|
+
* Array of snapshot proposals for the rule.
|
|
3171
|
+
*/
|
|
3172
|
+
snapshotProposals?: Array<Metadata.SnapshotProposal> | null;
|
|
3173
|
+
|
|
3174
|
+
/**
|
|
3175
|
+
* Social media platform associated with the rule.
|
|
3176
|
+
*/
|
|
3177
|
+
socialPlatform?:
|
|
3178
|
+
| 'Custom'
|
|
3179
|
+
| 'Discord'
|
|
3180
|
+
| 'EpicGames'
|
|
3181
|
+
| 'Instagram'
|
|
3182
|
+
| 'Steam'
|
|
3183
|
+
| 'Telegram'
|
|
3184
|
+
| 'TikTok'
|
|
3185
|
+
| 'Twitch'
|
|
3186
|
+
| 'X(Twitter)'
|
|
3187
|
+
| 'YouTube'
|
|
3188
|
+
| 'Google'
|
|
3189
|
+
| 'GitHub'
|
|
3190
|
+
| null;
|
|
3191
|
+
|
|
3192
|
+
/**
|
|
3193
|
+
* URL of the social platform's logo.
|
|
3194
|
+
*/
|
|
3195
|
+
socialPlatformLogo?: string | null;
|
|
3196
|
+
|
|
3197
|
+
/**
|
|
3198
|
+
* Name of the social platform.
|
|
3199
|
+
*/
|
|
3200
|
+
socialPlatformName?: string | null;
|
|
3201
|
+
|
|
3202
|
+
/**
|
|
3203
|
+
* ID of the Steam app.
|
|
3204
|
+
*/
|
|
3205
|
+
steamAppId?: string | null;
|
|
3206
|
+
|
|
3207
|
+
/**
|
|
3208
|
+
* Array of streak milestones and corresponding rewards.
|
|
3209
|
+
*/
|
|
3210
|
+
streakArray?: Array<Metadata.StreakArray> | null;
|
|
3211
|
+
|
|
3212
|
+
/**
|
|
3213
|
+
* Metadata for swap loyalty rules
|
|
3214
|
+
*/
|
|
3215
|
+
swap?: Metadata.Swap;
|
|
3216
|
+
|
|
3217
|
+
/**
|
|
3218
|
+
* ID of the Telegram channel.
|
|
3219
|
+
*/
|
|
3220
|
+
telegramChannelId?: string | null;
|
|
3221
|
+
|
|
3222
|
+
/**
|
|
3223
|
+
* Time delay in seconds to verify actions.
|
|
3224
|
+
*/
|
|
3225
|
+
timeDelayToVerifySeconds?: string | number | null;
|
|
3226
|
+
|
|
3227
|
+
/**
|
|
3228
|
+
* Flag indicating if all contracts are tracked.
|
|
3229
|
+
*/
|
|
3230
|
+
trackAllContracts?: boolean | null;
|
|
3231
|
+
|
|
3232
|
+
/**
|
|
3233
|
+
* Flag indicating if the progress is tracked. If enabled, the rule can only be
|
|
3234
|
+
* completed once the progress is 100%.
|
|
3235
|
+
*/
|
|
3236
|
+
trackProgress?: boolean | null;
|
|
3237
|
+
|
|
3238
|
+
/**
|
|
3239
|
+
* URL of the associated Twitter account.
|
|
3240
|
+
*/
|
|
3241
|
+
twitterAccountUrl?: string;
|
|
3242
|
+
|
|
3243
|
+
/**
|
|
3244
|
+
* Hashtag associated with the Twitter post.
|
|
3245
|
+
*/
|
|
3246
|
+
twitterHashtag?: string;
|
|
3247
|
+
|
|
3248
|
+
/**
|
|
3249
|
+
* URL of the associated Twitter post.
|
|
3250
|
+
*/
|
|
3251
|
+
twitterPostUrl?: string;
|
|
3252
|
+
|
|
3253
|
+
/**
|
|
3254
|
+
* Unique identifier of the Twitter user.
|
|
3255
|
+
*/
|
|
3256
|
+
twitterUserId?: string;
|
|
3257
|
+
|
|
3258
|
+
/**
|
|
3259
|
+
* Twitter username of the user.
|
|
3260
|
+
*/
|
|
3261
|
+
twitterUsername?: string;
|
|
3262
|
+
|
|
3263
|
+
/**
|
|
3264
|
+
* Minimum length of the verification text.
|
|
3265
|
+
*/
|
|
3266
|
+
verificationTextMinimumLength?: number | null;
|
|
3267
|
+
|
|
3268
|
+
/**
|
|
3269
|
+
* Multiplier applied to rewards for verified users.
|
|
3270
|
+
*/
|
|
3271
|
+
verifiedMultiplier?: number | null;
|
|
3272
|
+
|
|
3273
|
+
/**
|
|
3274
|
+
* Placeholder text for verification input fields.
|
|
3275
|
+
*/
|
|
3276
|
+
verifyPlaceHolderText?: string | null;
|
|
3277
|
+
|
|
3278
|
+
/**
|
|
3279
|
+
* Type of wallet associated with the rule.
|
|
3280
|
+
*/
|
|
3281
|
+
walletType?:
|
|
3282
|
+
| 'evm'
|
|
3283
|
+
| 'solana'
|
|
3284
|
+
| 'imx'
|
|
3285
|
+
| 'sui'
|
|
3286
|
+
| 'ton'
|
|
3287
|
+
| 'cosmos'
|
|
3288
|
+
| 'ultra'
|
|
3289
|
+
| 'agw'
|
|
3290
|
+
| 'flow_cadence'
|
|
3291
|
+
| 'substrate'
|
|
3292
|
+
| null;
|
|
3293
|
+
|
|
3294
|
+
/**
|
|
3295
|
+
* ID of the Youtube channel.
|
|
3296
|
+
*/
|
|
3297
|
+
youtubeChannelId?: string | null;
|
|
3298
|
+
|
|
3299
|
+
/**
|
|
3300
|
+
* ID of the Youtube video.
|
|
3301
|
+
*/
|
|
3302
|
+
youtubeVideoId?: string | null;
|
|
3303
|
+
}
|
|
3304
|
+
|
|
3305
|
+
export namespace Metadata {
|
|
3306
|
+
export interface Collection {
|
|
3307
|
+
/**
|
|
3308
|
+
* Blockchain address of the collection.
|
|
3309
|
+
*/
|
|
3310
|
+
address?: string;
|
|
3311
|
+
|
|
3312
|
+
/**
|
|
3313
|
+
* Multiplier applied to the rewards for this collection.
|
|
3314
|
+
*/
|
|
3315
|
+
multiplier?: number;
|
|
3316
|
+
|
|
3317
|
+
/**
|
|
3318
|
+
* Blockchain network of the collection.
|
|
3319
|
+
*/
|
|
3320
|
+
network?:
|
|
3321
|
+
| 'abstract'
|
|
3322
|
+
| 'abstractTestnet'
|
|
3323
|
+
| 'apechain'
|
|
3324
|
+
| 'arbitrum'
|
|
3325
|
+
| 'avalanche'
|
|
3326
|
+
| 'avalancheFuji'
|
|
3327
|
+
| 'base'
|
|
3328
|
+
| 'baseSepolia'
|
|
3329
|
+
| 'berachain'
|
|
3330
|
+
| 'berachainArtio'
|
|
3331
|
+
| 'berachainBepolia'
|
|
3332
|
+
| 'binance'
|
|
3333
|
+
| 'bscTestnet'
|
|
3334
|
+
| 'campTestnet'
|
|
3335
|
+
| 'fantom'
|
|
3336
|
+
| 'fantomTestnet'
|
|
3337
|
+
| 'flowMainnet'
|
|
3338
|
+
| 'mainnet'
|
|
3339
|
+
| 'nexusTestnet'
|
|
3340
|
+
| 'optimism'
|
|
3341
|
+
| 'polygon'
|
|
3342
|
+
| 'polygon_mumbai'
|
|
3343
|
+
| 'skaleNebula'
|
|
3344
|
+
| 'skaleEuropa'
|
|
3345
|
+
| 'skaleCalypso'
|
|
3346
|
+
| 'solana'
|
|
3347
|
+
| 'sophon'
|
|
3348
|
+
| 'sophonTestnet'
|
|
3349
|
+
| 'sui'
|
|
3350
|
+
| 'superseed'
|
|
3351
|
+
| 'superseedSepolia'
|
|
3352
|
+
| 'vanar'
|
|
3353
|
+
| 'xai'
|
|
3354
|
+
| 'zksync'
|
|
3355
|
+
| 'coti'
|
|
3356
|
+
| 'cotiTestnet'
|
|
3357
|
+
| 'morph'
|
|
3358
|
+
| 'morphTestnet'
|
|
3359
|
+
| 'morphHolesky'
|
|
3360
|
+
| 'ultra'
|
|
3361
|
+
| 'ultraTestnet'
|
|
3362
|
+
| 'nitrograph'
|
|
3363
|
+
| 'sepolia'
|
|
3364
|
+
| 'optimism_sepolia'
|
|
3365
|
+
| 'arbitrumSepolia'
|
|
3366
|
+
| 'goerli'
|
|
3367
|
+
| 'optimism_goerli'
|
|
3368
|
+
| 'arbitrumGoerli'
|
|
3369
|
+
| 'basecamp'
|
|
3370
|
+
| 'somnia'
|
|
3371
|
+
| 'zkverify'
|
|
3372
|
+
| 'polkadot'
|
|
3373
|
+
| 'kusama'
|
|
3374
|
+
| 'flow_cadence';
|
|
3375
|
+
}
|
|
3376
|
+
|
|
3377
|
+
/**
|
|
3378
|
+
* Object containing details for the call-to-action.
|
|
3379
|
+
*/
|
|
3380
|
+
export interface Cta {
|
|
3381
|
+
/**
|
|
3382
|
+
* Link for the call-to-action.
|
|
3383
|
+
*/
|
|
3384
|
+
href?: string | null;
|
|
3385
|
+
|
|
3386
|
+
/**
|
|
3387
|
+
* Label for the call-to-action.
|
|
3388
|
+
*/
|
|
3389
|
+
label?: string | null;
|
|
3390
|
+
}
|
|
3391
|
+
|
|
3392
|
+
export interface DiscordServersToJoin {
|
|
3393
|
+
/**
|
|
3394
|
+
* ID of the Discord server to join.
|
|
3395
|
+
*/
|
|
3396
|
+
id?: string;
|
|
3397
|
+
|
|
3398
|
+
/**
|
|
3399
|
+
* Array of Discord channels to join.
|
|
3400
|
+
*/
|
|
3401
|
+
channels?: Array<DiscordServersToJoin.Channel>;
|
|
3402
|
+
|
|
3403
|
+
/**
|
|
3404
|
+
* Array of roles to assign in the Discord server.
|
|
3405
|
+
*/
|
|
3406
|
+
roles?: Array<DiscordServersToJoin.Role>;
|
|
3407
|
+
}
|
|
3408
|
+
|
|
3409
|
+
export namespace DiscordServersToJoin {
|
|
3410
|
+
export interface Channel {
|
|
3411
|
+
/**
|
|
3412
|
+
* ID of the Discord channel.
|
|
3413
|
+
*/
|
|
3414
|
+
id?: string;
|
|
3415
|
+
|
|
3416
|
+
/**
|
|
3417
|
+
* Array of emojis used in the channel.
|
|
3418
|
+
*/
|
|
3419
|
+
emojis?: Array<Channel.Emoji>;
|
|
3420
|
+
|
|
3421
|
+
/**
|
|
3422
|
+
* Phrase of text to be present in the discord message
|
|
3423
|
+
*/
|
|
3424
|
+
text?: string;
|
|
3425
|
+
}
|
|
3426
|
+
|
|
3427
|
+
export namespace Channel {
|
|
3428
|
+
export interface Emoji {
|
|
3429
|
+
/**
|
|
3430
|
+
* ID of the emoji used in the channel.
|
|
3431
|
+
*/
|
|
3432
|
+
id?: string;
|
|
3433
|
+
}
|
|
3434
|
+
}
|
|
3435
|
+
|
|
3436
|
+
export interface Role {
|
|
3437
|
+
/**
|
|
3438
|
+
* ID of the role in the Discord server.
|
|
3439
|
+
*/
|
|
3440
|
+
id: string;
|
|
3441
|
+
}
|
|
3442
|
+
}
|
|
3443
|
+
|
|
3444
|
+
export interface DripQuestsToComplete {
|
|
3445
|
+
/**
|
|
3446
|
+
* ID of the drip quest to complete.
|
|
3447
|
+
*/
|
|
3448
|
+
id: string;
|
|
3449
|
+
}
|
|
3450
|
+
|
|
3451
|
+
/**
|
|
3452
|
+
* Liquidity pool details.
|
|
3453
|
+
*/
|
|
3454
|
+
export interface Liquidity {
|
|
3455
|
+
/**
|
|
3456
|
+
* Calculation type of the liquidity pool.
|
|
3457
|
+
*/
|
|
3458
|
+
calculationType?: 'fixed' | 'custom';
|
|
3459
|
+
|
|
3460
|
+
/**
|
|
3461
|
+
* Custom function to calculate the the reward amount based on the liquidity
|
|
3462
|
+
* provided per day. X is the reward amount, Y is the liquidity provided per day in
|
|
3463
|
+
* USD.
|
|
3464
|
+
*/
|
|
3465
|
+
customFunction?: string;
|
|
3466
|
+
|
|
3467
|
+
/**
|
|
3468
|
+
* Liquidity provided per day in USD
|
|
3469
|
+
*/
|
|
3470
|
+
liquidityPerDay?: number;
|
|
3471
|
+
|
|
3472
|
+
/**
|
|
3473
|
+
* Blockchain network of the liquidity pool.
|
|
3474
|
+
*/
|
|
3475
|
+
network?:
|
|
3476
|
+
| 'abstract'
|
|
3477
|
+
| 'abstractTestnet'
|
|
3478
|
+
| 'apechain'
|
|
3479
|
+
| 'arbitrum'
|
|
3480
|
+
| 'avalanche'
|
|
3481
|
+
| 'avalancheFuji'
|
|
3482
|
+
| 'base'
|
|
3483
|
+
| 'baseSepolia'
|
|
3484
|
+
| 'berachain'
|
|
3485
|
+
| 'berachainArtio'
|
|
3486
|
+
| 'berachainBepolia'
|
|
3487
|
+
| 'binance'
|
|
3488
|
+
| 'bscTestnet'
|
|
3489
|
+
| 'campTestnet'
|
|
3490
|
+
| 'fantom'
|
|
3491
|
+
| 'fantomTestnet'
|
|
3492
|
+
| 'flowMainnet'
|
|
3493
|
+
| 'mainnet'
|
|
3494
|
+
| 'nexusTestnet'
|
|
3495
|
+
| 'optimism'
|
|
3496
|
+
| 'polygon'
|
|
3497
|
+
| 'polygon_mumbai'
|
|
3498
|
+
| 'skaleNebula'
|
|
3499
|
+
| 'skaleEuropa'
|
|
3500
|
+
| 'skaleCalypso'
|
|
3501
|
+
| 'solana'
|
|
3502
|
+
| 'sophon'
|
|
3503
|
+
| 'sophonTestnet'
|
|
3504
|
+
| 'sui'
|
|
3505
|
+
| 'superseed'
|
|
3506
|
+
| 'superseedSepolia'
|
|
3507
|
+
| 'vanar'
|
|
3508
|
+
| 'xai'
|
|
3509
|
+
| 'zksync'
|
|
3510
|
+
| 'coti'
|
|
3511
|
+
| 'cotiTestnet'
|
|
3512
|
+
| 'morph'
|
|
3513
|
+
| 'morphTestnet'
|
|
3514
|
+
| 'morphHolesky'
|
|
3515
|
+
| 'ultra'
|
|
3516
|
+
| 'ultraTestnet'
|
|
3517
|
+
| 'nitrograph'
|
|
3518
|
+
| 'sepolia'
|
|
3519
|
+
| 'optimism_sepolia'
|
|
3520
|
+
| 'arbitrumSepolia'
|
|
3521
|
+
| 'goerli'
|
|
3522
|
+
| 'optimism_goerli'
|
|
3523
|
+
| 'arbitrumGoerli'
|
|
3524
|
+
| 'basecamp'
|
|
3525
|
+
| 'somnia'
|
|
3526
|
+
| 'zkverify'
|
|
3527
|
+
| 'polkadot'
|
|
3528
|
+
| 'kusama'
|
|
3529
|
+
| 'flow_cadence';
|
|
3530
|
+
|
|
3531
|
+
/**
|
|
3532
|
+
* Indicates if only in-range liquidity is rewarded.
|
|
3533
|
+
*/
|
|
3534
|
+
onlyRewardInRangeLiquidity?: boolean;
|
|
3535
|
+
|
|
3536
|
+
/**
|
|
3537
|
+
* Array of liquidity pools associated with the rule.
|
|
3538
|
+
*/
|
|
3539
|
+
pools?: Array<Liquidity.Pool>;
|
|
3540
|
+
|
|
3541
|
+
/**
|
|
3542
|
+
* Protocol of the liquidity pool.
|
|
3543
|
+
*/
|
|
3544
|
+
protocol?: string;
|
|
3545
|
+
}
|
|
3546
|
+
|
|
3547
|
+
export namespace Liquidity {
|
|
3548
|
+
export interface Pool {
|
|
3549
|
+
/**
|
|
3550
|
+
* Unique identifier of the liquidity pool.
|
|
3551
|
+
*/
|
|
3552
|
+
id: string;
|
|
3553
|
+
}
|
|
3554
|
+
}
|
|
3555
|
+
|
|
3556
|
+
export interface Range {
|
|
3557
|
+
/**
|
|
3558
|
+
* Reward amount for this range.
|
|
3559
|
+
*/
|
|
3560
|
+
amount: number;
|
|
3561
|
+
|
|
3562
|
+
/**
|
|
3563
|
+
* End value of the range.
|
|
3564
|
+
*/
|
|
3565
|
+
endRange: number;
|
|
3566
|
+
|
|
3567
|
+
/**
|
|
3568
|
+
* Start value of the range.
|
|
3569
|
+
*/
|
|
3570
|
+
startRange: number;
|
|
3571
|
+
|
|
3572
|
+
/**
|
|
3573
|
+
* ID of the loyalty badge for this range.
|
|
3574
|
+
*/
|
|
3575
|
+
loyaltyBadgeId?: string;
|
|
3576
|
+
|
|
3577
|
+
/**
|
|
3578
|
+
* Amount of the loyalty multiplier for this range.
|
|
3579
|
+
*/
|
|
3580
|
+
loyaltyMultiplierAmount?: number;
|
|
3581
|
+
}
|
|
3582
|
+
|
|
3583
|
+
/**
|
|
3584
|
+
* Object defining referral requirements.
|
|
3585
|
+
*/
|
|
3586
|
+
export interface ReferralRequirements {
|
|
3587
|
+
/**
|
|
3588
|
+
* Flag indicating if achieving points is required.
|
|
3589
|
+
*/
|
|
3590
|
+
achievePoints?: boolean | null;
|
|
3591
|
+
|
|
3592
|
+
/**
|
|
3593
|
+
* Flag indicating if completing the profile is required.
|
|
3594
|
+
*/
|
|
3595
|
+
completeProfile?: boolean | null;
|
|
3596
|
+
|
|
3597
|
+
/**
|
|
3598
|
+
* Flag indicating if connecting Discord is required.
|
|
3599
|
+
*/
|
|
3600
|
+
connectDiscord?: boolean | null;
|
|
3601
|
+
|
|
3602
|
+
/**
|
|
3603
|
+
* Flag indicating if connecting email is required.
|
|
3604
|
+
*/
|
|
3605
|
+
connectEmail?: boolean | null;
|
|
3606
|
+
|
|
3607
|
+
/**
|
|
3608
|
+
* Flag indicating if connecting Twitter is required.
|
|
3609
|
+
*/
|
|
3610
|
+
connectTwitter?: boolean | null;
|
|
3611
|
+
|
|
3612
|
+
points?: ReferralRequirements.Points | null;
|
|
3613
|
+
}
|
|
3614
|
+
|
|
3615
|
+
export namespace ReferralRequirements {
|
|
3616
|
+
export interface Points {
|
|
3617
|
+
/**
|
|
3618
|
+
* Points required for referral.
|
|
3619
|
+
*/
|
|
3620
|
+
amount?: number | null;
|
|
3621
|
+
|
|
3622
|
+
/**
|
|
3623
|
+
* ID of the loyalty currency for referral.
|
|
3624
|
+
*/
|
|
3625
|
+
loyaltyCurrecyId?: string | null;
|
|
3626
|
+
}
|
|
3627
|
+
}
|
|
3628
|
+
|
|
3629
|
+
/**
|
|
3630
|
+
* Object containing details of the associated smart contract.
|
|
3631
|
+
*/
|
|
3632
|
+
export interface SmartContract {
|
|
3633
|
+
/**
|
|
3634
|
+
* Mapping of addresses for the smart contract.
|
|
3635
|
+
*/
|
|
3636
|
+
addressMapping?: string | null;
|
|
3637
|
+
|
|
3638
|
+
/**
|
|
3639
|
+
* Object containing details of the amount multiplier from the event.
|
|
3640
|
+
*/
|
|
3641
|
+
amountMultiplier?: SmartContract.AmountMultiplier | null;
|
|
3642
|
+
|
|
3643
|
+
/**
|
|
3644
|
+
* ID of the smart contract.
|
|
3645
|
+
*/
|
|
3646
|
+
contractId?: string | null;
|
|
3647
|
+
|
|
3648
|
+
/**
|
|
3649
|
+
* Criteria to evaluate the smart contract event.
|
|
3650
|
+
*/
|
|
3651
|
+
criteria?: 'everyEvent' | 'byParameter' | null;
|
|
3652
|
+
|
|
3653
|
+
/**
|
|
3654
|
+
* Event emitted by the smart contract.
|
|
3655
|
+
*/
|
|
3656
|
+
event?: string | null;
|
|
3657
|
+
|
|
3658
|
+
/**
|
|
3659
|
+
* Array of parameters for the smart contract.
|
|
3660
|
+
*/
|
|
3661
|
+
params?: Array<SmartContract.Param> | null;
|
|
3662
|
+
|
|
3663
|
+
/**
|
|
3664
|
+
* Type of the smart contract interaction.
|
|
3665
|
+
*/
|
|
3666
|
+
type?: 'function' | 'event' | null;
|
|
3667
|
+
}
|
|
3668
|
+
|
|
3669
|
+
export namespace SmartContract {
|
|
3670
|
+
/**
|
|
3671
|
+
* Object containing details of the amount multiplier from the event.
|
|
3672
|
+
*/
|
|
3673
|
+
export interface AmountMultiplier {
|
|
3674
|
+
/**
|
|
3675
|
+
* Mapping of the value for the smart contract.
|
|
3676
|
+
*/
|
|
3677
|
+
valueMapping?: string | null;
|
|
3678
|
+
}
|
|
3679
|
+
|
|
3680
|
+
export interface Param {
|
|
3681
|
+
/**
|
|
3682
|
+
* Condition to check for the parameter.
|
|
3683
|
+
*/
|
|
3684
|
+
condition?: string | null;
|
|
3685
|
+
|
|
3686
|
+
/**
|
|
3687
|
+
* Name of the smart contract parameter.
|
|
3688
|
+
*/
|
|
3689
|
+
name?: string | null;
|
|
3690
|
+
|
|
3691
|
+
/**
|
|
3692
|
+
* Value of the parameter.
|
|
3693
|
+
*/
|
|
3694
|
+
value?: string | null;
|
|
3695
|
+
}
|
|
3696
|
+
}
|
|
3697
|
+
|
|
3698
|
+
export interface SnapshotProposal {
|
|
3699
|
+
/**
|
|
3700
|
+
* ID of the snapshot proposal.
|
|
3701
|
+
*/
|
|
3702
|
+
id: string;
|
|
3703
|
+
|
|
3704
|
+
/**
|
|
3705
|
+
* Space associated with the snapshot proposal.
|
|
3706
|
+
*/
|
|
3707
|
+
space: string;
|
|
3708
|
+
}
|
|
3709
|
+
|
|
3710
|
+
export interface StreakArray {
|
|
3711
|
+
/**
|
|
3712
|
+
* Reward amount for achieving the streak milestone.
|
|
3713
|
+
*/
|
|
3714
|
+
streakAmount: number;
|
|
3715
|
+
|
|
3716
|
+
/**
|
|
3717
|
+
* Milestone required to achieve the streak.
|
|
3718
|
+
*/
|
|
3719
|
+
streakMilestone: number;
|
|
3720
|
+
}
|
|
3721
|
+
|
|
3722
|
+
/**
|
|
3723
|
+
* Metadata for swap loyalty rules
|
|
3724
|
+
*/
|
|
3725
|
+
export interface Swap {
|
|
3726
|
+
provider?: 'any' | 'relay' | 'lifi';
|
|
3727
|
+
|
|
3728
|
+
relayReferrerId?: string;
|
|
3729
|
+
|
|
3730
|
+
requireCrossChainSwap?: boolean;
|
|
3731
|
+
|
|
3732
|
+
swappedToChain?: 'any' | number | string;
|
|
3733
|
+
|
|
3734
|
+
swappedToTokens?: Array<Swap.SwappedToToken>;
|
|
3735
|
+
|
|
3736
|
+
tokenMode?: 'any' | 'specific';
|
|
3737
|
+
|
|
3738
|
+
trackTokenAmount?: boolean;
|
|
3739
|
+
}
|
|
3740
|
+
|
|
3741
|
+
export namespace Swap {
|
|
3742
|
+
export interface SwappedToToken {
|
|
3743
|
+
address: string;
|
|
3744
|
+
|
|
3745
|
+
chainId: string;
|
|
3746
|
+
}
|
|
3747
|
+
}
|
|
3748
|
+
}
|
|
3749
|
+
}
|
|
3750
|
+
}
|
|
3751
|
+
|
|
3752
|
+
export interface RuleDeleteResponse {
|
|
3753
|
+
id: string;
|
|
3754
|
+
|
|
3755
|
+
deletedAt: string;
|
|
3756
|
+
}
|
|
3757
|
+
|
|
3758
|
+
export interface RuleCompleteResponse {
|
|
3759
|
+
message:
|
|
3760
|
+
| 'Completion request added to queue'
|
|
3761
|
+
| 'Link click being verified, come back later to check the status';
|
|
3762
|
+
}
|
|
3763
|
+
|
|
3764
|
+
export interface RuleGetStatusResponse {
|
|
3765
|
+
data: Array<RuleGetStatusResponse.Data>;
|
|
3766
|
+
}
|
|
3767
|
+
|
|
3768
|
+
export namespace RuleGetStatusResponse {
|
|
3769
|
+
export interface Data {
|
|
3770
|
+
loyaltyRuleId: string;
|
|
3771
|
+
|
|
3772
|
+
userId: string;
|
|
3773
|
+
|
|
3774
|
+
/**
|
|
3775
|
+
* The ID of the loyalty rule status for the Progress object
|
|
3776
|
+
*/
|
|
3777
|
+
id?: string;
|
|
3778
|
+
|
|
3779
|
+
createdAt?: string;
|
|
3780
|
+
|
|
3781
|
+
fulfilledAt?: string | null;
|
|
3782
|
+
|
|
3783
|
+
/**
|
|
3784
|
+
* Categorized examples of messages that may be returned for a loyalty rule's
|
|
3785
|
+
* processing result.
|
|
3786
|
+
*
|
|
3787
|
+
* User Onboarding
|
|
3788
|
+
*
|
|
3789
|
+
* - Check In: "Streak successful"
|
|
3790
|
+
* - Complete Profile Details: "Profile not complete"
|
|
3791
|
+
*
|
|
3792
|
+
* Connect Accounts
|
|
3793
|
+
*
|
|
3794
|
+
* - Connect TikTok: "TikTok not connected"
|
|
3795
|
+
* - Connect Discord: "Discord not connected", "Discord request timeout"
|
|
3796
|
+
* - Connect X: "Twitter not connected", "Twitter not connected or content url is
|
|
3797
|
+
* required"
|
|
3798
|
+
* - Connect Email: "Email address not connected"
|
|
3799
|
+
* - Connect Telegram: "Telegram not connected", "user has not setup telegram (no
|
|
3800
|
+
* telegramUsername), please setup username in telegram and reconnect.",
|
|
3801
|
+
* "Telegram request rate-limited"
|
|
3802
|
+
* - Connect Steam: "Steam not connected"
|
|
3803
|
+
* - Connect Youtube: "Youtube not connected"
|
|
3804
|
+
*
|
|
3805
|
+
* Social Quests
|
|
3806
|
+
*
|
|
3807
|
+
* - Join Telegram Group: "Telegram Channel not joined", "Telegram Channel joined
|
|
3808
|
+
* successfully"
|
|
3809
|
+
* - Post on TikTok: "TikTok post not verified"
|
|
3810
|
+
* - Comment on an X Post: "Quest Completed: You have commented on the tweet",
|
|
3811
|
+
* "Quest Not Completed: Comment not found for the specified tweet"
|
|
3812
|
+
* - Repost an X Post: "Quest Completed: You have retweeted the tweet", "Quest Not
|
|
3813
|
+
* Completed: Retweet not found for the specified tweet", "Quest Completed: You
|
|
3814
|
+
* have retweeted and commented on the tweet", "Quest Not Completed: You have not
|
|
3815
|
+
* retweeted or commented on the tweet"
|
|
3816
|
+
* - Follow an X Account: "Missing required parameters: twitterUserId,
|
|
3817
|
+
* targetUsername", "Quest Completed: You are a follower of
|
|
3818
|
+
* @${targetUsername}", "Quest Not Completed: Please follow @${targetUsername}
|
|
3819
|
+
* and try again in few minutes"
|
|
3820
|
+
* - React to an X Post: "Missing required parameters: texts, twitterUserId,
|
|
3821
|
+
* userTweetId", "No text provided", "Quest Completed: You have posted {tweetId}
|
|
3822
|
+
* a tweet with the text {text}", "Quest Not Completed: Your all previous {COUNT}
|
|
3823
|
+
* posts are already claimed. Please post a new tweet and try again in a few
|
|
3824
|
+
* minutes.", "Tweet is already claimed", "Tweet does not belong to the user",
|
|
3825
|
+
* "Text not found in tweet", "Tweet is before the quest start time", "Tweet does
|
|
3826
|
+
* not have media", "Text found in tweet"
|
|
3827
|
+
* - Add Text to X Bio: "Missing required parameters: texts, twitterUserId", "User
|
|
3828
|
+
* not found", "Text found in bio", "Text not found in bio"
|
|
3829
|
+
* - Add Text to X Username: "Missing required parameters: texts, twitterUserId",
|
|
3830
|
+
* "User not found", "Text found in username", "Text not found in username"
|
|
3831
|
+
* - Comment on an X Post with Text: "Missing required parameters: texts,
|
|
3832
|
+
* twitterUserId", "Comment is already claimed", "Text found in comment", "Text
|
|
3833
|
+
* not found in comment", "Tweet not found or could not be retrieved"
|
|
3834
|
+
* - Comment on a YouTube Video: "Youtube comment added", "Youtube comment not
|
|
3835
|
+
* added"
|
|
3836
|
+
* - Subscribe to a YouTube Channel: "Youtube channel subscribed", "Quest failed,
|
|
3837
|
+
* please make sure you have made your subscriptions public in youtube"
|
|
3838
|
+
* - Get X post impressions: "You've already claimed the reward for this impression
|
|
3839
|
+
* range."
|
|
3840
|
+
* - Add an Item to Steam Wishlist: "Steam Wishlist item added", "Steam Wishlist
|
|
3841
|
+
* item not added"
|
|
3842
|
+
*
|
|
3843
|
+
* Complex Onchain Logic
|
|
3844
|
+
*
|
|
3845
|
+
* - Token Swap: "Swap rewards calculated successfully", "Swap rule failed"
|
|
3846
|
+
*
|
|
3847
|
+
* Other
|
|
3848
|
+
*
|
|
3849
|
+
* - Answer a Quiz: "Quiz question not configured", "No question response found",
|
|
3850
|
+
* "Incorrect answer", "Correct answer"
|
|
3851
|
+
* - Answer a Poll: "Poll question not configured", "Poll response recorded"
|
|
3852
|
+
* - Spend in Shopify Store: "Shopify not connected"
|
|
3853
|
+
* - Points Airdrop: "Seems like you're not eligible for this points airdrop."
|
|
3854
|
+
*
|
|
3855
|
+
* General
|
|
3856
|
+
*
|
|
3857
|
+
* - "Quest already completed"
|
|
3858
|
+
* - "Quest already completed using the same social account (${socialAccountName}),
|
|
3859
|
+
* with the different user."
|
|
3860
|
+
* - "You've already claimed the reward for this quest."
|
|
3861
|
+
* - "Quest not achieved, please try again."
|
|
3862
|
+
* - "Rule is not setup"
|
|
3863
|
+
* - "Request aborted due to timeout"
|
|
3864
|
+
* - "Google account not connected"
|
|
3865
|
+
* - "Claim failed: Multiplier is already active"
|
|
3866
|
+
*/
|
|
3867
|
+
message?: string;
|
|
1940
3868
|
|
|
1941
|
-
|
|
3869
|
+
organizationId?: string;
|
|
1942
3870
|
|
|
1943
|
-
|
|
3871
|
+
/**
|
|
3872
|
+
* The progress of the loyalty rule from 0 to 100
|
|
3873
|
+
*/
|
|
3874
|
+
progress?: number;
|
|
1944
3875
|
|
|
1945
|
-
|
|
3876
|
+
/**
|
|
3877
|
+
* Status of the queued job, this is only returned if the job is queued and being
|
|
3878
|
+
* processed, this wil be retained for 10 minutes after the job is completed
|
|
3879
|
+
*/
|
|
3880
|
+
status?: 'pending' | 'processing' | 'completed' | 'failed';
|
|
3881
|
+
|
|
3882
|
+
updatedAt?: string;
|
|
3883
|
+
|
|
3884
|
+
websiteId?: string;
|
|
1946
3885
|
}
|
|
1947
3886
|
}
|
|
1948
3887
|
|
|
@@ -2024,6 +3963,7 @@ export interface RuleCreateParams {
|
|
|
2024
3963
|
| 'connected_discord'
|
|
2025
3964
|
| 'connected_email'
|
|
2026
3965
|
| 'connected_epic'
|
|
3966
|
+
| 'connected_github'
|
|
2027
3967
|
| 'connected_steam'
|
|
2028
3968
|
| 'connected_telegram'
|
|
2029
3969
|
| 'connected_twitter'
|
|
@@ -2053,7 +3993,24 @@ export interface RuleCreateParams {
|
|
|
2053
3993
|
| 'twitter_like'
|
|
2054
3994
|
| 'twitter_post_hashtag'
|
|
2055
3995
|
| 'quiz'
|
|
2056
|
-
| 'poll'
|
|
3996
|
+
| 'poll'
|
|
3997
|
+
| 'steam_wishlist'
|
|
3998
|
+
| 'liquidity_uniswap_v2'
|
|
3999
|
+
| 'liquidity_uniswap_v3'
|
|
4000
|
+
| 'points_airdrop'
|
|
4001
|
+
| 'youtube_subscribers'
|
|
4002
|
+
| 'youtube_comment'
|
|
4003
|
+
| 'shopify_spend'
|
|
4004
|
+
| 'swap'
|
|
4005
|
+
| 'tiktok_post'
|
|
4006
|
+
| 'post_impressions'
|
|
4007
|
+
| 'discord_join'
|
|
4008
|
+
| 'connected_youtube'
|
|
4009
|
+
| 'stratus_function'
|
|
4010
|
+
| 'connected_tiktok'
|
|
4011
|
+
| 'tiktok_follow'
|
|
4012
|
+
| 'github_repo_star'
|
|
4013
|
+
| 'discord_role_grant';
|
|
2057
4014
|
|
|
2058
4015
|
/**
|
|
2059
4016
|
* Unique identifier for the associated website
|
|
@@ -2065,6 +4022,11 @@ export interface RuleCreateParams {
|
|
|
2065
4022
|
*/
|
|
2066
4023
|
backgroundAssetUrl?: string;
|
|
2067
4024
|
|
|
4025
|
+
/**
|
|
4026
|
+
* The type of claim for the reward
|
|
4027
|
+
*/
|
|
4028
|
+
claimType?: 'manual' | 'auto' | null;
|
|
4029
|
+
|
|
2068
4030
|
/**
|
|
2069
4031
|
* Blockchain address of the associated collection
|
|
2070
4032
|
*/
|
|
@@ -2090,6 +4052,18 @@ export interface RuleCreateParams {
|
|
|
2090
4052
|
*/
|
|
2091
4053
|
description?: string;
|
|
2092
4054
|
|
|
4055
|
+
duplicatedFromId?: string | null;
|
|
4056
|
+
|
|
4057
|
+
/**
|
|
4058
|
+
* ID of the external integration
|
|
4059
|
+
*/
|
|
4060
|
+
externalIntegrationId?: string | null;
|
|
4061
|
+
|
|
4062
|
+
/**
|
|
4063
|
+
* Optional stratus function id for the rule
|
|
4064
|
+
*/
|
|
4065
|
+
functionId?: string | null;
|
|
4066
|
+
|
|
2093
4067
|
/**
|
|
2094
4068
|
* Whether to hide this rule in the user interface
|
|
2095
4069
|
*/
|
|
@@ -2098,18 +4072,40 @@ export interface RuleCreateParams {
|
|
|
2098
4072
|
/**
|
|
2099
4073
|
* Interval between rule executions
|
|
2100
4074
|
*/
|
|
2101
|
-
interval?: 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | null;
|
|
4075
|
+
interval?: 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | 'unlimited' | null;
|
|
2102
4076
|
|
|
2103
4077
|
/**
|
|
2104
4078
|
* Whether this rule is mandatory
|
|
2105
4079
|
*/
|
|
2106
4080
|
isRequired?: boolean;
|
|
2107
4081
|
|
|
4082
|
+
/**
|
|
4083
|
+
* Unique identifier for the loyalty badge
|
|
4084
|
+
*/
|
|
4085
|
+
loyaltyBadgeId?: string | null;
|
|
4086
|
+
|
|
2108
4087
|
/**
|
|
2109
4088
|
* Unique identifier for the loyalty rule group
|
|
2110
4089
|
*/
|
|
2111
4090
|
loyaltyRuleGroupId?: 'no-section' | (string & {}) | null;
|
|
2112
4091
|
|
|
4092
|
+
/**
|
|
4093
|
+
* URL for uploading loyalty user allotment via CSV
|
|
4094
|
+
*/
|
|
4095
|
+
loyaltyUserAllotmentCsvUrl?: string;
|
|
4096
|
+
|
|
4097
|
+
/**
|
|
4098
|
+
* The interval for the max amount. Available for the smart contract and external
|
|
4099
|
+
* rules.
|
|
4100
|
+
*/
|
|
4101
|
+
maxAmountInterval?: 'daily' | 'weekly' | 'monthly' | 'lifetime' | null;
|
|
4102
|
+
|
|
4103
|
+
/**
|
|
4104
|
+
* The maximum amount of points a user can earn per interval. Available for the
|
|
4105
|
+
* smart contract and external rules.
|
|
4106
|
+
*/
|
|
4107
|
+
maxAmountPerInterval?: number | null;
|
|
4108
|
+
|
|
2113
4109
|
/**
|
|
2114
4110
|
* URL of the media to be displayed
|
|
2115
4111
|
*/
|
|
@@ -2119,13 +4115,17 @@ export interface RuleCreateParams {
|
|
|
2119
4115
|
* Blockchain network where the rule will apply
|
|
2120
4116
|
*/
|
|
2121
4117
|
network?:
|
|
4118
|
+
| 'abstract'
|
|
4119
|
+
| 'abstractTestnet'
|
|
2122
4120
|
| 'apechain'
|
|
2123
4121
|
| 'arbitrum'
|
|
2124
4122
|
| 'avalanche'
|
|
2125
4123
|
| 'avalancheFuji'
|
|
2126
4124
|
| 'base'
|
|
2127
4125
|
| 'baseSepolia'
|
|
4126
|
+
| 'berachain'
|
|
2128
4127
|
| 'berachainArtio'
|
|
4128
|
+
| 'berachainBepolia'
|
|
2129
4129
|
| 'binance'
|
|
2130
4130
|
| 'bscTestnet'
|
|
2131
4131
|
| 'campTestnet'
|
|
@@ -2133,18 +4133,30 @@ export interface RuleCreateParams {
|
|
|
2133
4133
|
| 'fantomTestnet'
|
|
2134
4134
|
| 'flowMainnet'
|
|
2135
4135
|
| 'mainnet'
|
|
4136
|
+
| 'nexusTestnet'
|
|
2136
4137
|
| 'optimism'
|
|
2137
4138
|
| 'polygon'
|
|
2138
4139
|
| 'polygon_mumbai'
|
|
2139
4140
|
| 'skaleNebula'
|
|
4141
|
+
| 'skaleEuropa'
|
|
4142
|
+
| 'skaleCalypso'
|
|
2140
4143
|
| 'solana'
|
|
2141
4144
|
| 'sophon'
|
|
4145
|
+
| 'sophonTestnet'
|
|
2142
4146
|
| 'sui'
|
|
2143
4147
|
| 'superseed'
|
|
2144
4148
|
| 'superseedSepolia'
|
|
2145
4149
|
| 'vanar'
|
|
2146
4150
|
| 'xai'
|
|
2147
4151
|
| 'zksync'
|
|
4152
|
+
| 'coti'
|
|
4153
|
+
| 'cotiTestnet'
|
|
4154
|
+
| 'morph'
|
|
4155
|
+
| 'morphTestnet'
|
|
4156
|
+
| 'morphHolesky'
|
|
4157
|
+
| 'ultra'
|
|
4158
|
+
| 'ultraTestnet'
|
|
4159
|
+
| 'nitrograph'
|
|
2148
4160
|
| 'sepolia'
|
|
2149
4161
|
| 'optimism_sepolia'
|
|
2150
4162
|
| 'arbitrumSepolia'
|
|
@@ -2152,22 +4164,41 @@ export interface RuleCreateParams {
|
|
|
2152
4164
|
| 'optimism_goerli'
|
|
2153
4165
|
| 'arbitrumGoerli'
|
|
2154
4166
|
| 'basecamp'
|
|
2155
|
-
| '
|
|
4167
|
+
| 'somnia'
|
|
4168
|
+
| 'zkverify'
|
|
4169
|
+
| 'polkadot'
|
|
4170
|
+
| 'kusama'
|
|
4171
|
+
| 'flow_cadence';
|
|
2156
4172
|
|
|
2157
4173
|
/**
|
|
2158
4174
|
* OAuth credentials associated with the rule
|
|
2159
4175
|
*/
|
|
2160
4176
|
oauthCredentialsId?: string | null;
|
|
2161
4177
|
|
|
4178
|
+
/**
|
|
4179
|
+
* The lifetime of the reward
|
|
4180
|
+
*/
|
|
4181
|
+
rewardLifetime?: 'permanent' | 'dynamic' | null;
|
|
4182
|
+
|
|
2162
4183
|
/**
|
|
2163
4184
|
* Type of reward issued by the rule
|
|
2164
4185
|
*/
|
|
2165
|
-
rewardType?: 'points' | 'multiplier';
|
|
4186
|
+
rewardType?: 'points' | 'multiplier' | 'badge';
|
|
4187
|
+
|
|
4188
|
+
/**
|
|
4189
|
+
* URL of the Shopify store
|
|
4190
|
+
*/
|
|
4191
|
+
shopifyStoreUrl?: string | null;
|
|
2166
4192
|
|
|
2167
4193
|
/**
|
|
2168
|
-
*
|
|
4194
|
+
* Whether to show this rule before the start time
|
|
2169
4195
|
*/
|
|
2170
|
-
|
|
4196
|
+
showBeforeStart?: boolean;
|
|
4197
|
+
|
|
4198
|
+
/**
|
|
4199
|
+
* Optional stratus subscription id for the rule
|
|
4200
|
+
*/
|
|
4201
|
+
subscriptionId?: string | null;
|
|
2171
4202
|
}
|
|
2172
4203
|
|
|
2173
4204
|
export namespace RuleCreateParams {
|
|
@@ -2175,6 +4206,11 @@ export namespace RuleCreateParams {
|
|
|
2175
4206
|
* Additional metadata for the loyalty rule
|
|
2176
4207
|
*/
|
|
2177
4208
|
export interface Metadata {
|
|
4209
|
+
/**
|
|
4210
|
+
* Number of tokens per batch.
|
|
4211
|
+
*/
|
|
4212
|
+
batchSize?: number | null;
|
|
4213
|
+
|
|
2178
4214
|
/**
|
|
2179
4215
|
* Text displayed on the action button.
|
|
2180
4216
|
*/
|
|
@@ -2198,7 +4234,7 @@ export namespace RuleCreateParams {
|
|
|
2198
4234
|
/**
|
|
2199
4235
|
* Text to check in the Twitter post, username, or bio.
|
|
2200
4236
|
*/
|
|
2201
|
-
checkText?: string | null;
|
|
4237
|
+
checkText?: string | Array<string> | null;
|
|
2202
4238
|
|
|
2203
4239
|
/**
|
|
2204
4240
|
* Array of collections associated with the rule.
|
|
@@ -2208,7 +4244,12 @@ export namespace RuleCreateParams {
|
|
|
2208
4244
|
/**
|
|
2209
4245
|
* Conditions for completing the profile.
|
|
2210
4246
|
*/
|
|
2211
|
-
completeProfileConditions?:
|
|
4247
|
+
completeProfileConditions?: { [key: string]: boolean } | null;
|
|
4248
|
+
|
|
4249
|
+
/**
|
|
4250
|
+
* Description of the external rule condition (only for external rules)
|
|
4251
|
+
*/
|
|
4252
|
+
conditionDescription?: string;
|
|
2212
4253
|
|
|
2213
4254
|
/**
|
|
2214
4255
|
* Object containing details for the call-to-action.
|
|
@@ -2220,6 +4261,11 @@ export namespace RuleCreateParams {
|
|
|
2220
4261
|
*/
|
|
2221
4262
|
customRewardsApiKey?: string;
|
|
2222
4263
|
|
|
4264
|
+
/**
|
|
4265
|
+
* Flag indicating if the rule should use direct RPC to get the balance of tokens.
|
|
4266
|
+
*/
|
|
4267
|
+
directRpc?: boolean;
|
|
4268
|
+
|
|
2223
4269
|
/**
|
|
2224
4270
|
* Array of Discord servers, channels, and roles to join.
|
|
2225
4271
|
*/
|
|
@@ -2245,6 +4291,11 @@ export namespace RuleCreateParams {
|
|
|
2245
4291
|
*/
|
|
2246
4292
|
enableVerifiedMultiplier?: boolean;
|
|
2247
4293
|
|
|
4294
|
+
/**
|
|
4295
|
+
* Type of ERC20 token for the loyalty rule.
|
|
4296
|
+
*/
|
|
4297
|
+
erc20Type?: 'erc20' | 'native';
|
|
4298
|
+
|
|
2248
4299
|
/**
|
|
2249
4300
|
* Fill source of the order for the token sale
|
|
2250
4301
|
*/
|
|
@@ -2255,6 +4306,11 @@ export namespace RuleCreateParams {
|
|
|
2255
4306
|
*/
|
|
2256
4307
|
firstReferralReward?: number | null;
|
|
2257
4308
|
|
|
4309
|
+
/**
|
|
4310
|
+
* URL of the GitHub repository to check for star.
|
|
4311
|
+
*/
|
|
4312
|
+
githubRepoUrl?: string | null;
|
|
4313
|
+
|
|
2258
4314
|
/**
|
|
2259
4315
|
* Flag indicating whether the fill source is included.
|
|
2260
4316
|
*/
|
|
@@ -2265,11 +4321,6 @@ export namespace RuleCreateParams {
|
|
|
2265
4321
|
*/
|
|
2266
4322
|
hasNeverSold?: boolean;
|
|
2267
4323
|
|
|
2268
|
-
/**
|
|
2269
|
-
* Flag indicating whether the order source is included.
|
|
2270
|
-
*/
|
|
2271
|
-
hasOrderSource?: boolean;
|
|
2272
|
-
|
|
2273
4324
|
/**
|
|
2274
4325
|
* Indicates if the full royalty has been paid for items.
|
|
2275
4326
|
*/
|
|
@@ -2290,11 +4341,21 @@ export namespace RuleCreateParams {
|
|
|
2290
4341
|
*/
|
|
2291
4342
|
imageUrl?: string | null;
|
|
2292
4343
|
|
|
4344
|
+
/**
|
|
4345
|
+
* If enabled, the first transaction done on the platform will complete this rule
|
|
4346
|
+
*/
|
|
4347
|
+
isCheckInOnEveryTxn?: boolean;
|
|
4348
|
+
|
|
2293
4349
|
/**
|
|
2294
4350
|
* Indicates if the multiplier has been applied to rewards.
|
|
2295
4351
|
*/
|
|
2296
4352
|
isMultiplierApplied?: boolean;
|
|
2297
4353
|
|
|
4354
|
+
/**
|
|
4355
|
+
* Flag indicating if the rule is restricted to new users.
|
|
4356
|
+
*/
|
|
4357
|
+
isRestrictedToNewUsers?: boolean;
|
|
4358
|
+
|
|
2298
4359
|
/**
|
|
2299
4360
|
* Flag indicating if rewards are applied retroactively.
|
|
2300
4361
|
*/
|
|
@@ -2310,6 +4371,11 @@ export namespace RuleCreateParams {
|
|
|
2310
4371
|
*/
|
|
2311
4372
|
link?: string | null;
|
|
2312
4373
|
|
|
4374
|
+
/**
|
|
4375
|
+
* Liquidity pool details.
|
|
4376
|
+
*/
|
|
4377
|
+
liquidity?: Metadata.Liquidity;
|
|
4378
|
+
|
|
2313
4379
|
/**
|
|
2314
4380
|
* Maximum quantity constraint for token holding.
|
|
2315
4381
|
*/
|
|
@@ -2351,14 +4417,24 @@ export namespace RuleCreateParams {
|
|
|
2351
4417
|
onlyRewardSingleTokenOwnership?: boolean | null;
|
|
2352
4418
|
|
|
2353
4419
|
/**
|
|
2354
|
-
*
|
|
4420
|
+
* Promotional code associated with the rule.
|
|
2355
4421
|
*/
|
|
2356
|
-
|
|
4422
|
+
promoCode?: string;
|
|
2357
4423
|
|
|
2358
4424
|
/**
|
|
2359
|
-
*
|
|
4425
|
+
* URL of the CSV file containing promo codes.
|
|
2360
4426
|
*/
|
|
2361
|
-
|
|
4427
|
+
promoCodeCsvUrl?: string;
|
|
4428
|
+
|
|
4429
|
+
/**
|
|
4430
|
+
* Numbers of the promotional code to be generated.
|
|
4431
|
+
*/
|
|
4432
|
+
promoCodeLength?: number | null;
|
|
4433
|
+
|
|
4434
|
+
/**
|
|
4435
|
+
* Type of the promotional code.
|
|
4436
|
+
*/
|
|
4437
|
+
promoCodeType?: 'code' | 'csv' | 'generate';
|
|
2362
4438
|
|
|
2363
4439
|
/**
|
|
2364
4440
|
* Array defining ranges and corresponding rewards.
|
|
@@ -2375,11 +4451,62 @@ export namespace RuleCreateParams {
|
|
|
2375
4451
|
*/
|
|
2376
4452
|
referrerReward?: number | null;
|
|
2377
4453
|
|
|
4454
|
+
/**
|
|
4455
|
+
* Loyalty currency ID of the referrer reward.
|
|
4456
|
+
*/
|
|
4457
|
+
referrerRewardLoyaltyCurrencyId?: string | null;
|
|
4458
|
+
|
|
4459
|
+
/**
|
|
4460
|
+
* Flag indicating if the post link is required.
|
|
4461
|
+
*/
|
|
4462
|
+
requirePostLink?: boolean | null;
|
|
4463
|
+
|
|
4464
|
+
/**
|
|
4465
|
+
* Flag indicating if media metadata is required.
|
|
4466
|
+
*/
|
|
4467
|
+
requirePostMediaLink?: boolean | null;
|
|
4468
|
+
|
|
4469
|
+
/**
|
|
4470
|
+
* Flag indicating if the rule can also reward badges per range.
|
|
4471
|
+
*/
|
|
4472
|
+
rewardBadgePerRange?: boolean;
|
|
4473
|
+
|
|
4474
|
+
/**
|
|
4475
|
+
* Flag indicating if the reward is rewarded by batch.
|
|
4476
|
+
*/
|
|
4477
|
+
rewardByBatch?: boolean | null;
|
|
4478
|
+
|
|
4479
|
+
/**
|
|
4480
|
+
* Criteria to evaluate the reward.
|
|
4481
|
+
*/
|
|
4482
|
+
rewardCriteria?: 'IMPRESSIONS_COUNT' | 'ELIGIBLE_POST' | null;
|
|
4483
|
+
|
|
4484
|
+
/**
|
|
4485
|
+
* Flag indicating if the reward is rewarded per action.
|
|
4486
|
+
*/
|
|
4487
|
+
rewardPerAction?: boolean | null;
|
|
4488
|
+
|
|
2378
4489
|
/**
|
|
2379
4490
|
* Flag indicating if rewards are given per impression.
|
|
2380
4491
|
*/
|
|
2381
4492
|
rewardPerImpression?: boolean | null;
|
|
2382
4493
|
|
|
4494
|
+
/**
|
|
4495
|
+
* Flag indicating if the rule should reward based on value of traded tokens
|
|
4496
|
+
* instead of count.
|
|
4497
|
+
*/
|
|
4498
|
+
rewardPerValue?: boolean;
|
|
4499
|
+
|
|
4500
|
+
/**
|
|
4501
|
+
* Wallet address of the user can only be used if userId is not provided
|
|
4502
|
+
*/
|
|
4503
|
+
royaltyAddress?: string;
|
|
4504
|
+
|
|
4505
|
+
/**
|
|
4506
|
+
* Royalty percentage of the item.
|
|
4507
|
+
*/
|
|
4508
|
+
royaltyPercentage?: number;
|
|
4509
|
+
|
|
2383
4510
|
/**
|
|
2384
4511
|
* Currency associated with sales.
|
|
2385
4512
|
*/
|
|
@@ -2419,6 +4546,8 @@ export namespace RuleCreateParams {
|
|
|
2419
4546
|
| 'Twitch'
|
|
2420
4547
|
| 'X(Twitter)'
|
|
2421
4548
|
| 'YouTube'
|
|
4549
|
+
| 'Google'
|
|
4550
|
+
| 'GitHub'
|
|
2422
4551
|
| null;
|
|
2423
4552
|
|
|
2424
4553
|
/**
|
|
@@ -2431,11 +4560,21 @@ export namespace RuleCreateParams {
|
|
|
2431
4560
|
*/
|
|
2432
4561
|
socialPlatformName?: string | null;
|
|
2433
4562
|
|
|
4563
|
+
/**
|
|
4564
|
+
* ID of the Steam app.
|
|
4565
|
+
*/
|
|
4566
|
+
steamAppId?: string | null;
|
|
4567
|
+
|
|
2434
4568
|
/**
|
|
2435
4569
|
* Array of streak milestones and corresponding rewards.
|
|
2436
4570
|
*/
|
|
2437
4571
|
streakArray?: Array<Metadata.StreakArray> | null;
|
|
2438
4572
|
|
|
4573
|
+
/**
|
|
4574
|
+
* Metadata for swap loyalty rules
|
|
4575
|
+
*/
|
|
4576
|
+
swap?: Metadata.Swap;
|
|
4577
|
+
|
|
2439
4578
|
/**
|
|
2440
4579
|
* ID of the Telegram channel.
|
|
2441
4580
|
*/
|
|
@@ -2451,6 +4590,12 @@ export namespace RuleCreateParams {
|
|
|
2451
4590
|
*/
|
|
2452
4591
|
trackAllContracts?: boolean | null;
|
|
2453
4592
|
|
|
4593
|
+
/**
|
|
4594
|
+
* Flag indicating if the progress is tracked. If enabled, the rule can only be
|
|
4595
|
+
* completed once the progress is 100%.
|
|
4596
|
+
*/
|
|
4597
|
+
trackProgress?: boolean | null;
|
|
4598
|
+
|
|
2454
4599
|
/**
|
|
2455
4600
|
* URL of the associated Twitter account.
|
|
2456
4601
|
*/
|
|
@@ -2494,7 +4639,28 @@ export namespace RuleCreateParams {
|
|
|
2494
4639
|
/**
|
|
2495
4640
|
* Type of wallet associated with the rule.
|
|
2496
4641
|
*/
|
|
2497
|
-
walletType?:
|
|
4642
|
+
walletType?:
|
|
4643
|
+
| 'evm'
|
|
4644
|
+
| 'solana'
|
|
4645
|
+
| 'imx'
|
|
4646
|
+
| 'sui'
|
|
4647
|
+
| 'ton'
|
|
4648
|
+
| 'cosmos'
|
|
4649
|
+
| 'ultra'
|
|
4650
|
+
| 'agw'
|
|
4651
|
+
| 'flow_cadence'
|
|
4652
|
+
| 'substrate'
|
|
4653
|
+
| null;
|
|
4654
|
+
|
|
4655
|
+
/**
|
|
4656
|
+
* ID of the Youtube channel.
|
|
4657
|
+
*/
|
|
4658
|
+
youtubeChannelId?: string | null;
|
|
4659
|
+
|
|
4660
|
+
/**
|
|
4661
|
+
* ID of the Youtube video.
|
|
4662
|
+
*/
|
|
4663
|
+
youtubeVideoId?: string | null;
|
|
2498
4664
|
}
|
|
2499
4665
|
|
|
2500
4666
|
export namespace Metadata {
|
|
@@ -2513,13 +4679,17 @@ export namespace RuleCreateParams {
|
|
|
2513
4679
|
* Blockchain network of the collection.
|
|
2514
4680
|
*/
|
|
2515
4681
|
network?:
|
|
4682
|
+
| 'abstract'
|
|
4683
|
+
| 'abstractTestnet'
|
|
2516
4684
|
| 'apechain'
|
|
2517
4685
|
| 'arbitrum'
|
|
2518
4686
|
| 'avalanche'
|
|
2519
4687
|
| 'avalancheFuji'
|
|
2520
4688
|
| 'base'
|
|
2521
4689
|
| 'baseSepolia'
|
|
4690
|
+
| 'berachain'
|
|
2522
4691
|
| 'berachainArtio'
|
|
4692
|
+
| 'berachainBepolia'
|
|
2523
4693
|
| 'binance'
|
|
2524
4694
|
| 'bscTestnet'
|
|
2525
4695
|
| 'campTestnet'
|
|
@@ -2527,18 +4697,30 @@ export namespace RuleCreateParams {
|
|
|
2527
4697
|
| 'fantomTestnet'
|
|
2528
4698
|
| 'flowMainnet'
|
|
2529
4699
|
| 'mainnet'
|
|
4700
|
+
| 'nexusTestnet'
|
|
2530
4701
|
| 'optimism'
|
|
2531
4702
|
| 'polygon'
|
|
2532
4703
|
| 'polygon_mumbai'
|
|
2533
4704
|
| 'skaleNebula'
|
|
4705
|
+
| 'skaleEuropa'
|
|
4706
|
+
| 'skaleCalypso'
|
|
2534
4707
|
| 'solana'
|
|
2535
4708
|
| 'sophon'
|
|
4709
|
+
| 'sophonTestnet'
|
|
2536
4710
|
| 'sui'
|
|
2537
4711
|
| 'superseed'
|
|
2538
4712
|
| 'superseedSepolia'
|
|
2539
4713
|
| 'vanar'
|
|
2540
4714
|
| 'xai'
|
|
2541
4715
|
| 'zksync'
|
|
4716
|
+
| 'coti'
|
|
4717
|
+
| 'cotiTestnet'
|
|
4718
|
+
| 'morph'
|
|
4719
|
+
| 'morphTestnet'
|
|
4720
|
+
| 'morphHolesky'
|
|
4721
|
+
| 'ultra'
|
|
4722
|
+
| 'ultraTestnet'
|
|
4723
|
+
| 'nitrograph'
|
|
2542
4724
|
| 'sepolia'
|
|
2543
4725
|
| 'optimism_sepolia'
|
|
2544
4726
|
| 'arbitrumSepolia'
|
|
@@ -2546,7 +4728,11 @@ export namespace RuleCreateParams {
|
|
|
2546
4728
|
| 'optimism_goerli'
|
|
2547
4729
|
| 'arbitrumGoerli'
|
|
2548
4730
|
| 'basecamp'
|
|
2549
|
-
| '
|
|
4731
|
+
| 'somnia'
|
|
4732
|
+
| 'zkverify'
|
|
4733
|
+
| 'polkadot'
|
|
4734
|
+
| 'kusama'
|
|
4735
|
+
| 'flow_cadence';
|
|
2550
4736
|
}
|
|
2551
4737
|
|
|
2552
4738
|
/**
|
|
@@ -2623,6 +4809,111 @@ export namespace RuleCreateParams {
|
|
|
2623
4809
|
id: string;
|
|
2624
4810
|
}
|
|
2625
4811
|
|
|
4812
|
+
/**
|
|
4813
|
+
* Liquidity pool details.
|
|
4814
|
+
*/
|
|
4815
|
+
export interface Liquidity {
|
|
4816
|
+
/**
|
|
4817
|
+
* Calculation type of the liquidity pool.
|
|
4818
|
+
*/
|
|
4819
|
+
calculationType?: 'fixed' | 'custom';
|
|
4820
|
+
|
|
4821
|
+
/**
|
|
4822
|
+
* Custom function to calculate the the reward amount based on the liquidity
|
|
4823
|
+
* provided per day. X is the reward amount, Y is the liquidity provided per day in
|
|
4824
|
+
* USD.
|
|
4825
|
+
*/
|
|
4826
|
+
customFunction?: string;
|
|
4827
|
+
|
|
4828
|
+
/**
|
|
4829
|
+
* Liquidity provided per day in USD
|
|
4830
|
+
*/
|
|
4831
|
+
liquidityPerDay?: number;
|
|
4832
|
+
|
|
4833
|
+
/**
|
|
4834
|
+
* Blockchain network of the liquidity pool.
|
|
4835
|
+
*/
|
|
4836
|
+
network?:
|
|
4837
|
+
| 'abstract'
|
|
4838
|
+
| 'abstractTestnet'
|
|
4839
|
+
| 'apechain'
|
|
4840
|
+
| 'arbitrum'
|
|
4841
|
+
| 'avalanche'
|
|
4842
|
+
| 'avalancheFuji'
|
|
4843
|
+
| 'base'
|
|
4844
|
+
| 'baseSepolia'
|
|
4845
|
+
| 'berachain'
|
|
4846
|
+
| 'berachainArtio'
|
|
4847
|
+
| 'berachainBepolia'
|
|
4848
|
+
| 'binance'
|
|
4849
|
+
| 'bscTestnet'
|
|
4850
|
+
| 'campTestnet'
|
|
4851
|
+
| 'fantom'
|
|
4852
|
+
| 'fantomTestnet'
|
|
4853
|
+
| 'flowMainnet'
|
|
4854
|
+
| 'mainnet'
|
|
4855
|
+
| 'nexusTestnet'
|
|
4856
|
+
| 'optimism'
|
|
4857
|
+
| 'polygon'
|
|
4858
|
+
| 'polygon_mumbai'
|
|
4859
|
+
| 'skaleNebula'
|
|
4860
|
+
| 'skaleEuropa'
|
|
4861
|
+
| 'skaleCalypso'
|
|
4862
|
+
| 'solana'
|
|
4863
|
+
| 'sophon'
|
|
4864
|
+
| 'sophonTestnet'
|
|
4865
|
+
| 'sui'
|
|
4866
|
+
| 'superseed'
|
|
4867
|
+
| 'superseedSepolia'
|
|
4868
|
+
| 'vanar'
|
|
4869
|
+
| 'xai'
|
|
4870
|
+
| 'zksync'
|
|
4871
|
+
| 'coti'
|
|
4872
|
+
| 'cotiTestnet'
|
|
4873
|
+
| 'morph'
|
|
4874
|
+
| 'morphTestnet'
|
|
4875
|
+
| 'morphHolesky'
|
|
4876
|
+
| 'ultra'
|
|
4877
|
+
| 'ultraTestnet'
|
|
4878
|
+
| 'nitrograph'
|
|
4879
|
+
| 'sepolia'
|
|
4880
|
+
| 'optimism_sepolia'
|
|
4881
|
+
| 'arbitrumSepolia'
|
|
4882
|
+
| 'goerli'
|
|
4883
|
+
| 'optimism_goerli'
|
|
4884
|
+
| 'arbitrumGoerli'
|
|
4885
|
+
| 'basecamp'
|
|
4886
|
+
| 'somnia'
|
|
4887
|
+
| 'zkverify'
|
|
4888
|
+
| 'polkadot'
|
|
4889
|
+
| 'kusama'
|
|
4890
|
+
| 'flow_cadence';
|
|
4891
|
+
|
|
4892
|
+
/**
|
|
4893
|
+
* Indicates if only in-range liquidity is rewarded.
|
|
4894
|
+
*/
|
|
4895
|
+
onlyRewardInRangeLiquidity?: boolean;
|
|
4896
|
+
|
|
4897
|
+
/**
|
|
4898
|
+
* Array of liquidity pools associated with the rule.
|
|
4899
|
+
*/
|
|
4900
|
+
pools?: Array<Liquidity.Pool>;
|
|
4901
|
+
|
|
4902
|
+
/**
|
|
4903
|
+
* Protocol of the liquidity pool.
|
|
4904
|
+
*/
|
|
4905
|
+
protocol?: string;
|
|
4906
|
+
}
|
|
4907
|
+
|
|
4908
|
+
export namespace Liquidity {
|
|
4909
|
+
export interface Pool {
|
|
4910
|
+
/**
|
|
4911
|
+
* Unique identifier of the liquidity pool.
|
|
4912
|
+
*/
|
|
4913
|
+
id: string;
|
|
4914
|
+
}
|
|
4915
|
+
}
|
|
4916
|
+
|
|
2626
4917
|
export interface Range {
|
|
2627
4918
|
/**
|
|
2628
4919
|
* Reward amount for this range.
|
|
@@ -2638,6 +4929,16 @@ export namespace RuleCreateParams {
|
|
|
2638
4929
|
* Start value of the range.
|
|
2639
4930
|
*/
|
|
2640
4931
|
startRange: number;
|
|
4932
|
+
|
|
4933
|
+
/**
|
|
4934
|
+
* ID of the loyalty badge for this range.
|
|
4935
|
+
*/
|
|
4936
|
+
loyaltyBadgeId?: string;
|
|
4937
|
+
|
|
4938
|
+
/**
|
|
4939
|
+
* Amount of the loyalty multiplier for this range.
|
|
4940
|
+
*/
|
|
4941
|
+
loyaltyMultiplierAmount?: number;
|
|
2641
4942
|
}
|
|
2642
4943
|
|
|
2643
4944
|
/**
|
|
@@ -2690,20 +4991,15 @@ export namespace RuleCreateParams {
|
|
|
2690
4991
|
* Object containing details of the associated smart contract.
|
|
2691
4992
|
*/
|
|
2692
4993
|
export interface SmartContract {
|
|
2693
|
-
/**
|
|
2694
|
-
* ABI of the smart contract.
|
|
2695
|
-
*/
|
|
2696
|
-
abi?: string | null;
|
|
2697
|
-
|
|
2698
4994
|
/**
|
|
2699
4995
|
* Mapping of addresses for the smart contract.
|
|
2700
4996
|
*/
|
|
2701
4997
|
addressMapping?: string | null;
|
|
2702
4998
|
|
|
2703
4999
|
/**
|
|
2704
|
-
*
|
|
5000
|
+
* Object containing details of the amount multiplier from the event.
|
|
2705
5001
|
*/
|
|
2706
|
-
|
|
5002
|
+
amountMultiplier?: SmartContract.AmountMultiplier | null;
|
|
2707
5003
|
|
|
2708
5004
|
/**
|
|
2709
5005
|
* ID of the smart contract.
|
|
@@ -2715,68 +5011,31 @@ export namespace RuleCreateParams {
|
|
|
2715
5011
|
*/
|
|
2716
5012
|
criteria?: 'everyEvent' | 'byParameter' | null;
|
|
2717
5013
|
|
|
2718
|
-
/**
|
|
2719
|
-
* Time range applied to the rule.
|
|
2720
|
-
*/
|
|
2721
|
-
customRange?: SmartContract.CustomRange | null;
|
|
2722
|
-
|
|
2723
5014
|
/**
|
|
2724
5015
|
* Event emitted by the smart contract.
|
|
2725
5016
|
*/
|
|
2726
5017
|
event?: string | null;
|
|
2727
5018
|
|
|
2728
|
-
/**
|
|
2729
|
-
* Maximum value allowed for the parameter.
|
|
2730
|
-
*/
|
|
2731
|
-
max?: number | null;
|
|
2732
|
-
|
|
2733
5019
|
/**
|
|
2734
5020
|
* Array of parameters for the smart contract.
|
|
2735
5021
|
*/
|
|
2736
5022
|
params?: Array<SmartContract.Param> | null;
|
|
2737
5023
|
|
|
2738
5024
|
/**
|
|
2739
|
-
*
|
|
2740
|
-
*/
|
|
2741
|
-
withBonus?: boolean | null;
|
|
2742
|
-
|
|
2743
|
-
/**
|
|
2744
|
-
* Flag indicating if a custom range is applied.
|
|
2745
|
-
*/
|
|
2746
|
-
withCustomRange?: boolean | null;
|
|
2747
|
-
|
|
2748
|
-
/**
|
|
2749
|
-
* Flag indicating if a maximum limit is applied.
|
|
5025
|
+
* Type of the smart contract interaction.
|
|
2750
5026
|
*/
|
|
2751
|
-
|
|
5027
|
+
type?: 'function' | 'event' | null;
|
|
2752
5028
|
}
|
|
2753
5029
|
|
|
2754
5030
|
export namespace SmartContract {
|
|
2755
|
-
export interface Bonus {
|
|
2756
|
-
/**
|
|
2757
|
-
* Amount of the bonus.
|
|
2758
|
-
*/
|
|
2759
|
-
amount?: number | null;
|
|
2760
|
-
|
|
2761
|
-
/**
|
|
2762
|
-
* Number of times the bonus is applied.
|
|
2763
|
-
*/
|
|
2764
|
-
count?: number | null;
|
|
2765
|
-
}
|
|
2766
|
-
|
|
2767
5031
|
/**
|
|
2768
|
-
*
|
|
5032
|
+
* Object containing details of the amount multiplier from the event.
|
|
2769
5033
|
*/
|
|
2770
|
-
export interface
|
|
2771
|
-
/**
|
|
2772
|
-
* End time of the custom range.
|
|
2773
|
-
*/
|
|
2774
|
-
endsAt?: string | null;
|
|
2775
|
-
|
|
5034
|
+
export interface AmountMultiplier {
|
|
2776
5035
|
/**
|
|
2777
|
-
*
|
|
5036
|
+
* Mapping of the value for the smart contract.
|
|
2778
5037
|
*/
|
|
2779
|
-
|
|
5038
|
+
valueMapping?: string | null;
|
|
2780
5039
|
}
|
|
2781
5040
|
|
|
2782
5041
|
export interface Param {
|
|
@@ -2820,6 +5079,33 @@ export namespace RuleCreateParams {
|
|
|
2820
5079
|
*/
|
|
2821
5080
|
streakMilestone: number;
|
|
2822
5081
|
}
|
|
5082
|
+
|
|
5083
|
+
/**
|
|
5084
|
+
* Metadata for swap loyalty rules
|
|
5085
|
+
*/
|
|
5086
|
+
export interface Swap {
|
|
5087
|
+
provider?: 'any' | 'relay' | 'lifi';
|
|
5088
|
+
|
|
5089
|
+
relayReferrerId?: string;
|
|
5090
|
+
|
|
5091
|
+
requireCrossChainSwap?: boolean;
|
|
5092
|
+
|
|
5093
|
+
swappedToChain?: 'any' | number | string;
|
|
5094
|
+
|
|
5095
|
+
swappedToTokens?: Array<Swap.SwappedToToken>;
|
|
5096
|
+
|
|
5097
|
+
tokenMode?: 'any' | 'specific';
|
|
5098
|
+
|
|
5099
|
+
trackTokenAmount?: boolean;
|
|
5100
|
+
}
|
|
5101
|
+
|
|
5102
|
+
export namespace Swap {
|
|
5103
|
+
export interface SwappedToToken {
|
|
5104
|
+
address: string;
|
|
5105
|
+
|
|
5106
|
+
chainId: string;
|
|
5107
|
+
}
|
|
5108
|
+
}
|
|
2823
5109
|
}
|
|
2824
5110
|
|
|
2825
5111
|
export interface Collection {
|
|
@@ -2832,13 +5118,17 @@ export namespace RuleCreateParams {
|
|
|
2832
5118
|
* Blockchain network for the collection
|
|
2833
5119
|
*/
|
|
2834
5120
|
network:
|
|
5121
|
+
| 'abstract'
|
|
5122
|
+
| 'abstractTestnet'
|
|
2835
5123
|
| 'apechain'
|
|
2836
5124
|
| 'arbitrum'
|
|
2837
5125
|
| 'avalanche'
|
|
2838
5126
|
| 'avalancheFuji'
|
|
2839
5127
|
| 'base'
|
|
2840
5128
|
| 'baseSepolia'
|
|
5129
|
+
| 'berachain'
|
|
2841
5130
|
| 'berachainArtio'
|
|
5131
|
+
| 'berachainBepolia'
|
|
2842
5132
|
| 'binance'
|
|
2843
5133
|
| 'bscTestnet'
|
|
2844
5134
|
| 'campTestnet'
|
|
@@ -2846,18 +5136,30 @@ export namespace RuleCreateParams {
|
|
|
2846
5136
|
| 'fantomTestnet'
|
|
2847
5137
|
| 'flowMainnet'
|
|
2848
5138
|
| 'mainnet'
|
|
5139
|
+
| 'nexusTestnet'
|
|
2849
5140
|
| 'optimism'
|
|
2850
5141
|
| 'polygon'
|
|
2851
5142
|
| 'polygon_mumbai'
|
|
2852
5143
|
| 'skaleNebula'
|
|
5144
|
+
| 'skaleEuropa'
|
|
5145
|
+
| 'skaleCalypso'
|
|
2853
5146
|
| 'solana'
|
|
2854
5147
|
| 'sophon'
|
|
5148
|
+
| 'sophonTestnet'
|
|
2855
5149
|
| 'sui'
|
|
2856
5150
|
| 'superseed'
|
|
2857
5151
|
| 'superseedSepolia'
|
|
2858
5152
|
| 'vanar'
|
|
2859
5153
|
| 'xai'
|
|
2860
5154
|
| 'zksync'
|
|
5155
|
+
| 'coti'
|
|
5156
|
+
| 'cotiTestnet'
|
|
5157
|
+
| 'morph'
|
|
5158
|
+
| 'morphTestnet'
|
|
5159
|
+
| 'morphHolesky'
|
|
5160
|
+
| 'ultra'
|
|
5161
|
+
| 'ultraTestnet'
|
|
5162
|
+
| 'nitrograph'
|
|
2861
5163
|
| 'sepolia'
|
|
2862
5164
|
| 'optimism_sepolia'
|
|
2863
5165
|
| 'arbitrumSepolia'
|
|
@@ -2865,7 +5167,16 @@ export namespace RuleCreateParams {
|
|
|
2865
5167
|
| 'optimism_goerli'
|
|
2866
5168
|
| 'arbitrumGoerli'
|
|
2867
5169
|
| 'basecamp'
|
|
2868
|
-
| '
|
|
5170
|
+
| 'somnia'
|
|
5171
|
+
| 'zkverify'
|
|
5172
|
+
| 'polkadot'
|
|
5173
|
+
| 'kusama'
|
|
5174
|
+
| 'flow_cadence';
|
|
5175
|
+
|
|
5176
|
+
/**
|
|
5177
|
+
* Symbol of the collection.
|
|
5178
|
+
*/
|
|
5179
|
+
symbol?: string;
|
|
2869
5180
|
}
|
|
2870
5181
|
}
|
|
2871
5182
|
|
|
@@ -2885,10 +5196,15 @@ export interface RuleUpdateParams {
|
|
|
2885
5196
|
*/
|
|
2886
5197
|
name: string;
|
|
2887
5198
|
|
|
5199
|
+
/**
|
|
5200
|
+
* The type of claim for the reward
|
|
5201
|
+
*/
|
|
5202
|
+
claimType?: 'manual' | 'auto' | null;
|
|
5203
|
+
|
|
2888
5204
|
/**
|
|
2889
5205
|
* Blockchain address of the associated collection
|
|
2890
5206
|
*/
|
|
2891
|
-
collectionAddress?: string;
|
|
5207
|
+
collectionAddress?: string | null;
|
|
2892
5208
|
|
|
2893
5209
|
/**
|
|
2894
5210
|
* List of associated collections
|
|
@@ -2920,11 +5236,21 @@ export interface RuleUpdateParams {
|
|
|
2920
5236
|
*/
|
|
2921
5237
|
effectiveStartTime?: string | null;
|
|
2922
5238
|
|
|
5239
|
+
/**
|
|
5240
|
+
* ID of the external integration
|
|
5241
|
+
*/
|
|
5242
|
+
externalIntegrationId?: string | null;
|
|
5243
|
+
|
|
2923
5244
|
/**
|
|
2924
5245
|
* Frequency of the rule execution
|
|
2925
5246
|
*/
|
|
2926
5247
|
frequency?: 'none' | 'once' | 'daily' | 'weekly' | 'monthly' | 'immediately';
|
|
2927
5248
|
|
|
5249
|
+
/**
|
|
5250
|
+
* Optional stratus function id for the rule
|
|
5251
|
+
*/
|
|
5252
|
+
functionId?: string | null;
|
|
5253
|
+
|
|
2928
5254
|
/**
|
|
2929
5255
|
* Whether to hide this rule in the user interface
|
|
2930
5256
|
*/
|
|
@@ -2933,17 +5259,29 @@ export interface RuleUpdateParams {
|
|
|
2933
5259
|
/**
|
|
2934
5260
|
* Time interval for recurring rule execution
|
|
2935
5261
|
*/
|
|
2936
|
-
interval?: 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | null;
|
|
5262
|
+
interval?: 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | 'unlimited' | null;
|
|
2937
5263
|
|
|
2938
5264
|
/**
|
|
2939
5265
|
* Whether this rule is required for participation
|
|
2940
5266
|
*/
|
|
2941
|
-
isRequired?: boolean;
|
|
5267
|
+
isRequired?: boolean;
|
|
5268
|
+
|
|
5269
|
+
/**
|
|
5270
|
+
* ID of the rule group section to associate with the rule
|
|
5271
|
+
*/
|
|
5272
|
+
loyaltyRuleGroupId?: (string & {}) | 'no-section' | null;
|
|
5273
|
+
|
|
5274
|
+
/**
|
|
5275
|
+
* The interval for the max amount. Available for the smart contract and external
|
|
5276
|
+
* rules.
|
|
5277
|
+
*/
|
|
5278
|
+
maxAmountInterval?: 'daily' | 'weekly' | 'monthly' | 'lifetime' | null;
|
|
2942
5279
|
|
|
2943
5280
|
/**
|
|
2944
|
-
*
|
|
5281
|
+
* The maximum amount of points a user can earn per interval. Available for the
|
|
5282
|
+
* smart contract and external rules.
|
|
2945
5283
|
*/
|
|
2946
|
-
|
|
5284
|
+
maxAmountPerInterval?: number | null;
|
|
2947
5285
|
|
|
2948
5286
|
/**
|
|
2949
5287
|
* URL of the media to be displayed
|
|
@@ -2959,13 +5297,17 @@ export interface RuleUpdateParams {
|
|
|
2959
5297
|
* Blockchain network where the rule will apply
|
|
2960
5298
|
*/
|
|
2961
5299
|
network?:
|
|
5300
|
+
| 'abstract'
|
|
5301
|
+
| 'abstractTestnet'
|
|
2962
5302
|
| 'apechain'
|
|
2963
5303
|
| 'arbitrum'
|
|
2964
5304
|
| 'avalanche'
|
|
2965
5305
|
| 'avalancheFuji'
|
|
2966
5306
|
| 'base'
|
|
2967
5307
|
| 'baseSepolia'
|
|
5308
|
+
| 'berachain'
|
|
2968
5309
|
| 'berachainArtio'
|
|
5310
|
+
| 'berachainBepolia'
|
|
2969
5311
|
| 'binance'
|
|
2970
5312
|
| 'bscTestnet'
|
|
2971
5313
|
| 'campTestnet'
|
|
@@ -2973,18 +5315,30 @@ export interface RuleUpdateParams {
|
|
|
2973
5315
|
| 'fantomTestnet'
|
|
2974
5316
|
| 'flowMainnet'
|
|
2975
5317
|
| 'mainnet'
|
|
5318
|
+
| 'nexusTestnet'
|
|
2976
5319
|
| 'optimism'
|
|
2977
5320
|
| 'polygon'
|
|
2978
5321
|
| 'polygon_mumbai'
|
|
2979
5322
|
| 'skaleNebula'
|
|
5323
|
+
| 'skaleEuropa'
|
|
5324
|
+
| 'skaleCalypso'
|
|
2980
5325
|
| 'solana'
|
|
2981
5326
|
| 'sophon'
|
|
5327
|
+
| 'sophonTestnet'
|
|
2982
5328
|
| 'sui'
|
|
2983
5329
|
| 'superseed'
|
|
2984
5330
|
| 'superseedSepolia'
|
|
2985
5331
|
| 'vanar'
|
|
2986
5332
|
| 'xai'
|
|
2987
5333
|
| 'zksync'
|
|
5334
|
+
| 'coti'
|
|
5335
|
+
| 'cotiTestnet'
|
|
5336
|
+
| 'morph'
|
|
5337
|
+
| 'morphTestnet'
|
|
5338
|
+
| 'morphHolesky'
|
|
5339
|
+
| 'ultra'
|
|
5340
|
+
| 'ultraTestnet'
|
|
5341
|
+
| 'nitrograph'
|
|
2988
5342
|
| 'sepolia'
|
|
2989
5343
|
| 'optimism_sepolia'
|
|
2990
5344
|
| 'arbitrumSepolia'
|
|
@@ -2992,17 +5346,36 @@ export interface RuleUpdateParams {
|
|
|
2992
5346
|
| 'optimism_goerli'
|
|
2993
5347
|
| 'arbitrumGoerli'
|
|
2994
5348
|
| 'basecamp'
|
|
2995
|
-
| '
|
|
5349
|
+
| 'somnia'
|
|
5350
|
+
| 'zkverify'
|
|
5351
|
+
| 'polkadot'
|
|
5352
|
+
| 'kusama'
|
|
5353
|
+
| 'flow_cadence';
|
|
2996
5354
|
|
|
2997
5355
|
/**
|
|
2998
5356
|
* ID for associated OAuth credentials
|
|
2999
5357
|
*/
|
|
3000
5358
|
oauthCredentialsId?: string | null;
|
|
3001
5359
|
|
|
5360
|
+
/**
|
|
5361
|
+
* The lifetime of the reward
|
|
5362
|
+
*/
|
|
5363
|
+
rewardLifetime?: 'permanent' | 'dynamic' | null;
|
|
5364
|
+
|
|
3002
5365
|
/**
|
|
3003
5366
|
* Type of reward issued by this rule
|
|
3004
5367
|
*/
|
|
3005
|
-
rewardType?: 'points' | 'multiplier';
|
|
5368
|
+
rewardType?: 'points' | 'multiplier' | 'badge';
|
|
5369
|
+
|
|
5370
|
+
/**
|
|
5371
|
+
* URL of the Shopify store
|
|
5372
|
+
*/
|
|
5373
|
+
shopifyStoreUrl?: string | null;
|
|
5374
|
+
|
|
5375
|
+
/**
|
|
5376
|
+
* Whether to show this rule before the start time
|
|
5377
|
+
*/
|
|
5378
|
+
showBeforeStart?: boolean;
|
|
3006
5379
|
|
|
3007
5380
|
/**
|
|
3008
5381
|
* Start time for the loyalty rule
|
|
@@ -3010,9 +5383,9 @@ export interface RuleUpdateParams {
|
|
|
3010
5383
|
startTime?: string | null;
|
|
3011
5384
|
|
|
3012
5385
|
/**
|
|
3013
|
-
* Optional subscription
|
|
5386
|
+
* Optional stratus subscription id for the rule
|
|
3014
5387
|
*/
|
|
3015
|
-
|
|
5388
|
+
subscriptionId?: string | null;
|
|
3016
5389
|
}
|
|
3017
5390
|
|
|
3018
5391
|
export namespace RuleUpdateParams {
|
|
@@ -3026,13 +5399,17 @@ export namespace RuleUpdateParams {
|
|
|
3026
5399
|
* Blockchain network for the collection
|
|
3027
5400
|
*/
|
|
3028
5401
|
network:
|
|
5402
|
+
| 'abstract'
|
|
5403
|
+
| 'abstractTestnet'
|
|
3029
5404
|
| 'apechain'
|
|
3030
5405
|
| 'arbitrum'
|
|
3031
5406
|
| 'avalanche'
|
|
3032
5407
|
| 'avalancheFuji'
|
|
3033
5408
|
| 'base'
|
|
3034
5409
|
| 'baseSepolia'
|
|
5410
|
+
| 'berachain'
|
|
3035
5411
|
| 'berachainArtio'
|
|
5412
|
+
| 'berachainBepolia'
|
|
3036
5413
|
| 'binance'
|
|
3037
5414
|
| 'bscTestnet'
|
|
3038
5415
|
| 'campTestnet'
|
|
@@ -3040,18 +5417,30 @@ export namespace RuleUpdateParams {
|
|
|
3040
5417
|
| 'fantomTestnet'
|
|
3041
5418
|
| 'flowMainnet'
|
|
3042
5419
|
| 'mainnet'
|
|
5420
|
+
| 'nexusTestnet'
|
|
3043
5421
|
| 'optimism'
|
|
3044
5422
|
| 'polygon'
|
|
3045
5423
|
| 'polygon_mumbai'
|
|
3046
5424
|
| 'skaleNebula'
|
|
5425
|
+
| 'skaleEuropa'
|
|
5426
|
+
| 'skaleCalypso'
|
|
3047
5427
|
| 'solana'
|
|
3048
5428
|
| 'sophon'
|
|
5429
|
+
| 'sophonTestnet'
|
|
3049
5430
|
| 'sui'
|
|
3050
5431
|
| 'superseed'
|
|
3051
5432
|
| 'superseedSepolia'
|
|
3052
5433
|
| 'vanar'
|
|
3053
5434
|
| 'xai'
|
|
3054
5435
|
| 'zksync'
|
|
5436
|
+
| 'coti'
|
|
5437
|
+
| 'cotiTestnet'
|
|
5438
|
+
| 'morph'
|
|
5439
|
+
| 'morphTestnet'
|
|
5440
|
+
| 'morphHolesky'
|
|
5441
|
+
| 'ultra'
|
|
5442
|
+
| 'ultraTestnet'
|
|
5443
|
+
| 'nitrograph'
|
|
3055
5444
|
| 'sepolia'
|
|
3056
5445
|
| 'optimism_sepolia'
|
|
3057
5446
|
| 'arbitrumSepolia'
|
|
@@ -3059,13 +5448,27 @@ export namespace RuleUpdateParams {
|
|
|
3059
5448
|
| 'optimism_goerli'
|
|
3060
5449
|
| 'arbitrumGoerli'
|
|
3061
5450
|
| 'basecamp'
|
|
3062
|
-
| '
|
|
5451
|
+
| 'somnia'
|
|
5452
|
+
| 'zkverify'
|
|
5453
|
+
| 'polkadot'
|
|
5454
|
+
| 'kusama'
|
|
5455
|
+
| 'flow_cadence';
|
|
5456
|
+
|
|
5457
|
+
/**
|
|
5458
|
+
* Symbol of the collection.
|
|
5459
|
+
*/
|
|
5460
|
+
symbol?: string;
|
|
3063
5461
|
}
|
|
3064
5462
|
|
|
3065
5463
|
/**
|
|
3066
5464
|
* Additional metadata for the loyalty rule
|
|
3067
5465
|
*/
|
|
3068
5466
|
export interface Metadata {
|
|
5467
|
+
/**
|
|
5468
|
+
* Number of tokens per batch.
|
|
5469
|
+
*/
|
|
5470
|
+
batchSize?: number | null;
|
|
5471
|
+
|
|
3069
5472
|
/**
|
|
3070
5473
|
* Text displayed on the action button.
|
|
3071
5474
|
*/
|
|
@@ -3089,7 +5492,7 @@ export namespace RuleUpdateParams {
|
|
|
3089
5492
|
/**
|
|
3090
5493
|
* Text to check in the Twitter post, username, or bio.
|
|
3091
5494
|
*/
|
|
3092
|
-
checkText?: string | null;
|
|
5495
|
+
checkText?: string | Array<string> | null;
|
|
3093
5496
|
|
|
3094
5497
|
/**
|
|
3095
5498
|
* Array of collections associated with the rule.
|
|
@@ -3099,7 +5502,12 @@ export namespace RuleUpdateParams {
|
|
|
3099
5502
|
/**
|
|
3100
5503
|
* Conditions for completing the profile.
|
|
3101
5504
|
*/
|
|
3102
|
-
completeProfileConditions?:
|
|
5505
|
+
completeProfileConditions?: { [key: string]: boolean } | null;
|
|
5506
|
+
|
|
5507
|
+
/**
|
|
5508
|
+
* Description of the external rule condition (only for external rules)
|
|
5509
|
+
*/
|
|
5510
|
+
conditionDescription?: string;
|
|
3103
5511
|
|
|
3104
5512
|
/**
|
|
3105
5513
|
* Object containing details for the call-to-action.
|
|
@@ -3111,6 +5519,11 @@ export namespace RuleUpdateParams {
|
|
|
3111
5519
|
*/
|
|
3112
5520
|
customRewardsApiKey?: string;
|
|
3113
5521
|
|
|
5522
|
+
/**
|
|
5523
|
+
* Flag indicating if the rule should use direct RPC to get the balance of tokens.
|
|
5524
|
+
*/
|
|
5525
|
+
directRpc?: boolean;
|
|
5526
|
+
|
|
3114
5527
|
/**
|
|
3115
5528
|
* Array of Discord servers, channels, and roles to join.
|
|
3116
5529
|
*/
|
|
@@ -3136,6 +5549,11 @@ export namespace RuleUpdateParams {
|
|
|
3136
5549
|
*/
|
|
3137
5550
|
enableVerifiedMultiplier?: boolean;
|
|
3138
5551
|
|
|
5552
|
+
/**
|
|
5553
|
+
* Type of ERC20 token for the loyalty rule.
|
|
5554
|
+
*/
|
|
5555
|
+
erc20Type?: 'erc20' | 'native';
|
|
5556
|
+
|
|
3139
5557
|
/**
|
|
3140
5558
|
* Fill source of the order for the token sale
|
|
3141
5559
|
*/
|
|
@@ -3146,6 +5564,11 @@ export namespace RuleUpdateParams {
|
|
|
3146
5564
|
*/
|
|
3147
5565
|
firstReferralReward?: number | null;
|
|
3148
5566
|
|
|
5567
|
+
/**
|
|
5568
|
+
* URL of the GitHub repository to check for star.
|
|
5569
|
+
*/
|
|
5570
|
+
githubRepoUrl?: string | null;
|
|
5571
|
+
|
|
3149
5572
|
/**
|
|
3150
5573
|
* Flag indicating whether the fill source is included.
|
|
3151
5574
|
*/
|
|
@@ -3156,11 +5579,6 @@ export namespace RuleUpdateParams {
|
|
|
3156
5579
|
*/
|
|
3157
5580
|
hasNeverSold?: boolean;
|
|
3158
5581
|
|
|
3159
|
-
/**
|
|
3160
|
-
* Flag indicating whether the order source is included.
|
|
3161
|
-
*/
|
|
3162
|
-
hasOrderSource?: boolean;
|
|
3163
|
-
|
|
3164
5582
|
/**
|
|
3165
5583
|
* Indicates if the full royalty has been paid for items.
|
|
3166
5584
|
*/
|
|
@@ -3181,11 +5599,21 @@ export namespace RuleUpdateParams {
|
|
|
3181
5599
|
*/
|
|
3182
5600
|
imageUrl?: string | null;
|
|
3183
5601
|
|
|
5602
|
+
/**
|
|
5603
|
+
* If enabled, the first transaction done on the platform will complete this rule
|
|
5604
|
+
*/
|
|
5605
|
+
isCheckInOnEveryTxn?: boolean;
|
|
5606
|
+
|
|
3184
5607
|
/**
|
|
3185
5608
|
* Indicates if the multiplier has been applied to rewards.
|
|
3186
5609
|
*/
|
|
3187
5610
|
isMultiplierApplied?: boolean;
|
|
3188
5611
|
|
|
5612
|
+
/**
|
|
5613
|
+
* Flag indicating if the rule is restricted to new users.
|
|
5614
|
+
*/
|
|
5615
|
+
isRestrictedToNewUsers?: boolean;
|
|
5616
|
+
|
|
3189
5617
|
/**
|
|
3190
5618
|
* Flag indicating if rewards are applied retroactively.
|
|
3191
5619
|
*/
|
|
@@ -3201,6 +5629,11 @@ export namespace RuleUpdateParams {
|
|
|
3201
5629
|
*/
|
|
3202
5630
|
link?: string | null;
|
|
3203
5631
|
|
|
5632
|
+
/**
|
|
5633
|
+
* Liquidity pool details.
|
|
5634
|
+
*/
|
|
5635
|
+
liquidity?: Metadata.Liquidity;
|
|
5636
|
+
|
|
3204
5637
|
/**
|
|
3205
5638
|
* Maximum quantity constraint for token holding.
|
|
3206
5639
|
*/
|
|
@@ -3242,14 +5675,24 @@ export namespace RuleUpdateParams {
|
|
|
3242
5675
|
onlyRewardSingleTokenOwnership?: boolean | null;
|
|
3243
5676
|
|
|
3244
5677
|
/**
|
|
3245
|
-
*
|
|
5678
|
+
* Promotional code associated with the rule.
|
|
3246
5679
|
*/
|
|
3247
|
-
|
|
5680
|
+
promoCode?: string;
|
|
3248
5681
|
|
|
3249
5682
|
/**
|
|
3250
|
-
*
|
|
5683
|
+
* URL of the CSV file containing promo codes.
|
|
3251
5684
|
*/
|
|
3252
|
-
|
|
5685
|
+
promoCodeCsvUrl?: string;
|
|
5686
|
+
|
|
5687
|
+
/**
|
|
5688
|
+
* Numbers of the promotional code to be generated.
|
|
5689
|
+
*/
|
|
5690
|
+
promoCodeLength?: number | null;
|
|
5691
|
+
|
|
5692
|
+
/**
|
|
5693
|
+
* Type of the promotional code.
|
|
5694
|
+
*/
|
|
5695
|
+
promoCodeType?: 'code' | 'csv' | 'generate';
|
|
3253
5696
|
|
|
3254
5697
|
/**
|
|
3255
5698
|
* Array defining ranges and corresponding rewards.
|
|
@@ -3266,11 +5709,62 @@ export namespace RuleUpdateParams {
|
|
|
3266
5709
|
*/
|
|
3267
5710
|
referrerReward?: number | null;
|
|
3268
5711
|
|
|
5712
|
+
/**
|
|
5713
|
+
* Loyalty currency ID of the referrer reward.
|
|
5714
|
+
*/
|
|
5715
|
+
referrerRewardLoyaltyCurrencyId?: string | null;
|
|
5716
|
+
|
|
5717
|
+
/**
|
|
5718
|
+
* Flag indicating if the post link is required.
|
|
5719
|
+
*/
|
|
5720
|
+
requirePostLink?: boolean | null;
|
|
5721
|
+
|
|
5722
|
+
/**
|
|
5723
|
+
* Flag indicating if media metadata is required.
|
|
5724
|
+
*/
|
|
5725
|
+
requirePostMediaLink?: boolean | null;
|
|
5726
|
+
|
|
5727
|
+
/**
|
|
5728
|
+
* Flag indicating if the rule can also reward badges per range.
|
|
5729
|
+
*/
|
|
5730
|
+
rewardBadgePerRange?: boolean;
|
|
5731
|
+
|
|
5732
|
+
/**
|
|
5733
|
+
* Flag indicating if the reward is rewarded by batch.
|
|
5734
|
+
*/
|
|
5735
|
+
rewardByBatch?: boolean | null;
|
|
5736
|
+
|
|
5737
|
+
/**
|
|
5738
|
+
* Criteria to evaluate the reward.
|
|
5739
|
+
*/
|
|
5740
|
+
rewardCriteria?: 'IMPRESSIONS_COUNT' | 'ELIGIBLE_POST' | null;
|
|
5741
|
+
|
|
5742
|
+
/**
|
|
5743
|
+
* Flag indicating if the reward is rewarded per action.
|
|
5744
|
+
*/
|
|
5745
|
+
rewardPerAction?: boolean | null;
|
|
5746
|
+
|
|
3269
5747
|
/**
|
|
3270
5748
|
* Flag indicating if rewards are given per impression.
|
|
3271
5749
|
*/
|
|
3272
5750
|
rewardPerImpression?: boolean | null;
|
|
3273
5751
|
|
|
5752
|
+
/**
|
|
5753
|
+
* Flag indicating if the rule should reward based on value of traded tokens
|
|
5754
|
+
* instead of count.
|
|
5755
|
+
*/
|
|
5756
|
+
rewardPerValue?: boolean;
|
|
5757
|
+
|
|
5758
|
+
/**
|
|
5759
|
+
* Wallet address of the user can only be used if userId is not provided
|
|
5760
|
+
*/
|
|
5761
|
+
royaltyAddress?: string;
|
|
5762
|
+
|
|
5763
|
+
/**
|
|
5764
|
+
* Royalty percentage of the item.
|
|
5765
|
+
*/
|
|
5766
|
+
royaltyPercentage?: number;
|
|
5767
|
+
|
|
3274
5768
|
/**
|
|
3275
5769
|
* Currency associated with sales.
|
|
3276
5770
|
*/
|
|
@@ -3310,6 +5804,8 @@ export namespace RuleUpdateParams {
|
|
|
3310
5804
|
| 'Twitch'
|
|
3311
5805
|
| 'X(Twitter)'
|
|
3312
5806
|
| 'YouTube'
|
|
5807
|
+
| 'Google'
|
|
5808
|
+
| 'GitHub'
|
|
3313
5809
|
| null;
|
|
3314
5810
|
|
|
3315
5811
|
/**
|
|
@@ -3322,11 +5818,21 @@ export namespace RuleUpdateParams {
|
|
|
3322
5818
|
*/
|
|
3323
5819
|
socialPlatformName?: string | null;
|
|
3324
5820
|
|
|
5821
|
+
/**
|
|
5822
|
+
* ID of the Steam app.
|
|
5823
|
+
*/
|
|
5824
|
+
steamAppId?: string | null;
|
|
5825
|
+
|
|
3325
5826
|
/**
|
|
3326
5827
|
* Array of streak milestones and corresponding rewards.
|
|
3327
5828
|
*/
|
|
3328
5829
|
streakArray?: Array<Metadata.StreakArray> | null;
|
|
3329
5830
|
|
|
5831
|
+
/**
|
|
5832
|
+
* Metadata for swap loyalty rules
|
|
5833
|
+
*/
|
|
5834
|
+
swap?: Metadata.Swap;
|
|
5835
|
+
|
|
3330
5836
|
/**
|
|
3331
5837
|
* ID of the Telegram channel.
|
|
3332
5838
|
*/
|
|
@@ -3342,6 +5848,12 @@ export namespace RuleUpdateParams {
|
|
|
3342
5848
|
*/
|
|
3343
5849
|
trackAllContracts?: boolean | null;
|
|
3344
5850
|
|
|
5851
|
+
/**
|
|
5852
|
+
* Flag indicating if the progress is tracked. If enabled, the rule can only be
|
|
5853
|
+
* completed once the progress is 100%.
|
|
5854
|
+
*/
|
|
5855
|
+
trackProgress?: boolean | null;
|
|
5856
|
+
|
|
3345
5857
|
/**
|
|
3346
5858
|
* URL of the associated Twitter account.
|
|
3347
5859
|
*/
|
|
@@ -3385,7 +5897,28 @@ export namespace RuleUpdateParams {
|
|
|
3385
5897
|
/**
|
|
3386
5898
|
* Type of wallet associated with the rule.
|
|
3387
5899
|
*/
|
|
3388
|
-
walletType?:
|
|
5900
|
+
walletType?:
|
|
5901
|
+
| 'evm'
|
|
5902
|
+
| 'solana'
|
|
5903
|
+
| 'imx'
|
|
5904
|
+
| 'sui'
|
|
5905
|
+
| 'ton'
|
|
5906
|
+
| 'cosmos'
|
|
5907
|
+
| 'ultra'
|
|
5908
|
+
| 'agw'
|
|
5909
|
+
| 'flow_cadence'
|
|
5910
|
+
| 'substrate'
|
|
5911
|
+
| null;
|
|
5912
|
+
|
|
5913
|
+
/**
|
|
5914
|
+
* ID of the Youtube channel.
|
|
5915
|
+
*/
|
|
5916
|
+
youtubeChannelId?: string | null;
|
|
5917
|
+
|
|
5918
|
+
/**
|
|
5919
|
+
* ID of the Youtube video.
|
|
5920
|
+
*/
|
|
5921
|
+
youtubeVideoId?: string | null;
|
|
3389
5922
|
}
|
|
3390
5923
|
|
|
3391
5924
|
export namespace Metadata {
|
|
@@ -3404,13 +5937,17 @@ export namespace RuleUpdateParams {
|
|
|
3404
5937
|
* Blockchain network of the collection.
|
|
3405
5938
|
*/
|
|
3406
5939
|
network?:
|
|
5940
|
+
| 'abstract'
|
|
5941
|
+
| 'abstractTestnet'
|
|
3407
5942
|
| 'apechain'
|
|
3408
5943
|
| 'arbitrum'
|
|
3409
5944
|
| 'avalanche'
|
|
3410
5945
|
| 'avalancheFuji'
|
|
3411
5946
|
| 'base'
|
|
3412
5947
|
| 'baseSepolia'
|
|
5948
|
+
| 'berachain'
|
|
3413
5949
|
| 'berachainArtio'
|
|
5950
|
+
| 'berachainBepolia'
|
|
3414
5951
|
| 'binance'
|
|
3415
5952
|
| 'bscTestnet'
|
|
3416
5953
|
| 'campTestnet'
|
|
@@ -3418,18 +5955,30 @@ export namespace RuleUpdateParams {
|
|
|
3418
5955
|
| 'fantomTestnet'
|
|
3419
5956
|
| 'flowMainnet'
|
|
3420
5957
|
| 'mainnet'
|
|
5958
|
+
| 'nexusTestnet'
|
|
3421
5959
|
| 'optimism'
|
|
3422
5960
|
| 'polygon'
|
|
3423
5961
|
| 'polygon_mumbai'
|
|
3424
5962
|
| 'skaleNebula'
|
|
5963
|
+
| 'skaleEuropa'
|
|
5964
|
+
| 'skaleCalypso'
|
|
3425
5965
|
| 'solana'
|
|
3426
5966
|
| 'sophon'
|
|
5967
|
+
| 'sophonTestnet'
|
|
3427
5968
|
| 'sui'
|
|
3428
5969
|
| 'superseed'
|
|
3429
5970
|
| 'superseedSepolia'
|
|
3430
5971
|
| 'vanar'
|
|
3431
5972
|
| 'xai'
|
|
3432
5973
|
| 'zksync'
|
|
5974
|
+
| 'coti'
|
|
5975
|
+
| 'cotiTestnet'
|
|
5976
|
+
| 'morph'
|
|
5977
|
+
| 'morphTestnet'
|
|
5978
|
+
| 'morphHolesky'
|
|
5979
|
+
| 'ultra'
|
|
5980
|
+
| 'ultraTestnet'
|
|
5981
|
+
| 'nitrograph'
|
|
3433
5982
|
| 'sepolia'
|
|
3434
5983
|
| 'optimism_sepolia'
|
|
3435
5984
|
| 'arbitrumSepolia'
|
|
@@ -3437,7 +5986,11 @@ export namespace RuleUpdateParams {
|
|
|
3437
5986
|
| 'optimism_goerli'
|
|
3438
5987
|
| 'arbitrumGoerli'
|
|
3439
5988
|
| 'basecamp'
|
|
3440
|
-
| '
|
|
5989
|
+
| 'somnia'
|
|
5990
|
+
| 'zkverify'
|
|
5991
|
+
| 'polkadot'
|
|
5992
|
+
| 'kusama'
|
|
5993
|
+
| 'flow_cadence';
|
|
3441
5994
|
}
|
|
3442
5995
|
|
|
3443
5996
|
/**
|
|
@@ -3514,6 +6067,111 @@ export namespace RuleUpdateParams {
|
|
|
3514
6067
|
id: string;
|
|
3515
6068
|
}
|
|
3516
6069
|
|
|
6070
|
+
/**
|
|
6071
|
+
* Liquidity pool details.
|
|
6072
|
+
*/
|
|
6073
|
+
export interface Liquidity {
|
|
6074
|
+
/**
|
|
6075
|
+
* Calculation type of the liquidity pool.
|
|
6076
|
+
*/
|
|
6077
|
+
calculationType?: 'fixed' | 'custom';
|
|
6078
|
+
|
|
6079
|
+
/**
|
|
6080
|
+
* Custom function to calculate the the reward amount based on the liquidity
|
|
6081
|
+
* provided per day. X is the reward amount, Y is the liquidity provided per day in
|
|
6082
|
+
* USD.
|
|
6083
|
+
*/
|
|
6084
|
+
customFunction?: string;
|
|
6085
|
+
|
|
6086
|
+
/**
|
|
6087
|
+
* Liquidity provided per day in USD
|
|
6088
|
+
*/
|
|
6089
|
+
liquidityPerDay?: number;
|
|
6090
|
+
|
|
6091
|
+
/**
|
|
6092
|
+
* Blockchain network of the liquidity pool.
|
|
6093
|
+
*/
|
|
6094
|
+
network?:
|
|
6095
|
+
| 'abstract'
|
|
6096
|
+
| 'abstractTestnet'
|
|
6097
|
+
| 'apechain'
|
|
6098
|
+
| 'arbitrum'
|
|
6099
|
+
| 'avalanche'
|
|
6100
|
+
| 'avalancheFuji'
|
|
6101
|
+
| 'base'
|
|
6102
|
+
| 'baseSepolia'
|
|
6103
|
+
| 'berachain'
|
|
6104
|
+
| 'berachainArtio'
|
|
6105
|
+
| 'berachainBepolia'
|
|
6106
|
+
| 'binance'
|
|
6107
|
+
| 'bscTestnet'
|
|
6108
|
+
| 'campTestnet'
|
|
6109
|
+
| 'fantom'
|
|
6110
|
+
| 'fantomTestnet'
|
|
6111
|
+
| 'flowMainnet'
|
|
6112
|
+
| 'mainnet'
|
|
6113
|
+
| 'nexusTestnet'
|
|
6114
|
+
| 'optimism'
|
|
6115
|
+
| 'polygon'
|
|
6116
|
+
| 'polygon_mumbai'
|
|
6117
|
+
| 'skaleNebula'
|
|
6118
|
+
| 'skaleEuropa'
|
|
6119
|
+
| 'skaleCalypso'
|
|
6120
|
+
| 'solana'
|
|
6121
|
+
| 'sophon'
|
|
6122
|
+
| 'sophonTestnet'
|
|
6123
|
+
| 'sui'
|
|
6124
|
+
| 'superseed'
|
|
6125
|
+
| 'superseedSepolia'
|
|
6126
|
+
| 'vanar'
|
|
6127
|
+
| 'xai'
|
|
6128
|
+
| 'zksync'
|
|
6129
|
+
| 'coti'
|
|
6130
|
+
| 'cotiTestnet'
|
|
6131
|
+
| 'morph'
|
|
6132
|
+
| 'morphTestnet'
|
|
6133
|
+
| 'morphHolesky'
|
|
6134
|
+
| 'ultra'
|
|
6135
|
+
| 'ultraTestnet'
|
|
6136
|
+
| 'nitrograph'
|
|
6137
|
+
| 'sepolia'
|
|
6138
|
+
| 'optimism_sepolia'
|
|
6139
|
+
| 'arbitrumSepolia'
|
|
6140
|
+
| 'goerli'
|
|
6141
|
+
| 'optimism_goerli'
|
|
6142
|
+
| 'arbitrumGoerli'
|
|
6143
|
+
| 'basecamp'
|
|
6144
|
+
| 'somnia'
|
|
6145
|
+
| 'zkverify'
|
|
6146
|
+
| 'polkadot'
|
|
6147
|
+
| 'kusama'
|
|
6148
|
+
| 'flow_cadence';
|
|
6149
|
+
|
|
6150
|
+
/**
|
|
6151
|
+
* Indicates if only in-range liquidity is rewarded.
|
|
6152
|
+
*/
|
|
6153
|
+
onlyRewardInRangeLiquidity?: boolean;
|
|
6154
|
+
|
|
6155
|
+
/**
|
|
6156
|
+
* Array of liquidity pools associated with the rule.
|
|
6157
|
+
*/
|
|
6158
|
+
pools?: Array<Liquidity.Pool>;
|
|
6159
|
+
|
|
6160
|
+
/**
|
|
6161
|
+
* Protocol of the liquidity pool.
|
|
6162
|
+
*/
|
|
6163
|
+
protocol?: string;
|
|
6164
|
+
}
|
|
6165
|
+
|
|
6166
|
+
export namespace Liquidity {
|
|
6167
|
+
export interface Pool {
|
|
6168
|
+
/**
|
|
6169
|
+
* Unique identifier of the liquidity pool.
|
|
6170
|
+
*/
|
|
6171
|
+
id: string;
|
|
6172
|
+
}
|
|
6173
|
+
}
|
|
6174
|
+
|
|
3517
6175
|
export interface Range {
|
|
3518
6176
|
/**
|
|
3519
6177
|
* Reward amount for this range.
|
|
@@ -3529,6 +6187,16 @@ export namespace RuleUpdateParams {
|
|
|
3529
6187
|
* Start value of the range.
|
|
3530
6188
|
*/
|
|
3531
6189
|
startRange: number;
|
|
6190
|
+
|
|
6191
|
+
/**
|
|
6192
|
+
* ID of the loyalty badge for this range.
|
|
6193
|
+
*/
|
|
6194
|
+
loyaltyBadgeId?: string;
|
|
6195
|
+
|
|
6196
|
+
/**
|
|
6197
|
+
* Amount of the loyalty multiplier for this range.
|
|
6198
|
+
*/
|
|
6199
|
+
loyaltyMultiplierAmount?: number;
|
|
3532
6200
|
}
|
|
3533
6201
|
|
|
3534
6202
|
/**
|
|
@@ -3581,20 +6249,15 @@ export namespace RuleUpdateParams {
|
|
|
3581
6249
|
* Object containing details of the associated smart contract.
|
|
3582
6250
|
*/
|
|
3583
6251
|
export interface SmartContract {
|
|
3584
|
-
/**
|
|
3585
|
-
* ABI of the smart contract.
|
|
3586
|
-
*/
|
|
3587
|
-
abi?: string | null;
|
|
3588
|
-
|
|
3589
6252
|
/**
|
|
3590
6253
|
* Mapping of addresses for the smart contract.
|
|
3591
6254
|
*/
|
|
3592
6255
|
addressMapping?: string | null;
|
|
3593
6256
|
|
|
3594
6257
|
/**
|
|
3595
|
-
*
|
|
6258
|
+
* Object containing details of the amount multiplier from the event.
|
|
3596
6259
|
*/
|
|
3597
|
-
|
|
6260
|
+
amountMultiplier?: SmartContract.AmountMultiplier | null;
|
|
3598
6261
|
|
|
3599
6262
|
/**
|
|
3600
6263
|
* ID of the smart contract.
|
|
@@ -3606,68 +6269,31 @@ export namespace RuleUpdateParams {
|
|
|
3606
6269
|
*/
|
|
3607
6270
|
criteria?: 'everyEvent' | 'byParameter' | null;
|
|
3608
6271
|
|
|
3609
|
-
/**
|
|
3610
|
-
* Time range applied to the rule.
|
|
3611
|
-
*/
|
|
3612
|
-
customRange?: SmartContract.CustomRange | null;
|
|
3613
|
-
|
|
3614
6272
|
/**
|
|
3615
6273
|
* Event emitted by the smart contract.
|
|
3616
6274
|
*/
|
|
3617
6275
|
event?: string | null;
|
|
3618
6276
|
|
|
3619
|
-
/**
|
|
3620
|
-
* Maximum value allowed for the parameter.
|
|
3621
|
-
*/
|
|
3622
|
-
max?: number | null;
|
|
3623
|
-
|
|
3624
6277
|
/**
|
|
3625
6278
|
* Array of parameters for the smart contract.
|
|
3626
6279
|
*/
|
|
3627
6280
|
params?: Array<SmartContract.Param> | null;
|
|
3628
6281
|
|
|
3629
6282
|
/**
|
|
3630
|
-
*
|
|
3631
|
-
*/
|
|
3632
|
-
withBonus?: boolean | null;
|
|
3633
|
-
|
|
3634
|
-
/**
|
|
3635
|
-
* Flag indicating if a custom range is applied.
|
|
3636
|
-
*/
|
|
3637
|
-
withCustomRange?: boolean | null;
|
|
3638
|
-
|
|
3639
|
-
/**
|
|
3640
|
-
* Flag indicating if a maximum limit is applied.
|
|
6283
|
+
* Type of the smart contract interaction.
|
|
3641
6284
|
*/
|
|
3642
|
-
|
|
6285
|
+
type?: 'function' | 'event' | null;
|
|
3643
6286
|
}
|
|
3644
6287
|
|
|
3645
6288
|
export namespace SmartContract {
|
|
3646
|
-
export interface Bonus {
|
|
3647
|
-
/**
|
|
3648
|
-
* Amount of the bonus.
|
|
3649
|
-
*/
|
|
3650
|
-
amount?: number | null;
|
|
3651
|
-
|
|
3652
|
-
/**
|
|
3653
|
-
* Number of times the bonus is applied.
|
|
3654
|
-
*/
|
|
3655
|
-
count?: number | null;
|
|
3656
|
-
}
|
|
3657
|
-
|
|
3658
6289
|
/**
|
|
3659
|
-
*
|
|
6290
|
+
* Object containing details of the amount multiplier from the event.
|
|
3660
6291
|
*/
|
|
3661
|
-
export interface
|
|
3662
|
-
/**
|
|
3663
|
-
* End time of the custom range.
|
|
3664
|
-
*/
|
|
3665
|
-
endsAt?: string | null;
|
|
3666
|
-
|
|
6292
|
+
export interface AmountMultiplier {
|
|
3667
6293
|
/**
|
|
3668
|
-
*
|
|
6294
|
+
* Mapping of the value for the smart contract.
|
|
3669
6295
|
*/
|
|
3670
|
-
|
|
6296
|
+
valueMapping?: string | null;
|
|
3671
6297
|
}
|
|
3672
6298
|
|
|
3673
6299
|
export interface Param {
|
|
@@ -3711,17 +6337,71 @@ export namespace RuleUpdateParams {
|
|
|
3711
6337
|
*/
|
|
3712
6338
|
streakMilestone: number;
|
|
3713
6339
|
}
|
|
6340
|
+
|
|
6341
|
+
/**
|
|
6342
|
+
* Metadata for swap loyalty rules
|
|
6343
|
+
*/
|
|
6344
|
+
export interface Swap {
|
|
6345
|
+
provider?: 'any' | 'relay' | 'lifi';
|
|
6346
|
+
|
|
6347
|
+
relayReferrerId?: string;
|
|
6348
|
+
|
|
6349
|
+
requireCrossChainSwap?: boolean;
|
|
6350
|
+
|
|
6351
|
+
swappedToChain?: 'any' | number | string;
|
|
6352
|
+
|
|
6353
|
+
swappedToTokens?: Array<Swap.SwappedToToken>;
|
|
6354
|
+
|
|
6355
|
+
tokenMode?: 'any' | 'specific';
|
|
6356
|
+
|
|
6357
|
+
trackTokenAmount?: boolean;
|
|
6358
|
+
}
|
|
6359
|
+
|
|
6360
|
+
export namespace Swap {
|
|
6361
|
+
export interface SwappedToToken {
|
|
6362
|
+
address: string;
|
|
6363
|
+
|
|
6364
|
+
chainId: string;
|
|
6365
|
+
}
|
|
6366
|
+
}
|
|
3714
6367
|
}
|
|
3715
6368
|
}
|
|
3716
6369
|
|
|
3717
6370
|
export interface RuleListParams {
|
|
6371
|
+
/**
|
|
6372
|
+
* IDs of the users to filter results by
|
|
6373
|
+
*/
|
|
6374
|
+
allotedToUserId?: string | Array<string>;
|
|
6375
|
+
|
|
6376
|
+
/**
|
|
6377
|
+
* ID of the user group to filter results by
|
|
6378
|
+
*/
|
|
6379
|
+
allotedUserGroupId?: string;
|
|
6380
|
+
|
|
3718
6381
|
/**
|
|
3719
6382
|
* Address of the collection to filter by
|
|
3720
6383
|
*/
|
|
3721
6384
|
collectionAddress?: string;
|
|
3722
6385
|
|
|
3723
6386
|
/**
|
|
3724
|
-
*
|
|
6387
|
+
* Whether to include deleted/archived records
|
|
6388
|
+
*/
|
|
6389
|
+
includeDeleted?: boolean | null;
|
|
6390
|
+
|
|
6391
|
+
/**
|
|
6392
|
+
* If true this will only return active rules, the rules for which the startTime is
|
|
6393
|
+
* in the past and the endTime is in the future
|
|
6394
|
+
*/
|
|
6395
|
+
isActive?: 'true' | 'false';
|
|
6396
|
+
|
|
6397
|
+
/**
|
|
6398
|
+
* If true this will only return special rules, special rules are the rules that
|
|
6399
|
+
* are used for anti sybil as honey pot
|
|
6400
|
+
*/
|
|
6401
|
+
isSpecial?: 'true' | 'false';
|
|
6402
|
+
|
|
6403
|
+
/**
|
|
6404
|
+
* Maximum number of records to return (max 100)
|
|
3725
6405
|
*/
|
|
3726
6406
|
limit?: number;
|
|
3727
6407
|
|
|
@@ -3751,6 +6431,13 @@ export interface RuleListParams {
|
|
|
3751
6431
|
websiteId?: string;
|
|
3752
6432
|
}
|
|
3753
6433
|
|
|
6434
|
+
export interface RuleDeleteParams {
|
|
6435
|
+
/**
|
|
6436
|
+
* Whether to debit loyalty points
|
|
6437
|
+
*/
|
|
6438
|
+
debitLoyaltyPoints?: string;
|
|
6439
|
+
}
|
|
6440
|
+
|
|
3754
6441
|
export interface RuleCompleteParams {
|
|
3755
6442
|
/**
|
|
3756
6443
|
* Override amount for the reward (rounded to nearest whole number). This will
|
|
@@ -3759,15 +6446,30 @@ export interface RuleCompleteParams {
|
|
|
3759
6446
|
amount?: number | null;
|
|
3760
6447
|
|
|
3761
6448
|
/**
|
|
3762
|
-
* Link to the comment made by user
|
|
6449
|
+
* Link to the post/comment made by user
|
|
6450
|
+
*/
|
|
6451
|
+
contentUrl?: string;
|
|
6452
|
+
|
|
6453
|
+
/**
|
|
6454
|
+
* Unique key to ensure idempotent requests.
|
|
3763
6455
|
*/
|
|
3764
|
-
|
|
6456
|
+
idempotencyKey?: string;
|
|
3765
6457
|
|
|
3766
6458
|
/**
|
|
3767
6459
|
* ID of the choice selected by the user
|
|
3768
6460
|
*/
|
|
3769
6461
|
loyaltyQuestionChoiceId?: string;
|
|
3770
6462
|
|
|
6463
|
+
/**
|
|
6464
|
+
* Value to compare with the range
|
|
6465
|
+
*/
|
|
6466
|
+
rangeValue?: number | null;
|
|
6467
|
+
|
|
6468
|
+
/**
|
|
6469
|
+
* Flag indicating if the chain or required check should be skipped.
|
|
6470
|
+
*/
|
|
6471
|
+
skipChainOrRequiredCheck?: boolean;
|
|
6472
|
+
|
|
3771
6473
|
/**
|
|
3772
6474
|
* Unique identifier for the user
|
|
3773
6475
|
*/
|
|
@@ -3780,7 +6482,7 @@ export interface RuleCompleteParams {
|
|
|
3780
6482
|
|
|
3781
6483
|
/**
|
|
3782
6484
|
* Flag indicating if only verification is required, this will not create a
|
|
3783
|
-
* transaction and reward the user
|
|
6485
|
+
* transaction and reward the user.
|
|
3784
6486
|
*/
|
|
3785
6487
|
verifyOnly?: string;
|
|
3786
6488
|
|
|
@@ -3791,11 +6493,30 @@ export interface RuleCompleteParams {
|
|
|
3791
6493
|
}
|
|
3792
6494
|
|
|
3793
6495
|
export interface RuleGetStatusParams {
|
|
3794
|
-
|
|
6496
|
+
/**
|
|
6497
|
+
* Number of items to return
|
|
6498
|
+
*/
|
|
6499
|
+
limit?: number | null;
|
|
3795
6500
|
|
|
3796
|
-
|
|
6501
|
+
/**
|
|
6502
|
+
* Unique identifier for the loyalty rule[s]
|
|
6503
|
+
*/
|
|
6504
|
+
loyaltyRuleId?: string | Array<string>;
|
|
6505
|
+
|
|
6506
|
+
organizationId?: string;
|
|
6507
|
+
|
|
6508
|
+
/**
|
|
6509
|
+
* Starting after item
|
|
6510
|
+
*/
|
|
6511
|
+
startingAfter?: string;
|
|
6512
|
+
|
|
6513
|
+
userGroupId?: string;
|
|
3797
6514
|
|
|
3798
6515
|
userId?: string;
|
|
6516
|
+
|
|
6517
|
+
walletAddress?: string;
|
|
6518
|
+
|
|
6519
|
+
websiteId?: string;
|
|
3799
6520
|
}
|
|
3800
6521
|
|
|
3801
6522
|
export declare namespace Rules {
|
|
@@ -3809,6 +6530,7 @@ export declare namespace Rules {
|
|
|
3809
6530
|
type RuleCreateParams as RuleCreateParams,
|
|
3810
6531
|
type RuleUpdateParams as RuleUpdateParams,
|
|
3811
6532
|
type RuleListParams as RuleListParams,
|
|
6533
|
+
type RuleDeleteParams as RuleDeleteParams,
|
|
3812
6534
|
type RuleCompleteParams as RuleCompleteParams,
|
|
3813
6535
|
type RuleGetStatusParams as RuleGetStatusParams,
|
|
3814
6536
|
};
|