A client to Merchant API
The interfaces provided are listed below, along with usage samples.
ReportServiceClient
Service Description: Service for retrieving reports and insights about your products, their performance, and their competitive environment on Google.
Sample for ReportServiceClient:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (ReportServiceClient reportServiceClient = ReportServiceClient.create()) {
String parent = "parent-995424086";
for (ReportRow element : reportServiceClient.search(parent).iterateAll()) {
// doThingsWith(element);
}
}
Classes
BestSellersBrandView
Fields available for query in best_sellers_brand_view
table.
Best sellers report with top brands.
Values are only set for fields requested explicitly in the request's search query.
Protobuf type google.shopping.merchant.reports.v1beta.BestSellersBrandView
BestSellersBrandView.Builder
Fields available for query in best_sellers_brand_view
table.
Best sellers report with top brands.
Values are only set for fields requested explicitly in the request's search query.
Protobuf type google.shopping.merchant.reports.v1beta.BestSellersBrandView
BestSellersProductClusterView
Fields available for query in best_sellers_product_cluster_view
table.
Best sellers report with top product clusters. A product cluster is a grouping for different offers and variants that represent the same product, for example, Google Pixel 7.
Values are only set for fields requested explicitly in the request's search query.
Protobuf type google.shopping.merchant.reports.v1beta.BestSellersProductClusterView
BestSellersProductClusterView.Builder
Fields available for query in best_sellers_product_cluster_view
table.
Best sellers report with top product clusters. A product cluster is a grouping for different offers and variants that represent the same product, for example, Google Pixel 7.
Values are only set for fields requested explicitly in the request's search query.
Protobuf type google.shopping.merchant.reports.v1beta.BestSellersProductClusterView
CompetitiveVisibilityBenchmarkView
Fields available for query in competitive_visibility_benchmark_view
table.
Competitive visibility report with the category benchmark.
Values are only set for fields requested explicitly in the request's search query.
Protobuf type google.shopping.merchant.reports.v1beta.CompetitiveVisibilityBenchmarkView
CompetitiveVisibilityBenchmarkView.Builder
Fields available for query in competitive_visibility_benchmark_view
table.
Competitive visibility report with the category benchmark.
Values are only set for fields requested explicitly in the request's search query.
Protobuf type
google.shopping.merchant.reports.v1beta.CompetitiveVisibilityBenchmarkView
CompetitiveVisibilityCompetitorView
Fields available for query in competitive_visibility_competitor_view
table.
Competitive visibility report with businesses with similar visibility.
Values are only set for fields requested explicitly in the request's search query.
Protobuf type google.shopping.merchant.reports.v1beta.CompetitiveVisibilityCompetitorView
CompetitiveVisibilityCompetitorView.Builder
Fields available for query in competitive_visibility_competitor_view
table.
Competitive visibility report with businesses with similar visibility.
Values are only set for fields requested explicitly in the request's search query.
Protobuf type
google.shopping.merchant.reports.v1beta.CompetitiveVisibilityCompetitorView
CompetitiveVisibilityTopMerchantView
Fields available for query in competitive_visibility_top_merchant_view
table.
Competitive visibility report with business with highest visibility.
Values are only set for fields requested explicitly in the request's search query.
Protobuf type
google.shopping.merchant.reports.v1beta.CompetitiveVisibilityTopMerchantView
CompetitiveVisibilityTopMerchantView.Builder
Fields available for query in competitive_visibility_top_merchant_view
table.
Competitive visibility report with business with highest visibility.
Values are only set for fields requested explicitly in the request's search query.
Protobuf type
google.shopping.merchant.reports.v1beta.CompetitiveVisibilityTopMerchantView
NonProductPerformanceView
Fields available for query in non_product_performance_view
table.
Performance data on images and website links leading to your non-product
website pages. This includes performance metrics (for example, clicks
)
and dimensions according to which performance metrics are segmented (for
example, date
).
Segment fields cannot be selected in queries without also selecting at least one metric field.
Values are only set for fields requested explicitly in the request's search query.
Protobuf type google.shopping.merchant.reports.v1beta.NonProductPerformanceView
NonProductPerformanceView.Builder
Fields available for query in non_product_performance_view
table.
Performance data on images and website links leading to your non-product
website pages. This includes performance metrics (for example, clicks
)
and dimensions according to which performance metrics are segmented (for
example, date
).
Segment fields cannot be selected in queries without also selecting at least one metric field.
Values are only set for fields requested explicitly in the request's search query.
Protobuf type google.shopping.merchant.reports.v1beta.NonProductPerformanceView
PriceCompetitivenessProductView
Fields available for query in price_competitiveness_product_view
table.
Price competitiveness report.
Values are only set for fields requested explicitly in the request's search query.
Protobuf type google.shopping.merchant.reports.v1beta.PriceCompetitivenessProductView
PriceCompetitivenessProductView.Builder
Fields available for query in price_competitiveness_product_view
table.
Price competitiveness report.
Values are only set for fields requested explicitly in the request's search query.
Protobuf type google.shopping.merchant.reports.v1beta.PriceCompetitivenessProductView
PriceInsightsProductView
Fields available for query in price_insights_product_view
table.
Price insights report.
Values are only set for fields requested explicitly in the request's search query.
Protobuf type google.shopping.merchant.reports.v1beta.PriceInsightsProductView
PriceInsightsProductView.Builder
Fields available for query in price_insights_product_view
table.
Price insights report.
Values are only set for fields requested explicitly in the request's search query.
Protobuf type google.shopping.merchant.reports.v1beta.PriceInsightsProductView
ProductPerformanceView
Fields available for query in product_performance_view
table.
Product performance data for your account, including performance metrics (for
example, clicks
) and dimensions according to which performance metrics are
segmented (for example, offer_id
). Values of product dimensions, such as
offer_id
, reflect the state of a product at the time of the impression.
Segment fields cannot be selected in queries without also selecting at least one metric field.
Values are only set for fields requested explicitly in the request's search query.
Protobuf type google.shopping.merchant.reports.v1beta.ProductPerformanceView
ProductPerformanceView.Builder
Fields available for query in product_performance_view
table.
Product performance data for your account, including performance metrics (for
example, clicks
) and dimensions according to which performance metrics are
segmented (for example, offer_id
). Values of product dimensions, such as
offer_id
, reflect the state of a product at the time of the impression.
Segment fields cannot be selected in queries without also selecting at least one metric field.
Values are only set for fields requested explicitly in the request's search query.
Protobuf type google.shopping.merchant.reports.v1beta.ProductPerformanceView
ProductView
Fields available for query in product_view
table.
Products in the current inventory. Products in this table are the same as in
Products sub-API but not all product attributes from Products sub-API are
available for query in this table. In contrast to Products sub-API, this
table allows to filter the returned list of products by product attributes.
To retrieve a single product by id
or list all products, Products sub-API
should be used.
Values are only set for fields requested explicitly in the request's search query.
Protobuf type google.shopping.merchant.reports.v1beta.ProductView
ProductView.Builder
Fields available for query in product_view
table.
Products in the current inventory. Products in this table are the same as in
Products sub-API but not all product attributes from Products sub-API are
available for query in this table. In contrast to Products sub-API, this
table allows to filter the returned list of products by product attributes.
To retrieve a single product by id
or list all products, Products sub-API
should be used.
Values are only set for fields requested explicitly in the request's search query.
Protobuf type google.shopping.merchant.reports.v1beta.ProductView
ProductView.ItemIssue
Item issue associated with the product.
Protobuf type google.shopping.merchant.reports.v1beta.ProductView.ItemIssue
ProductView.ItemIssue.Builder
Item issue associated with the product.
Protobuf type google.shopping.merchant.reports.v1beta.ProductView.ItemIssue
ProductView.ItemIssue.ItemIssueSeverity
How the issue affects the serving of the product.
Protobuf type
google.shopping.merchant.reports.v1beta.ProductView.ItemIssue.ItemIssueSeverity
ProductView.ItemIssue.ItemIssueSeverity.Builder
How the issue affects the serving of the product.
Protobuf type
google.shopping.merchant.reports.v1beta.ProductView.ItemIssue.ItemIssueSeverity
ProductView.ItemIssue.ItemIssueSeverity.IssueSeverityPerDestination
Issue severity per destination.
Protobuf type
google.shopping.merchant.reports.v1beta.ProductView.ItemIssue.ItemIssueSeverity.IssueSeverityPerDestination
ProductView.ItemIssue.ItemIssueSeverity.IssueSeverityPerDestination.Builder
Issue severity per destination.
Protobuf type
google.shopping.merchant.reports.v1beta.ProductView.ItemIssue.ItemIssueSeverity.IssueSeverityPerDestination
ProductView.ItemIssue.ItemIssueType
Issue type.
Protobuf type
google.shopping.merchant.reports.v1beta.ProductView.ItemIssue.ItemIssueType
ProductView.ItemIssue.ItemIssueType.Builder
Issue type.
Protobuf type
google.shopping.merchant.reports.v1beta.ProductView.ItemIssue.ItemIssueType
ReportRow
Result row returned from the search query.
Only the message corresponding to the queried table is populated in the response. Within the populated message, only the fields requested explicitly in the query are populated.
Protobuf type google.shopping.merchant.reports.v1beta.ReportRow
ReportRow.Builder
Result row returned from the search query.
Only the message corresponding to the queried table is populated in the response. Within the populated message, only the fields requested explicitly in the query are populated.
Protobuf type google.shopping.merchant.reports.v1beta.ReportRow
ReportServiceClient
Service Description: Service for retrieving reports and insights about your products, their performance, and their competitive environment on Google.
This class provides the ability to make remote calls to the backing service through method calls that map to API methods. Sample code to get started:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (ReportServiceClient reportServiceClient = ReportServiceClient.create()) {
String parent = "parent-995424086";
for (ReportRow element : reportServiceClient.search(parent).iterateAll()) {
// doThingsWith(element);
}
}
Note: close() needs to be called on the ReportServiceClient object to clean up resources such as threads. In the example above, try-with-resources is used, which automatically calls close().
The surface of this class includes several types of Java methods for each of the API's methods:
- A "flattened" method. With this type of method, the fields of the request type have been converted into function parameters. It may be the case that not all fields are available as parameters, and not every API method will have a flattened method entry point.
- A "request object" method. This type of method only takes one parameter, a request object, which must be constructed before the call. Not every API method will have a request object method.
- A "callable" method. This type of method takes no parameters and returns an immutable API callable object, which can be used to initiate calls to the service.
See the individual methods for example code.
Many parameters require resource names to be formatted in a particular way. To assist with these names, this class includes a format method for each type of name, and additionally a parse method to extract the individual identifiers contained within names that are returned.
This class can be customized by passing in a custom instance of ReportServiceSettings to create(). For example:
To customize credentials:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
ReportServiceSettings reportServiceSettings =
ReportServiceSettings.newBuilder()
.setCredentialsProvider(FixedCredentialsProvider.create(myCredentials))
.build();
ReportServiceClient reportServiceClient = ReportServiceClient.create(reportServiceSettings);
To customize the endpoint:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
ReportServiceSettings reportServiceSettings =
ReportServiceSettings.newBuilder().setEndpoint(myEndpoint).build();
ReportServiceClient reportServiceClient = ReportServiceClient.create(reportServiceSettings);
To use REST (HTTP1.1/JSON) transport (instead of gRPC) for sending and receiving requests over the wire:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
ReportServiceSettings reportServiceSettings =
ReportServiceSettings.newHttpJsonBuilder().build();
ReportServiceClient reportServiceClient = ReportServiceClient.create(reportServiceSettings);
Please refer to the GitHub repository's samples for more quickstart code snippets.
ReportServiceClient.SearchFixedSizeCollection
ReportServiceClient.SearchPage
ReportServiceClient.SearchPagedResponse
ReportServiceGrpc
Service for retrieving reports and insights about your products, their performance, and their competitive environment on Google.
ReportServiceGrpc.ReportServiceBlockingStub
A stub to allow clients to do synchronous rpc calls to service ReportService.
Service for retrieving reports and insights about your products, their performance, and their competitive environment on Google.
ReportServiceGrpc.ReportServiceFutureStub
A stub to allow clients to do ListenableFuture-style rpc calls to service ReportService.
Service for retrieving reports and insights about your products, their performance, and their competitive environment on Google.
ReportServiceGrpc.ReportServiceImplBase
Base class for the server implementation of the service ReportService.
Service for retrieving reports and insights about your products, their performance, and their competitive environment on Google.
ReportServiceGrpc.ReportServiceStub
A stub to allow clients to do asynchronous rpc calls to service ReportService.
Service for retrieving reports and insights about your products, their performance, and their competitive environment on Google.
ReportServiceSettings
Settings class to configure an instance of ReportServiceClient.
The default instance has everything set to sensible defaults:
- The default service address (merchantapi.googleapis.com) and default port (443) are used.
- Credentials are acquired automatically through Application Default Credentials.
- Retries are configured for idempotent methods but not for non-idempotent methods.
The builder of this class is recursive, so contained classes are themselves builders. When build() is called, the tree of builders is called to create the complete settings object.
For example, to set the total timeout of search to 30 seconds:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
ReportServiceSettings.Builder reportServiceSettingsBuilder = ReportServiceSettings.newBuilder();
reportServiceSettingsBuilder
.searchSettings()
.setRetrySettings(
reportServiceSettingsBuilder
.searchSettings()
.getRetrySettings()
.toBuilder()
.setTotalTimeout(Duration.ofSeconds(30))
.build());
ReportServiceSettings reportServiceSettings = reportServiceSettingsBuilder.build();
ReportServiceSettings.Builder
Builder for ReportServiceSettings.
ReportsProto
SearchRequest
Request message for the ReportService.Search
method.
Protobuf type google.shopping.merchant.reports.v1beta.SearchRequest
SearchRequest.Builder
Request message for the ReportService.Search
method.
Protobuf type google.shopping.merchant.reports.v1beta.SearchRequest
SearchResponse
Response message for the ReportService.Search
method.
Protobuf type google.shopping.merchant.reports.v1beta.SearchResponse
SearchResponse.Builder
Response message for the ReportService.Search
method.
Protobuf type google.shopping.merchant.reports.v1beta.SearchResponse
Interfaces
BestSellersBrandViewOrBuilder
BestSellersProductClusterViewOrBuilder
CompetitiveVisibilityBenchmarkViewOrBuilder
CompetitiveVisibilityCompetitorViewOrBuilder
CompetitiveVisibilityTopMerchantViewOrBuilder
NonProductPerformanceViewOrBuilder
PriceCompetitivenessProductViewOrBuilder
PriceInsightsProductViewOrBuilder
ProductPerformanceViewOrBuilder
ProductView.ItemIssue.ItemIssueSeverity.IssueSeverityPerDestinationOrBuilder
ProductView.ItemIssue.ItemIssueSeverityOrBuilder
ProductView.ItemIssue.ItemIssueTypeOrBuilder
ProductView.ItemIssueOrBuilder
ProductViewOrBuilder
ReportRowOrBuilder
ReportServiceGrpc.AsyncService
Service for retrieving reports and insights about your products, their performance, and their competitive environment on Google.
SearchRequestOrBuilder
SearchResponseOrBuilder
Enums
BestSellersProductClusterView.InventoryStatus
Status of the product cluster or brand in your inventory.
Protobuf enum
google.shopping.merchant.reports.v1beta.BestSellersProductClusterView.InventoryStatus
ProductView.AggregatedDestinationStatus
Status of the product aggregated for all destinations.
Here's an example of how the aggregated destination status is computed:
Free listings | Shopping Ads | Status |
---|---|---|
Approved | Approved | ELIGIBLE |
Approved | Pending | ELIGIBLE |
Approved | Disapproved | ELIGIBLE_LIMITED |
Pending | Pending | PENDING |
Disapproved | Disapproved | NOT_ELIGIBLE_OR_DISAPPROVED |
Protobuf enum
google.shopping.merchant.reports.v1beta.ProductView.AggregatedDestinationStatus
ProductView.ItemIssue.ItemIssueResolution
How to resolve the issue.
Protobuf enum
google.shopping.merchant.reports.v1beta.ProductView.ItemIssue.ItemIssueResolution
ProductView.ItemIssue.ItemIssueSeverity.AggregatedIssueSeverity
Issue severity aggregated for all destinations.
Protobuf enum
google.shopping.merchant.reports.v1beta.ProductView.ItemIssue.ItemIssueSeverity.AggregatedIssueSeverity
RelativeDemand
Relative demand of a product cluster or brand in the Best sellers report.
Protobuf enum google.shopping.merchant.reports.v1beta.RelativeDemand
RelativeDemandChangeType
Relative demand of a product cluster or brand in the Best sellers report compared to the previous time period.
Protobuf enum google.shopping.merchant.reports.v1beta.RelativeDemandChangeType
ReportGranularity
Granularity of the Best sellers report. Best sellers reports are computed over a week and a month timeframe.
Protobuf enum google.shopping.merchant.reports.v1beta.ReportGranularity
TrafficSource
Traffic source of impressions in the Competitive visibility report.
Protobuf enum google.shopping.merchant.reports.v1beta.TrafficSource