Package google.digitalassetlinks.v1

সূচক

বিবৃতি

এই API পরিষেবাটি "বিবৃতি" পরিবেশন করে, যা সম্পদের মালিকদের দ্বারা তাদের সম্পদের লিঙ্কগুলি সম্পর্কে তথ্য প্রকাশ করতে ব্যবহৃত যানবাহন। এপিআই একটি সহজ এবং নিরাপদ উপায়ে বিবৃতিগুলি পুনরুদ্ধার করতে ব্যবহার করা যেতে পারে, সরাসরি উত্স থেকে বিবৃতিগুলি অর্জন করার প্রয়োজন ছাড়াই৷

এই API দ্বারা প্রত্যাবর্তিত সমস্ত বিবৃতি অন্যান্য ডিজিটাল সম্পদ সম্পর্কে ডিজিটাল সম্পদের (উদাহরণস্বরূপ, ওয়েবসাইট বা অ্যান্ড্রয়েড অ্যাপ) পক্ষ থেকে করা হয়েছে। প্রতিটি বিবৃতিতে একটি উৎস সম্পদ, একটি লক্ষ্য সম্পদ এবং এক বা একাধিক সম্পর্ক রয়েছে।

সম্পর্কটি উৎস সম্পদ দ্বারা দাবি করা দুটি সম্পদের মধ্যে সম্পর্ক বর্ণনা করে। এই ধরনের সম্পর্কের একটি উদাহরণ হল বিশেষাধিকার বা অনুমতির প্রতিনিধি।

তালিকা

rpc List( ListRequest ) returns ( ListResponse )

নির্দিষ্ট লক্ষ্য এবং বিবৃতি স্ট্রিং এর সাথে মেলে একটি প্রদত্ত উত্স থেকে সমস্ত বিবৃতিগুলির একটি তালিকা পুনরুদ্ধার করে৷

