Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 9 additions & 12 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -58,15 +58,12 @@ jobs:
with:
FILEPATHS: 'snaps,services,wallet,developer-tools,docs'

# linkCheck:
# name: Link Checking
# runs-on: ubuntu-latest
# strategy:
# matrix:
# file-extensions: ['.md', '.mdx']
# steps:
# - uses: actions/checkout@v5
# - name: LinkCheck
# uses: ConsenSys/github-actions/docs-link-check@main
# with:
# FILE_EXTENSION: ${{ matrix.file-extensions }}
linkCheck:
name: Link Checking
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- name: LinkCheck
uses: ConsenSys/github-actions/docs-link-check@main
with:
CONFIG_FILE: '.linkspector.yml'
35 changes: 17 additions & 18 deletions .github/workflows/trivy.yml
Original file line number Diff line number Diff line change
@@ -1,18 +1,17 @@
# ---
# name: Trivy
#
# on:
# pull_request:
# branches:
# - main
#
# jobs:
# trivy:
# name: Run trivy scanner
# runs-on: ubuntu-latest
# steps:
# - uses: actions/checkout@v5
# - name: Trivy
# uses: ConsenSys/github-actions/trivy@main
# with:
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
---
name: Trivy
on:
pull_request:
branches:
- main

jobs:
trivy:
name: Run trivy scanner
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- name: Trivy
uses: ConsenSys/github-actions/trivy@main
with:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
39 changes: 39 additions & 0 deletions .linkspector.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
dirs:
- ./delegation-toolkit
- ./developer-tools
- ./embedded-wallets
- ./sdk
- ./services
- ./snaps
- ./wallet
excludedDirs:
- ./build
- ./.vercel
- ./.docusaurus
- ./node_modules
useGitIgnore: true

ignorePatterns:
- pattern: '^http(s)?://localhost'
- pattern: '^http(s)?://127.0.0.1'
- pattern: '^http(s)?://gitlab.com/ConsenSys/'
- pattern: '^http(s)?://consensys.net'
- pattern: '^http(s)?://.+.zendesk.com'
- pattern: '^http(s)?://.+.etherscan.io'
- pattern: '^http(s)?://help.figma.com'
- pattern: '^http(s)?://metamask.io'
- pattern: '^http(s)?://rivet.cloud'
- pattern: '^/img/'
- pattern: '^/delegation-toolkit/'
- pattern: '^/developer-tools/'
- pattern: '^/embedded-wallets/'
- pattern: '^/sdk/'
- pattern: '^/services/'
- pattern: '^/snaps/'
- pattern: '^/wallet/'
- pattern: '^/tutorials/'
aliveStatusCodes:
- 200
- 206
- 400
- 403
64 changes: 32 additions & 32 deletions delegation-toolkit/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -71,36 +71,36 @@ The MetaMask Delegation Toolkit is integrated with multiple ecosystem partners.
Check out the following documentation from these partners:

