Настройки Google Business Api - Pub Sub update - PullRequest
0 голосов
/ 27 апреля 2018

Я пытаюсь подписаться на получение уведомления каждый раз, когда для компании публикуется новый отзыв с использованием приведенного ниже кода.

private static final String topicName = "projects/myproject-12345/topics/business-review";
MyBusiness myBusiness = GMBFactory.getMyBusiness();
    MyBusiness.Accounts.List accountsList = myBusiness.accounts().list();
    ListAccountsResponse response = accountsList.execute();
    List<Account> accounts = response.getAccounts();
    for (Account account : accounts) {
        Notifications notification = new Notifications().setName(topicName);
        UpdateNotifications updateNotification = myBusiness.accounts().updateNotifications(account.getName() + "/notifications",
                notification);
        updateNotification.execute();
    }

Я получаю приведенную ниже ошибку при попытке выполнить код.

com.google.api.client.googleapis.json.GoogleJsonResponseException: 400 Bad Request
{
  "code" : 400,
  "errors" : [ {
  "domain" : "global",
  "message" : "Request contains an invalid argument.",
  "reason" : "badRequest"
} ],
"message" : "Request contains an invalid argument.",
"status" : "INVALID_ARGUMENT"
}

Может кто-нибудь сказать мне, что я делаю не так?

- EDIT -

MyBusiness myBusiness = GMBFactory.getMyBusiness();
    MyBusiness.Accounts.List accountsList = myBusiness.accounts().list();
    ListAccountsResponse response = accountsList.execute();
    List<Account> accounts = response.getAccounts();
    for (Account account : accounts) {
        Notifications notification = new Notifications();
        notification.setTopicName(topicName);
        notification.setName("review");
        UpdateNotifications updateNotification = myBusiness.accounts().updateNotifications(account.getName() + "/notifications",
                notification);
        updateNotification.execute();
    }

1 Ответ

0 голосов
/ 27 апреля 2018

Notifications требует установки topicName и notificationTypes. Поле name игнорируется. Смотри https://developers.google.com/my-business/reference/rest/v4/Notifications

...