Spock Analytics
  • Introduction
  • The Spock Thesis
  • Spock Analytics
    • Explore: The Data Warehouse for DApps
    • Probe: Strategic Data Reports
    • Engage: Improve User Conversion and Retention
  • Spock API
    • Build Custom Campaigns Using On-chain Data
    • Decipher Web3 Wallets Landscape
  • Guides
    • Maximize NFT Lending: Strategies For NFTFi DApps
    • 10x NFT Borrower Engagement: Strategies For NFTFi DApps
    • Offer Gas Refunds to Newly Converted Users
    • Boost Your Liquidity Providers Conversion Rate
    • Increase Transaction Submissions by 15% Using Probe
  • Configuration
    • Onboarding
    • Contracts
    • SDK
      • API Reference
      • Supporting Wallets
      • NPM Package
      • Example Application
      • SDK Code
    • Adapter
      • Transformers
      • TVL Extractors
      • How to code an adapter?
      • Functions we have written so you don't have to
        • Multicall
        • Sum Balances
      • GitHub repo
  • Pricing
    • Explore & Probe
    • Engage
    • Pricing Calculations & FAQs
  • Data Catalog
    • Wallet
    • Global
    • This Protocol
    • Session
    • Other Protocols
    • Transaction
Powered by GitBook
On this page
  • Let's explore some common scenarios related to the structure of smart contracts.
  • Case #1
  • Single Instance Contract
  • Case #2
  • Several Contracts Deployed By An EOA
  • Case #3
  • Several Contracts Deployed By A Factory
  1. Configuration

Contracts

Smart contract configuration is the easiest way to set up your analytics at Spock.

PreviousOnboardingNextSDK

Last updated 1 year ago

You just need to provide smart contract details, and Spock will start syncing the data. The data syncing time can vary depending on the number of wallets that have interacted with the contracts, the number of transactions, and the age of the contracts.

By providing smart contract addresses, you will unlock the majority of data points in Understand section, which includes:

Let's explore some common scenarios related to the structure of smart contracts.

Case #1

Single Instance Contract

If there is one contract that handles all the transactions, then just provide the contract address and ABI. You can leave the ABI field blank if the contract is already verified on Etherscan.

Example : Consider an example of the contract which handles all stake, un-stake, and reward redemption transactions.

Case #2

Several Contracts Deployed By An EOA

Case #3

Several Contracts Deployed By A Factory

If the provided smart contract address is deployed by a factory contract, then you need to toggle the "several contracts deployed by a factory" field to "Yes". This allows us to retrieve the factory contract address, and other sibling contract addresses associated, and extract the data for the entire ecosystem.

If there are multiple smart contract addresses associated with the same given ABI deployed by an EOA, you need to toggle the "several contracts deployed by an EOA" option to "Yes". This will prompt you to provide additional contract addresses as input separated by commas. Example: Let's consider an example of the market contract. In this case, we have multiple market contract addresses that correspond to the same cDAI ABI.

Example : Let's consider the example of the pool contract. By toggling the "several contracts deployed by a factory" field to "Yes", you will be able to retrieve data for all Uniswap v3 pools.

Compound cDAI
Uniswap v3 USDC/ETH
Unipilot Staking