Auto-completion service for retail.
This feature is only available for users who have Retail Search enabled. Please submit a form [here](https://cloud.google.com/contact) to contact cloud sales if you are interested in using Retail Search. v2
Package
@google-cloud/retailConstructors
(constructor)(opts)
constructor(opts?: ClientOptions);
Construct an instance of CompletionServiceClient.
Name | Description |
opts |
ClientOptions
|
Properties
apiEndpoint
static get apiEndpoint(): string;
The DNS address for this API service - same as servicePath(), exists for compatibility reasons.
auth
auth: gax.GoogleAuth;
completionServiceStub
completionServiceStub?: Promise<{
[name: string]: Function;
}>;
descriptors
descriptors: Descriptors;
innerApiCalls
innerApiCalls: {
[name: string]: Function;
};
operationsClient
operationsClient: gax.OperationsClient;
pathTemplates
pathTemplates: {
[name: string]: gax.PathTemplate;
};
port
static get port(): number;
The port for this API service.
scopes
static get scopes(): string[];
The scopes needed to make gRPC calls for every method defined in this service.
servicePath
static get servicePath(): string;
The DNS address for this API service.
warn
warn: (code: string, message: string, warnType?: string) => void;
Methods
catalogPath(project, location, catalog)
catalogPath(project: string, location: string, catalog: string): string;
Return a fully-qualified catalog resource name string.
Name | Description |
project |
string
|
location |
string
|
catalog |
string
|
Type | Description |
string | {string} Resource name string. |
checkImportCompletionDataProgress(name)
checkImportCompletionDataProgress(name: string): Promise<LROperation<protos.google.cloud.retail.v2.ImportCompletionDataResponse, protos.google.cloud.retail.v2.ImportMetadata>>;
Check the status of the long running operation returned by importCompletionData()
.
Name | Description |
name |
string
The operation name that will be passed. |
Type | Description |
Promise<LROperation<protos.google.cloud.retail.v2.ImportCompletionDataResponse, protos.google.cloud.retail.v2.ImportMetadata>> | {Promise} - The promise which resolves to an object. The decoded operation object has result and metadata field to get information from. Please see the [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) for more details and examples. |
/**
* TODO(developer): Uncomment these variables before running the sample.
*/
/**
* Required. The catalog which the suggestions dataset belongs to.
* Format: `projects/1234/locations/global/catalogs/default_catalog`.
*/
// const parent = 'abc123'
/**
* Required. The desired input location of the data.
*/
// const inputConfig = {}
/**
* Pub/Sub topic for receiving notification. If this field is set,
* when the import is finished, a notification will be sent to
* specified Pub/Sub topic. The message data will be JSON string of a
* Operation google.longrunning.Operation.
* Format of the Pub/Sub topic is `projects/{project}/topics/{topic}`.
*/
// const notificationPubsubTopic = 'abc123'
// Imports the Retail library
const {CompletionServiceClient} = require('@google-cloud/retail').v2;
// Instantiates a client
const retailClient = new CompletionServiceClient();
async function callImportCompletionData() {
// Construct request
const request = {
parent,
inputConfig,
};
// Run request
const [operation] = await retailClient.importCompletionData(request);
const [response] = await operation.promise();
console.log(response);
}
callImportCompletionData();
close()
close(): Promise<void>;
Terminate the gRPC channel and close the client.
The client will no longer be usable and all future behavior is undefined.
Type | Description |
Promise<void> | {Promise} A promise that resolves when the client is closed. |
completeQuery(request, options)
completeQuery(request?: protos.google.cloud.retail.v2.ICompleteQueryRequest, options?: CallOptions): Promise<[
protos.google.cloud.retail.v2.ICompleteQueryResponse,
protos.google.cloud.retail.v2.ICompleteQueryRequest | undefined,
{} | undefined
]>;
Completes the specified prefix with keyword suggestions.
This feature is only available for users who have Retail Search enabled. Please submit a form [here](https://cloud.google.com/contact) to contact cloud sales if you are interested in using Retail Search.
Name | Description |
request |
protos.google.cloud.retail.v2.ICompleteQueryRequest
The request object that will be sent. |
options |
CallOptions
Call options. See CallOptions for more details. |
Type | Description |
Promise<[ protos.google.cloud.retail.v2.ICompleteQueryResponse, protos.google.cloud.retail.v2.ICompleteQueryRequest | undefined, {} | undefined ]> | {Promise} - The promise which resolves to an array. The first element of the array is an object representing [CompleteQueryResponse]. Please see the [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) for more details and examples. |
/**
* TODO(developer): Uncomment these variables before running the sample.
*/
/**
* Required. Catalog for which the completion is performed.
* Full resource name of catalog, such as
* `projects/* /locations/global/catalogs/default_catalog`.
*/
// const catalog = 'abc123'
/**
* Required. The query used to generate suggestions.
* The maximum number of allowed characters is 255.
*/
// const query = 'abc123'
/**
* A unique identifier for tracking visitors. For example, this could be
* implemented with an HTTP cookie, which should be able to uniquely identify
* a visitor on a single device. This unique identifier should not change if
* the visitor logs in or out of the website.
* The field must be a UTF-8 encoded string with a length limit of 128
* characters. Otherwise, an INVALID_ARGUMENT error is returned.
*/
// const visitorId = 'abc123'
/**
* The list of languages of the query. This is
* the BCP-47 language code, such as "en-US" or "sr-Latn".
* For more information, see
* Tags for Identifying Languages (https://tools.ietf.org/html/bcp47).
* The maximum number of allowed characters is 255.
* Only "en-US" is currently supported.
*/
// const languageCodes = 'abc123'
/**
* The device type context for completion suggestions.
* It is useful to apply different suggestions on different device types, e.g.
* `DESKTOP`, `MOBILE`. If it is empty, the suggestions are across all device
* types.
* Supported formats:
* * `UNKNOWN_DEVICE_TYPE`
* * `DESKTOP`
* * `MOBILE`
* * A customized string starts with `OTHER_`, e.g. `OTHER_IPHONE`.
*/
// const deviceType = 'abc123'
/**
* Determines which dataset to use for fetching completion. "user-data" will
* use the imported dataset through
* CompletionService.ImportCompletionData google.cloud.retail.v2.CompletionService.ImportCompletionData.
* "cloud-retail" will use the dataset generated by cloud retail based on user
* events. If leave empty, it will use the "user-data".
* Current supported values:
* * user-data
* * cloud-retail
* This option requires additional allowlisting. Before using cloud-retail,
* contact Cloud Retail support team first.
*/
// const dataset = 'abc123'
/**
* Completion max suggestions. If left unset or set to 0, then will fallback
* to the configured value CompletionConfig.max_suggestions .
* The maximum allowed max suggestions is 20. If it is set higher, it will be
* capped by 20.
*/
// const maxSuggestions = 1234
// Imports the Retail library
const {CompletionServiceClient} = require('@google-cloud/retail').v2;
// Instantiates a client
const retailClient = new CompletionServiceClient();
async function callCompleteQuery() {
// Construct request
const request = {
catalog,
query,
};
// Run request
const response = await retailClient.completeQuery(request);
console.log(response);
}
callCompleteQuery();
completeQuery(request, options, callback)
completeQuery(request: protos.google.cloud.retail.v2.ICompleteQueryRequest, options: CallOptions, callback: Callback<protos.google.cloud.retail.v2.ICompleteQueryResponse, protos.google.cloud.retail.v2.ICompleteQueryRequest | null | undefined, {} | null | undefined>): void;
Name | Description |
request |
protos.google.cloud.retail.v2.ICompleteQueryRequest
|
options |
CallOptions
|
callback |
Callback<protos.google.cloud.retail.v2.ICompleteQueryResponse, protos.google.cloud.retail.v2.ICompleteQueryRequest | null | undefined, {} | null | undefined>
|
Type | Description |
void |
completeQuery(request, callback)
completeQuery(request: protos.google.cloud.retail.v2.ICompleteQueryRequest, callback: Callback<protos.google.cloud.retail.v2.ICompleteQueryResponse, protos.google.cloud.retail.v2.ICompleteQueryRequest | null | undefined, {} | null | undefined>): void;
Name | Description |
request |
protos.google.cloud.retail.v2.ICompleteQueryRequest
|
callback |
Callback<protos.google.cloud.retail.v2.ICompleteQueryResponse, protos.google.cloud.retail.v2.ICompleteQueryRequest | null | undefined, {} | null | undefined>
|
Type | Description |
void |
getProjectId()
getProjectId(): Promise<string>;
Type | Description |
Promise<string> |
getProjectId(callback)
getProjectId(callback: Callback<string, undefined, undefined>): void;
Name | Description |
callback |
Callback<string, undefined, undefined>
|
Type | Description |
void |
importCompletionData(request, options)
importCompletionData(request?: protos.google.cloud.retail.v2.IImportCompletionDataRequest, options?: CallOptions): Promise<[
LROperation<protos.google.cloud.retail.v2.IImportCompletionDataResponse, protos.google.cloud.retail.v2.IImportMetadata>,
protos.google.longrunning.IOperation | undefined,
{} | undefined
]>;
Bulk import of processed completion dataset.
Request processing may be synchronous. Partial updating is not supported.
This feature is only available for users who have Retail Search enabled. Please submit a form [here](https://cloud.google.com/contact) to contact cloud sales if you are interested in using Retail Search.
Name | Description |
request |
protos.google.cloud.retail.v2.IImportCompletionDataRequest
The request object that will be sent. |
options |
CallOptions
Call options. See CallOptions for more details. |
Type | Description |
Promise<[ LROperation<protos.google.cloud.retail.v2.IImportCompletionDataResponse, protos.google.cloud.retail.v2.IImportMetadata>, protos.google.longrunning.IOperation | undefined, {} | undefined ]> | {Promise} - The promise which resolves to an array. The first element of the array is an object representing a long running operation. Its |
/**
* TODO(developer): Uncomment these variables before running the sample.
*/
/**
* Required. The catalog which the suggestions dataset belongs to.
* Format: `projects/1234/locations/global/catalogs/default_catalog`.
*/
// const parent = 'abc123'
/**
* Required. The desired input location of the data.
*/
// const inputConfig = {}
/**
* Pub/Sub topic for receiving notification. If this field is set,
* when the import is finished, a notification will be sent to
* specified Pub/Sub topic. The message data will be JSON string of a
* Operation google.longrunning.Operation.
* Format of the Pub/Sub topic is `projects/{project}/topics/{topic}`.
*/
// const notificationPubsubTopic = 'abc123'
// Imports the Retail library
const {CompletionServiceClient} = require('@google-cloud/retail').v2;
// Instantiates a client
const retailClient = new CompletionServiceClient();
async function callImportCompletionData() {
// Construct request
const request = {
parent,
inputConfig,
};
// Run request
const [operation] = await retailClient.importCompletionData(request);
const [response] = await operation.promise();
console.log(response);
}
callImportCompletionData();
importCompletionData(request, options, callback)
importCompletionData(request: protos.google.cloud.retail.v2.IImportCompletionDataRequest, options: CallOptions, callback: Callback<LROperation<protos.google.cloud.retail.v2.IImportCompletionDataResponse, protos.google.cloud.retail.v2.IImportMetadata>, protos.google.longrunning.IOperation | null | undefined, {} | null | undefined>): void;
Name | Description |
request |
protos.google.cloud.retail.v2.IImportCompletionDataRequest
|
options |
CallOptions
|
callback |
Callback<LROperation<protos.google.cloud.retail.v2.IImportCompletionDataResponse, protos.google.cloud.retail.v2.IImportMetadata>, protos.google.longrunning.IOperation | null | undefined, {} | null | undefined>
|
Type | Description |
void |
importCompletionData(request, callback)
importCompletionData(request: protos.google.cloud.retail.v2.IImportCompletionDataRequest, callback: Callback<LROperation<protos.google.cloud.retail.v2.IImportCompletionDataResponse, protos.google.cloud.retail.v2.IImportMetadata>, protos.google.longrunning.IOperation | null | undefined, {} | null | undefined>): void;
Name | Description |
request |
protos.google.cloud.retail.v2.IImportCompletionDataRequest
|
callback |
Callback<LROperation<protos.google.cloud.retail.v2.IImportCompletionDataResponse, protos.google.cloud.retail.v2.IImportMetadata>, protos.google.longrunning.IOperation | null | undefined, {} | null | undefined>
|
Type | Description |
void |
initialize()
initialize(): Promise<{
[name: string]: Function;
}>;
Initialize the client. Performs asynchronous operations (such as authentication) and prepares the client. This function will be called automatically when any class method is called for the first time, but if you need to initialize it before calling an actual method, feel free to call initialize() directly.
You can await on this method if you want to make sure the client is initialized.
Type | Description |
Promise<{ [name: string]: Function; }> | {Promise} A promise that resolves to an authenticated service stub. |
matchBranchFromProductName(productName)
matchBranchFromProductName(productName: string): string | number;
Parse the branch from Product resource.
Name | Description |
productName |
string
A fully-qualified path representing Product resource. |
Type | Description |
string | number | {string} A string representing the branch. |
matchCatalogFromCatalogName(catalogName)
matchCatalogFromCatalogName(catalogName: string): string | number;
Parse the catalog from Catalog resource.
Name | Description |
catalogName |
string
A fully-qualified path representing Catalog resource. |
Type | Description |
string | number | {string} A string representing the catalog. |
matchCatalogFromProductName(productName)
matchCatalogFromProductName(productName: string): string | number;
Parse the catalog from Product resource.
Name | Description |
productName |
string
A fully-qualified path representing Product resource. |
Type | Description |
string | number | {string} A string representing the catalog. |
matchLocationFromCatalogName(catalogName)
matchLocationFromCatalogName(catalogName: string): string | number;
Parse the location from Catalog resource.
Name | Description |
catalogName |
string
A fully-qualified path representing Catalog resource. |
Type | Description |
string | number | {string} A string representing the location. |
matchLocationFromProductName(productName)
matchLocationFromProductName(productName: string): string | number;
Parse the location from Product resource.
Name | Description |
productName |
string
A fully-qualified path representing Product resource. |
Type | Description |
string | number | {string} A string representing the location. |
matchProductFromProductName(productName)
matchProductFromProductName(productName: string): string | number;
Parse the product from Product resource.
Name | Description |
productName |
string
A fully-qualified path representing Product resource. |
Type | Description |
string | number | {string} A string representing the product. |
matchProjectFromCatalogName(catalogName)
matchProjectFromCatalogName(catalogName: string): string | number;
Parse the project from Catalog resource.
Name | Description |
catalogName |
string
A fully-qualified path representing Catalog resource. |
Type | Description |
string | number | {string} A string representing the project. |
matchProjectFromProductName(productName)
matchProjectFromProductName(productName: string): string | number;
Parse the project from Product resource.
Name | Description |
productName |
string
A fully-qualified path representing Product resource. |
Type | Description |
string | number | {string} A string representing the project. |
productPath(project, location, catalog, branch, product)
productPath(project: string, location: string, catalog: string, branch: string, product: string): string;
Return a fully-qualified product resource name string.
Name | Description |
project |
string
|
location |
string
|
catalog |
string
|
branch |
string
|
product |
string
|
Type | Description |
string | {string} Resource name string. |