My understanding based off reading the Solidity code is that all Safe wallets are Proxies that are pointing to Singleton implementation contracts.
Is there an easier off-chain way to check whether an address is a Safe Wallet aside from: match Proxy bytecode + check Singleton address?
I have found the API (https://safe-transaction-mainnet.safe.global/) and the call "/v1/safes/{address}" which seems to work when I test run it. What are the limitations of the API in that regard? Is it a reasonable solution for off-chain needs?
Furthermore, what are rate limits / restrictions on these APIs?