@snagsolutions/sdk 0.1.0-alpha.21 → 0.1.0-alpha.211
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 +1711 -0
- package/LICENSE +1 -1
- package/README.md +15 -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 +96 -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 +60 -6
- package/resources/loyalty/questions.d.ts.map +1 -1
- package/resources/loyalty/questions.js +39 -0
- package/resources/loyalty/questions.js.map +1 -1
- package/resources/loyalty/questions.mjs +39 -0
- package/resources/loyalty/questions.mjs.map +1 -1
- package/resources/loyalty/rule-edits.d.ts +2730 -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 +302 -62
- 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 +2024 -258
- 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 -248
- 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 +12 -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 +30 -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 +192 -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 +128 -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 +64 -6
- package/src/resources/loyalty/rule-edits.ts +3962 -100
- package/src/resources/loyalty/rule-groups.ts +530 -74
- package/src/resources/loyalty/rules.ts +3162 -295
- 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 +699 -0
- package/src/resources/loyalty/transactions.ts +1 -440
- package/src/resources/minting.ts +25 -5
- package/src/resources/referral/referral.ts +15 -11
- package/src/resources/referral/users.ts +45 -5
- package/src/resources/users/index.ts +4 -0
- package/src/resources/users/metadatas.ts +61 -3
- package/src/resources/users/users.ts +259 -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
|
@@ -3,34 +3,92 @@ import * as Core from "../../core.js";
|
|
|
3
3
|
export declare class Rules extends APIResource {
|
|
4
4
|
/**
|
|
5
5
|
* Create a new Loyalty Rule
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```ts
|
|
9
|
+
* const rule = await client.loyalty.rules.create({
|
|
10
|
+
* amount: '10.5',
|
|
11
|
+
* effectiveEndTime: '2024-12-31T23:59:00Z',
|
|
12
|
+
* effectiveStartTime: '2024-01-01T00:00:00Z',
|
|
13
|
+
* endTime: '2024-12-31T23:59:00Z',
|
|
14
|
+
* frequency: 'daily',
|
|
15
|
+
* loyaltyCurrencyId: '456e1234-e89b-12d3-a456-426614174003',
|
|
16
|
+
* metadata: {},
|
|
17
|
+
* name: 'Referral Bonus Rule',
|
|
18
|
+
* organizationId: '123e4567-e89b-12d3-a456-426614174001',
|
|
19
|
+
* startTime: '2024-01-01T00:00:00Z',
|
|
20
|
+
* type: 'Bonus',
|
|
21
|
+
* websiteId: '123e4567-e89b-12d3-a456-426614174002',
|
|
22
|
+
* });
|
|
23
|
+
* ```
|
|
6
24
|
*/
|
|
7
25
|
create(body: RuleCreateParams, options?: Core.RequestOptions): Core.APIPromise<RuleCreateResponse>;
|
|
8
26
|
/**
|
|
9
27
|
* Update an existing Loyalty Rule
|
|
28
|
+
*
|
|
29
|
+
* @example
|
|
30
|
+
* ```ts
|
|
31
|
+
* const rule = await client.loyalty.rules.update(
|
|
32
|
+
* '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
|
|
33
|
+
* {
|
|
34
|
+
* amount: '10.5',
|
|
35
|
+
* endTime: '2024-12-31T23:59:00Z',
|
|
36
|
+
* name: 'Daily Rewards Program',
|
|
37
|
+
* },
|
|
38
|
+
* );
|
|
39
|
+
* ```
|
|
10
40
|
*/
|
|
11
41
|
update(id: string, body: RuleUpdateParams, options?: Core.RequestOptions): Core.APIPromise<RuleUpdateResponse>;
|
|
12
42
|
/**
|
|
13
43
|
* Retrieve configured loyalty rules with optional pagination and filters
|
|
44
|
+
*
|
|
45
|
+
* @example
|
|
46
|
+
* ```ts
|
|
47
|
+
* const rules = await client.loyalty.rules.list();
|
|
48
|
+
* ```
|
|
14
49
|
*/
|
|
15
50
|
list(query?: RuleListParams, options?: Core.RequestOptions): Core.APIPromise<RuleListResponse>;
|
|
16
51
|
list(options?: Core.RequestOptions): Core.APIPromise<RuleListResponse>;
|
|
17
52
|
/**
|
|
18
53
|
* Delete an existing Loyalty Rule
|
|
54
|
+
*
|
|
55
|
+
* @example
|
|
56
|
+
* ```ts
|
|
57
|
+
* const rule = await client.loyalty.rules.delete(
|
|
58
|
+
* '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
|
|
59
|
+
* );
|
|
60
|
+
* ```
|
|
19
61
|
*/
|
|
62
|
+
delete(id: string, params?: RuleDeleteParams, options?: Core.RequestOptions): Core.APIPromise<RuleDeleteResponse>;
|
|
20
63
|
delete(id: string, options?: Core.RequestOptions): Core.APIPromise<RuleDeleteResponse>;
|
|
21
64
|
/**
|
|
22
65
|
* Verify a loyalty rule based on user action and reward them if applicable. This
|
|
23
66
|
* endpoint currently only supports following rule types code_entry, text_input,
|
|
24
67
|
* link_click, discord_member, connect_wallet, check_in, external_rule,
|
|
25
68
|
* drip_x_follow, drip_x_new_tweet, drip_x_text_in_bio, drip_x_text_in_name,
|
|
26
|
-
* drip_x_text_in_comment, drip_x_tweet, telegram_join, DiscordMessages
|
|
69
|
+
* drip_x_text_in_comment, drip_x_tweet, telegram_join, DiscordMessages,
|
|
70
|
+
* youtube_subscribers, youtube_comment, steam_wishlist, discord_role_grant
|
|
71
|
+
*
|
|
72
|
+
* @example
|
|
73
|
+
* ```ts
|
|
74
|
+
* const response = await client.loyalty.rules.complete(
|
|
75
|
+
* '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
|
|
76
|
+
* );
|
|
77
|
+
* ```
|
|
27
78
|
*/
|
|
28
79
|
complete(id: string, body?: RuleCompleteParams, options?: Core.RequestOptions): Core.APIPromise<RuleCompleteResponse>;
|
|
29
80
|
complete(id: string, options?: Core.RequestOptions): Core.APIPromise<RuleCompleteResponse>;
|
|
30
81
|
/**
|
|
31
|
-
* This will return the processing status of quests for a specific user
|
|
82
|
+
* This will return the processing status of quests for a specific user and also
|
|
83
|
+
* the progress of the loyalty rule
|
|
84
|
+
*
|
|
85
|
+
* @example
|
|
86
|
+
* ```ts
|
|
87
|
+
* const response = await client.loyalty.rules.getStatus();
|
|
88
|
+
* ```
|
|
32
89
|
*/
|
|
33
|
-
getStatus(query
|
|
90
|
+
getStatus(query?: RuleGetStatusParams, options?: Core.RequestOptions): Core.APIPromise<RuleGetStatusResponse>;
|
|
91
|
+
getStatus(options?: Core.RequestOptions): Core.APIPromise<RuleGetStatusResponse>;
|
|
34
92
|
}
|
|
35
93
|
export interface RuleCreateResponse {
|
|
36
94
|
id: string;
|
|
@@ -77,7 +135,7 @@ export interface RuleCreateResponse {
|
|
|
77
135
|
/**
|
|
78
136
|
* Type of loyalty rule being created
|
|
79
137
|
*/
|
|
80
|
-
type: 'Bonus' | 'BoughtOn' | 'BoughtWithRoyalties' | 'DiscordMessages' | 'Listing' | 'Lodging' | 'MintOn' | 'PoapClaim' | 'SnagSocialsConnected' | 'SnapshotFullset' | 'SnapshotHold' | 'SoldOn' | 'SoldWithRoyalties' | 'TokenHold' | 'TwitterBio' | 'TwitterHashTagPost' | 'Retweet' | 'check_in' | 'code_entry' | 'connect_wallet' | 'connected_discord' | 'connected_email' | 'connected_epic' | 'connected_steam' | 'connected_telegram' | 'connected_twitter' | 'create_partner_account' | 'discord_member' | 'drip_x_follow' | 'drip_x_new_tweet' | 'drip_x_text_in_bio' | 'drip_x_text_in_comment' | 'drip_x_text_in_name' | 'drip_x_tweet' | 'external_rule' | 'link_click' | 'manual_upload' | 'profile_completed' | 'referred_user' | 'smart_contract_event' | 'snapshot_governance' | 'telegram_join' | 'telegram_messages' | 'text_input' | 'token_hold_erc20' | 'tweet_liked_by_project' | 'twitter_comment' | 'twitter_follow' | 'twitter_followers' | 'twitter_like' | 'twitter_post_hashtag' | 'quiz' | 'poll';
|
|
138
|
+
type: 'Bonus' | 'BoughtOn' | 'BoughtWithRoyalties' | 'DiscordMessages' | 'Listing' | 'Lodging' | 'MintOn' | 'PoapClaim' | 'SnagSocialsConnected' | 'SnapshotFullset' | 'SnapshotHold' | 'SoldOn' | 'SoldWithRoyalties' | 'TokenHold' | 'TwitterBio' | 'TwitterHashTagPost' | 'Retweet' | 'check_in' | 'code_entry' | 'connect_wallet' | 'connected_discord' | 'connected_email' | 'connected_epic' | 'connected_github' | 'connected_steam' | 'connected_telegram' | 'connected_twitter' | 'create_partner_account' | 'discord_member' | 'drip_x_follow' | 'drip_x_new_tweet' | 'drip_x_text_in_bio' | 'drip_x_text_in_comment' | 'drip_x_text_in_name' | 'drip_x_tweet' | 'external_rule' | 'link_click' | 'manual_upload' | 'profile_completed' | 'referred_user' | 'smart_contract_event' | 'snapshot_governance' | 'telegram_join' | 'telegram_messages' | 'text_input' | 'token_hold_erc20' | 'tweet_liked_by_project' | 'twitter_comment' | 'twitter_follow' | 'twitter_followers' | 'twitter_like' | 'twitter_post_hashtag' | 'quiz' | 'poll' | 'steam_wishlist' | 'liquidity_uniswap_v2' | 'liquidity_uniswap_v3' | 'points_airdrop' | 'youtube_subscribers' | 'youtube_comment' | 'shopify_spend' | 'swap' | 'tiktok_post' | 'post_impressions' | 'discord_join' | 'connected_youtube' | 'stratus_function' | 'connected_tiktok' | 'tiktok_follow' | 'github_repo_star' | 'github_repo_fork' | 'github_repo_collaborator' | 'github_merge_PR' | 'discord_role_grant' | 'connected_reddit' | 'reddit_comment';
|
|
81
139
|
/**
|
|
82
140
|
* Unique identifier for the associated website
|
|
83
141
|
*/
|
|
@@ -86,6 +144,10 @@ export interface RuleCreateResponse {
|
|
|
86
144
|
* URL of the background asset to be displayed
|
|
87
145
|
*/
|
|
88
146
|
backgroundAssetUrl?: string;
|
|
147
|
+
/**
|
|
148
|
+
* The type of claim for the reward
|
|
149
|
+
*/
|
|
150
|
+
claimType?: 'manual' | 'auto' | null;
|
|
89
151
|
/**
|
|
90
152
|
* Blockchain address of the associated collection
|
|
91
153
|
*/
|
|
@@ -106,6 +168,15 @@ export interface RuleCreateResponse {
|
|
|
106
168
|
* Optional detailed description of the rule
|
|
107
169
|
*/
|
|
108
170
|
description?: string;
|
|
171
|
+
duplicatedFromId?: string | null;
|
|
172
|
+
/**
|
|
173
|
+
* ID of the external integration
|
|
174
|
+
*/
|
|
175
|
+
externalIntegrationId?: string | null;
|
|
176
|
+
/**
|
|
177
|
+
* Optional stratus function id for the rule
|
|
178
|
+
*/
|
|
179
|
+
functionId?: string | null;
|
|
109
180
|
/**
|
|
110
181
|
* Whether to hide this rule in the user interface
|
|
111
182
|
*/
|
|
@@ -113,15 +184,33 @@ export interface RuleCreateResponse {
|
|
|
113
184
|
/**
|
|
114
185
|
* Interval between rule executions
|
|
115
186
|
*/
|
|
116
|
-
interval?: 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | null;
|
|
187
|
+
interval?: 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | 'unlimited' | null;
|
|
117
188
|
/**
|
|
118
189
|
* Whether this rule is mandatory
|
|
119
190
|
*/
|
|
120
191
|
isRequired?: boolean;
|
|
192
|
+
/**
|
|
193
|
+
* Unique identifier for the loyalty badge
|
|
194
|
+
*/
|
|
195
|
+
loyaltyBadgeId?: string | null;
|
|
121
196
|
/**
|
|
122
197
|
* Unique identifier for the loyalty rule group
|
|
123
198
|
*/
|
|
124
199
|
loyaltyRuleGroupId?: 'no-section' | (string & {}) | null;
|
|
200
|
+
/**
|
|
201
|
+
* URL for uploading loyalty user allotment via CSV
|
|
202
|
+
*/
|
|
203
|
+
loyaltyUserAllotmentCsvUrl?: string;
|
|
204
|
+
/**
|
|
205
|
+
* The interval for the max amount. Available for the smart contract and external
|
|
206
|
+
* rules.
|
|
207
|
+
*/
|
|
208
|
+
maxAmountInterval?: 'daily' | 'weekly' | 'monthly' | 'lifetime' | null;
|
|
209
|
+
/**
|
|
210
|
+
* The maximum amount of points a user can earn per interval. Available for the
|
|
211
|
+
* smart contract and external rules.
|
|
212
|
+
*/
|
|
213
|
+
maxAmountPerInterval?: number | null;
|
|
125
214
|
/**
|
|
126
215
|
* URL of the media to be displayed
|
|
127
216
|
*/
|
|
@@ -129,25 +218,46 @@ export interface RuleCreateResponse {
|
|
|
129
218
|
/**
|
|
130
219
|
* Blockchain network where the rule will apply
|
|
131
220
|
*/
|
|
132
|
-
network?: 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachainArtio' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | '
|
|
221
|
+
network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'skaleEuropa' | 'skaleCalypso' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
|
|
133
222
|
/**
|
|
134
223
|
* OAuth credentials associated with the rule
|
|
135
224
|
*/
|
|
136
225
|
oauthCredentialsId?: string | null;
|
|
226
|
+
/**
|
|
227
|
+
* The lifetime of the reward
|
|
228
|
+
*/
|
|
229
|
+
rewardLifetime?: 'permanent' | 'dynamic' | null;
|
|
137
230
|
/**
|
|
138
231
|
* Type of reward issued by the rule
|
|
139
232
|
*/
|
|
140
|
-
rewardType?: 'points' | 'multiplier';
|
|
233
|
+
rewardType?: 'points' | 'multiplier' | 'badge';
|
|
141
234
|
/**
|
|
142
|
-
*
|
|
235
|
+
* URL of the Shopify store
|
|
143
236
|
*/
|
|
144
|
-
|
|
237
|
+
shopifyStoreUrl?: string | null;
|
|
238
|
+
/**
|
|
239
|
+
* Whether to show this rule before the start time
|
|
240
|
+
*/
|
|
241
|
+
showBeforeStart?: boolean;
|
|
242
|
+
/**
|
|
243
|
+
* Optional stratus subscription id for the rule
|
|
244
|
+
*/
|
|
245
|
+
subscriptionId?: string | null;
|
|
145
246
|
}
|
|
146
247
|
export declare namespace RuleCreateResponse {
|
|
147
248
|
/**
|
|
148
249
|
* Additional metadata for the loyalty rule
|
|
149
250
|
*/
|
|
150
251
|
interface Metadata {
|
|
252
|
+
/**
|
|
253
|
+
* Array of loyalty rule IDs that count as check-in when completed. If ["any"] then
|
|
254
|
+
* any rule completions count as check-in.
|
|
255
|
+
*/
|
|
256
|
+
autoCheckInRuleIds?: Array<(string & {}) | 'any'> | null;
|
|
257
|
+
/**
|
|
258
|
+
* Number of tokens per batch.
|
|
259
|
+
*/
|
|
260
|
+
batchSize?: number | null;
|
|
151
261
|
/**
|
|
152
262
|
* Text displayed on the action button.
|
|
153
263
|
*/
|
|
@@ -167,7 +277,7 @@ export declare namespace RuleCreateResponse {
|
|
|
167
277
|
/**
|
|
168
278
|
* Text to check in the Twitter post, username, or bio.
|
|
169
279
|
*/
|
|
170
|
-
checkText?: string | null;
|
|
280
|
+
checkText?: string | Array<string> | null;
|
|
171
281
|
/**
|
|
172
282
|
* Array of collections associated with the rule.
|
|
173
283
|
*/
|
|
@@ -175,7 +285,13 @@ export declare namespace RuleCreateResponse {
|
|
|
175
285
|
/**
|
|
176
286
|
* Conditions for completing the profile.
|
|
177
287
|
*/
|
|
178
|
-
completeProfileConditions?:
|
|
288
|
+
completeProfileConditions?: {
|
|
289
|
+
[key: string]: boolean;
|
|
290
|
+
} | null;
|
|
291
|
+
/**
|
|
292
|
+
* Description of the external rule condition (only for external rules)
|
|
293
|
+
*/
|
|
294
|
+
conditionDescription?: string;
|
|
179
295
|
/**
|
|
180
296
|
* Object containing details for the call-to-action.
|
|
181
297
|
*/
|
|
@@ -184,6 +300,10 @@ export declare namespace RuleCreateResponse {
|
|
|
184
300
|
* API key for custom rewards integration.
|
|
185
301
|
*/
|
|
186
302
|
customRewardsApiKey?: string;
|
|
303
|
+
/**
|
|
304
|
+
* Flag indicating if the rule should use direct RPC to get the balance of tokens.
|
|
305
|
+
*/
|
|
306
|
+
directRpc?: boolean;
|
|
187
307
|
/**
|
|
188
308
|
* Array of Discord servers, channels, and roles to join.
|
|
189
309
|
*/
|
|
@@ -204,6 +324,10 @@ export declare namespace RuleCreateResponse {
|
|
|
204
324
|
* Flag indicating whether the verified multiplier is enabled.
|
|
205
325
|
*/
|
|
206
326
|
enableVerifiedMultiplier?: boolean;
|
|
327
|
+
/**
|
|
328
|
+
* Type of ERC20 token for the loyalty rule.
|
|
329
|
+
*/
|
|
330
|
+
erc20Type?: 'erc20' | 'native';
|
|
207
331
|
/**
|
|
208
332
|
* Fill source of the order for the token sale
|
|
209
333
|
*/
|
|
@@ -212,6 +336,14 @@ export declare namespace RuleCreateResponse {
|
|
|
212
336
|
* Percentage reward given to a user for their first referral.
|
|
213
337
|
*/
|
|
214
338
|
firstReferralReward?: number | null;
|
|
339
|
+
/**
|
|
340
|
+
* Name of the GitHub branch to check for PR merge.
|
|
341
|
+
*/
|
|
342
|
+
githubBranchName?: string | null;
|
|
343
|
+
/**
|
|
344
|
+
* URL of the GitHub repository to check for star.
|
|
345
|
+
*/
|
|
346
|
+
githubRepoUrl?: string | null;
|
|
215
347
|
/**
|
|
216
348
|
* Flag indicating whether the fill source is included.
|
|
217
349
|
*/
|
|
@@ -220,10 +352,6 @@ export declare namespace RuleCreateResponse {
|
|
|
220
352
|
* Indicates if the item has never been sold.
|
|
221
353
|
*/
|
|
222
354
|
hasNeverSold?: boolean;
|
|
223
|
-
/**
|
|
224
|
-
* Flag indicating whether the order source is included.
|
|
225
|
-
*/
|
|
226
|
-
hasOrderSource?: boolean;
|
|
227
355
|
/**
|
|
228
356
|
* Indicates if the full royalty has been paid for items.
|
|
229
357
|
*/
|
|
@@ -240,10 +368,18 @@ export declare namespace RuleCreateResponse {
|
|
|
240
368
|
* URL of the image associated with the rule.
|
|
241
369
|
*/
|
|
242
370
|
imageUrl?: string | null;
|
|
371
|
+
/**
|
|
372
|
+
* If enabled, the first transaction done on the platform will complete this rule
|
|
373
|
+
*/
|
|
374
|
+
isCheckInOnEveryTxn?: boolean;
|
|
243
375
|
/**
|
|
244
376
|
* Indicates if the multiplier has been applied to rewards.
|
|
245
377
|
*/
|
|
246
378
|
isMultiplierApplied?: boolean;
|
|
379
|
+
/**
|
|
380
|
+
* Flag indicating if the rule is restricted to new users.
|
|
381
|
+
*/
|
|
382
|
+
isRestrictedToNewUsers?: boolean;
|
|
247
383
|
/**
|
|
248
384
|
* Flag indicating if rewards are applied retroactively.
|
|
249
385
|
*/
|
|
@@ -256,6 +392,10 @@ export declare namespace RuleCreateResponse {
|
|
|
256
392
|
* Optional link associated with the metadata.
|
|
257
393
|
*/
|
|
258
394
|
link?: string | null;
|
|
395
|
+
/**
|
|
396
|
+
* Liquidity pool details.
|
|
397
|
+
*/
|
|
398
|
+
liquidity?: Metadata.Liquidity;
|
|
259
399
|
/**
|
|
260
400
|
* Maximum quantity constraint for token holding.
|
|
261
401
|
*/
|
|
@@ -289,17 +429,33 @@ export declare namespace RuleCreateResponse {
|
|
|
289
429
|
*/
|
|
290
430
|
onlyRewardSingleTokenOwnership?: boolean | null;
|
|
291
431
|
/**
|
|
292
|
-
*
|
|
432
|
+
* Pre-generated text template that will be used to prefill the post content.
|
|
293
433
|
*/
|
|
294
|
-
|
|
434
|
+
preGeneratedPostText?: string | null;
|
|
295
435
|
/**
|
|
296
436
|
* Promotional code associated with the rule.
|
|
297
437
|
*/
|
|
298
438
|
promoCode?: string;
|
|
439
|
+
/**
|
|
440
|
+
* URL of the CSV file containing promo codes.
|
|
441
|
+
*/
|
|
442
|
+
promoCodeCsvUrl?: string;
|
|
443
|
+
/**
|
|
444
|
+
* Numbers of the promotional code to be generated.
|
|
445
|
+
*/
|
|
446
|
+
promoCodeLength?: number | null;
|
|
447
|
+
/**
|
|
448
|
+
* Type of the promotional code.
|
|
449
|
+
*/
|
|
450
|
+
promoCodeType?: 'code' | 'csv' | 'generate';
|
|
299
451
|
/**
|
|
300
452
|
* Array defining ranges and corresponding rewards.
|
|
301
453
|
*/
|
|
302
454
|
range?: Array<Metadata.Range>;
|
|
455
|
+
/**
|
|
456
|
+
* ID of the Reddit post.
|
|
457
|
+
*/
|
|
458
|
+
redditPostId?: string | null;
|
|
303
459
|
/**
|
|
304
460
|
* Object defining referral requirements.
|
|
305
461
|
*/
|
|
@@ -308,10 +464,55 @@ export declare namespace RuleCreateResponse {
|
|
|
308
464
|
* Lump sum reward given to a referrer.
|
|
309
465
|
*/
|
|
310
466
|
referrerReward?: number | null;
|
|
467
|
+
/**
|
|
468
|
+
* Loyalty currency ID of the referrer reward.
|
|
469
|
+
*/
|
|
470
|
+
referrerRewardLoyaltyCurrencyId?: string | null;
|
|
471
|
+
/**
|
|
472
|
+
* Flag indicating if the post link is required.
|
|
473
|
+
*/
|
|
474
|
+
requirePostLink?: boolean | null;
|
|
475
|
+
/**
|
|
476
|
+
* Flag indicating if media metadata is required.
|
|
477
|
+
*/
|
|
478
|
+
requirePostMediaLink?: boolean | null;
|
|
479
|
+
/**
|
|
480
|
+
* Flag indicating if the rule can also reward badges per range.
|
|
481
|
+
*/
|
|
482
|
+
rewardBadgePerRange?: boolean;
|
|
483
|
+
/**
|
|
484
|
+
* Flag indicating if the reward is rewarded by batch.
|
|
485
|
+
*/
|
|
486
|
+
rewardByBatch?: boolean | null;
|
|
487
|
+
/**
|
|
488
|
+
* Criteria to evaluate the reward.
|
|
489
|
+
*/
|
|
490
|
+
rewardCriteria?: 'IMPRESSIONS_COUNT' | 'ELIGIBLE_POST' | null;
|
|
491
|
+
/**
|
|
492
|
+
* Flag indicating if the reward is rewarded per action.
|
|
493
|
+
*/
|
|
494
|
+
rewardPerAction?: boolean | null;
|
|
311
495
|
/**
|
|
312
496
|
* Flag indicating if rewards are given per impression.
|
|
313
497
|
*/
|
|
314
498
|
rewardPerImpression?: boolean | null;
|
|
499
|
+
/**
|
|
500
|
+
* Flag indicating if the rule should reward based on value of traded tokens
|
|
501
|
+
* instead of count.
|
|
502
|
+
*/
|
|
503
|
+
rewardPerValue?: boolean;
|
|
504
|
+
/**
|
|
505
|
+
* Flag indicating if the rule should reward quality posts.
|
|
506
|
+
*/
|
|
507
|
+
rewardQualityPosts?: boolean;
|
|
508
|
+
/**
|
|
509
|
+
* Wallet address of the user can only be used if userId is not provided
|
|
510
|
+
*/
|
|
511
|
+
royaltyAddress?: string;
|
|
512
|
+
/**
|
|
513
|
+
* Royalty percentage of the item.
|
|
514
|
+
*/
|
|
515
|
+
royaltyPercentage?: number;
|
|
315
516
|
/**
|
|
316
517
|
* Currency associated with sales.
|
|
317
518
|
*/
|
|
@@ -335,7 +536,7 @@ export declare namespace RuleCreateResponse {
|
|
|
335
536
|
/**
|
|
336
537
|
* Social media platform associated with the rule.
|
|
337
538
|
*/
|
|
338
|
-
socialPlatform?: 'Custom' | 'Discord' | 'EpicGames' | 'Instagram' | 'Steam' | 'Telegram' | 'TikTok' | 'Twitch' | 'X(Twitter)' | 'YouTube' | null;
|
|
539
|
+
socialPlatform?: 'Custom' | 'Discord' | 'EpicGames' | 'Instagram' | 'Steam' | 'Telegram' | 'TikTok' | 'Twitch' | 'X(Twitter)' | 'YouTube' | 'Google' | 'GitHub' | 'Reddit' | null;
|
|
339
540
|
/**
|
|
340
541
|
* URL of the social platform's logo.
|
|
341
542
|
*/
|
|
@@ -344,10 +545,18 @@ export declare namespace RuleCreateResponse {
|
|
|
344
545
|
* Name of the social platform.
|
|
345
546
|
*/
|
|
346
547
|
socialPlatformName?: string | null;
|
|
548
|
+
/**
|
|
549
|
+
* ID of the Steam app.
|
|
550
|
+
*/
|
|
551
|
+
steamAppId?: string | null;
|
|
347
552
|
/**
|
|
348
553
|
* Array of streak milestones and corresponding rewards.
|
|
349
554
|
*/
|
|
350
555
|
streakArray?: Array<Metadata.StreakArray> | null;
|
|
556
|
+
/**
|
|
557
|
+
* Metadata for swap loyalty rules
|
|
558
|
+
*/
|
|
559
|
+
swap?: Metadata.Swap;
|
|
351
560
|
/**
|
|
352
561
|
* ID of the Telegram channel.
|
|
353
562
|
*/
|
|
@@ -360,6 +569,11 @@ export declare namespace RuleCreateResponse {
|
|
|
360
569
|
* Flag indicating if all contracts are tracked.
|
|
361
570
|
*/
|
|
362
571
|
trackAllContracts?: boolean | null;
|
|
572
|
+
/**
|
|
573
|
+
* Flag indicating if the progress is tracked. If enabled, the rule can only be
|
|
574
|
+
* completed once the progress is 100%.
|
|
575
|
+
*/
|
|
576
|
+
trackProgress?: boolean | null;
|
|
363
577
|
/**
|
|
364
578
|
* URL of the associated Twitter account.
|
|
365
579
|
*/
|
|
@@ -395,7 +609,15 @@ export declare namespace RuleCreateResponse {
|
|
|
395
609
|
/**
|
|
396
610
|
* Type of wallet associated with the rule.
|
|
397
611
|
*/
|
|
398
|
-
walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | null;
|
|
612
|
+
walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | 'cosmos' | 'ultra' | 'agw' | 'flow_cadence' | 'substrate' | null;
|
|
613
|
+
/**
|
|
614
|
+
* ID of the Youtube channel.
|
|
615
|
+
*/
|
|
616
|
+
youtubeChannelId?: string | null;
|
|
617
|
+
/**
|
|
618
|
+
* ID of the Youtube video.
|
|
619
|
+
*/
|
|
620
|
+
youtubeVideoId?: string | null;
|
|
399
621
|
}
|
|
400
622
|
namespace Metadata {
|
|
401
623
|
interface Collection {
|
|
@@ -410,7 +632,7 @@ export declare namespace RuleCreateResponse {
|
|
|
410
632
|
/**
|
|
411
633
|
* Blockchain network of the collection.
|
|
412
634
|
*/
|
|
413
|
-
network?: 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachainArtio' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | '
|
|
635
|
+
network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'skaleEuropa' | 'skaleCalypso' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
|
|
414
636
|
}
|
|
415
637
|
/**
|
|
416
638
|
* Object containing details for the call-to-action.
|
|
@@ -475,6 +697,49 @@ export declare namespace RuleCreateResponse {
|
|
|
475
697
|
*/
|
|
476
698
|
id: string;
|
|
477
699
|
}
|
|
700
|
+
/**
|
|
701
|
+
* Liquidity pool details.
|
|
702
|
+
*/
|
|
703
|
+
interface Liquidity {
|
|
704
|
+
/**
|
|
705
|
+
* Calculation type of the liquidity pool.
|
|
706
|
+
*/
|
|
707
|
+
calculationType?: 'fixed' | 'custom';
|
|
708
|
+
/**
|
|
709
|
+
* Custom function to calculate the the reward amount based on the liquidity
|
|
710
|
+
* provided per day. X is the reward amount, Y is the liquidity provided per day in
|
|
711
|
+
* USD.
|
|
712
|
+
*/
|
|
713
|
+
customFunction?: string;
|
|
714
|
+
/**
|
|
715
|
+
* Liquidity provided per day in USD
|
|
716
|
+
*/
|
|
717
|
+
liquidityPerDay?: number;
|
|
718
|
+
/**
|
|
719
|
+
* Blockchain network of the liquidity pool.
|
|
720
|
+
*/
|
|
721
|
+
network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'skaleEuropa' | 'skaleCalypso' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
|
|
722
|
+
/**
|
|
723
|
+
* Indicates if only in-range liquidity is rewarded.
|
|
724
|
+
*/
|
|
725
|
+
onlyRewardInRangeLiquidity?: boolean;
|
|
726
|
+
/**
|
|
727
|
+
* Array of liquidity pools associated with the rule.
|
|
728
|
+
*/
|
|
729
|
+
pools?: Array<Liquidity.Pool>;
|
|
730
|
+
/**
|
|
731
|
+
* Protocol of the liquidity pool.
|
|
732
|
+
*/
|
|
733
|
+
protocol?: string;
|
|
734
|
+
}
|
|
735
|
+
namespace Liquidity {
|
|
736
|
+
interface Pool {
|
|
737
|
+
/**
|
|
738
|
+
* Unique identifier of the liquidity pool.
|
|
739
|
+
*/
|
|
740
|
+
id: string;
|
|
741
|
+
}
|
|
742
|
+
}
|
|
478
743
|
interface Range {
|
|
479
744
|
/**
|
|
480
745
|
* Reward amount for this range.
|
|
@@ -488,6 +753,14 @@ export declare namespace RuleCreateResponse {
|
|
|
488
753
|
* Start value of the range.
|
|
489
754
|
*/
|
|
490
755
|
startRange: number;
|
|
756
|
+
/**
|
|
757
|
+
* ID of the loyalty badge for this range.
|
|
758
|
+
*/
|
|
759
|
+
loyaltyBadgeId?: string;
|
|
760
|
+
/**
|
|
761
|
+
* Amount of the loyalty multiplier for this range.
|
|
762
|
+
*/
|
|
763
|
+
loyaltyMultiplierAmount?: number;
|
|
491
764
|
}
|
|
492
765
|
/**
|
|
493
766
|
* Object defining referral requirements.
|
|
@@ -531,18 +804,14 @@ export declare namespace RuleCreateResponse {
|
|
|
531
804
|
* Object containing details of the associated smart contract.
|
|
532
805
|
*/
|
|
533
806
|
interface SmartContract {
|
|
534
|
-
/**
|
|
535
|
-
* ABI of the smart contract.
|
|
536
|
-
*/
|
|
537
|
-
abi?: string | null;
|
|
538
807
|
/**
|
|
539
808
|
* Mapping of addresses for the smart contract.
|
|
540
809
|
*/
|
|
541
810
|
addressMapping?: string | null;
|
|
542
811
|
/**
|
|
543
|
-
*
|
|
812
|
+
* Object containing details of the amount multiplier from the event.
|
|
544
813
|
*/
|
|
545
|
-
|
|
814
|
+
amountMultiplier?: SmartContract.AmountMultiplier | null;
|
|
546
815
|
/**
|
|
547
816
|
* ID of the smart contract.
|
|
548
817
|
*/
|
|
@@ -551,58 +820,28 @@ export declare namespace RuleCreateResponse {
|
|
|
551
820
|
* Criteria to evaluate the smart contract event.
|
|
552
821
|
*/
|
|
553
822
|
criteria?: 'everyEvent' | 'byParameter' | null;
|
|
554
|
-
/**
|
|
555
|
-
* Time range applied to the rule.
|
|
556
|
-
*/
|
|
557
|
-
customRange?: SmartContract.CustomRange | null;
|
|
558
823
|
/**
|
|
559
824
|
* Event emitted by the smart contract.
|
|
560
825
|
*/
|
|
561
826
|
event?: string | null;
|
|
562
|
-
/**
|
|
563
|
-
* Maximum value allowed for the parameter.
|
|
564
|
-
*/
|
|
565
|
-
max?: number | null;
|
|
566
827
|
/**
|
|
567
828
|
* Array of parameters for the smart contract.
|
|
568
829
|
*/
|
|
569
830
|
params?: Array<SmartContract.Param> | null;
|
|
570
831
|
/**
|
|
571
|
-
*
|
|
572
|
-
*/
|
|
573
|
-
withBonus?: boolean | null;
|
|
574
|
-
/**
|
|
575
|
-
* Flag indicating if a custom range is applied.
|
|
832
|
+
* Type of the smart contract interaction.
|
|
576
833
|
*/
|
|
577
|
-
|
|
578
|
-
/**
|
|
579
|
-
* Flag indicating if a maximum limit is applied.
|
|
580
|
-
*/
|
|
581
|
-
withMax?: boolean | null;
|
|
834
|
+
type?: 'function' | 'event' | null;
|
|
582
835
|
}
|
|
583
836
|
namespace SmartContract {
|
|
584
|
-
interface Bonus {
|
|
585
|
-
/**
|
|
586
|
-
* Amount of the bonus.
|
|
587
|
-
*/
|
|
588
|
-
amount?: number | null;
|
|
589
|
-
/**
|
|
590
|
-
* Number of times the bonus is applied.
|
|
591
|
-
*/
|
|
592
|
-
count?: number | null;
|
|
593
|
-
}
|
|
594
837
|
/**
|
|
595
|
-
*
|
|
838
|
+
* Object containing details of the amount multiplier from the event.
|
|
596
839
|
*/
|
|
597
|
-
interface
|
|
840
|
+
interface AmountMultiplier {
|
|
598
841
|
/**
|
|
599
|
-
*
|
|
842
|
+
* Mapping of the value for the smart contract.
|
|
600
843
|
*/
|
|
601
|
-
|
|
602
|
-
/**
|
|
603
|
-
* Start time of the custom range.
|
|
604
|
-
*/
|
|
605
|
-
startsAt?: string | null;
|
|
844
|
+
valueMapping?: string | null;
|
|
606
845
|
}
|
|
607
846
|
interface Param {
|
|
608
847
|
/**
|
|
@@ -639,6 +878,24 @@ export declare namespace RuleCreateResponse {
|
|
|
639
878
|
*/
|
|
640
879
|
streakMilestone: number;
|
|
641
880
|
}
|
|
881
|
+
/**
|
|
882
|
+
* Metadata for swap loyalty rules
|
|
883
|
+
*/
|
|
884
|
+
interface Swap {
|
|
885
|
+
provider?: 'any' | 'relay' | 'lifi';
|
|
886
|
+
relayReferrerId?: string;
|
|
887
|
+
requireCrossChainSwap?: boolean;
|
|
888
|
+
swappedToChain?: 'any' | number | string;
|
|
889
|
+
swappedToTokens?: Array<Swap.SwappedToToken>;
|
|
890
|
+
tokenMode?: 'any' | 'specific';
|
|
891
|
+
trackTokenAmount?: boolean;
|
|
892
|
+
}
|
|
893
|
+
namespace Swap {
|
|
894
|
+
interface SwappedToToken {
|
|
895
|
+
address: string;
|
|
896
|
+
chainId: string;
|
|
897
|
+
}
|
|
898
|
+
}
|
|
642
899
|
}
|
|
643
900
|
interface Collection {
|
|
644
901
|
/**
|
|
@@ -648,7 +905,11 @@ export declare namespace RuleCreateResponse {
|
|
|
648
905
|
/**
|
|
649
906
|
* Blockchain network for the collection
|
|
650
907
|
*/
|
|
651
|
-
network: 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachainArtio' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | '
|
|
908
|
+
network: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'skaleEuropa' | 'skaleCalypso' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
|
|
909
|
+
/**
|
|
910
|
+
* Symbol of the collection.
|
|
911
|
+
*/
|
|
912
|
+
symbol?: string;
|
|
652
913
|
}
|
|
653
914
|
}
|
|
654
915
|
export interface RuleUpdateResponse {
|
|
@@ -665,10 +926,14 @@ export interface RuleUpdateResponse {
|
|
|
665
926
|
* Name of the loyalty rule
|
|
666
927
|
*/
|
|
667
928
|
name: string;
|
|
929
|
+
/**
|
|
930
|
+
* The type of claim for the reward
|
|
931
|
+
*/
|
|
932
|
+
claimType?: 'manual' | 'auto' | null;
|
|
668
933
|
/**
|
|
669
934
|
* Blockchain address of the associated collection
|
|
670
935
|
*/
|
|
671
|
-
collectionAddress?: string;
|
|
936
|
+
collectionAddress?: string | null;
|
|
672
937
|
/**
|
|
673
938
|
* List of associated collections
|
|
674
939
|
*/
|
|
@@ -693,10 +958,18 @@ export interface RuleUpdateResponse {
|
|
|
693
958
|
* Effective start time of the rule
|
|
694
959
|
*/
|
|
695
960
|
effectiveStartTime?: string | null;
|
|
961
|
+
/**
|
|
962
|
+
* ID of the external integration
|
|
963
|
+
*/
|
|
964
|
+
externalIntegrationId?: string | null;
|
|
696
965
|
/**
|
|
697
966
|
* Frequency of the rule execution
|
|
698
967
|
*/
|
|
699
968
|
frequency?: 'none' | 'once' | 'daily' | 'weekly' | 'monthly' | 'immediately';
|
|
969
|
+
/**
|
|
970
|
+
* Optional stratus function id for the rule
|
|
971
|
+
*/
|
|
972
|
+
functionId?: string | null;
|
|
700
973
|
/**
|
|
701
974
|
* Whether to hide this rule in the user interface
|
|
702
975
|
*/
|
|
@@ -704,7 +977,7 @@ export interface RuleUpdateResponse {
|
|
|
704
977
|
/**
|
|
705
978
|
* Time interval for recurring rule execution
|
|
706
979
|
*/
|
|
707
|
-
interval?: 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | null;
|
|
980
|
+
interval?: 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | 'unlimited' | null;
|
|
708
981
|
/**
|
|
709
982
|
* Whether this rule is required for participation
|
|
710
983
|
*/
|
|
@@ -713,6 +986,16 @@ export interface RuleUpdateResponse {
|
|
|
713
986
|
* ID of the rule group section to associate with the rule
|
|
714
987
|
*/
|
|
715
988
|
loyaltyRuleGroupId?: (string & {}) | 'no-section' | null;
|
|
989
|
+
/**
|
|
990
|
+
* The interval for the max amount. Available for the smart contract and external
|
|
991
|
+
* rules.
|
|
992
|
+
*/
|
|
993
|
+
maxAmountInterval?: 'daily' | 'weekly' | 'monthly' | 'lifetime' | null;
|
|
994
|
+
/**
|
|
995
|
+
* The maximum amount of points a user can earn per interval. Available for the
|
|
996
|
+
* smart contract and external rules.
|
|
997
|
+
*/
|
|
998
|
+
maxAmountPerInterval?: number | null;
|
|
716
999
|
/**
|
|
717
1000
|
* URL of the media to be displayed
|
|
718
1001
|
*/
|
|
@@ -724,23 +1007,35 @@ export interface RuleUpdateResponse {
|
|
|
724
1007
|
/**
|
|
725
1008
|
* Blockchain network where the rule will apply
|
|
726
1009
|
*/
|
|
727
|
-
network?: 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachainArtio' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | '
|
|
1010
|
+
network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'skaleEuropa' | 'skaleCalypso' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
|
|
728
1011
|
/**
|
|
729
1012
|
* ID for associated OAuth credentials
|
|
730
1013
|
*/
|
|
731
1014
|
oauthCredentialsId?: string | null;
|
|
1015
|
+
/**
|
|
1016
|
+
* The lifetime of the reward
|
|
1017
|
+
*/
|
|
1018
|
+
rewardLifetime?: 'permanent' | 'dynamic' | null;
|
|
732
1019
|
/**
|
|
733
1020
|
* Type of reward issued by this rule
|
|
734
1021
|
*/
|
|
735
|
-
rewardType?: 'points' | 'multiplier';
|
|
1022
|
+
rewardType?: 'points' | 'multiplier' | 'badge';
|
|
1023
|
+
/**
|
|
1024
|
+
* URL of the Shopify store
|
|
1025
|
+
*/
|
|
1026
|
+
shopifyStoreUrl?: string | null;
|
|
1027
|
+
/**
|
|
1028
|
+
* Whether to show this rule before the start time
|
|
1029
|
+
*/
|
|
1030
|
+
showBeforeStart?: boolean;
|
|
736
1031
|
/**
|
|
737
1032
|
* Start time for the loyalty rule
|
|
738
1033
|
*/
|
|
739
1034
|
startTime?: string | null;
|
|
740
1035
|
/**
|
|
741
|
-
* Optional subscription
|
|
1036
|
+
* Optional stratus subscription id for the rule
|
|
742
1037
|
*/
|
|
743
|
-
|
|
1038
|
+
subscriptionId?: string | null;
|
|
744
1039
|
}
|
|
745
1040
|
export declare namespace RuleUpdateResponse {
|
|
746
1041
|
interface Collection {
|
|
@@ -751,12 +1046,25 @@ export declare namespace RuleUpdateResponse {
|
|
|
751
1046
|
/**
|
|
752
1047
|
* Blockchain network for the collection
|
|
753
1048
|
*/
|
|
754
|
-
network: 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachainArtio' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | '
|
|
1049
|
+
network: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'skaleEuropa' | 'skaleCalypso' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
|
|
1050
|
+
/**
|
|
1051
|
+
* Symbol of the collection.
|
|
1052
|
+
*/
|
|
1053
|
+
symbol?: string;
|
|
755
1054
|
}
|
|
756
1055
|
/**
|
|
757
1056
|
* Additional metadata for the loyalty rule
|
|
758
1057
|
*/
|
|
759
1058
|
interface Metadata {
|
|
1059
|
+
/**
|
|
1060
|
+
* Array of loyalty rule IDs that count as check-in when completed. If ["any"] then
|
|
1061
|
+
* any rule completions count as check-in.
|
|
1062
|
+
*/
|
|
1063
|
+
autoCheckInRuleIds?: Array<(string & {}) | 'any'> | null;
|
|
1064
|
+
/**
|
|
1065
|
+
* Number of tokens per batch.
|
|
1066
|
+
*/
|
|
1067
|
+
batchSize?: number | null;
|
|
760
1068
|
/**
|
|
761
1069
|
* Text displayed on the action button.
|
|
762
1070
|
*/
|
|
@@ -776,7 +1084,7 @@ export declare namespace RuleUpdateResponse {
|
|
|
776
1084
|
/**
|
|
777
1085
|
* Text to check in the Twitter post, username, or bio.
|
|
778
1086
|
*/
|
|
779
|
-
checkText?: string | null;
|
|
1087
|
+
checkText?: string | Array<string> | null;
|
|
780
1088
|
/**
|
|
781
1089
|
* Array of collections associated with the rule.
|
|
782
1090
|
*/
|
|
@@ -784,7 +1092,13 @@ export declare namespace RuleUpdateResponse {
|
|
|
784
1092
|
/**
|
|
785
1093
|
* Conditions for completing the profile.
|
|
786
1094
|
*/
|
|
787
|
-
completeProfileConditions?:
|
|
1095
|
+
completeProfileConditions?: {
|
|
1096
|
+
[key: string]: boolean;
|
|
1097
|
+
} | null;
|
|
1098
|
+
/**
|
|
1099
|
+
* Description of the external rule condition (only for external rules)
|
|
1100
|
+
*/
|
|
1101
|
+
conditionDescription?: string;
|
|
788
1102
|
/**
|
|
789
1103
|
* Object containing details for the call-to-action.
|
|
790
1104
|
*/
|
|
@@ -793,6 +1107,10 @@ export declare namespace RuleUpdateResponse {
|
|
|
793
1107
|
* API key for custom rewards integration.
|
|
794
1108
|
*/
|
|
795
1109
|
customRewardsApiKey?: string;
|
|
1110
|
+
/**
|
|
1111
|
+
* Flag indicating if the rule should use direct RPC to get the balance of tokens.
|
|
1112
|
+
*/
|
|
1113
|
+
directRpc?: boolean;
|
|
796
1114
|
/**
|
|
797
1115
|
* Array of Discord servers, channels, and roles to join.
|
|
798
1116
|
*/
|
|
@@ -813,6 +1131,10 @@ export declare namespace RuleUpdateResponse {
|
|
|
813
1131
|
* Flag indicating whether the verified multiplier is enabled.
|
|
814
1132
|
*/
|
|
815
1133
|
enableVerifiedMultiplier?: boolean;
|
|
1134
|
+
/**
|
|
1135
|
+
* Type of ERC20 token for the loyalty rule.
|
|
1136
|
+
*/
|
|
1137
|
+
erc20Type?: 'erc20' | 'native';
|
|
816
1138
|
/**
|
|
817
1139
|
* Fill source of the order for the token sale
|
|
818
1140
|
*/
|
|
@@ -821,6 +1143,14 @@ export declare namespace RuleUpdateResponse {
|
|
|
821
1143
|
* Percentage reward given to a user for their first referral.
|
|
822
1144
|
*/
|
|
823
1145
|
firstReferralReward?: number | null;
|
|
1146
|
+
/**
|
|
1147
|
+
* Name of the GitHub branch to check for PR merge.
|
|
1148
|
+
*/
|
|
1149
|
+
githubBranchName?: string | null;
|
|
1150
|
+
/**
|
|
1151
|
+
* URL of the GitHub repository to check for star.
|
|
1152
|
+
*/
|
|
1153
|
+
githubRepoUrl?: string | null;
|
|
824
1154
|
/**
|
|
825
1155
|
* Flag indicating whether the fill source is included.
|
|
826
1156
|
*/
|
|
@@ -829,10 +1159,6 @@ export declare namespace RuleUpdateResponse {
|
|
|
829
1159
|
* Indicates if the item has never been sold.
|
|
830
1160
|
*/
|
|
831
1161
|
hasNeverSold?: boolean;
|
|
832
|
-
/**
|
|
833
|
-
* Flag indicating whether the order source is included.
|
|
834
|
-
*/
|
|
835
|
-
hasOrderSource?: boolean;
|
|
836
1162
|
/**
|
|
837
1163
|
* Indicates if the full royalty has been paid for items.
|
|
838
1164
|
*/
|
|
@@ -849,10 +1175,18 @@ export declare namespace RuleUpdateResponse {
|
|
|
849
1175
|
* URL of the image associated with the rule.
|
|
850
1176
|
*/
|
|
851
1177
|
imageUrl?: string | null;
|
|
1178
|
+
/**
|
|
1179
|
+
* If enabled, the first transaction done on the platform will complete this rule
|
|
1180
|
+
*/
|
|
1181
|
+
isCheckInOnEveryTxn?: boolean;
|
|
852
1182
|
/**
|
|
853
1183
|
* Indicates if the multiplier has been applied to rewards.
|
|
854
1184
|
*/
|
|
855
1185
|
isMultiplierApplied?: boolean;
|
|
1186
|
+
/**
|
|
1187
|
+
* Flag indicating if the rule is restricted to new users.
|
|
1188
|
+
*/
|
|
1189
|
+
isRestrictedToNewUsers?: boolean;
|
|
856
1190
|
/**
|
|
857
1191
|
* Flag indicating if rewards are applied retroactively.
|
|
858
1192
|
*/
|
|
@@ -865,6 +1199,10 @@ export declare namespace RuleUpdateResponse {
|
|
|
865
1199
|
* Optional link associated with the metadata.
|
|
866
1200
|
*/
|
|
867
1201
|
link?: string | null;
|
|
1202
|
+
/**
|
|
1203
|
+
* Liquidity pool details.
|
|
1204
|
+
*/
|
|
1205
|
+
liquidity?: Metadata.Liquidity;
|
|
868
1206
|
/**
|
|
869
1207
|
* Maximum quantity constraint for token holding.
|
|
870
1208
|
*/
|
|
@@ -898,17 +1236,33 @@ export declare namespace RuleUpdateResponse {
|
|
|
898
1236
|
*/
|
|
899
1237
|
onlyRewardSingleTokenOwnership?: boolean | null;
|
|
900
1238
|
/**
|
|
901
|
-
*
|
|
1239
|
+
* Pre-generated text template that will be used to prefill the post content.
|
|
902
1240
|
*/
|
|
903
|
-
|
|
1241
|
+
preGeneratedPostText?: string | null;
|
|
904
1242
|
/**
|
|
905
1243
|
* Promotional code associated with the rule.
|
|
906
1244
|
*/
|
|
907
1245
|
promoCode?: string;
|
|
1246
|
+
/**
|
|
1247
|
+
* URL of the CSV file containing promo codes.
|
|
1248
|
+
*/
|
|
1249
|
+
promoCodeCsvUrl?: string;
|
|
1250
|
+
/**
|
|
1251
|
+
* Numbers of the promotional code to be generated.
|
|
1252
|
+
*/
|
|
1253
|
+
promoCodeLength?: number | null;
|
|
1254
|
+
/**
|
|
1255
|
+
* Type of the promotional code.
|
|
1256
|
+
*/
|
|
1257
|
+
promoCodeType?: 'code' | 'csv' | 'generate';
|
|
908
1258
|
/**
|
|
909
1259
|
* Array defining ranges and corresponding rewards.
|
|
910
1260
|
*/
|
|
911
1261
|
range?: Array<Metadata.Range>;
|
|
1262
|
+
/**
|
|
1263
|
+
* ID of the Reddit post.
|
|
1264
|
+
*/
|
|
1265
|
+
redditPostId?: string | null;
|
|
912
1266
|
/**
|
|
913
1267
|
* Object defining referral requirements.
|
|
914
1268
|
*/
|
|
@@ -917,10 +1271,55 @@ export declare namespace RuleUpdateResponse {
|
|
|
917
1271
|
* Lump sum reward given to a referrer.
|
|
918
1272
|
*/
|
|
919
1273
|
referrerReward?: number | null;
|
|
1274
|
+
/**
|
|
1275
|
+
* Loyalty currency ID of the referrer reward.
|
|
1276
|
+
*/
|
|
1277
|
+
referrerRewardLoyaltyCurrencyId?: string | null;
|
|
1278
|
+
/**
|
|
1279
|
+
* Flag indicating if the post link is required.
|
|
1280
|
+
*/
|
|
1281
|
+
requirePostLink?: boolean | null;
|
|
1282
|
+
/**
|
|
1283
|
+
* Flag indicating if media metadata is required.
|
|
1284
|
+
*/
|
|
1285
|
+
requirePostMediaLink?: boolean | null;
|
|
1286
|
+
/**
|
|
1287
|
+
* Flag indicating if the rule can also reward badges per range.
|
|
1288
|
+
*/
|
|
1289
|
+
rewardBadgePerRange?: boolean;
|
|
1290
|
+
/**
|
|
1291
|
+
* Flag indicating if the reward is rewarded by batch.
|
|
1292
|
+
*/
|
|
1293
|
+
rewardByBatch?: boolean | null;
|
|
1294
|
+
/**
|
|
1295
|
+
* Criteria to evaluate the reward.
|
|
1296
|
+
*/
|
|
1297
|
+
rewardCriteria?: 'IMPRESSIONS_COUNT' | 'ELIGIBLE_POST' | null;
|
|
1298
|
+
/**
|
|
1299
|
+
* Flag indicating if the reward is rewarded per action.
|
|
1300
|
+
*/
|
|
1301
|
+
rewardPerAction?: boolean | null;
|
|
920
1302
|
/**
|
|
921
1303
|
* Flag indicating if rewards are given per impression.
|
|
922
1304
|
*/
|
|
923
1305
|
rewardPerImpression?: boolean | null;
|
|
1306
|
+
/**
|
|
1307
|
+
* Flag indicating if the rule should reward based on value of traded tokens
|
|
1308
|
+
* instead of count.
|
|
1309
|
+
*/
|
|
1310
|
+
rewardPerValue?: boolean;
|
|
1311
|
+
/**
|
|
1312
|
+
* Flag indicating if the rule should reward quality posts.
|
|
1313
|
+
*/
|
|
1314
|
+
rewardQualityPosts?: boolean;
|
|
1315
|
+
/**
|
|
1316
|
+
* Wallet address of the user can only be used if userId is not provided
|
|
1317
|
+
*/
|
|
1318
|
+
royaltyAddress?: string;
|
|
1319
|
+
/**
|
|
1320
|
+
* Royalty percentage of the item.
|
|
1321
|
+
*/
|
|
1322
|
+
royaltyPercentage?: number;
|
|
924
1323
|
/**
|
|
925
1324
|
* Currency associated with sales.
|
|
926
1325
|
*/
|
|
@@ -944,7 +1343,7 @@ export declare namespace RuleUpdateResponse {
|
|
|
944
1343
|
/**
|
|
945
1344
|
* Social media platform associated with the rule.
|
|
946
1345
|
*/
|
|
947
|
-
socialPlatform?: 'Custom' | 'Discord' | 'EpicGames' | 'Instagram' | 'Steam' | 'Telegram' | 'TikTok' | 'Twitch' | 'X(Twitter)' | 'YouTube' | null;
|
|
1346
|
+
socialPlatform?: 'Custom' | 'Discord' | 'EpicGames' | 'Instagram' | 'Steam' | 'Telegram' | 'TikTok' | 'Twitch' | 'X(Twitter)' | 'YouTube' | 'Google' | 'GitHub' | 'Reddit' | null;
|
|
948
1347
|
/**
|
|
949
1348
|
* URL of the social platform's logo.
|
|
950
1349
|
*/
|
|
@@ -953,10 +1352,18 @@ export declare namespace RuleUpdateResponse {
|
|
|
953
1352
|
* Name of the social platform.
|
|
954
1353
|
*/
|
|
955
1354
|
socialPlatformName?: string | null;
|
|
1355
|
+
/**
|
|
1356
|
+
* ID of the Steam app.
|
|
1357
|
+
*/
|
|
1358
|
+
steamAppId?: string | null;
|
|
956
1359
|
/**
|
|
957
1360
|
* Array of streak milestones and corresponding rewards.
|
|
958
1361
|
*/
|
|
959
1362
|
streakArray?: Array<Metadata.StreakArray> | null;
|
|
1363
|
+
/**
|
|
1364
|
+
* Metadata for swap loyalty rules
|
|
1365
|
+
*/
|
|
1366
|
+
swap?: Metadata.Swap;
|
|
960
1367
|
/**
|
|
961
1368
|
* ID of the Telegram channel.
|
|
962
1369
|
*/
|
|
@@ -969,6 +1376,11 @@ export declare namespace RuleUpdateResponse {
|
|
|
969
1376
|
* Flag indicating if all contracts are tracked.
|
|
970
1377
|
*/
|
|
971
1378
|
trackAllContracts?: boolean | null;
|
|
1379
|
+
/**
|
|
1380
|
+
* Flag indicating if the progress is tracked. If enabled, the rule can only be
|
|
1381
|
+
* completed once the progress is 100%.
|
|
1382
|
+
*/
|
|
1383
|
+
trackProgress?: boolean | null;
|
|
972
1384
|
/**
|
|
973
1385
|
* URL of the associated Twitter account.
|
|
974
1386
|
*/
|
|
@@ -1004,7 +1416,15 @@ export declare namespace RuleUpdateResponse {
|
|
|
1004
1416
|
/**
|
|
1005
1417
|
* Type of wallet associated with the rule.
|
|
1006
1418
|
*/
|
|
1007
|
-
walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | null;
|
|
1419
|
+
walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | 'cosmos' | 'ultra' | 'agw' | 'flow_cadence' | 'substrate' | null;
|
|
1420
|
+
/**
|
|
1421
|
+
* ID of the Youtube channel.
|
|
1422
|
+
*/
|
|
1423
|
+
youtubeChannelId?: string | null;
|
|
1424
|
+
/**
|
|
1425
|
+
* ID of the Youtube video.
|
|
1426
|
+
*/
|
|
1427
|
+
youtubeVideoId?: string | null;
|
|
1008
1428
|
}
|
|
1009
1429
|
namespace Metadata {
|
|
1010
1430
|
interface Collection {
|
|
@@ -1019,7 +1439,7 @@ export declare namespace RuleUpdateResponse {
|
|
|
1019
1439
|
/**
|
|
1020
1440
|
* Blockchain network of the collection.
|
|
1021
1441
|
*/
|
|
1022
|
-
network?: 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachainArtio' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | '
|
|
1442
|
+
network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'skaleEuropa' | 'skaleCalypso' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
|
|
1023
1443
|
}
|
|
1024
1444
|
/**
|
|
1025
1445
|
* Object containing details for the call-to-action.
|
|
@@ -1084,6 +1504,49 @@ export declare namespace RuleUpdateResponse {
|
|
|
1084
1504
|
*/
|
|
1085
1505
|
id: string;
|
|
1086
1506
|
}
|
|
1507
|
+
/**
|
|
1508
|
+
* Liquidity pool details.
|
|
1509
|
+
*/
|
|
1510
|
+
interface Liquidity {
|
|
1511
|
+
/**
|
|
1512
|
+
* Calculation type of the liquidity pool.
|
|
1513
|
+
*/
|
|
1514
|
+
calculationType?: 'fixed' | 'custom';
|
|
1515
|
+
/**
|
|
1516
|
+
* Custom function to calculate the the reward amount based on the liquidity
|
|
1517
|
+
* provided per day. X is the reward amount, Y is the liquidity provided per day in
|
|
1518
|
+
* USD.
|
|
1519
|
+
*/
|
|
1520
|
+
customFunction?: string;
|
|
1521
|
+
/**
|
|
1522
|
+
* Liquidity provided per day in USD
|
|
1523
|
+
*/
|
|
1524
|
+
liquidityPerDay?: number;
|
|
1525
|
+
/**
|
|
1526
|
+
* Blockchain network of the liquidity pool.
|
|
1527
|
+
*/
|
|
1528
|
+
network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'skaleEuropa' | 'skaleCalypso' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
|
|
1529
|
+
/**
|
|
1530
|
+
* Indicates if only in-range liquidity is rewarded.
|
|
1531
|
+
*/
|
|
1532
|
+
onlyRewardInRangeLiquidity?: boolean;
|
|
1533
|
+
/**
|
|
1534
|
+
* Array of liquidity pools associated with the rule.
|
|
1535
|
+
*/
|
|
1536
|
+
pools?: Array<Liquidity.Pool>;
|
|
1537
|
+
/**
|
|
1538
|
+
* Protocol of the liquidity pool.
|
|
1539
|
+
*/
|
|
1540
|
+
protocol?: string;
|
|
1541
|
+
}
|
|
1542
|
+
namespace Liquidity {
|
|
1543
|
+
interface Pool {
|
|
1544
|
+
/**
|
|
1545
|
+
* Unique identifier of the liquidity pool.
|
|
1546
|
+
*/
|
|
1547
|
+
id: string;
|
|
1548
|
+
}
|
|
1549
|
+
}
|
|
1087
1550
|
interface Range {
|
|
1088
1551
|
/**
|
|
1089
1552
|
* Reward amount for this range.
|
|
@@ -1097,6 +1560,14 @@ export declare namespace RuleUpdateResponse {
|
|
|
1097
1560
|
* Start value of the range.
|
|
1098
1561
|
*/
|
|
1099
1562
|
startRange: number;
|
|
1563
|
+
/**
|
|
1564
|
+
* ID of the loyalty badge for this range.
|
|
1565
|
+
*/
|
|
1566
|
+
loyaltyBadgeId?: string;
|
|
1567
|
+
/**
|
|
1568
|
+
* Amount of the loyalty multiplier for this range.
|
|
1569
|
+
*/
|
|
1570
|
+
loyaltyMultiplierAmount?: number;
|
|
1100
1571
|
}
|
|
1101
1572
|
/**
|
|
1102
1573
|
* Object defining referral requirements.
|
|
@@ -1140,18 +1611,14 @@ export declare namespace RuleUpdateResponse {
|
|
|
1140
1611
|
* Object containing details of the associated smart contract.
|
|
1141
1612
|
*/
|
|
1142
1613
|
interface SmartContract {
|
|
1143
|
-
/**
|
|
1144
|
-
* ABI of the smart contract.
|
|
1145
|
-
*/
|
|
1146
|
-
abi?: string | null;
|
|
1147
1614
|
/**
|
|
1148
1615
|
* Mapping of addresses for the smart contract.
|
|
1149
1616
|
*/
|
|
1150
1617
|
addressMapping?: string | null;
|
|
1151
1618
|
/**
|
|
1152
|
-
*
|
|
1619
|
+
* Object containing details of the amount multiplier from the event.
|
|
1153
1620
|
*/
|
|
1154
|
-
|
|
1621
|
+
amountMultiplier?: SmartContract.AmountMultiplier | null;
|
|
1155
1622
|
/**
|
|
1156
1623
|
* ID of the smart contract.
|
|
1157
1624
|
*/
|
|
@@ -1160,58 +1627,28 @@ export declare namespace RuleUpdateResponse {
|
|
|
1160
1627
|
* Criteria to evaluate the smart contract event.
|
|
1161
1628
|
*/
|
|
1162
1629
|
criteria?: 'everyEvent' | 'byParameter' | null;
|
|
1163
|
-
/**
|
|
1164
|
-
* Time range applied to the rule.
|
|
1165
|
-
*/
|
|
1166
|
-
customRange?: SmartContract.CustomRange | null;
|
|
1167
1630
|
/**
|
|
1168
1631
|
* Event emitted by the smart contract.
|
|
1169
1632
|
*/
|
|
1170
1633
|
event?: string | null;
|
|
1171
|
-
/**
|
|
1172
|
-
* Maximum value allowed for the parameter.
|
|
1173
|
-
*/
|
|
1174
|
-
max?: number | null;
|
|
1175
1634
|
/**
|
|
1176
1635
|
* Array of parameters for the smart contract.
|
|
1177
1636
|
*/
|
|
1178
1637
|
params?: Array<SmartContract.Param> | null;
|
|
1179
1638
|
/**
|
|
1180
|
-
*
|
|
1181
|
-
*/
|
|
1182
|
-
withBonus?: boolean | null;
|
|
1183
|
-
/**
|
|
1184
|
-
* Flag indicating if a custom range is applied.
|
|
1639
|
+
* Type of the smart contract interaction.
|
|
1185
1640
|
*/
|
|
1186
|
-
|
|
1187
|
-
/**
|
|
1188
|
-
* Flag indicating if a maximum limit is applied.
|
|
1189
|
-
*/
|
|
1190
|
-
withMax?: boolean | null;
|
|
1641
|
+
type?: 'function' | 'event' | null;
|
|
1191
1642
|
}
|
|
1192
1643
|
namespace SmartContract {
|
|
1193
|
-
interface Bonus {
|
|
1194
|
-
/**
|
|
1195
|
-
* Amount of the bonus.
|
|
1196
|
-
*/
|
|
1197
|
-
amount?: number | null;
|
|
1198
|
-
/**
|
|
1199
|
-
* Number of times the bonus is applied.
|
|
1200
|
-
*/
|
|
1201
|
-
count?: number | null;
|
|
1202
|
-
}
|
|
1203
1644
|
/**
|
|
1204
|
-
*
|
|
1645
|
+
* Object containing details of the amount multiplier from the event.
|
|
1205
1646
|
*/
|
|
1206
|
-
interface
|
|
1647
|
+
interface AmountMultiplier {
|
|
1207
1648
|
/**
|
|
1208
|
-
*
|
|
1649
|
+
* Mapping of the value for the smart contract.
|
|
1209
1650
|
*/
|
|
1210
|
-
|
|
1211
|
-
/**
|
|
1212
|
-
* Start time of the custom range.
|
|
1213
|
-
*/
|
|
1214
|
-
startsAt?: string | null;
|
|
1651
|
+
valueMapping?: string | null;
|
|
1215
1652
|
}
|
|
1216
1653
|
interface Param {
|
|
1217
1654
|
/**
|
|
@@ -1248,6 +1685,24 @@ export declare namespace RuleUpdateResponse {
|
|
|
1248
1685
|
*/
|
|
1249
1686
|
streakMilestone: number;
|
|
1250
1687
|
}
|
|
1688
|
+
/**
|
|
1689
|
+
* Metadata for swap loyalty rules
|
|
1690
|
+
*/
|
|
1691
|
+
interface Swap {
|
|
1692
|
+
provider?: 'any' | 'relay' | 'lifi';
|
|
1693
|
+
relayReferrerId?: string;
|
|
1694
|
+
requireCrossChainSwap?: boolean;
|
|
1695
|
+
swappedToChain?: 'any' | number | string;
|
|
1696
|
+
swappedToTokens?: Array<Swap.SwappedToToken>;
|
|
1697
|
+
tokenMode?: 'any' | 'specific';
|
|
1698
|
+
trackTokenAmount?: boolean;
|
|
1699
|
+
}
|
|
1700
|
+
namespace Swap {
|
|
1701
|
+
interface SwappedToToken {
|
|
1702
|
+
address: string;
|
|
1703
|
+
chainId: string;
|
|
1704
|
+
}
|
|
1705
|
+
}
|
|
1251
1706
|
}
|
|
1252
1707
|
}
|
|
1253
1708
|
export interface RuleListResponse {
|
|
@@ -1255,9 +1710,6 @@ export interface RuleListResponse {
|
|
|
1255
1710
|
hasNextPage: boolean;
|
|
1256
1711
|
}
|
|
1257
1712
|
export declare namespace RuleListResponse {
|
|
1258
|
-
/**
|
|
1259
|
-
* Schema for a loyalty rule
|
|
1260
|
-
*/
|
|
1261
1713
|
interface Data {
|
|
1262
1714
|
/**
|
|
1263
1715
|
* Unique identifier for the loyalty rule
|
|
@@ -1266,7 +1718,7 @@ export declare namespace RuleListResponse {
|
|
|
1266
1718
|
/**
|
|
1267
1719
|
* Amount associated with the loyalty rule
|
|
1268
1720
|
*/
|
|
1269
|
-
amount: number;
|
|
1721
|
+
amount: number | null;
|
|
1270
1722
|
/**
|
|
1271
1723
|
* Timestamp when the loyalty rule was created
|
|
1272
1724
|
*/
|
|
@@ -1275,14 +1727,38 @@ export declare namespace RuleListResponse {
|
|
|
1275
1727
|
* Timestamp when the loyalty rule was deleted (if applicable)
|
|
1276
1728
|
*/
|
|
1277
1729
|
deletedAt: string | null;
|
|
1730
|
+
/**
|
|
1731
|
+
* Description of the loyalty rule
|
|
1732
|
+
*/
|
|
1733
|
+
description: string;
|
|
1734
|
+
/**
|
|
1735
|
+
* End time of the loyalty rule
|
|
1736
|
+
*/
|
|
1737
|
+
endTime: string | null;
|
|
1278
1738
|
/**
|
|
1279
1739
|
* Frequency of the loyalty rule
|
|
1280
1740
|
*/
|
|
1281
1741
|
frequency: string;
|
|
1742
|
+
/**
|
|
1743
|
+
* Chains attached to the loyalty rule
|
|
1744
|
+
*/
|
|
1745
|
+
loyaltyRuleChain: Array<Data.LoyaltyRuleChain>;
|
|
1746
|
+
/**
|
|
1747
|
+
* Name of the loyalty rule
|
|
1748
|
+
*/
|
|
1749
|
+
name: string;
|
|
1282
1750
|
/**
|
|
1283
1751
|
* Unique identifier for the organization
|
|
1284
1752
|
*/
|
|
1285
1753
|
organizationId: string;
|
|
1754
|
+
/**
|
|
1755
|
+
* Type of the reward
|
|
1756
|
+
*/
|
|
1757
|
+
rewardType: 'points' | 'multiplier' | 'badge';
|
|
1758
|
+
/**
|
|
1759
|
+
* Start time of the loyalty rule
|
|
1760
|
+
*/
|
|
1761
|
+
startTime: string | null;
|
|
1286
1762
|
/**
|
|
1287
1763
|
* Type of the loyalty rule
|
|
1288
1764
|
*/
|
|
@@ -1299,10 +1775,748 @@ export declare namespace RuleListResponse {
|
|
|
1299
1775
|
* Optional address of the collection
|
|
1300
1776
|
*/
|
|
1301
1777
|
collectionAddress?: string;
|
|
1778
|
+
/**
|
|
1779
|
+
* URL of the media associated with the loyalty rule
|
|
1780
|
+
*/
|
|
1781
|
+
mediaUrl?: string | null;
|
|
1302
1782
|
/**
|
|
1303
1783
|
* Optional metadata for the loyalty rule
|
|
1304
1784
|
*/
|
|
1305
|
-
metadata?:
|
|
1785
|
+
metadata?: {
|
|
1786
|
+
[key: string]: Data.Metadata;
|
|
1787
|
+
};
|
|
1788
|
+
}
|
|
1789
|
+
namespace Data {
|
|
1790
|
+
interface LoyaltyRuleChain {
|
|
1791
|
+
/**
|
|
1792
|
+
* Unique identifier for the rule chain
|
|
1793
|
+
*/
|
|
1794
|
+
id: string;
|
|
1795
|
+
loyaltyConditions: Array<LoyaltyRuleChain.LoyaltyCondition>;
|
|
1796
|
+
/**
|
|
1797
|
+
* Unique identifier for the loyalty rule
|
|
1798
|
+
*/
|
|
1799
|
+
loyaltyRuleId: string;
|
|
1800
|
+
/**
|
|
1801
|
+
* Name of the rule chain
|
|
1802
|
+
*/
|
|
1803
|
+
name: string;
|
|
1804
|
+
}
|
|
1805
|
+
namespace LoyaltyRuleChain {
|
|
1806
|
+
interface LoyaltyCondition {
|
|
1807
|
+
/**
|
|
1808
|
+
* Unique identifier for the condition
|
|
1809
|
+
*/
|
|
1810
|
+
id: string;
|
|
1811
|
+
/**
|
|
1812
|
+
* Amount of the condition
|
|
1813
|
+
*/
|
|
1814
|
+
amount: number | null;
|
|
1815
|
+
association: Array<LoyaltyCondition.Association>;
|
|
1816
|
+
/**
|
|
1817
|
+
* URL of the CSV file
|
|
1818
|
+
*/
|
|
1819
|
+
csvUrl: string | null;
|
|
1820
|
+
/**
|
|
1821
|
+
* Description of the condition
|
|
1822
|
+
*/
|
|
1823
|
+
description: string | null;
|
|
1824
|
+
/**
|
|
1825
|
+
* Number of times the condition must be met
|
|
1826
|
+
*/
|
|
1827
|
+
repeatCount: number | null;
|
|
1828
|
+
/**
|
|
1829
|
+
* Number of times the condition must be met
|
|
1830
|
+
*/
|
|
1831
|
+
requiredCount: number | null;
|
|
1832
|
+
/**
|
|
1833
|
+
* Type of the condition
|
|
1834
|
+
*/
|
|
1835
|
+
type: 'rule' | 'rules' | 'points' | 'section' | 'level' | 'api' | 'badge' | 'badges' | 'csv';
|
|
1836
|
+
}
|
|
1837
|
+
namespace LoyaltyCondition {
|
|
1838
|
+
interface Association {
|
|
1839
|
+
/**
|
|
1840
|
+
* Unique identifier for the association
|
|
1841
|
+
*/
|
|
1842
|
+
id: string;
|
|
1843
|
+
/**
|
|
1844
|
+
* Unique identifier for the loyalty badge
|
|
1845
|
+
*/
|
|
1846
|
+
loyaltyBadgeId: string | null;
|
|
1847
|
+
/**
|
|
1848
|
+
* Unique identifier for the loyalty currency
|
|
1849
|
+
*/
|
|
1850
|
+
loyaltyCurrencyId: string | null;
|
|
1851
|
+
loyaltyRule: Association.LoyaltyRule | null;
|
|
1852
|
+
/**
|
|
1853
|
+
* Unique identifier for the loyalty rule group
|
|
1854
|
+
*/
|
|
1855
|
+
loyaltyRuleGroupId: string | null;
|
|
1856
|
+
/**
|
|
1857
|
+
* Unique identifier for the loyalty rule
|
|
1858
|
+
*/
|
|
1859
|
+
loyaltyRuleId: string | null;
|
|
1860
|
+
}
|
|
1861
|
+
namespace Association {
|
|
1862
|
+
interface LoyaltyRule {
|
|
1863
|
+
/**
|
|
1864
|
+
* Name of the loyalty rule
|
|
1865
|
+
*/
|
|
1866
|
+
name: string;
|
|
1867
|
+
}
|
|
1868
|
+
}
|
|
1869
|
+
}
|
|
1870
|
+
}
|
|
1871
|
+
interface Metadata {
|
|
1872
|
+
/**
|
|
1873
|
+
* Array of loyalty rule IDs that count as check-in when completed. If ["any"] then
|
|
1874
|
+
* any rule completions count as check-in.
|
|
1875
|
+
*/
|
|
1876
|
+
autoCheckInRuleIds?: Array<(string & {}) | 'any'> | null;
|
|
1877
|
+
/**
|
|
1878
|
+
* Number of tokens per batch.
|
|
1879
|
+
*/
|
|
1880
|
+
batchSize?: number | null;
|
|
1881
|
+
/**
|
|
1882
|
+
* Text displayed on the action button.
|
|
1883
|
+
*/
|
|
1884
|
+
buttonText?: string | null;
|
|
1885
|
+
/**
|
|
1886
|
+
* Flag indicating if commenting is required.
|
|
1887
|
+
*/
|
|
1888
|
+
checkComment?: boolean | null;
|
|
1889
|
+
/**
|
|
1890
|
+
* Flag indicating if liking the post is required.
|
|
1891
|
+
*/
|
|
1892
|
+
checkLike?: boolean | null;
|
|
1893
|
+
/**
|
|
1894
|
+
* Flag indicating if reposting is required.
|
|
1895
|
+
*/
|
|
1896
|
+
checkRepost?: boolean | null;
|
|
1897
|
+
/**
|
|
1898
|
+
* Text to check in the Twitter post, username, or bio.
|
|
1899
|
+
*/
|
|
1900
|
+
checkText?: string | Array<string> | null;
|
|
1901
|
+
/**
|
|
1902
|
+
* Array of collections associated with the rule.
|
|
1903
|
+
*/
|
|
1904
|
+
collection?: Array<Metadata.Collection>;
|
|
1905
|
+
/**
|
|
1906
|
+
* Conditions for completing the profile.
|
|
1907
|
+
*/
|
|
1908
|
+
completeProfileConditions?: {
|
|
1909
|
+
[key: string]: boolean;
|
|
1910
|
+
} | null;
|
|
1911
|
+
/**
|
|
1912
|
+
* Description of the external rule condition (only for external rules)
|
|
1913
|
+
*/
|
|
1914
|
+
conditionDescription?: string;
|
|
1915
|
+
/**
|
|
1916
|
+
* Object containing details for the call-to-action.
|
|
1917
|
+
*/
|
|
1918
|
+
cta?: Metadata.Cta | null;
|
|
1919
|
+
/**
|
|
1920
|
+
* API key for custom rewards integration.
|
|
1921
|
+
*/
|
|
1922
|
+
customRewardsApiKey?: string;
|
|
1923
|
+
/**
|
|
1924
|
+
* Flag indicating if the rule should use direct RPC to get the balance of tokens.
|
|
1925
|
+
*/
|
|
1926
|
+
directRpc?: boolean;
|
|
1927
|
+
/**
|
|
1928
|
+
* Array of Discord servers, channels, and roles to join.
|
|
1929
|
+
*/
|
|
1930
|
+
discordServersToJoin?: Array<Metadata.DiscordServersToJoin> | null;
|
|
1931
|
+
/**
|
|
1932
|
+
* Array of drip quests required to complete the rule.
|
|
1933
|
+
*/
|
|
1934
|
+
dripQuestsToComplete?: Array<Metadata.DripQuestsToComplete> | null;
|
|
1935
|
+
/**
|
|
1936
|
+
* Flag indicating whether joining Discord servers is required.
|
|
1937
|
+
*/
|
|
1938
|
+
enableJoinDiscordServers?: boolean | null;
|
|
1939
|
+
/**
|
|
1940
|
+
* Flag indicating whether streaks are enabled.
|
|
1941
|
+
*/
|
|
1942
|
+
enableStreaks?: boolean | null;
|
|
1943
|
+
/**
|
|
1944
|
+
* Flag indicating whether the verified multiplier is enabled.
|
|
1945
|
+
*/
|
|
1946
|
+
enableVerifiedMultiplier?: boolean;
|
|
1947
|
+
/**
|
|
1948
|
+
* Type of ERC20 token for the loyalty rule.
|
|
1949
|
+
*/
|
|
1950
|
+
erc20Type?: 'erc20' | 'native';
|
|
1951
|
+
/**
|
|
1952
|
+
* Fill source of the order for the token sale
|
|
1953
|
+
*/
|
|
1954
|
+
fillSource?: string;
|
|
1955
|
+
/**
|
|
1956
|
+
* Percentage reward given to a user for their first referral.
|
|
1957
|
+
*/
|
|
1958
|
+
firstReferralReward?: number | null;
|
|
1959
|
+
/**
|
|
1960
|
+
* Name of the GitHub branch to check for PR merge.
|
|
1961
|
+
*/
|
|
1962
|
+
githubBranchName?: string | null;
|
|
1963
|
+
/**
|
|
1964
|
+
* URL of the GitHub repository to check for star.
|
|
1965
|
+
*/
|
|
1966
|
+
githubRepoUrl?: string | null;
|
|
1967
|
+
/**
|
|
1968
|
+
* Flag indicating whether the fill source is included.
|
|
1969
|
+
*/
|
|
1970
|
+
hasFillSource?: boolean;
|
|
1971
|
+
/**
|
|
1972
|
+
* Indicates if the item has never been sold.
|
|
1973
|
+
*/
|
|
1974
|
+
hasNeverSold?: boolean;
|
|
1975
|
+
/**
|
|
1976
|
+
* Indicates if the full royalty has been paid for items.
|
|
1977
|
+
*/
|
|
1978
|
+
hasPaidFullRoyalty?: boolean;
|
|
1979
|
+
/**
|
|
1980
|
+
* Flag indicating if the sale currency is included.
|
|
1981
|
+
*/
|
|
1982
|
+
hasSaleCurrency?: boolean;
|
|
1983
|
+
/**
|
|
1984
|
+
* Indicates if the user has a verified Twitter account.
|
|
1985
|
+
*/
|
|
1986
|
+
hasVerifiedTwitter?: boolean;
|
|
1987
|
+
/**
|
|
1988
|
+
* URL of the image associated with the rule.
|
|
1989
|
+
*/
|
|
1990
|
+
imageUrl?: string | null;
|
|
1991
|
+
/**
|
|
1992
|
+
* If enabled, the first transaction done on the platform will complete this rule
|
|
1993
|
+
*/
|
|
1994
|
+
isCheckInOnEveryTxn?: boolean;
|
|
1995
|
+
/**
|
|
1996
|
+
* Indicates if the multiplier has been applied to rewards.
|
|
1997
|
+
*/
|
|
1998
|
+
isMultiplierApplied?: boolean;
|
|
1999
|
+
/**
|
|
2000
|
+
* Flag indicating if the rule is restricted to new users.
|
|
2001
|
+
*/
|
|
2002
|
+
isRestrictedToNewUsers?: boolean;
|
|
2003
|
+
/**
|
|
2004
|
+
* Flag indicating if rewards are applied retroactively.
|
|
2005
|
+
*/
|
|
2006
|
+
isRetroactive?: boolean | null;
|
|
2007
|
+
/**
|
|
2008
|
+
* Flag indicating if the token hold multiplier is applied.
|
|
2009
|
+
*/
|
|
2010
|
+
isTokenHoldMultiplier?: boolean;
|
|
2011
|
+
/**
|
|
2012
|
+
* Optional link associated with the metadata.
|
|
2013
|
+
*/
|
|
2014
|
+
link?: string | null;
|
|
2015
|
+
/**
|
|
2016
|
+
* Liquidity pool details.
|
|
2017
|
+
*/
|
|
2018
|
+
liquidity?: Metadata.Liquidity;
|
|
2019
|
+
/**
|
|
2020
|
+
* Maximum quantity constraint for token holding.
|
|
2021
|
+
*/
|
|
2022
|
+
maxQty?: number | null;
|
|
2023
|
+
/**
|
|
2024
|
+
* Minimum quantity constraint for token holding.
|
|
2025
|
+
*/
|
|
2026
|
+
minQty?: number | null;
|
|
2027
|
+
/**
|
|
2028
|
+
* Array of loyalty currency IDs used for multipliers.
|
|
2029
|
+
*/
|
|
2030
|
+
multiplierLoyaltyCurrencyIds?: Array<string> | null;
|
|
2031
|
+
/**
|
|
2032
|
+
* Flag indicating whether to include only known users.
|
|
2033
|
+
*/
|
|
2034
|
+
onlyKnownUsers?: boolean;
|
|
2035
|
+
/**
|
|
2036
|
+
* Flag indicating whether to include only native tokens.
|
|
2037
|
+
*/
|
|
2038
|
+
onlyNative?: boolean;
|
|
2039
|
+
/**
|
|
2040
|
+
* Flag indicating whether to include only non-listed items.
|
|
2041
|
+
*/
|
|
2042
|
+
onlyNonListed?: boolean;
|
|
2043
|
+
/**
|
|
2044
|
+
* Indicates if only existing users are rewarded.
|
|
2045
|
+
*/
|
|
2046
|
+
onlyRewardExistingUser?: boolean;
|
|
2047
|
+
/**
|
|
2048
|
+
* give points for only one token ownership per contract
|
|
2049
|
+
*/
|
|
2050
|
+
onlyRewardSingleTokenOwnership?: boolean | null;
|
|
2051
|
+
/**
|
|
2052
|
+
* Pre-generated text template that will be used to prefill the post content.
|
|
2053
|
+
*/
|
|
2054
|
+
preGeneratedPostText?: string | null;
|
|
2055
|
+
/**
|
|
2056
|
+
* Promotional code associated with the rule.
|
|
2057
|
+
*/
|
|
2058
|
+
promoCode?: string;
|
|
2059
|
+
/**
|
|
2060
|
+
* URL of the CSV file containing promo codes.
|
|
2061
|
+
*/
|
|
2062
|
+
promoCodeCsvUrl?: string;
|
|
2063
|
+
/**
|
|
2064
|
+
* Numbers of the promotional code to be generated.
|
|
2065
|
+
*/
|
|
2066
|
+
promoCodeLength?: number | null;
|
|
2067
|
+
/**
|
|
2068
|
+
* Type of the promotional code.
|
|
2069
|
+
*/
|
|
2070
|
+
promoCodeType?: 'code' | 'csv' | 'generate';
|
|
2071
|
+
/**
|
|
2072
|
+
* Array defining ranges and corresponding rewards.
|
|
2073
|
+
*/
|
|
2074
|
+
range?: Array<Metadata.Range>;
|
|
2075
|
+
/**
|
|
2076
|
+
* ID of the Reddit post.
|
|
2077
|
+
*/
|
|
2078
|
+
redditPostId?: string | null;
|
|
2079
|
+
/**
|
|
2080
|
+
* Object defining referral requirements.
|
|
2081
|
+
*/
|
|
2082
|
+
referralRequirements?: Metadata.ReferralRequirements | null;
|
|
2083
|
+
/**
|
|
2084
|
+
* Lump sum reward given to a referrer.
|
|
2085
|
+
*/
|
|
2086
|
+
referrerReward?: number | null;
|
|
2087
|
+
/**
|
|
2088
|
+
* Loyalty currency ID of the referrer reward.
|
|
2089
|
+
*/
|
|
2090
|
+
referrerRewardLoyaltyCurrencyId?: string | null;
|
|
2091
|
+
/**
|
|
2092
|
+
* Flag indicating if the post link is required.
|
|
2093
|
+
*/
|
|
2094
|
+
requirePostLink?: boolean | null;
|
|
2095
|
+
/**
|
|
2096
|
+
* Flag indicating if media metadata is required.
|
|
2097
|
+
*/
|
|
2098
|
+
requirePostMediaLink?: boolean | null;
|
|
2099
|
+
/**
|
|
2100
|
+
* Flag indicating if the rule can also reward badges per range.
|
|
2101
|
+
*/
|
|
2102
|
+
rewardBadgePerRange?: boolean;
|
|
2103
|
+
/**
|
|
2104
|
+
* Flag indicating if the reward is rewarded by batch.
|
|
2105
|
+
*/
|
|
2106
|
+
rewardByBatch?: boolean | null;
|
|
2107
|
+
/**
|
|
2108
|
+
* Criteria to evaluate the reward.
|
|
2109
|
+
*/
|
|
2110
|
+
rewardCriteria?: 'IMPRESSIONS_COUNT' | 'ELIGIBLE_POST' | null;
|
|
2111
|
+
/**
|
|
2112
|
+
* Flag indicating if the reward is rewarded per action.
|
|
2113
|
+
*/
|
|
2114
|
+
rewardPerAction?: boolean | null;
|
|
2115
|
+
/**
|
|
2116
|
+
* Flag indicating if rewards are given per impression.
|
|
2117
|
+
*/
|
|
2118
|
+
rewardPerImpression?: boolean | null;
|
|
2119
|
+
/**
|
|
2120
|
+
* Flag indicating if the rule should reward based on value of traded tokens
|
|
2121
|
+
* instead of count.
|
|
2122
|
+
*/
|
|
2123
|
+
rewardPerValue?: boolean;
|
|
2124
|
+
/**
|
|
2125
|
+
* Flag indicating if the rule should reward quality posts.
|
|
2126
|
+
*/
|
|
2127
|
+
rewardQualityPosts?: boolean;
|
|
2128
|
+
/**
|
|
2129
|
+
* Wallet address of the user can only be used if userId is not provided
|
|
2130
|
+
*/
|
|
2131
|
+
royaltyAddress?: string;
|
|
2132
|
+
/**
|
|
2133
|
+
* Royalty percentage of the item.
|
|
2134
|
+
*/
|
|
2135
|
+
royaltyPercentage?: number;
|
|
2136
|
+
/**
|
|
2137
|
+
* Currency associated with sales.
|
|
2138
|
+
*/
|
|
2139
|
+
saleCurrency?: string;
|
|
2140
|
+
/**
|
|
2141
|
+
* Percentage reward given for a second-level referral.
|
|
2142
|
+
*/
|
|
2143
|
+
secondReferralReward?: number | null;
|
|
2144
|
+
/**
|
|
2145
|
+
* Flag indicating if the multiplier is skipped.
|
|
2146
|
+
*/
|
|
2147
|
+
skipMultiplier?: boolean | null;
|
|
2148
|
+
/**
|
|
2149
|
+
* Object containing details of the associated smart contract.
|
|
2150
|
+
*/
|
|
2151
|
+
smartContract?: Metadata.SmartContract;
|
|
2152
|
+
/**
|
|
2153
|
+
* Array of snapshot proposals for the rule.
|
|
2154
|
+
*/
|
|
2155
|
+
snapshotProposals?: Array<Metadata.SnapshotProposal> | null;
|
|
2156
|
+
/**
|
|
2157
|
+
* Social media platform associated with the rule.
|
|
2158
|
+
*/
|
|
2159
|
+
socialPlatform?: 'Custom' | 'Discord' | 'EpicGames' | 'Instagram' | 'Steam' | 'Telegram' | 'TikTok' | 'Twitch' | 'X(Twitter)' | 'YouTube' | 'Google' | 'GitHub' | 'Reddit' | null;
|
|
2160
|
+
/**
|
|
2161
|
+
* URL of the social platform's logo.
|
|
2162
|
+
*/
|
|
2163
|
+
socialPlatformLogo?: string | null;
|
|
2164
|
+
/**
|
|
2165
|
+
* Name of the social platform.
|
|
2166
|
+
*/
|
|
2167
|
+
socialPlatformName?: string | null;
|
|
2168
|
+
/**
|
|
2169
|
+
* ID of the Steam app.
|
|
2170
|
+
*/
|
|
2171
|
+
steamAppId?: string | null;
|
|
2172
|
+
/**
|
|
2173
|
+
* Array of streak milestones and corresponding rewards.
|
|
2174
|
+
*/
|
|
2175
|
+
streakArray?: Array<Metadata.StreakArray> | null;
|
|
2176
|
+
/**
|
|
2177
|
+
* Metadata for swap loyalty rules
|
|
2178
|
+
*/
|
|
2179
|
+
swap?: Metadata.Swap;
|
|
2180
|
+
/**
|
|
2181
|
+
* ID of the Telegram channel.
|
|
2182
|
+
*/
|
|
2183
|
+
telegramChannelId?: string | null;
|
|
2184
|
+
/**
|
|
2185
|
+
* Time delay in seconds to verify actions.
|
|
2186
|
+
*/
|
|
2187
|
+
timeDelayToVerifySeconds?: string | number | null;
|
|
2188
|
+
/**
|
|
2189
|
+
* Flag indicating if all contracts are tracked.
|
|
2190
|
+
*/
|
|
2191
|
+
trackAllContracts?: boolean | null;
|
|
2192
|
+
/**
|
|
2193
|
+
* Flag indicating if the progress is tracked. If enabled, the rule can only be
|
|
2194
|
+
* completed once the progress is 100%.
|
|
2195
|
+
*/
|
|
2196
|
+
trackProgress?: boolean | null;
|
|
2197
|
+
/**
|
|
2198
|
+
* URL of the associated Twitter account.
|
|
2199
|
+
*/
|
|
2200
|
+
twitterAccountUrl?: string;
|
|
2201
|
+
/**
|
|
2202
|
+
* Hashtag associated with the Twitter post.
|
|
2203
|
+
*/
|
|
2204
|
+
twitterHashtag?: string;
|
|
2205
|
+
/**
|
|
2206
|
+
* URL of the associated Twitter post.
|
|
2207
|
+
*/
|
|
2208
|
+
twitterPostUrl?: string;
|
|
2209
|
+
/**
|
|
2210
|
+
* Unique identifier of the Twitter user.
|
|
2211
|
+
*/
|
|
2212
|
+
twitterUserId?: string;
|
|
2213
|
+
/**
|
|
2214
|
+
* Twitter username of the user.
|
|
2215
|
+
*/
|
|
2216
|
+
twitterUsername?: string;
|
|
2217
|
+
/**
|
|
2218
|
+
* Minimum length of the verification text.
|
|
2219
|
+
*/
|
|
2220
|
+
verificationTextMinimumLength?: number | null;
|
|
2221
|
+
/**
|
|
2222
|
+
* Multiplier applied to rewards for verified users.
|
|
2223
|
+
*/
|
|
2224
|
+
verifiedMultiplier?: number | null;
|
|
2225
|
+
/**
|
|
2226
|
+
* Placeholder text for verification input fields.
|
|
2227
|
+
*/
|
|
2228
|
+
verifyPlaceHolderText?: string | null;
|
|
2229
|
+
/**
|
|
2230
|
+
* Type of wallet associated with the rule.
|
|
2231
|
+
*/
|
|
2232
|
+
walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | 'cosmos' | 'ultra' | 'agw' | 'flow_cadence' | 'substrate' | null;
|
|
2233
|
+
/**
|
|
2234
|
+
* ID of the Youtube channel.
|
|
2235
|
+
*/
|
|
2236
|
+
youtubeChannelId?: string | null;
|
|
2237
|
+
/**
|
|
2238
|
+
* ID of the Youtube video.
|
|
2239
|
+
*/
|
|
2240
|
+
youtubeVideoId?: string | null;
|
|
2241
|
+
}
|
|
2242
|
+
namespace Metadata {
|
|
2243
|
+
interface Collection {
|
|
2244
|
+
/**
|
|
2245
|
+
* Blockchain address of the collection.
|
|
2246
|
+
*/
|
|
2247
|
+
address?: string;
|
|
2248
|
+
/**
|
|
2249
|
+
* Multiplier applied to the rewards for this collection.
|
|
2250
|
+
*/
|
|
2251
|
+
multiplier?: number;
|
|
2252
|
+
/**
|
|
2253
|
+
* Blockchain network of the collection.
|
|
2254
|
+
*/
|
|
2255
|
+
network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'skaleEuropa' | 'skaleCalypso' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
|
|
2256
|
+
}
|
|
2257
|
+
/**
|
|
2258
|
+
* Object containing details for the call-to-action.
|
|
2259
|
+
*/
|
|
2260
|
+
interface Cta {
|
|
2261
|
+
/**
|
|
2262
|
+
* Link for the call-to-action.
|
|
2263
|
+
*/
|
|
2264
|
+
href?: string | null;
|
|
2265
|
+
/**
|
|
2266
|
+
* Label for the call-to-action.
|
|
2267
|
+
*/
|
|
2268
|
+
label?: string | null;
|
|
2269
|
+
}
|
|
2270
|
+
interface DiscordServersToJoin {
|
|
2271
|
+
/**
|
|
2272
|
+
* ID of the Discord server to join.
|
|
2273
|
+
*/
|
|
2274
|
+
id?: string;
|
|
2275
|
+
/**
|
|
2276
|
+
* Array of Discord channels to join.
|
|
2277
|
+
*/
|
|
2278
|
+
channels?: Array<DiscordServersToJoin.Channel>;
|
|
2279
|
+
/**
|
|
2280
|
+
* Array of roles to assign in the Discord server.
|
|
2281
|
+
*/
|
|
2282
|
+
roles?: Array<DiscordServersToJoin.Role>;
|
|
2283
|
+
}
|
|
2284
|
+
namespace DiscordServersToJoin {
|
|
2285
|
+
interface Channel {
|
|
2286
|
+
/**
|
|
2287
|
+
* ID of the Discord channel.
|
|
2288
|
+
*/
|
|
2289
|
+
id?: string;
|
|
2290
|
+
/**
|
|
2291
|
+
* Array of emojis used in the channel.
|
|
2292
|
+
*/
|
|
2293
|
+
emojis?: Array<Channel.Emoji>;
|
|
2294
|
+
/**
|
|
2295
|
+
* Phrase of text to be present in the discord message
|
|
2296
|
+
*/
|
|
2297
|
+
text?: string;
|
|
2298
|
+
}
|
|
2299
|
+
namespace Channel {
|
|
2300
|
+
interface Emoji {
|
|
2301
|
+
/**
|
|
2302
|
+
* ID of the emoji used in the channel.
|
|
2303
|
+
*/
|
|
2304
|
+
id?: string;
|
|
2305
|
+
}
|
|
2306
|
+
}
|
|
2307
|
+
interface Role {
|
|
2308
|
+
/**
|
|
2309
|
+
* ID of the role in the Discord server.
|
|
2310
|
+
*/
|
|
2311
|
+
id: string;
|
|
2312
|
+
}
|
|
2313
|
+
}
|
|
2314
|
+
interface DripQuestsToComplete {
|
|
2315
|
+
/**
|
|
2316
|
+
* ID of the drip quest to complete.
|
|
2317
|
+
*/
|
|
2318
|
+
id: string;
|
|
2319
|
+
}
|
|
2320
|
+
/**
|
|
2321
|
+
* Liquidity pool details.
|
|
2322
|
+
*/
|
|
2323
|
+
interface Liquidity {
|
|
2324
|
+
/**
|
|
2325
|
+
* Calculation type of the liquidity pool.
|
|
2326
|
+
*/
|
|
2327
|
+
calculationType?: 'fixed' | 'custom';
|
|
2328
|
+
/**
|
|
2329
|
+
* Custom function to calculate the the reward amount based on the liquidity
|
|
2330
|
+
* provided per day. X is the reward amount, Y is the liquidity provided per day in
|
|
2331
|
+
* USD.
|
|
2332
|
+
*/
|
|
2333
|
+
customFunction?: string;
|
|
2334
|
+
/**
|
|
2335
|
+
* Liquidity provided per day in USD
|
|
2336
|
+
*/
|
|
2337
|
+
liquidityPerDay?: number;
|
|
2338
|
+
/**
|
|
2339
|
+
* Blockchain network of the liquidity pool.
|
|
2340
|
+
*/
|
|
2341
|
+
network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'skaleEuropa' | 'skaleCalypso' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
|
|
2342
|
+
/**
|
|
2343
|
+
* Indicates if only in-range liquidity is rewarded.
|
|
2344
|
+
*/
|
|
2345
|
+
onlyRewardInRangeLiquidity?: boolean;
|
|
2346
|
+
/**
|
|
2347
|
+
* Array of liquidity pools associated with the rule.
|
|
2348
|
+
*/
|
|
2349
|
+
pools?: Array<Liquidity.Pool>;
|
|
2350
|
+
/**
|
|
2351
|
+
* Protocol of the liquidity pool.
|
|
2352
|
+
*/
|
|
2353
|
+
protocol?: string;
|
|
2354
|
+
}
|
|
2355
|
+
namespace Liquidity {
|
|
2356
|
+
interface Pool {
|
|
2357
|
+
/**
|
|
2358
|
+
* Unique identifier of the liquidity pool.
|
|
2359
|
+
*/
|
|
2360
|
+
id: string;
|
|
2361
|
+
}
|
|
2362
|
+
}
|
|
2363
|
+
interface Range {
|
|
2364
|
+
/**
|
|
2365
|
+
* Reward amount for this range.
|
|
2366
|
+
*/
|
|
2367
|
+
amount: number;
|
|
2368
|
+
/**
|
|
2369
|
+
* End value of the range.
|
|
2370
|
+
*/
|
|
2371
|
+
endRange: number;
|
|
2372
|
+
/**
|
|
2373
|
+
* Start value of the range.
|
|
2374
|
+
*/
|
|
2375
|
+
startRange: number;
|
|
2376
|
+
/**
|
|
2377
|
+
* ID of the loyalty badge for this range.
|
|
2378
|
+
*/
|
|
2379
|
+
loyaltyBadgeId?: string;
|
|
2380
|
+
/**
|
|
2381
|
+
* Amount of the loyalty multiplier for this range.
|
|
2382
|
+
*/
|
|
2383
|
+
loyaltyMultiplierAmount?: number;
|
|
2384
|
+
}
|
|
2385
|
+
/**
|
|
2386
|
+
* Object defining referral requirements.
|
|
2387
|
+
*/
|
|
2388
|
+
interface ReferralRequirements {
|
|
2389
|
+
/**
|
|
2390
|
+
* Flag indicating if achieving points is required.
|
|
2391
|
+
*/
|
|
2392
|
+
achievePoints?: boolean | null;
|
|
2393
|
+
/**
|
|
2394
|
+
* Flag indicating if completing the profile is required.
|
|
2395
|
+
*/
|
|
2396
|
+
completeProfile?: boolean | null;
|
|
2397
|
+
/**
|
|
2398
|
+
* Flag indicating if connecting Discord is required.
|
|
2399
|
+
*/
|
|
2400
|
+
connectDiscord?: boolean | null;
|
|
2401
|
+
/**
|
|
2402
|
+
* Flag indicating if connecting email is required.
|
|
2403
|
+
*/
|
|
2404
|
+
connectEmail?: boolean | null;
|
|
2405
|
+
/**
|
|
2406
|
+
* Flag indicating if connecting Twitter is required.
|
|
2407
|
+
*/
|
|
2408
|
+
connectTwitter?: boolean | null;
|
|
2409
|
+
points?: ReferralRequirements.Points | null;
|
|
2410
|
+
}
|
|
2411
|
+
namespace ReferralRequirements {
|
|
2412
|
+
interface Points {
|
|
2413
|
+
/**
|
|
2414
|
+
* Points required for referral.
|
|
2415
|
+
*/
|
|
2416
|
+
amount?: number | null;
|
|
2417
|
+
/**
|
|
2418
|
+
* ID of the loyalty currency for referral.
|
|
2419
|
+
*/
|
|
2420
|
+
loyaltyCurrecyId?: string | null;
|
|
2421
|
+
}
|
|
2422
|
+
}
|
|
2423
|
+
/**
|
|
2424
|
+
* Object containing details of the associated smart contract.
|
|
2425
|
+
*/
|
|
2426
|
+
interface SmartContract {
|
|
2427
|
+
/**
|
|
2428
|
+
* Mapping of addresses for the smart contract.
|
|
2429
|
+
*/
|
|
2430
|
+
addressMapping?: string | null;
|
|
2431
|
+
/**
|
|
2432
|
+
* Object containing details of the amount multiplier from the event.
|
|
2433
|
+
*/
|
|
2434
|
+
amountMultiplier?: SmartContract.AmountMultiplier | null;
|
|
2435
|
+
/**
|
|
2436
|
+
* ID of the smart contract.
|
|
2437
|
+
*/
|
|
2438
|
+
contractId?: string | null;
|
|
2439
|
+
/**
|
|
2440
|
+
* Criteria to evaluate the smart contract event.
|
|
2441
|
+
*/
|
|
2442
|
+
criteria?: 'everyEvent' | 'byParameter' | null;
|
|
2443
|
+
/**
|
|
2444
|
+
* Event emitted by the smart contract.
|
|
2445
|
+
*/
|
|
2446
|
+
event?: string | null;
|
|
2447
|
+
/**
|
|
2448
|
+
* Array of parameters for the smart contract.
|
|
2449
|
+
*/
|
|
2450
|
+
params?: Array<SmartContract.Param> | null;
|
|
2451
|
+
/**
|
|
2452
|
+
* Type of the smart contract interaction.
|
|
2453
|
+
*/
|
|
2454
|
+
type?: 'function' | 'event' | null;
|
|
2455
|
+
}
|
|
2456
|
+
namespace SmartContract {
|
|
2457
|
+
/**
|
|
2458
|
+
* Object containing details of the amount multiplier from the event.
|
|
2459
|
+
*/
|
|
2460
|
+
interface AmountMultiplier {
|
|
2461
|
+
/**
|
|
2462
|
+
* Mapping of the value for the smart contract.
|
|
2463
|
+
*/
|
|
2464
|
+
valueMapping?: string | null;
|
|
2465
|
+
}
|
|
2466
|
+
interface Param {
|
|
2467
|
+
/**
|
|
2468
|
+
* Condition to check for the parameter.
|
|
2469
|
+
*/
|
|
2470
|
+
condition?: string | null;
|
|
2471
|
+
/**
|
|
2472
|
+
* Name of the smart contract parameter.
|
|
2473
|
+
*/
|
|
2474
|
+
name?: string | null;
|
|
2475
|
+
/**
|
|
2476
|
+
* Value of the parameter.
|
|
2477
|
+
*/
|
|
2478
|
+
value?: string | null;
|
|
2479
|
+
}
|
|
2480
|
+
}
|
|
2481
|
+
interface SnapshotProposal {
|
|
2482
|
+
/**
|
|
2483
|
+
* ID of the snapshot proposal.
|
|
2484
|
+
*/
|
|
2485
|
+
id: string;
|
|
2486
|
+
/**
|
|
2487
|
+
* Space associated with the snapshot proposal.
|
|
2488
|
+
*/
|
|
2489
|
+
space: string;
|
|
2490
|
+
}
|
|
2491
|
+
interface StreakArray {
|
|
2492
|
+
/**
|
|
2493
|
+
* Reward amount for achieving the streak milestone.
|
|
2494
|
+
*/
|
|
2495
|
+
streakAmount: number;
|
|
2496
|
+
/**
|
|
2497
|
+
* Milestone required to achieve the streak.
|
|
2498
|
+
*/
|
|
2499
|
+
streakMilestone: number;
|
|
2500
|
+
}
|
|
2501
|
+
/**
|
|
2502
|
+
* Metadata for swap loyalty rules
|
|
2503
|
+
*/
|
|
2504
|
+
interface Swap {
|
|
2505
|
+
provider?: 'any' | 'relay' | 'lifi';
|
|
2506
|
+
relayReferrerId?: string;
|
|
2507
|
+
requireCrossChainSwap?: boolean;
|
|
2508
|
+
swappedToChain?: 'any' | number | string;
|
|
2509
|
+
swappedToTokens?: Array<Swap.SwappedToToken>;
|
|
2510
|
+
tokenMode?: 'any' | 'specific';
|
|
2511
|
+
trackTokenAmount?: boolean;
|
|
2512
|
+
}
|
|
2513
|
+
namespace Swap {
|
|
2514
|
+
interface SwappedToToken {
|
|
2515
|
+
address: string;
|
|
2516
|
+
chainId: string;
|
|
2517
|
+
}
|
|
2518
|
+
}
|
|
2519
|
+
}
|
|
1306
2520
|
}
|
|
1307
2521
|
}
|
|
1308
2522
|
export interface RuleDeleteResponse {
|
|
@@ -1310,7 +2524,7 @@ export interface RuleDeleteResponse {
|
|
|
1310
2524
|
deletedAt: string;
|
|
1311
2525
|
}
|
|
1312
2526
|
export interface RuleCompleteResponse {
|
|
1313
|
-
message:
|
|
2527
|
+
message: 'Completion request added to queue' | 'Link click being verified, come back later to check the status';
|
|
1314
2528
|
}
|
|
1315
2529
|
export interface RuleGetStatusResponse {
|
|
1316
2530
|
data: Array<RuleGetStatusResponse.Data>;
|
|
@@ -1318,9 +2532,110 @@ export interface RuleGetStatusResponse {
|
|
|
1318
2532
|
export declare namespace RuleGetStatusResponse {
|
|
1319
2533
|
interface Data {
|
|
1320
2534
|
loyaltyRuleId: string;
|
|
1321
|
-
status: 'pending' | 'processing' | 'completed' | 'failed';
|
|
1322
2535
|
userId: string;
|
|
2536
|
+
/**
|
|
2537
|
+
* The ID of the loyalty rule status for the Progress object
|
|
2538
|
+
*/
|
|
2539
|
+
id?: string;
|
|
2540
|
+
createdAt?: string;
|
|
2541
|
+
fulfilledAt?: string | null;
|
|
2542
|
+
/**
|
|
2543
|
+
* Categorized examples of messages that may be returned for a loyalty rule's
|
|
2544
|
+
* processing result.
|
|
2545
|
+
*
|
|
2546
|
+
* User Onboarding
|
|
2547
|
+
*
|
|
2548
|
+
* - Check In: "Streak successful"
|
|
2549
|
+
* - Complete Profile Details: "Profile not complete"
|
|
2550
|
+
*
|
|
2551
|
+
* Connect Accounts
|
|
2552
|
+
*
|
|
2553
|
+
* - Connect TikTok: "TikTok not connected"
|
|
2554
|
+
* - Connect Discord: "Discord not connected", "Discord request timeout"
|
|
2555
|
+
* - Connect X: "Twitter not connected", "Twitter not connected or content url is
|
|
2556
|
+
* required"
|
|
2557
|
+
* - Connect Email: "Email address not connected"
|
|
2558
|
+
* - Connect Telegram: "Telegram not connected", "user has not setup telegram (no
|
|
2559
|
+
* telegramUsername), please setup username in telegram and reconnect.",
|
|
2560
|
+
* "Telegram request rate-limited"
|
|
2561
|
+
* - Connect Steam: "Steam not connected"
|
|
2562
|
+
* - Connect Youtube: "Youtube not connected"
|
|
2563
|
+
*
|
|
2564
|
+
* Social Quests
|
|
2565
|
+
*
|
|
2566
|
+
* - Join Telegram Group: "Telegram Channel not joined", "Telegram Channel joined
|
|
2567
|
+
* successfully"
|
|
2568
|
+
* - Post on TikTok: "TikTok post not verified"
|
|
2569
|
+
* - Comment on an X Post: "Quest Completed: You have commented on the tweet",
|
|
2570
|
+
* "Quest Not Completed: Comment not found for the specified tweet"
|
|
2571
|
+
* - Repost an X Post: "Quest Completed: You have retweeted the tweet", "Quest Not
|
|
2572
|
+
* Completed: Retweet not found for the specified tweet", "Quest Completed: You
|
|
2573
|
+
* have retweeted and commented on the tweet", "Quest Not Completed: You have not
|
|
2574
|
+
* retweeted or commented on the tweet"
|
|
2575
|
+
* - Follow an X Account: "Missing required parameters: twitterUserId,
|
|
2576
|
+
* targetUsername", "Quest Completed: You are a follower of
|
|
2577
|
+
* @${targetUsername}", "Quest Not Completed: Please follow @${targetUsername}
|
|
2578
|
+
* and try again in few minutes"
|
|
2579
|
+
* - React to an X Post: "Missing required parameters: texts, twitterUserId,
|
|
2580
|
+
* userTweetId", "No text provided", "Quest Completed: You have posted {tweetId}
|
|
2581
|
+
* a tweet with the text {text}", "Quest Not Completed: Your all previous {COUNT}
|
|
2582
|
+
* posts are already claimed. Please post a new tweet and try again in a few
|
|
2583
|
+
* minutes.", "Tweet is already claimed", "Tweet does not belong to the user",
|
|
2584
|
+
* "Text not found in tweet", "Tweet is before the quest start time", "Tweet does
|
|
2585
|
+
* not have media", "Text found in tweet"
|
|
2586
|
+
* - Add Text to X Bio: "Missing required parameters: texts, twitterUserId", "User
|
|
2587
|
+
* not found", "Text found in bio", "Text not found in bio"
|
|
2588
|
+
* - Add Text to X Username: "Missing required parameters: texts, twitterUserId",
|
|
2589
|
+
* "User not found", "Text found in username", "Text not found in username"
|
|
2590
|
+
* - Comment on an X Post with Text: "Missing required parameters: texts,
|
|
2591
|
+
* twitterUserId", "Comment is already claimed", "Text found in comment", "Text
|
|
2592
|
+
* not found in comment", "Tweet not found or could not be retrieved"
|
|
2593
|
+
* - Comment on a YouTube Video: "Youtube comment added", "Youtube comment not
|
|
2594
|
+
* added"
|
|
2595
|
+
* - Subscribe to a YouTube Channel: "Youtube channel subscribed", "Quest failed,
|
|
2596
|
+
* please make sure you have made your subscriptions public in youtube"
|
|
2597
|
+
* - Get X post impressions: "You've already claimed the reward for this impression
|
|
2598
|
+
* range."
|
|
2599
|
+
* - Add an Item to Steam Wishlist: "Steam Wishlist item added", "Steam Wishlist
|
|
2600
|
+
* item not added"
|
|
2601
|
+
*
|
|
2602
|
+
* Complex Onchain Logic
|
|
2603
|
+
*
|
|
2604
|
+
* - Token Swap: "Swap rewards calculated successfully", "Swap rule failed"
|
|
2605
|
+
*
|
|
2606
|
+
* Other
|
|
2607
|
+
*
|
|
2608
|
+
* - Answer a Quiz: "Quiz question not configured", "No question response found",
|
|
2609
|
+
* "Incorrect answer", "Correct answer"
|
|
2610
|
+
* - Answer a Poll: "Poll question not configured", "Poll response recorded"
|
|
2611
|
+
* - Spend in Shopify Store: "Shopify not connected"
|
|
2612
|
+
* - Points Airdrop: "Seems like you're not eligible for this points airdrop."
|
|
2613
|
+
*
|
|
2614
|
+
* General
|
|
2615
|
+
*
|
|
2616
|
+
* - "Quest already completed"
|
|
2617
|
+
* - "Quest already completed using the same social account (${socialAccountName}),
|
|
2618
|
+
* with the different user."
|
|
2619
|
+
* - "You've already claimed the reward for this quest."
|
|
2620
|
+
* - "Quest not achieved, please try again."
|
|
2621
|
+
* - "Rule is not setup"
|
|
2622
|
+
* - "Request aborted due to timeout"
|
|
2623
|
+
* - "Google account not connected"
|
|
2624
|
+
* - "Claim failed: Multiplier is already active"
|
|
2625
|
+
*/
|
|
1323
2626
|
message?: string;
|
|
2627
|
+
organizationId?: string;
|
|
2628
|
+
/**
|
|
2629
|
+
* The progress of the loyalty rule from 0 to 100
|
|
2630
|
+
*/
|
|
2631
|
+
progress?: number;
|
|
2632
|
+
/**
|
|
2633
|
+
* Status of the queued job, this is only returned if the job is queued and being
|
|
2634
|
+
* processed, this wil be retained for 10 minutes after the job is completed
|
|
2635
|
+
*/
|
|
2636
|
+
status?: 'pending' | 'processing' | 'completed' | 'failed';
|
|
2637
|
+
updatedAt?: string;
|
|
2638
|
+
websiteId?: string;
|
|
1324
2639
|
}
|
|
1325
2640
|
}
|
|
1326
2641
|
export interface RuleCreateParams {
|
|
@@ -1367,7 +2682,7 @@ export interface RuleCreateParams {
|
|
|
1367
2682
|
/**
|
|
1368
2683
|
* Type of loyalty rule being created
|
|
1369
2684
|
*/
|
|
1370
|
-
type: 'Bonus' | 'BoughtOn' | 'BoughtWithRoyalties' | 'DiscordMessages' | 'Listing' | 'Lodging' | 'MintOn' | 'PoapClaim' | 'SnagSocialsConnected' | 'SnapshotFullset' | 'SnapshotHold' | 'SoldOn' | 'SoldWithRoyalties' | 'TokenHold' | 'TwitterBio' | 'TwitterHashTagPost' | 'Retweet' | 'check_in' | 'code_entry' | 'connect_wallet' | 'connected_discord' | 'connected_email' | 'connected_epic' | 'connected_steam' | 'connected_telegram' | 'connected_twitter' | 'create_partner_account' | 'discord_member' | 'drip_x_follow' | 'drip_x_new_tweet' | 'drip_x_text_in_bio' | 'drip_x_text_in_comment' | 'drip_x_text_in_name' | 'drip_x_tweet' | 'external_rule' | 'link_click' | 'manual_upload' | 'profile_completed' | 'referred_user' | 'smart_contract_event' | 'snapshot_governance' | 'telegram_join' | 'telegram_messages' | 'text_input' | 'token_hold_erc20' | 'tweet_liked_by_project' | 'twitter_comment' | 'twitter_follow' | 'twitter_followers' | 'twitter_like' | 'twitter_post_hashtag' | 'quiz' | 'poll';
|
|
2685
|
+
type: 'Bonus' | 'BoughtOn' | 'BoughtWithRoyalties' | 'DiscordMessages' | 'Listing' | 'Lodging' | 'MintOn' | 'PoapClaim' | 'SnagSocialsConnected' | 'SnapshotFullset' | 'SnapshotHold' | 'SoldOn' | 'SoldWithRoyalties' | 'TokenHold' | 'TwitterBio' | 'TwitterHashTagPost' | 'Retweet' | 'check_in' | 'code_entry' | 'connect_wallet' | 'connected_discord' | 'connected_email' | 'connected_epic' | 'connected_github' | 'connected_steam' | 'connected_telegram' | 'connected_twitter' | 'create_partner_account' | 'discord_member' | 'drip_x_follow' | 'drip_x_new_tweet' | 'drip_x_text_in_bio' | 'drip_x_text_in_comment' | 'drip_x_text_in_name' | 'drip_x_tweet' | 'external_rule' | 'link_click' | 'manual_upload' | 'profile_completed' | 'referred_user' | 'smart_contract_event' | 'snapshot_governance' | 'telegram_join' | 'telegram_messages' | 'text_input' | 'token_hold_erc20' | 'tweet_liked_by_project' | 'twitter_comment' | 'twitter_follow' | 'twitter_followers' | 'twitter_like' | 'twitter_post_hashtag' | 'quiz' | 'poll' | 'steam_wishlist' | 'liquidity_uniswap_v2' | 'liquidity_uniswap_v3' | 'points_airdrop' | 'youtube_subscribers' | 'youtube_comment' | 'shopify_spend' | 'swap' | 'tiktok_post' | 'post_impressions' | 'discord_join' | 'connected_youtube' | 'stratus_function' | 'connected_tiktok' | 'tiktok_follow' | 'github_repo_star' | 'github_repo_fork' | 'github_repo_collaborator' | 'github_merge_PR' | 'discord_role_grant' | 'connected_reddit' | 'reddit_comment';
|
|
1371
2686
|
/**
|
|
1372
2687
|
* Unique identifier for the associated website
|
|
1373
2688
|
*/
|
|
@@ -1376,6 +2691,10 @@ export interface RuleCreateParams {
|
|
|
1376
2691
|
* URL of the background asset to be displayed
|
|
1377
2692
|
*/
|
|
1378
2693
|
backgroundAssetUrl?: string;
|
|
2694
|
+
/**
|
|
2695
|
+
* The type of claim for the reward
|
|
2696
|
+
*/
|
|
2697
|
+
claimType?: 'manual' | 'auto' | null;
|
|
1379
2698
|
/**
|
|
1380
2699
|
* Blockchain address of the associated collection
|
|
1381
2700
|
*/
|
|
@@ -1396,6 +2715,15 @@ export interface RuleCreateParams {
|
|
|
1396
2715
|
* Optional detailed description of the rule
|
|
1397
2716
|
*/
|
|
1398
2717
|
description?: string;
|
|
2718
|
+
duplicatedFromId?: string | null;
|
|
2719
|
+
/**
|
|
2720
|
+
* ID of the external integration
|
|
2721
|
+
*/
|
|
2722
|
+
externalIntegrationId?: string | null;
|
|
2723
|
+
/**
|
|
2724
|
+
* Optional stratus function id for the rule
|
|
2725
|
+
*/
|
|
2726
|
+
functionId?: string | null;
|
|
1399
2727
|
/**
|
|
1400
2728
|
* Whether to hide this rule in the user interface
|
|
1401
2729
|
*/
|
|
@@ -1403,15 +2731,33 @@ export interface RuleCreateParams {
|
|
|
1403
2731
|
/**
|
|
1404
2732
|
* Interval between rule executions
|
|
1405
2733
|
*/
|
|
1406
|
-
interval?: 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | null;
|
|
2734
|
+
interval?: 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | 'unlimited' | null;
|
|
1407
2735
|
/**
|
|
1408
2736
|
* Whether this rule is mandatory
|
|
1409
2737
|
*/
|
|
1410
2738
|
isRequired?: boolean;
|
|
2739
|
+
/**
|
|
2740
|
+
* Unique identifier for the loyalty badge
|
|
2741
|
+
*/
|
|
2742
|
+
loyaltyBadgeId?: string | null;
|
|
1411
2743
|
/**
|
|
1412
2744
|
* Unique identifier for the loyalty rule group
|
|
1413
2745
|
*/
|
|
1414
2746
|
loyaltyRuleGroupId?: 'no-section' | (string & {}) | null;
|
|
2747
|
+
/**
|
|
2748
|
+
* URL for uploading loyalty user allotment via CSV
|
|
2749
|
+
*/
|
|
2750
|
+
loyaltyUserAllotmentCsvUrl?: string;
|
|
2751
|
+
/**
|
|
2752
|
+
* The interval for the max amount. Available for the smart contract and external
|
|
2753
|
+
* rules.
|
|
2754
|
+
*/
|
|
2755
|
+
maxAmountInterval?: 'daily' | 'weekly' | 'monthly' | 'lifetime' | null;
|
|
2756
|
+
/**
|
|
2757
|
+
* The maximum amount of points a user can earn per interval. Available for the
|
|
2758
|
+
* smart contract and external rules.
|
|
2759
|
+
*/
|
|
2760
|
+
maxAmountPerInterval?: number | null;
|
|
1415
2761
|
/**
|
|
1416
2762
|
* URL of the media to be displayed
|
|
1417
2763
|
*/
|
|
@@ -1419,25 +2765,46 @@ export interface RuleCreateParams {
|
|
|
1419
2765
|
/**
|
|
1420
2766
|
* Blockchain network where the rule will apply
|
|
1421
2767
|
*/
|
|
1422
|
-
network?: 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachainArtio' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | '
|
|
2768
|
+
network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'skaleEuropa' | 'skaleCalypso' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
|
|
1423
2769
|
/**
|
|
1424
2770
|
* OAuth credentials associated with the rule
|
|
1425
2771
|
*/
|
|
1426
2772
|
oauthCredentialsId?: string | null;
|
|
2773
|
+
/**
|
|
2774
|
+
* The lifetime of the reward
|
|
2775
|
+
*/
|
|
2776
|
+
rewardLifetime?: 'permanent' | 'dynamic' | null;
|
|
1427
2777
|
/**
|
|
1428
2778
|
* Type of reward issued by the rule
|
|
1429
2779
|
*/
|
|
1430
|
-
rewardType?: 'points' | 'multiplier';
|
|
2780
|
+
rewardType?: 'points' | 'multiplier' | 'badge';
|
|
2781
|
+
/**
|
|
2782
|
+
* URL of the Shopify store
|
|
2783
|
+
*/
|
|
2784
|
+
shopifyStoreUrl?: string | null;
|
|
1431
2785
|
/**
|
|
1432
|
-
*
|
|
2786
|
+
* Whether to show this rule before the start time
|
|
1433
2787
|
*/
|
|
1434
|
-
|
|
2788
|
+
showBeforeStart?: boolean;
|
|
2789
|
+
/**
|
|
2790
|
+
* Optional stratus subscription id for the rule
|
|
2791
|
+
*/
|
|
2792
|
+
subscriptionId?: string | null;
|
|
1435
2793
|
}
|
|
1436
2794
|
export declare namespace RuleCreateParams {
|
|
1437
2795
|
/**
|
|
1438
2796
|
* Additional metadata for the loyalty rule
|
|
1439
2797
|
*/
|
|
1440
2798
|
interface Metadata {
|
|
2799
|
+
/**
|
|
2800
|
+
* Array of loyalty rule IDs that count as check-in when completed. If ["any"] then
|
|
2801
|
+
* any rule completions count as check-in.
|
|
2802
|
+
*/
|
|
2803
|
+
autoCheckInRuleIds?: Array<(string & {}) | 'any'> | null;
|
|
2804
|
+
/**
|
|
2805
|
+
* Number of tokens per batch.
|
|
2806
|
+
*/
|
|
2807
|
+
batchSize?: number | null;
|
|
1441
2808
|
/**
|
|
1442
2809
|
* Text displayed on the action button.
|
|
1443
2810
|
*/
|
|
@@ -1457,7 +2824,7 @@ export declare namespace RuleCreateParams {
|
|
|
1457
2824
|
/**
|
|
1458
2825
|
* Text to check in the Twitter post, username, or bio.
|
|
1459
2826
|
*/
|
|
1460
|
-
checkText?: string | null;
|
|
2827
|
+
checkText?: string | Array<string> | null;
|
|
1461
2828
|
/**
|
|
1462
2829
|
* Array of collections associated with the rule.
|
|
1463
2830
|
*/
|
|
@@ -1465,7 +2832,13 @@ export declare namespace RuleCreateParams {
|
|
|
1465
2832
|
/**
|
|
1466
2833
|
* Conditions for completing the profile.
|
|
1467
2834
|
*/
|
|
1468
|
-
completeProfileConditions?:
|
|
2835
|
+
completeProfileConditions?: {
|
|
2836
|
+
[key: string]: boolean;
|
|
2837
|
+
} | null;
|
|
2838
|
+
/**
|
|
2839
|
+
* Description of the external rule condition (only for external rules)
|
|
2840
|
+
*/
|
|
2841
|
+
conditionDescription?: string;
|
|
1469
2842
|
/**
|
|
1470
2843
|
* Object containing details for the call-to-action.
|
|
1471
2844
|
*/
|
|
@@ -1474,6 +2847,10 @@ export declare namespace RuleCreateParams {
|
|
|
1474
2847
|
* API key for custom rewards integration.
|
|
1475
2848
|
*/
|
|
1476
2849
|
customRewardsApiKey?: string;
|
|
2850
|
+
/**
|
|
2851
|
+
* Flag indicating if the rule should use direct RPC to get the balance of tokens.
|
|
2852
|
+
*/
|
|
2853
|
+
directRpc?: boolean;
|
|
1477
2854
|
/**
|
|
1478
2855
|
* Array of Discord servers, channels, and roles to join.
|
|
1479
2856
|
*/
|
|
@@ -1494,6 +2871,10 @@ export declare namespace RuleCreateParams {
|
|
|
1494
2871
|
* Flag indicating whether the verified multiplier is enabled.
|
|
1495
2872
|
*/
|
|
1496
2873
|
enableVerifiedMultiplier?: boolean;
|
|
2874
|
+
/**
|
|
2875
|
+
* Type of ERC20 token for the loyalty rule.
|
|
2876
|
+
*/
|
|
2877
|
+
erc20Type?: 'erc20' | 'native';
|
|
1497
2878
|
/**
|
|
1498
2879
|
* Fill source of the order for the token sale
|
|
1499
2880
|
*/
|
|
@@ -1502,6 +2883,14 @@ export declare namespace RuleCreateParams {
|
|
|
1502
2883
|
* Percentage reward given to a user for their first referral.
|
|
1503
2884
|
*/
|
|
1504
2885
|
firstReferralReward?: number | null;
|
|
2886
|
+
/**
|
|
2887
|
+
* Name of the GitHub branch to check for PR merge.
|
|
2888
|
+
*/
|
|
2889
|
+
githubBranchName?: string | null;
|
|
2890
|
+
/**
|
|
2891
|
+
* URL of the GitHub repository to check for star.
|
|
2892
|
+
*/
|
|
2893
|
+
githubRepoUrl?: string | null;
|
|
1505
2894
|
/**
|
|
1506
2895
|
* Flag indicating whether the fill source is included.
|
|
1507
2896
|
*/
|
|
@@ -1510,10 +2899,6 @@ export declare namespace RuleCreateParams {
|
|
|
1510
2899
|
* Indicates if the item has never been sold.
|
|
1511
2900
|
*/
|
|
1512
2901
|
hasNeverSold?: boolean;
|
|
1513
|
-
/**
|
|
1514
|
-
* Flag indicating whether the order source is included.
|
|
1515
|
-
*/
|
|
1516
|
-
hasOrderSource?: boolean;
|
|
1517
2902
|
/**
|
|
1518
2903
|
* Indicates if the full royalty has been paid for items.
|
|
1519
2904
|
*/
|
|
@@ -1530,10 +2915,18 @@ export declare namespace RuleCreateParams {
|
|
|
1530
2915
|
* URL of the image associated with the rule.
|
|
1531
2916
|
*/
|
|
1532
2917
|
imageUrl?: string | null;
|
|
2918
|
+
/**
|
|
2919
|
+
* If enabled, the first transaction done on the platform will complete this rule
|
|
2920
|
+
*/
|
|
2921
|
+
isCheckInOnEveryTxn?: boolean;
|
|
1533
2922
|
/**
|
|
1534
2923
|
* Indicates if the multiplier has been applied to rewards.
|
|
1535
2924
|
*/
|
|
1536
|
-
isMultiplierApplied?: boolean;
|
|
2925
|
+
isMultiplierApplied?: boolean;
|
|
2926
|
+
/**
|
|
2927
|
+
* Flag indicating if the rule is restricted to new users.
|
|
2928
|
+
*/
|
|
2929
|
+
isRestrictedToNewUsers?: boolean;
|
|
1537
2930
|
/**
|
|
1538
2931
|
* Flag indicating if rewards are applied retroactively.
|
|
1539
2932
|
*/
|
|
@@ -1546,6 +2939,10 @@ export declare namespace RuleCreateParams {
|
|
|
1546
2939
|
* Optional link associated with the metadata.
|
|
1547
2940
|
*/
|
|
1548
2941
|
link?: string | null;
|
|
2942
|
+
/**
|
|
2943
|
+
* Liquidity pool details.
|
|
2944
|
+
*/
|
|
2945
|
+
liquidity?: Metadata.Liquidity;
|
|
1549
2946
|
/**
|
|
1550
2947
|
* Maximum quantity constraint for token holding.
|
|
1551
2948
|
*/
|
|
@@ -1579,17 +2976,33 @@ export declare namespace RuleCreateParams {
|
|
|
1579
2976
|
*/
|
|
1580
2977
|
onlyRewardSingleTokenOwnership?: boolean | null;
|
|
1581
2978
|
/**
|
|
1582
|
-
*
|
|
2979
|
+
* Pre-generated text template that will be used to prefill the post content.
|
|
1583
2980
|
*/
|
|
1584
|
-
|
|
2981
|
+
preGeneratedPostText?: string | null;
|
|
1585
2982
|
/**
|
|
1586
2983
|
* Promotional code associated with the rule.
|
|
1587
2984
|
*/
|
|
1588
2985
|
promoCode?: string;
|
|
2986
|
+
/**
|
|
2987
|
+
* URL of the CSV file containing promo codes.
|
|
2988
|
+
*/
|
|
2989
|
+
promoCodeCsvUrl?: string;
|
|
2990
|
+
/**
|
|
2991
|
+
* Numbers of the promotional code to be generated.
|
|
2992
|
+
*/
|
|
2993
|
+
promoCodeLength?: number | null;
|
|
2994
|
+
/**
|
|
2995
|
+
* Type of the promotional code.
|
|
2996
|
+
*/
|
|
2997
|
+
promoCodeType?: 'code' | 'csv' | 'generate';
|
|
1589
2998
|
/**
|
|
1590
2999
|
* Array defining ranges and corresponding rewards.
|
|
1591
3000
|
*/
|
|
1592
3001
|
range?: Array<Metadata.Range>;
|
|
3002
|
+
/**
|
|
3003
|
+
* ID of the Reddit post.
|
|
3004
|
+
*/
|
|
3005
|
+
redditPostId?: string | null;
|
|
1593
3006
|
/**
|
|
1594
3007
|
* Object defining referral requirements.
|
|
1595
3008
|
*/
|
|
@@ -1598,10 +3011,55 @@ export declare namespace RuleCreateParams {
|
|
|
1598
3011
|
* Lump sum reward given to a referrer.
|
|
1599
3012
|
*/
|
|
1600
3013
|
referrerReward?: number | null;
|
|
3014
|
+
/**
|
|
3015
|
+
* Loyalty currency ID of the referrer reward.
|
|
3016
|
+
*/
|
|
3017
|
+
referrerRewardLoyaltyCurrencyId?: string | null;
|
|
3018
|
+
/**
|
|
3019
|
+
* Flag indicating if the post link is required.
|
|
3020
|
+
*/
|
|
3021
|
+
requirePostLink?: boolean | null;
|
|
3022
|
+
/**
|
|
3023
|
+
* Flag indicating if media metadata is required.
|
|
3024
|
+
*/
|
|
3025
|
+
requirePostMediaLink?: boolean | null;
|
|
3026
|
+
/**
|
|
3027
|
+
* Flag indicating if the rule can also reward badges per range.
|
|
3028
|
+
*/
|
|
3029
|
+
rewardBadgePerRange?: boolean;
|
|
3030
|
+
/**
|
|
3031
|
+
* Flag indicating if the reward is rewarded by batch.
|
|
3032
|
+
*/
|
|
3033
|
+
rewardByBatch?: boolean | null;
|
|
3034
|
+
/**
|
|
3035
|
+
* Criteria to evaluate the reward.
|
|
3036
|
+
*/
|
|
3037
|
+
rewardCriteria?: 'IMPRESSIONS_COUNT' | 'ELIGIBLE_POST' | null;
|
|
3038
|
+
/**
|
|
3039
|
+
* Flag indicating if the reward is rewarded per action.
|
|
3040
|
+
*/
|
|
3041
|
+
rewardPerAction?: boolean | null;
|
|
1601
3042
|
/**
|
|
1602
3043
|
* Flag indicating if rewards are given per impression.
|
|
1603
3044
|
*/
|
|
1604
3045
|
rewardPerImpression?: boolean | null;
|
|
3046
|
+
/**
|
|
3047
|
+
* Flag indicating if the rule should reward based on value of traded tokens
|
|
3048
|
+
* instead of count.
|
|
3049
|
+
*/
|
|
3050
|
+
rewardPerValue?: boolean;
|
|
3051
|
+
/**
|
|
3052
|
+
* Flag indicating if the rule should reward quality posts.
|
|
3053
|
+
*/
|
|
3054
|
+
rewardQualityPosts?: boolean;
|
|
3055
|
+
/**
|
|
3056
|
+
* Wallet address of the user can only be used if userId is not provided
|
|
3057
|
+
*/
|
|
3058
|
+
royaltyAddress?: string;
|
|
3059
|
+
/**
|
|
3060
|
+
* Royalty percentage of the item.
|
|
3061
|
+
*/
|
|
3062
|
+
royaltyPercentage?: number;
|
|
1605
3063
|
/**
|
|
1606
3064
|
* Currency associated with sales.
|
|
1607
3065
|
*/
|
|
@@ -1625,7 +3083,7 @@ export declare namespace RuleCreateParams {
|
|
|
1625
3083
|
/**
|
|
1626
3084
|
* Social media platform associated with the rule.
|
|
1627
3085
|
*/
|
|
1628
|
-
socialPlatform?: 'Custom' | 'Discord' | 'EpicGames' | 'Instagram' | 'Steam' | 'Telegram' | 'TikTok' | 'Twitch' | 'X(Twitter)' | 'YouTube' | null;
|
|
3086
|
+
socialPlatform?: 'Custom' | 'Discord' | 'EpicGames' | 'Instagram' | 'Steam' | 'Telegram' | 'TikTok' | 'Twitch' | 'X(Twitter)' | 'YouTube' | 'Google' | 'GitHub' | 'Reddit' | null;
|
|
1629
3087
|
/**
|
|
1630
3088
|
* URL of the social platform's logo.
|
|
1631
3089
|
*/
|
|
@@ -1634,10 +3092,18 @@ export declare namespace RuleCreateParams {
|
|
|
1634
3092
|
* Name of the social platform.
|
|
1635
3093
|
*/
|
|
1636
3094
|
socialPlatformName?: string | null;
|
|
3095
|
+
/**
|
|
3096
|
+
* ID of the Steam app.
|
|
3097
|
+
*/
|
|
3098
|
+
steamAppId?: string | null;
|
|
1637
3099
|
/**
|
|
1638
3100
|
* Array of streak milestones and corresponding rewards.
|
|
1639
3101
|
*/
|
|
1640
3102
|
streakArray?: Array<Metadata.StreakArray> | null;
|
|
3103
|
+
/**
|
|
3104
|
+
* Metadata for swap loyalty rules
|
|
3105
|
+
*/
|
|
3106
|
+
swap?: Metadata.Swap;
|
|
1641
3107
|
/**
|
|
1642
3108
|
* ID of the Telegram channel.
|
|
1643
3109
|
*/
|
|
@@ -1650,6 +3116,11 @@ export declare namespace RuleCreateParams {
|
|
|
1650
3116
|
* Flag indicating if all contracts are tracked.
|
|
1651
3117
|
*/
|
|
1652
3118
|
trackAllContracts?: boolean | null;
|
|
3119
|
+
/**
|
|
3120
|
+
* Flag indicating if the progress is tracked. If enabled, the rule can only be
|
|
3121
|
+
* completed once the progress is 100%.
|
|
3122
|
+
*/
|
|
3123
|
+
trackProgress?: boolean | null;
|
|
1653
3124
|
/**
|
|
1654
3125
|
* URL of the associated Twitter account.
|
|
1655
3126
|
*/
|
|
@@ -1685,7 +3156,15 @@ export declare namespace RuleCreateParams {
|
|
|
1685
3156
|
/**
|
|
1686
3157
|
* Type of wallet associated with the rule.
|
|
1687
3158
|
*/
|
|
1688
|
-
walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | null;
|
|
3159
|
+
walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | 'cosmos' | 'ultra' | 'agw' | 'flow_cadence' | 'substrate' | null;
|
|
3160
|
+
/**
|
|
3161
|
+
* ID of the Youtube channel.
|
|
3162
|
+
*/
|
|
3163
|
+
youtubeChannelId?: string | null;
|
|
3164
|
+
/**
|
|
3165
|
+
* ID of the Youtube video.
|
|
3166
|
+
*/
|
|
3167
|
+
youtubeVideoId?: string | null;
|
|
1689
3168
|
}
|
|
1690
3169
|
namespace Metadata {
|
|
1691
3170
|
interface Collection {
|
|
@@ -1700,7 +3179,7 @@ export declare namespace RuleCreateParams {
|
|
|
1700
3179
|
/**
|
|
1701
3180
|
* Blockchain network of the collection.
|
|
1702
3181
|
*/
|
|
1703
|
-
network?: 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachainArtio' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | '
|
|
3182
|
+
network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'skaleEuropa' | 'skaleCalypso' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
|
|
1704
3183
|
}
|
|
1705
3184
|
/**
|
|
1706
3185
|
* Object containing details for the call-to-action.
|
|
@@ -1765,6 +3244,49 @@ export declare namespace RuleCreateParams {
|
|
|
1765
3244
|
*/
|
|
1766
3245
|
id: string;
|
|
1767
3246
|
}
|
|
3247
|
+
/**
|
|
3248
|
+
* Liquidity pool details.
|
|
3249
|
+
*/
|
|
3250
|
+
interface Liquidity {
|
|
3251
|
+
/**
|
|
3252
|
+
* Calculation type of the liquidity pool.
|
|
3253
|
+
*/
|
|
3254
|
+
calculationType?: 'fixed' | 'custom';
|
|
3255
|
+
/**
|
|
3256
|
+
* Custom function to calculate the the reward amount based on the liquidity
|
|
3257
|
+
* provided per day. X is the reward amount, Y is the liquidity provided per day in
|
|
3258
|
+
* USD.
|
|
3259
|
+
*/
|
|
3260
|
+
customFunction?: string;
|
|
3261
|
+
/**
|
|
3262
|
+
* Liquidity provided per day in USD
|
|
3263
|
+
*/
|
|
3264
|
+
liquidityPerDay?: number;
|
|
3265
|
+
/**
|
|
3266
|
+
* Blockchain network of the liquidity pool.
|
|
3267
|
+
*/
|
|
3268
|
+
network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'skaleEuropa' | 'skaleCalypso' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
|
|
3269
|
+
/**
|
|
3270
|
+
* Indicates if only in-range liquidity is rewarded.
|
|
3271
|
+
*/
|
|
3272
|
+
onlyRewardInRangeLiquidity?: boolean;
|
|
3273
|
+
/**
|
|
3274
|
+
* Array of liquidity pools associated with the rule.
|
|
3275
|
+
*/
|
|
3276
|
+
pools?: Array<Liquidity.Pool>;
|
|
3277
|
+
/**
|
|
3278
|
+
* Protocol of the liquidity pool.
|
|
3279
|
+
*/
|
|
3280
|
+
protocol?: string;
|
|
3281
|
+
}
|
|
3282
|
+
namespace Liquidity {
|
|
3283
|
+
interface Pool {
|
|
3284
|
+
/**
|
|
3285
|
+
* Unique identifier of the liquidity pool.
|
|
3286
|
+
*/
|
|
3287
|
+
id: string;
|
|
3288
|
+
}
|
|
3289
|
+
}
|
|
1768
3290
|
interface Range {
|
|
1769
3291
|
/**
|
|
1770
3292
|
* Reward amount for this range.
|
|
@@ -1778,6 +3300,14 @@ export declare namespace RuleCreateParams {
|
|
|
1778
3300
|
* Start value of the range.
|
|
1779
3301
|
*/
|
|
1780
3302
|
startRange: number;
|
|
3303
|
+
/**
|
|
3304
|
+
* ID of the loyalty badge for this range.
|
|
3305
|
+
*/
|
|
3306
|
+
loyaltyBadgeId?: string;
|
|
3307
|
+
/**
|
|
3308
|
+
* Amount of the loyalty multiplier for this range.
|
|
3309
|
+
*/
|
|
3310
|
+
loyaltyMultiplierAmount?: number;
|
|
1781
3311
|
}
|
|
1782
3312
|
/**
|
|
1783
3313
|
* Object defining referral requirements.
|
|
@@ -1821,18 +3351,14 @@ export declare namespace RuleCreateParams {
|
|
|
1821
3351
|
* Object containing details of the associated smart contract.
|
|
1822
3352
|
*/
|
|
1823
3353
|
interface SmartContract {
|
|
1824
|
-
/**
|
|
1825
|
-
* ABI of the smart contract.
|
|
1826
|
-
*/
|
|
1827
|
-
abi?: string | null;
|
|
1828
3354
|
/**
|
|
1829
3355
|
* Mapping of addresses for the smart contract.
|
|
1830
3356
|
*/
|
|
1831
3357
|
addressMapping?: string | null;
|
|
1832
3358
|
/**
|
|
1833
|
-
*
|
|
3359
|
+
* Object containing details of the amount multiplier from the event.
|
|
1834
3360
|
*/
|
|
1835
|
-
|
|
3361
|
+
amountMultiplier?: SmartContract.AmountMultiplier | null;
|
|
1836
3362
|
/**
|
|
1837
3363
|
* ID of the smart contract.
|
|
1838
3364
|
*/
|
|
@@ -1841,58 +3367,28 @@ export declare namespace RuleCreateParams {
|
|
|
1841
3367
|
* Criteria to evaluate the smart contract event.
|
|
1842
3368
|
*/
|
|
1843
3369
|
criteria?: 'everyEvent' | 'byParameter' | null;
|
|
1844
|
-
/**
|
|
1845
|
-
* Time range applied to the rule.
|
|
1846
|
-
*/
|
|
1847
|
-
customRange?: SmartContract.CustomRange | null;
|
|
1848
3370
|
/**
|
|
1849
3371
|
* Event emitted by the smart contract.
|
|
1850
3372
|
*/
|
|
1851
3373
|
event?: string | null;
|
|
1852
|
-
/**
|
|
1853
|
-
* Maximum value allowed for the parameter.
|
|
1854
|
-
*/
|
|
1855
|
-
max?: number | null;
|
|
1856
3374
|
/**
|
|
1857
3375
|
* Array of parameters for the smart contract.
|
|
1858
3376
|
*/
|
|
1859
3377
|
params?: Array<SmartContract.Param> | null;
|
|
1860
3378
|
/**
|
|
1861
|
-
*
|
|
1862
|
-
*/
|
|
1863
|
-
withBonus?: boolean | null;
|
|
1864
|
-
/**
|
|
1865
|
-
* Flag indicating if a custom range is applied.
|
|
1866
|
-
*/
|
|
1867
|
-
withCustomRange?: boolean | null;
|
|
1868
|
-
/**
|
|
1869
|
-
* Flag indicating if a maximum limit is applied.
|
|
3379
|
+
* Type of the smart contract interaction.
|
|
1870
3380
|
*/
|
|
1871
|
-
|
|
3381
|
+
type?: 'function' | 'event' | null;
|
|
1872
3382
|
}
|
|
1873
3383
|
namespace SmartContract {
|
|
1874
|
-
interface Bonus {
|
|
1875
|
-
/**
|
|
1876
|
-
* Amount of the bonus.
|
|
1877
|
-
*/
|
|
1878
|
-
amount?: number | null;
|
|
1879
|
-
/**
|
|
1880
|
-
* Number of times the bonus is applied.
|
|
1881
|
-
*/
|
|
1882
|
-
count?: number | null;
|
|
1883
|
-
}
|
|
1884
3384
|
/**
|
|
1885
|
-
*
|
|
3385
|
+
* Object containing details of the amount multiplier from the event.
|
|
1886
3386
|
*/
|
|
1887
|
-
interface
|
|
1888
|
-
/**
|
|
1889
|
-
* End time of the custom range.
|
|
1890
|
-
*/
|
|
1891
|
-
endsAt?: string | null;
|
|
3387
|
+
interface AmountMultiplier {
|
|
1892
3388
|
/**
|
|
1893
|
-
*
|
|
3389
|
+
* Mapping of the value for the smart contract.
|
|
1894
3390
|
*/
|
|
1895
|
-
|
|
3391
|
+
valueMapping?: string | null;
|
|
1896
3392
|
}
|
|
1897
3393
|
interface Param {
|
|
1898
3394
|
/**
|
|
@@ -1929,6 +3425,24 @@ export declare namespace RuleCreateParams {
|
|
|
1929
3425
|
*/
|
|
1930
3426
|
streakMilestone: number;
|
|
1931
3427
|
}
|
|
3428
|
+
/**
|
|
3429
|
+
* Metadata for swap loyalty rules
|
|
3430
|
+
*/
|
|
3431
|
+
interface Swap {
|
|
3432
|
+
provider?: 'any' | 'relay' | 'lifi';
|
|
3433
|
+
relayReferrerId?: string;
|
|
3434
|
+
requireCrossChainSwap?: boolean;
|
|
3435
|
+
swappedToChain?: 'any' | number | string;
|
|
3436
|
+
swappedToTokens?: Array<Swap.SwappedToToken>;
|
|
3437
|
+
tokenMode?: 'any' | 'specific';
|
|
3438
|
+
trackTokenAmount?: boolean;
|
|
3439
|
+
}
|
|
3440
|
+
namespace Swap {
|
|
3441
|
+
interface SwappedToToken {
|
|
3442
|
+
address: string;
|
|
3443
|
+
chainId: string;
|
|
3444
|
+
}
|
|
3445
|
+
}
|
|
1932
3446
|
}
|
|
1933
3447
|
interface Collection {
|
|
1934
3448
|
/**
|
|
@@ -1938,7 +3452,11 @@ export declare namespace RuleCreateParams {
|
|
|
1938
3452
|
/**
|
|
1939
3453
|
* Blockchain network for the collection
|
|
1940
3454
|
*/
|
|
1941
|
-
network: 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachainArtio' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | '
|
|
3455
|
+
network: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'skaleEuropa' | 'skaleCalypso' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
|
|
3456
|
+
/**
|
|
3457
|
+
* Symbol of the collection.
|
|
3458
|
+
*/
|
|
3459
|
+
symbol?: string;
|
|
1942
3460
|
}
|
|
1943
3461
|
}
|
|
1944
3462
|
export interface RuleUpdateParams {
|
|
@@ -1954,10 +3472,14 @@ export interface RuleUpdateParams {
|
|
|
1954
3472
|
* Name of the loyalty rule
|
|
1955
3473
|
*/
|
|
1956
3474
|
name: string;
|
|
3475
|
+
/**
|
|
3476
|
+
* The type of claim for the reward
|
|
3477
|
+
*/
|
|
3478
|
+
claimType?: 'manual' | 'auto' | null;
|
|
1957
3479
|
/**
|
|
1958
3480
|
* Blockchain address of the associated collection
|
|
1959
3481
|
*/
|
|
1960
|
-
collectionAddress?: string;
|
|
3482
|
+
collectionAddress?: string | null;
|
|
1961
3483
|
/**
|
|
1962
3484
|
* List of associated collections
|
|
1963
3485
|
*/
|
|
@@ -1982,10 +3504,18 @@ export interface RuleUpdateParams {
|
|
|
1982
3504
|
* Effective start time of the rule
|
|
1983
3505
|
*/
|
|
1984
3506
|
effectiveStartTime?: string | null;
|
|
3507
|
+
/**
|
|
3508
|
+
* ID of the external integration
|
|
3509
|
+
*/
|
|
3510
|
+
externalIntegrationId?: string | null;
|
|
1985
3511
|
/**
|
|
1986
3512
|
* Frequency of the rule execution
|
|
1987
3513
|
*/
|
|
1988
3514
|
frequency?: 'none' | 'once' | 'daily' | 'weekly' | 'monthly' | 'immediately';
|
|
3515
|
+
/**
|
|
3516
|
+
* Optional stratus function id for the rule
|
|
3517
|
+
*/
|
|
3518
|
+
functionId?: string | null;
|
|
1989
3519
|
/**
|
|
1990
3520
|
* Whether to hide this rule in the user interface
|
|
1991
3521
|
*/
|
|
@@ -1993,7 +3523,7 @@ export interface RuleUpdateParams {
|
|
|
1993
3523
|
/**
|
|
1994
3524
|
* Time interval for recurring rule execution
|
|
1995
3525
|
*/
|
|
1996
|
-
interval?: 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | null;
|
|
3526
|
+
interval?: 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | 'unlimited' | null;
|
|
1997
3527
|
/**
|
|
1998
3528
|
* Whether this rule is required for participation
|
|
1999
3529
|
*/
|
|
@@ -2002,6 +3532,16 @@ export interface RuleUpdateParams {
|
|
|
2002
3532
|
* ID of the rule group section to associate with the rule
|
|
2003
3533
|
*/
|
|
2004
3534
|
loyaltyRuleGroupId?: (string & {}) | 'no-section' | null;
|
|
3535
|
+
/**
|
|
3536
|
+
* The interval for the max amount. Available for the smart contract and external
|
|
3537
|
+
* rules.
|
|
3538
|
+
*/
|
|
3539
|
+
maxAmountInterval?: 'daily' | 'weekly' | 'monthly' | 'lifetime' | null;
|
|
3540
|
+
/**
|
|
3541
|
+
* The maximum amount of points a user can earn per interval. Available for the
|
|
3542
|
+
* smart contract and external rules.
|
|
3543
|
+
*/
|
|
3544
|
+
maxAmountPerInterval?: number | null;
|
|
2005
3545
|
/**
|
|
2006
3546
|
* URL of the media to be displayed
|
|
2007
3547
|
*/
|
|
@@ -2013,23 +3553,35 @@ export interface RuleUpdateParams {
|
|
|
2013
3553
|
/**
|
|
2014
3554
|
* Blockchain network where the rule will apply
|
|
2015
3555
|
*/
|
|
2016
|
-
network?: 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachainArtio' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | '
|
|
3556
|
+
network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'skaleEuropa' | 'skaleCalypso' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
|
|
2017
3557
|
/**
|
|
2018
3558
|
* ID for associated OAuth credentials
|
|
2019
3559
|
*/
|
|
2020
3560
|
oauthCredentialsId?: string | null;
|
|
3561
|
+
/**
|
|
3562
|
+
* The lifetime of the reward
|
|
3563
|
+
*/
|
|
3564
|
+
rewardLifetime?: 'permanent' | 'dynamic' | null;
|
|
2021
3565
|
/**
|
|
2022
3566
|
* Type of reward issued by this rule
|
|
2023
3567
|
*/
|
|
2024
|
-
rewardType?: 'points' | 'multiplier';
|
|
3568
|
+
rewardType?: 'points' | 'multiplier' | 'badge';
|
|
3569
|
+
/**
|
|
3570
|
+
* URL of the Shopify store
|
|
3571
|
+
*/
|
|
3572
|
+
shopifyStoreUrl?: string | null;
|
|
3573
|
+
/**
|
|
3574
|
+
* Whether to show this rule before the start time
|
|
3575
|
+
*/
|
|
3576
|
+
showBeforeStart?: boolean;
|
|
2025
3577
|
/**
|
|
2026
3578
|
* Start time for the loyalty rule
|
|
2027
3579
|
*/
|
|
2028
3580
|
startTime?: string | null;
|
|
2029
3581
|
/**
|
|
2030
|
-
* Optional subscription
|
|
3582
|
+
* Optional stratus subscription id for the rule
|
|
2031
3583
|
*/
|
|
2032
|
-
|
|
3584
|
+
subscriptionId?: string | null;
|
|
2033
3585
|
}
|
|
2034
3586
|
export declare namespace RuleUpdateParams {
|
|
2035
3587
|
interface Collection {
|
|
@@ -2040,12 +3592,25 @@ export declare namespace RuleUpdateParams {
|
|
|
2040
3592
|
/**
|
|
2041
3593
|
* Blockchain network for the collection
|
|
2042
3594
|
*/
|
|
2043
|
-
network: 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachainArtio' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | '
|
|
3595
|
+
network: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'skaleEuropa' | 'skaleCalypso' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
|
|
3596
|
+
/**
|
|
3597
|
+
* Symbol of the collection.
|
|
3598
|
+
*/
|
|
3599
|
+
symbol?: string;
|
|
2044
3600
|
}
|
|
2045
3601
|
/**
|
|
2046
3602
|
* Additional metadata for the loyalty rule
|
|
2047
3603
|
*/
|
|
2048
3604
|
interface Metadata {
|
|
3605
|
+
/**
|
|
3606
|
+
* Array of loyalty rule IDs that count as check-in when completed. If ["any"] then
|
|
3607
|
+
* any rule completions count as check-in.
|
|
3608
|
+
*/
|
|
3609
|
+
autoCheckInRuleIds?: Array<(string & {}) | 'any'> | null;
|
|
3610
|
+
/**
|
|
3611
|
+
* Number of tokens per batch.
|
|
3612
|
+
*/
|
|
3613
|
+
batchSize?: number | null;
|
|
2049
3614
|
/**
|
|
2050
3615
|
* Text displayed on the action button.
|
|
2051
3616
|
*/
|
|
@@ -2065,7 +3630,7 @@ export declare namespace RuleUpdateParams {
|
|
|
2065
3630
|
/**
|
|
2066
3631
|
* Text to check in the Twitter post, username, or bio.
|
|
2067
3632
|
*/
|
|
2068
|
-
checkText?: string | null;
|
|
3633
|
+
checkText?: string | Array<string> | null;
|
|
2069
3634
|
/**
|
|
2070
3635
|
* Array of collections associated with the rule.
|
|
2071
3636
|
*/
|
|
@@ -2073,7 +3638,13 @@ export declare namespace RuleUpdateParams {
|
|
|
2073
3638
|
/**
|
|
2074
3639
|
* Conditions for completing the profile.
|
|
2075
3640
|
*/
|
|
2076
|
-
completeProfileConditions?:
|
|
3641
|
+
completeProfileConditions?: {
|
|
3642
|
+
[key: string]: boolean;
|
|
3643
|
+
} | null;
|
|
3644
|
+
/**
|
|
3645
|
+
* Description of the external rule condition (only for external rules)
|
|
3646
|
+
*/
|
|
3647
|
+
conditionDescription?: string;
|
|
2077
3648
|
/**
|
|
2078
3649
|
* Object containing details for the call-to-action.
|
|
2079
3650
|
*/
|
|
@@ -2082,6 +3653,10 @@ export declare namespace RuleUpdateParams {
|
|
|
2082
3653
|
* API key for custom rewards integration.
|
|
2083
3654
|
*/
|
|
2084
3655
|
customRewardsApiKey?: string;
|
|
3656
|
+
/**
|
|
3657
|
+
* Flag indicating if the rule should use direct RPC to get the balance of tokens.
|
|
3658
|
+
*/
|
|
3659
|
+
directRpc?: boolean;
|
|
2085
3660
|
/**
|
|
2086
3661
|
* Array of Discord servers, channels, and roles to join.
|
|
2087
3662
|
*/
|
|
@@ -2102,6 +3677,10 @@ export declare namespace RuleUpdateParams {
|
|
|
2102
3677
|
* Flag indicating whether the verified multiplier is enabled.
|
|
2103
3678
|
*/
|
|
2104
3679
|
enableVerifiedMultiplier?: boolean;
|
|
3680
|
+
/**
|
|
3681
|
+
* Type of ERC20 token for the loyalty rule.
|
|
3682
|
+
*/
|
|
3683
|
+
erc20Type?: 'erc20' | 'native';
|
|
2105
3684
|
/**
|
|
2106
3685
|
* Fill source of the order for the token sale
|
|
2107
3686
|
*/
|
|
@@ -2110,6 +3689,14 @@ export declare namespace RuleUpdateParams {
|
|
|
2110
3689
|
* Percentage reward given to a user for their first referral.
|
|
2111
3690
|
*/
|
|
2112
3691
|
firstReferralReward?: number | null;
|
|
3692
|
+
/**
|
|
3693
|
+
* Name of the GitHub branch to check for PR merge.
|
|
3694
|
+
*/
|
|
3695
|
+
githubBranchName?: string | null;
|
|
3696
|
+
/**
|
|
3697
|
+
* URL of the GitHub repository to check for star.
|
|
3698
|
+
*/
|
|
3699
|
+
githubRepoUrl?: string | null;
|
|
2113
3700
|
/**
|
|
2114
3701
|
* Flag indicating whether the fill source is included.
|
|
2115
3702
|
*/
|
|
@@ -2118,10 +3705,6 @@ export declare namespace RuleUpdateParams {
|
|
|
2118
3705
|
* Indicates if the item has never been sold.
|
|
2119
3706
|
*/
|
|
2120
3707
|
hasNeverSold?: boolean;
|
|
2121
|
-
/**
|
|
2122
|
-
* Flag indicating whether the order source is included.
|
|
2123
|
-
*/
|
|
2124
|
-
hasOrderSource?: boolean;
|
|
2125
3708
|
/**
|
|
2126
3709
|
* Indicates if the full royalty has been paid for items.
|
|
2127
3710
|
*/
|
|
@@ -2138,10 +3721,18 @@ export declare namespace RuleUpdateParams {
|
|
|
2138
3721
|
* URL of the image associated with the rule.
|
|
2139
3722
|
*/
|
|
2140
3723
|
imageUrl?: string | null;
|
|
3724
|
+
/**
|
|
3725
|
+
* If enabled, the first transaction done on the platform will complete this rule
|
|
3726
|
+
*/
|
|
3727
|
+
isCheckInOnEveryTxn?: boolean;
|
|
2141
3728
|
/**
|
|
2142
3729
|
* Indicates if the multiplier has been applied to rewards.
|
|
2143
3730
|
*/
|
|
2144
3731
|
isMultiplierApplied?: boolean;
|
|
3732
|
+
/**
|
|
3733
|
+
* Flag indicating if the rule is restricted to new users.
|
|
3734
|
+
*/
|
|
3735
|
+
isRestrictedToNewUsers?: boolean;
|
|
2145
3736
|
/**
|
|
2146
3737
|
* Flag indicating if rewards are applied retroactively.
|
|
2147
3738
|
*/
|
|
@@ -2154,6 +3745,10 @@ export declare namespace RuleUpdateParams {
|
|
|
2154
3745
|
* Optional link associated with the metadata.
|
|
2155
3746
|
*/
|
|
2156
3747
|
link?: string | null;
|
|
3748
|
+
/**
|
|
3749
|
+
* Liquidity pool details.
|
|
3750
|
+
*/
|
|
3751
|
+
liquidity?: Metadata.Liquidity;
|
|
2157
3752
|
/**
|
|
2158
3753
|
* Maximum quantity constraint for token holding.
|
|
2159
3754
|
*/
|
|
@@ -2187,17 +3782,33 @@ export declare namespace RuleUpdateParams {
|
|
|
2187
3782
|
*/
|
|
2188
3783
|
onlyRewardSingleTokenOwnership?: boolean | null;
|
|
2189
3784
|
/**
|
|
2190
|
-
*
|
|
3785
|
+
* Pre-generated text template that will be used to prefill the post content.
|
|
2191
3786
|
*/
|
|
2192
|
-
|
|
3787
|
+
preGeneratedPostText?: string | null;
|
|
2193
3788
|
/**
|
|
2194
3789
|
* Promotional code associated with the rule.
|
|
2195
3790
|
*/
|
|
2196
3791
|
promoCode?: string;
|
|
3792
|
+
/**
|
|
3793
|
+
* URL of the CSV file containing promo codes.
|
|
3794
|
+
*/
|
|
3795
|
+
promoCodeCsvUrl?: string;
|
|
3796
|
+
/**
|
|
3797
|
+
* Numbers of the promotional code to be generated.
|
|
3798
|
+
*/
|
|
3799
|
+
promoCodeLength?: number | null;
|
|
3800
|
+
/**
|
|
3801
|
+
* Type of the promotional code.
|
|
3802
|
+
*/
|
|
3803
|
+
promoCodeType?: 'code' | 'csv' | 'generate';
|
|
2197
3804
|
/**
|
|
2198
3805
|
* Array defining ranges and corresponding rewards.
|
|
2199
3806
|
*/
|
|
2200
3807
|
range?: Array<Metadata.Range>;
|
|
3808
|
+
/**
|
|
3809
|
+
* ID of the Reddit post.
|
|
3810
|
+
*/
|
|
3811
|
+
redditPostId?: string | null;
|
|
2201
3812
|
/**
|
|
2202
3813
|
* Object defining referral requirements.
|
|
2203
3814
|
*/
|
|
@@ -2206,10 +3817,55 @@ export declare namespace RuleUpdateParams {
|
|
|
2206
3817
|
* Lump sum reward given to a referrer.
|
|
2207
3818
|
*/
|
|
2208
3819
|
referrerReward?: number | null;
|
|
3820
|
+
/**
|
|
3821
|
+
* Loyalty currency ID of the referrer reward.
|
|
3822
|
+
*/
|
|
3823
|
+
referrerRewardLoyaltyCurrencyId?: string | null;
|
|
3824
|
+
/**
|
|
3825
|
+
* Flag indicating if the post link is required.
|
|
3826
|
+
*/
|
|
3827
|
+
requirePostLink?: boolean | null;
|
|
3828
|
+
/**
|
|
3829
|
+
* Flag indicating if media metadata is required.
|
|
3830
|
+
*/
|
|
3831
|
+
requirePostMediaLink?: boolean | null;
|
|
3832
|
+
/**
|
|
3833
|
+
* Flag indicating if the rule can also reward badges per range.
|
|
3834
|
+
*/
|
|
3835
|
+
rewardBadgePerRange?: boolean;
|
|
3836
|
+
/**
|
|
3837
|
+
* Flag indicating if the reward is rewarded by batch.
|
|
3838
|
+
*/
|
|
3839
|
+
rewardByBatch?: boolean | null;
|
|
3840
|
+
/**
|
|
3841
|
+
* Criteria to evaluate the reward.
|
|
3842
|
+
*/
|
|
3843
|
+
rewardCriteria?: 'IMPRESSIONS_COUNT' | 'ELIGIBLE_POST' | null;
|
|
3844
|
+
/**
|
|
3845
|
+
* Flag indicating if the reward is rewarded per action.
|
|
3846
|
+
*/
|
|
3847
|
+
rewardPerAction?: boolean | null;
|
|
2209
3848
|
/**
|
|
2210
3849
|
* Flag indicating if rewards are given per impression.
|
|
2211
3850
|
*/
|
|
2212
3851
|
rewardPerImpression?: boolean | null;
|
|
3852
|
+
/**
|
|
3853
|
+
* Flag indicating if the rule should reward based on value of traded tokens
|
|
3854
|
+
* instead of count.
|
|
3855
|
+
*/
|
|
3856
|
+
rewardPerValue?: boolean;
|
|
3857
|
+
/**
|
|
3858
|
+
* Flag indicating if the rule should reward quality posts.
|
|
3859
|
+
*/
|
|
3860
|
+
rewardQualityPosts?: boolean;
|
|
3861
|
+
/**
|
|
3862
|
+
* Wallet address of the user can only be used if userId is not provided
|
|
3863
|
+
*/
|
|
3864
|
+
royaltyAddress?: string;
|
|
3865
|
+
/**
|
|
3866
|
+
* Royalty percentage of the item.
|
|
3867
|
+
*/
|
|
3868
|
+
royaltyPercentage?: number;
|
|
2213
3869
|
/**
|
|
2214
3870
|
* Currency associated with sales.
|
|
2215
3871
|
*/
|
|
@@ -2233,7 +3889,7 @@ export declare namespace RuleUpdateParams {
|
|
|
2233
3889
|
/**
|
|
2234
3890
|
* Social media platform associated with the rule.
|
|
2235
3891
|
*/
|
|
2236
|
-
socialPlatform?: 'Custom' | 'Discord' | 'EpicGames' | 'Instagram' | 'Steam' | 'Telegram' | 'TikTok' | 'Twitch' | 'X(Twitter)' | 'YouTube' | null;
|
|
3892
|
+
socialPlatform?: 'Custom' | 'Discord' | 'EpicGames' | 'Instagram' | 'Steam' | 'Telegram' | 'TikTok' | 'Twitch' | 'X(Twitter)' | 'YouTube' | 'Google' | 'GitHub' | 'Reddit' | null;
|
|
2237
3893
|
/**
|
|
2238
3894
|
* URL of the social platform's logo.
|
|
2239
3895
|
*/
|
|
@@ -2242,10 +3898,18 @@ export declare namespace RuleUpdateParams {
|
|
|
2242
3898
|
* Name of the social platform.
|
|
2243
3899
|
*/
|
|
2244
3900
|
socialPlatformName?: string | null;
|
|
3901
|
+
/**
|
|
3902
|
+
* ID of the Steam app.
|
|
3903
|
+
*/
|
|
3904
|
+
steamAppId?: string | null;
|
|
2245
3905
|
/**
|
|
2246
3906
|
* Array of streak milestones and corresponding rewards.
|
|
2247
3907
|
*/
|
|
2248
3908
|
streakArray?: Array<Metadata.StreakArray> | null;
|
|
3909
|
+
/**
|
|
3910
|
+
* Metadata for swap loyalty rules
|
|
3911
|
+
*/
|
|
3912
|
+
swap?: Metadata.Swap;
|
|
2249
3913
|
/**
|
|
2250
3914
|
* ID of the Telegram channel.
|
|
2251
3915
|
*/
|
|
@@ -2258,6 +3922,11 @@ export declare namespace RuleUpdateParams {
|
|
|
2258
3922
|
* Flag indicating if all contracts are tracked.
|
|
2259
3923
|
*/
|
|
2260
3924
|
trackAllContracts?: boolean | null;
|
|
3925
|
+
/**
|
|
3926
|
+
* Flag indicating if the progress is tracked. If enabled, the rule can only be
|
|
3927
|
+
* completed once the progress is 100%.
|
|
3928
|
+
*/
|
|
3929
|
+
trackProgress?: boolean | null;
|
|
2261
3930
|
/**
|
|
2262
3931
|
* URL of the associated Twitter account.
|
|
2263
3932
|
*/
|
|
@@ -2293,7 +3962,15 @@ export declare namespace RuleUpdateParams {
|
|
|
2293
3962
|
/**
|
|
2294
3963
|
* Type of wallet associated with the rule.
|
|
2295
3964
|
*/
|
|
2296
|
-
walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | null;
|
|
3965
|
+
walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | 'cosmos' | 'ultra' | 'agw' | 'flow_cadence' | 'substrate' | null;
|
|
3966
|
+
/**
|
|
3967
|
+
* ID of the Youtube channel.
|
|
3968
|
+
*/
|
|
3969
|
+
youtubeChannelId?: string | null;
|
|
3970
|
+
/**
|
|
3971
|
+
* ID of the Youtube video.
|
|
3972
|
+
*/
|
|
3973
|
+
youtubeVideoId?: string | null;
|
|
2297
3974
|
}
|
|
2298
3975
|
namespace Metadata {
|
|
2299
3976
|
interface Collection {
|
|
@@ -2308,7 +3985,7 @@ export declare namespace RuleUpdateParams {
|
|
|
2308
3985
|
/**
|
|
2309
3986
|
* Blockchain network of the collection.
|
|
2310
3987
|
*/
|
|
2311
|
-
network?: 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachainArtio' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | '
|
|
3988
|
+
network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'skaleEuropa' | 'skaleCalypso' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
|
|
2312
3989
|
}
|
|
2313
3990
|
/**
|
|
2314
3991
|
* Object containing details for the call-to-action.
|
|
@@ -2373,6 +4050,49 @@ export declare namespace RuleUpdateParams {
|
|
|
2373
4050
|
*/
|
|
2374
4051
|
id: string;
|
|
2375
4052
|
}
|
|
4053
|
+
/**
|
|
4054
|
+
* Liquidity pool details.
|
|
4055
|
+
*/
|
|
4056
|
+
interface Liquidity {
|
|
4057
|
+
/**
|
|
4058
|
+
* Calculation type of the liquidity pool.
|
|
4059
|
+
*/
|
|
4060
|
+
calculationType?: 'fixed' | 'custom';
|
|
4061
|
+
/**
|
|
4062
|
+
* Custom function to calculate the the reward amount based on the liquidity
|
|
4063
|
+
* provided per day. X is the reward amount, Y is the liquidity provided per day in
|
|
4064
|
+
* USD.
|
|
4065
|
+
*/
|
|
4066
|
+
customFunction?: string;
|
|
4067
|
+
/**
|
|
4068
|
+
* Liquidity provided per day in USD
|
|
4069
|
+
*/
|
|
4070
|
+
liquidityPerDay?: number;
|
|
4071
|
+
/**
|
|
4072
|
+
* Blockchain network of the liquidity pool.
|
|
4073
|
+
*/
|
|
4074
|
+
network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'skaleEuropa' | 'skaleCalypso' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
|
|
4075
|
+
/**
|
|
4076
|
+
* Indicates if only in-range liquidity is rewarded.
|
|
4077
|
+
*/
|
|
4078
|
+
onlyRewardInRangeLiquidity?: boolean;
|
|
4079
|
+
/**
|
|
4080
|
+
* Array of liquidity pools associated with the rule.
|
|
4081
|
+
*/
|
|
4082
|
+
pools?: Array<Liquidity.Pool>;
|
|
4083
|
+
/**
|
|
4084
|
+
* Protocol of the liquidity pool.
|
|
4085
|
+
*/
|
|
4086
|
+
protocol?: string;
|
|
4087
|
+
}
|
|
4088
|
+
namespace Liquidity {
|
|
4089
|
+
interface Pool {
|
|
4090
|
+
/**
|
|
4091
|
+
* Unique identifier of the liquidity pool.
|
|
4092
|
+
*/
|
|
4093
|
+
id: string;
|
|
4094
|
+
}
|
|
4095
|
+
}
|
|
2376
4096
|
interface Range {
|
|
2377
4097
|
/**
|
|
2378
4098
|
* Reward amount for this range.
|
|
@@ -2386,6 +4106,14 @@ export declare namespace RuleUpdateParams {
|
|
|
2386
4106
|
* Start value of the range.
|
|
2387
4107
|
*/
|
|
2388
4108
|
startRange: number;
|
|
4109
|
+
/**
|
|
4110
|
+
* ID of the loyalty badge for this range.
|
|
4111
|
+
*/
|
|
4112
|
+
loyaltyBadgeId?: string;
|
|
4113
|
+
/**
|
|
4114
|
+
* Amount of the loyalty multiplier for this range.
|
|
4115
|
+
*/
|
|
4116
|
+
loyaltyMultiplierAmount?: number;
|
|
2389
4117
|
}
|
|
2390
4118
|
/**
|
|
2391
4119
|
* Object defining referral requirements.
|
|
@@ -2429,18 +4157,14 @@ export declare namespace RuleUpdateParams {
|
|
|
2429
4157
|
* Object containing details of the associated smart contract.
|
|
2430
4158
|
*/
|
|
2431
4159
|
interface SmartContract {
|
|
2432
|
-
/**
|
|
2433
|
-
* ABI of the smart contract.
|
|
2434
|
-
*/
|
|
2435
|
-
abi?: string | null;
|
|
2436
4160
|
/**
|
|
2437
4161
|
* Mapping of addresses for the smart contract.
|
|
2438
4162
|
*/
|
|
2439
4163
|
addressMapping?: string | null;
|
|
2440
4164
|
/**
|
|
2441
|
-
*
|
|
4165
|
+
* Object containing details of the amount multiplier from the event.
|
|
2442
4166
|
*/
|
|
2443
|
-
|
|
4167
|
+
amountMultiplier?: SmartContract.AmountMultiplier | null;
|
|
2444
4168
|
/**
|
|
2445
4169
|
* ID of the smart contract.
|
|
2446
4170
|
*/
|
|
@@ -2449,58 +4173,28 @@ export declare namespace RuleUpdateParams {
|
|
|
2449
4173
|
* Criteria to evaluate the smart contract event.
|
|
2450
4174
|
*/
|
|
2451
4175
|
criteria?: 'everyEvent' | 'byParameter' | null;
|
|
2452
|
-
/**
|
|
2453
|
-
* Time range applied to the rule.
|
|
2454
|
-
*/
|
|
2455
|
-
customRange?: SmartContract.CustomRange | null;
|
|
2456
4176
|
/**
|
|
2457
4177
|
* Event emitted by the smart contract.
|
|
2458
4178
|
*/
|
|
2459
4179
|
event?: string | null;
|
|
2460
|
-
/**
|
|
2461
|
-
* Maximum value allowed for the parameter.
|
|
2462
|
-
*/
|
|
2463
|
-
max?: number | null;
|
|
2464
4180
|
/**
|
|
2465
4181
|
* Array of parameters for the smart contract.
|
|
2466
4182
|
*/
|
|
2467
4183
|
params?: Array<SmartContract.Param> | null;
|
|
2468
4184
|
/**
|
|
2469
|
-
*
|
|
2470
|
-
*/
|
|
2471
|
-
withBonus?: boolean | null;
|
|
2472
|
-
/**
|
|
2473
|
-
* Flag indicating if a custom range is applied.
|
|
2474
|
-
*/
|
|
2475
|
-
withCustomRange?: boolean | null;
|
|
2476
|
-
/**
|
|
2477
|
-
* Flag indicating if a maximum limit is applied.
|
|
4185
|
+
* Type of the smart contract interaction.
|
|
2478
4186
|
*/
|
|
2479
|
-
|
|
4187
|
+
type?: 'function' | 'event' | null;
|
|
2480
4188
|
}
|
|
2481
4189
|
namespace SmartContract {
|
|
2482
|
-
interface Bonus {
|
|
2483
|
-
/**
|
|
2484
|
-
* Amount of the bonus.
|
|
2485
|
-
*/
|
|
2486
|
-
amount?: number | null;
|
|
2487
|
-
/**
|
|
2488
|
-
* Number of times the bonus is applied.
|
|
2489
|
-
*/
|
|
2490
|
-
count?: number | null;
|
|
2491
|
-
}
|
|
2492
4190
|
/**
|
|
2493
|
-
*
|
|
4191
|
+
* Object containing details of the amount multiplier from the event.
|
|
2494
4192
|
*/
|
|
2495
|
-
interface
|
|
2496
|
-
/**
|
|
2497
|
-
* End time of the custom range.
|
|
2498
|
-
*/
|
|
2499
|
-
endsAt?: string | null;
|
|
4193
|
+
interface AmountMultiplier {
|
|
2500
4194
|
/**
|
|
2501
|
-
*
|
|
4195
|
+
* Mapping of the value for the smart contract.
|
|
2502
4196
|
*/
|
|
2503
|
-
|
|
4197
|
+
valueMapping?: string | null;
|
|
2504
4198
|
}
|
|
2505
4199
|
interface Param {
|
|
2506
4200
|
/**
|
|
@@ -2537,15 +4231,55 @@ export declare namespace RuleUpdateParams {
|
|
|
2537
4231
|
*/
|
|
2538
4232
|
streakMilestone: number;
|
|
2539
4233
|
}
|
|
4234
|
+
/**
|
|
4235
|
+
* Metadata for swap loyalty rules
|
|
4236
|
+
*/
|
|
4237
|
+
interface Swap {
|
|
4238
|
+
provider?: 'any' | 'relay' | 'lifi';
|
|
4239
|
+
relayReferrerId?: string;
|
|
4240
|
+
requireCrossChainSwap?: boolean;
|
|
4241
|
+
swappedToChain?: 'any' | number | string;
|
|
4242
|
+
swappedToTokens?: Array<Swap.SwappedToToken>;
|
|
4243
|
+
tokenMode?: 'any' | 'specific';
|
|
4244
|
+
trackTokenAmount?: boolean;
|
|
4245
|
+
}
|
|
4246
|
+
namespace Swap {
|
|
4247
|
+
interface SwappedToToken {
|
|
4248
|
+
address: string;
|
|
4249
|
+
chainId: string;
|
|
4250
|
+
}
|
|
4251
|
+
}
|
|
2540
4252
|
}
|
|
2541
4253
|
}
|
|
2542
4254
|
export interface RuleListParams {
|
|
4255
|
+
/**
|
|
4256
|
+
* IDs of the users to filter results by
|
|
4257
|
+
*/
|
|
4258
|
+
allotedToUserId?: string | Array<string>;
|
|
4259
|
+
/**
|
|
4260
|
+
* ID of the user group to filter results by
|
|
4261
|
+
*/
|
|
4262
|
+
allotedUserGroupId?: string;
|
|
2543
4263
|
/**
|
|
2544
4264
|
* Address of the collection to filter by
|
|
2545
4265
|
*/
|
|
2546
4266
|
collectionAddress?: string;
|
|
2547
4267
|
/**
|
|
2548
|
-
*
|
|
4268
|
+
* Whether to include deleted/archived records
|
|
4269
|
+
*/
|
|
4270
|
+
includeDeleted?: boolean | null;
|
|
4271
|
+
/**
|
|
4272
|
+
* If true this will only return active rules, the rules for which the startTime is
|
|
4273
|
+
* in the past and the endTime is in the future
|
|
4274
|
+
*/
|
|
4275
|
+
isActive?: 'true' | 'false';
|
|
4276
|
+
/**
|
|
4277
|
+
* If true this will only return special rules, special rules are the rules that
|
|
4278
|
+
* are used for anti sybil as honey pot
|
|
4279
|
+
*/
|
|
4280
|
+
isSpecial?: 'true' | 'false';
|
|
4281
|
+
/**
|
|
4282
|
+
* Maximum number of records to return (max 100)
|
|
2549
4283
|
*/
|
|
2550
4284
|
limit?: number;
|
|
2551
4285
|
/**
|
|
@@ -2569,6 +4303,12 @@ export interface RuleListParams {
|
|
|
2569
4303
|
*/
|
|
2570
4304
|
websiteId?: string;
|
|
2571
4305
|
}
|
|
4306
|
+
export interface RuleDeleteParams {
|
|
4307
|
+
/**
|
|
4308
|
+
* Whether to debit loyalty points
|
|
4309
|
+
*/
|
|
4310
|
+
debitLoyaltyPoints?: string;
|
|
4311
|
+
}
|
|
2572
4312
|
export interface RuleCompleteParams {
|
|
2573
4313
|
/**
|
|
2574
4314
|
* Override amount for the reward (rounded to nearest whole number). This will
|
|
@@ -2576,13 +4316,25 @@ export interface RuleCompleteParams {
|
|
|
2576
4316
|
*/
|
|
2577
4317
|
amount?: number | null;
|
|
2578
4318
|
/**
|
|
2579
|
-
* Link to the comment made by user
|
|
4319
|
+
* Link to the post/comment made by user
|
|
4320
|
+
*/
|
|
4321
|
+
contentUrl?: string;
|
|
4322
|
+
/**
|
|
4323
|
+
* Unique key to ensure idempotent requests.
|
|
2580
4324
|
*/
|
|
2581
|
-
|
|
4325
|
+
idempotencyKey?: string;
|
|
2582
4326
|
/**
|
|
2583
4327
|
* ID of the choice selected by the user
|
|
2584
4328
|
*/
|
|
2585
4329
|
loyaltyQuestionChoiceId?: string;
|
|
4330
|
+
/**
|
|
4331
|
+
* Value to compare with the range
|
|
4332
|
+
*/
|
|
4333
|
+
rangeValue?: number | null;
|
|
4334
|
+
/**
|
|
4335
|
+
* Flag indicating if the chain or required check should be skipped.
|
|
4336
|
+
*/
|
|
4337
|
+
skipChainOrRequiredCheck?: boolean;
|
|
2586
4338
|
/**
|
|
2587
4339
|
* Unique identifier for the user
|
|
2588
4340
|
*/
|
|
@@ -2593,7 +4345,7 @@ export interface RuleCompleteParams {
|
|
|
2593
4345
|
verificationCode?: string;
|
|
2594
4346
|
/**
|
|
2595
4347
|
* Flag indicating if only verification is required, this will not create a
|
|
2596
|
-
* transaction and reward the user
|
|
4348
|
+
* transaction and reward the user.
|
|
2597
4349
|
*/
|
|
2598
4350
|
verifyOnly?: string;
|
|
2599
4351
|
/**
|
|
@@ -2602,11 +4354,25 @@ export interface RuleCompleteParams {
|
|
|
2602
4354
|
walletAddress?: string;
|
|
2603
4355
|
}
|
|
2604
4356
|
export interface RuleGetStatusParams {
|
|
2605
|
-
|
|
2606
|
-
|
|
4357
|
+
/**
|
|
4358
|
+
* Number of items to return
|
|
4359
|
+
*/
|
|
4360
|
+
limit?: number | null;
|
|
4361
|
+
/**
|
|
4362
|
+
* Unique identifier for the loyalty rule[s]
|
|
4363
|
+
*/
|
|
4364
|
+
loyaltyRuleId?: string | Array<string>;
|
|
4365
|
+
organizationId?: string;
|
|
4366
|
+
/**
|
|
4367
|
+
* Starting after item
|
|
4368
|
+
*/
|
|
4369
|
+
startingAfter?: string;
|
|
4370
|
+
userGroupId?: string;
|
|
2607
4371
|
userId?: string;
|
|
4372
|
+
walletAddress?: string;
|
|
4373
|
+
websiteId?: string;
|
|
2608
4374
|
}
|
|
2609
4375
|
export declare namespace Rules {
|
|
2610
|
-
export { type RuleCreateResponse as RuleCreateResponse, type RuleUpdateResponse as RuleUpdateResponse, type RuleListResponse as RuleListResponse, type RuleDeleteResponse as RuleDeleteResponse, type RuleCompleteResponse as RuleCompleteResponse, type RuleGetStatusResponse as RuleGetStatusResponse, type RuleCreateParams as RuleCreateParams, type RuleUpdateParams as RuleUpdateParams, type RuleListParams as RuleListParams, type RuleCompleteParams as RuleCompleteParams, type RuleGetStatusParams as RuleGetStatusParams, };
|
|
4376
|
+
export { type RuleCreateResponse as RuleCreateResponse, type RuleUpdateResponse as RuleUpdateResponse, type RuleListResponse as RuleListResponse, type RuleDeleteResponse as RuleDeleteResponse, type RuleCompleteResponse as RuleCompleteResponse, type RuleGetStatusResponse as RuleGetStatusResponse, type RuleCreateParams as RuleCreateParams, type RuleUpdateParams as RuleUpdateParams, type RuleListParams as RuleListParams, type RuleDeleteParams as RuleDeleteParams, type RuleCompleteParams as RuleCompleteParams, type RuleGetStatusParams as RuleGetStatusParams, };
|
|
2611
4377
|
}
|
|
2612
4378
|
//# sourceMappingURL=rules.d.ts.map
|