मुख्य सामग्री पर जाएं
generateJWT endpoint एकल User Profile के लिए सोशल नेटवर्क लिंकिंग URL उत्पन्न करता है। अधिक विवरण के लिए Business Plan and Launch Plan API integration देखें।

प्रोफ़ाइल स्विच करना

विभिन्न प्रोफ़ाइल सत्रों के बीच स्विच करने के लिए (उदाहरण के लिए, कई प्रोफ़ाइल के साथ परीक्षण करते समय), आपको पहले वर्तमान प्रोफ़ाइल को लॉग आउट करना होगा। प्रोफ़ाइल स्विचिंग को सही ढंग से संभालने के तरीके पर निर्देशों के लिए Automatic Logout of a Profile Session देखें।

Private Key और Profile Key

Private Key कहाँ से प्राप्त करें

Private Key फ़ाइल (private.key) और एक सैंपल Postman JSON फ़ाइल आपके Integration Package के साथ शामिल है, जो onboarding के दौरान प्राप्त होता है। Integration Package को Ayrshare डेवलपर डैशबोर्ड में API पृष्ठ -> Integration Package में भी प्राप्त किया जा सकता है।

Private Key का उपयोग

हम अनुशंसा करते हैं कि Private Key private.key को एक फ़ाइल से पढ़ें और इसे privateKey फ़ील्ड में स्ट्रिंग के रूप में भेजें, जो आपको newlines सहित सभी वर्णों को संरक्षित करने की अनुमति देता है। Private Key सटीक होनी चाहिए, अर्थात newlines सहित सभी वर्णों को संरक्षित रखना चाहिए। यदि आप कुंजी को अपने कोड में पेस्ट करते हैं, तो आपको newlines को मैन्युअल रूप से \n वर्ण से बदलना पड़ सकता है या स्ट्रिंग को URL एन्कोड करना पड़ सकता है। कुंजी को सीधे कोड में पेस्ट करने से अक्सर समस्याएँ होती हैं।

JSON Web Token उत्पन्न करें

JSON Web Token (JWT) उत्पन्न करने का तरीका समझाने वाला 1 मिनट का वीडियो:
JWT URL 5 मिनट के लिए मान्य है। 5 मिनट के बाद आपको एक नया JWT URL उत्पन्न करना होगा। अतिरिक्त विकल्पों के लिए Max Pack expiresIn देखें।

JWT URL खोलना

JWT URL को एक नए ब्राउज़र टैब, ब्राउज़र विंडो, या iOS पर View Controller में खोलें। आप नई विंडो या टैब के बंद करने या पुनर्निर्देशन को नियंत्रित कर सकते हैं।
सोशल नेटवर्क URL को iFrame में खोलने या approved partner origin domain profile.ayrshare.com को अस्पष्ट करने की अनुमति नहीं देते हैं।

JWT URL सत्यापित करें

generateJWT एंडपॉइंट डिफ़ॉल्ट रूप से लौटाए गए JWT URL को सत्यापित नहीं करता है। उदाहरण के लिए, यदि एक भ्रष्ट Private Key generateJWT में पास की जाती है, तो एक URL अभी भी लौटाया जाएगा और URL 401 एरर देगा। आप generateJWT बॉडी पैरामीटर में verify: true शामिल करके लौटाए गए JWT URL को सत्यापित कर सकते हैं। यदि JWT URL को सत्यापित नहीं किया जा सकता है तो एक त्रुटि लौटाई जाएगी। उदाहरण के लिए, यदि Private Key से एक वर्ण हटा दिया गया है तो निम्नलिखित लौटाया जाएगा:
JWT Error
हम केवल गैर-प्रोडक्शन वातावरण में verify: true का उपयोग करने की अनुशंसा करते हैं क्योंकि सत्यापन में अतिरिक्त प्रोसेसिंग समय लगता है।

Postman में परीक्षण

पहले Postman में JWT URL निर्माण का परीक्षण करना अनुशंसित है। Integration Package में, जो डैशबोर्ड के Primary Profile API Key पृष्ठ पर पाया जाता है, एक नमूना Postman config JSON फ़ाइल शामिल है जिसमें JWT URL निर्माण को सत्यापित करने के लिए आवश्यक सब कुछ शामिल है। बस config फ़ाइल को Postman में इम्पोर्ट करें, profileKey body फ़ील्ड में अपनी Profile Key (Ayrshare डेवलपर डैशबोर्ड में उस प्रोफ़ाइल पर स्विच करके जिसका आप परीक्षण करना चाहते हैं) भरें, और नीले Send बटन पर क्लिक करें। अन्य सभी आवश्यक फ़ील्ड पहले से भरे हुए हैं। आप Postman से कोड भी उत्पन्न कर सकते हैं, या किसी निर्देशिका या डेटाबेस से कुंजी फ़ाइल पढ़ सकते हैं।

Instagram लिंक विधि

