xref: /aosp_15_r20/external/googleapis/google/cloud/dialogflow/cx/v3beta1/parameter_definition.proto (revision d5c09012810ac0c9f33fe448fb6da8260d444cc9)
1// Copyright 2023 Google LLC
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7//     http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15syntax = "proto3";
16
17package google.cloud.dialogflow.cx.v3beta1;
18
19import "google/api/field_behavior.proto";
20
21option cc_enable_arenas = true;
22option csharp_namespace = "Google.Cloud.Dialogflow.Cx.V3Beta1";
23option go_package = "cloud.google.com/go/dialogflow/cx/apiv3beta1/cxpb;cxpb";
24option java_multiple_files = true;
25option java_outer_classname = "ParameterDefinitionProto";
26option java_package = "com.google.cloud.dialogflow.cx.v3beta1";
27option objc_class_prefix = "DF";
28option ruby_package = "Google::Cloud::Dialogflow::CX::V3beta1";
29
30// Defines the properties of a parameter.
31// Used to define parameters used in the agent and the
32// input / output parameters for each fulfillment.
33// (-- Next Id: 4 --)
34// (-- api-linter: core::0123::resource-annotation=disabled
35//     aip.dev/not-precedent: ParameterDefinition is not an exposed resource.
36//     --)
37message ParameterDefinition {
38  // Parameter types are used for validation.
39  // These types are consistent with [google.protobuf.Value][].
40  enum ParameterType {
41    // Not specified. No validation will be performed.
42    PARAMETER_TYPE_UNSPECIFIED = 0;
43    // Represents any string value.
44    STRING = 1;
45    // Represents any number value.
46    NUMBER = 2;
47    // Represents a boolean value.
48    BOOLEAN = 3;
49    // Represents a null value.
50    NULL = 4;
51    // Represents any object value.
52    OBJECT = 5;
53    // Represents a repeated value.
54    LIST = 6;
55  }
56
57  // Name of parameter.
58  string name = 1 [(google.api.field_behavior) = REQUIRED];
59
60  // Type of parameter.
61  ParameterType type = 2 [(google.api.field_behavior) = REQUIRED];
62
63  // Human-readable description of the parameter. Limited to 300 characters.
64  string description = 3;
65}
66