Changelog
- Added
AuthProvider.Steam
as a login option for In-App or Ecosystem Wallets.
- Added the ability to pay for gas with ERC20 tokens when using Smart Wallet.
- Currently supports Base USDC, Celo CUSD, and Lisk LSK tokens.
- Simply select a
TokenPaymaster
when creating aSmartWallet
and all transactions will be paid for with the corresponding ERC20 from the user's Smart Wallet. - Useful on L2s where the native token is ETH and you want to enshrine another coin or onramp your users directly to that coin.
- These TokenPaymasters entirely operate onchain, leveraging popular DEXes and decentralized price feeds from Uniswap & Chainlink.
- This product is in beta, and only compatible with EntryPoint v0.7.0, which we auto select for you if not overriden when configurin your wallet.
We supported pregeneration for enclave wallets a while back.
Today, wallet pregeneration is available for in-app wallets too!
What does this mean?
This means that you can now know the in-app wallet address of a user before they register on your platform!
This allows you to perform airdrop, pre-load certain assets, and more!
The API is the same as ecosystem wallets except we don't have to include the ecosystem details:
On top of that, we also now support pregeneration via custom IDs. This means that you can know your user's address ahead of time even if you use a custom authentication methods like JWT or an auth endpoint.
Here's what that would look like:
For more information and background on what pregeneration is all about, check out the newly updated documentation here.
We're excited to announce that thirdweb Insight has expanded its blockchain data querying capabilities with support for six new chains:
- Donatuz
- Avalanche
- Soneium Minato
- Fhenix- Helium
- Ape Chain
What This Means For Developers
With these additions, you can now use all of Insight's powerful features across these new chains:
- Query on-chain events with the Events Blueprint
- Track transactions with the Transactions Blueprint
- Monitor token balances (ERC-20, ERC-721, ERC-1155) with the Tokens Blueprint
For example, to query Avalanche data:
Use Cases
These new chain additions enable various use cases across different sectors:
- DeFi
- Track token movements and trading volume across new DeFi ecosystems
- Monitor liquidity pools and DEX activity
- Analyze cross-chain token economics
- Gaming
- Track in-game assets and NFTs on gaming-focused chains
- Monitor player rewards and achievements
- Analyze gaming economy metrics
- NFTs
- Track NFT collections and transfers across new marketplaces
- Monitor NFT trading activity and ownership
- Analyze collection performance metrics
View All Supported Chains
For a complete list of supported chains and their respective chain IDs, check the [thirdweb chainlist](https://thirdweb.com/chainlist?service=insight).
As of v5.69.0, we've added Steam as an authentication option in our TypeScript SDK for all the games and game enjoyooors out there. You can setup Steam auth just like any other authentication method.
New chains: Etherlink, Etherlink Testnet, Lisk Mainnet, Zero Mainnet, Cronos zkEVM Testnet, Cronos zkEVM
We've added new chains to the platform this week!
Every chain comes out of the box with SDK support RPC, Engine and Account Abstraction capabilities. All you need is the chain id to get going.
For testnets, you'll also find a faucet in each chain page.
Happy building! 🛠️
- Fixed an issue with typed data signing using In-App/Ecosystem Wallets when one of the fields was larger than Uint32.
- Improved NFT Metadata Population & Added Filters
- The
ERC1155_GetOwnedNFTs
extension now returns theQuantityOwned
metadata field correctly for each NFT. - The
ERC721_GetNFT
andERC721_GetAllNFTs
extensions can now take in a newfillOwner
parameter that defaults to true and decides whether to make additional requests to populate theOwner
field of the metadata, otherwise defaulting toConstants.ADDRESS_ZERO
. - The
ERC1155_GetNFT
andERC1155_GetAllNFTs
extensions can now take in a newfillSupply
parameter that defaults to true and decides whether to make additional requests to populate theSupply
field of the metadata, otherwise defaulting toBigInteger.MinusOne
.
- The
With the introduction of modular contracts, we are improving the contract management experience on our dashboard to accompany this new development paradigm.
A modular contract has a core contract and module contracts that compose the entire modular contract. With this development in mind, we want to encourage users to add and remove modules with direct support on dashboard.
The following pre-built modules now have special component support on dashboard to enable users to interact with these modules without depending on the Contract Explorer or SDK.
- Transferable
- Royalty
- OpenEdition
- BatchMetadata
To check out these changes, deploy a modular contract on dashboard or view your existing contracts with the aforementioned modules installed.
More module UIs will be released in the coming weeks for the remaining modules- stay tuned. We'd love to hear your feedback on these new changes!
We've made yet another improvement to our dashboard analytics, adding both a project and team-based analytics overview page. Now, you can browse analytics for:
- Weekly and daily active Users
- All-time users
- New users by week or day
- Returning users by week or day
- Distribution of wallets connected
- Total wallets connected
- Distribution of in-app wallet sign-in methods
- Total in-app wallet logins
- Total gas sponsored for your users over time
- ...and more
But there's a catch! You can't see these analytics until you've connected the thirdweb SDK to your app. So start building and your charts can look as amazing as these. 🫡
New chains: Metis Sepolia, Metis Andromeda, Donatuz Testnet, Zero Sepolia, Blast Mainnet, Pivotal Sepolia, Skopje Testnet, GPT, Superseed & Geist
We've added new chains to the platform this week!
Every chain comes out of the box with SDK support RPC, Engine and Account Abstraction capabilities. All you need is the chain id to get going.
For testnets, you'll also find a faucet in each chain page.
Happy building! 🛠️
We've previously sped up in app wallet authentication.
Today, we've dramatically improved our in-app wallet generation speeds. It's now around 40% faster!
In app wallets now get to benefit from the updated security model that ecosystem wallets enjoy.
In particular, we've moved to an enclave model allowing for verifiable code execution. This way, you'll know exactly what the private keys are being used for at all times.
This sets us up to use in app wallets in places where we couldn't before. Think CLIs, backend float wallets, etc.
Migration for existing users on the sharded model happens automatically and requires no work on your end.
We've written a more in depth security overview of the new model here.
To enjoy all the latest goodies, simply update to the latest thirdweb SDK version 5.67.0
!
We are introducing a massive change to thirdweb dashboard with a focus on Teams and Projects
By default all your API keys are converted to projects under a single team as shown below
You can click on your project to view analytics, configure thirdweb services and manage settings.
You can quickly switch between teams and projects directly from dashboard header
Manage your team's general settings, team members, billing, gas credits and notification alerts in team settings dashboard
We now have an entire dashboard dedicated to Account management. You can manage your teams, view all your contracts and manage authorized devices.
- Create multiple teams
- Invite and manage team members
- Account settings
- Link Engines and Contracts with Projects
- Link Projects to Ecosystems
- Having an incorrect or slightly off system time would produce errors when logging in with In-App Wallets in some cases, we have added a fallback in this scenario that will work around this issue.
IThirdwebWallet.Transfer
now has an optionaltokenAddress
override to transfer ERC20 tokens using said function; this is an alternative toThirdwebContract.ERC20_Transfer
.- ERC1155 transfer-related functions'
data
bytes parameter has now been made optional. - The inability to fetch
NFTMetadata
when calling an NFT-related method no longer throws, and instead returnsNFTMetadata
with a description containing the error message. - Enables custom implementation for OTP Verification Modal by @Vingator in https://github.com/thirdweb-dev/unity-sdk/pull/218
- Introduces abstract OTP verification modal so you can customize it more easily.
- Shared by In-App and Ecosystem Wallets.
Exciting new tools and refinements are here with the latest release! Track transactions effortlessly with new nodes for status and receipts, and take advantage of the Blueprint Screenshot Debug feature added directly to your Editor Toolbar. We’ve enhanced security by masking sensitive logs and streamlined configuration with a global PartnerID setting. Plus, enjoy smoother Android authentication and cleaner session key creation. These updates make for a more secure and streamlined experience, so dive in and explore what's new!
- Get Transaction Status node
- Get Transaction Receipt nodes
- Add Blueprint Screenshot Debug Functionality to Editor Toolbar as Button
- Mask sensitive strings in logging
- Migrate
PartnerID
to global configuration, removing from all nodes
- Use JSI-bound custom tabs to fix android external auth
- Formatting string on Read Contract
- Reduce inputs on
CreateSessionKey
- Per node
PartnerID
- In-App Wallets now use the same infrastructure as Ecosystem Wallets.
- Up to 90% performance increase, specially on lower end devices or web platforms.
- Much less cryptography done client side, using secure enclaves over shamir's secret sharing.
- If you were using In-App Wallets previously, they will be automatically migrated to the new infrastructure upon first login.
- If you were using custom auth with In-App Wallets before this release, you may pass your legacy encryption key during the creation of your wallet - it will be used to migrate your wallets to the new infrastructure upon first login.
- Encryption keys are no longer required for In-App Wallets when logging in with JWT (OIDC Compatible Custom Auth) or AuthEndpoint (Generic Custom Auth).
- Added
GetUserDetails
method to In-App/Ecosystem Wallets that returns more information about your logged in user.GetEmail
andGetPhoneNumber
have been deprecated in favor ofGetUserDetails
- Added
GetEcosystemDetails
method to return general information about your Ecosystem Wallet, can be used for dynamic branding, etc. - Fixes
TokenERC721_MintTo
functions failing with invalid signature; the token id parameter has also been removed.
Engine v2.1.0 introduces Smart Backend Wallets, powered by account abstraction. Key benefits include:
- No more gas management
- No need to hold crypto
- Fewer stuck transactions
- Backward-compatible interface
- One-step setup
Smart backend wallets send all transactions as user operations from a smart wallet using thirdweb's paymaster. Your wallets no longer need to hold or top-up gas funds, and thirdweb sends you a bill for your gas used.
No more top-ups also means your business no longer needs to hold crypto. This is great news for any business that must avoid holding cryptocurrency tokens for regulatory or financial reasons.
Use a smart backend wallet with an AWS KMS or GCP KMS wallet for enterprise-grade security for the signer.
While Engine v2 processes transactions very fast, some chains or nodes may throttle transactions submitted from a single backend wallet. Smart backend wallets circumvent this limitation because transactions (or "user operations") are sent from a large fleet of bundler wallet addresses.
Smart backend wallets behave like existing (EOA) backend wallets. Simply update your app's x-backend-wallet-address
header with the smart backend wallet address. All of Engine's endpoints are supported.
Engine creates an EOA signer wallet and deploys a smart account using thirdweb's battle-tested account factory, or your own.
The EOA signer wallet may be a local wallet, AWS KMS, or GCP KMS. You don't need to keep track of this wallet, Engine manages it behind the scenes.
The thirdweb account that deployed Engine (cloud-hosted) or tied to the thirdweb secret key (self-hosted) will be billed for gas usage. A valid payment method must be on file to send transactions on mainnet chains.
Smart backend wallets are enabled on all Engine tiers (Standard, Premium, Enterprise, and self-hosted) for no added cost.
User operations on testnet are free, and thirdweb charges a 10% fee for gas used on mainnet chains. See Pricing for more details.
See the list of chains that support account abstraction on thirdweb. Don't see your chain? Reach out to us!
The existing Create Backend Wallet endpoint now supports new types: smart:local
, smart:aws-kms
, and smart:gcp-kms
:
(Dashboard support coming soon.)
Now provide the backend wallet address to any Engine API that accepts a backend wallet to start using it. We can't wait to see what you build with these new capabilities!
This update represents a major step forward in making web3 infrastructure more accessible and manageable for teams. Whether you're building a game, marketplace, or DeFi app, smart backend wallets provide the foundation for scalable, secure, and efficient blockchain operations.
The benefits mentioned above address the top pain points we heard from customers, and we believe account abstraction-based wallets are the ideal solution.
Account abstraction is complex, but thirdweb (Engine, SDK, infrastructure, contracts) handles the full stack:
- Manage smart accounts
- Deploy and manage smart account factory contracts
- Initialize EntryPoint contract connections
- Handle complex account deployment logic
- Manage deterministic address computation
- Send user operations
- Build UserOperation
- Calculate gas parameters (verification gas, pre-verification gas)
- Handle signature schemes and validation
- Manage nonces across operations
- Bundler infrastructure
- Run or connect to ERC-4337 bundlers
- Handle bundler connections and failovers
- Monitor bundle status and handle failures
- Manage complex retry mechanisms
- Gas management
- Maintain gas balance
- Alert and top-up wallets
- Handle gas price fluctuations
- Manage paymaster integrations
The small team at thirdweb is on a mission to build the most intuitive and complete web3 platform. Our products empower over 70,000 developers each month including Shopify, AWS, Coinbase, Rarible, Animoca Brands, and InfiniGods.
See our open roles. We’d love to work with you!
We are excited to announce the release of Insight v0.0.6-beta! This version brings significant improvements to enhance your blockchain data analysis experience.
You can now perform aggregate functions and use GROUP BY
clauses in your queries. This enhancement allows for more sophisticated data analysis, enabling you to summarise and categorise blockchain data effectively.
We've added the ability to look up transactions based on their function signatures. This feature simplifies filtering and analysing transactions that invoke specific smart contract functions.
- Fixed an issue where bytes were incorrectly truncated from non-address topics and ensured proper handling of empty topics.
- Strip and normalise Solidity function and event signatures for consistent querying.
- Added options for Clickhouse TLS and API basic authentication to enhance security.
- Implemented a whitelist for allowed Clickhouse functions to control query executions.
- Updated Docker image tagging in the release workflow for streamlined deployments.
Minor Insight v0.0.5-beta has been released previously without receiving its own changelog, and here are the main takes from it:
- Added Clickhouse and poller settings for better configuration management.
- Implemented skipping of unmerged blocks in the reorg handler to enhance stability.
- Skipped duplicate blocks in the committer to prevent redundant data processing.
- Introduced missing block polling in the gap handler and committer to ensure data completeness.
If you encounter any issues or have suggestions, please feel free to open an issue in our GitHub repository.
Your project's dashboard just became more useful with a new set of metrics to track the growth of your apps!
Login to your account, select your project and head over to the Connect tab to see an overview of your aggregated metrics for connections, in-app wallets, account abstraction and pay. You can also dive deeper into each individual section for more detailed metrics.
This is just scratching the surface of all the insights Connect can give you about how your app is performing. Keep an eye out on your dashboards for more stats and metrics.
Happy Building! 🛠️
Our latest release introduces even more control and functionality to your workflow! With new raw contract read/write capabilities, enhanced mobile URL redirects, and automated deeplink registration on Android, you’re set up for seamless integration. Improved organization and logging, situationally-enforced external OAuth for added compatibility, and optimized async task handling all work together to keep your development smooth and efficient. Dive in to experience these enhancements and fine-tune your projects like never before!
- Generic Raw Read/Write Contract via Engine
- Mobile AppURL redirect override
- Engine Base URL + Access Token added to settings
- Automatic Deeplink registration on android devices
- GetLinkedAccounts automatically converted to data struct
- Rust Core updated
- Async Tasks grouped into folder structure
- Imports cleaned up
- Logging cleaned up to Verbose/VeryVerbose
- Enforced external auth for some OAuth providers
- .h/.cpp split out for some files
- Async Tasks now check for game thread and use weakThis refs
We just released a new version of the thirdweb Connect SDK which comes with a refreshed prebuilt UI components for executing transactions, onramping, bridging and swapping any token.
The new UI brings a simpler onramping flow showing you all your available balances up front, easy way to pay with another wallet and with a credit card.
We also upgraded the transaction flow to make it clearer for when your users don't hold enough funds in their wallets to complete a transaction.
Try it out live on the playground: https://playground.thirdweb.com/connect/pay
Happy building! 🛠️
- Upgraded base project/examples to Unity 6 and Playground from In-App to Ecosystem Wallet.
- Much faster on platforms like WebGL and lower end devices.
- Ecosystem Wallets are shareable with third parties.
- Added a
link.xml
to cover Thirdweb's .NET Core assemblies. Minimal stripping is no longer a hard requirement unless using WalletConnect as one of your wallet provider options. - Updated base project Android settings to target Min API 34 to match latest store policies.
- Upgraded EDM4U (External Dependency Manager) - contains various improvements.