Gelato Relay allows for partial sponsoring of gas based on certain conditions with developer-defined rules! For example, an app could sponsor user's gas based on a certain NFT being present in their wallet, or perhaps the NFT allows the user to have 10 gasless transactions a day. As a sponsor, you will able to customize with Gelato Relay's sponsor dashboard, coming soon™.
Sponsoring all of your user's gas:
Gelato handles user signature verification: go ahead and use sponsoredCallERC2771 where Gelato handles user signature verification for you. In this method, you can use ERC-2771's _msgSender() to validate your relay calls on-chain. This will require an upgrade to your target contract for ERC2771Context support, if it does not support it already.
You handle user signature verification: If your app workflow already handles its security in-house (i.e. use of user signatures, replay/reentrancy protection etc.) andyou do want to sponsor all of your user's gas, you are ready to use Gelato Relay without any change to your existing smart contract logic. This will be using the sponsoredCall method.