renderproductissues method
- RenderIssuesRequestPayload request,
- String name, {
- String? languageCode,
- String? timeZone,
- String? $fields,
Provide a list of issues for business's product with an issue resolution content and available actions.
This content and actions are meant to be rendered and shown in third-party applications.
request - The metadata request object.
Request parameters:
name - Required. The name of the product. Format:
accounts/{account}/products/{product} The {product} segment is a
unique identifier for the product. This identifier must be unique within a
merchant account and generally follows the structure:
content_language~feed_label~offer_id. Example: en~US~sku123 For legacy
local products, the structure is:
local~content_language~feed_label~offer_id. Example:
local~en~US~sku123 The format of the {product} segment in the URL is
automatically detected by the server, supporting two options: 1. Encoded
Format: The {product} segment is an unpadded base64url encoded string
(RFC 4648 Section 5). The decoded string must result in the
content_language~feed_label~offer_id structure. This encoding MUST be
used if any part of the product identifier (like offer_id) contains
characters such as /, %, or ~. * Example: To represent the product
ID en~US~sku/123, the {product} segment must be the base64url encoding
of this string, which is ZW5-VVMtc2t1LzEyMw. The full resource name for
the product would be accounts/123/products/ZW5-VVMtc2t1LzEyMw. 2.
Plain Format: The {product} segment is the tilde-separated string
content_language~feed_label~offer_id. This format is suitable only when
content_language, feed_label, and offer_id do not contain
URL-problematic characters like /, %, or ~. We recommend using the
Encoded Format for all product IDs to ensure correct parsing,
especially those containing special characters. The presence of tilde
(~) characters in the {product} segment is used to differentiate
between the two formats. Note: For calls to the v1beta version, the plain
format is channel~content_language~feed_label~offer_id, for example:
accounts/123/products/online~en~US~sku123.
Value must have pattern ^accounts/\[^/\]+/products/\[^/\]+$.
languageCode - Optional. The [IETF
BCP-47](https://tools.ietf.org/html/bcp47) language code used to localize
an issue resolution content. If not set, the result will be in default
language en-US.
timeZone - Optional. The IANA
timezone used to localize times in an issue resolution content. For
example 'America/Los_Angeles'. If not set, results will use as a default
UTC.
$fields - Selector specifying which fields to include in a partial
response.
Completes with a RenderProductIssuesResponse.
Completes with a commons.ApiRequestError if the API endpoint returned an error.
If the used http.Client completes with an error when making a REST call,
this method will complete with the same error.
Implementation
async.Future<RenderProductIssuesResponse> renderproductissues(
RenderIssuesRequestPayload request,
core.String name, {
core.String? languageCode,
core.String? timeZone,
core.String? $fields,
}) async {
final body_ = convert.json.encode(request);
final queryParams_ = <core.String, core.List<core.String>>{
'languageCode': ?languageCode == null ? null : [languageCode],
'timeZone': ?timeZone == null ? null : [timeZone],
'fields': ?$fields == null ? null : [$fields],
};
final url_ =
'issueresolution/v1/' +
core.Uri.encodeFull('$name') +
':renderproductissues';
final response_ = await _requester.request(
url_,
'POST',
body: body_,
queryParams: queryParams_,
);
return RenderProductIssuesResponse.fromJson(
response_ as core.Map<core.String, core.dynamic>,
);
}