Built motion from commit 6a09e18b.|2.6.11
[motion2.git] / legacy-libs / google-proto-files / google / cloud / dialogflow / v2beta1 / session_entity_type.proto
diff --git a/legacy-libs/google-proto-files/google/cloud/dialogflow/v2beta1/session_entity_type.proto b/legacy-libs/google-proto-files/google/cloud/dialogflow/v2beta1/session_entity_type.proto
new file mode 100644 (file)
index 0000000..f2d22b8
--- /dev/null
@@ -0,0 +1,232 @@
+// Copyright 2018 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.
+
+syntax = "proto3";
+
+package google.cloud.dialogflow.v2beta1;
+
+import "google/api/annotations.proto";
+import "google/cloud/dialogflow/v2beta1/entity_type.proto";
+import "google/protobuf/empty.proto";
+import "google/protobuf/field_mask.proto";
+
+option cc_enable_arenas = true;
+option csharp_namespace = "Google.Cloud.Dialogflow.V2beta1";
+option go_package = "google.golang.org/genproto/googleapis/cloud/dialogflow/v2beta1;dialogflow";
+option java_multiple_files = true;
+option java_outer_classname = "SessionEntityTypeProto";
+option java_package = "com.google.cloud.dialogflow.v2beta1";
+option objc_class_prefix = "DF";
+
+// Entities are extracted from user input and represent parameters that are
+// meaningful to your application. For example, a date range, a proper name
+// such as a geographic location or landmark, and so on. Entities represent
+// actionable data for your application.
+//
+// Session entity types are referred to as **User** entity types and are
+// entities that are built for an individual user such as
+// favorites, preferences, playlists, and so on. You can redefine a session
+// entity type at the session level.
+//
+// For more information about entity types, see the
+// [Dialogflow documentation](https://dialogflow.com/docs/entities).
+service SessionEntityTypes {
+  // Returns the list of all session entity types in the specified session.
+  rpc ListSessionEntityTypes(ListSessionEntityTypesRequest)
+      returns (ListSessionEntityTypesResponse) {
+    option (google.api.http) = {
+      get: "/v2beta1/{parent=projects/*/agent/sessions/*}/entityTypes"
+      additional_bindings {
+        get: "/v2beta1/{parent=projects/*/agent/environments/*/users/*/sessions/*}/entityTypes"
+      }
+    };
+  }
+
+  // Retrieves the specified session entity type.
+  rpc GetSessionEntityType(GetSessionEntityTypeRequest)
+      returns (SessionEntityType) {
+    option (google.api.http) = {
+      get: "/v2beta1/{name=projects/*/agent/sessions/*/entityTypes/*}"
+      additional_bindings {
+        get: "/v2beta1/{name=projects/*/agent/environments/*/users/*/sessions/*/entityTypes/*}"
+      }
+    };
+  }
+
+  // Creates a session entity type.
+  rpc CreateSessionEntityType(CreateSessionEntityTypeRequest)
+      returns (SessionEntityType) {
+    option (google.api.http) = {
+      post: "/v2beta1/{parent=projects/*/agent/sessions/*}/entityTypes"
+      body: "session_entity_type"
+      additional_bindings {
+        post: "/v2beta1/{parent=projects/*/agent/environments/*/users/*/sessions/*}/entityTypes"
+        body: "session_entity_type"
+      }
+    };
+  }
+
+  // Updates the specified session entity type.
+  rpc UpdateSessionEntityType(UpdateSessionEntityTypeRequest)
+      returns (SessionEntityType) {
+    option (google.api.http) = {
+      patch: "/v2beta1/{session_entity_type.name=projects/*/agent/sessions/*/entityTypes/*}"
+      body: "session_entity_type"
+      additional_bindings {
+        patch: "/v2beta1/{session_entity_type.name=projects/*/agent/environments/*/users/*/sessions/*/entityTypes/*}"
+        body: "session_entity_type"
+      }
+    };
+  }
+
+  // Deletes the specified session entity type.
+  rpc DeleteSessionEntityType(DeleteSessionEntityTypeRequest)
+      returns (google.protobuf.Empty) {
+    option (google.api.http) = {
+      delete: "/v2beta1/{name=projects/*/agent/sessions/*/entityTypes/*}"
+      additional_bindings {
+        delete: "/v2beta1/{name=projects/*/agent/environments/*/users/*/sessions/*/entityTypes/*}"
+      }
+    };
+  }
+}
+
+// Represents a session entity type.
+//
+// Extends or replaces a developer entity type at the user session level (we
+// refer to the entity types defined at the agent level as "developer entity
+// types").
+//
+// Note: session entity types apply to all queries, regardless of the language.
+message SessionEntityType {
+  // The types of modifications for a session entity type.
+  enum EntityOverrideMode {
+    // Not specified. This value should be never used.
+    ENTITY_OVERRIDE_MODE_UNSPECIFIED = 0;
+
+    // The collection of session entities overrides the collection of entities
+    // in the corresponding developer entity type.
+    ENTITY_OVERRIDE_MODE_OVERRIDE = 1;
+
+    // The collection of session entities extends the collection of entities in
+    // the corresponding developer entity type.
+    // Calls to `ListSessionEntityTypes`, `GetSessionEntityType`,
+    // `CreateSessionEntityType` and `UpdateSessionEntityType` return the full
+    // collection of entities from the developer entity type in the agent's
+    // default language and the session entity type.
+    ENTITY_OVERRIDE_MODE_SUPPLEMENT = 2;
+  }
+
+  // Required. The unique identifier of this session entity type. Format:
+  // `projects/<Project ID>/agent/sessions/<Session ID>/entityTypes/<Entity Type
+  // Display Name>`, or
+  // `projects/<Project ID>/agent/environments/<Environment ID>/users/<User
+  // ID>/sessions/<Session ID>/entityTypes/<Entity Type Display Name>`.
+  // If `Environment ID` is not specified, we assume default 'draft'
+  // environment. If `User ID` is not specified, we assume default '-' user.
+  string name = 1;
+
+  // Required. Indicates whether the additional data should override or
+  // supplement the developer entity type definition.
+  EntityOverrideMode entity_override_mode = 2;
+
+  // Required. The collection of entities associated with this session entity
+  // type.
+  repeated EntityType.Entity entities = 3;
+}
+
+// The request message for
+// [SessionEntityTypes.ListSessionEntityTypes][google.cloud.dialogflow.v2beta1.SessionEntityTypes.ListSessionEntityTypes].
+message ListSessionEntityTypesRequest {
+  // Required. The session to list all session entity types from.
+  // Format: `projects/<Project ID>/agent/sessions/<Session ID>` or
+  // `projects/<Project ID>/agent/environments/<Environment ID>/users/<User ID>/
+  // sessions/<Session ID>`.
+  // If `Environment ID` is not specified, we assume default 'draft'
+  // environment. If `User ID` is not specified, we assume default '-' user.
+  string parent = 1;
+
+  // Optional. The maximum number of items to return in a single page. By
+  // default 100 and at most 1000.
+  int32 page_size = 2;
+
+  // Optional. The next_page_token value returned from a previous list request.
+  string page_token = 3;
+}
+
+// The response message for
+// [SessionEntityTypes.ListSessionEntityTypes][google.cloud.dialogflow.v2beta1.SessionEntityTypes.ListSessionEntityTypes].
+message ListSessionEntityTypesResponse {
+  // The list of session entity types. There will be a maximum number of items
+  // returned based on the page_size field in the request.
+  repeated SessionEntityType session_entity_types = 1;
+
+  // Token to retrieve the next page of results, or empty if there are no
+  // more results in the list.
+  string next_page_token = 2;
+}
+
+// The request message for
+// [SessionEntityTypes.GetSessionEntityType][google.cloud.dialogflow.v2beta1.SessionEntityTypes.GetSessionEntityType].
+message GetSessionEntityTypeRequest {
+  // Required. The name of the session entity type. Format:
+  // `projects/<Project ID>/agent/sessions/<Session ID>/entityTypes/<Entity Type
+  // Display Name>` or `projects/<Project ID>/agent/environments/<Environment
+  // ID>/users/<User ID>/sessions/<Session ID>/entityTypes/<Entity Type Display
+  // Name>`. If `Environment ID` is not specified, we assume default 'draft'
+  // environment. If `User ID` is not specified, we assume default '-' user.
+  string name = 1;
+}
+
+// The request message for
+// [SessionEntityTypes.CreateSessionEntityType][google.cloud.dialogflow.v2beta1.SessionEntityTypes.CreateSessionEntityType].
+message CreateSessionEntityTypeRequest {
+  // Required. The session to create a session entity type for.
+  // Format: `projects/<Project ID>/agent/sessions/<Session ID>` or
+  // `projects/<Project ID>/agent/environments/<Environment ID>/users/<User ID>/
+  // sessions/<Session ID>`. If `Environment ID` is not specified, we assume
+  // default 'draft' environment. If `User ID` is not specified, we assume
+  // default '-' user.
+  string parent = 1;
+
+  // Required. The session entity type to create.
+  SessionEntityType session_entity_type = 2;
+}
+
+// The request message for
+// [SessionEntityTypes.UpdateSessionEntityType][google.cloud.dialogflow.v2beta1.SessionEntityTypes.UpdateSessionEntityType].
+message UpdateSessionEntityTypeRequest {
+  // Required. The entity type to update. Format:
+  // `projects/<Project ID>/agent/sessions/<Session ID>/entityTypes/<Entity Type
+  // Display Name>` or `projects/<Project ID>/agent/environments/<Environment
+  // ID>/users/<User ID>/sessions/<Session ID>/entityTypes/<Entity Type Display
+  // Name>`. If `Environment ID` is not specified, we assume default 'draft'
+  // environment. If `User ID` is not specified, we assume default '-' user.
+  SessionEntityType session_entity_type = 1;
+
+  // Optional. The mask to control which fields get updated.
+  google.protobuf.FieldMask update_mask = 2;
+}
+
+// The request message for
+// [SessionEntityTypes.DeleteSessionEntityType][google.cloud.dialogflow.v2beta1.SessionEntityTypes.DeleteSessionEntityType].
+message DeleteSessionEntityTypeRequest {
+  // Required. The name of the entity type to delete. Format:
+  // `projects/<Project ID>/agent/sessions/<Session ID>/entityTypes/<Entity Type
+  // Display Name>` or `projects/<Project ID>/agent/environments/<Environment
+  // ID>/users/<User ID>/sessions/<Session ID>/entityTypes/<Entity Type Display
+  // Name>`. If `Environment ID` is not specified, we assume default 'draft'
+  // environment. If `User ID` is not specified, we assume default '-' user.
+  string name = 1;
+}