API メソッド

GetReader

ニュース メディアは、GetReader を使用して、既知の PPID を持つ読者の 1 人が定期購読を Google にリンクしたかどうかを確認できます。ニュース メディアは GET リクエストを使って、特定のパブリケーション ID に属する PPID をクエリします。

リクエスト

//GET /v1/publications/dailybugle.com/readers/6789

レスポンス

エンドポイントは、リンクされた定期購読の created_time を含む JSON 本文を含む 200 を返します。パブリケーションの PPID が見つからない場合はエラーを返します。詳しくは、エラー セクションをご覧ください。

{
  "name": "publications/gtech-demo.appspot.com/readers/81112",  
  "create_time": "2022-04-19T04:53:40+00:00"
}

GetReaderEntitlements

GetReaderEntitlements を使用すると、ニュース メディアは、以前にニュース メディアから提供された PPID の利用資格をクエリできます。ニュース メディアは GET リクエストを使用して PPID とパブリケーション ID を指定して利用資格をリクエストします。

リクエスト

//GET /v1/publications/dailybugle.com/readers/6789/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"
      }
  ]
}

利用資格はないものの、PPID にリンクされているユーザー(利用資格が期限切れで完全に削除された場合など)の場合、利用資格のリクエストにより、標準の entitlements オブジェクトの一部として空の Entitlements 配列が返されます。

{ 
  "name": "publications/dailybugle.com/readers/6789/entitlements",
  "createTime": "2023-02-07T17:38:57.425577Z"
}

UpdateReaderEntitlements

UpdateReaderEntitlements は、PPID に基づいて読者の利用資格を作成、更新するために使用されます。

このサンプル ペイロードは、PPID 6789 の利用資格を The Daily Bugle の 3 つのプロダクト ID(dailybugle.com:basicdailybugle.com:premiumdailybugle.com:deluxe)に付与します。その後、読者 6789 が Google 検索と Discover で Google サーフェスを使用すると、[定期購入の検索結果] リストに、これらのプロダクト ID のいずれかでタグ付けされた daybugle.com の記事に関連する検索結果が表示されます。

リクエスト

//PATCH /v1/publications/dailybugle.com/readers/6789/entitlements

{
  "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"
      }
  ]
}

レスポンス

PATCH オペレーションが成功すると、保存された entitlements オブジェクトは GetReaderEntitlements と同じ形式で返されます。

DeleteReader

DeleteReader を使用すると、ニュース メディアは、読者のリンクされた定期購読を手動で削除できます。ニュース メディアは DELETE リクエストを使用して、削除するパブリケーション ID の PPID を送信します。

リクエスト

//DELETE /v1/publications/dailybugle.com/readers/6789

レスポンス

削除に成功すると、空の JSON オブジェクト {} を含む 200 が返されます。

{}