Revisar vendedores usando a API Merchant

As avaliações sobre comerciantes ajudam as pessoas a encontrar empresas que oferecem experiências de alta qualidade para os clientes, o que gera confiança e viabiliza decisões de compra mais fundamentadas. Por outro lado, as classificações da loja ajudam as empresas a melhorar a performance dos anúncios e das listagens orgânicas e atrair clientes mais qualificados para as páginas de destino delas.

Esta página explica como gerenciar as avaliações sobre comerciantes usando a API Merchant.

Pré-requisitos

O Google precisa que você forneça informações específicas. É necessário ter o seguinte:

Criar uma fonte de dados

Use o accounts.dataSources.create para criar um feed de avaliações sobre comerciantes. Se um feed de avaliações sobre comerciantes já estiver disponível, use accounts.dataSources.get para buscar o campo dataSource.name.

O formato da solicitação é o seguinte:

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

Exemplo

O exemplo mostra uma solicitação e resposta típicas.

Solicitação

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

Resposta

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

Para mais informações, consulte Criar uma fonte de dados de avaliações de produtos.

Criar uma avaliação sobre o comerciante

Você pode usar o accounts.merchantReviews.insert método para criar ou atualizar uma avaliação sobre o comerciante. O método accounts.merchantReviews.insert usa um recurso merchantreview e um nome de fonte de dados como entrada. Ele retorna a avaliação sobre o comerciante nova ou atualizada, se for bem-sucedida. Para criar uma avaliação sobre o comerciante, é necessário datasource.name.

O formato da solicitação:

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

Estude o exemplo de avaliação sobre o comerciante a seguir para referência.

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'
  }

Após a criação da avaliação sobre o comerciante, pode levar alguns minutos para que ela seja propagada.

Ver avaliações sobre comerciantes

Para ver uma avaliação sobre o comerciante, use accounts.merchantReviews.get. Ele é somente leitura. Ele exige seu merchantId e o ID da avaliação sobre o comerciante como parte do campo de nome. O método "get" retorna o recurso de avaliação sobre o comerciante correspondente.

Exemplo:

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

Para recuperar um único produto de uma determinada conta do Merchant Center, use o google.shopping.merchant.accounts.v1.GetProductRequest método, conforme mostrado no exemplo a seguir.

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);
  }
}

Listar avaliações sobre comerciantes

Você pode usar o accounts.merchantReviews.list método para ver todas as avaliações sobre comerciantes criadas.

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

Excluir avaliações sobre comerciantes

Para excluir uma avaliação sobre o comerciante, use accounts.merchantReviews.delete. Semelhante ao método accounts.merchantReviews.get, esse método exige o campo de nome da avaliação sobre o comerciante retornado durante a criação.

Exemplo:

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

Status da avaliação sobre o comerciante

O recurso de avaliação sobre o comerciante contém o status semelhante a outras APIs, que é a parte integrante do recurso e segue a mesma estrutura de problema e destino.