diff --git a/website/pages/en/resources/roles/_meta.js b/website/pages/en/resources/roles/_meta.js index bf461d597f0a..4a246af1e616 100644 --- a/website/pages/en/resources/roles/_meta.js +++ b/website/pages/en/resources/roles/_meta.js @@ -1,4 +1,4 @@ export default { - delegating: '', + delegating: 'Delegating', curating: '', } diff --git a/website/pages/en/resources/roles/delegating/_meta.js b/website/pages/en/resources/roles/delegating/_meta.js new file mode 100644 index 000000000000..8d6514a7dc23 --- /dev/null +++ b/website/pages/en/resources/roles/delegating/_meta.js @@ -0,0 +1,4 @@ +export default { + delegating: '', + undelegating: 'Undelegating', +} diff --git a/website/pages/en/resources/roles/delegating.mdx b/website/pages/en/resources/roles/delegating/delegating.mdx similarity index 100% rename from website/pages/en/resources/roles/delegating.mdx rename to website/pages/en/resources/roles/delegating/delegating.mdx diff --git a/website/pages/en/resources/roles/delegating/undelegating.mdx b/website/pages/en/resources/roles/delegating/undelegating.mdx new file mode 100644 index 000000000000..581ab4b06214 --- /dev/null +++ b/website/pages/en/resources/roles/delegating/undelegating.mdx @@ -0,0 +1,55 @@ +--- +title: Undelegating +--- + +Learn how to withdraw your delegated tokens through [Graph Explorer](https://thegraph.com/explorer) or [Arbiscan](https://arbiscan.io/). + +> To avoid this in the future, it's recommended that you select an Indexer wisely. To learn how to select and Indexer, check out the Delegate section in Graph Explorer. + +## How to Withdraw Using Graph Explorer + +### Step-by-Step + +1. Visit [Graph Explorer](https://thegraph.com/explorer). Please make sure you're on Explorer and **not** Subgraph Studio. +2. Click on your profile. You can find it on the top right corner of the page. + - Make sure that your wallet is connected. If it's not connected, you will see the "connect" button instead. +3. Once you're in your profile, click on the Delegating tab. In the Delegating tab, you can view the list of Indexers you have delegated to. +4. Click on the Indexer from which you wish to withdraw your tokens. + - Make sure to note the specific Indexer, as you will need to find them again to withdraw. +5. Select the "Undelegate" option by clicking on the three dots next to the Indexer on the right side, see image below: + + ![Undelegate button](/img/undelegate-button.png) + +6. After approximately [28 epochs](https://thegraph.com/explorer/network/epochs?chain=arbitrum-one) (28 days), return to the Delegate section and locate the specific Indexer you undelegated from. +7. Once you find the Indexer, click on the three dots next to them and proceed to withdraw all your tokens. + +## How to Withdraw Using Arbiscan + +> This process is primarily useful if the UI in Graph Explorer experiences issues. + +### Step-by-Step + +1. Find your delegation transaction on Arbiscan. + - Here's an [example transaction on Arbiscan](https://arbiscan.io/tx/0xcf2110eac897099f821064445041031efb32786392bdbe7544a4cb7a6b2e4f9a) +2. Navigate to "Transaction Action" where you can find the staking extension contract: + - [This is the staking extension contract for the example listed above](https://arbiscan.io/address/0x00669A4CF01450B64E8A2A20E9b1FCB71E61eF03) +3. Then click on "Contract". ![Contract tab on Arbiscan, between NFT Transfers and Events](/img/arbiscan-contract.png) +4. Scroll to the bottom and copy the Contract ABI. There should be a small button next to it that allows you to copy everything. +5. Click on your profile button in the top right corner of the page. If you haven't created an account yet, please do so. +6. Once you're in your profile, click on "Custom ABI”. +7. Paste the custom ABI you copied from the staking extension contract, and add the custom ABI for the address: 0x00669A4CF01450B64E8A2A20E9b1FCB71E61eF03 (**sample address**) +8. Go back to the [staking extension contract](https://arbiscan.io/address/0x00669A4CF01450B64E8A2A20E9b1FCB71E61eF03#writeProxyContract). Now, call the `unstake` function in the [Write as Proxy tab](https://arbiscan.io/address/0x00669A4CF01450B64E8A2A20E9b1FCB71E61eF03#writeProxyContract), which has been added thanks to the custom ABI, with the number of tokens that you delegated. +9. If you don't know how many tokens you delegated, you can call `getDelegation` on the Read Custom tab. You will need to paste your address (delegator address) and the address of the Indexer that you delegated to, as shown in the following screenshot: + + ![Both of the addresses needed](/img/get-delegate.png) + + - This will return three numbers. The first number is the amount you can unstake. + +10. After you have called `unstake`, you can withdraw after approximately 28 epochs (28 days) by calling the `withdraw` function. +11. You can see how much you will have available to withdraw by calling the `getWithdrawableDelegatedTokens` on Read Custom and passing it your delegation tuple. See screenshot below: + + ![Call `getWithdrawableDelegatedTokens` to see amount of tokens that can be withdrawn](/img/withdraw-available.png) + +## Additional Resources + +To delegate successfully, review the [delegating documentation](/resources/roles/delegating/) and check out the delegate section in Graph Explorer. diff --git a/website/public/img/arbiscan-contract.png b/website/public/img/arbiscan-contract.png new file mode 100644 index 000000000000..73ab6ac88a18 Binary files /dev/null and b/website/public/img/arbiscan-contract.png differ diff --git a/website/public/img/get-delegate.png b/website/public/img/get-delegate.png new file mode 100644 index 000000000000..813992417b79 Binary files /dev/null and b/website/public/img/get-delegate.png differ diff --git a/website/public/img/undelegate-button.png b/website/public/img/undelegate-button.png new file mode 100644 index 000000000000..4da94341e935 Binary files /dev/null and b/website/public/img/undelegate-button.png differ diff --git a/website/public/img/withdraw-available.png b/website/public/img/withdraw-available.png new file mode 100644 index 000000000000..a503402d6eb1 Binary files /dev/null and b/website/public/img/withdraw-available.png differ