Skip to main content
Safe{Wallet} Tenderly Simulation API से transactions simulate करता है। Built-in simulation Safe Pro का हिस्सा है। अन्य Safe प्लान पर, Safe Shield में Transaction simulation check परिणाम के बजाय Set लिंक दिखाता है, और queued transactions Set up simulation दिखाते हैं। किसी भी Safe प्लान पर simulate करने के लिए, Safe की Environment variables settings में अपना Tenderly प्रोजेक्ट जोड़ें। इसके बाद Safe हर simulation request आपके प्रोजेक्ट को भेजता है, और हर simulation अपने पूरे call trace के साथ वहाँ सेव होता है।
API access tokens उत्पन्न करना और Tenderly API का उपयोग करना paid प्लान पर उपलब्ध है। अपने अकाउंट के लिए इन्हें सक्षम करने के लिए, कॉल शेड्यूल करने और अपने प्लान को अपग्रेड करने पर चर्चा करने के लिए हमारी sales टीम से संपर्क करें।

पूर्वापेक्षाएँ

  • एक Tenderly प्रोजेक्ट।
  • एक access token जिसकी प्रोजेक्ट तक पहुँच हो। Project token (One project scope) पर्याप्त है।
  • एक Safe अकाउंट जिसमें आपका connected wallet owner हो।

Tenderly API URL बनाएँ

Tenderly API URL field में /simulate path सहित पूरा Simulation API endpoint चाहिए:
Tenderly API URL
इसे बनाने के लिए, Tenderly में अपना प्रोजेक्ट खोलें, Settings पर जाएँ, Project Access Tokens के पास Copy API URL पर क्लिक करें, और कॉपी किए गए URL के अंत में simulate जोड़ें। अकाउंट my-org और प्रोजेक्ट treasury के लिए परिणाम https://api.tenderly.co/api/v1/account/my-org/project/treasury/simulate है।
Copy API URL base project URL कॉपी करता है, जो /project/{project_slug}/ पर खत्म होता है। Safe request ठीक उसी URL पर भेजता है जो आप दर्ज करते हैं, इसलिए simulate के बिना base URL से हर simulation fail होता है।

Safe{Wallet} settings में अपना Tenderly प्रोजेक्ट जोड़ें

  1. Safe{Wallet} में Settings खोलें और Environment variables टैब चुनें। Set और Set up simulation लिंक भी यही पेज खोलते हैं।
  2. Tenderly के अंतर्गत, पिछले सेक्शन का URL Tenderly API URL में पेस्ट करें।
  3. अपना access token Tenderly access token में पेस्ट करें।
  4. Save पर क्लिक करें। Safe पेज reload करता है और settings लागू करता है।
Safe{Wallet} Environment variables settings: /simulate पर खत्म होने वाला Tenderly API URL और छिपा हुआ access token

Safe{Wallet} Environment variables में Tenderly API URL और access token

दोनों fields भरें। Safe आपके प्रोजेक्ट का उपयोग तभी करता है जब URL और access token दोनों सेट हों। Safe ये values आपके browser के local storage में रखता है। ये उस browser में खोले गए हर Safe और network पर लागू होती हैं, इसलिए जिस भी browser का आप उपयोग करते हैं उसमें setup दोहराएँ। Defaults पर लौटने के लिए, हर field में reset icon पर क्लिक करें और फिर Save पर क्लिक करें।

Safe transaction simulation चलाएँ

  1. Safe{Wallet} में New transaction पर क्लिक करें, transaction सेट करें, और Next पर क्लिक करें। Confirm transaction स्क्रीन दाईं ओर Safe Shield पैनल के साथ खुलती है।
  2. Transaction simulation के पास Run पर क्लिक करें।
  3. Check Simulation successful या Simulation failed में बदल जाता है। अपने Tenderly प्रोजेक्ट में simulation खोलने के लिए View पर क्लिक करें।
Safe{Wallet} की Confirm transaction स्क्रीन, जिसमें Safe Shield Simulation successful और View लिंक दिखाता है

सफल simulation और View लिंक के साथ Safe Shield

पहले से queued transaction को simulate करने के लिए, Transactions खोलें, Queue टैब में transaction expand करें, और Simulate पर क्लिक करें। View लिंक https://dashboard.tenderly.co/{account_slug}/{project_slug}/simulator/{simulation_id} खोलता है, जहाँ आप simulated execTransaction call का call trace, state changes और events देख सकते हैं।

Safe Simulation API को क्या भेजता है

Safe, X-Access-Key header में access token के साथ Tenderly API URL पर POST request भेजता है। Request body, Safe के execTransaction call (या batches के लिए multiSend call) का single simulation है, इन settings के साथ:

समस्या निवारण: Error while simulating

जब Simulation API error लौटाता है, तो Safe transaction queue में Error while simulating और Safe Shield में Simulation failed दिखाता है, error details के बिना। असली response देखने के लिए:
  1. अपने browser के developer tools खोलें और Network टैब चुनें।
  2. Simulation फिर से चलाएँ।
  3. api.tenderly.co को भेजा गया request चुनें और उसका status code और response body पढ़ें।
अगर कोई request api.tenderly.co तक नहीं पहुँचता, तो जाँचें कि दोनों fields सेव हैं: जब तक URL और access token दोनों सेट नहीं होते, Safe Set लिंक दिखाता है।