Cómo migrar los informes desde Content API for Shopping

Puedes usar la API de Merchant Reports para obtener información sobre tus productos, su rendimiento y su entorno competitivo en Google a través de la vista de datos que ofrece.

Puedes usar la API de Merchant Reports para hacer lo siguiente:

A continuación, te mostramos cómo puedes integrar la API de Merchant Reports con tu implementación existente de la Content API for Shopping.

Solicitudes

Usa el siguiente formato de URL de solicitud para la API de Merchant Reports:

POST https://merchantapi.googleapis.com/reports/v1/{PARENT}/reports:search

A continuación, se muestra una comparación de ejemplo entre Content API for Shopping y Merchant Reports API para las solicitudes de search:

Content API API de Merchant
URL https://shoppingcontent.googleapis.com/content/v2.1/{MERCHANT_ID}/reports/search https://merchantapi.googleapis.com/reports/v1/{PARENT}/reports:search
Identificadores {MERCHANT_ID} {PARENT}

Métodos

Puedes consultar la API de Merchant Reports llamando al método ReportService.Search.

Vistas

En la API de Merchant, los nombres de las tablas se cambiaron de CamelCase a snake_case.

MerchantPerformanceView ahora es product_performance_view

A continuación, se muestra una asignación entre los nombres de las tablas en Content API for Shopping y Merchant API:

Content API API de Merchant
MerchantPerformanceView product_performance_view
ProductView product_view
PriceCompetitivenesProductView price_competitiveness_product_view
PriceInsightsProductView price_insights_product_view
BestSellersBrandView best_sellers_brand_view
BestSellersProductClusterView best_sellers_product_cluster_view
CompetitiveVisibilityCompetitorView competitive_visibility_competitor_view
CompetitiveVisibilityTopMerchantView competitive_visibility_top_merchant_view
CompetitiveVisibilityBenchmarkView competitive_visibility_benchmark_view

En la API de Merchant Center, ya no es necesario especificar un prefijo de campo, por ejemplo, segments.offer_id. En su lugar, usa el nombre del campo, offer_id.

A continuación, se muestra una comparación de ejemplo de las búsquedas en Content API for Shopping y en la API de Merchant:

Content API API de Merchant
   SELECT
     segments.offer_id,
     metrics.clicks
   FROM MerchantPerformanceView
   WHERE segments.date DURING LAST_7_DAYS
   
   SELECT
     offer_id,
     clicks
   FROM product_performance_view
   WHERE date DURING LAST_7_DAYS
   

Esta es una respuesta de ejemplo:

Content API API de Merchant
{
  "segments":{
    "offerId":"abc"
  },
  "metrics":{
    "clicks":"123"
  }
}
{
  "productPerformanceView" : {
    "offerId": "abc",
    "clicks": "123"
  }
}

El nombre de la tabla se puede usar como prefijo de campo. Por ejemplo, tanto offer_id como product_performance_view.offer_id se aceptan en la consulta de la API de Merchant.

Rendimiento

Estos son los cambios que se realizaron en la vista de rendimiento de la API de Merchant Reports:

Content API API de Merchant Descripción
segments.program: string marketing_method: string El segmento program se reemplaza por un nuevo campo marketing_method. Consulta los nuevos valores de marketing method para obtener más detalles.
metrics.ctr: double clickThroughRate: double Se cambió el nombre de la métrica ctr a clickThroughRate.
metrics.conversionValueMicros: número entero
segments.currencyCode: cadena
conversionValue: {
object (Price)
}
Los campos de importe en micros y de moneda se combinan en un solo campo con el tipo Price.
metrics.orders,
metrics.orderedItems,
No compatible Las métricas de Comprar con Google no son compatibles con la API de Merchant Reports

Nuevos valores del método de marketing

Esta es la asignación entre los valores de segments.program y marketing_method:

Content API API de Merchant
SHOPPING_ADS ADS
FREE_PRODUCT_LISTING ORGANIC
FREE_LOCAL_PRODUCT_LISTING ORGANIC
BUY_ON_GOOGLE_LISTING No compatible

Producto

Estos son los cambios que se realizaron en la vista del producto en la API de Merchant Reports:

Content API API de Merchant Descripción
productView.id: string id: string El formato del campo cambia de channel:language:targetCountry:offerId a
channel~language~feedLabel~offerId
productView.priceMicros: número entero
productView.currencyCode: cadena
price: {
object (Price)
}
Los campos de importe en micros y de moneda se combinan en un solo campo con el tipo Price.
productView.aggregated_destination_status: string aggregated_reporting_context_status: string Se cambió el nombre del campo aggregated_destination_status a aggregated_reporting_context_status, pero los valores no cambiaron.
productView.item_issues: [
{
object (ItemIssue)
}
]
item_issues: [
{
object (ItemIssue)
}
]
Cambió la definición de ItemIssue
No compatible feedLabel: string Se agregó el campo feedLabel

Información sobre precios

Estos son los cambios que se realizaron en la vista de la información sobre precios en la API de Merchant Reports:

Content API API de Merchant Descripción
productView.id: string id: string El formato del campo cambia de channel:language:targetCountry:offerId a channel~language~feedLabel~offerId.
productView.priceMicros: número entero
productView.currencyCode: cadena
price: {
object (Price)
}
Los campos de importe en micros y de moneda se combinan en un solo campo con el tipo Price.
priceInsights.suggestedPriceMicros: integer
priceInsights.suggestedPriceCurrencyCode: string
suggestedPrice: {
object (Price)
}
Los campos de importe en micros y de moneda se combinan en un solo campo con el tipo Price.
priceInsights.predictedGrossProfitChangeFraction: double
priceInsights.predictedMonthlyGrossProfitChangeMicros: integer
priceInsights.predictedMonthlyGrossProfitChangeCurrencyCode: string
No compatible Los campos relacionados con el cambio en las ganancias brutas no son compatibles con la API de Merchant Reports

Competitividad de precios

Estos son los cambios que se realizaron en la vista de competitividad de los precios de la API de Merchant Reports:

Content API API de Merchant Descripción
productView.id: string id: string El formato del campo cambia de channel:language:targetCountry:offerId a channel~language~feedLabel~offerId.
productView.priceMicros: integer
productView.currencyCode: string
price: {
object (Price)
}
Los campos de importe en micros y de moneda se combinan en un solo campo con el tipo Price.
priceCompetitiveness.countryCode: string reportCountryCode: string Se cambió el nombre del campo countryCode a reportCountryCode.
priceCompetitiveness.benchmarkPriceMicros: integer
priceCompetitiveness.benchmarkPriceCurrencyCode: string
benchmarkPrice: {
object (Price)
}
Los campos de importe en micros y de moneda se combinan en un solo campo con el tipo Price.

Los más vendidos

A continuación, se indican los cambios en las vistas de los más vendidos en la API de Merchant Reports:

Content API API de Merchant Descripción
bestSellers.countryCode: string reportCountryCode: string Se cambió el nombre del campo countryCode a reportCountryCode.
bestSellers.categoryId: int reportCategoryId: int Se cambió el nombre del campo categoryId a reportCategoryId.

Visibilidad respecto de la competencia

A continuación, se indican los cambios en las vistas de visibilidad de competencia en la API de Merchant Reports:

Content API API de Merchant Descripción
competitiveVisibility.countryCode: string reportCountryCode: string Se cambió el nombre del campo countryCode a reportCountryCode.
competitiveVisibility.categoryId: número entero reportCategoryId: número entero Se cambió el nombre del campo categoryId a reportCategoryId.