This method extends the capabilities of Solana's getTransaction method by providing enhanced parsing functionality.

🚧

This endpoint is still in Beta stage.

📘

This method supports batch requests (Maximum size 10).

Parameters

  • apikey - ApiKey generated from paid subscription. This can be used as a path parameter or as a request header as x-api-key.
  • explorerkit - optional boolean flag to use enhanced parsing.
  • actionskit - optional boolean flag to include summarised transaction action. If set to true, explorerkit is defaulted to true as well.

Request

curl https://mainnet-rpc.solana.fm/{apikey}?explorerkit=true&actionskit=true -X POST -H "Content-Type: application/json" -d '
    {
        "jsonrpc": "2.0",
        "id": 1,
        "method": "getTransaction",
        "params": [
            "5XGgtGnQFRojgFtwLhUuuXoHyKuazjGz7FwMLDg3n1gn4ALTvLrUeong4L6udJxBiPBkvK2siC1QU66dji5A4RuQ",
            {
                "maxSupportedTransactionVersion": 1,
                "encoding": "jsonParsed"
            }
        ]
    }
'

This sample request shows a getTransaction method call for a transaction that involves listing an NFT on MagicEden.

SolanaFM RPC Response

{
  "stackHeight": null,
  "programId": "M2mx93ekt1fmXSVkTrUL9xVFHkmME8HTUi5Cyc5aF7K",
  "program": "m2",
  "parsed": {
    "info": {
      "sellerStateBump": 254,
      "programAsSignerBump": 250,
      "buyerPrice": "209000000",
      "tokenSize": "1",
      "sellerStateExpiry": "-1",
      "wallet": "8iiiMUNkz4j3XNYcZ5jj3wqcTJEEP15oxrfi6xJqnk2A",
      "notary": "NTYeYJ1wr4bpM5xo6zx5En44SvJFAd35zTxxNoERYqd",
      "tokenAccount": "2CB2cE3BtZWRdEizoCYS8cHqgrbvUxLjnUbK9gAZ9WCG",
      "tokenAta": "2CB2cE3BtZWRdEizoCYS8cHqgrbvUxLjnUbK9gAZ9WCG",
      "tokenMint": "5E1r4YiVL38Cj4eCXJv5KKxgxxo25BCtctpthQkf4NTN",
      "metadata": "HAyn8dSVbL4kBjAtPhsCh6jnBV5oLDavjsd5uYjzJQxa",
      "authority": "autMW8SgBkVYeBgqYiTuJZnkvDZMVU2MHJh9Jh7CSQ2",
      "auctionHouse": "E8cU1WiRWjanGxmn96ewBgk9vPTcL6AEZ1t6F6fkgUWe",
      "sellerTradeState": "72ijdQaUQnQx6oynh5LMcXP4FzebzaC2RfYFek35U2KK",
      "sellerReferral": "9ZGSzSRwGiTTXuZVsRbjBt9EQqtmMH1Qj9zrQAMQX5Va",
      "tokenProgram": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA",
      "systemProgram": "11111111111111111111111111111111",
      "ataProgram": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL",
      "programAsSigner": "1BWutmTvYPwDtmw9abTkS4Ssr8no61spGAvW1X6NDix",
      "rent": "SysvarRent111111111111111111111111111111111"
    },
    "type": "sell"
  },
  "actions": "8iiiMUNkz4j3XNYcZ5jj3wqcTJEEP15oxrfi6xJqnk2A listed 1 for 209000000"
}

This is a snippet of the response returned from the request above. The MagicEden program M2mx93ekt1fmXSVkTrUL9xVFHkmME8HTUi5Cyc5aF7K is parsed for the instruction sell.

Standard RPC Response

{
  "accounts": [
    "8iiiMUNkz4j3XNYcZ5jj3wqcTJEEP15oxrfi6xJqnk2A",
    "NTYeYJ1wr4bpM5xo6zx5En44SvJFAd35zTxxNoERYqd",
    "2CB2cE3BtZWRdEizoCYS8cHqgrbvUxLjnUbK9gAZ9WCG",
    "2CB2cE3BtZWRdEizoCYS8cHqgrbvUxLjnUbK9gAZ9WCG",
    "5E1r4YiVL38Cj4eCXJv5KKxgxxo25BCtctpthQkf4NTN",
    "HAyn8dSVbL4kBjAtPhsCh6jnBV5oLDavjsd5uYjzJQxa",
    "autMW8SgBkVYeBgqYiTuJZnkvDZMVU2MHJh9Jh7CSQ2",
    "E8cU1WiRWjanGxmn96ewBgk9vPTcL6AEZ1t6F6fkgUWe",
    "72ijdQaUQnQx6oynh5LMcXP4FzebzaC2RfYFek35U2KK",
    "9ZGSzSRwGiTTXuZVsRbjBt9EQqtmMH1Qj9zrQAMQX5Va",
    "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA",
    "11111111111111111111111111111111",
    "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL",
    "1BWutmTvYPwDtmw9abTkS4Ssr8no61spGAvW1X6NDix",
    "SysvarRent111111111111111111111111111111111"
  ],
  "data": "2B3vSpRNKZZWsFYtQ5kMDyC9oBNXCyLxv4VkfrWiFtY1ege",
  "programId": "M2mx93ekt1fmXSVkTrUL9xVFHkmME8HTUi5Cyc5aF7K",
  "stackHeight": null
}

This is the response returned by a standard RPC after making the same request as shown above. As you can see since the MagicEden program is a non-native program, a standard RPC would not be able to parse the data and it is returned as a base64 string.