diff --git a/fern/api-reference/alchemy-transact/private-transactions/523fb8a9a9d899921ee1046d0ff1b389967a9976d1c6112ebbbe071ddd1ef374-image.png b/fern/api-reference/alchemy-transact/private-transactions/523fb8a9a9d899921ee1046d0ff1b389967a9976d1c6112ebbbe071ddd1ef374-image.png
deleted file mode 100644
index 510559cf0..000000000
Binary files a/fern/api-reference/alchemy-transact/private-transactions/523fb8a9a9d899921ee1046d0ff1b389967a9976d1c6112ebbbe071ddd1ef374-image.png and /dev/null differ
diff --git a/fern/api-reference/node-api/chain-apis-overview.mdx b/fern/api-reference/node-api/chain-apis-overview.mdx
index 179e1e19a..92d86439e 100644
--- a/fern/api-reference/node-api/chain-apis-overview.mdx
+++ b/fern/api-reference/node-api/chain-apis-overview.mdx
@@ -21,31 +21,30 @@ Dive into each API's detailed documentation by following the links below, organi
| | |
| ----------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- |
-| [`eth_accounts`](/docs/node/ethereum/ethereum-api-endpoints/eth-accounts) | [`eth_blobBaseFee`](/docs/node/ethereum/ethereum-api-endpoints/eth-blob-base-fee) |
-| [`eth_blockNumber`](/docs/node/ethereum/ethereum-api-endpoints/eth-block-number) | [`eth_call`](/docs/node/ethereum/ethereum-api-endpoints/eth-call) |
-| [`eth_callMany`](/docs/node/ethereum/ethereum-api-endpoints/eth-call-many) | [`eth_cancelPrivateTransaction`](/docs/node/ethereum/ethereum-api-endpoints/eth-cancel-private-transaction) |
-| [`eth_chainId`](/docs/node/ethereum/ethereum-api-endpoints/eth-chain-id) | [`eth_createAccessList`](/docs/node/ethereum/ethereum-api-endpoints/eth-create-access-list) |
-| [`eth_estimateGas`](/docs/node/ethereum/ethereum-api-endpoints/eth-estimate-gas) | [`eth_feeHistory`](/docs/node/ethereum/ethereum-api-endpoints/eth-fee-history) |
-| [`eth_gasPrice`](/docs/node/ethereum/ethereum-api-endpoints/eth-gas-price) | [`eth_getAccount`](/docs/node/ethereum/ethereum-api-endpoints/eth-get-account) |
-| [`eth_getBalance`](/docs/node/ethereum/ethereum-api-endpoints/eth-get-balance) | [`eth_getBlockByHash`](/docs/node/ethereum/ethereum-api-endpoints/eth-get-block-by-hash) |
-| [`eth_getBlockByNumber`](/docs/node/ethereum/ethereum-api-endpoints/eth-get-block-by-number) | [`eth_getBlockReceipts`](/docs/node/ethereum/ethereum-api-endpoints/eth-get-block-receipts) |
-| [`eth_getBlockTransactionCountByHash`](/docs/node/ethereum/ethereum-api-endpoints/eth-get-block-transaction-count-by-hash) | [`eth_getBlockTransactionCountByNumber`](/docs/node/ethereum/ethereum-api-endpoints/eth-get-block-transaction-count-by-number) |
-| [`eth_getCode`](/docs/node/ethereum/ethereum-api-endpoints/eth-get-code) | [`eth_getFilterChanges`](/docs/node/ethereum/ethereum-api-endpoints/eth-get-filter-changes) |
-| [`eth_getFilterLogs`](/docs/node/ethereum/ethereum-api-endpoints/eth-get-filter-logs) | [`eth_getLogs`](/docs/node/ethereum/ethereum-api-endpoints/eth-get-logs) |
-| [`eth_getProof`](/docs/node/ethereum/ethereum-api-endpoints/eth-get-proof) | [`eth_getStorageAt`](/docs/node/ethereum/ethereum-api-endpoints/eth-get-storage-at) |
-| [`eth_getTransactionByBlockHashAndIndex`](/docs/node/ethereum/ethereum-api-endpoints/eth-get-transaction-by-block-hash-and-index) | [`eth_getTransactionByBlockNumberAndIndex`](/docs/node/ethereum/ethereum-api-endpoints/eth-get-transaction-by-block-number-and-index) |
-| [`eth_getTransactionByHash`](/docs/node/ethereum/ethereum-api-endpoints/eth-get-transaction-by-hash) | [`eth_getTransactionCount`](/docs/node/ethereum/ethereum-api-endpoints/eth-get-transaction-count) |
-| [`eth_getTransactionReceipt`](/docs/node/ethereum/ethereum-api-endpoints/eth-get-transaction-receipt) | [`eth_getUncleByBlockHashAndIndex`](/docs/node/ethereum/ethereum-api-endpoints/eth-get-uncle-by-block-hash-and-index) |
-| [`eth_getUncleByBlockNumberAndIndex`](/docs/node/ethereum/ethereum-api-endpoints/eth-get-uncle-by-block-number-and-index) | [`eth_getUncleCountByBlockHash`](/docs/node/ethereum/ethereum-api-endpoints/eth-get-uncle-count-by-block-hash) |
-| [`eth_getUncleCountByBlockNumber`](/docs/node/ethereum/ethereum-api-endpoints/eth-get-uncle-count-by-block-number) | [`eth_maxPriorityFeePerGas`](/docs/node/ethereum/ethereum-api-endpoints/eth-max-priority-fee-per-gas) |
-| [`eth_newBlockFilter`](/docs/node/ethereum/ethereum-api-endpoints/eth-new-block-filter) | [`eth_newFilter`](/docs/node/ethereum/ethereum-api-endpoints/eth-new-filter) |
-| [`eth_newPendingTransactionFilter`](/docs/node/ethereum/ethereum-api-endpoints/eth-new-pending-transaction-filter) | [`eth_protocolVersion`](/docs/node/ethereum/ethereum-api-endpoints/eth-protocol-version) |
-| [`eth_sendPrivateTransaction`](/docs/node/ethereum/ethereum-api-endpoints/eth-send-private-transaction) | [`eth_sendRawTransaction`](/docs/node/ethereum/ethereum-api-endpoints/eth-send-raw-transaction) |
-| [`eth_simulateV1`](/docs/node/ethereum/ethereum-api-endpoints/eth-simulate-v-1) | [`eth_submitWork`](/docs/node/ethereum/ethereum-api-endpoints/eth-submit-work) |
-| [`eth_subscribe`](/docs/node/ethereum/ethereum-api-endpoints/eth-subscribe) | [`eth_syncing`](/docs/node/ethereum/ethereum-api-endpoints/eth-syncing) |
-| [`eth_uninstallFilter`](/docs/node/ethereum/ethereum-api-endpoints/eth-uninstall-filter) | [`eth_unsubscribe`](/docs/node/ethereum/ethereum-api-endpoints/eth-unsubscribe) |
-| [`net_version`](/docs/node/ethereum/ethereum-api-endpoints/net-version) | [`web3_clientVersion`](/docs/node/ethereum/ethereum-api-endpoints/web-3-client-version) |
-| [`web3_sha3`](/docs/node/ethereum/ethereum-api-endpoints/web-3-sha-3) | |
+| [`eth_accounts`](/docs/node/ethereum/ethereum-api-endpoints/eth-accounts) | [`eth_blobBaseFee`](/docs/node/ethereum/ethereum-api-endpoints/eth-blob-base-fee) |
+| [`eth_blockNumber`](/docs/node/ethereum/ethereum-api-endpoints/eth-block-number) | [`eth_call`](/docs/node/ethereum/ethereum-api-endpoints/eth-call) |
+| [`eth_callMany`](/docs/node/ethereum/ethereum-api-endpoints/eth-call-many) | [`eth_chainId`](/docs/node/ethereum/ethereum-api-endpoints/eth-chain-id) |
+| [`eth_createAccessList`](/docs/node/ethereum/ethereum-api-endpoints/eth-create-access-list) | [`eth_estimateGas`](/docs/node/ethereum/ethereum-api-endpoints/eth-estimate-gas) |
+| [`eth_feeHistory`](/docs/node/ethereum/ethereum-api-endpoints/eth-fee-history) | [`eth_gasPrice`](/docs/node/ethereum/ethereum-api-endpoints/eth-gas-price) |
+| [`eth_getAccount`](/docs/node/ethereum/ethereum-api-endpoints/eth-get-account) | [`eth_getBalance`](/docs/node/ethereum/ethereum-api-endpoints/eth-get-balance) |
+| [`eth_getBlockByHash`](/docs/node/ethereum/ethereum-api-endpoints/eth-get-block-by-hash) | [`eth_getBlockByNumber`](/docs/node/ethereum/ethereum-api-endpoints/eth-get-block-by-number) |
+| [`eth_getBlockReceipts`](/docs/node/ethereum/ethereum-api-endpoints/eth-get-block-receipts) | [`eth_getBlockTransactionCountByHash`](/docs/node/ethereum/ethereum-api-endpoints/eth-get-block-transaction-count-by-hash) |
+| [`eth_getBlockTransactionCountByNumber`](/docs/node/ethereum/ethereum-api-endpoints/eth-get-block-transaction-count-by-number) | [`eth_getCode`](/docs/node/ethereum/ethereum-api-endpoints/eth-get-code) |
+| [`eth_getFilterChanges`](/docs/node/ethereum/ethereum-api-endpoints/eth-get-filter-changes) | [`eth_getFilterLogs`](/docs/node/ethereum/ethereum-api-endpoints/eth-get-filter-logs) |
+| [`eth_getLogs`](/docs/node/ethereum/ethereum-api-endpoints/eth-get-logs) | [`eth_getProof`](/docs/node/ethereum/ethereum-api-endpoints/eth-get-proof) |
+| [`eth_getStorageAt`](/docs/node/ethereum/ethereum-api-endpoints/eth-get-storage-at) | [`eth_getTransactionByBlockHashAndIndex`](/docs/node/ethereum/ethereum-api-endpoints/eth-get-transaction-by-block-hash-and-index) |
+| [`eth_getTransactionByBlockNumberAndIndex`](/docs/node/ethereum/ethereum-api-endpoints/eth-get-transaction-by-block-number-and-index) | [`eth_getTransactionByHash`](/docs/node/ethereum/ethereum-api-endpoints/eth-get-transaction-by-hash) |
+| [`eth_getTransactionCount`](/docs/node/ethereum/ethereum-api-endpoints/eth-get-transaction-count) | [`eth_getTransactionReceipt`](/docs/node/ethereum/ethereum-api-endpoints/eth-get-transaction-receipt) |
+| [`eth_getUncleByBlockHashAndIndex`](/docs/node/ethereum/ethereum-api-endpoints/eth-get-uncle-by-block-hash-and-index) | [`eth_getUncleByBlockNumberAndIndex`](/docs/node/ethereum/ethereum-api-endpoints/eth-get-uncle-by-block-number-and-index) |
+| [`eth_getUncleCountByBlockHash`](/docs/node/ethereum/ethereum-api-endpoints/eth-get-uncle-count-by-block-hash) | [`eth_getUncleCountByBlockNumber`](/docs/node/ethereum/ethereum-api-endpoints/eth-get-uncle-count-by-block-number) |
+| [`eth_maxPriorityFeePerGas`](/docs/node/ethereum/ethereum-api-endpoints/eth-max-priority-fee-per-gas) | [`eth_newBlockFilter`](/docs/node/ethereum/ethereum-api-endpoints/eth-new-block-filter) |
+| [`eth_newFilter`](/docs/node/ethereum/ethereum-api-endpoints/eth-new-filter) | [`eth_newPendingTransactionFilter`](/docs/node/ethereum/ethereum-api-endpoints/eth-new-pending-transaction-filter) |
+| [`eth_protocolVersion`](/docs/node/ethereum/ethereum-api-endpoints/eth-protocol-version) | [`eth_sendRawTransaction`](/docs/node/ethereum/ethereum-api-endpoints/eth-send-raw-transaction) |
+| [`eth_simulateV1`](/docs/node/ethereum/ethereum-api-endpoints/eth-simulate-v-1) | [`eth_submitWork`](/docs/node/ethereum/ethereum-api-endpoints/eth-submit-work) |
+| [`eth_subscribe`](/docs/node/ethereum/ethereum-api-endpoints/eth-subscribe) | [`eth_syncing`](/docs/node/ethereum/ethereum-api-endpoints/eth-syncing) |
+| [`eth_uninstallFilter`](/docs/node/ethereum/ethereum-api-endpoints/eth-uninstall-filter) | [`eth_unsubscribe`](/docs/node/ethereum/ethereum-api-endpoints/eth-unsubscribe) |
+| [`net_version`](/docs/node/ethereum/ethereum-api-endpoints/net-version) | [`web3_clientVersion`](/docs/node/ethereum/ethereum-api-endpoints/web-3-client-version) |
+| [`web3_sha3`](/docs/node/ethereum/ethereum-api-endpoints/web-3-sha-3) | |
## Abstract APIs
diff --git a/fern/api-reference/pricing-resources/pricing/compute-unit-costs.mdx b/fern/api-reference/pricing-resources/pricing/compute-unit-costs.mdx
index 8e152fb62..4c505d013 100644
--- a/fern/api-reference/pricing-resources/pricing/compute-unit-costs.mdx
+++ b/fern/api-reference/pricing-resources/pricing/compute-unit-costs.mdx
@@ -163,8 +163,6 @@ We want builders to be able to use as much of the NFT API as they need without w
| ----------------------------------------- | ---- |
| alchemy\_sendGasOptimizedTransaction | 2500 |
| alchemy\_getGasOptimizedTransactionStatus | 25 |
-| eth\_sendPrivateTransaction | 250 |
-| eth\_cancelPrivateTransaction | 250 |
| alchemy\_simulateAssetChanges | 2500 |
| alchemy\_simulateExecution | 2500 |
diff --git a/fern/api-reference/pricing-resources/resources/batch-requests.mdx b/fern/api-reference/pricing-resources/resources/batch-requests.mdx
index 69564bf93..aa08242fa 100644
--- a/fern/api-reference/pricing-resources/resources/batch-requests.mdx
+++ b/fern/api-reference/pricing-resources/resources/batch-requests.mdx
@@ -29,7 +29,7 @@ The maximum size of a JSON-RPC `batch` request that can be sent over a WebSocket
Batch requests are currently not supported on some of the Alchemy's Enhanced APIs and Trace/Debug APIs, this includes the APIs listed below:
* [Transfers API](/reference/transfers-api-quickstart)
-* [Transact APIs](/reference/transact-api-quickstart) (except [`eth_sendPrivateTransaction`](/reference/eth-sendprivatetransaction) and [`eth_cancelPrivateTransaction`](/reference/eth-cancelprivatetransaction))
+* [Transact APIs](/reference/transact-api-quickstart)
* [Transaction Receipts API](/reference/transaction-receipts-endpoints)
* [Token APIs](/reference/token-api-quickstart)
* [Subscription APIs](/reference/subscription-api) (except [`newPendingTransactions`](/reference/newpendingtransactions) [`newHeads`](/reference/newheads) and [`logs`](/reference/logs))
diff --git a/fern/docs.yml b/fern/docs.yml
index 06be8b1be..19636b43c 100644
--- a/fern/docs.yml
+++ b/fern/docs.yml
@@ -4204,9 +4204,6 @@ redirects:
- source: /alchemy/tutorials/nft-minter/how-do-i-deploy-nfts-online
destination: /docs/how-to-build-an-nft-website
permanent: true
- - source: /alchemy/tutorials/send-private-transaction
- destination: /docs/how-to-send-a-transaction
- permanent: true
- source: /alchemy/tutorials/transfers-tutorial
destination: /docs/integrating-historical-transaction-data-into-your-dapp
permanent: true
@@ -4237,9 +4234,6 @@ redirects:
- source: /alchemy/documentation/throughput
destination: /docs/reference/throughput
permanent: true
- - source: /alchemy/guides/how-to-cancel-a-pending-transaction-on-ethereum
- destination: /docs/how-to-cancel-a-private-transaction-on-ethereum
- permanent: true
- source: /alchemy/guides/how-to-verify-a-message-signature-on-ethereum/how-to-create-a-signature-generator-dapp
destination: /docs/how-to-create-a-signature-generator-dapp
permanent: true
@@ -4273,9 +4267,6 @@ redirects:
- source: /alchemy/apis/enhanced-apis/notify-api
destination: /docs/reference/notify-api-endpoints
permanent: true
- - source: /alchemy/apis/ethereum/eth_cancelPrivateTransaction
- destination: /docs/node/ethereum/ethereum-api-endpoints/eth-cancel-private-transaction
- permanent: true
- source: /alchemy/apis/ethereum/eth_getblockbyhash
destination: /docs/reference/eth-getblockbyhash
permanent: true
@@ -4390,9 +4381,6 @@ redirects:
- source: /alchemy/apis/ethereum/eth-protocolversion
destination: /docs/reference/eth-protocolversion
permanent: true
- - source: /alchemy/apis/ethereum/eth-sendPrivateTransaction
- destination: /docs/reference/eth-sendPrivateTransaction
- permanent: true
- source: /alchemy/apis/ethereum/eth-sendrawtransaction
destination: /docs/reference/eth-sendrawtransaction
permanent: true
@@ -4420,9 +4408,6 @@ redirects:
- source: /alchemy/apis/ethereum/eth_gasprice
destination: /docs/reference/eth-gasprice
permanent: true
- - source: /alchemy/apis/ethereum/eth-sendPrivateTransaction
- destination: /docs/reference/eth-sendprivatetransaction
- permanent: true
- source: /alchemy/apis/ethereum/eth_feehistory
destination: /docs/reference/eth-feehistory
permanent: true
@@ -4834,9 +4819,6 @@ redirects:
- source: /tutorials/nft-minter/how-do-i-deploy-nfts-online
destination: /docs/how-to-build-an-nft-website
permanent: true
- - source: /tutorials/send-private-transaction
- destination: /docs/how-to-send-a-transaction
- permanent: true
- source: /tutorials/transfers-tutorial
destination: /docs/integrating-historical-transaction-data-into-your-dapp
permanent: true
@@ -4867,9 +4849,6 @@ redirects:
- source: /documentation/throughput
destination: /docs/reference/throughput
permanent: true
- - source: /guides/how-to-cancel-a-pending-transaction-on-ethereum
- destination: /docs/how-to-cancel-a-private-transaction-on-ethereum
- permanent: true
- source: /guides/how-to-verify-a-message-signature-on-ethereum/how-to-create-a-signature-generator-dapp
destination: /docs/how-to-create-a-signature-generator-dapp
permanent: true
@@ -4903,9 +4882,6 @@ redirects:
- source: /apis/enhanced-apis/notify-api
destination: /docs/reference/notify-api
permanent: true
- - source: /apis/ethereum/eth_cancelPrivateTransaction
- destination: /docs/node/ethereum/ethereum-api-endpoints/eth-send-private-transaction
- permanent: true
- source: /apis/ethereum/eth_getblockbyhash
destination: /docs/reference/eth-getblockbyhash
permanent: true
@@ -5020,9 +4996,6 @@ redirects:
- source: /apis/ethereum/eth-protocolversion
destination: /docs/reference/eth-protocolversion
permanent: true
- - source: /apis/ethereum/eth-sendPrivateTransaction
- destination: /docs/reference/eth-sendPrivateTransaction
- permanent: true
- source: /apis/ethereum/eth-sendrawtransaction
destination: /docs/reference/eth-sendrawtransaction
permanent: true
@@ -5178,9 +5151,6 @@ redirects:
- source: /alchemy/apis/ethereum/eth_getbalance
destination: /docs/reference/eth-getbalance
permanent: true
- - source: /alchemy/apis/ethereum/eth-sendPrivateTransaction
- destination: /docs/reference/eth-sendprivatetransaction
- permanent: true
- source: /alchemy/documentation/alchemy-web3/enhanced-web3-api
destination: /docs/reference/use-alchemyweb3js#enhanced-api-calls
permanent: true
@@ -5226,9 +5196,6 @@ redirects:
- source: /reference/get_-apikey-getownersfortoken
destination: /docs/reference/getownersfortoken
permanent: true
- - source: /alchemy/apis/ethereum/eth-sendPrivateTransaction
- destination: /docs/reference/eth-sendprivatetransaction
- permanent: true
- source: /alchemy/documentation/alchemy-web3
destination: /docs/reference/use-alchemyweb3js
permanent: true
@@ -5481,9 +5448,6 @@ redirects:
- source: /alchemy/documentation/apis/arbitrum
destination: /docs/reference/arbitrum-api-quickstart
permanent: true
- - source: /reference/eth-sendPrivateTransaction
- destination: /docs/reference/eth-sendprivatetransaction
- permanent: true
- source: /docs/alchemy-quickstart
destination: /docs/alchemy-quickstart-guide
permanent: true
@@ -5805,14 +5769,6 @@ redirects:
destination: /docs/reference/subgraphs-quickstart
permanent: true
- - source: /docs/how-to-cancel-a-private-transaction-on-ethereum
- destination: /docs
- permanent: true
-
- - source: /docs/how-to-send-a-private-transaction-on-ethereum
- destination: /docs
- permanent: true
-
- source: /docs/reference/fantom-opera-api-quickstart
destination: /docs/reference/sonic-api-quickstart
permanent: true
@@ -5829,10 +5785,6 @@ redirects:
destination: /docs/reference/nft-api-endpoints/nft-api-endpoints/nft-api-v-2-methods-older-version/get-nft-metadata
permanent: true
- - source: /docs/reference/eth-cancelprivatetransaction
- destination: /docs
- permanent: true
-
- source: /docs/reference/getownersfortoken
destination: /docs/reference/nft-api-endpoints/nft-api-endpoints/nft-api-v-2-methods-older-version/get-owners-for-token
permanent: true
@@ -5947,9 +5899,6 @@ redirects:
- source: /reference/call-sdk-v3
destination: /docs
permanent: true
- - source: /reference/cancelprivatetransaction-sdk-v3
- destination: /docs
- permanent: true
- source: /reference/computerarity-sdk-v3
destination: /docs
permanent: true
@@ -6178,9 +6127,6 @@ redirects:
- source: /reference/sdk-call
destination: /docs
permanent: true
- - source: /reference/sdk-cancelprivatetransaction
- destination: /docs
- permanent: true
- source: /reference/sdk-computerarity
destination: /docs
permanent: true
diff --git a/fern/tutorials/transactions/sending-transactions/how-to-cancel-a-private-transaction-on-ethereum.mdx b/fern/tutorials/transactions/sending-transactions/how-to-cancel-a-private-transaction-on-ethereum.mdx
deleted file mode 100644
index 088544ed8..000000000
--- a/fern/tutorials/transactions/sending-transactions/how-to-cancel-a-private-transaction-on-ethereum.mdx
+++ /dev/null
@@ -1,440 +0,0 @@
----
-title: How to Cancel a Transaction on Ethereum
-description: This guide explains how to cancel a pending transaction using MetaMask, Alchemy's SDK, or Web3
-subtitle: This guide explains how to cancel a pending transaction using MetaMask, Alchemy's SDK, or Web3
-url: https://docs.alchemy.com/docs/how-to-cancel-a-private-transaction-on-ethereum
-slug: docs/how-to-cancel-a-private-transaction-on-ethereum
----
-
-Once your transaction gets confirmed on the Ethereum network, you cannot cancel it. However, you can effectively cancel transactions still in the [Mempool](https://docs.alchemy.com/alchemy/guides/ethereum-transactions-pending-mined-dropped-and-replaced#what-is-a-mempool) by creating a second transaction with the same [nonce](https://docs.alchemy.com/alchemy/guides/ethereum-transactions-pending-mined-dropped-and-replaced#what-is-a-nonce) (number only used once) but a higher gas fee. Since miners are incentivized to include the second transaction (with the higher gas fee) first, the nonce will be "used," and the original transaction will be dropped from the mempool.
-
-Here are some possible reasons you might cancel a transaction:
-
-* You sent a transaction with a meager gas fee that is now stuck in a pending state.
-* You already know the transaction is going to fail.
-* You want to create a failsafe if something goes wrong with your transaction.
-
-***
-
-## Cancel Transaction: MetaMask
-
-Metamask has a built-in feature that allows you to cancel pending transactions with one click.
-
-  
-
-
- Set the max priority gas fee higher than your original transaction to ensure cancellation.
-
-
-***
-
-## Cancel Transaction: Alchemy's SDK
-
-In this section, we will create our own cancellation transaction using Alchemy's SDK. (Web3.js code examples are also included.)
-
-### Prerequisites
-
-Before you begin this tutorial, please ensure you have the following:
-
-* An Alchemy account ([Create a free Alchemy account](https://www.alchemy.com/)).
-* An Ethereum address or MetaMask wallet ([Create a MetaMask wallet](https://metamask.io/download/)).
-* NodeJS and npm installed ([Install NodeJs and NPM](https://docs.alchemy.com/alchemy/guides/alchemy-for-macs#1-install-nodejs-and-npm)).
-
-### Connect to Alchemy
-
-1. From the Alchemy Dashboard, hover over **Apps,** then click **+Create App**.
-2. Name your app: **Cancel-Tx**.
-3. Select **Ethereum** as your chain and **Sepolia** as your network.
-4. Click **Create app**.
-
-### Request ETH from the [Alchemy Sepolia faucet](https://sepoliafaucet.com/)
-
-1. From [Sepolia Faucet](https://sepoliafaucet.com/), sign in with your Alchemy account.
-2. Paste your MetaMask address and click **Send me ETH**.
-
-
- While you can use the Goerli testnet, we caution against it as the Ethereum Foundation has announced that [Goerli will soon be deprecated](https://www.alchemy.com/blog/goerli-faucet-deprecation).
-
- We therefore recommend using [Sepolia](https://www.alchemy.com/overviews/sepolia-testnet) as Alchemy has full Sepolia support and a free [Sepolia faucet](https://sepoliafaucet.com/) also.
-
-
-### Setup Project Environment
-
-Open VS Code (or your preferred IDE) and enter the following in the terminal:
-
-
- ```shell shell
- mkdir cancel-tx
- cd cancel-tx
- ```
-
-
-Once inside our project directory, initialize npm (node package manager) with the following command:
-
-
- ```shell shell
- npm init
- ```
-
-
-Press enter and answer the project prompt as follows:
-
-
- ```json package.json
- package name: (cancel-tx)
- version: (1.0.0)
- description:
- entry point: (index.js)
- test command:
- git repository:
- keywords:
- author:
- license: (ISC)
- ```
-
-
-Press enter again to complete the prompt. If successful, a `package.json` file will have been created in your directory.
-
-### Install environment tools
-
-The tools you will need to complete this tutorial are:
-
-* [Alchemy's SDK](https://docs.alchemy.com/alchemy/sdk/sdk-quickstart#alchemy-sdk-for-javascript)
-* [dotenv](https://www.npmjs.com/package/dotenv) (so that you can store your private key and API key safely)
-
-To install the above tools, ensure you are still inside your root folder and type the following commands in your terminal:
-
-**Alchemy SDK:**
-
-
- ```shell shell
- npm install alchemy-sdk
- ```
-
-
-**Dotenv:**
-
-
- ```shell shell
- npm install dotenv --save
- ```
-
-
-### Create a Dotenv File
-
-Create a `.env` file in your root folder. The file must be named `.env` or it will not be recognized.
-
-In the `.env` file, we will store all of our sensitive information (i.e., our Alchemy API key and MetaMask private key).
-
-Copy the following into your `.env` file:
-
-
- ```json .env
- API_KEY = "{YOUR_ALCHEMY_API_KEY}"
- PRIVATE_KEY = "{YOUR_PRIVATE_KEY}"
- ```
-
-
-* Replace `{YOUR_ALCHEMY_API_KEY}` with your Alchemy API key found in your app’s dashboard, under **VIEW KEY**:
-
-.PNG")
-
-* Replace `{YOUR_PRIVATE_KEY}`with your MetaMask private key.
-
-***To retrieve your MetaMask private key:***
-
-1. Open the extension, click on the three dots menu, and choose **Account Details**.
-
-.png")
-
-2. Click **Export Private Key** and enter your MetaMask password.
-
-.PNG")
-
-3. Replace the Private Key in your `.env` file with your MetaMask Private Key.
-
-### Create `cancelTx.js` file
-
-Create a file named `cancelTx.js` and add the following code:
-
-
- ```javascript Alchemy SDK (Recommended)
- const cancelTx = async () => {
- require("dotenv").config();
- // Imports the secret .env file where our Private Key and API are stored
- // We can now use these aliases instead of using our actual keys.
- const { API_KEY, PRIVATE_KEY } = process.env;
-
- // Import the Alchemy SDK
- const { Network, Alchemy, Wallet } = require("alchemy-sdk");
-
- // Initializes Alchemy SDK with our settings config
- const settings = {
- apiKey: API_KEY,
- network: Network.ETH_SEPOLIA,
- };
- const alchemy = new Alchemy(settings);
-
- // The Wallet holds the private key and signs transactions for you.
- const walletInst = new Wallet(PRIVATE_KEY);
-
- // Gets the latest nonce for our wallet address
- const nonce = await alchemy.core.getTransactionCount(walletInst.address);
- };
-
- cancelTx();
- ```
-
- ```javascript Alchemy Web3.js
- const cancelTx = async () => {
- require("dotenv").config();
- const { API_URL, PRIVATE_KEY } = process.env;
- const { createAlchemyWeb3 } = require("@alch/alchemy-web3");
- const web3 = createAlchemyWeb3(API_URL);
- const myAddress = "0x5DAAC14781a5C4AF2B0673467364Cba46Da935dB"; //TODO: replace this address with your own public address
- const nonce = await web3.eth.getTransactionCount(myAddress, "latest");
-
- };
-
- cancelTx();
- ```
-
-
-The code above sets up our Alchemy SDK to connect to the blockchain and send transactions.
-
-Next, let's create two transactions. The first will be the transaction we intend to cancel and the second will be our cancellation transaction. See the code below, noting specifically lines 17-29:
-
-
- ```javascript Alchemy SDK (Recommended)
- const cancelTx = async () => {
- require("dotenv").config();
- const { API_KEY, PRIVATE_KEY } = process.env;
- const { Network, Alchemy, Wallet, Utils } = require("alchemy-sdk");
-
- const settings = {
- apiKey: API_KEY,
- network: Network.ETH_SEPOLIA,
- };
- const alchemy = new Alchemy(settings);
-
- const walletInst = new Wallet(PRIVATE_KEY);
- const nonce = await alchemy.core.getTransactionCount(walletInst.address);
-
- const transaction = {
- gasLimit: "53000",
- maxPriorityFeePerGas: Utils.parseUnits("1", "gwei"),
- nonce: nonce,
- type: 2,
- chainId: 5,
- };
-
- const replacementTx = {
- gasLimit: "53000",
- maxPriorityFeePerGas: Utils.parseUnits("1.55", "gwei"),
- maxFeePerGas: Utils.parseUnits("1.8", "gwei"),
- nonce: nonce,
- type: 2,
- chainId: 5,
- };
- };
-
- cancelTx();
- ```
-
- ```javascript Alchemy Web3.js
- const cancelTx = async () => {
- require("dotenv").config();
- const { API_URL, PRIVATE_KEY } = process.env;
- const { createAlchemyWeb3 } = require("@alch/alchemy-web3");
- const web3 = createAlchemyWeb3(API_URL);
- const myAddress = "0x5DAAC14781a5C4AF2B0673467364Cba46Da935dB";
- const nonce = await web3.eth.getTransactionCount(myAddress, "latest");
-
- const transaction = {
- gas: '53000',
- maxPriorityFeePerGas: '1000000108',
- nonce: nonce,
- };
- const replacementTx = {
- gas: '53000',
- maxPriorityFeePerGas: '1500000108',
- nonce: nonce,
- };
-
- };
-
- cancelTx();
- ```
-
-
-
- Notice that we set the same nonce for both transactions.
-
-
-Here's an overview of the transaction parameters:
-
-* `gasLimit`: The maximum amount of gas used to execute our transaction. 21000 wei is the minimum amount of gas an operation on Ethereum will use, so to ensure our transaction will be executed we put 53000 wei here.
-* `maxPriorityFeePerGas`: The miner's tip. (Check out [Alchemy's guide](https://docs.alchemy.com/alchemy/guides/eip-1559/maxpriorityfeepergas-vs-maxfeepergas#what-is-max-priority-fee-per-gas) to learn more)
-* `maxFeePerGas`: Transaction base fee + miner's tip
-* `nonce`: (number only used once) used to keep track of transactions for a specific address.
-* `type`: The [EIP-2718](https://eips.ethereum.org/EIPS/eip-2718) type of the transaction envelope.
-
-Finally, let's send our transactions! For this, add the following try-catch statement, noting specifically lines 31-49:
-
-
- ```javascript Alchemy SDK (Recommended)
- const cancelTx = async () => {
- require("dotenv").config();
- const { API_KEY, PRIVATE_KEY } = process.env;
- const { Network, Alchemy, Wallet, Utils } = require("alchemy-sdk");
-
- const settings = {
- apiKey: API_KEY,
- network: Network.ETH_SEPOLIA,
- };
- const alchemy = new Alchemy(settings);
-
- const walletInst = new Wallet(PRIVATE_KEY);
- const nonce = await alchemy.core.getTransactionCount(walletInst.address);
-
- const transaction = {
- gasLimit: "53000",
- maxPriorityFeePerGas: Utils.parseUnits("1", "gwei"),
- nonce: nonce,
- type: 2,
- chainId: 5,
- };
-
- const replacementTx = {
- gasLimit: "53000",
- maxPriorityFeePerGas: Utils.parseUnits("1.55", "gwei"),
- maxFeePerGas: Utils.parseUnits("1.8", "gwei"),
- nonce: nonce,
- type: 2,
- chainId: 5,
- };
-
- try {
- const signedTx = await walletInst.signTransaction(transaction);
- const signedReplacementTx = await walletInst.signTransaction(replacementTx);
-
- const txResult = await alchemy.core.sendTransaction(signedTx);
- const replacementTxResult = await alchemy.core.sendTransaction(
- replacementTx
- );
-
- console.log(
- "The hash of the transaction we are going to cancel is:",
- txResult.hash
- );
- console.log(
- "The hash of your replacement transaction is:",
- replacementTxResult.hash,
- "\n Check Alchemy's Mempool to view the status of your transactions!"
- );
- } catch (error) {
- console.log(
- "Something went wrong while submitting your transactions:",
- error
- );
- }
- };
-
- cancelTx();
- ```
-
- ```javascript Alchemy Web3.js
- const cancelTx = async () => {
- require("dotenv").config();
- const { API_URL, PRIVATE_KEY } = process.env;
- const { createAlchemyWeb3 } = require("@alch/alchemy-web3");
- const web3 = createAlchemyWeb3(API_URL);
- const myAddress = "0x5DAAC14781a5C4AF2B0673467364Cba46Da935dB";
- const nonce = await web3.eth.getTransactionCount(myAddress, "latest");
-
- const transaction = {
- gas: '53000',
- maxPriorityFeePerGas: '1000000108',
- nonce: nonce,
- };
- const replacementTx = {
- gas: '53000',
- maxPriorityFeePerGas: '1500000108',
- nonce: nonce,
- };
-
- const signedTx = await web3.eth.accounts.signTransaction(transaction, PRIVATE_KEY);
- const signedReplacementTx = await web3.eth.accounts.signTransaction(replacementTx, PRIVATE_KEY);
-
- web3.eth.sendSignedTransaction(signedTx.rawTransaction, function (error, hash) {
- if (!error) {
- console.log(
- "The hash of the transaction we are going to cancel is: ",
- hash
- );
- } else {
- console.log(
- "Something went wrong while submitting your transaction:",
- error
- );
- }
- });
-
- web3.eth.sendSignedTransaction(signedReplacementTx.rawTransaction, function (error, hash) {
- if (!error) {
- console.log(
- "The hash of your replacement transaction is: ",
- hash,
- "\n Check Alchemy's Mempool to view the status of your transactions!"
- );
- } else {
- console.log(
- "Something went wrong while submitting your replacement transaction:",
- error
- );
- }
- }).once("sent", () => {
- let timeout = new Promise(() => {
- let id = setTimeout(() => {
- clearTimeout(id);
- process.exit()
- }, 3000);
- });
- return timeout;
- });
-
- };
-
- cancelTx();
- ```
-
-
-Above, we call the `sendTransaction` function and pass in our transaction.
-
-To run our script, type this command in terminal:
-
-
- ```shell shell
- node cancelTx.js
- ```
-
-
-If successful, you should see an output similar to the following:
-
-
- ```shell shell
- The hash of the transaction we are going to cancel is: 0x48b35baed265c5c7b31a16cf527a66f622923ad6cbe02c77a4af6438d528c199
- The hash of your replacement transaction is: 0x1145ea775a7889cdbdf1a29d41decd681adb9894b2351a324bf82923dfbd8b09
- Check Alchemy's Mempool to view the status of your transactions!
- ```
-
-
-On Alchemy, head to your app's dashboard and navigate to the **Mempool** tab.
-
-After your replacement transaction has been mined, you should see that your first transaction was dropped and replaced:
-
-
-
-Nice work! You successfully created then canceled a transaction using Alchemy's SDK!
-
-If you have any questions or feedback, please contact us at or open a ticket in the dashboard.
diff --git a/fern/tutorials/transactions/sending-transactions/sending-transactions.mdx b/fern/tutorials/transactions/sending-transactions/sending-transactions.mdx
index f1a243d00..0132eda73 100644
--- a/fern/tutorials/transactions/sending-transactions/sending-transactions.mdx
+++ b/fern/tutorials/transactions/sending-transactions/sending-transactions.mdx
@@ -15,6 +15,4 @@ In this section, you will find tutorials and resources for sending transactions
The following tutorials are listed under this section:
* [How to Send Transactions on Ethereum](/docs/how-to-send-transactions-on-ethereum)
-* [How to Send a Private Transaction on Ethereum](/docs/how-to-send-a-private-transaction-on-ethereum)
-* [How to Cancel a Transaction on Ethereum](/docs/how-to-cancel-a-private-transaction-on-ethereum)
* [How to Check the Status of a Transaction using its Hash](/docs/how-to-check-the-status-of-a-transaction-using-its-hash)
diff --git a/src/openrpc/alchemy/token/token.yaml b/src/openrpc/alchemy/token/token.yaml
deleted file mode 100644
index 787314f4f..000000000
--- a/src/openrpc/alchemy/token/token.yaml
+++ /dev/null
@@ -1,319 +0,0 @@
-# yaml-language-server: $schema=https://meta.open-rpc.org/
-
-$schema: https://meta.open-rpc.org/
-openrpc: 1.2.4
-info:
- title: Alchemy Private Transactions API JSON-RPC Specification
- description: A specification of the standard JSON-RPC methods for Private Transactions API.
- version: 0.0.0
-servers:
- - url: https://eth-mainnet.g.alchemy.com/v2
- name: Ethereum Mainnet
- - url: https://eth-mainnetbeacon.g.alchemy.com/v2
- name: Ethereum Mainnet Beacon
- - url: https://eth-holesky.g.alchemy.com/v2
- name: Ethereum Holešky
- - url: https://eth-holeskybeacon.g.alchemy.com/v2
- name: Ethereum Holešky Beacon
- - url: https://eth-hoodi.g.alchemy.com/v2
- name: Ethereum Hoodi
- - url: https://eth-hoodibeacon.g.alchemy.com/v2
- name: Ethereum Hoodi Beacon
- - url: https://eth-sepolia.g.alchemy.com/v2
- name: Ethereum Sepolia
- - url: https://eth-sepoliabeacon.g.alchemy.com/v2
- name: Ethereum Sepolia Beacon
- - url: https://abstract-mainnet.g.alchemy.com/v2
- name: Abstract Mainnet
- - url: https://abstract-testnet.g.alchemy.com/v2
- name: Abstract Testnet
- - url: https://anime-mainnet.g.alchemy.com/v2
- name: Anime Mainnet
- - url: https://anime-sepolia.g.alchemy.com/v2
- name: Anime Sepolia
- - url: https://apechain-mainnet.g.alchemy.com/v2
- name: ApeChain Mainnet
- - url: https://apechain-curtis.g.alchemy.com/v2
- name: ApeChain Curtis
- - url: https://arb-mainnet.g.alchemy.com/v2
- name: Arbitrum Mainnet
- - url: https://arb-sepolia.g.alchemy.com/v2
- name: Arbitrum Sepolia
- - url: https://arbnova-mainnet.g.alchemy.com/v2
- name: Arbitrum Nova Mainnet
- - url: https://avax-mainnet.g.alchemy.com/v2
- name: Avalanche Mainnet
- - url: https://avax-fuji.g.alchemy.com/v2
- name: Avalanche Fuji
- - url: https://base-mainnet.g.alchemy.com/v2
- name: Base Mainnet
- - url: https://base-sepolia.g.alchemy.com/v2
- name: Base Sepolia
- - url: https://berachain-mainnet.g.alchemy.com/v2
- name: Berachain Mainnet
- - url: https://berachain-bepolia.g.alchemy.com/v2
- name: Berachain Bepolia
- - url: https://blast-mainnet.g.alchemy.com/v2
- name: Blast Mainnet
- - url: https://blast-sepolia.g.alchemy.com/v2
- name: Blast Sepolia
- - url: https://bnb-mainnet.g.alchemy.com/v2
- name: BNB Smart Chain Mainnet
- - url: https://bnb-testnet.g.alchemy.com/v2
- name: BNB Smart Chain Testnet
- - url: https://celo-mainnet.g.alchemy.com/v2
- name: Celo Mainnet
- - url: https://celo-alfajores.g.alchemy.com/v2
- name: Celo Alfajores
- - url: https://celo-sepolia.g.alchemy.com/v2
- name: Celo Sepolia
- - url: https://gensyn-testnet.g.alchemy.com/v2
- name: Gensyn Testnet
- - url: https://gnosis-mainnet.g.alchemy.com/v2
- name: Gnosis Mainnet
- - url: https://gnosis-chiado.g.alchemy.com/v2
- name: Gnosis Chiado
- - url: https://ink-mainnet.g.alchemy.com/v2
- name: Ink Mainnet
- - url: https://ink-sepolia.g.alchemy.com/v2
- name: Ink Sepolia
- - url: https://lens-mainnet.g.alchemy.com/v2
- name: Lens Mainnet
- - url: https://lens-sepolia.g.alchemy.com/v2
- name: Lens Sepolia
- - url: https://linea-mainnet.g.alchemy.com/v2
- name: Linea Mainnet
- - url: https://linea-sepolia.g.alchemy.com/v2
- name: Linea Sepolia
- - url: https://polygon-mainnet.g.alchemy.com/v2
- name: Polygon Mainnet
- - url: https://polygon-amoy.g.alchemy.com/v2
- name: Polygon Amoy
- - url: https://monad-testnet.g.alchemy.com/v2
- name: Monad Testnet
- - url: https://opt-mainnet.g.alchemy.com/v2
- name: OP Mainnet Mainnet
- - url: https://opt-sepolia.g.alchemy.com/v2
- name: OP Mainnet Sepolia
- - url: https://ronin-mainnet.g.alchemy.com/v2
- name: Ronin Mainnet
- - url: https://ronin-saigon.g.alchemy.com/v2
- name: Ronin Saigon
- - url: https://rootstock-mainnet.g.alchemy.com/v2
- name: Rootstock Mainnet
- - url: https://rootstock-testnet.g.alchemy.com/v2
- name: Rootstock Testnet
- - url: https://scroll-mainnet.g.alchemy.com/v2
- name: Scroll Mainnet
- - url: https://scroll-sepolia.g.alchemy.com/v2
- name: Scroll Sepolia
- - url: https://settlus-mainnet.g.alchemy.com/v2
- name: Settlus Mainnet
- - url: https://settlus-septestnet.g.alchemy.com/v2
- name: Settlus Sepolia
- - url: https://shape-mainnet.g.alchemy.com/v2
- name: Shape Mainnet
- - url: https://shape-sepolia.g.alchemy.com/v2
- name: Shape Sepolia
- - url: https://soneium-mainnet.g.alchemy.com/v2
- name: Soneium Mainnet
- - url: https://soneium-minato.g.alchemy.com/v2
- name: Soneium Minato
- - url: https://sonic-mainnet.g.alchemy.com/v2
- name: Sonic Mainnet
- - url: https://sonic-blaze.g.alchemy.com/v2
- name: Sonic Blaze
- - url: https://sonic-testnet.g.alchemy.com/v2
- name: Sonic Testnet
- - url: https://story-mainnet.g.alchemy.com/v2
- name: Story Mainnet
- - url: https://story-aeneid.g.alchemy.com/v2
- name: Story Aeneid
- - url: https://tea-sepolia.g.alchemy.com/v2
- name: Tea Sepolia
- - url: https://unichain-mainnet.g.alchemy.com/v2
- name: Unichain Mainnet
- - url: https://unichain-sepolia.g.alchemy.com/v2
- name: Unichain Sepolia
- - url: https://worldchain-mainnet.g.alchemy.com/v2
- name: World Chain Mainnet
- - url: https://worldchain-sepolia.g.alchemy.com/v2
- name: World Chain Sepolia
- - url: https://zetachain-mainnet.g.alchemy.com/v2
- name: ZetaChain Mainnet
- - url: https://zetachain-testnet.g.alchemy.com/v2
- name: ZetaChain Testnet
- - url: https://zksync-mainnet.g.alchemy.com/v2
- name: ZKsync Mainnet
- - url: https://zksync-sepolia.g.alchemy.com/v2
- name: ZKsync Sepolia
- - url: https://zora-mainnet.g.alchemy.com/v2
- name: Zora Mainnet
- - url: https://zora-sepolia.g.alchemy.com/v2
- name: Zora Sepolia
-methods:
- - name: alchemy_getTokenAllowance
- description: Returns the token allowance by spender for a given owner.
- params:
- - name: tokenAllowanceRequest
- required: true
- description: >
- An object specifying the token contract address, the owner address, and
- the spender address.
- schema:
- type: object
- properties:
- contract:
- $ref: "../_shared/components.yaml#/components/schemas/address"
- description: "20-byte token contract address."
- owner:
- $ref: "../_shared/components.yaml#/components/schemas/address"
- description: "20-byte address of the owner."
- spender:
- $ref: "../_shared/components.yaml#/components/schemas/address"
- description: "20-byte address of the spender."
- required:
- - contract
- - owner
- - spender
- result:
- name: Allowance
- description: The amount that the spender is allowed to withdraw from the owner.
- schema:
- type: string
- description: A decimal string representing the allowance.
- examples:
- - name: Basic allowance example
- params:
- - name: tokenAllowanceRequest
- value:
- contract: "0x0d500b1d8e8ef31e21c99d1db9a6444d3adf1270"
- owner: "0xf1a726210550c306a9964b251cbcd3fa5ecb275d"
- spender: "0xdef1c0ded9bec7f1a1670819833240f027b25eff"
- result:
- name: Allowance
- value: "0"
-
- - name: alchemy_getTokenBalances
- description: Returns ERC-20 token balances for a given address.
- params:
- - name: address
- required: true
- description: >
- A 20-byte wallet address.
- schema:
- type: string
- title: Address
- default: "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045"
-
- - name: tokenSpec
- required: false
- description: >
- A token specification:
- - The string "erc20"
- - "DEFAULT_TOKENS" (deprecated)
- - An array of token contract addresses.
- schema:
- oneOf:
- - type: string
- title: "Token Specification"
- enum: ["erc20", "DEFAULT_TOKENS"]
- default: "erc20"
- - type: array
- title: "Array of Contract Addresses"
- items:
- type: string
- pattern: "^0[xX][0-9a-fA-F]{40}$"
-
- - name: options
- required: false
- description: >
- Optional pagination options.
- schema:
- type: object
- title: "Options"
- properties:
- pageKey:
- type: string
- description: "Used for pagination if more results are available."
- maxCount:
- type: integer
- description: "Maximum number of token balances to return per call (capped at 100)."
- default: 100
-
- result:
- name: Token Balances
- description: An object containing the queried address and an array of token balance objects.
- schema:
- type: object
- properties:
- address:
- $ref: "../_shared/components.yaml#/components/schemas/address"
- description: "Address for which token balances were returned."
- tokenBalances:
- type: array
- description: "Array of token balance objects. Exactly one of tokenBalance or error is non-null."
- items:
- type: object
- properties:
- contractAddress:
- $ref: "../_shared/components.yaml#/components/schemas/address"
- description: "The ERC-20 contract address."
- tokenBalance:
- type: string
- description: "Hex-encoded string of the token balance, or null if error is present."
-
- examples:
- - name: Single token balance example
- params:
- - name: address
- value: "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045"
- - name: tokenSpec
- value:
- - "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48"
- result:
- name: Token Balances
- value:
- address: "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045"
- tokenBalances:
- - contractAddress: "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48"
- tokenBalance: "0x0000000000000000000000000000000000000000000000000000000000000000"
-
- - name: alchemy_getTokenMetadata
- description: Returns metadata for a given token contract (name, symbol, decimals, logo).
- params:
- - name: contractAddress
- required: true
- description: "A single 20-byte token contract address."
- schema:
- $ref: "../_shared/components.yaml#/components/schemas/address"
- result:
- name: Token Metadata
- description: Object with name, symbol, decimals, and an optional logo URL.
- schema:
- type: object
- properties:
- name:
- type: string
- description: "Token's name, or null if not found."
- symbol:
- type: string
- description: "Token's symbol, or null if not found."
- decimals:
- type: number
- description: "Number of decimals the token uses, or null if not found."
- logo:
- type: string
- description: "URL of the token's logo image, or null if none available."
- examples:
- - name: USDC metadata example
- params:
- - name: contractAddress
- value: "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48"
- result:
- name: Token Metadata
- value:
- name: "USD Coin"
- symbol: "USDC"
- decimals: 6
- logo: "https://static.alchemyapi.io/images/assets/3408.png"
diff --git a/src/openrpc/chains/_components/custom/methods.yaml b/src/openrpc/chains/_components/custom/methods.yaml
index 493a6decb..2fb1a7260 100644
--- a/src/openrpc/chains/_components/custom/methods.yaml
+++ b/src/openrpc/chains/_components/custom/methods.yaml
@@ -821,73 +821,6 @@ components:
name: RootHash
value: "0xabc123...def456"
- eth_sendPrivateTransaction:
- name: eth_sendPrivateTransaction
- description: Send a single private transaction through Flashbots. Private transactions are sent directly to validators and not included in the public mempool.
- params:
- - name: tx
- required: true
- description: Raw, signed transaction.
- schema:
- $ref: "./components.yaml#/components/schemas/bytesAnyCase"
- default: "0x02f87205158459682f00850c51e9727a82520894477db63b8e73aea96f201c3c4f5e8fbfcdd18b5c87038d7ea4c6800080c080a0312d6375e578ab953a41456d4be583a46dced97a9e38f349bb8e7b63d14cfc1ea001daea40332180670568a1864e6d3f910b194903128d4a0a5c499597f3f6ff40"
- - name: maxBlockNumber
- required: false
- description: Hex-encoded number for the highest block number in which the transaction should be included.
- schema:
- $ref: "./components.yaml#/components/schemas/uintHexAnyCase"
- default: "0x2540BE400"
- - name: preferences
- required: false
- description: Transaction preferences.
- schema:
- type: object
- properties:
- fast:
- type: boolean
- description: Sends transaction with fast mode when true.
- result:
- name: Transaction Hash
- description: Returns the transaction hash (32-byte hex string).
- schema:
- $ref: "./components.yaml#/components/schemas/hash32AnyCase"
- examples:
- - name: eth_sendPrivateTransaction example
- params:
- - name: tx
- value: "0x02f87205158459682f00850c51e9727a82520894477db63b8e73aea96f201c3c4f5e8fbfcdd18b5c87038d7ea4c6800080c080a0312d6375e578ab953a41456d4be583a46dced97a9e38f349bb8e7b63d14cfc1ea001daea40332180670568a1864e6d3f910b194903128d4a0a5c499597f3f6ff40"
- - name: maxBlockNumber
- value: "0x2540be400"
- - name: preferences
- value:
- fast: true
- result:
- name: Transaction Hash
- value: "0xb1770efb14906e509893b6190359658208ae64d0c56e22f748a1b0869885559e"
-
- eth_cancelPrivateTransaction:
- name: eth_cancelPrivateTransaction
- description: Request to cancel a private transaction that was sent via eth_sendPrivateTransaction.
- params:
- - name: txHash
- required: true
- description: Transaction hash for the private transaction to be cancelled.
- schema:
- $ref: "./components.yaml#/components/schemas/hash32AnyCase"
- result:
- name: Cancellation Status
- description: Returns true if the transaction was successfully cancelled, false otherwise.
- schema:
- type: boolean
- examples:
- - name: eth_cancelPrivateTransaction example
- params:
- - name: txHash
- value: "0xb1770efb14906e509893b6190359658208ae64d0c56e22f748a1b0869885559e"
- result:
- name: Cancellation Status
- value: true
-
eth_baseFee:
name: eth_baseFee
description: Returns the base fee for the next block.
diff --git a/src/openrpc/chains/eth/eth.yaml b/src/openrpc/chains/eth/eth.yaml
index fb3402844..95436ae7b 100644
--- a/src/openrpc/chains/eth/eth.yaml
+++ b/src/openrpc/chains/eth/eth.yaml
@@ -26,8 +26,6 @@ servers:
methods:
- $ref: ../_components/custom/methods.yaml#/components/methods/eth_accounts
- $ref: ../_components/custom/methods.yaml#/components/methods/eth_blobBaseFee
- - $ref: >-
- ../_components/custom/methods.yaml#/components/methods/eth_cancelPrivateTransaction
- $ref: >-
../_components/custom/methods.yaml#/components/methods/eth_createAccessList
- $ref: ../_components/custom/methods.yaml#/components/methods/eth_feeHistory
@@ -47,8 +45,6 @@ methods:
- $ref: >-
../_components/custom/methods.yaml#/components/methods/eth_newPendingTransactionFilter
- $ref: ../_components/custom/methods.yaml#/components/methods/eth_protocolVersion
- - $ref: >-
- ../_components/custom/methods.yaml#/components/methods/eth_sendPrivateTransaction
- $ref: ../_components/custom/methods.yaml#/components/methods/eth_simulateV1
- $ref: ../_components/custom/methods.yaml#/components/methods/eth_syncing
- $ref: ../_components/evm/methods.yaml#/components/methods/eth_blockNumber