ডেটা পোর্টেবিলিটি API এই পদ্ধতিগুলি নিয়ে গঠিত:
-
portabilityArchive.initiate
-
archiveJobs.getPortabilityArchiveState
-
resetAuthorization
-
archiveJobs.retryPortabilityArchive
-
archiveJobs.cancelPortabilityArchive
-
accessType.check
portabilityArchive.initiate
আপনি একটি নতুন ডেটা এক্সপোর্ট কাজ শুরু করতে portabilityArchive.initiate
পদ্ধতিতে কল করুন৷
যখন আপনি একটি ডেটা সংরক্ষণাগার তৈরি করতে একটি রপ্তানি কাজ শুরু করেন, তখন আপনাকে অবশ্যই উপযুক্ত সংস্থান গোষ্ঠীর কাছে অনুরোধ করতে হবে এবং সেই সংস্থান গোষ্ঠীর জন্য প্রয়োজনীয় সুযোগগুলির সাথে একটি OAuth টোকেন প্রদান করতে হবে৷ OAuth টোকেন অনুরোধটি অনুমোদন করতে এবং কোন ব্যবহারকারীর ডেটা রপ্তানি করা হচ্ছে তা নির্ধারণ করতে ব্যবহৃত হয়।
একটি নির্দিষ্ট পরিষেবা দ্বারা সমর্থিত সমস্ত সংস্থান গোষ্ঠীর একটি তালিকার জন্য, সেই পরিষেবার জন্য স্কিমা রেফারেন্স পৃষ্ঠাটি দেখুন৷
উদাহরণ স্বরূপ, আপনি যদি সার্চ অ্যাক্টিভিটি ডেটা রপ্তানি করেন, তাহলে আপনি কল করুন InitiatePortabilityArchive(resources = ["myactivity.search"])
। অনুরোধে অবশ্যই OAuth স্কোপের সাথে একটি OAuth টোকেন সংযুক্ত থাকতে হবে: https://www.googleapis.com/auth/dataportability.myactivity.search
।
যদিও একটি একক InitiatePortabilityArchive
কলে একাধিক রিসোর্স গ্রুপ অন্তর্ভুক্ত করা সম্ভব, তবে এটি সুপারিশ করা হয় না। আপনি প্রতিটি সংস্থান গোষ্ঠীর জন্য পৃথক InitiatePortabilityArchive
অনুরোধ করে দ্রুত প্রক্রিয়াকরণ অর্জন করতে পারেন। মনে রাখবেন যে আপনি যখন একাধিক রিসোর্স গ্রুপের অনুরোধ করেন, তখন সংযুক্ত OAuth টোকেনে অবশ্যই সমস্ত উপযুক্ত স্কোপ সংযুক্ত থাকতে হবে।
উদাহরণস্বরূপ, অনুসন্ধান এবং YouTube ক্রিয়াকলাপ উভয়ের জন্য একটি ডেটা সংরক্ষণাগার তৈরি করতে InitiatePortabilityArchive(resources = ["myactivity.search","myactivity.youtube"])
কল করার পরিবর্তে, এই পৃথক কলগুলি করুন: InitiatePortabilityArchive(resources = ["myactivity.search"])
এবং InitiatePortabilityArchive(resources = ["myactivity.youtube"])
.
InitiatePortabilityArchive
অনুরোধ একটি job_id
ফেরত দেয়। এই কাজের আইডি ডেটা আর্কাইভের অবস্থা পুনরুদ্ধার করতে ব্যবহার করা হয়।
archiveJobs.getPortabilityArchiveState
archiveJobs.getPortabilityArchiveState
পদ্ধতিটিকে ডেটা সংরক্ষণাগার রপ্তানি কাজের বর্তমান অবস্থা পুনরুদ্ধার করতে বলা হয়। আপনি যখন getPortabilityArchiveState
কল করেন, আপনি job_id
সরবরাহ করেন : GetPortabilityArchiveState(job_id)
। আপনাকে অবশ্যই স্কোপ সহ একটি OAuth টোকেন সরবরাহ করতে হবে যা initiate
অনুরোধে ব্যবহৃত সংস্থান গোষ্ঠীর সাথে মেলে।
রাজ্যটি COMPLETE
হলে, স্বাক্ষরিত ক্লাউড স্টোরেজ URLগুলি ফেরত দেওয়া হয় যা আপনি ডেটা ডাউনলোড করতে ব্যবহার করতে পারেন৷ স্বাক্ষরিত ইউআরএলের মেয়াদ ছয় ঘণ্টা পরে শেষ হয়ে যায় এবং ডেটা 14 দিনের জন্য উপলব্ধ থাকে।
একটি সংরক্ষণাগার অনুরোধটি ডেটার পরিমাণের উপর নির্ভর করে সম্পূর্ণ হতে কয়েক মিনিট, কয়েক ঘন্টা বা এমনকি কয়েক দিন সময় নিতে পারে। আপনি প্রতি পাঁচ থেকে 60 মিনিটে সংরক্ষণাগারের অবস্থা পরীক্ষা করতে পারেন।
পুনরায় সেট করার অনুমোদন
resetAuthorization
পদ্ধতি নিম্নলিখিত কাজ করে:
- সমস্ত ব্যবহারকারী-প্রদত্ত OAuth স্কোপ প্রত্যাহার করে
- আপনার অ্যাপ্লিকেশানকে একটি রিসোর্স গ্রুপের জন্য
InitiatePortabilityArchive
কল করার অনুমতি দেয় যা আপনি আগে ব্যবহার করেছিলেন৷ - পূর্ববর্তী ডেটা সংরক্ষণাগারগুলিতে অ্যাক্সেস সরিয়ে দেয়
আপনি যখন resetAuthorization
কল করেন, তখন আপনাকে অবশ্যই একটি সংযুক্ত OAuth টোকেন সরবরাহ করতে হবে যার অনুমোদন আপনি পুনরায় সেট করছেন৷
archiveJobs.retryPortabilityArchive
archiveJobs.retryPortabilityArchive
পদ্ধতিটি ব্যর্থ কাজের পুনরায় চেষ্টা করার জন্য বলা হয় যেখানে archiveJobs.getPortabilityArchiveState
পদ্ধতিটি ইতিমধ্যেই FAILED
অবস্থায় ফিরে এসেছে। এটি ব্যাকএন্ডে একটি ক্ষণস্থায়ী ব্যর্থতার কারণে ঘটতে পারে। সেই ক্ষেত্রে আপনি ব্যবহারকারীর কাছ থেকে একটি নতুন OAuth টোকেন না পেয়ে রপ্তানির পুনরায় চেষ্টা করতে পারেন। আপনি যখন retryPortabilityArchive
কল করেন তখন আপনি একটি বৈধ OAuth টোকেন সহ job_id
সরবরাহ করেন। শেষপয়েন্ট তারপর প্রাথমিক initiatePortabilityArchive
অনুরোধে অনুরোধ করা একই সংস্থান গোষ্ঠীর জন্য একটি রপ্তানি তৈরি করার চেষ্টা করে। সফল হলে, এই এন্ডপয়েন্টটি একটি নতুন job_id
ফেরত দেয় যা আপনি getPortabilityArchiveState
কলে ব্যবহার করতে পারেন। একটি ব্যর্থ কাজ তিনবার পর্যন্ত পুনরায় চেষ্টা করা যেতে পারে।
যেমন:
আপনি কল করুন
InitiatePortabilityArchive(resources = ["myactivity.search"])
, এবং আপনিjob_id: 0
পাবেন।GetPortabilityArchiveState(0)
এ কল করার পর, আপনিJobSate: FAILED
।তারপর আপনি
RetryPortabilityArchive(0)
কে কল করতে পারেনjob_id: 1
resources = ["myactivity.search"]
।তারপর, আপনি
GetPortabilityArchiveState(1)
এ কল করা চালিয়ে যেতে পারেন।
archiveJobs.cancel PortabilityArchive
archiveJobs.cancelPortabilityArchive
পদ্ধতিটিকে বলা হয় একটি পৃথক কাজ বাতিল না করে বিদ্যমান টোকেন প্রত্যাহার না করে যখন আপনার ব্যবহারকারীর ডেটাতে চলমান অ্যাক্সেস থাকে। যখন চাকরি বা সম্পদের আর প্রয়োজন হয় না এবং আপনি আপনার চাকরির কোটা পুনরায় সেট করতে চান তখন এটি কার্যকর। চাকরিটি অবশ্যই IN_PROGRESS
হতে হবে এবং বাতিল করার জন্য সময়-ভিত্তিক অ্যাক্সেস দিয়ে তৈরি করা হয়েছে।
উদাহরণস্বরূপ, আপনি myactivity.youtube
এবং youtube.public_videos
জন্য একটি চলমান, সময়-ভিত্তিক চাকরি বাতিল করতে পারেন তারপর শুধুমাত্র myactivity.youtube
জন্য একটি নতুন চাকরি শুরু করতে পারেন।
accessType.check
accessType.check
পদ্ধতি আপনাকে একটি OAuth টোকেন একটি কাজ শুরু করার আগে সময়-ভিত্তিক বা এককালীন অ্যাক্সেস অনুমোদন করে কিনা তা পরীক্ষা করতে দেয়৷ উদাহরণস্বরূপ আপনি একজন ব্যবহারকারীর সম্পূর্ণ ইতিহাস রপ্তানি করতে চান যদি তারা এক-বারের অ্যাক্সেস দেয়, অথবা যদি তারা সময়-ভিত্তিক অ্যাক্সেস দেয় তবে শুধুমাত্র শেষ দিন।
প্রতিক্রিয়াটিতে দুটি ক্ষেত্র রয়েছে: অনুরোধে ব্যবহৃত OAuth টোকেন দ্বারা অনুমোদিত ওয়ান-টাইম এবং টাইম-ভিত্তিক ডেটাপোর্টেবিলিটি রিসোর্স গ্রুপ আইডিগুলির তালিকা। ব্যবহারকারীরা টোকেন অনুদানে অ্যাক্সেসের ধরনগুলিকে মিশ্রিত করতে পারে না, তবে ভবিষ্যতে আপনার সেই আচরণটি অগত্যা অনুমান করা উচিত নয়।