API গ্যারান্টি দেয় যে নিরাপদ উৎস সম্পদ সহ সমস্ত বিবৃতি, যেমন HTTPS ওয়েবসাইট বা অ্যান্ড্রয়েড অ্যাপ, সেই সম্পদগুলির মালিকের দ্বারা নিরাপদ উপায়ে করা হয়েছে, যেমন ডিজিটাল সম্পদ লিঙ্কের প্রযুক্তিগত নকশা স্পেসিফিকেশনে বর্ণিত হয়েছে। বিশেষভাবে, আপনার বিবেচনা করা উচিত যে অনিরাপদ ওয়েবসাইটগুলির জন্য (অর্থাৎ, যেখানে URLটি https:// // এর পরিবর্তে http:// দিয়ে শুরু হয়), এই গ্যারান্টি দেওয়া যাবে না।

List কমান্ডটি সেই ক্ষেত্রে সবচেয়ে উপযোগী যেখানে API ক্লায়েন্ট দুটি সম্পদ সম্পর্কিত সমস্ত উপায় জানতে চায় বা একটি নির্দিষ্ট উৎস সম্পদ থেকে সমস্ত সম্পর্ক গণনা করতে চায়। উদাহরণ: একটি বৈশিষ্ট্য যা ব্যবহারকারীদের সম্পর্কিত আইটেমগুলিতে নেভিগেট করতে সহায়তা করে৷ যখন একটি মোবাইল অ্যাপ একটি ডিভাইসে চলছে, বৈশিষ্ট্যটি সংশ্লিষ্ট ওয়েব সাইট বা Google+ প্রোফাইলে নেভিগেট করা সহজ করে তুলবে৷

AndroidAppAsset

একটি অ্যান্ড্রয়েড অ্যাপ সম্পদ বর্ণনা করে।

ক্ষেত্র নাম টাইপ বর্ণনা
package_name string অ্যান্ড্রয়েড অ্যাপ সম্পদ স্বাভাবিকভাবেই তাদের জাভা প্যাকেজ নামের দ্বারা চিহ্নিত করা হয়। উদাহরণস্বরূপ, Google মানচিত্র অ্যাপটি প্যাকেজের নাম com.google.android.apps.maps ব্যবহার করে। প্রয়োজন
certificate CertificateInfo

যেহেতু প্যাকেজ নামের স্বতন্ত্রতার কোনো বিশ্বব্যাপী প্রয়োগ নেই, তাই আমাদের একটি স্বাক্ষর শংসাপত্রও প্রয়োজন, যা প্যাকেজের নামের সাথে একত্রে একটি অ্যাপকে স্বতন্ত্রভাবে সনাক্ত করে।

কিছু অ্যাপ্লিকেশানের সাইনিং কীগুলি ঘোরানো হয়, তাই সময়ের সাথে সাথে সেগুলি বিভিন্ন কী দ্বারা স্বাক্ষরিত হতে পারে৷ আমরা এগুলিকে স্বতন্ত্র সম্পদ হিসাবে বিবেচনা করি, যেহেতু আমরা (প্যাকেজের নাম, শংসাপত্র) অনন্য আইডি হিসাবে ব্যবহার করি। এটি সাধারণত কোনও সমস্যা তৈরি করা উচিত নয় কারণ অ্যাপের উভয় সংস্করণই একই বা অনুরূপ বিবৃতি দেবে। একটি কী ঘোরানো হলে অ্যাপ সম্পর্কে বিবৃতি তৈরি করা অন্যান্য সম্পদ আপডেট করতে হবে।

(উল্লেখ্য যে বিবৃতি প্রকাশ এবং অনুসন্ধানের জন্য সিনট্যাক্সে সিনট্যাকটিক চিনি থাকে যাতে আপনি সহজেই একাধিক শংসাপত্র দ্বারা পরিচিত অ্যাপগুলি নির্দিষ্ট করতে পারেন।) প্রয়োজন

সার্টিফিকেট তথ্য

একটি X509 শংসাপত্র বর্ণনা করে।

ক্ষেত্র নাম টাইপ বর্ণনা
sha256_fingerprint string

শংসাপত্রের বড় হাতের SHA-265 আঙ্গুলের ছাপ। PEM শংসাপত্র থেকে, এটি এইরকম অর্জিত হতে পারে:

$ 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 হ্যাশ গণনা করতে পারেন এবং ফলাফলটিকে একটি হেক্সস্ট্রিং হিসাবে উপস্থাপন করতে পারেন (অর্থাৎ, কোলন দ্বারা পৃথক করা প্রতিটি অক্টেটের বড় হাতের হেক্সাডেসিমেল উপস্থাপনাগুলি। )

সম্পদ

স্বতন্ত্রভাবে একটি সম্পদ সনাক্ত করে।

একটি ডিজিটাল সম্পদ হল একটি শনাক্তযোগ্য এবং ঠিকানাযোগ্য অনলাইন সত্তা যা সাধারণত কিছু পরিষেবা বা সামগ্রী প্রদান করে। সম্পদের উদাহরণ হল ওয়েবসাইট, অ্যান্ড্রয়েড অ্যাপ, টুইটার ফিড এবং প্লাস পেজ।

ক্ষেত্র নাম টাইপ বর্ণনা
ইউনিয়ন ক্ষেত্র, নিম্নলিখিতগুলির মধ্যে শুধুমাত্র একটি:
web WebAsset এটি একটি ওয়েব সম্পদ হলে সেট করুন।
android_app AndroidAppAsset এটি একটি Android অ্যাপ সম্পদ কিনা তা সেট করুন।

চেক রিকোয়েস্ট

একটি নির্দিষ্ট সম্পদ লিঙ্কের অস্তিত্ব পরীক্ষা করতে ব্যবহৃত বার্তা।

ক্ষেত্র নাম টাইপ বর্ণনা
source Asset বিবৃতি তালিকা হোস্টিং উৎস. এটি সঠিক উৎসে Check() কল রুট করতে ব্যবহৃত হয়।
relation string

সম্পর্কের জন্য ক্যোয়ারী স্ট্রিং।

আমরা <kind>/<detail> বিন্যাসের স্ট্রিংগুলির সাথে সম্পর্ক সনাক্ত করি, যেখানে <kind> অবশ্যই পূর্ব-নির্ধারিত উদ্দেশ্য বিভাগের একটি সেট হতে হবে এবং <detail> একটি ফ্রি-ফর্ম ছোট হাতের বর্ণমালা স্ট্রিং যা নির্দিষ্ট ব্যবহার বর্ণনা করে বিবৃতির ক্ষেত্রে।

সমর্থিত সম্পর্কের বর্তমান তালিকার জন্য আমাদের API ডকুমেন্টেশন পড়ুন।

একটি কোয়েরি একটি সম্পদ লিঙ্কের সাথে মেলে, ক্যোয়ারী এবং সম্পদ লিঙ্কের সম্পর্ক স্ট্রিং উভয়ই হুবহু মেলে।

উদাহরণ: relation delegate_permission/common.handle_all_urls সহ একটি কোয়েরি relation delegate_permission/common.handle_all_urls সাথে একটি সম্পদ লিঙ্কের সাথে delegate_permission/common.handle_all_urls

target Asset বিবৃতি লক্ষ্য সম্পদ.

প্রতিক্রিয়া চেক করুন

CheckAssetLinks কলের জন্য প্রতিক্রিয়া বার্তা।

ক্ষেত্র নাম টাইপ বর্ণনা
linked bool অনুরোধে উল্লিখিত সম্পদ অনুরোধে উল্লিখিত সম্পর্ক দ্বারা লিঙ্ক করা হলে সত্যে সেট করুন। প্রয়োজন
max_age Duration পরিবেশন করার সময় থেকে, আরও আপডেট ব্যতীত প্রতিক্রিয়া কতক্ষণ বৈধ বলে বিবেচিত হবে। প্রয়োজন
debug_string string

শেষ ব্যবহারকারীদের ফলাফল বুঝতে, পুনরুত্পাদন এবং ডিবাগ করতে সাহায্য করার উদ্দেশ্যে তথ্য ধারণকারী মানব-পাঠযোগ্য বার্তা।

বার্তাটি ইংরেজিতে হবে এবং আমরা বর্তমানে কোনো অনুবাদ অফার করার পরিকল্পনা করছি না।

অনুগ্রহ করে মনে রাখবেন এই স্ট্রিং এর বিষয়বস্তু বা বিন্যাস সম্পর্কে কোন গ্যারান্টি দেওয়া হয় না। এটির যেকোনো দিক নোটিশ ছাড়াই পরিবর্তন হতে পারে। আপনি প্রোগ্রাম্যাটিকভাবে এই ডেটা পার্স করার চেষ্টা করবেন না। আপনি যদি মনে করেন যে আপনাকে এটি করতে হবে কারণ আপনার প্রয়োজনীয় তথ্যটি API দ্বারা প্রকাশ করা হয় না, অনুগ্রহ করে প্রথমে আমাদের সাথে যোগাযোগ করুন৷

তালিকার অনুরোধ

একটি নির্দিষ্ট উৎস এবং সম্পর্ক আছে এমন সমস্ত পরিচিত বিবৃতির অনুরোধ করতে ব্যবহৃত বার্তা।

ক্ষেত্র নাম টাইপ বর্ণনা
source Asset বিবৃতি তালিকা হোস্টিং উৎস. এটি List() অনুরোধটিকে সঠিক উত্সে নির্দেশ করতে ব্যবহৃত হয়। প্রয়োজন
relation string

শুধুমাত্র নির্দিষ্ট সম্পর্কের সাথে মেলে এমন অ্যাসোসিয়েশন ব্যবহার করুন।

রিলেশন স্ট্রিং এর বিস্তারিত সংজ্ঞার জন্য Statement বার্তা দেখুন।

একটি বিবৃতি মেলে একটি প্রশ্নের জন্য, নিম্নলিখিত একটি সত্য হতে হবে:

  • ক্যোয়ারী এবং স্টেটমেন্টের রিলেশন স্ট্রিং উভয়ই হুবহু মিলে যায়, বা
  • কোয়েরির সম্পর্ক স্ট্রিং খালি বা অনুপস্থিত।

উদাহরণ: relation delegate_permission/common.handle_all_urls সহ একটি কোয়েরি relation delegate_permission/common.handle_all_urls সাথে একটি সম্পদ লিঙ্কের সাথে delegate_permission/common.handle_all_urls

লিস্ট রেসপন্স

তালিকা কলের জন্য প্রতিক্রিয়া বার্তা.

ক্ষেত্র নাম টাইপ বর্ণনা
statements Statement সব মিলে যাওয়া বিবৃতিগুলির একটি তালিকা যা পাওয়া গেছে।
max_age Duration পরিবেশন করার সময় থেকে, আরও আপডেট ব্যতীত প্রতিক্রিয়া কতক্ষণ বৈধ বলে বিবেচিত হবে। প্রয়োজন
debug_string string

শেষ ব্যবহারকারীদের ফলাফল বুঝতে, পুনরুত্পাদন এবং ডিবাগ করতে সাহায্য করার উদ্দেশ্যে তথ্য ধারণকারী মানব-পাঠযোগ্য বার্তা।

বার্তাটি ইংরেজিতে হবে এবং আমরা বর্তমানে কোনো অনুবাদ অফার করার পরিকল্পনা করছি না।

অনুগ্রহ করে মনে রাখবেন এই স্ট্রিং এর বিষয়বস্তু বা বিন্যাস সম্পর্কে কোন গ্যারান্টি দেওয়া হয় না। এটির যেকোনো দিক নোটিশ ছাড়াই পরিবর্তন হতে পারে। আপনি প্রোগ্রাম্যাটিকভাবে এই ডেটা পার্স করার চেষ্টা করবেন না। আপনি যদি মনে করেন যে আপনাকে এটি করতে হবে কারণ আপনার প্রয়োজনীয় তথ্যটি API দ্বারা প্রকাশ করা হয় না, অনুগ্রহ করে প্রথমে আমাদের সাথে যোগাযোগ করুন৷

বিবৃতি

একটি নির্ভরযোগ্য বিবৃতি বর্ণনা করে যা একটি উৎস সম্পদ এবং একটি লক্ষ্য সম্পদের মধ্যে সম্পর্ক সম্পর্কে করা হয়েছে।

বিবৃতিগুলি সর্বদা উৎস সম্পদ দ্বারা তৈরি করা হয়, হয় সরাসরি বা অন্যত্র সংরক্ষিত একটি বিবৃতি তালিকায় অর্পণ করে।

বিবৃতি এবং সম্পদের আরও বিস্তারিত সংজ্ঞার জন্য, অনুগ্রহ করে আমাদের API ডকুমেন্টেশন ল্যান্ডিং পৃষ্ঠা দেখুন।

ক্ষেত্র নাম টাইপ বর্ণনা
source Asset প্রতিটি বিবৃতি একটি উৎস সম্পদ আছে. প্রয়োজন
relation string

সম্পর্কটি উৎস সম্পদের মালিক (অর্থাৎ, যে ব্যক্তি বা সত্তা বিবৃতিটি জারি করেছে) দ্বারা উদ্দেশ্য হিসাবে বিবৃতিটির ব্যবহার সনাক্ত করে। প্রতিটি সম্পূর্ণ বিবৃতি একটি সম্পর্ক আছে.

আমরা <kind>/<detail> বিন্যাসের স্ট্রিংগুলির সাথে সম্পর্ক সনাক্ত করি, যেখানে <kind> অবশ্যই পূর্ব-নির্ধারিত উদ্দেশ্য বিভাগের একটি সেট হতে হবে এবং <detail> একটি ফ্রি-ফর্ম ছোট হাতের বর্ণমালা স্ট্রিং যা নির্দিষ্ট ব্যবহার বর্ণনা করে বিবৃতির ক্ষেত্রে।

সমর্থিত সম্পর্কের বর্তমান তালিকার জন্য আমাদের API ডকুমেন্টেশন পড়ুন।

উদাহরণ: delegate_permission/common.handle_all_urls REQUIRED

target Asset প্রতিটি বিবৃতি একটি লক্ষ্য সম্পদ আছে. প্রয়োজন

ওয়েব অ্যাসেট

একটি ওয়েব সম্পদ বর্ণনা করে।

ক্ষেত্র নাম টাইপ বর্ণনা
site string

ওয়েব সম্পদ একটি URL দ্বারা চিহ্নিত করা হয় যাতে শুধুমাত্র স্কিম, হোস্টনাম এবং পোর্ট অংশ থাকে। ফরম্যাট হল

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

হোস্টনামগুলি সম্পূর্ণরূপে যোগ্য হতে হবে: সেগুলি অবশ্যই একটি একক সময়ের মধ্যে শেষ হবে (" . ")।

শুধুমাত্র "http" এবং "https" স্কিম বর্তমানে অনুমোদিত।

পোর্ট নম্বরগুলি দশমিক সংখ্যা হিসাবে দেওয়া হয় এবং যদি স্ট্যান্ডার্ড পোর্ট নম্বরগুলি ব্যবহার করা হয় তবে সেগুলি অবশ্যই বাদ দিতে হবে: http এর জন্য 80 এবং https এর জন্য 443৷

আমরা এই সীমিত URLটিকে "সাইট" বলি। একই স্কিম, হোস্টনাম এবং পোর্ট শেয়ার করে এমন সমস্ত ইউআরএলকে সাইটের একটি অংশ হিসাবে বিবেচনা করা হয় এবং এইভাবে ওয়েব সম্পদের অন্তর্গত।

উদাহরণ: https://www.google.com সাইটের সম্পদে এই সমস্ত URL রয়েছে:

  • 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/

কিন্তু এতে এই URL গুলি নেই:

  • http://www.google.com/ (ভুল স্কিম)
  • https://google.com/ (হোস্টনাম মেলে না)
  • https://www.google.com:444/ (পোর্ট মেলে না) আবশ্যক