GetReader
GetReader
kan een uitgever valideren of een van zijn lezers met een bekende PPID zijn abonnement aan Google heeft gekoppeld. Met behulp van een GET
verzoek vraagt de uitgever naar een PPID die bij een specifieke publicatie-ID hoort.
Verzoek
REST API: GET
verzoek
https://readerrevenuesubscriptionlinking.googleapis.com/v1/publications/publicationId/readers/ppid
Clientbibliotheek (Node.js)
async function getReader(ppid) {
const publicationId = process.env.PUBLICATION_ID;
return await client.publications.readers.get({
name: `publications/${publicationId}/readers/${ppid}`,
});
};
Antwoord
Het eindpunt retourneert een 200 met een JSON-body die de created_time
van het gekoppelde abonnement bevat, of een foutmelding als er geen PPID voor de publicatie wordt gevonden. Zie de sectie 'Fouten' voor meer informatie.
{
"name": "publications/CAowqfCKCw/readers/22553",
"createTime": "2025-07-30T18:26:58.050224Z",
"publicationId": "CAowqfCKCw",
"ppid": "22553",
"originatingPublicationId": "CAowqfCKCw"
}
GetReaderEntitlements
Met GetReaderEntitlements
kan een uitgever rechten opvragen voor een PPID die de uitgever eerder heeft opgegeven. Met behulp van een GET-verzoek vraagt de uitgever de rechten op door een PPID en publicatie-ID op te geven.
Verzoek
REST API: GET
verzoek
https://readerrevenuesubscriptionlinking.googleapis.com/v1/publications/publicationId/readers/ppid/entitlements
Clientbibliotheek (Node.js)
async function getReaderEntitlements(ppid) {
const publicationId = process.env.PUBLICATION_ID;
return await client.publications.readers.getEntitlements({
name: `publications/${publicationId}/readers/${ppid}/entitlements`
});
};
Antwoord
Voor een succesvolle aanvraag is het retourformaat identiek aan het formaat dat wordt gebruikt om rechten op te slaan met de UpdateReaderEntitlements
PATCH
aanvraag.
{
"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"
}
]
}
Voor gebruikers die geen rechten hebben, maar wel een gekoppelde PPID (bijvoorbeeld een recht dat is verlopen en verwijderd), retourneert een rechtenaanvraag een lege rechtenarray als onderdeel van het standaardrechtenobject.
{
"name": "publications/dailybugle.com/readers/6789/entitlements"
}
UpdateReaderEntitlements
UpdateReaderEntitlements
wordt gebruikt voor het maken en bijwerken van rechten voor een lezer, op basis van hun PPID.
Deze voorbeeldpayload geeft de lezer met PPID 6789
rechten op drie product-ID's voor The Daily Bugle: dailybugle.com:basic
, dailybugle.com:premium
en dailybugle.com:deluxe
. Wanneer lezer 6789
vervolgens Google Surfaces gebruikt voor Zoeken en Discover, bevat de lijst 'Van uw abonnementen' alle relevante resultaten van artikelen op dailybugle.com die zijn getagd met een van deze product-ID's.
Verzoek
REST API: PATCH
-verzoek
https://readerrevenuesubscriptionlinking.googleapis.com/v1/publications/publicationId/readers/ppid/entitlements
Aanvraagbody: Raadpleeg de verklarende woordenlijstpagina voor meer informatie over het entitlements
.
{
entitlements : [{
product_id: `${publicationId}:basic`,
subscription_token: 'abc1234',
detail: 'This is our basic plan',
expire_time: '2025-10-21T03:05:08.200564Z'
}]
}
Clientbibliotheek (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
});
};
Antwoord
Bij een succesvolle PATCH-bewerking wordt het opgeslagen entitlements
geretourneerd in dezelfde indeling als GetReaderEntitlements
.
DeleteReader
DeleteReader
kan een uitgever handmatig een gekoppeld abonnement verwijderen. Met een DELETE
-verzoek dient de uitgever een PPID in voor de verwijdering van een publicatie-ID.
Voordat u DeleteReader
aanroept, moet u eerst rechten verwijderen met UpdateReaderEntitlements
met een lege array ( { "entitlements": [] }
), of de optionele parameter force
instellen op true
als u een lezer met rechten wilt verwijderen. De parameter force
is standaard ingesteld op false
.
Verzoek
REST API: verzoek DELETE
https://readerrevenuesubscriptionlinking.googleapis.com/v1/publications/publicationId/readers/ppid?force={boolean}
Clientbibliotheek (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
});
};
Antwoord
Een succesvolle verwijdering retourneert een 200 met een leeg JSON-object {}
.
{}