במדריך הזה מוסבר איך להציג, להחזיר ביקורות, להשיב להן ולמחוק אותן. אפשר להשתמש ב-Google My Business API כדי לעבוד עם נתוני הביקורות כדי: לבצע את הפעולות הבאות:
- רשימת כל הביקורות.
- קבלת ביקורת ספציפית.
- מקבלים ביקורות מכמה מיקומים.
- מגיבים לביקורת.
- מחיקת תגובה מביקורת.
לפני שמתחילים
לפני שמשתמשים ב-Google My Business API, צריך לרשום את ולקבל פרטי כניסה של OAuth 2.0. לפרטים על תחילת העבודה בעזרת Google My Business API: הגדרה בסיסית.
הצגת כל הביקורות
כדי לבדוק ביקורות בכמות גדולה, צריך לרשום את כל הביקורות על מיקום מסוים. משתמשים ב accounts.locations.reviews.list API להחזרת כל הביקורות המשויכות למיקום.
כדי להחזיר את כל הביקורות שמשויכות למיקום מסוים, משתמשים באפשרויות הבאות:
GET https://mybusiness.googleapis.com/v4/accounts/{accountId}/locations/{locationId}/reviews
הפונקציה הבאה משתמשת ב-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; }
קבלת ביקורת ספציפית
החזרת ביקורת ספציפית לפי שם. משתמשים ב accounts.locations.reviews.get API להחזרת ביקורת ספציפית שמשויכת למיקום.
כדי להחזיר ביקורת ספציפית, משתמשים בפרטים הבאים:
GET https://mybusiness.googleapis.com/v4/accounts/{accountId}/locations/{locationId}/reviews/{reviewId}
הפונקציה הבאה משתמשת ב-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; }
נתונים נוספים
ספריית הלקוח של Java מספקת גישה לנתוני שדות נוספים לצורך בדיקה במקרים שונים. כדי לקבל נתונים נוספים על ביקורות:
getReviewId()
getComment()
getReviewer()
getStarRating()
getCreateTime()
getReviewReply()
קבלת ביקורות מכמה מיקומים
מקבלים ביקורות מכמה מיקומים. משתמשים ב accounts.locations.batchGetReviews API להחזרת ביקורות מכמה מיקומים בבקשה אחת.
כדי להחזיר ביקורות מכמה מיקומים:
POST https://mybusiness.googleapis.com/v4/accounts/{accountId}/locations:batchGetReviews { "locationNames": [ string ], "pageSize": number, "pageToken": string, "orderBy": string, "ignoreRatingOnlyReviews": boolean }
הוספת תגובה לביקורת
אפשר להשיב לביקורת ספציפית, או ליצור תשובה חדשה אם אין תשובה קיימת. משתמשים ב accounts.locations.reviews.updateReply ממשק API של תגובה לביקורת ספציפית המשויכת למיקום.
כדי להגיב לביקורת ספציפית, תוכלו להשתמש באפשרויות הבאות:
PUT https://mybusiness.googleapis.com/v4/accounts/{accountId}/locations/{locationId}/reviews/{reviewId}/reply { comment: "Thank you for visiting our business!" }
הפונקציה הבאה משתמשת ב-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; }
מחיקת תגובה מביקורת
מחיקת תשובה לביקורת ספציפית. משתמשים ב accounts.locations.reviews.deleteReply ממשק API למחיקת תשובה לביקורת ספציפית שמשויכת למיקום.
כדי למחוק תגובה ספציפית לביקורת, יש להשתמש בפרטים הבאים:
DELETE https://mybusiness.googleapis.com/v4/accounts/{accountId}/locations/{locationId}/reviews/{reviewId}/reply
הפונקציה הבאה משתמשת ב-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; }