> ## Documentation Index
> Fetch the complete documentation index at: https://docs.sim.dune.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Transactions

> Retrieve granular transaction details including block information, gas data, transaction types, and raw transaction values.

export const SupportedChains = ({endpoint, title, excludeChains}) => {
  const dataState = useState(null);
  const data = dataState[0];
  const setData = dataState[1];
  useEffect(function () {
    var url = "https://api.sim.dune.com/v1/evm/supported-chains";
    fetch(url, {
      method: "GET"
    }).then(function (response) {
      return response.json();
    }).then(function (responseData) {
      setData(responseData);
    });
  }, [endpoint]);
  if (data === null) {
    return <div>Loading chain information...</div>;
  }
  if (!data.chains) {
    return <div>No chain data available</div>;
  }
  var supportedChains = [];
  var totalChains = data.chains.length;
  var excludedChainNames = excludeChains || [];
  for (var i = 0; i < data.chains.length; i++) {
    var chain = data.chains[i];
    if (excludedChainNames.indexOf(chain.name) !== -1) continue;
    if (endpoint === undefined) {
      supportedChains.push(chain);
    } else if (chain[endpoint] && chain[endpoint].supported) {
      supportedChains.push(chain);
    }
  }
  var count = supportedChains.length;
  var endpointName = endpoint ? endpoint.charAt(0).toUpperCase() + endpoint.slice(1).replace(/_/g, " ") : "All";
  var accordionTitle = title ? title + " (" + count + ")" : "Supported Chains (" + count + ")";
  return <Accordion title={accordionTitle}>
      <table>
        <thead>
          <tr>
            <th>name</th>
            <th>chain_id</th>
            <th>tags</th>
          </tr>
        </thead>
        <tbody>
          {supportedChains.map(function (chain) {
    return <tr key={chain.name}>
                <td><code>{chain.name}</code></td>
                <td><code>{chain.chain_id}</code></td>
                <td><code>{chain.tags ? chain.tags.join(", ") : ""}</code></td>
              </tr>;
  })}
        </tbody>
      </table>
    </Accordion>;
};

<img src="https://mintcdn.com/sim-dune/ZJaWY5isqbzG1C45/images/transaction.svg?fit=max&auto=format&n=ZJaWY5isqbzG1C45&q=85&s=b9c1dbffc17524e05c7a11079e317ae3" alt="Transaction Sv" width="720" height="275" data-path="images/transaction.svg" />

The Transactions API allows for quick and accurate lookup of transactions associated with an address.
Transactions are ordered by descending block time, so the most recent transactions appear first.

<SupportedChains endpoint="transactions" />

## Decoded transactions

Enable decoded transaction data and logs by adding the `?decode=true` query parameter to your request.
When decoding is enabled, two types of data may be decoded:

1. **Transaction call data**: The `data` field of each transaction may include an additional `decoded` object at the root level of the transaction, representing the parsed function call.
2. **Event logs**: When a transaction contains EVM logs, each log may include an additional `decoded` object representing the parsed event.