<CardList
items={[
{
href: "https://scaffoldeth.io/extensions",
title: "Scaffold-ETH 2",
description: "Install the MetaMask Delegation Toolkit extension for Scaffold-ETH 2.",
buttonIcon: 'external-arrow',
},
{
href: "https://viem.sh/account-abstraction/accounts/smart/toMetaMaskSmartAccount",
title: "Viem",
description: "Use MetaMask Smart Accounts with Viem.",
buttonIcon: 'external-arrow',
},
{
href: "https://docs.arbitrum.io/for-devs/third-party-docs/MetaMask/",
title: "Arbitrum",
description: "Use MetaMask Smart Accounts with Arbitrum.",
buttonIcon: 'external-arrow',
},
{
href: "https://docs.pimlico.io/guides/how-to/accounts/use-metamask-account",
title: "permissionless.js",
description: "Use MetaMask Smart Accounts with permissionless.js.",
buttonIcon: 'external-arrow',
},
{
href: "https://docs.monad.xyz/tooling-and-infra/account-abstraction/wallet-providers#metamask-delegation-toolkit",
title: "Monad",
description: "Use MetaMask Smart Accounts with Monad Testnet.",
buttonIcon: 'external-arrow',
}
]}
items={[
{
href: "https://scaffoldeth.io/extensions",
title: "Scaffold-ETH 2",
description: "Install the MetaMask Delegation Toolkit extension for Scaffold-ETH 2.",
buttonIcon: "external-arrow",
},
{
href: "https://viem.sh/account-abstraction/accounts/smart/toMetaMaskSmartAccount",
title: "Viem",
description: "Use MetaMask Smart Accounts with Viem.",
buttonIcon: "external-arrow",
},
{
href: "https://docs.arbitrum.io/for-devs/third-party-docs/MetaMask",
title: "Arbitrum",
description: "Use MetaMask Smart Accounts with Arbitrum.",
buttonIcon: "external-arrow",
},
{
href: "https://docs.pimlico.io/guides/how-to/accounts/use-metamask-account",
title: "permissionless.js",
description: "Use MetaMask Smart Accounts with permissionless.js.",
buttonIcon: "external-arrow",
},
{
href: "https://docs.monad.xyz/tooling-and-infra/account-abstraction/wallet-providers#metamask-delegation-toolkit",
title: "Monad",
description: "Use MetaMask Smart Accounts with Monad Testnet.",
buttonIcon: "external-arrow",
}
]}
/>
2 changes: 1 addition & 1 deletion delegation-toolkit/reference/delegation/caveats.md
Original file line number Diff line number Diff line change
Expand Up @@ -189,7 +189,7 @@ const caveats = [{

Ensures that the recipient's ERC-1155 token balance has changed within the allowed bounds — either increased by a minimum or decreased by a maximum specified amount.

Caveat enforcer contract: [`ERC1155BalanceBalanceEnforcer.sol`](https://github.com/MetaMask/delegation-framework/blob/main/src/enforcers/ERC1155BalanceBalanceEnforcer.sol)
Caveat enforcer contract: [`ERC1155BalanceChangeEnforcer.sol`](https://github.com/MetaMask/delegation-framework/blob/main/src/enforcers/ERC1155BalanceChangeEnforcer.sol)

### Parameters

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ Set rate limiting in the API key's **Settings** tab **Key Credit Limits** sectio
When the number of used credits reaches this limit, all requests will be rejected until the next day (00:00 UTC).

If you exceed the specified limits, you'll receive a JSON response with an
[HTTP error status code `429`](/services/reference/ethereum/json-rpc-methods#http-errors). For example:
[HTTP error status code `429`](/services/reference/ethereum/json-rpc-methods/#http-errors). For example:

```json
{
Expand Down
2 changes: 1 addition & 1 deletion embedded-wallets/connect-blockchain/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ The SDKs are now branded as MetaMask Embedded Wallet SDKs (formerly Web3Auth Plu

## Dashboard Configuration

The Embedded Wallets Web SDK(`@web3auth/modal`) from v10 onwards does not need any additional setup on the code side for blockchain connections. All of it is handled on the Dashboard. We can use any chain from the extensive list of predefined chains and add more if we need.
The Embedded Wallets Web SDK (`@web3auth/modal`) from v10 onwards does not need any additional setup on the code side for blockchain connections. All of it is handled on the Dashboard. We can use any chain from the extensive list of predefined chains and add more if we need.

![Chains on Dashboard](https://i.ibb.co/4nCD2GTJ/chains.gif)

Expand Down
2 changes: 1 addition & 1 deletion gator_versioned_docs/version-0.11.0/reference/caveats.md
Original file line number Diff line number Diff line change
Expand Up @@ -160,7 +160,7 @@ caveatBuilder.addCaveat("deployed",

Ensures that the recipient's ERC-1155 token balance has changed within the allowed bounds — either increased by a minimum or decreased by a maximum specified amount.

Caveat enforcer contract: [`ERC1155BalanceBalanceEnforcer.sol`](https://github.com/MetaMask/delegation-framework/blob/main/src/enforcers/ERC1155BalanceBalanceEnforcer.sol)
Caveat enforcer contract: [`ERC1155BalanceChangeEnforcer.sol`](https://github.com/MetaMask/delegation-framework/blob/main/src/enforcers/ERC1155BalanceChangeEnforcer.sol)

### Parameters

Expand Down
2 changes: 1 addition & 1 deletion gator_versioned_docs/version-0.12.0/reference/caveats.md
Original file line number Diff line number Diff line change
Expand Up @@ -160,7 +160,7 @@ caveatBuilder.addCaveat("deployed",

Ensures that the recipient's ERC-1155 token balance has changed within the allowed bounds — either increased by a minimum or decreased by a maximum specified amount.

Caveat enforcer contract: [`ERC1155BalanceBalanceEnforcer.sol`](https://github.com/MetaMask/delegation-framework/blob/main/src/enforcers/ERC1155BalanceBalanceEnforcer.sol)
Caveat enforcer contract: [`ERC1155BalanceChangeEnforcer.sol`](https://github.com/MetaMask/delegation-framework/blob/main/src/enforcers/ERC1155BalanceChangeEnforcer.sol)

### Parameters

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -189,7 +189,7 @@ const caveats = [{

Ensures that the recipient's ERC-1155 token balance has changed within the allowed bounds — either increased by a minimum or decreased by a maximum specified amount.

Caveat enforcer contract: [`ERC1155BalanceBalanceEnforcer.sol`](https://github.com/MetaMask/delegation-framework/blob/main/src/enforcers/ERC1155BalanceBalanceEnforcer.sol)
Caveat enforcer contract: [`ERC1155BalanceChangeEnforcer.sol`](https://github.com/MetaMask/delegation-framework/blob/main/src/enforcers/ERC1155BalanceChangeEnforcer.sol)

### Parameters

Expand Down
2 changes: 1 addition & 1 deletion sdk/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,7 @@ title: 'React Native',
description: 'Set up the SDK in a React Native or Expo dapp.',
},
{
href: 'https://onboard.blocknative.com',
href: 'https://web3onboard.thirdweb.com/',
title: 'Web3-Onboard',
description: 'Use SDK features with Web3-Onboard.',
buttonIcon: 'external-arrow',
Expand Down
2 changes: 1 addition & 1 deletion services/concepts/curl.md
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ curl https://mainnet.infura.io/v3/<YOUR-API-KEY> \

:::info

Replace `<YOUR-API-KEY>` with a specific [API key](../../../developer-tools/dashboard/get-started/create-api/).
Replace `<YOUR-API-KEY>` with a specific [API key](/developer-tools/dashboard/get-started/create-api).

:::

Expand Down
4 changes: 2 additions & 2 deletions services/get-started/endpoints.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ import GasApiNetworks from "@site/src/components/GasApiNetworks.tsx";

The following lists all the network endpoints supported by Infura.

Ensure that you replace `<YOUR-API-KEY>` with an API key from your [MetaMask Developer dashboard](../../../developer-tools/dashboard/).
Ensure that you replace `<YOUR-API-KEY>` with an API key from your [MetaMask Developer dashboard](/developer-tools/dashboard).

## Arbitrum

Expand Down Expand Up @@ -97,7 +97,7 @@ to have access to the IPFS network.

:::info

Include your authentication details when [making IPFS requests](/reference/ipfs/quickstart.md).
Include your authentication details when [making IPFS requests](../reference/ipfs/quickstart.md).

:::

Expand Down
2 changes: 1 addition & 1 deletion services/get-started/infura.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ For more information refer to the [Infura pricing information](https://www.infur

## 2. View your API key

After verification, you'll be directed to the [MetaMask Developer dashboard](../../../developer-tools/dashboard)
After verification, you'll be directed to the [MetaMask Developer dashboard](/developer-tools/dashboard)
where you can view or configure your API key. Infura automatically generates the **My First Key** API key.

Select **My First Key** or the **Configure** link to view your API key settings.
Expand Down
6 changes: 3 additions & 3 deletions services/how-to/get-testnet-tokens.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,13 +21,13 @@ Use [testnet endpoints](../get-started/endpoints.md) during development and init
| [Avalanche Fuji](https://docs.avax.network/learn/networks/fuji-testnet)| [Avalanche Fuji faucet](https://faucet.avax.network)| [Avalanche bridge](https://bridge.avax.network/)|
| [Base Sepolia](https://docs.base.org/chain/using-base#metamask-1)| [Base Sepolia faucet](https://faucet.quicknode.com/base/sepolia)| [Base bridge](https://bridge.base.org/deposit)|
| [Blast Sepolia](https://docs.blast.io/using-blast)| [Blast Sepolia faucet](https://faucet.quicknode.com/blast/sepolia)| |
| [Binance Smart Chain (BSC) Sepolia](https://academy.binance.com/en/articles/connecting-metamask-to-binance-smart-chain)| [BSC Sepolia faucet](https://www.bnbchain.org/en/testnet-faucet)| [BSC bridge](https://www.bnbchain.org/en/bnb-chain-bridges)|
| [Binance Smart Chain (BSC) Sepolia](https://academy.binance.com/en/articles/connecting-metamask-to-binance-smart-chain)| [BSC Sepolia faucet](https://www.bnbchain.org/en/testnet-faucet)| [BSC bridge](https://www.bnbchain.org/en/bnb-chain-bridge)|
| [Celo Alfajores](https://docs.celo.org/getting-started/alfajores-testnet)| [Celo Alfajores faucet](https://faucet.celo.org/alfajores)| [Celo bridge](https://docs.celo.org/protocol/bridge#token-bridges)|
| [Ethereum Sepolia](https://docs.blast.io/building/bridges/testnet)| [Ethereum Sepolia faucet](https://faucet.quicknode.com/ethereum/sepolia)| [Sepolia bridge](https://docs.blast.io/building/bridges/testnet)|
| [Linea Sepolia](https://support.linea.build/getting-started/how-to-get-linea-goerli-testnet-eth)| [Linea Sepolia faucet](https://www.infura.io/faucet/linea) or [Covalent faucet](https://goldrush.dev/faucet/)| [Linea bridge](https://bridge.linea.build)|
| [Linea Sepolia](https://support.linea.build/getting-started/how-to-get-linea-goerli-testnet-eth)| [Linea Sepolia faucet](https://docs.metamask.io/developer-tools/faucet)| [Linea bridge](https://bridge.linea.build)|
| [Mantle Sepolia](https://docs.mantle.xyz/network/for-uers/how-to-guides/connecting-wallet-to-mantle-network)| [Mantle Sepolia faucet](https://faucet.sepolia.mantle.xyz) |[Mantle bridge](https://bridge.sepolia.mantle.xyz)|
| [Optimism Sepolia](https://docs.optimism.io/builders/tools/build/faucets)| [Optimism Sepolia faucet](https://faucet.quicknode.com/optimism/sepolia)| [Optimism bridge](https://app.optimism.io/bridge)|
| [Palm](https://docs.palm.io/get-started/connect/testnet)| [PALM token](https://docs.palm.io/get-started/tokens)| [Token bridge](https://app.palm.io/bridge)|
| [Polygon Amoy](https://docs.polygon.technology/tools/wallets/metamask/add-polygon-network/)| [Polygon Amoy faucet](https://faucet.polygon.technology)| [Polygon bridge](https://portal.polygon.technology/bridge)|
| [Starknet Sepolia](https://www.starknet.io/blog/getting-started-using-starknet-setting-up-a-starknet-wallet/)| [Starknet Sepolia faucet](https://starknet-faucet.vercel.app)| [Starknet bridge (StarkGate)](https://starkgate.starknet.io)|
| [ZKsync Era Sepolia](https://docs.zksync.io/build/connect-to-zksync)| [ZKsync Sepolia faucet](https://docs.zksync.io/zksync-era/ecosystem/network-faucets)| [ZKsync bridge](https://portal.zksync.io/bridge)|
| [ZKsync Era Sepolia](https://docs.zksync.io/zksync-network)| [ZKsync Sepolia faucet](https://docs.zksync.io/zksync-network/ecosystem/network-faucets)| [ZKsync bridge](https://portal.zksync.io/bridge)|
2 changes: 1 addition & 1 deletion services/how-to/subscribe-to-events.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ You need to be aware of the following when sending HTTP RPC requests:
retrying failed HTTP requests often is automatic, or easy to configure.
- Status codes - WebSockets use its own set of [status codes](https://pkg.go.dev/github.com/gorilla/websocket#pkg-constants)
to provide users with a disconnection reason. The service will respond with the standard
[EVM response codes](../reference/ethereum/json-rpc-methods/index.md#error-codes) for each JSON-RPC request.
[EVM response codes](../reference/ethereum/json-rpc-methods/index.md) for each JSON-RPC request.

## Example event subscription

Expand Down
2 changes: 1 addition & 1 deletion services/how-to/use-ipfs/authenticate-requests.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ Authorization: Basic <base64(USERNAME:PASSWORD)>

Username is the `API_KEY` and password is the `API_KEY_SECRET.` Find your authorization credentials in the API key's settings
page after you [register your Infura account](https://infura.io/register) and
[create an API key](../../../../developer-tools/dashboard/get-started/create-api/) that includes the IPFS network.
[create an API key](/developer-tools/dashboard/get-started/create-api) that includes the IPFS network.

For example, to authenticate and upload a file to IPFS using curl, you would use the following command:

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ sidebar_position: 4

The updated Infura IPFS service offers:

- A [project dashboard](../../../../../developer-tools/dashboard/how-to/dashboard-stats/) with essential statistics.
- A [project dashboard](/developer-tools/dashboard/how-to/dashboard-stats) with essential statistics.
- [Pinning](manage-files.md#pin-a-file) and [unpinning](manage-files.md#unpin-a-file) API access.
- Publishing files in the background to the IPFS P2P network, so that content is globally accessible.

Expand Down
2 changes: 1 addition & 1 deletion services/reference/arbitrum/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ Select one of the following options to get started with the Arbitrum network:
description: "View the APIs available for communicating with the Arbitrum network."
},
{
href: "../../../developer-tools/dashboard/get-started/create-api/",
href: "/developer-tools/dashboard/get-started/create-api",
title: "Create an API key",
description: "Learn how to create and secure an API key."
}
Expand Down
16 changes: 8 additions & 8 deletions services/reference/arbitrum/json-rpc-methods/bundler/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,19 +11,19 @@ developers to access [ERC-4337](https://docs.erc4337.io/) smart account features
The following [bundler methods](../../../../concepts/bundler.md) are supported on Arbitrum mainnet
and Sepolia:

- [`eth_sendUserOperation`](./eth_senduseroperation):
- [`eth_sendUserOperation`](eth_senduseroperation.mdx):
Submits a user operation to be included onchain.
- [`eth_estimateUserOperationGas`](./eth_estimateuseroperationgas):
- [`eth_estimateUserOperationGas`](eth_estimateuseroperationgas.mdx):
Simulates the user operation and estimates the appropriate gas limits.
- [`eth_getUserOperationReceipt`](./eth_getuseroperationreceipt):
- [`eth_getUserOperationReceipt`](eth_getuseroperationreceipt.mdx):
Fetches the receipt of a user operation.
- [`eth_getUserOperationByHash`](./eth_getuseroperationbyhash):
- [`eth_getUserOperationByHash`](eth_getuseroperationbyhash.mdx):
Fetches the user operation by hash.
- [`eth_supportedEntryPoints`](./eth_supportedentrypoints):
- [`eth_supportedEntryPoints`](eth_supportedentrypoints.mdx):
Fetches the EntryPoint addresses supported by the bundler.
- [`pimlico_getUserOperationGasPrice`](./pimlico_getuseroperationgasprice):
- [`pimlico_getUserOperationGasPrice`](pimlico_getuseroperationgasprice.mdx):
Returns the gas prices that must be used for the user operation.
- [`pimlico_getUserOperationStatus`](./pimlico_getuseroperationstatus):
- [`pimlico_getUserOperationStatus`](pimlico_getuseroperationstatus.mdx):
Returns the user operation status.
- [`pimlico_simulateAssetChanges`](./pimlico_simulateassetchanges):
- [`pimlico_simulateAssetChanges`](pimlico_simulateassetchanges.mdx):
Simulates a user operation to predict the asset changes it will cause.
8 changes: 4 additions & 4 deletions services/reference/arbitrum/quickstart.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ Don't have an Infura account? Sign up for our free plan and start using the Arbi

## Prerequisites

Ensure you have an [API key](../../../../developer-tools/dashboard/get-started/create-api/) with the Arbitrum network enabled.
Ensure you have an [API key](/developer-tools/dashboard/get-started/create-api) with the Arbitrum network enabled.

## Make calls

Expand Down Expand Up @@ -193,7 +193,7 @@ by Infura. Here are some suggestions:

- **Try out different networks**: Infura supports multiple networks including Ethereum, Linea, Polygon, Optimism, and more.

- **Monitor your usage**: Monitor your usage on the [MetaMask Developer dashboard](../../../../developer-tools/dashboard/how-to/dashboard-stats/) to ensure you're not hitting your rate limits.
- **Monitor your usage**: Monitor your usage on the [MetaMask Developer dashboard](/developer-tools/dashboard/how-to/dashboard-stats) to ensure you're not hitting your rate limits.

Remember, the Infura community is here to help. If you have any questions or run into any issues, check out the
[Infura community](https://community.infura.io/) for help and answers to common questions.
Remember, the MetaMask community is here to help. If you have any questions or run into any issues, check out the
[MetaMask community](https://community.metamask.io/) for help and answers to common questions.
2 changes: 1 addition & 1 deletion services/reference/avalanche-c-chain/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ Select one of the following options to get started with the Avalanche C-Chain ne
description: "View the APIs available for communicating with the Avalanche C-Chain network."
},
{
href: "../../../developer-tools/dashboard/get-started/create-api/",
href: "/developer-tools/dashboard/get-started/create-api",
title: "Create an API key",
description: "Learn how to create and secure an API key."
}
Expand Down
Loading
Loading