Sprawdzanie sprzedawców korzystających z interfejsu Merchant API

Opinie o sprzedawcach pomagają użytkownikom znajdować firmy, które oferują klientom obsługę o wysokiej jakości, co pomaga budować zaufanie i umożliwia podejmowanie trafniejszych decyzji zakupowych. Oznacza to, że oceny sklepów mogą pomóc firmom zwiększać skuteczność reklam i bezpłatnych wyników wyszukiwania oraz przyciągać więcej zainteresowanych klientów na ich strony docelowe.

Na tej stronie dowiesz się, jak zarządzać opiniami o sprzedawcach za pomocą interfejsu Merchant API.

Wymagania wstępne

Google potrzebuje od Ciebie określonych informacji. Musisz mieć:

Utworzenie źródła danych

Aby utworzyć plik danych z opiniami o sprzedawcach, użyj metody accounts.dataSources.create. Jeśli masz już plik danych z opiniami o sprzedawcach , użyj accounts.dataSources.get , aby pobrać pole dataSource.name.

Żądanie ma taką postać:

POST https://merchantapi.googleapis.com/datasources/v1/accounts/{ACCOUNT_ID}/dataSources/{DATASOURCE_ID}

Przykład

Ten przykład przedstawia typowe żądanie i odpowiedź.

Żądanie

POST https://merchantapi.googleapis.com/datasources/v1/accounts/123/dataSources {"displayName": "test api feed", "merchantReviewDataSource":{} }

Odpowiedź

{
  "name": "accounts/123/dataSources/1000000573361824",
  "dataSourceId": "1000000573361824",
  "displayName": "test api feed",
  "merchantReviewDataSource": {},
  "input": "API"
}

Więcej informacji znajdziesz w artykule Tworzenie źródła danych z opiniami o produktach.

Tworzenie opinii o sprzedawcy

Aby utworzyć lub zaktualizować opinię o sprzedawcy, możesz użyć accounts.merchantReviews.insert metody. Metoda accounts.merchantReviews.insert przyjmuje jako dane wejściowe zasób merchantreview i nazwę źródła danych. Jeśli operacja się powiedzie, zwraca nową lub zaktualizowaną opinię o sprzedawcy. Do utworzenia opinii o sprzedawcy wymagane jest pole datasource.name.

Postać żądania:

POST https://merchantapi.googleapis.com/reviews/v1alpha/{parent=accounts/*/}merchantReviews:insert

Zapoznaj się z tym przykładowym zasobem opinii o sprzedawcy.

POST https://merchantapi.googleapis.com/reviews/v1alpha/accounts/{ACCOUNT_ID}/merchantReviews:insert?dataSource=accounts/{ACCOUNT_ID}/dataSources/{DATASOURCE_ID}

  merchantReviewId = 'my_own_review'
  merchantReviewAttributes {
    merchantId = 'merchant_id'
    merchantDisplayName = 'merchant_display_name'
    merchantLink = 'publisher_name'
    merchantRatingLink = 'https://www.google.com'
    minRating = 1
    maxRating = 10
    rating = 7.9
    title = 'Amazing Merchant'
    content = 'This is an incredible merchant'
    reviewerId = 'reviewer_id'
    reviewerUsername = 'reviewer_username'
    isAnonymous = false
    collectionMethod = 'AFTER_FULFILLMENT'
    reviewTime = '2024-04-01T00:00:00Z'
    reviewLanguage = 'en'
    reviewCountry = 'US'
  }

Po utworzeniu opinii o sprzedawcy może minąć kilka minut, zanim zostanie ona rozpowszechniona.

Wyświetlanie opinii o sprzedawcach

Aby wyświetlić opinię o sprzedawcy, użyj accounts.merchantReviews.get. To pole jest tylko do odczytu. Wymaga ono Twojego merchantId i identyfikatora opinii o sprzedawcy jako części pola name. Metoda get zwraca odpowiedni zasób opinii o sprzedawcy.