Instagram अकाउंट दो तरीकों से लिंक किए जा सकते हैं: सीधे Instagram Login के साथ, या connected Facebook Page के माध्यम से। जब कोई उपयोगकर्ता सोशल लिंकिंग पृष्ठ पर Instagram बटन क्लिक करता है तो कौन सा फ्लो शुरू होता है, यह सामान्य रूप से डैशबोर्ड में अकाउंट-वाइड Instagram Login सेटिंग द्वारा नियंत्रित होता है। generateJWT endpoint का instagramLinkMethod बॉडी पैरामीटर आपको एकल लिंकिंग URL के लिए उस सेटिंग को ओवरराइड करने देता है: उदाहरण के लिए, यदि आपका अकाउंट डिफ़ॉल्ट Facebook Page लिंकिंग है, तो निम्नलिखित केवल इस लिंकिंग सत्र के लिए सीधे Instagram Login को बाध्य करता है:
Instagram Link Method
उत्पन्न JWT URL में ओवरराइड शामिल होगा, और लिंकिंग पृष्ठ पर Instagram बटन क्लिक करने से उस सत्र की अवधि के लिए अनुरोधित फ्लो शुरू हो जाएगा — Instagram/Facebook प्राधिकरण पुनर्निर्देशन के दौरान भी। कुछ बातें जानने योग्य हैं:
  • ओवरराइड केवल लौटाए गए URL से खोले गए लिंकिंग पृष्ठ पर लागू होता है। यह आपकी अकाउंट-वाइड Instagram Login सेटिंग को नहीं बदलता है और न ही अन्य लिंकिंग सत्रों को प्रभावित करता है।
  • यदि instagramLinkMethod को छोड़ दिया जाता है, तो लिंकिंग पृष्ठ आपकी अकाउंट-वाइड सेटिंग का उपयोग करता है, बिल्कुल पहले जैसा।
  • यदि एक अमान्य मान भेजा जाता है, तो मान्य मानों (instagram, facebook) को सूचीबद्ध करते हुए एक 400 त्रुटि लौटाई जाती है।
  • ओवरराइड चुनने से पहले दो फ्लो के बीच फ़ीचर अंतर की समीक्षा करें — कुछ Instagram फ़ीचर, जैसे हैशटैग खोज और सहयोग, केवल Facebook Page प्रमाणीकरण के साथ उपलब्ध हैं।

JWT Expires In

यदि आप डिफ़ॉल्ट 5 मिनट से अधिक JWT टाइमआउट चाहते हैं, तो expiresIn फ़ील्ड शामिल करें। उदाहरण के लिए, JWT URL को 30 मिनट के लिए मान्य सेट करने के लिए निम्नलिखित JSON भेजें:
JWT Expires In
यह आपको अपने उपयोगकर्ताओं को लिंक ईमेल करने की अनुमति देता है, बजाय उनके आपके ऐप या प्लेटफ़ॉर्म पर जाने के। एक सामान्य उपयोग-मामला यह है कि जब आपके उपयोगकर्ता को सोशल अकाउंट को फिर से कनेक्ट करने की आवश्यकता होती है, तो आप उन्हें अपने प्लेटफ़ॉर्म पर नेविगेट करने के बजाय सोशल अकाउंट को सीधे फिर से लिंक करने के लिए JWT लिंक ईमेल कर सकते हैं।
अपनी सुरक्षा टीम के साथ समीक्षा करें कि आपका व्यवसाय JWT को कितने समय तक जीवित रखना चाहता है। लंबे expire समय एक अनधिकृत पक्ष द्वारा लिंक तक पहुँच बनाने का अतिरिक्त जोखिम पैदा करते हैं।

एकीकरण

Bubble.io JWT

यदि आप Bubble उपयोगकर्ता हैं, तो निर्देशों के लिए Bubble.io अनुभाग में Generate JWT Token देखें:

Bubble Generate JWT

Mobile JWT

निम्नलिखित Swift, Flutter, और React Native मोबाइल कोड उदाहरण दिखाते हैं कि iOS डिवाइस पर सोशल लिंकिंग पृष्ठ कैसे लॉन्च करें। jwtURL String वेरिएबल को /generateJWT endpoint से मिलने वाले रिटर्न से बदलें।

Swift (iOS)

Swift में, UIViewController और SFSafariViewControllerDelegate का उपयोग करें। हम WebView के उपयोग की अनुशंसा नहीं करते क्योंकि Facebook और Google जैसे कुछ सोशल नेटवर्क प्रमाणीकरण को ब्लॉक करते हैं।

Flutter (Dart)

Flutter (Dart) में, UIViewController या SFSafariViewController का कोई सीधा समकक्ष नहीं है। हालाँकि, आप वेब URL खोलने के लिए url_launcher पैकेज का उपयोग करके समान कार्यक्षमता प्राप्त कर सकते हैं।

React Native

React Native में भी SFSafariViewController का कोई सीधा समकक्ष नहीं है, लेकिन आप expo-web-browser द्वारा प्रदान किए गए WebBrowser API के साथ समान परिणाम प्राप्त कर सकते हैं, जो सिस्टम ब्राउज़र के साथ कुकीज़ साझा करने वाली एक मॉडल ब्राउज़र विंडो में URL खोलता है। अन्यथा, आप Safari खोलने के लिए बिल्ट-इन React Native Linking फ़ंक्शन का उपयोग कर सकते हैं: await Linking.canOpenURL(jwtURL);

मोबाइल कोड उदाहरण

Connect Accounts Email

लंबे expire समय विकल्प के साथ, आप Ayrshare को अपने उपयोगकर्ताओं को सोशल लिंकेज पृष्ठ का लिंक ईमेल करवा भी सकते हैं।

Connect Accounts JSON

उदाहरण के लिए निम्नलिखित JSON john@user.com पर ACME कंपनी नाम, संपर्क ईमेल support@mycompany.com, और terms और privacy policy के लिंक के साथ एक ईमेल भेजेगा:
Example Contact Email Request
यदि ईमेल और expire समय सेट किया गया था तो प्रतिक्रिया में निम्नलिखित शामिल होगा:
Example Contact Email Response

JWT Connect Accounts Email उदाहरण

यहाँ Connect Account लिंक के साथ एक ईमेल का उदाहरण है जो सोशल लिंकेज पृष्ठ खोलता है: JWT Email ईमेल इस पते से आएगा: Social Connect Hub <connect@socialconnecthub.com>