-
Notifications
You must be signed in to change notification settings - Fork 587
/
product_service.list_products.js
133 lines (123 loc) · 5.42 KB
/
product_service.list_products.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
// Copyright 2022 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// https://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
// ** This file is automatically generated by gapic-generator-typescript. **
// ** https://github.com/googleapis/gapic-generator-typescript **
// ** All changes to this file may be overwritten. **
'use strict';
function main(parent) {
// [START retail_v2_generated_ProductService_ListProducts_async]
/**
* 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.
* TODO(developer): Uncomment these variables before running the sample.
*/
/**
* Required. The parent branch resource name, such as
* `projects/* /locations/global/catalogs/default_catalog/branches/0`. Use
* `default_branch` as the branch ID, to list products under the default
* branch.
* If the caller does not have permission to list
* Product google.cloud.retail.v2.Product s under this branch, regardless of
* whether or not this branch exists, a PERMISSION_DENIED error is returned.
*/
// const parent = 'abc123'
/**
* Maximum number of Product google.cloud.retail.v2.Product s to return. If
* unspecified, defaults to 100. The maximum allowed value is 1000. Values
* above 1000 will be coerced to 1000.
* If this field is negative, an INVALID_ARGUMENT error is returned.
*/
// const pageSize = 1234
/**
* A page token
* ListProductsResponse.next_page_token google.cloud.retail.v2.ListProductsResponse.next_page_token,
* received from a previous
* ProductService.ListProducts google.cloud.retail.v2.ProductService.ListProducts
* call. Provide this to retrieve the subsequent page.
* When paginating, all other parameters provided to
* ProductService.ListProducts google.cloud.retail.v2.ProductService.ListProducts
* must match the call that provided the page token. Otherwise, an
* INVALID_ARGUMENT error is returned.
*/
// const pageToken = 'abc123'
/**
* A filter to apply on the list results. Supported features:
* * List all the products under the parent branch if
* filter google.cloud.retail.v2.ListProductsRequest.filter is unset.
* * List Product.Type.VARIANT google.cloud.retail.v2.Product.Type.VARIANT
* Product google.cloud.retail.v2.Product s sharing the same
* Product.Type.PRIMARY google.cloud.retail.v2.Product.Type.PRIMARY
* Product google.cloud.retail.v2.Product. For example:
* `primary_product_id = "some_product_id"`
* * List Product google.cloud.retail.v2.Product s bundled in a
* Product.Type.COLLECTION google.cloud.retail.v2.Product.Type.COLLECTION
* Product google.cloud.retail.v2.Product.
* For example:
* `collection_product_id = "some_product_id"`
* * List Product google.cloud.retail.v2.Product s with a partibular type.
* For example:
* `type = "PRIMARY"`
* `type = "VARIANT"`
* `type = "COLLECTION"`
* If the field is unrecognizable, an INVALID_ARGUMENT error is returned.
* If the specified
* Product.Type.PRIMARY google.cloud.retail.v2.Product.Type.PRIMARY
* Product google.cloud.retail.v2.Product or
* Product.Type.COLLECTION google.cloud.retail.v2.Product.Type.COLLECTION
* Product google.cloud.retail.v2.Product does not exist, a NOT_FOUND error
* is returned.
*/
// const filter = 'abc123'
/**
* The fields of Product google.cloud.retail.v2.Product to return in the
* responses. If not set or empty, the following fields are returned:
* * Product.name google.cloud.retail.v2.Product.name
* * Product.id google.cloud.retail.v2.Product.id
* * Product.title google.cloud.retail.v2.Product.title
* * Product.uri google.cloud.retail.v2.Product.uri
* * Product.images google.cloud.retail.v2.Product.images
* * Product.price_info google.cloud.retail.v2.Product.price_info
* * Product.brands google.cloud.retail.v2.Product.brands
* If "*" is provided, all fields are returned.
* Product.name google.cloud.retail.v2.Product.name is always returned no
* matter what mask is set.
* If an unsupported or unknown field is provided, an INVALID_ARGUMENT error
* is returned.
*/
// const readMask = {}
// Imports the Retail library
const {ProductServiceClient} = require('@google-cloud/retail').v2;
// Instantiates a client
const retailClient = new ProductServiceClient();
async function callListProducts() {
// Construct request
const request = {
parent,
};
// Run request
const iterable = await retailClient.listProductsAsync(request);
for await (const response of iterable) {
console.log(response);
}
}
callListProducts();
// [END retail_v2_generated_ProductService_ListProducts_async]
}
process.on('unhandledRejection', err => {
console.error(err.message);
process.exitCode = 1;
});
main(...process.argv.slice(2));