Na przykład:

GET https://merchantapi.googleapis.com/reviews/v1alpha/{name=accounts/*/merchantReviews/*}

Aby pobrać pojedynczy produkt z danego konta Merchant Center, możesz użyć metody google.shopping.merchant.accounts.v1.GetProductRequest, jak pokazano w tym przykładzie.

Java


import com.google.api.gax.core.FixedCredentialsProvider;
import com.google.auth.oauth2.GoogleCredentials;
import com.google.common.io.BaseEncoding;
import com.google.shopping.merchant.products.v1.GetProductRequest;
import com.google.shopping.merchant.products.v1.Product;
import com.google.shopping.merchant.products.v1.ProductsServiceClient;
import com.google.shopping.merchant.products.v1.ProductsServiceSettings;
import java.nio.charset.StandardCharsets;
import shopping.merchant.samples.utils.Authenticator;
import shopping.merchant.samples.utils.Config;

/** This class demonstrates how to get a single product for a given Merchant Center account */
public class GetProductSample {

  // Base64Url encoder/decoder without padding
  private static final BaseEncoding BASE64URL_NOPADDING = BaseEncoding.base64Url().omitPadding();

  // Encodes a string to base64url without padding
  public static String encodeProductId(String productId) {
    return BASE64URL_NOPADDING.encode(productId.getBytes(StandardCharsets.UTF_8));
  }

  public static void getProduct(Config config, String accountId, String productId)
      throws Exception {

    // Obtains OAuth token based on the user's configuration.
    GoogleCredentials credential = new Authenticator().authenticate();

    // Creates service settings using the credentials retrieved above.
    ProductsServiceSettings productsServiceSettings =
        ProductsServiceSettings.newBuilder()
            .setCredentialsProvider(FixedCredentialsProvider.create(credential))
            .build();

    // Calls the API and catches and prints any network failures/errors.
    try (ProductsServiceClient productsServiceClient =
        ProductsServiceClient.create(productsServiceSettings)) {

      // The name has the format: accounts/{account}/products/{productId}
      String name = "accounts/" + accountId + "/products/" + productId;

      // The name has the format: accounts/{account}/products/{productId}
      GetProductRequest request = GetProductRequest.newBuilder().setName(name).build();

      System.out.println("Sending get product request:");
      Product response = productsServiceClient.getProduct(request);

      System.out.println("Retrieved Product below");
      System.out.println(response);
    } catch (Exception e) {
      System.out.println(e);
    }
  }

  public static void main(String[] args) throws Exception {
    Config config = Config.load();
    String accountId = config.getAccountId().toString();

    // The name of the `product`, returned after a `Product.insert` request. We recommend
    // having stored this value in your database to use for all future requests.
    String productId = "en~US~sku123"; // Replace with your actual product ID

    // Uncomment the following line if the product name contains special characters (such as forward
    // slashes) and needs base64url encoding.
    // productId = encodeProductId(productId);

    getProduct(config, accountId, productId);
  }
}

Wyświetlanie listy opinii o sprzedawcach

Aby wyświetlić wszystkie utworzone opinie o sprzedawcach, możesz użyć metody accounts.merchantReviews.list.

GET https://merchantapi.googleapis.com/reviews/v1alpha/accounts/{ACCOUNT_ID}/merchantReviews

Usuwanie opinii o sprzedawcach

Aby usunąć opinię o sprzedawcy, użyj metody accounts.merchantReviews.delete. Podobnie jak metoda accounts.merchantReviews.get, ta metoda wymaga pola name opinii o sprzedawcy zwróconego podczas tworzenia.

Na przykład:

DELETE https://merchantapi.googleapis.com/reviews/v1alpha/{name=accounts/*/merchantReviews/*}

Stan opinii o sprzedawcy

Zasób opinii o sprzedawcy zawiera stan podobny do innych interfejsów API, który jest integralną częścią zasobu i ma taką samą strukturę problemu i miejsca docelowego.