Praca z danymi dotyczącymi opinii

Z tego samouczka dowiesz się, jak wyświetlać, zwracać, odpowiadać na opinie i je usuwać. Google My Business API umożliwia pracę z danymi opinii w celu wykonywania tych operacji:

Zanim zaczniesz

Zanim zaczniesz korzystać z Google My Business API, musisz zarejestrować aplikację i uzyskać dane logowania OAuth 2.0. Więcej informacji o tym, jak zacząć korzystać z Google My Business API, znajdziesz w artykule Podstawowa konfiguracja.

Wyświetlanie wszystkich opinii

Wyświetl wszystkie opinie o lokalizacji, aby zbiorczo je sprawdzić. Aby zwrócić wszystkie opinie powiązane z lokalizacją, użyj interfejsu accounts.locations.reviews.list API.

Aby zwrócić wszystkie opinie powiązane z lokalizacją, użyj tego:

HTTP
GET
https://mybusiness.googleapis.com/v4/accounts/{accountId}/locations/{locationId}/reviews
Java

Ta funkcja używa Mybusiness.Accounts.Locations.Reviews.List.

/**
 * Returns a list of reviews.
 * @param locationName Name of the location to retrieve reviews for.
 * @return List<Reviews> A list of reviews.
 * @throws Exception
 */
public static List<Review> listReviews(String locationName) throws Exception {
  Mybusiness.Accounts.Locations.Reviews.List reviewsList =
    mybusiness.accounts().locations().reviews().list(locationName);
  ListReviewsResponse response = reviewsList.execute();
  List<Reviews> reviews = response.getReviews();

  for (Reviews review : reviews) {
    System.out.println(review.toPrettyString());
  }
  return reviews;
}

Pobieranie konkretnej opinii

Zwróć konkretną opinię według nazwy. Aby zwrócić konkretną opinię powiązaną z lokalizacją, użyj interfejsu accounts.locations.reviews.get API.

Aby zwrócić konkretną opinię, użyj tego:

HTTP
GET
https://mybusiness.googleapis.com/v4/accounts/{accountId}/locations/{locationId}/reviews/{reviewId}
Java

Ta funkcja używa Mybusiness.Accounts.Locations.Reviews.Get.

/**
 * Demonstrates getting a review by name.
 * @param reviewName The name (resource path) of the review to retrieve.
 * @return Account The requested review.
 */
private static Review getReview(String reviewName) throws Exception {
  Mybusiness.Accounts.Locations.Reviews.Get review =
      mybusiness.accounts().locations().reviews().get(reviewName);
  Review response = review.execute();

  return response;
}

Dodatkowe dane

Biblioteka klienta Java umożliwia dostęp do dodatkowych danych pól w przypadku instancji opinii. Aby zwrócić dodatkowe dane o opiniach, użyj tych metod:

  • getReviewId()
  • getComment()
  • getReviewer()
  • getStarRating()
  • getCreateTime()
  • getReviewReply()

Pobieranie opinii z wielu lokalizacji

Pobierz opinie z wielu lokalizacji. Aby zwrócić opinie z wielu lokalizacji w jednym żądaniu, użyj interfejsu accounts.locations.batchGetReviews API.

Aby zwrócić opinie z wielu lokalizacji, użyj tego:

HTTP

POST
https://mybusiness.googleapis.com/v4/accounts/{accountId}/locations:batchGetReviews

{
  "locationNames": [
    string
  ],
  "pageSize": number,
  "pageToken": string,
  "orderBy": string,
  "ignoreRatingOnlyReviews": boolean
}

Odpowiadanie na opinie

Odpowiedz na konkretną opinię lub utwórz nową odpowiedź, jeśli nie istnieje. Aby odpowiedzieć na konkretną opinię powiązaną z lokalizacją, użyj interfejsu accounts.locations.reviews.updateReply API.

Aby odpowiedzieć na konkretną opinię, użyj tego:

HTTP
PUT
https://mybusiness.googleapis.com/v4/accounts/{accountId}/locations/{locationId}/reviews/{reviewId}/reply

{
  "comment": "Thank you for visiting our business!"
}
Java

Ta funkcja używa Mybusiness.accounts.locations.reviews.reply.

/*
 * Updates the reply for a location review.
 * If a review does not exist, creates a new one.
 * @param reviewName Name of the review being responded to.
 * @param comment A string containing the review response body.
 * @throws IOException
 */
private static Reply reply(String reviewName, String comment) throws IOException {

  MyBusiness.Accounts.Locations.Reviews.Reply reply =
    mybusiness().accounts().locations().reviews().reply(reviewName, comment);

  Reply response  = reply.execute();

  return response;
}

Usuwanie odpowiedzi na opinie

Usuń odpowiedź na konkretną opinię. Aby usunąć odpowiedź na konkretną opinię powiązaną z lokalizacją, użyj interfejsu accounts.locations.reviews.deleteReply API.

Aby usunąć konkretną odpowiedź na opinię, użyj tego:

HTTP
DELETE
https://mybusiness.googleapis.com/v4/accounts/{accountId}/locations/{locationId}/reviews/{reviewId}/reply
Java

Ta funkcja używa Mybusiness.Accounts.Locations.Reviews.DeleteReply.

/**
 * Demonstrates deleting a review reply by name.
 * @param reviewName The name (resource path) of the review reply to delete.
 * @return Account The requested review.
 */
private static DeleteReply deleteReply(String reviewName) throws Exception {
  Mybusiness.Accounts.Locations.Reviews.DeleteReply toDelete =
      mybusiness.accounts().locations().reviews().deleteReply(reviewName);
  DeleteReply response = toDelete.execute();

  return response;
}