For more details, see the [response information](#response-logs-decoded) below.

<Note>
  Decoding is only available for contracts that exist on [Dune.com](https://dune.com). Search for your contract on Dune to check if it's available for decoding. Transactions without logs, logs without known signatures, or contracts not indexed on Dune **will not** include decoded data.
</Note>

## Warnings

When requesting transactions for specific chains using the `chain_ids` parameter, the API may return warnings if some requested chain IDs are not supported. Unlike errors, warnings indicate non-fatal issues where the request can still be partially fulfilled.

When unsupported chain IDs are included in your request, the API will:

* Return transactions for all supported chains you requested
* Include a `warnings` array in the response with details about the unsupported chains

### Example: Request with Unsupported Chain IDs

If you request `?chain_ids=1,9999,10`, the API returns transactions for chains 1 and 10 (supported), and includes a warning about chain 9999 (unsupported):

```json theme={null}
{
  "wallet_address": "0x37305b1cd40574e4c5ce33f8e8306be057fd7341",
  "transactions": [
    {
      "address": "0x37305b1cd40574e4c5ce33f8e8306be057fd7341",
      "block_hash": "0x745bdf699cee1fef27b9304be43a2435c744500ef455cc6b7dfb4c34417601a2",
      "block_number": "30819446",
      "block_time": "2025-05-28T10:30:39Z",
      "chain": "ethereum",
      "from": "0x37305b1cd40574e4c5ce33f8e8306be057fd7341",
      "to": "0x6ff5693b99212da76ad316178a184ab56d299b43",
      "hash": "0x1081ebf623669338e9de6865d08d7ff3a3d1b0ef6f6486b350c3caf5b2e9257d",
      "value": "0x0"
    }
  ],
  "warnings": [
    {
      "code": "UNSUPPORTED_CHAIN_IDS",
      "message": "Some requested chain_ids are not supported. Transactions are returned only for supported chains.",
      "chain_ids": [9999],
      "docs_url": "https://docs.sim.dune.com/evm/supported-chains"
    }
  ]
}
```

<Tip>
  Check the [Supported Chains](/evm/supported-chains) page to see which chains are currently supported for the Transactions endpoint.
</Tip>

## Pagination

This endpoint is using cursor based pagination.
You can use the `limit` parameter to define the maximum page size.
Results might at times be less than the maximum page size.
The `next_offset` value is included in the initial response and can be utilized to fetch the next page of results by passing it as the `offset` query parameter in the next request.

<Warning>
  You can only use the value from `next_offset` to set the `offset` parameter of the next page of results. Using your own `offset` value will not have any effect.
</Warning>

## Compute Unit Cost

The Transactions endpoint has a fixed CU cost of **1** per request. See the [Compute Units](/compute-units) page for detailed information.

## Real-Time Updates

<Tip>
  **Skip the polling.** Use the [Subscriptions API](/evm/subscriptions) to receive webhook notifications when a wallet sends or receives a transaction. [Set up a webhook in minutes](/evm/subscriptions/create-webhook).
</Tip>


## OpenAPI

````yaml /openapi.json GET /v1/evm/transactions/{address}
openapi: 3.0.3
info:
  title: Sim API
  description: >-
    The Sim API by Dune provides real-time blockchain data across EVM and SVM
    chains. Access token balances, transaction history, on-chain activity, DeFi
    positions, NFT collectibles, token information, and webhook subscriptions
    through a unified REST API.
  version: 1.0.0
  license:
    name: ''
  contact:
    name: Dune Support
    url: https://docs.sim.dune.com
    email: support@dune.com
servers:
  - url: https://api.sim.dune.com
security:
  - ApiKeyAuth: []
tags:
  - name: evm
    description: EVM-compatible blockchain endpoints.
  - name: svm
    description: Solana/SVM blockchain endpoints.
  - name: activity
    description: On-chain activity feed.
  - name: balances
    description: Token balances (EVM and SVM).
  - name: transactions
    description: Transaction history (EVM and SVM).
  - name: collectibles
    description: NFT and ERC721/ERC1155 holdings.
  - name: defi
    description: DeFi protocol positions.
  - name: supported-chains
    description: Supported blockchain networks.
  - name: token-info
    description: Token metadata and pricing.
  - name: token-holders
    description: Token holder distribution.
  - name: subscriptions
    description: >-
      Webhook subscription management for real-time on-chain event
      notifications.
paths:
  /v1/evm/transactions/{address}:
    get:
      tags:
        - evm
        - transactions
      summary: Get EVM transactions
      description: Get transactions for a given EVM address
      operationId: getEvmTransactions
      parameters:
        - name: address
          in: path
          description: EVM wallet address
          required: true
          schema:
            type: string
            format: address
            pattern: ^0x[a-fA-F0-9]{40}$
            default: '0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045'
          example: '0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045'
        - name: chain_ids
          in: query
          description: >-
            Filter by chain(s). Accepts numeric chain IDs and/or tags. Provide a
            single value (e.g. `?chain_ids=1` or `?chain_ids=mainnet`) or a
            comma-separated list (e.g. `?chain_ids=1,8543,testnet`). Chain names
            are not accepted. If this query parameter is omitted, results
            include transactions from chains with the `default` tag. See the
            [Supported Chains Tags](/evm/supported-chains#tags) section.
          required: false
          schema:
            type: string
        - name: limit
          in: query
          description: >-
            Maximum number of results to return. Default is 100 when not
            provided. Values above 100 are reduced to 100.
          required: false
          schema:
            type: integer
            format: int64
            minimum: 1
            maximum: 100
            default: 100
        - name: offset
          in: query
          description: >-
            The offset to paginate through result sets. This is a cursor being
            passed from the previous response, only use what the backend returns
            here.
          required: false
          schema:
            type: string
        - name: decode
          in: query
          description: >-
            When true, it includes decoded transaction logs in the response.
            Accepts only boolean values true or false. You can also omit this
            parameter to disable decoding. Invalid values will return an error.
          required: false
          schema:
            type: boolean
          example: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TransactionsResponse'
              examples:
                success:
                  summary: Successful response
                  value:
                    transactions:
                      - address: '0x7532cd0651030d3dc80b28199a125fc9f5ac80fa'
                        block_hash: >-
                          0x745bdf699cee1fef27b9304be43a2435c744500ef455cc6b7dfb4c34417601a2
                        block_number: '30819446'
                        block_time: '2025-05-28T10:30:39Z'
                        chain: base
                        from: '0x7532cd0651030d3dc80b28199a125fc9f5ac80fa'
                        to: '0x6ff5693b99212da76ad316178a184ab56d299b43'
                        data: >-
                          0x3593564c000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000006836ecce000000000000000000000000000000000000000000000000000000000000000308060c000000000000000000000000000000000000000000000000000000000000
                        gas_price: '0x5aaa88'
                        hash: >-
                          0x1081ebf623669338e9de6865d08d7ff3a3d1b0ef6f6486b350c3caf5b2e9257d
                        index: '35'
                        nonce: '0x8'
                        transaction_type: '0x2'
                        value: '0x0'
                        decoded:
                          name: execute
                          inputs:
                            - name: _commands
                              type: bytes
                              value: '0x08060c'
                            - name: _inputs
                              type: bytes[]
                              value:
                                - >-
                                  0x000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000186a0
                            - name: _deadline
                              type: uint256
                              value: '1748430030'
                        logs:
                          - address: '0x833589fcd6edb6e08f4c7c32d4f71b54bda02913'
                            data: >-
                              0x00000000000000000000000000000000000000000000000000000000000186a0
                            topics:
                              - >-
                                0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef
                              - >-
                                0x0000000000000000000000007532cd0651030d3dc80b28199a125fc9f5ac80fa
                              - >-
                                0x00000000000000000000000088a43bbdf9d098eec7bceda4e2494615dfd9bb9c
                            decoded:
                              name: Transfer
                              inputs:
                                - name: sender
                                  type: address
                                  value: '0x7532cd0651030d3dc80b28199a125fc9f5ac80fa'
                                - name: to
                                  type: address
                                  value: '0x88a43bbdf9d098eec7bceda4e2494615dfd9bb9c'
                                - name: value
                                  type: uint256
                                  value: '100000'
                    next_offset: QBHrUqbdBQDkBwAAAAAAACHjyAAAAAAAAAAAAAAAAAACAAAAAAAAAA
                    request_time: '2025-05-28T10:31:56Z'
                    response_time: '2025-05-28T10:31:56Z'
                    wallet_address: '0x7532cd0651030d3dc80b28199a125fc9f5ac80fa'
                with_warnings:
                  summary: Response with unsupported chain IDs warning
                  value:
                    transactions:
                      - address: '0x37305b1cd40574e4c5ce33f8e8306be057fd7341'
                        block_hash: >-
                          0x745bdf699cee1fef27b9304be43a2435c744500ef455cc6b7dfb4c34417601a2
                        block_number: '30819446'
                        block_time: '2025-05-28T10:30:39Z'
                        chain: ethereum
                        from: '0x37305b1cd40574e4c5ce33f8e8306be057fd7341'
                        to: '0x6ff5693b99212da76ad316178a184ab56d299b43'
                        data: 0x
                        gas_price: '0x5aaa88'
                        hash: >-
                          0x1081ebf623669338e9de6865d08d7ff3a3d1b0ef6f6486b350c3caf5b2e9257d
                        index: '35'
                        nonce: '0x8'
                        transaction_type: '0x2'
                        value: '0x0'
                        logs: []
                    warnings:
                      - code: UNSUPPORTED_CHAIN_IDS
                        message: >-
                          Some requested chain_ids are not supported.
                          Transactions are returned only for supported chains.
                        chain_ids:
                          - 9999
                          - 77777777777
                        docs_url: https://docs.sim.dune.com/evm/supported-chains
                    next_offset: QBHrUqbdBQDkBwAAAAAAACHjyAAAAAAAAAAAAAAAAAACAAAAAAAAAA
                    request_time: '2025-12-16T10:31:56Z'
                    response_time: '2025-12-16T10:31:56Z'
                    wallet_address: '0x37305b1cd40574e4c5ce33f8e8306be057fd7341'
        '400':
          description: >-
            Bad Request - Invalid wallet address, invalid query parameter, or
            unknown sort/filter property.
          content:
            text/plain:
              schema:
                type: string
              examples:
                invalidAddress:
                  summary: Invalid address format
                  value: >-
                    invalid length 39, expected a (both 0x-prefixed or not) hex
                    string or byte array containing 20 bytes
        '401':
          description: Unauthorized - Invalid or missing API key.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GatewayErrorResponse'
              examples:
                invalidApiKey:
                  value:
                    error: invalid API Key
        '429':
          description: Rate Limit Exceeded - Too many requests.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GatewayErrorResponse'
              examples:
                rateLimitExceeded:
                  value:
                    error: >-
                      Too many requests. Please contact sales@dune.com to
                      increase your limit.
        '500':
          description: Internal Server Error.
          content:
            text/plain:
              schema:
                type: string
              examples:
                internalError:
                  summary: Internal server error
                  value: Internal server error
components:
  schemas:
    TransactionsResponse:
      type: object
      required:
        - wallet_address
        - transactions
      properties:
        transactions:
          type: array
          items:
            $ref: '#/components/schemas/Transaction'
        errors:
          allOf:
            - $ref: '#/components/schemas/TransactionErrors'
        warnings:
          type: array
          items:
            $ref: '#/components/schemas/Warning'
          description: >-
            Array of warnings that occurred during request processing. Warnings
            indicate non-fatal issues (e.g., unsupported chain IDs) where the
            request can still be partially fulfilled.
        next_offset:
          type: string
        request_time:
          type: string
        response_time:
          type: string
        wallet_address:
          type: string
          example: '0xd8da6bf26964af9d7eed9e03e53415d37aa96045'
    GatewayErrorResponse:
      type: object
      description: >-
        Error response from the API gateway. Returned for authentication,
        permissions, rate-limiting, and quota errors.
      properties:
        error:
          type: string
          description: Error message.
      required:
        - error
    Transaction:
      type: object
      required:
        - address
        - block_hash
        - block_number
        - block_time
        - chain
        - from
        - hash
      properties:
        address:
          type: string
          description: Wallet or ERC20 contract address
        block_hash:
          type: string
          description: Unique cryptographic block identifier
        block_number:
          type: string
          description: Block's sequential index
        block_time:
          type: string
          description: Timestamp of block creation
        block_version:
          type: integer
          description: Block's protocol iteration
        chain:
          type: string
          description: Name of the blockchain
        from:
          type: string
          description: Address of sender
        to:
          type: string
          description: Address of receiver
        data:
          type: string
          description: Data of transaction
        gas_price:
          type: string
          description: Gas price of transaction as hexadecimal string
        hash:
          type: string
          description: Hash of transaction
        index:
          type: string
          description: Index of transaction
        max_fee_per_gas:
          type: string
          description: Max fee per gas of transaction as hexadecimal string
        max_priority_fee_per_gas:
          type: string
          description: Max priority fee per gas of transaction as hexadecimal string
        nonce:
          type: string
          description: Nonce of transaction as hexadecimal string
        transaction_type:
          type: string
          description: Type of transaction
        value:
          type: string
          description: Value of transaction as hexadecimal string
        decoded:
          type: object
          description: >-
            Present only when decode=true and a matching ABI signature is found
            on Dune.com for the transaction's call data.
          properties:
            name:
              type: string
              description: Decoded function name
            inputs:
              type: array
              items:
                $ref: '#/components/schemas/DecodedInput'
        logs:
          type: array
          description: >-
            Raw EVM logs for this transaction. When decoding is enabled via the
            decode query parameter, individual log entries may include a decoded
            object.
          items:
            $ref: '#/components/schemas/TransactionLog'
    TransactionErrors:
      type: object
      properties:
        error_message:
          type: string
        transaction_errors:
          type: array
          items:
            $ref: '#/components/schemas/TransactionErrorInformation'
    Warning:
      type: object
      required:
        - code
        - message
      properties:
        code:
          type: string
          description: Warning code identifier (e.g., 'UNSUPPORTED_CHAIN_IDS')
          example: UNSUPPORTED_CHAIN_IDS
        message:
          type: string
          description: Human-readable warning message
          example: >-
            Some requested chain_ids are not supported. Activity is returned
            only for supported chains.
        chain_ids:
          type: array
          items:
            type: integer
            format: int64
          description: >-
            List of chain IDs that triggered this warning (for chain-related
            warnings)
        docs_url:
          type: string
          description: URL to documentation with more information about the warning
          example: https://docs.sim.dune.com/evm/supported-chains
    DecodedInput:
      type: object
      properties:
        name:
          type: string
        type:
          type: string
        value:
          description: >-
            Decoded parameter value. Scalar values are strings; array-type ABI
            parameters (e.g. bytes[], address[]) are arrays of strings.
          oneOf:
            - type: string
            - type: array
              items:
                type: string
    TransactionLog:
      type: object
      properties:
        address:
          type: string
          description: Contract address that emitted the log
        data:
          type: string
          description: Hex-encoded log data
        topics:
          type: array
          description: Array of 0x-prefixed topic hashes
          items:
            type: string
        decoded:
          type: object
          description: >-
            Present only when decode=true and a matching ABI signature is found
            for this log.
          properties:
            name:
              type: string
              description: Decoded event name
            inputs:
              type: array
              items:
                $ref: '#/components/schemas/DecodedInput'
    TransactionErrorInformation:
      type: object
      required:
        - chain_id
        - address
      properties:
        address:
          type: string
        chain_id:
          type: integer
          format: int64
        description:
          type: string
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: X-Sim-Api-Key
      description: >-
        API key for authentication. Obtain your key from the Dune dashboard at
        sim.dune.com.

````