GetReader
GetReader की मदद से, पब्लिशर यह पुष्टि कर सकता है कि पीपीआईडी वाले किसी व्यक्ति ने अपनी सदस्यता को Google से लिंक किया है या नहीं. GET अनुरोध का इस्तेमाल करके, पब्लिशर किसी खास पब्लिकेशन आईडी से जुड़े पीपीआईडी के बारे में क्वेरी करता है.
अनुरोध
REST API: GET अनुरोध
https://readerrevenuesubscriptionlinking.googleapis.com/v1/publications/publicationId/readers/ppid
क्लाइंट लाइब्रेरी (Node.js)
async function getReader(ppid) {
const publicationId = process.env.PUBLICATION_ID;
return await client.publications.readers.get({
name: `publications/${publicationId}/readers/${ppid}`,
});
};
जवाब
जवाब के तौर पर एंडपॉइंट, JSON बॉडी में 200 दिखाएगा, जिसमें लिंक की गई सदस्यता का
created_time शामिल होगा. अगर पब्लिकेशन के लिए कोई पीपीआईडी नहीं मिलता है
, तो यह गड़बड़ी होने की जानकारी देगा. ज़्यादा जानकारी के लिए गड़बड़ियों वाला सेक्शन देखें.
{
"name": "publications/CAowqfCKCw/readers/22553",
"createTime": "2025-07-30T18:26:58.050224Z",
"publicationId": "CAowqfCKCw",
"ppid": "22553",
"originatingPublicationId": "CAowqfCKCw"
}
GetReaderEntitlements
GetReaderEntitlements की मदद से, पब्लिशर उस पीपीआईडी के एनटाइटलमेंट के लिए क्वेरी कर सकता है जिसे पब्लिशर ने पहले उपलब्ध कराया था. जीईटी अनुरोध का इस्तेमाल करके, पब्लिशर पीपीआईडी और पब्लिकेशन आईडी देकर, एनटाइटलमेंट के लिए अनुरोध करता है.
अनुरोध
REST API: GET अनुरोध
https://readerrevenuesubscriptionlinking.googleapis.com/v1/publications/publicationId/readers/ppid/entitlements
क्लाइंट लाइब्रेरी (Node.js)
async function getReaderEntitlements(ppid) {
const publicationId = process.env.PUBLICATION_ID;
return await client.publications.readers.getEntitlements({
name: `publications/${publicationId}/readers/${ppid}/entitlements`
});
};
जवाब
अनुरोध स्वीकार किए जाने के लिए जवाब का फ़ॉर्मैट, एनटाइटलमेंट सेव करने के लिए इस्तेमाल किए गए फ़ॉर्मैट जैसा ही होना चाहिए
UpdateReaderEntitlements PATCH अनुरोध के साथ.
{
"name": "publications/dailybugle.com/readers/6789/entitlements",
"entitlements": [
{
"product_id": "dailybugle.com:basic",
"subscription_token": "dnabhdufbwinkjanvejskenfw",
"detail": "This is our basic plan",
"expire_time": "2022-08-19T04:53:40+00:00"
},
{
"product_id": "dailybugle.com:premium",
"subscription_token": "wfwhddgdgnkhngfw",
"detail": "This is our premium plan",
"expire_time": "2022-07-19T04:53:40+00:00"
},
{
"product_id": "dailybugle.com:deluxe",
"subscription_token": "fefcbwinkjanvejfefw",
"detail": "This is our deluxe plan",
"expire_time": "2022-08-20T04:53:40+00:00"
}
]
}
ऐसा हो सकता है कि कुछ लोगों के पास एनटाइटलमेंट नहीं हो, लेकिन लिंक किया हुआ पीपीआईडी हो. उदाहरण के लिए, ऐसा एनटाइटलमेंट जिसकी समयसीमा खत्म हो गई है और उसे पूरी तरह मिटा दिया गया है. ऐसे में, एनटाइटलमेंट के लिए अनुरोध करने पर, स्टैंडर्ड एनटाइटलमेंट ऑब्जेक्ट के हिस्से के तौर पर एनटाइटलमेंट का कलेक्शन खाली दिखेगा.
{
"name": "publications/dailybugle.com/readers/6789/entitlements"
}
UpdateReaderEntitlements
UpdateReaderEntitlements का इस्तेमाल, लोगों के पीपीआईडी के आधार पर, एनटाइटलमेंट बनाने और अपडेट करने के लिए किया जाता है.
पेलोड का यह नमूना, पीपीआईडी 6789 एनटाइटलमेंट वाले लोगों को The Daily Bugle के लिए तीन प्रॉडक्ट आईडी dailybugle.com:basic, dailybugle.com:premium , और dailybugle.com:deluxe इस्तेमाल करने की अनुमति देता है. जब पीपीआईडी 6789 एनटाइटलमेंट वाला व्यक्ति, Google के प्लैटफ़ॉर्म से Search और 'डिस्कवर' सुविधा का इस्तेमाल करता है, तो "आपकी सदस्यताओं से" सूची में, dailybugle.com के ऐसे लेखों से काम के नतीजे दिखेंगे जिन्हें इन प्रॉडक्ट आईडी के साथ टैग किया गया है.
अनुरोध
REST API: PATCH अनुरोध
https://readerrevenuesubscriptionlinking.googleapis.com/v1/publications/publicationId/readers/ppid/entitlements
अनुरोध की बॉडी: entitlements ऑब्जेक्ट के बारे में ज़्यादा जानने के लिए, शब्दावली
वाला पेज देखें.
{
entitlements : [{
product_id: `${publicationId}:basic`,
subscription_token: 'abc1234',
detail: 'This is our basic plan',
expire_time: '2025-10-21T03:05:08.200564Z'
}]
}
क्लाइंट लाइब्रेरी (Node.js)
async function updateReaderEntitlements(ppid) {
const publicationId = process.env.PUBLICATION_ID;
const requestBody = {
entitlements : [{
product_id: `${publicationId}:basic`,
subscription_token: 'abc1234',
detail: 'This is our basic plan',
expire_time: '2025-10-21T03:05:08.200564Z'
}]
};
return await client.publications.readers.updateEntitlements({
name: `publications/${publicationId}/readers/${ppid}/entitlements`,
requestBody
});
}
जवाब
पैच कार्रवाई पूरी होने के बाद, सेव किया गया entitlements ऑब्जेक्ट
दिखाया जाएगा, GetReaderEntitlements के फ़ॉर्मैट में ही.
DeleteReader
DeleteReader की मदद से, पब्लिशर लिंक की गई सदस्यता को मैन्युअल तरीके से मिटा सकता है.
DELETE अनुरोध का इस्तेमाल करके, पब्लिशर मिटाए जाने वाले पब्लिकेशन आईडी के लिए पीपीआईडी सबमिट करता है.
DeleteReader को कॉल करने से पहले, आपको या तो एनटाइटलमेंट मिटाने होंगे
इसके लिए, खाली कलेक्शनUpdateReaderEntitlements का इस्तेमाल करें
({ "entitlements": [] }). इसके अलावा, अगर आपको एनटाइटलमेंट वाले किसी व्यक्ति की जानकारी मिटानी है, तो ज़रूरी नहीं है कि आप force पैरामीटर को true पर सेट करें.
force पैरामीटर की डिफ़ॉल्ट वैल्यू false होती है.
अनुरोध
REST API: DELETE अनुरोध
https://readerrevenuesubscriptionlinking.googleapis.com/v1/publications/publicationId/readers/ppid?force={boolean}
क्लाइंट लाइब्रेरी (Node.js)
async function deleteReader(ppid, forceDelete = false) {
const publicationId = process.env.PUBLICATION_ID;
return await client.publications.readers.delete({
name: `publications/${publicationId}/readers/${ppid}`,
force: forceDelete
});
}
जवाब
सही तरीके से मिटने पर, जवाब के तौर पर खाली JSON ऑब्जेक्ट {} के साथ 200 दिखेगा.
{}