You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Description: Registers a new Based Application (bApp) with specified tokens and risk levels.
60
60
61
61
|**Parameter**|**Type**|**Description**|
62
62
| ------------ | -------- | --------------- |
63
-
| bApp | address | The address of the bApp to register |
64
63
| tokens | address[]| List of token addresses the bApp accepts |
65
64
| sharedRiskLevels | uint32[]| New risk levels for each token (max 100000) (scaled by 1e4, so 2.5 = 25000) |
66
65
| metadataURI | string | metadata URI of the bApp, which is a link (e.g., http://example.com) to a JSON file containing metadata such as the name, description, logo, etc. |
@@ -93,15 +92,22 @@ Description: Adds new tokens to an existing bApp.
Description: Updates the shared risk levels for existing tokens in a bApp. Can only be called by the bApp owner. Fails if any token is not already supported by the bApp or if the new risk level is the same as the current one.
97
+
Description: Updates the token configurations for multiple bApps. Can only be called by the bApp owner.
99
98
100
99
|**Parameter**|**Type**|**Description**|
101
100
| ------------ | -------- | --------------- |
102
-
| bApp | address | The address of the bApp |
103
-
| tokens | address[]| List of token addresses to update |
104
-
| sharedRiskLevels | uint32[]| New risk levels for each token (max 100000) (scaled by 1e4, so 2.5 = 25000) |
101
+
| tokenConfigs | ICore.TokenConfig[]| Array of token configurations to update |
Description: Proposes a withdrawal of ERC20 tokens from a strategy, initiating the timelock period. Cannot be used for ETH withdrawals (use proposeWithdrawalETH instead). The amount must be greater than 0 and not exceed the user's balance in the strategy.
@@ -205,7 +188,7 @@ Description: Proposes a withdrawal of ERC20 tokens from a strategy, initiating t
205
188
| amount | uint256 | The amount of tokens to withdraw |
Description: Slashes a strategy's balance for a specific bApp and token. This function is used to penalize strategies that fail to meet their obligations.
321
+
322
+
|**Parameter**|**Type**|**Description**|
323
+
| ------------ | -------- | --------------- |
324
+
| strategyId | uint32 | The ID of the strategy to slash |
325
+
| bApp | address | The address of the bApp |
326
+
| token | address | The token address to slash |
327
+
| percentage | uint32 | The percentage of the balance to slash (scaled by 1e4) |
328
+
| data | bytes | Additional data required for the slashing operation |
The metadata schema is used to store the metadata of the bApp.
8
+
Metadata schemas are used to store the metadata of a bApp, strategy, and account.
9
9
10
-
It is stored in the Based App Manager smart contract, as `metadataURI` for a bapp. It is a link (e.g., `http://example.com`) to a JSON file containing metadata such as the name, description, logo, etc. You can set the URI when [registering a bApp](./SSVBasedApps#registerbappbapp-tokens-sharedrisklevels-metadatauri) or [update the URI at any point in the future](./SSVBasedApps#updatebappmetadatauribapp-metadatauri).
10
+
They should be saved at a URL that can be accessed freely, such as [this.](https://raw.githubusercontent.com/taylorferran/bapp-metadata/refs/heads/main/metadata.json)
11
+
12
+
## Bapp
13
+
14
+
Stored in the Based App Manager smart contract, as `metadataURI` for a bapp. It is a link (e.g., `http://example.com`) to a JSON file containing metadata such as the name, description, logo, etc. You can set the URI when [registering a bApp](./SSVBasedApps#registerbappbapp-tokens-sharedrisklevels-metadatauri) or [update the URI at any point in the future](./SSVBasedApps#updatebappmetadatauribapp-metadatauri).
11
15
12
16
:::info
13
17
It is important to set this correctly, as it is used to identify the bApp on interfaces such as the SSV Based App website.
14
18
:::
15
19
16
-
It is a JSON object that contains the following fields:
20
+
### Bapp schema
17
21
18
22
```json
19
23
{
20
-
"name": "J-Oracle",
21
-
"description": "J-Oracle delivers secure data feeds and real-world connectivity for blockchains and beyond.",
Strategies are used to secure Based Applications, the most common use cases of bApps [are described on this page](../learn/based-applications/use-cases.md).
9
+
10
+
Strategies are often created by node operators (not necessarily SSV node operators) that want to engage with bApps and earn rewards for securing them. You can read more [about the Rewards for securing bApps](../learn/ssv2.0-a-based-applications-protocol/ultra-sound-ssv/rewards.md).
11
+
12
+
## 1. Go to Strategies page
13
+
14
+
Navigate to the [SSV Webapp](https://app.stage.ssv.network/account/my-delegations), login with your chosen wallet and click on Strategies.
15
+
16
+
This page will display a list of the Strategies you already created.
17
+
18
+
<divstyle={{textAlign:'center'}}>
19
+
<imgsrc="/img/create-strategy-1.png"alt="" />
20
+
</div>
21
+
22
+
## 2. Create Strategy
23
+
24
+
Once you clicked on "Create Strategy" you will see a list of available bApps you can choose from.
25
+
26
+
In this example, we will skip this step and choose "I'll do it later" on the bottom of the page.
27
+
28
+
<divstyle={{textAlign:'center'}}>
29
+
<imgsrc="/img/create-strategy-2.png"alt="" />
30
+
</div>
31
+
32
+
## 3. Set Fee and Obligations
33
+
34
+
You will be prompted to set the Obligations and the Fees for your strategy. If you did not choose any bApp on the previous step, the Obligations step will be skipped and you will go to the "Set Fee" stage.
35
+
36
+
Enter an amount for your Fee, and click the Continue button.
0 commit comments