chore: enable gapicv2 and annotate protos for recommendationengine/v1beta1 API

Committer: @miraleung
PiperOrigin-RevId: 309426927
This commit is contained in:
Google APIs 2020-05-01 10:08:56 -07:00 committed by Copybara-Service
parent f78da0d54c
commit aaff764c18
9 changed files with 801 additions and 582 deletions

View File

@ -49,6 +49,7 @@ proto_library(
"import.proto",
"prediction_apikey_registry_service.proto",
"prediction_service.proto",
"recommendationengine_resources.proto",
"user_event.proto",
"user_event_service.proto",
],
@ -57,6 +58,7 @@ proto_library(
"//google/api:client_proto",
"//google/api:field_behavior_proto",
"//google/api:httpbody_proto",
"//google/api:resource_proto",
"//google/longrunning:operations_proto",
"//google/rpc:status_proto",
"//google/type:date_proto",
@ -182,6 +184,7 @@ moved_proto_library(
"//google/api:client_proto",
"//google/api:field_behavior_proto",
"//google/api:httpbody_proto",
"//google/api:resource_proto",
"//google/longrunning:operations_proto",
"//google/rpc:status_proto",
"//google/type:date_proto",

View File

@ -19,8 +19,10 @@ package google.cloud.recommendationengine.v1beta1;
import "google/api/annotations.proto";
import "google/api/client.proto";
import "google/api/field_behavior.proto";
import "google/api/resource.proto";
import "google/cloud/recommendationengine/v1beta1/catalog.proto";
import "google/cloud/recommendationengine/v1beta1/import.proto";
import "google/cloud/recommendationengine/v1beta1/recommendationengine_resources.proto";
import "google/longrunning/operations.proto";
import "google/protobuf/empty.proto";
import "google/protobuf/field_mask.proto";
@ -36,7 +38,8 @@ option ruby_package = "Google::Cloud::RecommendationEngine::V1beta1";
// Service for ingesting catalog information of the customer's website.
service CatalogService {
option (google.api.default_host) = "recommendationengine.googleapis.com";
option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform";
option (google.api.oauth_scopes) =
"https://www.googleapis.com/auth/cloud-platform";
// Creates a catalog item.
rpc CreateCatalogItem(CreateCatalogItemRequest) returns (CatalogItem) {
@ -44,6 +47,7 @@ service CatalogService {
post: "/v1beta1/{parent=projects/*/locations/*/catalogs/*}/catalogItems"
body: "catalog_item"
};
option (google.api.method_signature) = "parent,catalog_item";
}
// Gets a specific catalog item.
@ -55,10 +59,12 @@ service CatalogService {
}
// Gets a list of catalog items.
rpc ListCatalogItems(ListCatalogItemsRequest) returns (ListCatalogItemsResponse) {
rpc ListCatalogItems(ListCatalogItemsRequest)
returns (ListCatalogItemsResponse) {
option (google.api.http) = {
get: "/v1beta1/{parent=projects/*/locations/*/catalogs/*}/catalogItems"
};
option (google.api.method_signature) = "parent,filter";
}
// Updates a catalog item. Partial updating is supported. Non-existing
@ -68,11 +74,12 @@ service CatalogService {
patch: "/v1beta1/{name=projects/*/locations/*/catalogs/*/catalogItems/**}"
body: "catalog_item"
};
option (google.api.method_signature) = "catalog_item,update_mask";
option (google.api.method_signature) = "name,catalog_item,update_mask";
}
// Deletes a catalog item.
rpc DeleteCatalogItem(DeleteCatalogItemRequest) returns (google.protobuf.Empty) {
rpc DeleteCatalogItem(DeleteCatalogItemRequest)
returns (google.protobuf.Empty) {
option (google.api.http) = {
delete: "/v1beta1/{name=projects/*/locations/*/catalogs/*/catalogItems/**}"
};
@ -85,7 +92,8 @@ service CatalogService {
//
// Operation.response is of type ImportResponse. Note that it is
// possible for a subset of the items to be successfully updated.
rpc ImportCatalogItems(ImportCatalogItemsRequest) returns (google.longrunning.Operation) {
rpc ImportCatalogItems(ImportCatalogItemsRequest)
returns (google.longrunning.Operation) {
option (google.api.http) = {
post: "/v1beta1/{parent=projects/*/locations/*/catalogs/*}/catalogItems:import"
body: "*"
@ -94,6 +102,8 @@ service CatalogService {
response_type: "google.cloud.recommendationengine.v1beta1.ImportCatalogItemsResponse"
metadata_type: "google.cloud.recommendationengine.v1beta1.ImportMetadata"
};
option (google.api.method_signature) =
"parent,request_id,input_config,errors_config";
}
}
@ -101,7 +111,12 @@ service CatalogService {
message CreateCatalogItemRequest {
// Required. The parent catalog resource name, such as
// "projects/*/locations/global/catalogs/default_catalog".
string parent = 1 [(google.api.field_behavior) = REQUIRED];
string parent = 1 [
(google.api.field_behavior) = REQUIRED,
(google.api.resource_reference) = {
type: "recommendationengine.googleapis.com/Catalog"
}
];
// Required. The catalog item to create.
CatalogItem catalog_item = 2 [(google.api.field_behavior) = REQUIRED];
@ -111,14 +126,24 @@ message CreateCatalogItemRequest {
message GetCatalogItemRequest {
// Required. Full resource name of catalog item, such as
// "projects/*/locations/global/catalogs/default_catalog/catalogitems/some_catalog_item_id".
string name = 1 [(google.api.field_behavior) = REQUIRED];
string name = 1 [
(google.api.field_behavior) = REQUIRED,
(google.api.resource_reference) = {
type: "recommendationengine.googleapis.com/CatalogItemPath"
}
];
}
// Request message for ListCatalogItems method.
message ListCatalogItemsRequest {
// Required. The parent catalog resource name, such as
// "projects/*/locations/global/catalogs/default_catalog".
string parent = 1 [(google.api.field_behavior) = REQUIRED];
string parent = 1 [
(google.api.field_behavior) = REQUIRED,
(google.api.resource_reference) = {
type: "recommendationengine.googleapis.com/Catalog"
}
];
// Optional. Maximum number of results to return per page. If zero, the
// service will choose a reasonable default.
@ -145,7 +170,12 @@ message ListCatalogItemsResponse {
message UpdateCatalogItemRequest {
// Required. Full resource name of catalog item, such as
// "projects/*/locations/global/catalogs/default_catalog/catalogItems/some_catalog_item_id".
string name = 1 [(google.api.field_behavior) = REQUIRED];
string name = 1 [
(google.api.field_behavior) = REQUIRED,
(google.api.resource_reference) = {
type: "recommendationengine.googleapis.com/CatalogItemPath"
}
];
// Required. The catalog item to update/create. The 'catalog_item_id' field
// has to match that in the 'name'.
@ -153,12 +183,17 @@ message UpdateCatalogItemRequest {
// Optional. Indicates which fields in the provided 'item' to update. If not
// set, will by default update all fields.
google.protobuf.FieldMask update_mask = 3 [(google.api.field_behavior) = OPTIONAL];
google.protobuf.FieldMask update_mask = 3;
}
// Request message for DeleteCatalogItem method.
message DeleteCatalogItemRequest {
// Required. Full resource name of catalog item, such as
// "projects/*/locations/global/catalogs/default_catalog/catalogItems/some_catalog_item_id".
string name = 1 [(google.api.field_behavior) = REQUIRED];
string name = 1 [
(google.api.field_behavior) = REQUIRED,
(google.api.resource_reference) = {
type: "recommendationengine.googleapis.com/CatalogItemPath"
}
];
}

View File

@ -17,8 +17,10 @@ syntax = "proto3";
package google.cloud.recommendationengine.v1beta1;
import "google/api/field_behavior.proto";
import "google/api/resource.proto";
import "google/cloud/recommendationengine/v1beta1/catalog.proto";
import "google/cloud/recommendationengine/v1beta1/user_event.proto";
import "google/cloud/recommendationengine/v1beta1/recommendationengine_resources.proto";
import "google/protobuf/timestamp.proto";
import "google/rpc/status.proto";
import "google/api/annotations.proto";
@ -48,7 +50,8 @@ message GcsSource {
message CatalogInlineSource {
// Optional. A list of catalog items to update/create. Recommended max of 10k
// items.
repeated CatalogItem catalog_items = 1 [(google.api.field_behavior) = OPTIONAL];
repeated CatalogItem catalog_items = 1
[(google.api.field_behavior) = OPTIONAL];
}
// The inline source for the input config for ImportUserEvents method.
@ -72,7 +75,12 @@ message ImportErrorsConfig {
// Request message for Import methods.
message ImportCatalogItemsRequest {
// Required. "projects/1234/locations/global/catalogs/default_catalog"
string parent = 1 [(google.api.field_behavior) = REQUIRED];
string parent = 1 [
(google.api.field_behavior) = REQUIRED,
(google.api.resource_reference) = {
type: "recommendationengine.googleapis.com/Catalog"
}
];
// Optional. Unique identifier provided by client, within the ancestor
// dataset scope. Ensures idempotency and used for request deduplication.
@ -89,8 +97,14 @@ message ImportCatalogItemsRequest {
// Request message for the ImportUserEvents request.
message ImportUserEventsRequest {
// Required. "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store"
string parent = 1 [(google.api.field_behavior) = REQUIRED];
// Required.
// "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store"
string parent = 1 [
(google.api.field_behavior) = REQUIRED,
(google.api.resource_reference) = {
type: "recommendationengine.googleapis.com/EventStore"
}
];
// Optional. Unique identifier provided by client, within the ancestor
// dataset scope. Ensures idempotency for expensive long running operations.

View File

@ -18,8 +18,10 @@ package google.cloud.recommendationengine.v1beta1;
import "google/api/annotations.proto";
import "google/api/field_behavior.proto";
import "google/api/resource.proto";
import "google/protobuf/empty.proto";
import "google/api/client.proto";
import "google/cloud/recommendationengine/v1beta1/recommendationengine_resources.proto";
option csharp_namespace = "Google.Cloud.RecommendationEngine.V1Beta1";
option go_package = "google.golang.org/genproto/googleapis/cloud/recommendationengine/v1beta1;recommendationengine";
@ -36,28 +38,39 @@ option ruby_package = "Google::Cloud::RecommendationEngine::V1beta1";
// key. You can register up to 20 API keys per project.
service PredictionApiKeyRegistry {
option (google.api.default_host) = "recommendationengine.googleapis.com";
option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform";
option (google.api.oauth_scopes) =
"https://www.googleapis.com/auth/cloud-platform";
// Register an API key for use with predict method.
rpc CreatePredictionApiKeyRegistration(CreatePredictionApiKeyRegistrationRequest) returns (PredictionApiKeyRegistration) {
rpc CreatePredictionApiKeyRegistration(
CreatePredictionApiKeyRegistrationRequest)
returns (PredictionApiKeyRegistration) {
option (google.api.http) = {
post: "/v1beta1/{parent=projects/*/locations/*/catalogs/*/eventStores/*}/predictionApiKeyRegistrations"
body: "*"
};
option (google.api.method_signature) =
"parent,prediction_api_key_registration";
}
// List the registered apiKeys for use with predict method.
rpc ListPredictionApiKeyRegistrations(ListPredictionApiKeyRegistrationsRequest) returns (ListPredictionApiKeyRegistrationsResponse) {
rpc ListPredictionApiKeyRegistrations(
ListPredictionApiKeyRegistrationsRequest)
returns (ListPredictionApiKeyRegistrationsResponse) {
option (google.api.http) = {
get: "/v1beta1/{parent=projects/*/locations/*/catalogs/*/eventStores/*}/predictionApiKeyRegistrations"
};
option (google.api.method_signature) = "parent";
}
// Unregister an apiKey from using for predict method.
rpc DeletePredictionApiKeyRegistration(DeletePredictionApiKeyRegistrationRequest) returns (google.protobuf.Empty) {
rpc DeletePredictionApiKeyRegistration(
DeletePredictionApiKeyRegistrationRequest)
returns (google.protobuf.Empty) {
option (google.api.http) = {
delete: "/v1beta1/{name=projects/*/locations/*/catalogs/*/eventStores/*/predictionApiKeyRegistrations/*}"
};
option (google.api.method_signature) = "name";
}
}
@ -71,17 +84,28 @@ message PredictionApiKeyRegistration {
message CreatePredictionApiKeyRegistrationRequest {
// Required. The parent resource path.
// "projects/*/locations/global/catalogs/default_catalog/eventStores/default_event_store".
string parent = 1 [(google.api.field_behavior) = REQUIRED];
string parent = 1 [
(google.api.field_behavior) = REQUIRED,
(google.api.resource_reference) = {
type: "recommendationengine.googleapis.com/EventStore"
}
];
// Required. The prediction API key registration.
PredictionApiKeyRegistration prediction_api_key_registration = 2;
PredictionApiKeyRegistration prediction_api_key_registration = 2
[(google.api.field_behavior) = REQUIRED];
}
// Request message for the `ListPredictionApiKeyRegistrations`.
message ListPredictionApiKeyRegistrationsRequest {
// Required. The parent placement resource name such as
// "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store"
string parent = 1 [(google.api.field_behavior) = REQUIRED];
string parent = 1 [
(google.api.field_behavior) = REQUIRED,
(google.api.resource_reference) = {
type: "recommendationengine.googleapis.com/EventStore"
}
];
// Optional. Maximum number of results to return per page. If unset, the
// service will choose a reasonable default.
@ -105,5 +129,10 @@ message ListPredictionApiKeyRegistrationsResponse {
message DeletePredictionApiKeyRegistrationRequest {
// Required. The API key to unregister including full resource path.
// "projects/*/locations/global/catalogs/default_catalog/eventStores/default_event_store/predictionApiKeyRegistrations/<YOUR_API_KEY>"
string name = 1 [(google.api.field_behavior) = REQUIRED];
string name = 1 [
(google.api.field_behavior) = REQUIRED,
(google.api.resource_reference) = {
type: "recommendationengine.googleapis.com/PredictionApiKeyRegistration"
}
];
}

View File

@ -18,6 +18,7 @@ package google.cloud.recommendationengine.v1beta1;
import "google/api/annotations.proto";
import "google/api/field_behavior.proto";
import "google/api/resource.proto";
import "google/cloud/recommendationengine/v1beta1/user_event.proto";
import "google/protobuf/struct.proto";
import "google/api/client.proto";
@ -33,7 +34,8 @@ option ruby_package = "Google::Cloud::RecommendationEngine::V1beta1";
// Service for making recommendation prediction.
service PredictionService {
option (google.api.default_host) = "recommendationengine.googleapis.com";
option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform";
option (google.api.oauth_scopes) =
"https://www.googleapis.com/auth/cloud-platform";
// Makes a recommendation prediction. If using API Key based authentication,
// the API Key must be registered using the
@ -44,6 +46,7 @@ service PredictionService {
post: "/v1beta1/{name=projects/*/locations/*/catalogs/*/eventStores/*/placements/*}:predict"
body: "*"
};
option (google.api.method_signature) = "name,user_event";
}
}
@ -78,7 +81,12 @@ message PredictRequest {
//
// The full list of available placements can be seen at
// https://console.cloud.google.com/recommendation/datafeeds/default_catalog/dashboard
string name = 1 [(google.api.field_behavior) = REQUIRED];
string name = 1 [
(google.api.field_behavior) = REQUIRED,
(google.api.resource_reference) = {
type: "recommendationengine.googleapis.com/Placement"
}
];
// Required. Context about the user, what they are looking at and what action
// they took to trigger the predict request. Note that this user event detail
@ -133,7 +141,8 @@ message PredictRequest {
// field in the prediction response. The given 'score' indicates the
// probability of an item being clicked/purchased given the user's context
// and history.
map<string, google.protobuf.Value> params = 6 [(google.api.field_behavior) = OPTIONAL];
map<string, google.protobuf.Value> params = 6
[(google.api.field_behavior) = OPTIONAL];
// Optional. The labels for the predict request.
//

View File

@ -0,0 +1,591 @@
type: com.google.api.codegen.ConfigProto
config_schema_version: 1.0.0
# The settings of generated code in a specific language.
language_settings:
java:
package_name: com.google.cloud.recommendationengine.v1beta1
python:
package_name: google.cloud.recommendationengine_v1beta1.gapic
go:
package_name: cloud.google.com/go/recommendationengine/apiv1beta1
csharp:
package_name: Google.Cloud.Recommendationengine.V1beta1
ruby:
package_name: Google::Cloud::Recommendationengine::V1beta1
php:
package_name: Google\Cloud\Recommendationengine\V1beta1
nodejs:
package_name: recommendationengine.v1beta1
# A list of API interface configurations.
interfaces:
# The fully qualified name of the API interface.
- name: google.cloud.recommendationengine.v1beta1.CatalogService
# A list of resource collection configurations.
# Consists of a name_pattern and an entity_name.
# The name_pattern is a pattern to describe the names of the resources of this
# collection, using the platform's conventions for URI patterns. A generator
# may use this to generate methods to compose and decompose such names. The
# pattern should use named placeholders as in `shelves/{shelf}/books/{book}`;
# those will be taken as hints for the parameter names of the generated
# methods. If empty, no name methods are generated.
# The entity_name is the name to be used as a basis for generated methods and
# classes.
collections:
- name_pattern: projects/{project}/locations/{location}/catalogs/{catalog}
entity_name: catalog
- name_pattern: projects/{project}/locations/{location}/catalogs/{catalog}/catalogItems/{catalog_item_path=**}
entity_name: catalog_item_path
# Definition for retryable codes.
retry_codes_def:
- name: idempotent
retry_codes:
- DEADLINE_EXCEEDED
- UNAVAILABLE
- name: non_idempotent
retry_codes: []
# Definition for retry/backoff parameters.
retry_params_def:
- name: default
initial_retry_delay_millis: 100
retry_delay_multiplier: 1.3
max_retry_delay_millis: 60000
initial_rpc_timeout_millis: 20000
rpc_timeout_multiplier: 1
max_rpc_timeout_millis: 20000
total_timeout_millis: 600000
# A list of method configurations.
# Common properties:
#
# name - The simple name of the method.
#
# flattening - Specifies the configuration for parameter flattening.
# Describes the parameter groups for which a generator should produce method
# overloads which allow a client to directly pass request message fields as
# method parameters. This information may or may not be used, depending on
# the target language.
# Consists of groups, which each represent a list of parameters to be
# flattened. Each parameter listed must be a field of the request message.
#
# required_fields - Fields that are always required for a request to be
# valid.
#
# page_streaming - Specifies the configuration for paging.
# Describes information for generating a method which transforms a paging
# list RPC into a stream of resources.
# Consists of a request and a response.
# The request specifies request information of the list method. It defines
# which fields match the paging pattern in the request. The request consists
# of a page_size_field and a token_field. The page_size_field is the name of
# the optional field specifying the maximum number of elements to be
# returned in the response. The token_field is the name of the field in the
# request containing the page token.
# The response specifies response information of the list method. It defines
# which fields match the paging pattern in the response. The response
# consists of a token_field and a resources_field. The token_field is the
# name of the field in the response containing the next page token. The
# resources_field is the name of the field in the response containing the
# list of resources belonging to the page.
#
# retry_codes_name - Specifies the configuration for retryable codes. The
# name must be defined in interfaces.retry_codes_def.
#
# retry_params_name - Specifies the configuration for retry/backoff
# parameters. The name must be defined in interfaces.retry_params_def.
#
# field_name_patterns - Maps the field name of the request type to
# entity_name of interfaces.collections.
# Specifies the string pattern that the field must follow.
#
# timeout_millis - Specifies the default timeout for a non-retrying call. If
# the call is retrying, refer to retry_params_name instead.
methods:
- name: CreateCatalogItem
flattening:
groups:
- parameters:
- parent
- catalog_item
required_fields:
- parent
- catalog_item
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
parent: catalog
timeout_millis: 60000
- name: GetCatalogItem
flattening:
groups:
- parameters:
- name
required_fields:
- name
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
name: catalog_item_path
timeout_millis: 60000
- name: ListCatalogItems
flattening:
groups:
- parameters:
- parent
- filter
required_fields:
- parent
page_streaming:
request:
page_size_field: page_size
token_field: page_token
response:
token_field: next_page_token
resources_field: catalog_items
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
parent: catalog
timeout_millis: 300000
- name: UpdateCatalogItem
flattening:
groups:
- parameters:
- name
- catalog_item
required_fields:
- name
- catalog_item
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
name: catalog_item_path
timeout_millis: 60000
- name: DeleteCatalogItem
flattening:
groups:
- parameters:
- name
required_fields:
- name
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
name: catalog_item_path
timeout_millis: 60000
- name: ImportCatalogItems
flattening:
groups:
- parameters:
- parent
- request_id
- input_config
- errors_config
required_fields:
- parent
- input_config
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
parent: catalog
long_running:
return_type: google.cloud.recommendationengine.v1beta1.ImportCatalogItemsResponse
metadata_type: google.cloud.recommendationengine.v1beta1.ImportMetadata
initial_poll_delay_millis: 500
poll_delay_multiplier: 1.5
max_poll_delay_millis: 5000
total_poll_timeout_millis: 300000
timeout_millis: 300000
# The fully qualified name of the API interface.
- name: google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistry
# A list of resource collection configurations.
# Consists of a name_pattern and an entity_name.
# The name_pattern is a pattern to describe the names of the resources of this
# collection, using the platform's conventions for URI patterns. A generator
# may use this to generate methods to compose and decompose such names. The
# pattern should use named placeholders as in `shelves/{shelf}/books/{book}`;
# those will be taken as hints for the parameter names of the generated
# methods. If empty, no name methods are generated.
# The entity_name is the name to be used as a basis for generated methods and
# classes.
collections:
- name_pattern: projects/{project}/locations/{location}/catalogs/{catalog}/eventStores/{event_store}
entity_name: event_store
- name_pattern: projects/{project}/locations/{location}/catalogs/{catalog}/eventStores/{event_store}/predictionApiKeyRegistrations/{prediction_api_key_registration}
entity_name: prediction_api_key_registration
# Definition for retryable codes.
retry_codes_def:
- name: idempotent
retry_codes:
- DEADLINE_EXCEEDED
- UNAVAILABLE
- name: non_idempotent
retry_codes: []
# Definition for retry/backoff parameters.
retry_params_def:
- name: default
initial_retry_delay_millis: 100
retry_delay_multiplier: 1.3
max_retry_delay_millis: 60000
initial_rpc_timeout_millis: 20000
rpc_timeout_multiplier: 1
max_rpc_timeout_millis: 20000
total_timeout_millis: 600000
# A list of method configurations.
# Common properties:
#
# name - The simple name of the method.
#
# flattening - Specifies the configuration for parameter flattening.
# Describes the parameter groups for which a generator should produce method
# overloads which allow a client to directly pass request message fields as
# method parameters. This information may or may not be used, depending on
# the target language.
# Consists of groups, which each represent a list of parameters to be
# flattened. Each parameter listed must be a field of the request message.
#
# required_fields - Fields that are always required for a request to be
# valid.
#
# page_streaming - Specifies the configuration for paging.
# Describes information for generating a method which transforms a paging
# list RPC into a stream of resources.
# Consists of a request and a response.
# The request specifies request information of the list method. It defines
# which fields match the paging pattern in the request. The request consists
# of a page_size_field and a token_field. The page_size_field is the name of
# the optional field specifying the maximum number of elements to be
# returned in the response. The token_field is the name of the field in the
# request containing the page token.
# The response specifies response information of the list method. It defines
# which fields match the paging pattern in the response. The response
# consists of a token_field and a resources_field. The token_field is the
# name of the field in the response containing the next page token. The
# resources_field is the name of the field in the response containing the
# list of resources belonging to the page.
#
# retry_codes_name - Specifies the configuration for retryable codes. The
# name must be defined in interfaces.retry_codes_def.
#
# retry_params_name - Specifies the configuration for retry/backoff
# parameters. The name must be defined in interfaces.retry_params_def.
#
# field_name_patterns - Maps the field name of the request type to
# entity_name of interfaces.collections.
# Specifies the string pattern that the field must follow.
#
# timeout_millis - Specifies the default timeout for a non-retrying call. If
# the call is retrying, refer to retry_params_name instead.
methods:
- name: CreatePredictionApiKeyRegistration
flattening:
groups:
- parameters:
- parent
- prediction_api_key_registration
required_fields:
- parent
- prediction_api_key_registration
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
parent: event_store
timeout_millis: 60000
- name: ListPredictionApiKeyRegistrations
flattening:
groups:
- parameters:
- parent
required_fields:
- parent
page_streaming:
request:
page_size_field: page_size
token_field: page_token
response:
token_field: next_page_token
resources_field: prediction_api_key_registrations
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
parent: event_store
timeout_millis: 60000
- name: DeletePredictionApiKeyRegistration
flattening:
groups:
- parameters:
- name
required_fields:
- name
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
name: prediction_api_key_registration
timeout_millis: 60000
# The fully qualified name of the API interface.
- name: google.cloud.recommendationengine.v1beta1.PredictionService
# A list of resource collection configurations.
# Consists of a name_pattern and an entity_name.
# The name_pattern is a pattern to describe the names of the resources of this
# collection, using the platform's conventions for URI patterns. A generator
# may use this to generate methods to compose and decompose such names. The
# pattern should use named placeholders as in `shelves/{shelf}/books/{book}`;
# those will be taken as hints for the parameter names of the generated
# methods. If empty, no name methods are generated.
# The entity_name is the name to be used as a basis for generated methods and
# classes.
collections:
- name_pattern: projects/{project}/locations/{location}/catalogs/{catalog}/eventStores/{event_store}/placements/{placement}
entity_name: placement
# Definition for retryable codes.
retry_codes_def:
- name: idempotent
retry_codes:
- DEADLINE_EXCEEDED
- UNAVAILABLE
- name: non_idempotent
retry_codes: []
# Definition for retry/backoff parameters.
retry_params_def:
- name: default
initial_retry_delay_millis: 100
retry_delay_multiplier: 1.3
max_retry_delay_millis: 60000
initial_rpc_timeout_millis: 20000
rpc_timeout_multiplier: 1
max_rpc_timeout_millis: 20000
total_timeout_millis: 600000
# A list of method configurations.
# Common properties:
#
# name - The simple name of the method.
#
# flattening - Specifies the configuration for parameter flattening.
# Describes the parameter groups for which a generator should produce method
# overloads which allow a client to directly pass request message fields as
# method parameters. This information may or may not be used, depending on
# the target language.
# Consists of groups, which each represent a list of parameters to be
# flattened. Each parameter listed must be a field of the request message.
#
# required_fields - Fields that are always required for a request to be
# valid.
#
# page_streaming - Specifies the configuration for paging.
# Describes information for generating a method which transforms a paging
# list RPC into a stream of resources.
# Consists of a request and a response.
# The request specifies request information of the list method. It defines
# which fields match the paging pattern in the request. The request consists
# of a page_size_field and a token_field. The page_size_field is the name of
# the optional field specifying the maximum number of elements to be
# returned in the response. The token_field is the name of the field in the
# request containing the page token.
# The response specifies response information of the list method. It defines
# which fields match the paging pattern in the response. The response
# consists of a token_field and a resources_field. The token_field is the
# name of the field in the response containing the next page token. The
# resources_field is the name of the field in the response containing the
# list of resources belonging to the page.
#
# retry_codes_name - Specifies the configuration for retryable codes. The
# name must be defined in interfaces.retry_codes_def.
#
# retry_params_name - Specifies the configuration for retry/backoff
# parameters. The name must be defined in interfaces.retry_params_def.
#
# field_name_patterns - Maps the field name of the request type to
# entity_name of interfaces.collections.
# Specifies the string pattern that the field must follow.
#
# timeout_millis - Specifies the default timeout for a non-retrying call. If
# the call is retrying, refer to retry_params_name instead.
methods:
- name: Predict
required_fields:
- name
- user_event
page_streaming:
request:
page_size_field: page_size
token_field: page_token
response:
token_field: next_page_token
resources_field: results
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
name: placement
timeout_millis: 60000
# The fully qualified name of the API interface.
- name: google.cloud.recommendationengine.v1beta1.UserEventService
# A list of resource collection configurations.
# Consists of a name_pattern and an entity_name.
# The name_pattern is a pattern to describe the names of the resources of this
# collection, using the platform's conventions for URI patterns. A generator
# may use this to generate methods to compose and decompose such names. The
# pattern should use named placeholders as in `shelves/{shelf}/books/{book}`;
# those will be taken as hints for the parameter names of the generated
# methods. If empty, no name methods are generated.
# The entity_name is the name to be used as a basis for generated methods and
# classes.
collections:
- name_pattern: projects/{project}/locations/{location}/catalogs/{catalog}/eventStores/{event_store}
entity_name: event_store
# Definition for retryable codes.
retry_codes_def:
- name: idempotent
retry_codes:
- DEADLINE_EXCEEDED
- UNAVAILABLE
- name: non_idempotent
retry_codes: []
# Definition for retry/backoff parameters.
retry_params_def:
- name: default
initial_retry_delay_millis: 100
retry_delay_multiplier: 1.3
max_retry_delay_millis: 60000
initial_rpc_timeout_millis: 20000
rpc_timeout_multiplier: 1
max_rpc_timeout_millis: 20000
total_timeout_millis: 600000
# A list of method configurations.
# Common properties:
#
# name - The simple name of the method.
#
# flattening - Specifies the configuration for parameter flattening.
# Describes the parameter groups for which a generator should produce method
# overloads which allow a client to directly pass request message fields as
# method parameters. This information may or may not be used, depending on
# the target language.
# Consists of groups, which each represent a list of parameters to be
# flattened. Each parameter listed must be a field of the request message.
#
# required_fields - Fields that are always required for a request to be
# valid.
#
# page_streaming - Specifies the configuration for paging.
# Describes information for generating a method which transforms a paging
# list RPC into a stream of resources.
# Consists of a request and a response.
# The request specifies request information of the list method. It defines
# which fields match the paging pattern in the request. The request consists
# of a page_size_field and a token_field. The page_size_field is the name of
# the optional field specifying the maximum number of elements to be
# returned in the response. The token_field is the name of the field in the
# request containing the page token.
# The response specifies response information of the list method. It defines
# which fields match the paging pattern in the response. The response
# consists of a token_field and a resources_field. The token_field is the
# name of the field in the response containing the next page token. The
# resources_field is the name of the field in the response containing the
# list of resources belonging to the page.
#
# retry_codes_name - Specifies the configuration for retryable codes. The
# name must be defined in interfaces.retry_codes_def.
#
# retry_params_name - Specifies the configuration for retry/backoff
# parameters. The name must be defined in interfaces.retry_params_def.
#
# field_name_patterns - Maps the field name of the request type to
# entity_name of interfaces.collections.
# Specifies the string pattern that the field must follow.
#
# timeout_millis - Specifies the default timeout for a non-retrying call. If
# the call is retrying, refer to retry_params_name instead.
methods:
- name: WriteUserEvent
flattening:
groups:
- parameters:
- parent
- user_event
required_fields:
- parent
- user_event
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
parent: event_store
timeout_millis: 60000
- name: CollectUserEvent
flattening:
groups:
- parameters:
- parent
- user_event
- uri
- ets
required_fields:
- parent
- user_event
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
parent: event_store
timeout_millis: 60000
- name: ListUserEvents
flattening:
groups:
- parameters:
- parent
- filter
required_fields:
- parent
page_streaming:
request:
page_size_field: page_size
token_field: page_token
response:
token_field: next_page_token
resources_field: user_events
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
parent: event_store
timeout_millis: 300000
- name: PurgeUserEvents
flattening:
groups:
- parameters:
- parent
- filter
- force
required_fields:
- parent
- filter
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
parent: event_store
long_running:
return_type: google.cloud.recommendationengine.v1beta1.PurgeUserEventsResponse
metadata_type: google.cloud.recommendationengine.v1beta1.PurgeUserEventsMetadata
initial_poll_delay_millis: 500
poll_delay_multiplier: 1.5
max_poll_delay_millis: 5000
total_poll_timeout_millis: 300000
timeout_millis: 60000
- name: ImportUserEvents
flattening:
groups:
- parameters:
- parent
- request_id
- input_config
- errors_config
required_fields:
- parent
- input_config
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
parent: event_store
long_running:
return_type: google.cloud.recommendationengine.v1beta1.ImportUserEventsResponse
metadata_type: google.cloud.recommendationengine.v1beta1.ImportMetadata
initial_poll_delay_millis: 500
poll_delay_multiplier: 1.5
max_poll_delay_millis: 5000
total_poll_timeout_millis: 300000
timeout_millis: 300000

View File

@ -1,5 +1,5 @@
type: com.google.api.codegen.ConfigProto
config_schema_version: 1.0.0
config_schema_version: 2.0.0
# The settings of generated code in a specific language.
language_settings:
java:
@ -20,572 +20,34 @@ language_settings:
interfaces:
# The fully qualified name of the API interface.
- name: google.cloud.recommendationengine.v1beta1.CatalogService
# A list of resource collection configurations.
# Consists of a name_pattern and an entity_name.
# The name_pattern is a pattern to describe the names of the resources of this
# collection, using the platform's conventions for URI patterns. A generator
# may use this to generate methods to compose and decompose such names. The
# pattern should use named placeholders as in `shelves/{shelf}/books/{book}`;
# those will be taken as hints for the parameter names of the generated
# methods. If empty, no name methods are generated.
# The entity_name is the name to be used as a basis for generated methods and
# classes.
collections:
- name_pattern: projects/{project}/locations/{location}/catalogs/{catalog}
entity_name: catalog
- name_pattern: projects/{project}/locations/{location}/catalogs/{catalog}/catalogItems/{catalog_item_path=**}
entity_name: catalog_item_path
# Definition for retryable codes.
retry_codes_def:
- name: idempotent
retry_codes:
- DEADLINE_EXCEEDED
- UNAVAILABLE
- name: non_idempotent
retry_codes: []
# Definition for retry/backoff parameters.
retry_params_def:
- name: default
initial_retry_delay_millis: 100
retry_delay_multiplier: 1.3
max_retry_delay_millis: 60000
initial_rpc_timeout_millis: 20000
rpc_timeout_multiplier: 1
max_rpc_timeout_millis: 20000
total_timeout_millis: 600000
# A list of method configurations.
# Common properties:
#
# name - The simple name of the method.
#
# flattening - Specifies the configuration for parameter flattening.
# Describes the parameter groups for which a generator should produce method
# overloads which allow a client to directly pass request message fields as
# method parameters. This information may or may not be used, depending on
# the target language.
# Consists of groups, which each represent a list of parameters to be
# flattened. Each parameter listed must be a field of the request message.
#
# required_fields - Fields that are always required for a request to be
# valid.
#
# page_streaming - Specifies the configuration for paging.
# Describes information for generating a method which transforms a paging
# list RPC into a stream of resources.
# Consists of a request and a response.
# The request specifies request information of the list method. It defines
# which fields match the paging pattern in the request. The request consists
# of a page_size_field and a token_field. The page_size_field is the name of
# the optional field specifying the maximum number of elements to be
# returned in the response. The token_field is the name of the field in the
# request containing the page token.
# The response specifies response information of the list method. It defines
# which fields match the paging pattern in the response. The response
# consists of a token_field and a resources_field. The token_field is the
# name of the field in the response containing the next page token. The
# resources_field is the name of the field in the response containing the
# list of resources belonging to the page.
#
# retry_codes_name - Specifies the configuration for retryable codes. The
# name must be defined in interfaces.retry_codes_def.
#
# retry_params_name - Specifies the configuration for retry/backoff
# parameters. The name must be defined in interfaces.retry_params_def.
#
# field_name_patterns - Maps the field name of the request type to
# entity_name of interfaces.collections.
# Specifies the string pattern that the field must follow.
#
# timeout_millis - Specifies the default timeout for a non-retrying call. If
# the call is retrying, refer to retry_params_name instead.
methods:
- name: CreateCatalogItem
flattening:
groups:
- parameters:
- parent
- catalog_item
required_fields:
- parent
- catalog_item
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
parent: catalog
timeout_millis: 60000
- name: GetCatalogItem
flattening:
groups:
- parameters:
- name
required_fields:
- name
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
name: catalog_item_path
timeout_millis: 60000
- name: ListCatalogItems
flattening:
groups:
- parameters:
- parent
- filter
required_fields:
- parent
page_streaming:
request:
page_size_field: page_size
token_field: page_token
response:
token_field: next_page_token
resources_field: catalog_items
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
parent: catalog
timeout_millis: 300000
- name: UpdateCatalogItem
flattening:
groups:
- parameters:
- name
- catalog_item
required_fields:
- name
- catalog_item
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
name: catalog_item_path
timeout_millis: 60000
- name: DeleteCatalogItem
flattening:
groups:
- parameters:
- name
required_fields:
- name
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
name: catalog_item_path
timeout_millis: 60000
- name: ImportCatalogItems
flattening:
groups:
- parameters:
- parent
- request_id
- input_config
- errors_config
required_fields:
- parent
- input_config
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
parent: catalog
long_running:
return_type: google.cloud.recommendationengine.v1beta1.ImportCatalogItemsResponse
metadata_type: google.cloud.recommendationengine.v1beta1.ImportMetadata
initial_poll_delay_millis: 500
poll_delay_multiplier: 1.5
max_poll_delay_millis: 5000
total_poll_timeout_millis: 300000
timeout_millis: 300000
# The fully qualified name of the API interface.
- name: google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistry
# A list of resource collection configurations.
# Consists of a name_pattern and an entity_name.
# The name_pattern is a pattern to describe the names of the resources of this
# collection, using the platform's conventions for URI patterns. A generator
# may use this to generate methods to compose and decompose such names. The
# pattern should use named placeholders as in `shelves/{shelf}/books/{book}`;
# those will be taken as hints for the parameter names of the generated
# methods. If empty, no name methods are generated.
# The entity_name is the name to be used as a basis for generated methods and
# classes.
collections:
- name_pattern: projects/{project}/locations/{location}/catalogs/{catalog}/eventStores/{event_store}
entity_name: event_store
- name_pattern: projects/{project}/locations/{location}/catalogs/{catalog}/eventStores/{event_store}/predictionApiKeyRegistrations/{prediction_api_key_registration}
entity_name: prediction_api_key_registration
# Definition for retryable codes.
retry_codes_def:
- name: idempotent
retry_codes:
- DEADLINE_EXCEEDED
- UNAVAILABLE
- name: non_idempotent
retry_codes: []
# Definition for retry/backoff parameters.
retry_params_def:
- name: default
initial_retry_delay_millis: 100
retry_delay_multiplier: 1.3
max_retry_delay_millis: 60000
initial_rpc_timeout_millis: 20000
rpc_timeout_multiplier: 1
max_rpc_timeout_millis: 20000
total_timeout_millis: 600000
# A list of method configurations.
# Common properties:
#
# name - The simple name of the method.
#
# flattening - Specifies the configuration for parameter flattening.
# Describes the parameter groups for which a generator should produce method
# overloads which allow a client to directly pass request message fields as
# method parameters. This information may or may not be used, depending on
# the target language.
# Consists of groups, which each represent a list of parameters to be
# flattened. Each parameter listed must be a field of the request message.
#
# required_fields - Fields that are always required for a request to be
# valid.
#
# page_streaming - Specifies the configuration for paging.
# Describes information for generating a method which transforms a paging
# list RPC into a stream of resources.
# Consists of a request and a response.
# The request specifies request information of the list method. It defines
# which fields match the paging pattern in the request. The request consists
# of a page_size_field and a token_field. The page_size_field is the name of
# the optional field specifying the maximum number of elements to be
# returned in the response. The token_field is the name of the field in the
# request containing the page token.
# The response specifies response information of the list method. It defines
# which fields match the paging pattern in the response. The response
# consists of a token_field and a resources_field. The token_field is the
# name of the field in the response containing the next page token. The
# resources_field is the name of the field in the response containing the
# list of resources belonging to the page.
#
# retry_codes_name - Specifies the configuration for retryable codes. The
# name must be defined in interfaces.retry_codes_def.
#
# retry_params_name - Specifies the configuration for retry/backoff
# parameters. The name must be defined in interfaces.retry_params_def.
#
# field_name_patterns - Maps the field name of the request type to
# entity_name of interfaces.collections.
# Specifies the string pattern that the field must follow.
#
# timeout_millis - Specifies the default timeout for a non-retrying call. If
# the call is retrying, refer to retry_params_name instead.
methods:
- name: CreatePredictionApiKeyRegistration
flattening:
groups:
- parameters:
- parent
- prediction_api_key_registration
required_fields:
- parent
- prediction_api_key_registration
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
parent: event_store
timeout_millis: 60000
- name: ListPredictionApiKeyRegistrations
flattening:
groups:
- parameters:
- parent
required_fields:
- parent
page_streaming:
request:
page_size_field: page_size
token_field: page_token
response:
token_field: next_page_token
resources_field: prediction_api_key_registrations
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
parent: event_store
timeout_millis: 60000
- name: DeletePredictionApiKeyRegistration
flattening:
groups:
- parameters:
- name
required_fields:
- name
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
name: prediction_api_key_registration
timeout_millis: 60000
# The fully qualified name of the API interface.
- name: google.cloud.recommendationengine.v1beta1.PredictionService
# A list of resource collection configurations.
# Consists of a name_pattern and an entity_name.
# The name_pattern is a pattern to describe the names of the resources of this
# collection, using the platform's conventions for URI patterns. A generator
# may use this to generate methods to compose and decompose such names. The
# pattern should use named placeholders as in `shelves/{shelf}/books/{book}`;
# those will be taken as hints for the parameter names of the generated
# methods. If empty, no name methods are generated.
# The entity_name is the name to be used as a basis for generated methods and
# classes.
collections:
- name_pattern: projects/{project}/locations/{location}/catalogs/{catalog}/eventStores/{event_store}/placements/{placement}
entity_name: placement
# Definition for retryable codes.
retry_codes_def:
- name: idempotent
retry_codes:
- DEADLINE_EXCEEDED
- UNAVAILABLE
- name: non_idempotent
retry_codes: []
# Definition for retry/backoff parameters.
retry_params_def:
- name: default
initial_retry_delay_millis: 100
retry_delay_multiplier: 1.3
max_retry_delay_millis: 60000
initial_rpc_timeout_millis: 20000
rpc_timeout_multiplier: 1
max_rpc_timeout_millis: 20000
total_timeout_millis: 600000
# A list of method configurations.
# Common properties:
#
# name - The simple name of the method.
#
# flattening - Specifies the configuration for parameter flattening.
# Describes the parameter groups for which a generator should produce method
# overloads which allow a client to directly pass request message fields as
# method parameters. This information may or may not be used, depending on
# the target language.
# Consists of groups, which each represent a list of parameters to be
# flattened. Each parameter listed must be a field of the request message.
#
# required_fields - Fields that are always required for a request to be
# valid.
#
# page_streaming - Specifies the configuration for paging.
# Describes information for generating a method which transforms a paging
# list RPC into a stream of resources.
# Consists of a request and a response.
# The request specifies request information of the list method. It defines
# which fields match the paging pattern in the request. The request consists
# of a page_size_field and a token_field. The page_size_field is the name of
# the optional field specifying the maximum number of elements to be
# returned in the response. The token_field is the name of the field in the
# request containing the page token.
# The response specifies response information of the list method. It defines
# which fields match the paging pattern in the response. The response
# consists of a token_field and a resources_field. The token_field is the
# name of the field in the response containing the next page token. The
# resources_field is the name of the field in the response containing the
# list of resources belonging to the page.
#
# retry_codes_name - Specifies the configuration for retryable codes. The
# name must be defined in interfaces.retry_codes_def.
#
# retry_params_name - Specifies the configuration for retry/backoff
# parameters. The name must be defined in interfaces.retry_params_def.
#
# field_name_patterns - Maps the field name of the request type to
# entity_name of interfaces.collections.
# Specifies the string pattern that the field must follow.
#
# timeout_millis - Specifies the default timeout for a non-retrying call. If
# the call is retrying, refer to retry_params_name instead.
methods:
- name: Predict
required_fields:
- name
- user_event
page_streaming:
request:
page_size_field: page_size
token_field: page_token
response:
token_field: next_page_token
resources_field: results
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
name: placement
timeout_millis: 60000
# The fully qualified name of the API interface.
- name: google.cloud.recommendationengine.v1beta1.UserEventService
# A list of resource collection configurations.
# Consists of a name_pattern and an entity_name.
# The name_pattern is a pattern to describe the names of the resources of this
# collection, using the platform's conventions for URI patterns. A generator
# may use this to generate methods to compose and decompose such names. The
# pattern should use named placeholders as in `shelves/{shelf}/books/{book}`;
# those will be taken as hints for the parameter names of the generated
# methods. If empty, no name methods are generated.
# The entity_name is the name to be used as a basis for generated methods and
# classes.
collections:
- name_pattern: projects/{project}/locations/{location}/catalogs/{catalog}/eventStores/{event_store}
entity_name: event_store
# Definition for retryable codes.
retry_codes_def:
- name: idempotent
retry_codes:
- DEADLINE_EXCEEDED
- UNAVAILABLE
- name: non_idempotent
retry_codes: []
# Definition for retry/backoff parameters.
retry_params_def:
- name: default
initial_retry_delay_millis: 100
retry_delay_multiplier: 1.3
max_retry_delay_millis: 60000
initial_rpc_timeout_millis: 20000
rpc_timeout_multiplier: 1
max_rpc_timeout_millis: 20000
total_timeout_millis: 600000
# A list of method configurations.
# Common properties:
#
# name - The simple name of the method.
#
# flattening - Specifies the configuration for parameter flattening.
# Describes the parameter groups for which a generator should produce method
# overloads which allow a client to directly pass request message fields as
# method parameters. This information may or may not be used, depending on
# the target language.
# Consists of groups, which each represent a list of parameters to be
# flattened. Each parameter listed must be a field of the request message.
#
# required_fields - Fields that are always required for a request to be
# valid.
#
# page_streaming - Specifies the configuration for paging.
# Describes information for generating a method which transforms a paging
# list RPC into a stream of resources.
# Consists of a request and a response.
# The request specifies request information of the list method. It defines
# which fields match the paging pattern in the request. The request consists
# of a page_size_field and a token_field. The page_size_field is the name of
# the optional field specifying the maximum number of elements to be
# returned in the response. The token_field is the name of the field in the
# request containing the page token.
# The response specifies response information of the list method. It defines
# which fields match the paging pattern in the response. The response
# consists of a token_field and a resources_field. The token_field is the
# name of the field in the response containing the next page token. The
# resources_field is the name of the field in the response containing the
# list of resources belonging to the page.
#
# retry_codes_name - Specifies the configuration for retryable codes. The
# name must be defined in interfaces.retry_codes_def.
#
# retry_params_name - Specifies the configuration for retry/backoff
# parameters. The name must be defined in interfaces.retry_params_def.
#
# field_name_patterns - Maps the field name of the request type to
# entity_name of interfaces.collections.
# Specifies the string pattern that the field must follow.
#
# timeout_millis - Specifies the default timeout for a non-retrying call. If
# the call is retrying, refer to retry_params_name instead.
methods:
- name: WriteUserEvent
flattening:
groups:
- parameters:
- parent
- user_event
required_fields:
- parent
- user_event
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
parent: event_store
timeout_millis: 60000
- name: CollectUserEvent
flattening:
groups:
- parameters:
- parent
- user_event
- uri
- ets
required_fields:
- parent
- user_event
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
parent: event_store
timeout_millis: 60000
- name: ListUserEvents
flattening:
groups:
- parameters:
- parent
- filter
required_fields:
- parent
page_streaming:
request:
page_size_field: page_size
token_field: page_token
response:
token_field: next_page_token
resources_field: user_events
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
parent: event_store
timeout_millis: 300000
- name: PurgeUserEvents
flattening:
groups:
- parameters:
- parent
- filter
- force
required_fields:
- parent
- filter
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
parent: event_store
long_running:
return_type: google.cloud.recommendationengine.v1beta1.PurgeUserEventsResponse
metadata_type: google.cloud.recommendationengine.v1beta1.PurgeUserEventsMetadata
initial_poll_delay_millis: 500
poll_delay_multiplier: 1.5
max_poll_delay_millis: 5000
total_poll_timeout_millis: 300000
timeout_millis: 60000
- name: ImportUserEvents
flattening:
groups:
- parameters:
- parent
- request_id
- input_config
- errors_config
required_fields:
- parent
- input_config
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
parent: event_store
long_running:
return_type: google.cloud.recommendationengine.v1beta1.ImportUserEventsResponse
metadata_type: google.cloud.recommendationengine.v1beta1.ImportMetadata
initial_poll_delay_millis: 500
poll_delay_multiplier: 1.5
max_poll_delay_millis: 5000
total_poll_timeout_millis: 300000
timeout_millis: 300000

View File

@ -0,0 +1,46 @@
// Copyright 2020 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
//
// http://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.
//
// Contains common resources for recommendationengine/v1beta1.
syntax = "proto3";
package google.cloud.recommendationengine.v1beta1;
import "google/api/resource.proto";
option (google.api.resource_definition) = {
type: "recommendationengine.googleapis.com/Catalog"
pattern: "projects/{project}/locations/{location}/catalogs/{catalog}"
};
option (google.api.resource_definition) = {
type: "recommendationengine.googleapis.com/CatalogItemPath"
pattern: "projects/{project}/locations/{location}/catalogs/{catalog}/catalogItems/{catalog_item_path=**}"
};
option (google.api.resource_definition) = {
type: "recommendationengine.googleapis.com/EventStore"
pattern: "projects/{project}/locations/{location}/catalogs/{catalog}/eventStores/{event_store}"
};
option (google.api.resource_definition) = {
type: "recommendationengine.googleapis.com/PredictionApiKeyRegistration"
pattern: "projects/{project}/locations/{location}/catalogs/{catalog}/eventStores/{event_store}/predictionApiKeyRegistrations/{prediction_api_key_registration}"
};
option (google.api.resource_definition) = {
type: "recommendationengine.googleapis.com/Placement"
pattern: "projects/{project}/locations/{location}/catalogs/{catalog}/eventStores/{event_store}/placements/{placement}"
};

View File

@ -19,6 +19,7 @@ package google.cloud.recommendationengine.v1beta1;
import "google/api/annotations.proto";
import "google/api/field_behavior.proto";
import "google/api/httpbody.proto";
import "google/api/resource.proto";
import "google/cloud/recommendationengine/v1beta1/import.proto";
import "google/cloud/recommendationengine/v1beta1/user_event.proto";
import "google/longrunning/operations.proto";
@ -37,7 +38,8 @@ option ruby_package = "Google::Cloud::RecommendationEngine::V1beta1";
// Service for ingesting end user actions on the customer website.
service UserEventService {
option (google.api.default_host) = "recommendationengine.googleapis.com";
option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform";
option (google.api.oauth_scopes) =
"https://www.googleapis.com/auth/cloud-platform";
// Writes a single user event.
rpc WriteUserEvent(WriteUserEventRequest) returns (UserEvent) {
@ -45,6 +47,7 @@ service UserEventService {
post: "/v1beta1/{parent=projects/*/locations/*/catalogs/*/eventStores/*}/userEvents:write"
body: "user_event"
};
option (google.api.method_signature) = "parent,user_event";
}
// Writes a single user event from the browser. This uses a GET request to
@ -56,6 +59,7 @@ service UserEventService {
option (google.api.http) = {
get: "/v1beta1/{parent=projects/*/locations/*/catalogs/*/eventStores/*}/userEvents:collect"
};
option (google.api.method_signature) = "parent,user_event,uri,ets";
}
// Gets a list of user events within a time range, with potential filtering.
@ -63,13 +67,15 @@ service UserEventService {
option (google.api.http) = {
get: "/v1beta1/{parent=projects/*/locations/*/catalogs/*/eventStores/*}/userEvents"
};
option (google.api.method_signature) = "parent,filter";
}
// Deletes permanently all user events specified by the filter provided.
// Depending on the number of events specified by the filter, this operation
// could take hours or days to complete. To test a filter, use the list
// command first.
rpc PurgeUserEvents(PurgeUserEventsRequest) returns (google.longrunning.Operation) {
rpc PurgeUserEvents(PurgeUserEventsRequest)
returns (google.longrunning.Operation) {
option (google.api.http) = {
post: "/v1beta1/{parent=projects/*/locations/*/catalogs/*/eventStores/*}/userEvents:purge"
body: "*"
@ -78,6 +84,7 @@ service UserEventService {
response_type: "google.cloud.recommendationengine.v1beta1.PurgeUserEventsResponse"
metadata_type: "google.cloud.recommendationengine.v1beta1.PurgeUserEventsMetadata"
};
option (google.api.method_signature) = "parent,filter,force";
}
// Bulk import of User events. Request processing might be
@ -87,7 +94,8 @@ service UserEventService {
// Operation.response is of type ImportResponse. Note that it is
// possible for a subset of the items to be successfully inserted.
// Operation.metadata is of type ImportMetadata.
rpc ImportUserEvents(ImportUserEventsRequest) returns (google.longrunning.Operation) {
rpc ImportUserEvents(ImportUserEventsRequest)
returns (google.longrunning.Operation) {
option (google.api.http) = {
post: "/v1beta1/{parent=projects/*/locations/*/catalogs/*/eventStores/*}/userEvents:import"
body: "*"
@ -96,6 +104,8 @@ service UserEventService {
response_type: "google.cloud.recommendationengine.v1beta1.ImportUserEventsResponse"
metadata_type: "google.cloud.recommendationengine.v1beta1.ImportMetadata"
};
option (google.api.method_signature) =
"parent,request_id,input_config,errors_config";
}
}
@ -104,7 +114,12 @@ message PurgeUserEventsRequest {
// Required. The resource name of the event_store under which the events are
// created. The format is
// "projects/${projectId}/locations/global/catalogs/${catalogId}/eventStores/${eventStoreId}"
string parent = 1 [(google.api.field_behavior) = REQUIRED];
string parent = 1 [
(google.api.field_behavior) = REQUIRED,
(google.api.resource_reference) = {
type: "recommendationengine.googleapis.com/EventStore"
}
];
// Required. The filter string to specify the events to be deleted. Empty
// string filter is not allowed. This filter can also be used with
@ -158,7 +173,12 @@ message PurgeUserEventsResponse {
message WriteUserEventRequest {
// Required. The parent eventStore resource name, such as
// "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store".
string parent = 1 [(google.api.field_behavior) = REQUIRED];
string parent = 1 [
(google.api.field_behavior) = REQUIRED,
(google.api.resource_reference) = {
type: "recommendationengine.googleapis.com/EventStore"
}
];
// Required. User event to write.
UserEvent user_event = 2 [(google.api.field_behavior) = REQUIRED];
@ -168,20 +188,25 @@ message WriteUserEventRequest {
message CollectUserEventRequest {
// Required. The parent eventStore name, such as
// "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store".
string parent = 1 [(google.api.field_behavior) = REQUIRED];
string parent = 1 [
(google.api.field_behavior) = REQUIRED,
(google.api.resource_reference) = {
type: "recommendationengine.googleapis.com/EventStore"
}
];
// Required. URL encoded UserEvent proto.
string user_event = 2 [(google.api.field_behavior) = REQUIRED];
// Optional. The url including cgi-parameters but excluding the hash fragment. The URL
// must be truncated to 1.5K bytes to conservatively be under the 2K bytes.
// This is often more useful than the referer url, because many browsers only
// send the domain for 3rd party requests.
// Optional. The url including cgi-parameters but excluding the hash fragment.
// The URL must be truncated to 1.5K bytes to conservatively be under the 2K
// bytes. This is often more useful than the referer url, because many
// browsers only send the domain for 3rd party requests.
string uri = 3 [(google.api.field_behavior) = OPTIONAL];
// Optional. The event timestamp in milliseconds. This prevents browser caching of
// otherwise identical get requests. The name is abbreviated to reduce the
// payload bytes.
// Optional. The event timestamp in milliseconds. This prevents browser
// caching of otherwise identical get requests. The name is abbreviated to
// reduce the payload bytes.
int64 ets = 4 [(google.api.field_behavior) = OPTIONAL];
}
@ -189,7 +214,12 @@ message CollectUserEventRequest {
message ListUserEventsRequest {
// Required. The parent eventStore resource name, such as
// "projects/*/locations/*/catalogs/default_catalog/eventStores/default_event_store".
string parent = 1 [(google.api.field_behavior) = REQUIRED];
string parent = 1 [
(google.api.field_behavior) = REQUIRED,
(google.api.resource_reference) = {
type: "recommendationengine.googleapis.com/EventStore"
}
];
// Optional. Maximum number of results to return per page. If zero, the
// service will choose a reasonable default.