Package google.digitalassetlinks.v1

इंडेक्स

स्टेटमेंट

यह एपीआई सेवा "स्टेटमेंट" उपलब्ध कराती है. इन वाहनों का इस्तेमाल ऐसेट के मालिक, अपने ऐसेट लिंक के बारे में जानकारी पब्लिश करने के लिए करते हैं. एपीआई का इस्तेमाल, आसान और सुरक्षित तरीके से स्टेटमेंट पाने के लिए किया जा सकता है. इसके लिए, सीधे सोर्स से स्टेटमेंट हासिल करने की ज़रूरत नहीं होती.

इस एपीआई से मिले सभी स्टेटमेंट, अन्य डिजिटल ऐसेट के लिए डिजिटल ऐसेट (उदाहरण के लिए, वेबसाइटों या Android ऐप्लिकेशन) की ओर से दिए गए हैं. हर स्टेटमेंट में एक सोर्स ऐसेट, टारगेट ऐसेट, और एक या एक से ज़्यादा संबंध होते हैं.

यह संबंध, दो ऐसेट के बीच के संबंध के बारे में बताता है, जिस पर सोर्स ऐसेट के ज़रिए दावा किया गया है. ऐसे संबंधों का एक उदाहरण, खास अधिकार या अनुमतियां देना है.

सूची

rpc List(ListRequest) returns (ListResponse)

तय किए गए टारगेट और स्टेटमेंट स्ट्रिंग से मेल खाने वाले सोर्स से, ऐसे सभी स्टेटमेंट की सूची हासिल करता है.

