Métodos da API

GetReader

GetReader permite que um editor valide se um dos leitores com um PPID conhecido vinculou a assinatura ao Google. Com uma solicitação GET, o editor consulta um PPID pertencente a um ID de publicação específico.

Solicitação

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

Resposta

O endpoint vai retornar um código 200 com um corpo JSON contendo o created_time da assinatura vinculada ou um erro se nenhum PPID for encontrado para a publicação. Consulte a seção de erros para mais informações.

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

GetReaderEntitlements

GetReaderEntitlements permite que um editor consulte direitos para um PPID fornecido anteriormente pelo editor. Com uma solicitação GET, o editor solicita os direitos fornecendo um PPID e um ID de publicação.

Solicitação

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

Resposta

Para que a solicitação funcione, o formato de retorno deve ser idêntico ao usado para armazenar direitos com o UpdateReaderEntitlements solicitação de 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"
      }
  ]
}

Para usuários que não têm direitos, mas têm um PPID vinculado (por exemplo, que expirou e foi limpo), uma solicitação de direitos vai retornar uma matriz de direitos vazia como parte do objeto de direitos padrão.

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

UpdateReaderEntitlements

UpdateReaderEntitlements é usado para criar e atualizar direitos de um leitor com base no PPID dele.

Essa amostra de payload concede ao leitor os direitos de PPID 6789 para três IDs de produto para o The Daily Bugle: dailybugle.com:basic, dailybugle.com:premium e dailybugle.com:deluxe. Quando o leitor 6789 usar as plataformas do Google para a Pesquisa e o Discover, a lista "Das suas assinaturas" vai mostrar os resultados relevantes dos artigos do dailybugle.com marcados com qualquer um desses IDs de produto.

Solicitação

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

Resposta

Após uma operação PATCH bem-sucedida, o objeto entitlements salvo será retornados, no mesmo formato de GetReaderEntitlements.

DeleteReader

DeleteReader permite que o editor exclua manualmente a assinatura vinculada de um leitor. Usando uma solicitação DELETE, o editor envia um PPID para que um ID de publicação seja excluído.

Solicitação

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

Resposta

Uma exclusão bem-sucedida retorna 200 com um objeto JSON vazio {}.

{}