Utilizzare i dati delle recensioni

Questo tutorial mostra come elencare, restituire, rispondere ed eliminare una recensione. La L'API Google My Business ti offre la possibilità di lavorare con i dati delle recensioni per: eseguire le seguenti operazioni:

Prima di iniziare

Prima di utilizzare l'API Google My Business, devi registrare il tuo l'applicazione e ottenere le credenziali OAuth 2.0. Per informazioni dettagliate su come iniziare con l'API Google My Business, consulta Configurazione di base.

Elenca tutte le recensioni

Elenca tutte le recensioni di una sede per controllarle in blocco. Utilizza la accounts.locations.reviews.list per restituire tutte le recensioni associate a un luogo.

Per restituire tutte le recensioni associate a un luogo, utilizza quanto segue:

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

La seguente funzione utilizza 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 = accountsList.execute();
  List<Reviews> reviews = response.getReviews();

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

Ricevere una recensione specifica

Restituisci una recensione specifica specificando il nome. Utilizza la accounts.locations.reviews.get API per restituire una recensione specifica associata a una località.

Per restituire una recensione specifica, utilizza quanto segue:

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

La seguente funzione utilizza 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;
}

Dati aggiuntivi

La libreria client Java ti consente di accedere a dati di campo aggiuntivi da esaminare di Compute Engine. Utilizza i seguenti metodi per restituire dati aggiuntivi sulle recensioni:

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

Ricevi recensioni da più posizioni

Ricevi recensioni da più posizioni. Utilizza la accounts.locations.batchGetReviews per restituire recensioni da più sedi in un'unica richiesta.

Per restituire recensioni da più sedi, utilizza quanto segue:

HTTP

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

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

Rispondere a una recensione

Rispondi a una recensione specifica o crea una nuova risposta se non ne esiste una. Utilizza la accounts.locations.reviews.updateReply per rispondere a una recensione specifica associata a una località.

Per rispondere a una recensione specifica, utilizza:

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

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

La seguente funzione utilizza 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  = reviewReply.execute();

  return response;
}

Eliminare una risposta alla recensione

Eliminare una risposta a una recensione specifica. Utilizza la accounts.locations.reviews.deleteReply per eliminare una risposta a una recensione specifica associata a una località.

Per eliminare una risposta specifica a una recensione:

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

La seguente funzione utilizza 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;
}