diff --git a/docs/whats-new.md b/docs/whats-new.md index 435d9e91dd..fcf2585fcf 100644 --- a/docs/whats-new.md +++ b/docs/whats-new.md @@ -11,6 +11,8 @@ of the [MetaMask developer page](https://metamask.io/developer/). ## September 2024 +- Documented [`linea_getTransactionExclusionStatusV1`](/services/reference/linea/json-rpc-methods/linea_gettransactionexclusionstatusv1). + - Updated [credit cost](/services/get-started/pricing/credit-cost/#ethereum) for `eth_sendRawTransaction`. ([#1581](https://github.com/MetaMask/metamask-docs/pull/1581)) - Documented WebSocket support for [Base](/services/reference/base), diff --git a/services/reference/linea/json-rpc-methods/linea_gettransactionexclusionstatusv1.mdx b/services/reference/linea/json-rpc-methods/linea_gettransactionexclusionstatusv1.mdx new file mode 100644 index 0000000000..c64df6e1d6 --- /dev/null +++ b/services/reference/linea/json-rpc-methods/linea_gettransactionexclusionstatusv1.mdx @@ -0,0 +1,100 @@ +--- +title: "linea_getTransactionExclusionStatusV1" +--- + +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +:::info Only available on request + +This API method is only available on request. [Contact support](https://support.infura.io/) +to obtain access to the method. + +::: + +Checks if a transaction was rejected for exceeding data line limits, preventing the prover from generating +a proof to be included in a block. + +:::warning +You can only check for rejected transactions within seven days of the transaction attempt. +::: + +If the transaction is rejected, the API call succeeds and provides the reason; otherwise, it returns +`null` as the result. + + +## Parameters + +`transaction hash`: _\[Required]_ A string representing the hash (32 bytes) of a transaction. + +## Returns + +- `txHash`: The hash of the transaction. +- `from`: The address of the sender. +- `nonce`: Number of transactions made by the sender. +- `txRejectionStage`: The point at which the transaction was rejected. One of: + - `SEQUENCER`: Rejected by the sequencer. + - `RPC`: Rejected by an RPC node. + - `P2P`: Rejected by a P2P-connected node. +- `reasonMessage`: The reason the transaction was rejected. +- `blockNumber`: The block that the transaction was rejected from, in hexadecimal format. + Only returned for transactions rejected by the sequencer. +- `timestamp`: Time of rejection, in ISO 8601 format. + +## Example + +Replace `YOUR-API-KEY` with an API key from your [Infura dashboard](https://infura.io/dashboard). + +### Request + + + + + ```bash + curl https://linea-mainnet.infura.io/v3/ \ + -X POST \ + -H "Content-Type: application/json" \ + -d '{"jsonrpc": "2.0", "id": "1", "method": "linea_getTransactionExclusionStatusV1", "params": ["0x526e56101cf39c1e717cef9cedf6fdddb42684711abda35bae51136dbb350ad7"]}' + ``` + + + + ```bash + wscat -c wss://linea-mainnet.infura.io/ws/v3/YOUR-API-KEY -x '{"jsonrpc":"2.0", "method": "linea_getTransactionExclusionStatusV1", "params": ["0x526e56101cf39c1e717cef9cedf6fdddb42684711abda35bae51136dbb350ad7"], "id": 1}' + ``` + + + + +### Response + + + + ```json + { + "jsonrpc": "2.0", + "id": "1", + "result": { + "txHash": "0x526e56101cf39c1e717cef9cedf6fdddb42684711abda35bae51136dbb350ad7", + "from": "0x4d144d7b9c96b26361d6ac74dd1d8267edca4fc2", + "nonce": "0x64", + "txRejectionStage": "SEQUENCER", + "reasonMessage": "Transaction line count for module ADD=402 is above the limit 70", + "blockNumber": "0x3039", + "timestamp": "2024-08-22T09:18:51Z" + } + } + ``` + + + +If the transaction was not rejected for exceeding line limits, or is older than seven days, it will not be +found in the database, and a `null` result is returned. For example: + +```json +{ + "jsonrpc": "2.0", + "id": 1, + "result": null +} +``` \ No newline at end of file