एपीआई इस बात की गारंटी देता है कि सुरक्षित सोर्स ऐसेट के सभी स्टेटमेंट, जैसे कि एचटीटीपीएस वेबसाइटें या Android ऐप्लिकेशन, ऐसेट का मालिक सुरक्षित तरीके से तैयार किए गए हैं. इस बारे में डिजिटल ऐसेट लिंक के टेक्निकल डिज़ाइन स्पेसिफ़िकेशन में बताया गया है. खास तौर पर, आपको यह ध्यान रखना चाहिए कि असुरक्षित वेबसाइटों (जहां यूआरएल, https:// के बजाय http:// से शुरू होता है) के लिए, यह गारंटी नहीं दी जा सकती.

List निर्देश उन मामलों में सबसे ज़्यादा फ़ायदेमंद होता है जब एपीआई क्लाइंट यह जानना चाहता हो कि दो ऐसेट एक-दूसरे से कैसे जुड़ी हैं या किसी खास सोर्स ऐसेट के सभी संबंधों की गिनती करनी है. उदाहरण: एक ऐसी सुविधा जिसकी मदद से उपयोगकर्ता, मिलते-जुलते आइटम पर जा सकते हैं. जब किसी डिवाइस पर मोबाइल ऐप्लिकेशन चल रहा होता है, तो इस सुविधा से संबंधित वेबसाइट या Google+ प्रोफ़ाइल पर नेविगेट करना आसान हो जाता है.

AndroidAppAsset

Android ऐप्लिकेशन ऐसेट के बारे में बताता है.

फ़ील्ड का नाम टाइप कंपनी का ब्यौरा
package_name string Android ऐप्लिकेशन ऐसेट की पहचान, उनके Java पैकेज के नाम से स्वाभाविक रूप से होती है. उदाहरण के लिए, Google Maps ऐप्लिकेशन com.google.android.apps.maps पैकेज नाम का इस्तेमाल करता है. ज़रूरी है
certificate CertificateInfo

पैकेज के नाम की खासियत को दुनिया भर में लागू नहीं किया जाता है. इसलिए, हमें साइनिंग सर्टिफ़िकेट की भी ज़रूरत होती है, जो पैकेज के नाम के साथ मिलकर किसी ऐप्लिकेशन की खास तौर पर पहचान करती है.

कुछ ऐप्लिकेशन के साइनिंग पासकोड बदल जाते हैं, इसलिए हो सकता है कि समय के साथ उन्हें अलग-अलग पासकोड से साइन किया गया हो. हम इन्हें अलग-अलग ऐसेट मानते हैं, क्योंकि हम यूनीक आईडी के तौर पर (पैकेज का नाम, सर्टिफ़िकेट) इस्तेमाल करते हैं. इससे आम तौर पर कोई समस्या नहीं होनी चाहिए, क्योंकि ऐप्लिकेशन के दोनों वर्शन एक जैसे या मिलते-जुलते स्टेटमेंट देंगे. हालांकि, किसी कुंजी को घुमाने पर, ऐप्लिकेशन के बारे में स्टेटमेंट बनाने वाली अन्य ऐसेट को अपडेट करना होगा.

(ध्यान दें कि स्टेटमेंट पब्लिश करने और क्वेरी करने के सिंटैक्स में सिंटेटिक शुगर शामिल होती है. इसकी मदद से, एक से ज़्यादा सर्टिफ़िकेट की पहचान करने वाले ऐप्लिकेशन के बारे में आसानी से बताया जा सकता है.) ज़रूरी है

CertificateInfo

X509 सर्टिफ़िकेट के बारे में बताता है.

फ़ील्ड का नाम टाइप कंपनी का ब्यौरा
sha256_fingerprint string

सर्टिफ़िकेट का अपरकेस SHA-265 फ़िंगरप्रिंट. पीईएम सर्टिफ़िकेट से, इसे इस तरह से हासिल किया जा सकता है:

$ keytool -printcert -file $CERTFILE | grep SHA256:
SHA256: 14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83: \
    42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5

या इस तरह से:

$ openssl x509 -in $CERTFILE -noout -fingerprint -sha256
SHA256 Fingerprint=14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64: \
    16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5

इस उदाहरण में, इस फ़ील्ड का कॉन्टेंट 14:6D:E9:83:C5:73: 06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF: 44:E5 होगा.

अगर ये टूल आपके लिए उपलब्ध नहीं हैं, तो PEM सर्टिफ़िकेट को DER फ़ॉर्मैट में बदला जा सकता है. इसके बाद, उस स्ट्रिंग के SHA-256 हैश की गणना करें और नतीजे को हेक्सस्ट्रिंग (यानी कि हर ऑक्टेट के अपरकेस हेक्साडेसिमल निरूपणों को कोलन से अलग करके) के रूप में दिखाएं.

ऐसेट

अलग तरीके से किसी ऐसेट की पहचान करता है.

डिजिटल ऐसेट एक ऐसी ऑनलाइन इकाई है जिसकी पहचान की जा सकती है और जिस पर ध्यान दिया जा सकता है. यह आम तौर पर, कुछ सेवा या कॉन्टेंट उपलब्ध कराती है. वेबसाइटें, Android ऐप्लिकेशन, Twitter फ़ीड, और Plus Pages, ऐसेट के उदाहरण हैं.

फ़ील्ड का नाम टाइप कंपनी का ब्यौरा
यूनियन फ़ील्ड, इनमें से सिर्फ़ एक:
web WebAsset सेट करें कि यह वेब ऐसेट है या नहीं.
android_app AndroidAppAsset सेट करें कि यह Android ऐप्लिकेशन ऐसेट है या नहीं.

CheckRequest

कोई खास ऐसेट लिंक मौजूद है या नहीं, इसकी जांच करने के लिए इस्तेमाल किया जाने वाला मैसेज.

फ़ील्ड का नाम टाइप कंपनी का ब्यौरा
source Asset स्टेटमेंट की सूची को होस्ट करने वाला सोर्स. इसका इस्तेमाल, Check() कॉल को सही सोर्स पर रूट करने के लिए किया जाता है.
relation string

संबंध के लिए क्वेरी स्ट्रिंग.

हम <kind>/<detail> फ़ॉर्मैट की स्ट्रिंग के साथ संबंधों की पहचान करते हैं. यहां <kind>, मकसद की पहले से तय कैटगरी के सेट में से एक होना चाहिए. साथ ही, <detail>, अक्षर और अंक मिलाकर एक फ़्री फ़ॉर्म स्ट्रिंग है, जो स्टेटमेंट के इस्तेमाल के खास उदाहरण के बारे में बताती है.

साथ काम करने वाले संबंधों की मौजूदा सूची के लिए, हमारा एपीआई दस्तावेज़ देखें.

किसी क्वेरी को ऐसेट के लिंक से मैच करने के लिए, क्वेरी और ऐसेट के लिंक की रिलेशन स्ट्रिंग, दोनों पूरी तरह से मैच होनी चाहिए.

उदाहरण: संबंध delegate_permission/common.handle_all_urls वाली एक क्वेरी, delegate_permission/common.handle_all_urls संबंध वाले एसेट लिंक से मेल खाती है.

target Asset स्टेटमेंट की टारगेट ऐसेट.

CheckResponse

CheckAssetLinks कॉल के लिए जवाब देने वाला मैसेज.

फ़ील्ड का नाम टाइप कंपनी का ब्यौरा
linked bool अगर अनुरोध में बताई गई एसेट, अनुरोध में बताए गए संबंध से जुड़ी हैं, तो 'सही' पर सेट करें. ज़रूरी है
max_age Duration पेश किए जाने के समय से, आगे के अपडेट को रोकने के लिए जवाब को कितने समय तक मान्य माना जाना चाहिए. ज़रूरी है
debug_string string

इस मैसेज को लोग आसानी से पढ़ सकते हैं. इसमें ऐसी जानकारी होती है जो असली उपयोगकर्ताओं को नतीजे को समझने, उसे समझने, और उसे डीबग करने में मदद करती है.

यह मैसेज अंग्रेज़ी में होगा और फ़िलहाल हम कोई अनुवाद नहीं देंगे.

कृपया ध्यान दें कि इस स्ट्रिंग के कॉन्टेंट या फ़ॉर्मैट के बारे में कोई गारंटी नहीं दी जाती है. इसका कोई भी पहलू बिना किसी सूचना के बदला जा सकता है. आपको इस डेटा को प्रोग्राम के हिसाब से पार्स करने की कोशिश नहीं करनी चाहिए. अगर आपको लगता है कि आपको ऐसा इसलिए करना है, क्योंकि आपकी ज़रूरी जानकारी को एपीआई के ज़रिए बिना अनुमति के सार्वजनिक नहीं किया गया है, तो कृपया पहले हमसे संपर्क करें.

ListRequest

ऐसे सभी स्टेटमेंट का अनुरोध करने के लिए इस्तेमाल किया जाने वाला मैसेज जिनका सोर्स और संबंध की जानकारी होती है.

फ़ील्ड का नाम टाइप कंपनी का ब्यौरा
source Asset स्टेटमेंट की सूची को होस्ट करने वाला सोर्स. इसका इस्तेमाल, List() अनुरोध को सही सोर्स पर भेजने के लिए किया जाता है. ज़रूरी है
relation string

सिर्फ़ बताए गए संबंध से मेल खाने वाले असोसिएशन ही इस्तेमाल करें.

रिलेशन स्ट्रिंग की पूरी जानकारी पाने के लिए, Statement मैसेज देखें.

किसी क्वेरी को स्टेटमेंट से मैच करने के लिए, इनमें से कोई एक शर्त पूरी होनी चाहिए:

  • क्वेरी और स्टेटमेंट की रिलेशन स्ट्रिंग, दोनों पूरी तरह से मैच होती हों या
  • क्वेरी की रिलेशन स्ट्रिंग खाली है या मौजूद नहीं है.

उदाहरण: संबंध delegate_permission/common.handle_all_urls वाली एक क्वेरी, delegate_permission/common.handle_all_urls संबंध वाले एसेट लिंक से मेल खाती है.

ListResponse

सूची कॉल के लिए जवाब देने का मैसेज.

फ़ील्ड का नाम टाइप कंपनी का ब्यौरा
statements Statement सभी मिलते-जुलते स्टेटमेंट की सूची.
max_age Duration पेश किए जाने के समय से, आगे के अपडेट को रोकने के लिए जवाब को कितने समय तक मान्य माना जाना चाहिए. ज़रूरी है
debug_string string

इस मैसेज को लोग आसानी से पढ़ सकते हैं. इसमें ऐसी जानकारी होती है जो असली उपयोगकर्ताओं को नतीजे को समझने, उसे समझने, और उसे डीबग करने में मदद करती है.

यह मैसेज अंग्रेज़ी में होगा और फ़िलहाल हम कोई अनुवाद नहीं देंगे.

कृपया ध्यान दें कि इस स्ट्रिंग के कॉन्टेंट या फ़ॉर्मैट के बारे में कोई गारंटी नहीं दी जाती है. इसका कोई भी पहलू बिना किसी सूचना के बदला जा सकता है. आपको इस डेटा को प्रोग्राम के हिसाब से पार्स करने की कोशिश नहीं करनी चाहिए. अगर आपको लगता है कि आपको ऐसा इसलिए करना है, क्योंकि आपकी ज़रूरी जानकारी को एपीआई के ज़रिए बिना अनुमति के सार्वजनिक नहीं किया गया है, तो कृपया पहले हमसे संपर्क करें.

जानकारी

इससे सोर्स ऐसेट और टारगेट ऐसेट के बीच के संबंध के बारे में भरोसेमंद जानकारी मिलती है.

स्टेटमेंट हमेशा सोर्स ऐसेट की मदद से किए जाते हैं. ऐसा सीधे तौर पर या कहीं और सेव की गई स्टेटमेंट सूची को सौंपकर किया जाता है.

स्टेटमेंट और ऐसेट की ज़्यादा जानकारी के लिए, कृपया एपीआई से जुड़े दस्तावेज़ों का लैंडिंग पेज देखें.

फ़ील्ड का नाम टाइप कंपनी का ब्यौरा
source Asset हर स्टेटमेंट का एक सोर्स ऐसेट होता है. ज़रूरी है
relation string

यह संबंध, सोर्स ऐसेट के मालिक (यानी कि स्टेटमेंट जारी करने वाले व्यक्ति या इकाई) के हिसाब से, स्टेटमेंट के इस्तेमाल की पहचान करता है. हर पूरी बात का एक-दूसरे से संबंध होता है.

हम <kind>/<detail> फ़ॉर्मैट की स्ट्रिंग के साथ संबंधों की पहचान करते हैं. यहां <kind>, मकसद की पहले से तय कैटगरी के सेट में से एक होना चाहिए. साथ ही, <detail>, अक्षर और अंक मिलाकर एक फ़्री फ़ॉर्म स्ट्रिंग है, जो स्टेटमेंट के इस्तेमाल के खास उदाहरण के बारे में बताती है.

साथ काम करने वाले संबंधों की मौजूदा सूची के लिए, हमारा एपीआई दस्तावेज़ देखें.

उदाहरण: delegate_permission/common.handle_all_urls ज़रूरी है

target Asset हर स्टेटमेंट की एक टारगेट ऐसेट होती है. ज़रूरी है

WebAsset

वेब ऐसेट के बारे में बताता है.

फ़ील्ड का नाम टाइप कंपनी का ब्यौरा
site string

वेब ऐसेट की पहचान ऐसे यूआरएल से की जाती है जिसमें सिर्फ़ स्कीम, होस्टनेम, और पोर्ट पार्ट शामिल होते हैं. फ़ॉर्मैट यह है

http[s]://<hostname>[:<port>]

होस्टनेम पूरी तरह क्वालिफ़ाइड होने चाहिए: उन्हें एक ही अवधि (".") में खत्म होना चाहिए.

फ़िलहाल, सिर्फ़ "http" और "https" स्कीम का इस्तेमाल किया जा सकता है.

पोर्ट नंबर दशमलव के तौर पर दिए जाते हैं. अगर स्टैंडर्ड पोर्ट नंबर का इस्तेमाल किया जाता है, तो उन्हें शामिल नहीं करना चाहिए: एचटीटीपी के लिए 80 और एचटीटीपीएस के लिए 443.

हम इस सीमित यूआरएल को "साइट" कहते हैं. एक ही स्कीम, होस्टनेम, और पोर्ट शेयर करने वाले सभी यूआरएल को साइट का हिस्सा माना जाता है और इसलिए वे वेब ऐसेट से जुड़े होते हैं.

उदाहरण: https://www.google.com साइट वाली एसेट में ये सभी यूआरएल शामिल हैं:

  • https://www.google.com/
  • https://www.google.com:443/
  • https://www.google.com/foo
  • https://www.google.com/foo?bar
  • https://www.google.com/foo#bar
  • https://user@password:www.google.com/

हालांकि, इसमें ये यूआरएल शामिल नहीं हैं:

  • http://www.google.com/ (गलत स्कीम)
  • https://google.com/ (होस्टनेम मेल नहीं खाता)
  • https://www.google.com:444/ (पोर्ट मेल नहीं खाता) ज़रूरी