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 {} .
{}