...

Source file src/google.golang.org/api/dialogflow/v3alpha1/dialogflow-gen.go

Documentation: google.golang.org/api/dialogflow/v3alpha1

     1  // Copyright 2020 Google LLC.
     2  // Use of this source code is governed by a BSD-style
     3  // license that can be found in the LICENSE file.
     4  
     5  // Code generated file. DO NOT EDIT.
     6  
     7  // Package dialogflow provides access to the Dialogflow API.
     8  //
     9  // This package is DEPRECATED. Use package cloud.google.com/go/dialogflow/apiv2 instead.
    10  //
    11  // For product documentation, see: https://cloud.google.com/dialogflow/
    12  //
    13  // # Creating a client
    14  //
    15  // Usage example:
    16  //
    17  //	import "google.golang.org/api/dialogflow/v3alpha1"
    18  //	...
    19  //	ctx := context.Background()
    20  //	dialogflowService, err := dialogflow.NewService(ctx)
    21  //
    22  // In this example, Google Application Default Credentials are used for authentication.
    23  //
    24  // For information on how to create and obtain Application Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials.
    25  //
    26  // # Other authentication options
    27  //
    28  // By default, all available scopes (see "Constants") are used to authenticate. To restrict scopes, use option.WithScopes:
    29  //
    30  //	dialogflowService, err := dialogflow.NewService(ctx, option.WithScopes(dialogflow.DialogflowScope))
    31  //
    32  // To use an API key for authentication (note: some APIs do not support API keys), use option.WithAPIKey:
    33  //
    34  //	dialogflowService, err := dialogflow.NewService(ctx, option.WithAPIKey("AIza..."))
    35  //
    36  // To use an OAuth token (e.g., a user token obtained via a three-legged OAuth flow), use option.WithTokenSource:
    37  //
    38  //	config := &oauth2.Config{...}
    39  //	// ...
    40  //	token, err := config.Exchange(ctx, ...)
    41  //	dialogflowService, err := dialogflow.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token)))
    42  //
    43  // See https://godoc.org/google.golang.org/api/option/ for details on options.
    44  package dialogflow // import "google.golang.org/api/dialogflow/v3alpha1"
    45  
    46  import (
    47  	"bytes"
    48  	"context"
    49  	"encoding/json"
    50  	"errors"
    51  	"fmt"
    52  	"io"
    53  	"net/http"
    54  	"net/url"
    55  	"strconv"
    56  	"strings"
    57  
    58  	googleapi "google.golang.org/api/googleapi"
    59  	gensupport "google.golang.org/api/internal/gensupport"
    60  	option "google.golang.org/api/option"
    61  	internaloption "google.golang.org/api/option/internaloption"
    62  	htransport "google.golang.org/api/transport/http"
    63  )
    64  
    65  // Always reference these packages, just in case the auto-generated code
    66  // below doesn't.
    67  var _ = bytes.NewBuffer
    68  var _ = strconv.Itoa
    69  var _ = fmt.Sprintf
    70  var _ = json.NewDecoder
    71  var _ = io.Copy
    72  var _ = url.Parse
    73  var _ = gensupport.MarshalJSON
    74  var _ = googleapi.Version
    75  var _ = errors.New
    76  var _ = strings.Replace
    77  var _ = context.Canceled
    78  var _ = internaloption.WithDefaultEndpoint
    79  
    80  const apiId = "dialogflow:v3alpha1"
    81  const apiName = "dialogflow"
    82  const apiVersion = "v3alpha1"
    83  const basePath = "https://dialogflow.googleapis.com/"
    84  
    85  // OAuth2 scopes used by this API.
    86  const (
    87  	// View and manage your data across Google Cloud Platform services
    88  	CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform"
    89  
    90  	// View, manage and query your Dialogflow agents
    91  	DialogflowScope = "https://www.googleapis.com/auth/dialogflow"
    92  )
    93  
    94  // NewService creates a new Service.
    95  func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) {
    96  	scopesOption := option.WithScopes(
    97  		"https://www.googleapis.com/auth/cloud-platform",
    98  		"https://www.googleapis.com/auth/dialogflow",
    99  	)
   100  	// NOTE: prepend, so we don't override user-specified scopes.
   101  	opts = append([]option.ClientOption{scopesOption}, opts...)
   102  	opts = append(opts, internaloption.WithDefaultEndpoint(basePath))
   103  	client, endpoint, err := htransport.NewClient(ctx, opts...)
   104  	if err != nil {
   105  		return nil, err
   106  	}
   107  	s, err := New(client)
   108  	if err != nil {
   109  		return nil, err
   110  	}
   111  	if endpoint != "" {
   112  		s.BasePath = endpoint
   113  	}
   114  	return s, nil
   115  }
   116  
   117  // New creates a new Service. It uses the provided http.Client for requests.
   118  //
   119  // Deprecated: please use NewService instead.
   120  // To provide a custom HTTP client, use option.WithHTTPClient.
   121  // If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead.
   122  func New(client *http.Client) (*Service, error) {
   123  	if client == nil {
   124  		return nil, errors.New("client is nil")
   125  	}
   126  	s := &Service{client: client, BasePath: basePath}
   127  	s.Projects = NewProjectsService(s)
   128  	return s, nil
   129  }
   130  
   131  type Service struct {
   132  	client    *http.Client
   133  	BasePath  string // API endpoint base URL
   134  	UserAgent string // optional additional User-Agent fragment
   135  
   136  	Projects *ProjectsService
   137  }
   138  
   139  func (s *Service) userAgent() string {
   140  	if s.UserAgent == "" {
   141  		return googleapi.UserAgent
   142  	}
   143  	return googleapi.UserAgent + " " + s.UserAgent
   144  }
   145  
   146  func NewProjectsService(s *Service) *ProjectsService {
   147  	rs := &ProjectsService{s: s}
   148  	rs.Locations = NewProjectsLocationsService(s)
   149  	rs.Operations = NewProjectsOperationsService(s)
   150  	return rs
   151  }
   152  
   153  type ProjectsService struct {
   154  	s *Service
   155  
   156  	Locations *ProjectsLocationsService
   157  
   158  	Operations *ProjectsOperationsService
   159  }
   160  
   161  func NewProjectsLocationsService(s *Service) *ProjectsLocationsService {
   162  	rs := &ProjectsLocationsService{s: s}
   163  	rs.Operations = NewProjectsLocationsOperationsService(s)
   164  	return rs
   165  }
   166  
   167  type ProjectsLocationsService struct {
   168  	s *Service
   169  
   170  	Operations *ProjectsLocationsOperationsService
   171  }
   172  
   173  func NewProjectsLocationsOperationsService(s *Service) *ProjectsLocationsOperationsService {
   174  	rs := &ProjectsLocationsOperationsService{s: s}
   175  	return rs
   176  }
   177  
   178  type ProjectsLocationsOperationsService struct {
   179  	s *Service
   180  }
   181  
   182  func NewProjectsOperationsService(s *Service) *ProjectsOperationsService {
   183  	rs := &ProjectsOperationsService{s: s}
   184  	return rs
   185  }
   186  
   187  type ProjectsOperationsService struct {
   188  	s *Service
   189  }
   190  
   191  // GoogleCloudDialogflowCxV3beta1ExportAgentResponse: The response
   192  // message for Agents.ExportAgent.
   193  type GoogleCloudDialogflowCxV3beta1ExportAgentResponse struct {
   194  	// AgentContent: Uncompressed raw byte content for agent.
   195  	AgentContent string `json:"agentContent,omitempty"`
   196  
   197  	// AgentUri: The URI to a file containing the exported agent. This field
   198  	// is populated
   199  	// only if `agent_uri` is specified in ExportAgentRequest.
   200  	AgentUri string `json:"agentUri,omitempty"`
   201  
   202  	// ForceSendFields is a list of field names (e.g. "AgentContent") to
   203  	// unconditionally include in API requests. By default, fields with
   204  	// empty values are omitted from API requests. However, any non-pointer,
   205  	// non-interface field appearing in ForceSendFields will be sent to the
   206  	// server regardless of whether the field is empty or not. This may be
   207  	// used to include empty fields in Patch requests.
   208  	ForceSendFields []string `json:"-"`
   209  
   210  	// NullFields is a list of field names (e.g. "AgentContent") to include
   211  	// in API requests with the JSON null value. By default, fields with
   212  	// empty values are omitted from API requests. However, any field with
   213  	// an empty value appearing in NullFields will be sent to the server as
   214  	// null. It is an error if a field in this list has a non-empty value.
   215  	// This may be used to include null fields in Patch requests.
   216  	NullFields []string `json:"-"`
   217  }
   218  
   219  func (s *GoogleCloudDialogflowCxV3beta1ExportAgentResponse) MarshalJSON() ([]byte, error) {
   220  	type NoMethod GoogleCloudDialogflowCxV3beta1ExportAgentResponse
   221  	raw := NoMethod(*s)
   222  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   223  }
   224  
   225  // GoogleCloudDialogflowCxV3beta1PageInfo: Represents page information
   226  // communicated to and from the webhook.
   227  type GoogleCloudDialogflowCxV3beta1PageInfo struct {
   228  	// CurrentPage: Always present for WebhookRequest. Ignored for
   229  	// WebhookResponse.
   230  	// The unique identifier of the current page.
   231  	// Format: `projects/<Project ID>/locations/<Location
   232  	// ID>/agents/<Agent
   233  	// ID>/flows/<Flow ID>/pages/<Page ID>`.
   234  	CurrentPage string `json:"currentPage,omitempty"`
   235  
   236  	// FormInfo: Optional for both WebhookRequest and
   237  	// WebhookResponse.
   238  	// Information about the form.
   239  	FormInfo *GoogleCloudDialogflowCxV3beta1PageInfoFormInfo `json:"formInfo,omitempty"`
   240  
   241  	// NextPage: Deprecated. Please use WebhookResponse.target_page
   242  	// or
   243  	// WebhookResponse.target_flow instead.
   244  	//
   245  	// Optional for WebhookResponse.
   246  	// The unique identifier of the next page. This field can be set by
   247  	// the
   248  	// webhook to immediately transition to a page different from
   249  	// `current_page`.
   250  	// Format: `projects/<Project ID>/locations/<Location
   251  	// ID>/agents/<Agent
   252  	// ID>/flows/<Flow ID>/pages/<Page ID>`.
   253  	NextPage string `json:"nextPage,omitempty"`
   254  
   255  	// ForceSendFields is a list of field names (e.g. "CurrentPage") to
   256  	// unconditionally include in API requests. By default, fields with
   257  	// empty values are omitted from API requests. However, any non-pointer,
   258  	// non-interface field appearing in ForceSendFields will be sent to the
   259  	// server regardless of whether the field is empty or not. This may be
   260  	// used to include empty fields in Patch requests.
   261  	ForceSendFields []string `json:"-"`
   262  
   263  	// NullFields is a list of field names (e.g. "CurrentPage") to include
   264  	// in API requests with the JSON null value. By default, fields with
   265  	// empty values are omitted from API requests. However, any field with
   266  	// an empty value appearing in NullFields will be sent to the server as
   267  	// null. It is an error if a field in this list has a non-empty value.
   268  	// This may be used to include null fields in Patch requests.
   269  	NullFields []string `json:"-"`
   270  }
   271  
   272  func (s *GoogleCloudDialogflowCxV3beta1PageInfo) MarshalJSON() ([]byte, error) {
   273  	type NoMethod GoogleCloudDialogflowCxV3beta1PageInfo
   274  	raw := NoMethod(*s)
   275  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   276  }
   277  
   278  // GoogleCloudDialogflowCxV3beta1PageInfoFormInfo: Represents form
   279  // information.
   280  type GoogleCloudDialogflowCxV3beta1PageInfoFormInfo struct {
   281  	// ParameterInfo: Optional for both WebhookRequest and
   282  	// WebhookResponse.
   283  	// The parameters contained in the form. Note that the webhook cannot
   284  	// add
   285  	// or remove any form parameter.
   286  	ParameterInfo []*GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo `json:"parameterInfo,omitempty"`
   287  
   288  	// State: Always present for WebhookRequest. Ignored for
   289  	// WebhookResponse.
   290  	// The current state of the form.
   291  	//
   292  	// Possible values:
   293  	//   "FORM_STATE_UNSPECIFIED" - Not specified. This value should be
   294  	// never used.
   295  	//   "INITIALIZING" - The server is initializing the form. The webhook
   296  	// can process the form
   297  	// before parameter collection begins.
   298  	//   "COLLECTING" - The server is collecting form parameters from the
   299  	// user. The webhook can
   300  	// modify form parameters that have been collected or are to be
   301  	// collected.
   302  	//   "FINALIZED" - The server has collected all required form parameters
   303  	// from the user.
   304  	// The webhook can modify collected form parameters. If any
   305  	// required
   306  	// parameter is invalidated by the webhook, the form will return to
   307  	// the
   308  	// parameter collection state; otherwise, parameter collection
   309  	// will
   310  	// conclude.
   311  	State string `json:"state,omitempty"`
   312  
   313  	// ForceSendFields is a list of field names (e.g. "ParameterInfo") to
   314  	// unconditionally include in API requests. By default, fields with
   315  	// empty values are omitted from API requests. However, any non-pointer,
   316  	// non-interface field appearing in ForceSendFields will be sent to the
   317  	// server regardless of whether the field is empty or not. This may be
   318  	// used to include empty fields in Patch requests.
   319  	ForceSendFields []string `json:"-"`
   320  
   321  	// NullFields is a list of field names (e.g. "ParameterInfo") to include
   322  	// in API requests with the JSON null value. By default, fields with
   323  	// empty values are omitted from API requests. However, any field with
   324  	// an empty value appearing in NullFields will be sent to the server as
   325  	// null. It is an error if a field in this list has a non-empty value.
   326  	// This may be used to include null fields in Patch requests.
   327  	NullFields []string `json:"-"`
   328  }
   329  
   330  func (s *GoogleCloudDialogflowCxV3beta1PageInfoFormInfo) MarshalJSON() ([]byte, error) {
   331  	type NoMethod GoogleCloudDialogflowCxV3beta1PageInfoFormInfo
   332  	raw := NoMethod(*s)
   333  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   334  }
   335  
   336  // GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo:
   337  // Represents parameter information.
   338  type GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo struct {
   339  	// DisplayName: Always present for WebhookRequest. Required
   340  	// for
   341  	// WebhookResponse.
   342  	// The human-readable name of the parameter, unique within the form.
   343  	// This
   344  	// field cannot be modified by the webhook.
   345  	DisplayName string `json:"displayName,omitempty"`
   346  
   347  	// JustCollected: Optional for WebhookRequest. Ignored for
   348  	// WebhookResponse.
   349  	// Indicates if the parameter value was just collected on the
   350  	// last
   351  	// conversation turn.
   352  	JustCollected bool `json:"justCollected,omitempty"`
   353  
   354  	// Prompt: Not set for WebhookRequest. Optional for WebhookResponse.
   355  	// The prompt to send to the user to fill a required form parameter.
   356  	// This
   357  	// field can be set by the webhook. If set, this field overrides
   358  	// the
   359  	// prompt defined for the form parameter.
   360  	Prompt []*GoogleCloudDialogflowCxV3beta1ResponseMessage `json:"prompt,omitempty"`
   361  
   362  	// Required: Optional for both WebhookRequest and
   363  	// WebhookResponse.
   364  	// Indicates whether the parameter is required. Optional parameters
   365  	// will
   366  	// not trigger prompts; however, they are filled if the user
   367  	// specifies
   368  	// them. Required parameters must be filled before form filling
   369  	// concludes.
   370  	Required bool `json:"required,omitempty"`
   371  
   372  	// State: Always present for WebhookRequest. Required
   373  	// for
   374  	// WebhookResponse. The state of the parameter. This field can be set
   375  	// to INVALID by
   376  	// the webhook to invalidate the parameter; other values set by
   377  	// the
   378  	// webhook will be ignored.
   379  	//
   380  	// Possible values:
   381  	//   "PARAMETER_STATE_UNSPECIFIED" - Not specified. This value should be
   382  	// never used.
   383  	//   "EMPTY" - Indicates that the parameter does not have a value.
   384  	//   "INVALID" - Indicates that the parameter value is invalid. This
   385  	// field can be used
   386  	// by the webhook to invalidate the parameter and ask the server
   387  	// to
   388  	// collect it from the user again.
   389  	//   "FILLED" - Indicates that the parameter has a value.
   390  	State string `json:"state,omitempty"`
   391  
   392  	// Value: Optional for both WebhookRequest and WebhookResponse.
   393  	// The value of the parameter. This field can be set by the webhook
   394  	// to
   395  	// change the parameter value.
   396  	Value interface{} `json:"value,omitempty"`
   397  
   398  	// ForceSendFields is a list of field names (e.g. "DisplayName") to
   399  	// unconditionally include in API requests. By default, fields with
   400  	// empty values are omitted from API requests. However, any non-pointer,
   401  	// non-interface field appearing in ForceSendFields will be sent to the
   402  	// server regardless of whether the field is empty or not. This may be
   403  	// used to include empty fields in Patch requests.
   404  	ForceSendFields []string `json:"-"`
   405  
   406  	// NullFields is a list of field names (e.g. "DisplayName") to include
   407  	// in API requests with the JSON null value. By default, fields with
   408  	// empty values are omitted from API requests. However, any field with
   409  	// an empty value appearing in NullFields will be sent to the server as
   410  	// null. It is an error if a field in this list has a non-empty value.
   411  	// This may be used to include null fields in Patch requests.
   412  	NullFields []string `json:"-"`
   413  }
   414  
   415  func (s *GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo) MarshalJSON() ([]byte, error) {
   416  	type NoMethod GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo
   417  	raw := NoMethod(*s)
   418  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   419  }
   420  
   421  // GoogleCloudDialogflowCxV3beta1ResponseMessage: Represents a response
   422  // message that can be returned by a conversational agent.
   423  //
   424  // Response messages are also used for output audio synthesis. The
   425  // approach is
   426  // as follows:
   427  //
   428  //   - If at least one OutputAudioText response is present, then all
   429  //     OutputAudioText responses are linearly concatenated, and the result
   430  //
   431  // is used
   432  //
   433  //	for output audio synthesis.
   434  //
   435  // * If the OutputAudioText responses are a mixture of text and SSML,
   436  // then the
   437  //
   438  //	concatenated result is treated as SSML; otherwise, the result is
   439  //
   440  // treated as
   441  //
   442  //	either text or SSML as appropriate. The agent designer should
   443  //
   444  // ideally use
   445  //
   446  //	either text or SSML consistently throughout the bot design.
   447  //
   448  // * Otherwise, all Text responses are linearly concatenated, and the
   449  // result is
   450  //
   451  //	used for output audio synthesis.
   452  //
   453  // This approach allows for more sophisticated user experience
   454  // scenarios, where
   455  // the text displayed to the user may differ from what is heard.
   456  type GoogleCloudDialogflowCxV3beta1ResponseMessage struct {
   457  	// ConversationSuccess: Indicates that the conversation succeeded.
   458  	ConversationSuccess *GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess `json:"conversationSuccess,omitempty"`
   459  
   460  	// HumanAgentHandoff: Hands off conversation to a human agent.
   461  	HumanAgentHandoff *GoogleCloudDialogflowCxV3beta1ResponseMessageHumanAgentHandoff `json:"humanAgentHandoff,omitempty"`
   462  
   463  	// Payload: Returns a response containing a custom, platform-specific
   464  	// payload.
   465  	Payload googleapi.RawMessage `json:"payload,omitempty"`
   466  
   467  	// Text: Returns a text response.
   468  	Text *GoogleCloudDialogflowCxV3beta1ResponseMessageText `json:"text,omitempty"`
   469  
   470  	// ForceSendFields is a list of field names (e.g. "ConversationSuccess")
   471  	// to unconditionally include in API requests. By default, fields with
   472  	// empty values are omitted from API requests. However, any non-pointer,
   473  	// non-interface field appearing in ForceSendFields will be sent to the
   474  	// server regardless of whether the field is empty or not. This may be
   475  	// used to include empty fields in Patch requests.
   476  	ForceSendFields []string `json:"-"`
   477  
   478  	// NullFields is a list of field names (e.g. "ConversationSuccess") to
   479  	// include in API requests with the JSON null value. By default, fields
   480  	// with empty values are omitted from API requests. However, any field
   481  	// with an empty value appearing in NullFields will be sent to the
   482  	// server as null. It is an error if a field in this list has a
   483  	// non-empty value. This may be used to include null fields in Patch
   484  	// requests.
   485  	NullFields []string `json:"-"`
   486  }
   487  
   488  func (s *GoogleCloudDialogflowCxV3beta1ResponseMessage) MarshalJSON() ([]byte, error) {
   489  	type NoMethod GoogleCloudDialogflowCxV3beta1ResponseMessage
   490  	raw := NoMethod(*s)
   491  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   492  }
   493  
   494  // GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess:
   495  // Indicates that the conversation succeeded, i.e., the bot handled the
   496  // issue
   497  // that the customer talked to it about.
   498  //
   499  // Dialogflow only uses this to determine which conversations should
   500  // be
   501  // counted as successful and doesn't process the metadata in this
   502  // message in
   503  // any way. Note that Dialogflow also considers conversations that get
   504  // to the
   505  // conversation end page as successful even if they don't
   506  // return
   507  // ConversationSuccess.
   508  //
   509  // You may set this, for example:
   510  //   - In the entry_fulfillment of a Page if
   511  //     entering the page indicates that the conversation succeeded.
   512  //   - In a webhook response when you determine that you handled the
   513  //
   514  // customer
   515  //
   516  //	issue.
   517  type GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess struct {
   518  	// Metadata: Custom metadata. Dialogflow doesn't impose any structure on
   519  	// this.
   520  	Metadata googleapi.RawMessage `json:"metadata,omitempty"`
   521  
   522  	// ForceSendFields is a list of field names (e.g. "Metadata") to
   523  	// unconditionally include in API requests. By default, fields with
   524  	// empty values are omitted from API requests. However, any non-pointer,
   525  	// non-interface field appearing in ForceSendFields will be sent to the
   526  	// server regardless of whether the field is empty or not. This may be
   527  	// used to include empty fields in Patch requests.
   528  	ForceSendFields []string `json:"-"`
   529  
   530  	// NullFields is a list of field names (e.g. "Metadata") to include in
   531  	// API requests with the JSON null value. By default, fields with empty
   532  	// values are omitted from API requests. However, any field with an
   533  	// empty value appearing in NullFields will be sent to the server as
   534  	// null. It is an error if a field in this list has a non-empty value.
   535  	// This may be used to include null fields in Patch requests.
   536  	NullFields []string `json:"-"`
   537  }
   538  
   539  func (s *GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess) MarshalJSON() ([]byte, error) {
   540  	type NoMethod GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess
   541  	raw := NoMethod(*s)
   542  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   543  }
   544  
   545  // GoogleCloudDialogflowCxV3beta1ResponseMessageHumanAgentHandoff:
   546  // Indicates that the conversation should be handed off to a human
   547  // agent.
   548  //
   549  // Dialogflow only uses this to determine which conversations were
   550  // handed off
   551  // to a human agent for measurement purposes. What else to do with this
   552  // signal
   553  // is up to you and your handoff procedures.
   554  //
   555  // You may set this, for example:
   556  //   - In the entry_fulfillment of a Page if
   557  //     entering the page indicates something went extremely wrong in the
   558  //     conversation.
   559  //   - In a webhook response when you determine that the customer issue
   560  //
   561  // can only
   562  //
   563  //	be handled by a human.
   564  type GoogleCloudDialogflowCxV3beta1ResponseMessageHumanAgentHandoff struct {
   565  	// Metadata: Custom metadata for your handoff procedure. Dialogflow
   566  	// doesn't impose
   567  	// any structure on this.
   568  	Metadata googleapi.RawMessage `json:"metadata,omitempty"`
   569  
   570  	// ForceSendFields is a list of field names (e.g. "Metadata") to
   571  	// unconditionally include in API requests. By default, fields with
   572  	// empty values are omitted from API requests. However, any non-pointer,
   573  	// non-interface field appearing in ForceSendFields will be sent to the
   574  	// server regardless of whether the field is empty or not. This may be
   575  	// used to include empty fields in Patch requests.
   576  	ForceSendFields []string `json:"-"`
   577  
   578  	// NullFields is a list of field names (e.g. "Metadata") to include in
   579  	// API requests with the JSON null value. By default, fields with empty
   580  	// values are omitted from API requests. However, any field with an
   581  	// empty value appearing in NullFields will be sent to the server as
   582  	// null. It is an error if a field in this list has a non-empty value.
   583  	// This may be used to include null fields in Patch requests.
   584  	NullFields []string `json:"-"`
   585  }
   586  
   587  func (s *GoogleCloudDialogflowCxV3beta1ResponseMessageHumanAgentHandoff) MarshalJSON() ([]byte, error) {
   588  	type NoMethod GoogleCloudDialogflowCxV3beta1ResponseMessageHumanAgentHandoff
   589  	raw := NoMethod(*s)
   590  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   591  }
   592  
   593  // GoogleCloudDialogflowCxV3beta1ResponseMessageText: The text response
   594  // message.
   595  type GoogleCloudDialogflowCxV3beta1ResponseMessageText struct {
   596  	// Text: A collection of text responses.
   597  	Text []string `json:"text,omitempty"`
   598  
   599  	// ForceSendFields is a list of field names (e.g. "Text") to
   600  	// unconditionally include in API requests. By default, fields with
   601  	// empty values are omitted from API requests. However, any non-pointer,
   602  	// non-interface field appearing in ForceSendFields will be sent to the
   603  	// server regardless of whether the field is empty or not. This may be
   604  	// used to include empty fields in Patch requests.
   605  	ForceSendFields []string `json:"-"`
   606  
   607  	// NullFields is a list of field names (e.g. "Text") to include in API
   608  	// requests with the JSON null value. By default, fields with empty
   609  	// values are omitted from API requests. However, any field with an
   610  	// empty value appearing in NullFields will be sent to the server as
   611  	// null. It is an error if a field in this list has a non-empty value.
   612  	// This may be used to include null fields in Patch requests.
   613  	NullFields []string `json:"-"`
   614  }
   615  
   616  func (s *GoogleCloudDialogflowCxV3beta1ResponseMessageText) MarshalJSON() ([]byte, error) {
   617  	type NoMethod GoogleCloudDialogflowCxV3beta1ResponseMessageText
   618  	raw := NoMethod(*s)
   619  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   620  }
   621  
   622  // GoogleCloudDialogflowCxV3beta1SessionInfo: Represents session
   623  // information communicated to and from the webhook.
   624  type GoogleCloudDialogflowCxV3beta1SessionInfo struct {
   625  	// Parameters: Optional for WebhookRequest. Optional for
   626  	// WebhookResponse.
   627  	// All parameters collected from forms and intents during the
   628  	// session.
   629  	// Parameters can be created, updated, or removed by the webhook. To
   630  	// remove a
   631  	// parameter from the session, the webhook should explicitly set the
   632  	// parameter
   633  	// value to null in WebhookResponse. The map is keyed by
   634  	// parameters'
   635  	// display names.
   636  	Parameters googleapi.RawMessage `json:"parameters,omitempty"`
   637  
   638  	// Session: Always present for WebhookRequest. Ignored for
   639  	// WebhookResponse.
   640  	// The unique identifier of the session. This
   641  	// field can be used by the webhook to identify a user.
   642  	// Format: `projects/<Project ID>/locations/<Location
   643  	// ID>/agents/<Agent
   644  	// ID>/sessions/<Session ID>`.
   645  	Session string `json:"session,omitempty"`
   646  
   647  	// ForceSendFields is a list of field names (e.g. "Parameters") to
   648  	// unconditionally include in API requests. By default, fields with
   649  	// empty values are omitted from API requests. However, any non-pointer,
   650  	// non-interface field appearing in ForceSendFields will be sent to the
   651  	// server regardless of whether the field is empty or not. This may be
   652  	// used to include empty fields in Patch requests.
   653  	ForceSendFields []string `json:"-"`
   654  
   655  	// NullFields is a list of field names (e.g. "Parameters") to include in
   656  	// API requests with the JSON null value. By default, fields with empty
   657  	// values are omitted from API requests. However, any field with an
   658  	// empty value appearing in NullFields will be sent to the server as
   659  	// null. It is an error if a field in this list has a non-empty value.
   660  	// This may be used to include null fields in Patch requests.
   661  	NullFields []string `json:"-"`
   662  }
   663  
   664  func (s *GoogleCloudDialogflowCxV3beta1SessionInfo) MarshalJSON() ([]byte, error) {
   665  	type NoMethod GoogleCloudDialogflowCxV3beta1SessionInfo
   666  	raw := NoMethod(*s)
   667  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   668  }
   669  
   670  // GoogleCloudDialogflowCxV3beta1WebhookRequest: The request message for
   671  // a webhook call.
   672  type GoogleCloudDialogflowCxV3beta1WebhookRequest struct {
   673  	// DetectIntentResponseId: Always present. The unique identifier of the
   674  	// DetectIntentResponse that
   675  	// will be returned to the API caller.
   676  	DetectIntentResponseId string `json:"detectIntentResponseId,omitempty"`
   677  
   678  	// FulfillmentInfo: Always present. Information about the fulfillment
   679  	// that triggered this
   680  	// webhook call.
   681  	FulfillmentInfo *GoogleCloudDialogflowCxV3beta1WebhookRequestFulfillmentInfo `json:"fulfillmentInfo,omitempty"`
   682  
   683  	// IntentInfo: Information about the last matched intent.
   684  	IntentInfo *GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo `json:"intentInfo,omitempty"`
   685  
   686  	// Messages: The list of rich message responses to present to the user.
   687  	// Webhook can
   688  	// choose to append or replace this list
   689  	// in
   690  	// WebhookResponse.fulfillment_response;
   691  	Messages []*GoogleCloudDialogflowCxV3beta1ResponseMessage `json:"messages,omitempty"`
   692  
   693  	// PageInfo: Information about page status.
   694  	PageInfo *GoogleCloudDialogflowCxV3beta1PageInfo `json:"pageInfo,omitempty"`
   695  
   696  	// Payload: Custom data set in QueryParameters.payload.
   697  	Payload googleapi.RawMessage `json:"payload,omitempty"`
   698  
   699  	// SessionInfo: Information about session status.
   700  	SessionInfo *GoogleCloudDialogflowCxV3beta1SessionInfo `json:"sessionInfo,omitempty"`
   701  
   702  	// ForceSendFields is a list of field names (e.g.
   703  	// "DetectIntentResponseId") to unconditionally include in API requests.
   704  	// By default, fields with empty values are omitted from API requests.
   705  	// However, any non-pointer, non-interface field appearing in
   706  	// ForceSendFields will be sent to the server regardless of whether the
   707  	// field is empty or not. This may be used to include empty fields in
   708  	// Patch requests.
   709  	ForceSendFields []string `json:"-"`
   710  
   711  	// NullFields is a list of field names (e.g. "DetectIntentResponseId")
   712  	// to include in API requests with the JSON null value. By default,
   713  	// fields with empty values are omitted from API requests. However, any
   714  	// field with an empty value appearing in NullFields will be sent to the
   715  	// server as null. It is an error if a field in this list has a
   716  	// non-empty value. This may be used to include null fields in Patch
   717  	// requests.
   718  	NullFields []string `json:"-"`
   719  }
   720  
   721  func (s *GoogleCloudDialogflowCxV3beta1WebhookRequest) MarshalJSON() ([]byte, error) {
   722  	type NoMethod GoogleCloudDialogflowCxV3beta1WebhookRequest
   723  	raw := NoMethod(*s)
   724  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   725  }
   726  
   727  // GoogleCloudDialogflowCxV3beta1WebhookRequestFulfillmentInfo:
   728  // Represents fulfillment information communicated to the webhook.
   729  type GoogleCloudDialogflowCxV3beta1WebhookRequestFulfillmentInfo struct {
   730  	// Tag: Always present. The tag used to identify which fulfillment is
   731  	// being
   732  	// called.
   733  	Tag string `json:"tag,omitempty"`
   734  
   735  	// ForceSendFields is a list of field names (e.g. "Tag") to
   736  	// unconditionally include in API requests. By default, fields with
   737  	// empty values are omitted from API requests. However, any non-pointer,
   738  	// non-interface field appearing in ForceSendFields will be sent to the
   739  	// server regardless of whether the field is empty or not. This may be
   740  	// used to include empty fields in Patch requests.
   741  	ForceSendFields []string `json:"-"`
   742  
   743  	// NullFields is a list of field names (e.g. "Tag") to include in API
   744  	// requests with the JSON null value. By default, fields with empty
   745  	// values are omitted from API requests. However, any field with an
   746  	// empty value appearing in NullFields will be sent to the server as
   747  	// null. It is an error if a field in this list has a non-empty value.
   748  	// This may be used to include null fields in Patch requests.
   749  	NullFields []string `json:"-"`
   750  }
   751  
   752  func (s *GoogleCloudDialogflowCxV3beta1WebhookRequestFulfillmentInfo) MarshalJSON() ([]byte, error) {
   753  	type NoMethod GoogleCloudDialogflowCxV3beta1WebhookRequestFulfillmentInfo
   754  	raw := NoMethod(*s)
   755  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   756  }
   757  
   758  // GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo: Represents
   759  // intent information communicated to the webhook.
   760  type GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo struct {
   761  	// LastMatchedIntent: Always present. The unique identifier of the last
   762  	// matched
   763  	// intent. Format: `projects/<Project
   764  	// ID>/locations/<Location
   765  	// ID>/agents/<Agent ID>/intents/<Intent ID>`.
   766  	LastMatchedIntent string `json:"lastMatchedIntent,omitempty"`
   767  
   768  	// Parameters: Parameters identified as a result of intent matching.
   769  	// This is a map of
   770  	// the name of the identified parameter to the value of the
   771  	// parameter
   772  	// identified from the user's utterance. All parameters defined in
   773  	// the
   774  	// matched intent that are identified will be surfaced here.
   775  	Parameters map[string]GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfoIntentParameterValue `json:"parameters,omitempty"`
   776  
   777  	// ForceSendFields is a list of field names (e.g. "LastMatchedIntent")
   778  	// to unconditionally include in API requests. By default, fields with
   779  	// empty values are omitted from API requests. However, any non-pointer,
   780  	// non-interface field appearing in ForceSendFields will be sent to the
   781  	// server regardless of whether the field is empty or not. This may be
   782  	// used to include empty fields in Patch requests.
   783  	ForceSendFields []string `json:"-"`
   784  
   785  	// NullFields is a list of field names (e.g. "LastMatchedIntent") to
   786  	// include in API requests with the JSON null value. By default, fields
   787  	// with empty values are omitted from API requests. However, any field
   788  	// with an empty value appearing in NullFields will be sent to the
   789  	// server as null. It is an error if a field in this list has a
   790  	// non-empty value. This may be used to include null fields in Patch
   791  	// requests.
   792  	NullFields []string `json:"-"`
   793  }
   794  
   795  func (s *GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo) MarshalJSON() ([]byte, error) {
   796  	type NoMethod GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo
   797  	raw := NoMethod(*s)
   798  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   799  }
   800  
   801  // GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfoIntentParameterV
   802  // alue: Represents a value for an intent parameter.
   803  type GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfoIntentParameterValue struct {
   804  	// OriginalValue: Always present. Original text value extracted from
   805  	// user utterance.
   806  	OriginalValue string `json:"originalValue,omitempty"`
   807  
   808  	// ResolvedValue: Always present. Structured value for the parameter
   809  	// extracted from user
   810  	// utterance.
   811  	ResolvedValue interface{} `json:"resolvedValue,omitempty"`
   812  
   813  	// ForceSendFields is a list of field names (e.g. "OriginalValue") to
   814  	// unconditionally include in API requests. By default, fields with
   815  	// empty values are omitted from API requests. However, any non-pointer,
   816  	// non-interface field appearing in ForceSendFields will be sent to the
   817  	// server regardless of whether the field is empty or not. This may be
   818  	// used to include empty fields in Patch requests.
   819  	ForceSendFields []string `json:"-"`
   820  
   821  	// NullFields is a list of field names (e.g. "OriginalValue") to include
   822  	// in API requests with the JSON null value. By default, fields with
   823  	// empty values are omitted from API requests. However, any field with
   824  	// an empty value appearing in NullFields will be sent to the server as
   825  	// null. It is an error if a field in this list has a non-empty value.
   826  	// This may be used to include null fields in Patch requests.
   827  	NullFields []string `json:"-"`
   828  }
   829  
   830  func (s *GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfoIntentParameterValue) MarshalJSON() ([]byte, error) {
   831  	type NoMethod GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfoIntentParameterValue
   832  	raw := NoMethod(*s)
   833  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   834  }
   835  
   836  // GoogleCloudDialogflowCxV3beta1WebhookResponse: The response message
   837  // for a webhook call.
   838  type GoogleCloudDialogflowCxV3beta1WebhookResponse struct {
   839  	// FulfillmentResponse: The fulfillment response to send to the user.
   840  	// This field can be omitted by
   841  	// the webhook if it does not intend to send any response to the user.
   842  	FulfillmentResponse *GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse `json:"fulfillmentResponse,omitempty"`
   843  
   844  	// PageInfo: Information about page status. This field can be omitted by
   845  	// the webhook if
   846  	// it does not intend to modify page status.
   847  	PageInfo *GoogleCloudDialogflowCxV3beta1PageInfo `json:"pageInfo,omitempty"`
   848  
   849  	// Payload: Value to append directly to QueryResult.webhook_payloads.
   850  	Payload googleapi.RawMessage `json:"payload,omitempty"`
   851  
   852  	// SessionInfo: Information about session status. This field can be
   853  	// omitted by the webhook
   854  	// if it does not intend to modify session status.
   855  	SessionInfo *GoogleCloudDialogflowCxV3beta1SessionInfo `json:"sessionInfo,omitempty"`
   856  
   857  	// TargetFlow: The target flow to transition to.
   858  	// Format: `projects/<Project ID>/locations/<Location
   859  	// ID>/agents/<Agent
   860  	// ID>/flows/<Flow ID>`.
   861  	TargetFlow string `json:"targetFlow,omitempty"`
   862  
   863  	// TargetPage: The target page to transition to.
   864  	// Format: `projects/<Project ID>/locations/<Location
   865  	// ID>/agents/<Agent
   866  	// ID>/flows/<Flow ID>/pages/<Page ID>`.
   867  	TargetPage string `json:"targetPage,omitempty"`
   868  
   869  	// ForceSendFields is a list of field names (e.g. "FulfillmentResponse")
   870  	// to unconditionally include in API requests. By default, fields with
   871  	// empty values are omitted from API requests. However, any non-pointer,
   872  	// non-interface field appearing in ForceSendFields will be sent to the
   873  	// server regardless of whether the field is empty or not. This may be
   874  	// used to include empty fields in Patch requests.
   875  	ForceSendFields []string `json:"-"`
   876  
   877  	// NullFields is a list of field names (e.g. "FulfillmentResponse") to
   878  	// include in API requests with the JSON null value. By default, fields
   879  	// with empty values are omitted from API requests. However, any field
   880  	// with an empty value appearing in NullFields will be sent to the
   881  	// server as null. It is an error if a field in this list has a
   882  	// non-empty value. This may be used to include null fields in Patch
   883  	// requests.
   884  	NullFields []string `json:"-"`
   885  }
   886  
   887  func (s *GoogleCloudDialogflowCxV3beta1WebhookResponse) MarshalJSON() ([]byte, error) {
   888  	type NoMethod GoogleCloudDialogflowCxV3beta1WebhookResponse
   889  	raw := NoMethod(*s)
   890  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   891  }
   892  
   893  // GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse:
   894  // Represents a fulfillment response to the user.
   895  type GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse struct {
   896  	// MergeBehavior: Merge behavior for `messages`.
   897  	//
   898  	// Possible values:
   899  	//   "MERGE_BEHAVIOR_UNSPECIFIED" - Not specified. `APPEND` will be
   900  	// used.
   901  	//   "APPEND" - `messages` will be appended to the list of messages
   902  	// waiting to be sent
   903  	// to the user.
   904  	//   "REPLACE" - `messages` will replace the list of messages waiting to
   905  	// be sent to the
   906  	// user.
   907  	MergeBehavior string `json:"mergeBehavior,omitempty"`
   908  
   909  	// Messages: The list of rich message responses to present to the user.
   910  	Messages []*GoogleCloudDialogflowCxV3beta1ResponseMessage `json:"messages,omitempty"`
   911  
   912  	// ForceSendFields is a list of field names (e.g. "MergeBehavior") to
   913  	// unconditionally include in API requests. By default, fields with
   914  	// empty values are omitted from API requests. However, any non-pointer,
   915  	// non-interface field appearing in ForceSendFields will be sent to the
   916  	// server regardless of whether the field is empty or not. This may be
   917  	// used to include empty fields in Patch requests.
   918  	ForceSendFields []string `json:"-"`
   919  
   920  	// NullFields is a list of field names (e.g. "MergeBehavior") to include
   921  	// in API requests with the JSON null value. By default, fields with
   922  	// empty values are omitted from API requests. However, any field with
   923  	// an empty value appearing in NullFields will be sent to the server as
   924  	// null. It is an error if a field in this list has a non-empty value.
   925  	// This may be used to include null fields in Patch requests.
   926  	NullFields []string `json:"-"`
   927  }
   928  
   929  func (s *GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse) MarshalJSON() ([]byte, error) {
   930  	type NoMethod GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse
   931  	raw := NoMethod(*s)
   932  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   933  }
   934  
   935  // GoogleCloudDialogflowV2AnnotatedMessagePart: Represents a part of a
   936  // message possibly annotated with an entity. The part
   937  // can be an entity or purely a part of the message between two entities
   938  // or
   939  // message start/end.
   940  type GoogleCloudDialogflowV2AnnotatedMessagePart struct {
   941  	// EntityType: The [Dialogflow system
   942  	// entity
   943  	// type](https://cloud.google.com/dialogflow/docs/reference/system
   944  	// -entities)
   945  	// of this message part. If this is empty, Dialogflow could not annotate
   946  	// the
   947  	// phrase part with a system entity.
   948  	EntityType string `json:"entityType,omitempty"`
   949  
   950  	// FormattedValue: The [Dialogflow system entity formatted
   951  	// value
   952  	// ](https://cloud.google.com/dialogflow/docs/reference/system-enti
   953  	// ties) of
   954  	// this message part. For example for a system entity of
   955  	// type
   956  	// `@sys.unit-currency`, this may contain:
   957  	// <pre>
   958  	// {
   959  	//   "amount": 5,
   960  	//   "currency": "USD"
   961  	// }
   962  	// </pre>
   963  	FormattedValue interface{} `json:"formattedValue,omitempty"`
   964  
   965  	// Text: A part of a message possibly annotated with an entity.
   966  	Text string `json:"text,omitempty"`
   967  
   968  	// ForceSendFields is a list of field names (e.g. "EntityType") to
   969  	// unconditionally include in API requests. By default, fields with
   970  	// empty values are omitted from API requests. However, any non-pointer,
   971  	// non-interface field appearing in ForceSendFields will be sent to the
   972  	// server regardless of whether the field is empty or not. This may be
   973  	// used to include empty fields in Patch requests.
   974  	ForceSendFields []string `json:"-"`
   975  
   976  	// NullFields is a list of field names (e.g. "EntityType") to include in
   977  	// API requests with the JSON null value. By default, fields with empty
   978  	// values are omitted from API requests. However, any field with an
   979  	// empty value appearing in NullFields will be sent to the server as
   980  	// null. It is an error if a field in this list has a non-empty value.
   981  	// This may be used to include null fields in Patch requests.
   982  	NullFields []string `json:"-"`
   983  }
   984  
   985  func (s *GoogleCloudDialogflowV2AnnotatedMessagePart) MarshalJSON() ([]byte, error) {
   986  	type NoMethod GoogleCloudDialogflowV2AnnotatedMessagePart
   987  	raw := NoMethod(*s)
   988  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   989  }
   990  
   991  // GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse: The response
   992  // message for EntityTypes.BatchUpdateEntityTypes.
   993  type GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse struct {
   994  	// EntityTypes: The collection of updated or created entity types.
   995  	EntityTypes []*GoogleCloudDialogflowV2EntityType `json:"entityTypes,omitempty"`
   996  
   997  	// ForceSendFields is a list of field names (e.g. "EntityTypes") to
   998  	// unconditionally include in API requests. By default, fields with
   999  	// empty values are omitted from API requests. However, any non-pointer,
  1000  	// non-interface field appearing in ForceSendFields will be sent to the
  1001  	// server regardless of whether the field is empty or not. This may be
  1002  	// used to include empty fields in Patch requests.
  1003  	ForceSendFields []string `json:"-"`
  1004  
  1005  	// NullFields is a list of field names (e.g. "EntityTypes") to include
  1006  	// in API requests with the JSON null value. By default, fields with
  1007  	// empty values are omitted from API requests. However, any field with
  1008  	// an empty value appearing in NullFields will be sent to the server as
  1009  	// null. It is an error if a field in this list has a non-empty value.
  1010  	// This may be used to include null fields in Patch requests.
  1011  	NullFields []string `json:"-"`
  1012  }
  1013  
  1014  func (s *GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse) MarshalJSON() ([]byte, error) {
  1015  	type NoMethod GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse
  1016  	raw := NoMethod(*s)
  1017  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  1018  }
  1019  
  1020  // GoogleCloudDialogflowV2BatchUpdateIntentsResponse: The response
  1021  // message for Intents.BatchUpdateIntents.
  1022  type GoogleCloudDialogflowV2BatchUpdateIntentsResponse struct {
  1023  	// Intents: The collection of updated or created intents.
  1024  	Intents []*GoogleCloudDialogflowV2Intent `json:"intents,omitempty"`
  1025  
  1026  	// ForceSendFields is a list of field names (e.g. "Intents") to
  1027  	// unconditionally include in API requests. By default, fields with
  1028  	// empty values are omitted from API requests. However, any non-pointer,
  1029  	// non-interface field appearing in ForceSendFields will be sent to the
  1030  	// server regardless of whether the field is empty or not. This may be
  1031  	// used to include empty fields in Patch requests.
  1032  	ForceSendFields []string `json:"-"`
  1033  
  1034  	// NullFields is a list of field names (e.g. "Intents") to include in
  1035  	// API requests with the JSON null value. By default, fields with empty
  1036  	// values are omitted from API requests. However, any field with an
  1037  	// empty value appearing in NullFields will be sent to the server as
  1038  	// null. It is an error if a field in this list has a non-empty value.
  1039  	// This may be used to include null fields in Patch requests.
  1040  	NullFields []string `json:"-"`
  1041  }
  1042  
  1043  func (s *GoogleCloudDialogflowV2BatchUpdateIntentsResponse) MarshalJSON() ([]byte, error) {
  1044  	type NoMethod GoogleCloudDialogflowV2BatchUpdateIntentsResponse
  1045  	raw := NoMethod(*s)
  1046  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  1047  }
  1048  
  1049  // GoogleCloudDialogflowV2Context: Represents a context.
  1050  type GoogleCloudDialogflowV2Context struct {
  1051  	// LifespanCount: Optional. The number of conversational query requests
  1052  	// after which the
  1053  	// context expires. The default is `0`. If set to `0`, the context
  1054  	// expires
  1055  	// immediately. Contexts expire automatically after 20 minutes if
  1056  	// there
  1057  	// are no matching queries.
  1058  	LifespanCount int64 `json:"lifespanCount,omitempty"`
  1059  
  1060  	// Name: Required. The unique identifier of the context.
  1061  	// Format:
  1062  	// `projects/<Project ID>/agent/sessions/<Session ID>/contexts/<Context
  1063  	// ID>`,
  1064  	// or `projects/<Project ID>/agent/environments/<Environment
  1065  	// ID>/users/<User
  1066  	// ID>/sessions/<Session ID>/contexts/<Context ID>`.
  1067  	//
  1068  	// The `Context ID` is always converted to lowercase, may only
  1069  	// contain
  1070  	// characters in a-zA-Z0-9_-% and may be at most 250 bytes long.
  1071  	//
  1072  	// If `Environment ID` is not specified, we assume default
  1073  	// 'draft'
  1074  	// environment. If `User ID` is not specified, we assume default '-'
  1075  	// user.
  1076  	//
  1077  	// The following context names are reserved for internal use by
  1078  	// Dialogflow.
  1079  	// You should not use these contexts or create contexts with these
  1080  	// names:
  1081  	//
  1082  	// * `__system_counters__`
  1083  	// * `*_id_dialog_context`
  1084  	// * `*_dialog_params_size`
  1085  	Name string `json:"name,omitempty"`
  1086  
  1087  	// Parameters: Optional. The collection of parameters associated with
  1088  	// this context.
  1089  	//
  1090  	// Depending on your protocol or client library language, this is a
  1091  	// map, associative array, symbol table, dictionary, or JSON
  1092  	// object
  1093  	// composed of a collection of (MapKey, MapValue) pairs:
  1094  	//
  1095  	// -   MapKey type: string
  1096  	// -   MapKey value: parameter name
  1097  	// -   MapValue type:
  1098  	//     -   If parameter's entity type is a composite entity: map
  1099  	//     -   Else: string or number, depending on parameter value type
  1100  	// -   MapValue value:
  1101  	//     -   If parameter's entity type is a composite entity:
  1102  	//         map from composite entity property names to property values
  1103  	//     -   Else: parameter value
  1104  	Parameters googleapi.RawMessage `json:"parameters,omitempty"`
  1105  
  1106  	// ForceSendFields is a list of field names (e.g. "LifespanCount") to
  1107  	// unconditionally include in API requests. By default, fields with
  1108  	// empty values are omitted from API requests. However, any non-pointer,
  1109  	// non-interface field appearing in ForceSendFields will be sent to the
  1110  	// server regardless of whether the field is empty or not. This may be
  1111  	// used to include empty fields in Patch requests.
  1112  	ForceSendFields []string `json:"-"`
  1113  
  1114  	// NullFields is a list of field names (e.g. "LifespanCount") to include
  1115  	// in API requests with the JSON null value. By default, fields with
  1116  	// empty values are omitted from API requests. However, any field with
  1117  	// an empty value appearing in NullFields will be sent to the server as
  1118  	// null. It is an error if a field in this list has a non-empty value.
  1119  	// This may be used to include null fields in Patch requests.
  1120  	NullFields []string `json:"-"`
  1121  }
  1122  
  1123  func (s *GoogleCloudDialogflowV2Context) MarshalJSON() ([]byte, error) {
  1124  	type NoMethod GoogleCloudDialogflowV2Context
  1125  	raw := NoMethod(*s)
  1126  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  1127  }
  1128  
  1129  // GoogleCloudDialogflowV2ConversationEvent: Represents a notification
  1130  // sent to Cloud Pub/Sub subscribers for conversation
  1131  // lifecycle events.
  1132  type GoogleCloudDialogflowV2ConversationEvent struct {
  1133  	// Conversation: The unique identifier of the conversation this
  1134  	// notification
  1135  	// refers to.
  1136  	// Format: `projects/<Project ID>/conversations/<Conversation ID>`.
  1137  	Conversation string `json:"conversation,omitempty"`
  1138  
  1139  	// ErrorStatus: More detailed information about an error. Only set for
  1140  	// type
  1141  	// UNRECOVERABLE_ERROR_IN_PHONE_CALL.
  1142  	ErrorStatus *GoogleRpcStatus `json:"errorStatus,omitempty"`
  1143  
  1144  	// NewMessagePayload: Payload of NEW_MESSAGE event.
  1145  	NewMessagePayload *GoogleCloudDialogflowV2Message `json:"newMessagePayload,omitempty"`
  1146  
  1147  	// Type: The type of the event that this notification refers to.
  1148  	//
  1149  	// Possible values:
  1150  	//   "TYPE_UNSPECIFIED" - Type not set.
  1151  	//   "CONVERSATION_STARTED" - A new conversation has been opened. This
  1152  	// is fired when a telephone call
  1153  	// is answered, or a conversation is created via the API.
  1154  	//   "CONVERSATION_FINISHED" - An existing conversation has closed. This
  1155  	// is fired when a telephone call
  1156  	// is terminated, or a conversation is closed via the API.
  1157  	//   "HUMAN_INTERVENTION_NEEDED" - An existing conversation has received
  1158  	// notification from Dialogflow that
  1159  	// human intervention is required.
  1160  	//   "NEW_MESSAGE" - An existing conversation has received a new
  1161  	// message, either from API or
  1162  	// telephony. It is configured
  1163  	// in
  1164  	// ConversationProfile.new_message_event_notification_config
  1165  	//   "UNRECOVERABLE_ERROR" - Unrecoverable error during a telephone
  1166  	// call.
  1167  	//
  1168  	// In general non-recoverable errors only occur if something
  1169  	// was
  1170  	// misconfigured in the ConversationProfile corresponding to the call.
  1171  	// After
  1172  	// a non-recoverable error, Dialogflow may stop responding.
  1173  	//
  1174  	// We don't fire this event:
  1175  	// * in an API call because we can directly return the error, or,
  1176  	// * when we can recover from an error.
  1177  	Type string `json:"type,omitempty"`
  1178  
  1179  	// ForceSendFields is a list of field names (e.g. "Conversation") to
  1180  	// unconditionally include in API requests. By default, fields with
  1181  	// empty values are omitted from API requests. However, any non-pointer,
  1182  	// non-interface field appearing in ForceSendFields will be sent to the
  1183  	// server regardless of whether the field is empty or not. This may be
  1184  	// used to include empty fields in Patch requests.
  1185  	ForceSendFields []string `json:"-"`
  1186  
  1187  	// NullFields is a list of field names (e.g. "Conversation") to include
  1188  	// in API requests with the JSON null value. By default, fields with
  1189  	// empty values are omitted from API requests. However, any field with
  1190  	// an empty value appearing in NullFields will be sent to the server as
  1191  	// null. It is an error if a field in this list has a non-empty value.
  1192  	// This may be used to include null fields in Patch requests.
  1193  	NullFields []string `json:"-"`
  1194  }
  1195  
  1196  func (s *GoogleCloudDialogflowV2ConversationEvent) MarshalJSON() ([]byte, error) {
  1197  	type NoMethod GoogleCloudDialogflowV2ConversationEvent
  1198  	raw := NoMethod(*s)
  1199  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  1200  }
  1201  
  1202  // GoogleCloudDialogflowV2EntityType: Represents an entity type.
  1203  // Entity types serve as a tool for extracting parameter values from
  1204  // natural
  1205  // language queries.
  1206  type GoogleCloudDialogflowV2EntityType struct {
  1207  	// AutoExpansionMode: Optional. Indicates whether the entity type can be
  1208  	// automatically
  1209  	// expanded.
  1210  	//
  1211  	// Possible values:
  1212  	//   "AUTO_EXPANSION_MODE_UNSPECIFIED" - Auto expansion disabled for the
  1213  	// entity.
  1214  	//   "AUTO_EXPANSION_MODE_DEFAULT" - Allows an agent to recognize values
  1215  	// that have not been explicitly
  1216  	// listed in the entity.
  1217  	AutoExpansionMode string `json:"autoExpansionMode,omitempty"`
  1218  
  1219  	// DisplayName: Required. The name of the entity type.
  1220  	DisplayName string `json:"displayName,omitempty"`
  1221  
  1222  	// EnableFuzzyExtraction: Optional. Enables fuzzy entity extraction
  1223  	// during classification.
  1224  	EnableFuzzyExtraction bool `json:"enableFuzzyExtraction,omitempty"`
  1225  
  1226  	// Entities: Optional. The collection of entity entries associated with
  1227  	// the entity type.
  1228  	Entities []*GoogleCloudDialogflowV2EntityTypeEntity `json:"entities,omitempty"`
  1229  
  1230  	// Kind: Required. Indicates the kind of entity type.
  1231  	//
  1232  	// Possible values:
  1233  	//   "KIND_UNSPECIFIED" - Not specified. This value should be never
  1234  	// used.
  1235  	//   "KIND_MAP" - Map entity types allow mapping of a group of synonyms
  1236  	// to a reference
  1237  	// value.
  1238  	//   "KIND_LIST" - List entity types contain a set of entries that do
  1239  	// not map to reference
  1240  	// values. However, list entity types can contain references to other
  1241  	// entity
  1242  	// types (with or without aliases).
  1243  	//   "KIND_REGEXP" - Regexp entity types allow to specify regular
  1244  	// expressions in entries
  1245  	// values.
  1246  	Kind string `json:"kind,omitempty"`
  1247  
  1248  	// Name: The unique identifier of the entity type.
  1249  	// Required for EntityTypes.UpdateEntityType
  1250  	// and
  1251  	// EntityTypes.BatchUpdateEntityTypes methods.
  1252  	// Format: `projects/<Project ID>/agent/entityTypes/<Entity Type ID>`.
  1253  	Name string `json:"name,omitempty"`
  1254  
  1255  	// ForceSendFields is a list of field names (e.g. "AutoExpansionMode")
  1256  	// to unconditionally include in API requests. By default, fields with
  1257  	// empty values are omitted from API requests. However, any non-pointer,
  1258  	// non-interface field appearing in ForceSendFields will be sent to the
  1259  	// server regardless of whether the field is empty or not. This may be
  1260  	// used to include empty fields in Patch requests.
  1261  	ForceSendFields []string `json:"-"`
  1262  
  1263  	// NullFields is a list of field names (e.g. "AutoExpansionMode") to
  1264  	// include in API requests with the JSON null value. By default, fields
  1265  	// with empty values are omitted from API requests. However, any field
  1266  	// with an empty value appearing in NullFields will be sent to the
  1267  	// server as null. It is an error if a field in this list has a
  1268  	// non-empty value. This may be used to include null fields in Patch
  1269  	// requests.
  1270  	NullFields []string `json:"-"`
  1271  }
  1272  
  1273  func (s *GoogleCloudDialogflowV2EntityType) MarshalJSON() ([]byte, error) {
  1274  	type NoMethod GoogleCloudDialogflowV2EntityType
  1275  	raw := NoMethod(*s)
  1276  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  1277  }
  1278  
  1279  // GoogleCloudDialogflowV2EntityTypeEntity: An **entity entry** for an
  1280  // associated entity type.
  1281  type GoogleCloudDialogflowV2EntityTypeEntity struct {
  1282  	// Synonyms: Required. A collection of value synonyms. For example, if
  1283  	// the entity type
  1284  	// is *vegetable*, and `value` is *scallions*, a synonym could be
  1285  	// *green
  1286  	// onions*.
  1287  	//
  1288  	// For `KIND_LIST` entity types:
  1289  	//
  1290  	// *   This collection must contain exactly one synonym equal to
  1291  	// `value`.
  1292  	Synonyms []string `json:"synonyms,omitempty"`
  1293  
  1294  	// Value: Required. The primary value associated with this entity
  1295  	// entry.
  1296  	// For example, if the entity type is *vegetable*, the value could
  1297  	// be
  1298  	// *scallions*.
  1299  	//
  1300  	// For `KIND_MAP` entity types:
  1301  	//
  1302  	// *   A reference value to be used in place of synonyms.
  1303  	//
  1304  	// For `KIND_LIST` entity types:
  1305  	//
  1306  	// *   A string that can contain references to other entity types (with
  1307  	// or
  1308  	//     without aliases).
  1309  	Value string `json:"value,omitempty"`
  1310  
  1311  	// ForceSendFields is a list of field names (e.g. "Synonyms") to
  1312  	// unconditionally include in API requests. By default, fields with
  1313  	// empty values are omitted from API requests. However, any non-pointer,
  1314  	// non-interface field appearing in ForceSendFields will be sent to the
  1315  	// server regardless of whether the field is empty or not. This may be
  1316  	// used to include empty fields in Patch requests.
  1317  	ForceSendFields []string `json:"-"`
  1318  
  1319  	// NullFields is a list of field names (e.g. "Synonyms") to include in
  1320  	// API requests with the JSON null value. By default, fields with empty
  1321  	// values are omitted from API requests. However, any field with an
  1322  	// empty value appearing in NullFields will be sent to the server as
  1323  	// null. It is an error if a field in this list has a non-empty value.
  1324  	// This may be used to include null fields in Patch requests.
  1325  	NullFields []string `json:"-"`
  1326  }
  1327  
  1328  func (s *GoogleCloudDialogflowV2EntityTypeEntity) MarshalJSON() ([]byte, error) {
  1329  	type NoMethod GoogleCloudDialogflowV2EntityTypeEntity
  1330  	raw := NoMethod(*s)
  1331  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  1332  }
  1333  
  1334  // GoogleCloudDialogflowV2EventInput: Events allow for matching intents
  1335  // by event name instead of the natural
  1336  // language input. For instance, input `<event: { name:
  1337  // "welcome_event",
  1338  // parameters: { name: "Sam" } }>` can trigger a personalized welcome
  1339  // response.
  1340  // The parameter `name` may be used by the agent in the
  1341  // response:
  1342  // "Hello #welcome_event.name! What can I do for you today?".
  1343  type GoogleCloudDialogflowV2EventInput struct {
  1344  	// LanguageCode: Required. The language of this query. See
  1345  	// [Language
  1346  	// Support](https://cloud.google.com/dialogflow/docs/reference/
  1347  	// language)
  1348  	// for a list of the currently supported language codes. Note that
  1349  	// queries in
  1350  	// the same session do not necessarily need to specify the same
  1351  	// language.
  1352  	LanguageCode string `json:"languageCode,omitempty"`
  1353  
  1354  	// Name: Required. The unique identifier of the event.
  1355  	Name string `json:"name,omitempty"`
  1356  
  1357  	// Parameters: The collection of parameters associated with the
  1358  	// event.
  1359  	//
  1360  	// Depending on your protocol or client library language, this is a
  1361  	// map, associative array, symbol table, dictionary, or JSON
  1362  	// object
  1363  	// composed of a collection of (MapKey, MapValue) pairs:
  1364  	//
  1365  	// -   MapKey type: string
  1366  	// -   MapKey value: parameter name
  1367  	// -   MapValue type:
  1368  	//     -   If parameter's entity type is a composite entity: map
  1369  	//     -   Else: string or number, depending on parameter value type
  1370  	// -   MapValue value:
  1371  	//     -   If parameter's entity type is a composite entity:
  1372  	//         map from composite entity property names to property values
  1373  	//     -   Else: parameter value
  1374  	Parameters googleapi.RawMessage `json:"parameters,omitempty"`
  1375  
  1376  	// ForceSendFields is a list of field names (e.g. "LanguageCode") to
  1377  	// unconditionally include in API requests. By default, fields with
  1378  	// empty values are omitted from API requests. However, any non-pointer,
  1379  	// non-interface field appearing in ForceSendFields will be sent to the
  1380  	// server regardless of whether the field is empty or not. This may be
  1381  	// used to include empty fields in Patch requests.
  1382  	ForceSendFields []string `json:"-"`
  1383  
  1384  	// NullFields is a list of field names (e.g. "LanguageCode") to include
  1385  	// in API requests with the JSON null value. By default, fields with
  1386  	// empty values are omitted from API requests. However, any field with
  1387  	// an empty value appearing in NullFields will be sent to the server as
  1388  	// null. It is an error if a field in this list has a non-empty value.
  1389  	// This may be used to include null fields in Patch requests.
  1390  	NullFields []string `json:"-"`
  1391  }
  1392  
  1393  func (s *GoogleCloudDialogflowV2EventInput) MarshalJSON() ([]byte, error) {
  1394  	type NoMethod GoogleCloudDialogflowV2EventInput
  1395  	raw := NoMethod(*s)
  1396  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  1397  }
  1398  
  1399  // GoogleCloudDialogflowV2ExportAgentResponse: The response message for
  1400  // Agents.ExportAgent.
  1401  type GoogleCloudDialogflowV2ExportAgentResponse struct {
  1402  	// AgentContent: Zip compressed raw byte content for agent.
  1403  	AgentContent string `json:"agentContent,omitempty"`
  1404  
  1405  	// AgentUri: The URI to a file containing the exported agent. This field
  1406  	// is populated
  1407  	// only if `agent_uri` is specified in `ExportAgentRequest`.
  1408  	AgentUri string `json:"agentUri,omitempty"`
  1409  
  1410  	// ForceSendFields is a list of field names (e.g. "AgentContent") to
  1411  	// unconditionally include in API requests. By default, fields with
  1412  	// empty values are omitted from API requests. However, any non-pointer,
  1413  	// non-interface field appearing in ForceSendFields will be sent to the
  1414  	// server regardless of whether the field is empty or not. This may be
  1415  	// used to include empty fields in Patch requests.
  1416  	ForceSendFields []string `json:"-"`
  1417  
  1418  	// NullFields is a list of field names (e.g. "AgentContent") to include
  1419  	// in API requests with the JSON null value. By default, fields with
  1420  	// empty values are omitted from API requests. However, any field with
  1421  	// an empty value appearing in NullFields will be sent to the server as
  1422  	// null. It is an error if a field in this list has a non-empty value.
  1423  	// This may be used to include null fields in Patch requests.
  1424  	NullFields []string `json:"-"`
  1425  }
  1426  
  1427  func (s *GoogleCloudDialogflowV2ExportAgentResponse) MarshalJSON() ([]byte, error) {
  1428  	type NoMethod GoogleCloudDialogflowV2ExportAgentResponse
  1429  	raw := NoMethod(*s)
  1430  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  1431  }
  1432  
  1433  // GoogleCloudDialogflowV2Intent: Represents an intent.
  1434  // Intents convert a number of user expressions or patterns into an
  1435  // action. An
  1436  // action is an extraction of a user command or sentence semantics.
  1437  type GoogleCloudDialogflowV2Intent struct {
  1438  	// Action: Optional. The name of the action associated with the
  1439  	// intent.
  1440  	// Note: The action name must not contain whitespaces.
  1441  	Action string `json:"action,omitempty"`
  1442  
  1443  	// DefaultResponsePlatforms: Optional. The list of platforms for which
  1444  	// the first responses will be
  1445  	// copied from the messages in PLATFORM_UNSPECIFIED (i.e. default
  1446  	// platform).
  1447  	//
  1448  	// Possible values:
  1449  	//   "PLATFORM_UNSPECIFIED" - Default platform.
  1450  	//   "FACEBOOK" - Facebook.
  1451  	//   "SLACK" - Slack.
  1452  	//   "TELEGRAM" - Telegram.
  1453  	//   "KIK" - Kik.
  1454  	//   "SKYPE" - Skype.
  1455  	//   "LINE" - Line.
  1456  	//   "VIBER" - Viber.
  1457  	//   "ACTIONS_ON_GOOGLE" - Google Assistant
  1458  	// See [Dialogflow
  1459  	// webhook
  1460  	// format](https://developers.google.com/assistant/actions/build/
  1461  	// json/dialogflow-webhook-json)
  1462  	//   "GOOGLE_HANGOUTS" - Google Hangouts.
  1463  	DefaultResponsePlatforms []string `json:"defaultResponsePlatforms,omitempty"`
  1464  
  1465  	// DisplayName: Required. The name of this intent.
  1466  	DisplayName string `json:"displayName,omitempty"`
  1467  
  1468  	// Events: Optional. The collection of event names that trigger the
  1469  	// intent.
  1470  	// If the collection of input contexts is not empty, all of the contexts
  1471  	// must
  1472  	// be present in the active user session for an event to trigger this
  1473  	// intent.
  1474  	// Event names are limited to 150 characters.
  1475  	Events []string `json:"events,omitempty"`
  1476  
  1477  	// FollowupIntentInfo: Read-only. Information about all followup intents
  1478  	// that have this intent as
  1479  	// a direct or indirect parent. We populate this field only in the
  1480  	// output.
  1481  	FollowupIntentInfo []*GoogleCloudDialogflowV2IntentFollowupIntentInfo `json:"followupIntentInfo,omitempty"`
  1482  
  1483  	// InputContextNames: Optional. The list of context names required for
  1484  	// this intent to be
  1485  	// triggered.
  1486  	// Format: `projects/<Project ID>/agent/sessions/-/contexts/<Context
  1487  	// ID>`.
  1488  	InputContextNames []string `json:"inputContextNames,omitempty"`
  1489  
  1490  	// IsFallback: Optional. Indicates whether this is a fallback intent.
  1491  	IsFallback bool `json:"isFallback,omitempty"`
  1492  
  1493  	// Messages: Optional. The collection of rich messages corresponding to
  1494  	// the
  1495  	// `Response` field in the Dialogflow console.
  1496  	Messages []*GoogleCloudDialogflowV2IntentMessage `json:"messages,omitempty"`
  1497  
  1498  	// MlDisabled: Optional. Indicates whether Machine Learning is disabled
  1499  	// for the intent.
  1500  	// Note: If `ml_disabled` setting is set to true, then this intent is
  1501  	// not
  1502  	// taken into account during inference in `ML ONLY` match mode.
  1503  	// Also,
  1504  	// auto-markup in the UI is turned off.
  1505  	MlDisabled bool `json:"mlDisabled,omitempty"`
  1506  
  1507  	// Name: Optional. The unique identifier of this intent.
  1508  	// Required for Intents.UpdateIntent and
  1509  	// Intents.BatchUpdateIntents
  1510  	// methods.
  1511  	// Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
  1512  	Name string `json:"name,omitempty"`
  1513  
  1514  	// OutputContexts: Optional. The collection of contexts that are
  1515  	// activated when the intent
  1516  	// is matched. Context messages in this collection should not set
  1517  	// the
  1518  	// parameters field. Setting the `lifespan_count` to 0 will reset the
  1519  	// context
  1520  	// when the intent is matched.
  1521  	// Format: `projects/<Project ID>/agent/sessions/-/contexts/<Context
  1522  	// ID>`.
  1523  	OutputContexts []*GoogleCloudDialogflowV2Context `json:"outputContexts,omitempty"`
  1524  
  1525  	// Parameters: Optional. The collection of parameters associated with
  1526  	// the intent.
  1527  	Parameters []*GoogleCloudDialogflowV2IntentParameter `json:"parameters,omitempty"`
  1528  
  1529  	// ParentFollowupIntentName: Read-only after creation. The unique
  1530  	// identifier of the parent intent in the
  1531  	// chain of followup intents. You can set this field when creating an
  1532  	// intent,
  1533  	// for example with CreateIntent or
  1534  	// BatchUpdateIntents, in order to make this
  1535  	// intent a followup intent.
  1536  	//
  1537  	// It identifies the parent followup intent.
  1538  	// Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
  1539  	ParentFollowupIntentName string `json:"parentFollowupIntentName,omitempty"`
  1540  
  1541  	// Priority: Optional. The priority of this intent. Higher numbers
  1542  	// represent higher
  1543  	// priorities.
  1544  	//
  1545  	// - If the supplied value is unspecified or 0, the service
  1546  	//   translates the value to 500,000, which corresponds to the
  1547  	//   `Normal` priority in the console.
  1548  	// - If the supplied value is negative, the intent is ignored
  1549  	//   in runtime detect intent requests.
  1550  	Priority int64 `json:"priority,omitempty"`
  1551  
  1552  	// ResetContexts: Optional. Indicates whether to delete all contexts in
  1553  	// the current
  1554  	// session when this intent is matched.
  1555  	ResetContexts bool `json:"resetContexts,omitempty"`
  1556  
  1557  	// RootFollowupIntentName: Read-only. The unique identifier of the root
  1558  	// intent in the chain of
  1559  	// followup intents. It identifies the correct followup intents chain
  1560  	// for
  1561  	// this intent. We populate this field only in the output.
  1562  	//
  1563  	// Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
  1564  	RootFollowupIntentName string `json:"rootFollowupIntentName,omitempty"`
  1565  
  1566  	// TrainingPhrases: Optional. The collection of examples that the agent
  1567  	// is
  1568  	// trained on.
  1569  	TrainingPhrases []*GoogleCloudDialogflowV2IntentTrainingPhrase `json:"trainingPhrases,omitempty"`
  1570  
  1571  	// WebhookState: Optional. Indicates whether webhooks are enabled for
  1572  	// the intent.
  1573  	//
  1574  	// Possible values:
  1575  	//   "WEBHOOK_STATE_UNSPECIFIED" - Webhook is disabled in the agent and
  1576  	// in the intent.
  1577  	//   "WEBHOOK_STATE_ENABLED" - Webhook is enabled in the agent and in
  1578  	// the intent.
  1579  	//   "WEBHOOK_STATE_ENABLED_FOR_SLOT_FILLING" - Webhook is enabled in
  1580  	// the agent and in the intent. Also, each slot
  1581  	// filling prompt is forwarded to the webhook.
  1582  	WebhookState string `json:"webhookState,omitempty"`
  1583  
  1584  	// ForceSendFields is a list of field names (e.g. "Action") to
  1585  	// unconditionally include in API requests. By default, fields with
  1586  	// empty values are omitted from API requests. However, any non-pointer,
  1587  	// non-interface field appearing in ForceSendFields will be sent to the
  1588  	// server regardless of whether the field is empty or not. This may be
  1589  	// used to include empty fields in Patch requests.
  1590  	ForceSendFields []string `json:"-"`
  1591  
  1592  	// NullFields is a list of field names (e.g. "Action") to include in API
  1593  	// requests with the JSON null value. By default, fields with empty
  1594  	// values are omitted from API requests. However, any field with an
  1595  	// empty value appearing in NullFields will be sent to the server as
  1596  	// null. It is an error if a field in this list has a non-empty value.
  1597  	// This may be used to include null fields in Patch requests.
  1598  	NullFields []string `json:"-"`
  1599  }
  1600  
  1601  func (s *GoogleCloudDialogflowV2Intent) MarshalJSON() ([]byte, error) {
  1602  	type NoMethod GoogleCloudDialogflowV2Intent
  1603  	raw := NoMethod(*s)
  1604  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  1605  }
  1606  
  1607  // GoogleCloudDialogflowV2IntentFollowupIntentInfo: Represents a single
  1608  // followup intent in the chain.
  1609  type GoogleCloudDialogflowV2IntentFollowupIntentInfo struct {
  1610  	// FollowupIntentName: The unique identifier of the followup
  1611  	// intent.
  1612  	// Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
  1613  	FollowupIntentName string `json:"followupIntentName,omitempty"`
  1614  
  1615  	// ParentFollowupIntentName: The unique identifier of the followup
  1616  	// intent's parent.
  1617  	// Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
  1618  	ParentFollowupIntentName string `json:"parentFollowupIntentName,omitempty"`
  1619  
  1620  	// ForceSendFields is a list of field names (e.g. "FollowupIntentName")
  1621  	// to unconditionally include in API requests. By default, fields with
  1622  	// empty values are omitted from API requests. However, any non-pointer,
  1623  	// non-interface field appearing in ForceSendFields will be sent to the
  1624  	// server regardless of whether the field is empty or not. This may be
  1625  	// used to include empty fields in Patch requests.
  1626  	ForceSendFields []string `json:"-"`
  1627  
  1628  	// NullFields is a list of field names (e.g. "FollowupIntentName") to
  1629  	// include in API requests with the JSON null value. By default, fields
  1630  	// with empty values are omitted from API requests. However, any field
  1631  	// with an empty value appearing in NullFields will be sent to the
  1632  	// server as null. It is an error if a field in this list has a
  1633  	// non-empty value. This may be used to include null fields in Patch
  1634  	// requests.
  1635  	NullFields []string `json:"-"`
  1636  }
  1637  
  1638  func (s *GoogleCloudDialogflowV2IntentFollowupIntentInfo) MarshalJSON() ([]byte, error) {
  1639  	type NoMethod GoogleCloudDialogflowV2IntentFollowupIntentInfo
  1640  	raw := NoMethod(*s)
  1641  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  1642  }
  1643  
  1644  // GoogleCloudDialogflowV2IntentMessage: A rich response
  1645  // message.
  1646  // Corresponds to the intent `Response` field in the Dialogflow
  1647  // console.
  1648  // For more information, see
  1649  // [Rich
  1650  // response
  1651  // messages](https://cloud.google.com/dialogflow/docs/intents-ri
  1652  // ch-messages).
  1653  type GoogleCloudDialogflowV2IntentMessage struct {
  1654  	// BasicCard: The basic card response for Actions on Google.
  1655  	BasicCard *GoogleCloudDialogflowV2IntentMessageBasicCard `json:"basicCard,omitempty"`
  1656  
  1657  	// BrowseCarouselCard: Browse carousel card for Actions on Google.
  1658  	BrowseCarouselCard *GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard `json:"browseCarouselCard,omitempty"`
  1659  
  1660  	// Card: The card response.
  1661  	Card *GoogleCloudDialogflowV2IntentMessageCard `json:"card,omitempty"`
  1662  
  1663  	// CarouselSelect: The carousel card response for Actions on Google.
  1664  	CarouselSelect *GoogleCloudDialogflowV2IntentMessageCarouselSelect `json:"carouselSelect,omitempty"`
  1665  
  1666  	// Image: The image response.
  1667  	Image *GoogleCloudDialogflowV2IntentMessageImage `json:"image,omitempty"`
  1668  
  1669  	// LinkOutSuggestion: The link out suggestion chip for Actions on
  1670  	// Google.
  1671  	LinkOutSuggestion *GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion `json:"linkOutSuggestion,omitempty"`
  1672  
  1673  	// ListSelect: The list card response for Actions on Google.
  1674  	ListSelect *GoogleCloudDialogflowV2IntentMessageListSelect `json:"listSelect,omitempty"`
  1675  
  1676  	// MediaContent: The media content card for Actions on Google.
  1677  	MediaContent *GoogleCloudDialogflowV2IntentMessageMediaContent `json:"mediaContent,omitempty"`
  1678  
  1679  	// Payload: A custom platform-specific response.
  1680  	Payload googleapi.RawMessage `json:"payload,omitempty"`
  1681  
  1682  	// Platform: Optional. The platform that this message is intended for.
  1683  	//
  1684  	// Possible values:
  1685  	//   "PLATFORM_UNSPECIFIED" - Default platform.
  1686  	//   "FACEBOOK" - Facebook.
  1687  	//   "SLACK" - Slack.
  1688  	//   "TELEGRAM" - Telegram.
  1689  	//   "KIK" - Kik.
  1690  	//   "SKYPE" - Skype.
  1691  	//   "LINE" - Line.
  1692  	//   "VIBER" - Viber.
  1693  	//   "ACTIONS_ON_GOOGLE" - Google Assistant
  1694  	// See [Dialogflow
  1695  	// webhook
  1696  	// format](https://developers.google.com/assistant/actions/build/
  1697  	// json/dialogflow-webhook-json)
  1698  	//   "GOOGLE_HANGOUTS" - Google Hangouts.
  1699  	Platform string `json:"platform,omitempty"`
  1700  
  1701  	// QuickReplies: The quick replies response.
  1702  	QuickReplies *GoogleCloudDialogflowV2IntentMessageQuickReplies `json:"quickReplies,omitempty"`
  1703  
  1704  	// SimpleResponses: The voice and text-only responses for Actions on
  1705  	// Google.
  1706  	SimpleResponses *GoogleCloudDialogflowV2IntentMessageSimpleResponses `json:"simpleResponses,omitempty"`
  1707  
  1708  	// Suggestions: The suggestion chips for Actions on Google.
  1709  	Suggestions *GoogleCloudDialogflowV2IntentMessageSuggestions `json:"suggestions,omitempty"`
  1710  
  1711  	// TableCard: Table card for Actions on Google.
  1712  	TableCard *GoogleCloudDialogflowV2IntentMessageTableCard `json:"tableCard,omitempty"`
  1713  
  1714  	// Text: The text response.
  1715  	Text *GoogleCloudDialogflowV2IntentMessageText `json:"text,omitempty"`
  1716  
  1717  	// ForceSendFields is a list of field names (e.g. "BasicCard") to
  1718  	// unconditionally include in API requests. By default, fields with
  1719  	// empty values are omitted from API requests. However, any non-pointer,
  1720  	// non-interface field appearing in ForceSendFields will be sent to the
  1721  	// server regardless of whether the field is empty or not. This may be
  1722  	// used to include empty fields in Patch requests.
  1723  	ForceSendFields []string `json:"-"`
  1724  
  1725  	// NullFields is a list of field names (e.g. "BasicCard") to include in
  1726  	// API requests with the JSON null value. By default, fields with empty
  1727  	// values are omitted from API requests. However, any field with an
  1728  	// empty value appearing in NullFields will be sent to the server as
  1729  	// null. It is an error if a field in this list has a non-empty value.
  1730  	// This may be used to include null fields in Patch requests.
  1731  	NullFields []string `json:"-"`
  1732  }
  1733  
  1734  func (s *GoogleCloudDialogflowV2IntentMessage) MarshalJSON() ([]byte, error) {
  1735  	type NoMethod GoogleCloudDialogflowV2IntentMessage
  1736  	raw := NoMethod(*s)
  1737  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  1738  }
  1739  
  1740  // GoogleCloudDialogflowV2IntentMessageBasicCard: The basic card
  1741  // message. Useful for displaying information.
  1742  type GoogleCloudDialogflowV2IntentMessageBasicCard struct {
  1743  	// Buttons: Optional. The collection of card buttons.
  1744  	Buttons []*GoogleCloudDialogflowV2IntentMessageBasicCardButton `json:"buttons,omitempty"`
  1745  
  1746  	// FormattedText: Required, unless image is present. The body text of
  1747  	// the card.
  1748  	FormattedText string `json:"formattedText,omitempty"`
  1749  
  1750  	// Image: Optional. The image for the card.
  1751  	Image *GoogleCloudDialogflowV2IntentMessageImage `json:"image,omitempty"`
  1752  
  1753  	// Subtitle: Optional. The subtitle of the card.
  1754  	Subtitle string `json:"subtitle,omitempty"`
  1755  
  1756  	// Title: Optional. The title of the card.
  1757  	Title string `json:"title,omitempty"`
  1758  
  1759  	// ForceSendFields is a list of field names (e.g. "Buttons") to
  1760  	// unconditionally include in API requests. By default, fields with
  1761  	// empty values are omitted from API requests. However, any non-pointer,
  1762  	// non-interface field appearing in ForceSendFields will be sent to the
  1763  	// server regardless of whether the field is empty or not. This may be
  1764  	// used to include empty fields in Patch requests.
  1765  	ForceSendFields []string `json:"-"`
  1766  
  1767  	// NullFields is a list of field names (e.g. "Buttons") to include in
  1768  	// API requests with the JSON null value. By default, fields with empty
  1769  	// values are omitted from API requests. However, any field with an
  1770  	// empty value appearing in NullFields will be sent to the server as
  1771  	// null. It is an error if a field in this list has a non-empty value.
  1772  	// This may be used to include null fields in Patch requests.
  1773  	NullFields []string `json:"-"`
  1774  }
  1775  
  1776  func (s *GoogleCloudDialogflowV2IntentMessageBasicCard) MarshalJSON() ([]byte, error) {
  1777  	type NoMethod GoogleCloudDialogflowV2IntentMessageBasicCard
  1778  	raw := NoMethod(*s)
  1779  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  1780  }
  1781  
  1782  // GoogleCloudDialogflowV2IntentMessageBasicCardButton: The button
  1783  // object that appears at the bottom of a card.
  1784  type GoogleCloudDialogflowV2IntentMessageBasicCardButton struct {
  1785  	// OpenUriAction: Required. Action to take when a user taps on the
  1786  	// button.
  1787  	OpenUriAction *GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction `json:"openUriAction,omitempty"`
  1788  
  1789  	// Title: Required. The title of the button.
  1790  	Title string `json:"title,omitempty"`
  1791  
  1792  	// ForceSendFields is a list of field names (e.g. "OpenUriAction") to
  1793  	// unconditionally include in API requests. By default, fields with
  1794  	// empty values are omitted from API requests. However, any non-pointer,
  1795  	// non-interface field appearing in ForceSendFields will be sent to the
  1796  	// server regardless of whether the field is empty or not. This may be
  1797  	// used to include empty fields in Patch requests.
  1798  	ForceSendFields []string `json:"-"`
  1799  
  1800  	// NullFields is a list of field names (e.g. "OpenUriAction") to include
  1801  	// in API requests with the JSON null value. By default, fields with
  1802  	// empty values are omitted from API requests. However, any field with
  1803  	// an empty value appearing in NullFields will be sent to the server as
  1804  	// null. It is an error if a field in this list has a non-empty value.
  1805  	// This may be used to include null fields in Patch requests.
  1806  	NullFields []string `json:"-"`
  1807  }
  1808  
  1809  func (s *GoogleCloudDialogflowV2IntentMessageBasicCardButton) MarshalJSON() ([]byte, error) {
  1810  	type NoMethod GoogleCloudDialogflowV2IntentMessageBasicCardButton
  1811  	raw := NoMethod(*s)
  1812  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  1813  }
  1814  
  1815  // GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction:
  1816  // Opens the given URI.
  1817  type GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction struct {
  1818  	// Uri: Required. The HTTP or HTTPS scheme URI.
  1819  	Uri string `json:"uri,omitempty"`
  1820  
  1821  	// ForceSendFields is a list of field names (e.g. "Uri") to
  1822  	// unconditionally include in API requests. By default, fields with
  1823  	// empty values are omitted from API requests. However, any non-pointer,
  1824  	// non-interface field appearing in ForceSendFields will be sent to the
  1825  	// server regardless of whether the field is empty or not. This may be
  1826  	// used to include empty fields in Patch requests.
  1827  	ForceSendFields []string `json:"-"`
  1828  
  1829  	// NullFields is a list of field names (e.g. "Uri") to include in API
  1830  	// requests with the JSON null value. By default, fields with empty
  1831  	// values are omitted from API requests. However, any field with an
  1832  	// empty value appearing in NullFields will be sent to the server as
  1833  	// null. It is an error if a field in this list has a non-empty value.
  1834  	// This may be used to include null fields in Patch requests.
  1835  	NullFields []string `json:"-"`
  1836  }
  1837  
  1838  func (s *GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction) MarshalJSON() ([]byte, error) {
  1839  	type NoMethod GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction
  1840  	raw := NoMethod(*s)
  1841  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  1842  }
  1843  
  1844  // GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard: Browse
  1845  // Carousel Card for Actions on
  1846  // Google.
  1847  // https://developers.google.com/actions/assistant/responses#brow
  1848  // sing_carousel
  1849  type GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard struct {
  1850  	// ImageDisplayOptions: Optional. Settings for displaying the image.
  1851  	// Applies to every image in
  1852  	// items.
  1853  	//
  1854  	// Possible values:
  1855  	//   "IMAGE_DISPLAY_OPTIONS_UNSPECIFIED" - Fill the gaps between the
  1856  	// image and the image container with gray
  1857  	// bars.
  1858  	//   "GRAY" - Fill the gaps between the image and the image container
  1859  	// with gray
  1860  	// bars.
  1861  	//   "WHITE" - Fill the gaps between the image and the image container
  1862  	// with white
  1863  	// bars.
  1864  	//   "CROPPED" - Image is scaled such that the image width and height
  1865  	// match or exceed
  1866  	// the container dimensions. This may crop the top and bottom of
  1867  	// the
  1868  	// image if the scaled image height is greater than the
  1869  	// container
  1870  	// height, or crop the left and right of the image if the scaled
  1871  	// image
  1872  	// width is greater than the container width. This is similar to
  1873  	// "Zoom
  1874  	// Mode" on a widescreen TV when playing a 4:3 video.
  1875  	//   "BLURRED_BACKGROUND" - Pad the gaps between image and image frame
  1876  	// with a blurred copy of the
  1877  	// same image.
  1878  	ImageDisplayOptions string `json:"imageDisplayOptions,omitempty"`
  1879  
  1880  	// Items: Required. List of items in the Browse Carousel Card. Minimum
  1881  	// of two
  1882  	// items, maximum of ten.
  1883  	Items []*GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItem `json:"items,omitempty"`
  1884  
  1885  	// ForceSendFields is a list of field names (e.g. "ImageDisplayOptions")
  1886  	// to unconditionally include in API requests. By default, fields with
  1887  	// empty values are omitted from API requests. However, any non-pointer,
  1888  	// non-interface field appearing in ForceSendFields will be sent to the
  1889  	// server regardless of whether the field is empty or not. This may be
  1890  	// used to include empty fields in Patch requests.
  1891  	ForceSendFields []string `json:"-"`
  1892  
  1893  	// NullFields is a list of field names (e.g. "ImageDisplayOptions") to
  1894  	// include in API requests with the JSON null value. By default, fields
  1895  	// with empty values are omitted from API requests. However, any field
  1896  	// with an empty value appearing in NullFields will be sent to the
  1897  	// server as null. It is an error if a field in this list has a
  1898  	// non-empty value. This may be used to include null fields in Patch
  1899  	// requests.
  1900  	NullFields []string `json:"-"`
  1901  }
  1902  
  1903  func (s *GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard) MarshalJSON() ([]byte, error) {
  1904  	type NoMethod GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard
  1905  	raw := NoMethod(*s)
  1906  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  1907  }
  1908  
  1909  // GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCa
  1910  // rdItem: Browsing carousel tile
  1911  type GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItem struct {
  1912  	// Description: Optional. Description of the carousel item. Maximum of
  1913  	// four lines of
  1914  	// text.
  1915  	Description string `json:"description,omitempty"`
  1916  
  1917  	// Footer: Optional. Text that appears at the bottom of the Browse
  1918  	// Carousel
  1919  	// Card. Maximum of one line of text.
  1920  	Footer string `json:"footer,omitempty"`
  1921  
  1922  	// Image: Optional. Hero image for the carousel item.
  1923  	Image *GoogleCloudDialogflowV2IntentMessageImage `json:"image,omitempty"`
  1924  
  1925  	// OpenUriAction: Required. Action to present to the user.
  1926  	OpenUriAction *GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction `json:"openUriAction,omitempty"`
  1927  
  1928  	// Title: Required. Title of the carousel item. Maximum of two lines of
  1929  	// text.
  1930  	Title string `json:"title,omitempty"`
  1931  
  1932  	// ForceSendFields is a list of field names (e.g. "Description") to
  1933  	// unconditionally include in API requests. By default, fields with
  1934  	// empty values are omitted from API requests. However, any non-pointer,
  1935  	// non-interface field appearing in ForceSendFields will be sent to the
  1936  	// server regardless of whether the field is empty or not. This may be
  1937  	// used to include empty fields in Patch requests.
  1938  	ForceSendFields []string `json:"-"`
  1939  
  1940  	// NullFields is a list of field names (e.g. "Description") to include
  1941  	// in API requests with the JSON null value. By default, fields with
  1942  	// empty values are omitted from API requests. However, any field with
  1943  	// an empty value appearing in NullFields will be sent to the server as
  1944  	// null. It is an error if a field in this list has a non-empty value.
  1945  	// This may be used to include null fields in Patch requests.
  1946  	NullFields []string `json:"-"`
  1947  }
  1948  
  1949  func (s *GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItem) MarshalJSON() ([]byte, error) {
  1950  	type NoMethod GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItem
  1951  	raw := NoMethod(*s)
  1952  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  1953  }
  1954  
  1955  // GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCa
  1956  // rdItemOpenUrlAction: Actions on Google action to open a given url.
  1957  type GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction struct {
  1958  	// Url: Required. URL
  1959  	Url string `json:"url,omitempty"`
  1960  
  1961  	// UrlTypeHint: Optional. Specifies the type of viewer that is used when
  1962  	// opening
  1963  	// the URL. Defaults to opening via web browser.
  1964  	//
  1965  	// Possible values:
  1966  	//   "URL_TYPE_HINT_UNSPECIFIED" - Unspecified
  1967  	//   "AMP_ACTION" - Url would be an amp action
  1968  	//   "AMP_CONTENT" - URL that points directly to AMP content, or to a
  1969  	// canonical URL
  1970  	// which refers to AMP content via <link rel="amphtml">.
  1971  	UrlTypeHint string `json:"urlTypeHint,omitempty"`
  1972  
  1973  	// ForceSendFields is a list of field names (e.g. "Url") to
  1974  	// unconditionally include in API requests. By default, fields with
  1975  	// empty values are omitted from API requests. However, any non-pointer,
  1976  	// non-interface field appearing in ForceSendFields will be sent to the
  1977  	// server regardless of whether the field is empty or not. This may be
  1978  	// used to include empty fields in Patch requests.
  1979  	ForceSendFields []string `json:"-"`
  1980  
  1981  	// NullFields is a list of field names (e.g. "Url") to include in API
  1982  	// requests with the JSON null value. By default, fields with empty
  1983  	// values are omitted from API requests. However, any field with an
  1984  	// empty value appearing in NullFields will be sent to the server as
  1985  	// null. It is an error if a field in this list has a non-empty value.
  1986  	// This may be used to include null fields in Patch requests.
  1987  	NullFields []string `json:"-"`
  1988  }
  1989  
  1990  func (s *GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction) MarshalJSON() ([]byte, error) {
  1991  	type NoMethod GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction
  1992  	raw := NoMethod(*s)
  1993  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  1994  }
  1995  
  1996  // GoogleCloudDialogflowV2IntentMessageCard: The card response message.
  1997  type GoogleCloudDialogflowV2IntentMessageCard struct {
  1998  	// Buttons: Optional. The collection of card buttons.
  1999  	Buttons []*GoogleCloudDialogflowV2IntentMessageCardButton `json:"buttons,omitempty"`
  2000  
  2001  	// ImageUri: Optional. The public URI to an image file for the card.
  2002  	ImageUri string `json:"imageUri,omitempty"`
  2003  
  2004  	// Subtitle: Optional. The subtitle of the card.
  2005  	Subtitle string `json:"subtitle,omitempty"`
  2006  
  2007  	// Title: Optional. The title of the card.
  2008  	Title string `json:"title,omitempty"`
  2009  
  2010  	// ForceSendFields is a list of field names (e.g. "Buttons") to
  2011  	// unconditionally include in API requests. By default, fields with
  2012  	// empty values are omitted from API requests. However, any non-pointer,
  2013  	// non-interface field appearing in ForceSendFields will be sent to the
  2014  	// server regardless of whether the field is empty or not. This may be
  2015  	// used to include empty fields in Patch requests.
  2016  	ForceSendFields []string `json:"-"`
  2017  
  2018  	// NullFields is a list of field names (e.g. "Buttons") to include in
  2019  	// API requests with the JSON null value. By default, fields with empty
  2020  	// values are omitted from API requests. However, any field with an
  2021  	// empty value appearing in NullFields will be sent to the server as
  2022  	// null. It is an error if a field in this list has a non-empty value.
  2023  	// This may be used to include null fields in Patch requests.
  2024  	NullFields []string `json:"-"`
  2025  }
  2026  
  2027  func (s *GoogleCloudDialogflowV2IntentMessageCard) MarshalJSON() ([]byte, error) {
  2028  	type NoMethod GoogleCloudDialogflowV2IntentMessageCard
  2029  	raw := NoMethod(*s)
  2030  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2031  }
  2032  
  2033  // GoogleCloudDialogflowV2IntentMessageCardButton: Contains information
  2034  // about a button.
  2035  type GoogleCloudDialogflowV2IntentMessageCardButton struct {
  2036  	// Postback: Optional. The text to send back to the Dialogflow API or a
  2037  	// URI to
  2038  	// open.
  2039  	Postback string `json:"postback,omitempty"`
  2040  
  2041  	// Text: Optional. The text to show on the button.
  2042  	Text string `json:"text,omitempty"`
  2043  
  2044  	// ForceSendFields is a list of field names (e.g. "Postback") to
  2045  	// unconditionally include in API requests. By default, fields with
  2046  	// empty values are omitted from API requests. However, any non-pointer,
  2047  	// non-interface field appearing in ForceSendFields will be sent to the
  2048  	// server regardless of whether the field is empty or not. This may be
  2049  	// used to include empty fields in Patch requests.
  2050  	ForceSendFields []string `json:"-"`
  2051  
  2052  	// NullFields is a list of field names (e.g. "Postback") to include in
  2053  	// API requests with the JSON null value. By default, fields with empty
  2054  	// values are omitted from API requests. However, any field with an
  2055  	// empty value appearing in NullFields will be sent to the server as
  2056  	// null. It is an error if a field in this list has a non-empty value.
  2057  	// This may be used to include null fields in Patch requests.
  2058  	NullFields []string `json:"-"`
  2059  }
  2060  
  2061  func (s *GoogleCloudDialogflowV2IntentMessageCardButton) MarshalJSON() ([]byte, error) {
  2062  	type NoMethod GoogleCloudDialogflowV2IntentMessageCardButton
  2063  	raw := NoMethod(*s)
  2064  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2065  }
  2066  
  2067  // GoogleCloudDialogflowV2IntentMessageCarouselSelect: The card for
  2068  // presenting a carousel of options to select from.
  2069  type GoogleCloudDialogflowV2IntentMessageCarouselSelect struct {
  2070  	// Items: Required. Carousel items.
  2071  	Items []*GoogleCloudDialogflowV2IntentMessageCarouselSelectItem `json:"items,omitempty"`
  2072  
  2073  	// ForceSendFields is a list of field names (e.g. "Items") to
  2074  	// unconditionally include in API requests. By default, fields with
  2075  	// empty values are omitted from API requests. However, any non-pointer,
  2076  	// non-interface field appearing in ForceSendFields will be sent to the
  2077  	// server regardless of whether the field is empty or not. This may be
  2078  	// used to include empty fields in Patch requests.
  2079  	ForceSendFields []string `json:"-"`
  2080  
  2081  	// NullFields is a list of field names (e.g. "Items") to include in API
  2082  	// requests with the JSON null value. By default, fields with empty
  2083  	// values are omitted from API requests. However, any field with an
  2084  	// empty value appearing in NullFields will be sent to the server as
  2085  	// null. It is an error if a field in this list has a non-empty value.
  2086  	// This may be used to include null fields in Patch requests.
  2087  	NullFields []string `json:"-"`
  2088  }
  2089  
  2090  func (s *GoogleCloudDialogflowV2IntentMessageCarouselSelect) MarshalJSON() ([]byte, error) {
  2091  	type NoMethod GoogleCloudDialogflowV2IntentMessageCarouselSelect
  2092  	raw := NoMethod(*s)
  2093  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2094  }
  2095  
  2096  // GoogleCloudDialogflowV2IntentMessageCarouselSelectItem: An item in
  2097  // the carousel.
  2098  type GoogleCloudDialogflowV2IntentMessageCarouselSelectItem struct {
  2099  	// Description: Optional. The body text of the card.
  2100  	Description string `json:"description,omitempty"`
  2101  
  2102  	// Image: Optional. The image to display.
  2103  	Image *GoogleCloudDialogflowV2IntentMessageImage `json:"image,omitempty"`
  2104  
  2105  	// Info: Required. Additional info about the option item.
  2106  	Info *GoogleCloudDialogflowV2IntentMessageSelectItemInfo `json:"info,omitempty"`
  2107  
  2108  	// Title: Required. Title of the carousel item.
  2109  	Title string `json:"title,omitempty"`
  2110  
  2111  	// ForceSendFields is a list of field names (e.g. "Description") to
  2112  	// unconditionally include in API requests. By default, fields with
  2113  	// empty values are omitted from API requests. However, any non-pointer,
  2114  	// non-interface field appearing in ForceSendFields will be sent to the
  2115  	// server regardless of whether the field is empty or not. This may be
  2116  	// used to include empty fields in Patch requests.
  2117  	ForceSendFields []string `json:"-"`
  2118  
  2119  	// NullFields is a list of field names (e.g. "Description") to include
  2120  	// in API requests with the JSON null value. By default, fields with
  2121  	// empty values are omitted from API requests. However, any field with
  2122  	// an empty value appearing in NullFields will be sent to the server as
  2123  	// null. It is an error if a field in this list has a non-empty value.
  2124  	// This may be used to include null fields in Patch requests.
  2125  	NullFields []string `json:"-"`
  2126  }
  2127  
  2128  func (s *GoogleCloudDialogflowV2IntentMessageCarouselSelectItem) MarshalJSON() ([]byte, error) {
  2129  	type NoMethod GoogleCloudDialogflowV2IntentMessageCarouselSelectItem
  2130  	raw := NoMethod(*s)
  2131  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2132  }
  2133  
  2134  // GoogleCloudDialogflowV2IntentMessageColumnProperties: Column
  2135  // properties for TableCard.
  2136  type GoogleCloudDialogflowV2IntentMessageColumnProperties struct {
  2137  	// Header: Required. Column heading.
  2138  	Header string `json:"header,omitempty"`
  2139  
  2140  	// HorizontalAlignment: Optional. Defines text alignment for all cells
  2141  	// in this column.
  2142  	//
  2143  	// Possible values:
  2144  	//   "HORIZONTAL_ALIGNMENT_UNSPECIFIED" - Text is aligned to the leading
  2145  	// edge of the column.
  2146  	//   "LEADING" - Text is aligned to the leading edge of the column.
  2147  	//   "CENTER" - Text is centered in the column.
  2148  	//   "TRAILING" - Text is aligned to the trailing edge of the column.
  2149  	HorizontalAlignment string `json:"horizontalAlignment,omitempty"`
  2150  
  2151  	// ForceSendFields is a list of field names (e.g. "Header") to
  2152  	// unconditionally include in API requests. By default, fields with
  2153  	// empty values are omitted from API requests. However, any non-pointer,
  2154  	// non-interface field appearing in ForceSendFields will be sent to the
  2155  	// server regardless of whether the field is empty or not. This may be
  2156  	// used to include empty fields in Patch requests.
  2157  	ForceSendFields []string `json:"-"`
  2158  
  2159  	// NullFields is a list of field names (e.g. "Header") to include in API
  2160  	// requests with the JSON null value. By default, fields with empty
  2161  	// values are omitted from API requests. However, any field with an
  2162  	// empty value appearing in NullFields will be sent to the server as
  2163  	// null. It is an error if a field in this list has a non-empty value.
  2164  	// This may be used to include null fields in Patch requests.
  2165  	NullFields []string `json:"-"`
  2166  }
  2167  
  2168  func (s *GoogleCloudDialogflowV2IntentMessageColumnProperties) MarshalJSON() ([]byte, error) {
  2169  	type NoMethod GoogleCloudDialogflowV2IntentMessageColumnProperties
  2170  	raw := NoMethod(*s)
  2171  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2172  }
  2173  
  2174  // GoogleCloudDialogflowV2IntentMessageImage: The image response
  2175  // message.
  2176  type GoogleCloudDialogflowV2IntentMessageImage struct {
  2177  	// AccessibilityText: Optional. A text description of the image to be
  2178  	// used for accessibility,
  2179  	// e.g., screen readers.
  2180  	AccessibilityText string `json:"accessibilityText,omitempty"`
  2181  
  2182  	// ImageUri: Optional. The public URI to an image file.
  2183  	ImageUri string `json:"imageUri,omitempty"`
  2184  
  2185  	// ForceSendFields is a list of field names (e.g. "AccessibilityText")
  2186  	// to unconditionally include in API requests. By default, fields with
  2187  	// empty values are omitted from API requests. However, any non-pointer,
  2188  	// non-interface field appearing in ForceSendFields will be sent to the
  2189  	// server regardless of whether the field is empty or not. This may be
  2190  	// used to include empty fields in Patch requests.
  2191  	ForceSendFields []string `json:"-"`
  2192  
  2193  	// NullFields is a list of field names (e.g. "AccessibilityText") to
  2194  	// include in API requests with the JSON null value. By default, fields
  2195  	// with empty values are omitted from API requests. However, any field
  2196  	// with an empty value appearing in NullFields will be sent to the
  2197  	// server as null. It is an error if a field in this list has a
  2198  	// non-empty value. This may be used to include null fields in Patch
  2199  	// requests.
  2200  	NullFields []string `json:"-"`
  2201  }
  2202  
  2203  func (s *GoogleCloudDialogflowV2IntentMessageImage) MarshalJSON() ([]byte, error) {
  2204  	type NoMethod GoogleCloudDialogflowV2IntentMessageImage
  2205  	raw := NoMethod(*s)
  2206  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2207  }
  2208  
  2209  // GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion: The suggestion
  2210  // chip message that allows the user to jump out to the app
  2211  // or website associated with this agent.
  2212  type GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion struct {
  2213  	// DestinationName: Required. The name of the app or site this chip is
  2214  	// linking to.
  2215  	DestinationName string `json:"destinationName,omitempty"`
  2216  
  2217  	// Uri: Required. The URI of the app or site to open when the user taps
  2218  	// the
  2219  	// suggestion chip.
  2220  	Uri string `json:"uri,omitempty"`
  2221  
  2222  	// ForceSendFields is a list of field names (e.g. "DestinationName") to
  2223  	// unconditionally include in API requests. By default, fields with
  2224  	// empty values are omitted from API requests. However, any non-pointer,
  2225  	// non-interface field appearing in ForceSendFields will be sent to the
  2226  	// server regardless of whether the field is empty or not. This may be
  2227  	// used to include empty fields in Patch requests.
  2228  	ForceSendFields []string `json:"-"`
  2229  
  2230  	// NullFields is a list of field names (e.g. "DestinationName") to
  2231  	// include in API requests with the JSON null value. By default, fields
  2232  	// with empty values are omitted from API requests. However, any field
  2233  	// with an empty value appearing in NullFields will be sent to the
  2234  	// server as null. It is an error if a field in this list has a
  2235  	// non-empty value. This may be used to include null fields in Patch
  2236  	// requests.
  2237  	NullFields []string `json:"-"`
  2238  }
  2239  
  2240  func (s *GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion) MarshalJSON() ([]byte, error) {
  2241  	type NoMethod GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion
  2242  	raw := NoMethod(*s)
  2243  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2244  }
  2245  
  2246  // GoogleCloudDialogflowV2IntentMessageListSelect: The card for
  2247  // presenting a list of options to select from.
  2248  type GoogleCloudDialogflowV2IntentMessageListSelect struct {
  2249  	// Items: Required. List items.
  2250  	Items []*GoogleCloudDialogflowV2IntentMessageListSelectItem `json:"items,omitempty"`
  2251  
  2252  	// Subtitle: Optional. Subtitle of the list.
  2253  	Subtitle string `json:"subtitle,omitempty"`
  2254  
  2255  	// Title: Optional. The overall title of the list.
  2256  	Title string `json:"title,omitempty"`
  2257  
  2258  	// ForceSendFields is a list of field names (e.g. "Items") to
  2259  	// unconditionally include in API requests. By default, fields with
  2260  	// empty values are omitted from API requests. However, any non-pointer,
  2261  	// non-interface field appearing in ForceSendFields will be sent to the
  2262  	// server regardless of whether the field is empty or not. This may be
  2263  	// used to include empty fields in Patch requests.
  2264  	ForceSendFields []string `json:"-"`
  2265  
  2266  	// NullFields is a list of field names (e.g. "Items") to include in API
  2267  	// requests with the JSON null value. By default, fields with empty
  2268  	// values are omitted from API requests. However, any field with an
  2269  	// empty value appearing in NullFields will be sent to the server as
  2270  	// null. It is an error if a field in this list has a non-empty value.
  2271  	// This may be used to include null fields in Patch requests.
  2272  	NullFields []string `json:"-"`
  2273  }
  2274  
  2275  func (s *GoogleCloudDialogflowV2IntentMessageListSelect) MarshalJSON() ([]byte, error) {
  2276  	type NoMethod GoogleCloudDialogflowV2IntentMessageListSelect
  2277  	raw := NoMethod(*s)
  2278  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2279  }
  2280  
  2281  // GoogleCloudDialogflowV2IntentMessageListSelectItem: An item in the
  2282  // list.
  2283  type GoogleCloudDialogflowV2IntentMessageListSelectItem struct {
  2284  	// Description: Optional. The main text describing the item.
  2285  	Description string `json:"description,omitempty"`
  2286  
  2287  	// Image: Optional. The image to display.
  2288  	Image *GoogleCloudDialogflowV2IntentMessageImage `json:"image,omitempty"`
  2289  
  2290  	// Info: Required. Additional information about this option.
  2291  	Info *GoogleCloudDialogflowV2IntentMessageSelectItemInfo `json:"info,omitempty"`
  2292  
  2293  	// Title: Required. The title of the list item.
  2294  	Title string `json:"title,omitempty"`
  2295  
  2296  	// ForceSendFields is a list of field names (e.g. "Description") to
  2297  	// unconditionally include in API requests. By default, fields with
  2298  	// empty values are omitted from API requests. However, any non-pointer,
  2299  	// non-interface field appearing in ForceSendFields will be sent to the
  2300  	// server regardless of whether the field is empty or not. This may be
  2301  	// used to include empty fields in Patch requests.
  2302  	ForceSendFields []string `json:"-"`
  2303  
  2304  	// NullFields is a list of field names (e.g. "Description") to include
  2305  	// in API requests with the JSON null value. By default, fields with
  2306  	// empty values are omitted from API requests. However, any field with
  2307  	// an empty value appearing in NullFields will be sent to the server as
  2308  	// null. It is an error if a field in this list has a non-empty value.
  2309  	// This may be used to include null fields in Patch requests.
  2310  	NullFields []string `json:"-"`
  2311  }
  2312  
  2313  func (s *GoogleCloudDialogflowV2IntentMessageListSelectItem) MarshalJSON() ([]byte, error) {
  2314  	type NoMethod GoogleCloudDialogflowV2IntentMessageListSelectItem
  2315  	raw := NoMethod(*s)
  2316  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2317  }
  2318  
  2319  // GoogleCloudDialogflowV2IntentMessageMediaContent: The media content
  2320  // card for Actions on Google.
  2321  type GoogleCloudDialogflowV2IntentMessageMediaContent struct {
  2322  	// MediaObjects: Required. List of media objects.
  2323  	MediaObjects []*GoogleCloudDialogflowV2IntentMessageMediaContentResponseMediaObject `json:"mediaObjects,omitempty"`
  2324  
  2325  	// MediaType: Optional. What type of media is the content (ie "audio").
  2326  	//
  2327  	// Possible values:
  2328  	//   "RESPONSE_MEDIA_TYPE_UNSPECIFIED" - Unspecified.
  2329  	//   "AUDIO" - Response media type is audio.
  2330  	MediaType string `json:"mediaType,omitempty"`
  2331  
  2332  	// ForceSendFields is a list of field names (e.g. "MediaObjects") to
  2333  	// unconditionally include in API requests. By default, fields with
  2334  	// empty values are omitted from API requests. However, any non-pointer,
  2335  	// non-interface field appearing in ForceSendFields will be sent to the
  2336  	// server regardless of whether the field is empty or not. This may be
  2337  	// used to include empty fields in Patch requests.
  2338  	ForceSendFields []string `json:"-"`
  2339  
  2340  	// NullFields is a list of field names (e.g. "MediaObjects") to include
  2341  	// in API requests with the JSON null value. By default, fields with
  2342  	// empty values are omitted from API requests. However, any field with
  2343  	// an empty value appearing in NullFields will be sent to the server as
  2344  	// null. It is an error if a field in this list has a non-empty value.
  2345  	// This may be used to include null fields in Patch requests.
  2346  	NullFields []string `json:"-"`
  2347  }
  2348  
  2349  func (s *GoogleCloudDialogflowV2IntentMessageMediaContent) MarshalJSON() ([]byte, error) {
  2350  	type NoMethod GoogleCloudDialogflowV2IntentMessageMediaContent
  2351  	raw := NoMethod(*s)
  2352  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2353  }
  2354  
  2355  // GoogleCloudDialogflowV2IntentMessageMediaContentResponseMediaObject:
  2356  // Response media object for media content card.
  2357  type GoogleCloudDialogflowV2IntentMessageMediaContentResponseMediaObject struct {
  2358  	// ContentUrl: Required. Url where the media is stored.
  2359  	ContentUrl string `json:"contentUrl,omitempty"`
  2360  
  2361  	// Description: Optional. Description of media card.
  2362  	Description string `json:"description,omitempty"`
  2363  
  2364  	// Icon: Optional. Icon to display above media content.
  2365  	Icon *GoogleCloudDialogflowV2IntentMessageImage `json:"icon,omitempty"`
  2366  
  2367  	// LargeImage: Optional. Image to display above media content.
  2368  	LargeImage *GoogleCloudDialogflowV2IntentMessageImage `json:"largeImage,omitempty"`
  2369  
  2370  	// Name: Required. Name of media card.
  2371  	Name string `json:"name,omitempty"`
  2372  
  2373  	// ForceSendFields is a list of field names (e.g. "ContentUrl") to
  2374  	// unconditionally include in API requests. By default, fields with
  2375  	// empty values are omitted from API requests. However, any non-pointer,
  2376  	// non-interface field appearing in ForceSendFields will be sent to the
  2377  	// server regardless of whether the field is empty or not. This may be
  2378  	// used to include empty fields in Patch requests.
  2379  	ForceSendFields []string `json:"-"`
  2380  
  2381  	// NullFields is a list of field names (e.g. "ContentUrl") to include in
  2382  	// API requests with the JSON null value. By default, fields with empty
  2383  	// values are omitted from API requests. However, any field with an
  2384  	// empty value appearing in NullFields will be sent to the server as
  2385  	// null. It is an error if a field in this list has a non-empty value.
  2386  	// This may be used to include null fields in Patch requests.
  2387  	NullFields []string `json:"-"`
  2388  }
  2389  
  2390  func (s *GoogleCloudDialogflowV2IntentMessageMediaContentResponseMediaObject) MarshalJSON() ([]byte, error) {
  2391  	type NoMethod GoogleCloudDialogflowV2IntentMessageMediaContentResponseMediaObject
  2392  	raw := NoMethod(*s)
  2393  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2394  }
  2395  
  2396  // GoogleCloudDialogflowV2IntentMessageQuickReplies: The quick replies
  2397  // response message.
  2398  type GoogleCloudDialogflowV2IntentMessageQuickReplies struct {
  2399  	// QuickReplies: Optional. The collection of quick replies.
  2400  	QuickReplies []string `json:"quickReplies,omitempty"`
  2401  
  2402  	// Title: Optional. The title of the collection of quick replies.
  2403  	Title string `json:"title,omitempty"`
  2404  
  2405  	// ForceSendFields is a list of field names (e.g. "QuickReplies") to
  2406  	// unconditionally include in API requests. By default, fields with
  2407  	// empty values are omitted from API requests. However, any non-pointer,
  2408  	// non-interface field appearing in ForceSendFields will be sent to the
  2409  	// server regardless of whether the field is empty or not. This may be
  2410  	// used to include empty fields in Patch requests.
  2411  	ForceSendFields []string `json:"-"`
  2412  
  2413  	// NullFields is a list of field names (e.g. "QuickReplies") to include
  2414  	// in API requests with the JSON null value. By default, fields with
  2415  	// empty values are omitted from API requests. However, any field with
  2416  	// an empty value appearing in NullFields will be sent to the server as
  2417  	// null. It is an error if a field in this list has a non-empty value.
  2418  	// This may be used to include null fields in Patch requests.
  2419  	NullFields []string `json:"-"`
  2420  }
  2421  
  2422  func (s *GoogleCloudDialogflowV2IntentMessageQuickReplies) MarshalJSON() ([]byte, error) {
  2423  	type NoMethod GoogleCloudDialogflowV2IntentMessageQuickReplies
  2424  	raw := NoMethod(*s)
  2425  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2426  }
  2427  
  2428  // GoogleCloudDialogflowV2IntentMessageSelectItemInfo: Additional info
  2429  // about the select item for when it is triggered in a
  2430  // dialog.
  2431  type GoogleCloudDialogflowV2IntentMessageSelectItemInfo struct {
  2432  	// Key: Required. A unique key that will be sent back to the agent if
  2433  	// this
  2434  	// response is given.
  2435  	Key string `json:"key,omitempty"`
  2436  
  2437  	// Synonyms: Optional. A list of synonyms that can also be used to
  2438  	// trigger this
  2439  	// item in dialog.
  2440  	Synonyms []string `json:"synonyms,omitempty"`
  2441  
  2442  	// ForceSendFields is a list of field names (e.g. "Key") to
  2443  	// unconditionally include in API requests. By default, fields with
  2444  	// empty values are omitted from API requests. However, any non-pointer,
  2445  	// non-interface field appearing in ForceSendFields will be sent to the
  2446  	// server regardless of whether the field is empty or not. This may be
  2447  	// used to include empty fields in Patch requests.
  2448  	ForceSendFields []string `json:"-"`
  2449  
  2450  	// NullFields is a list of field names (e.g. "Key") to include in API
  2451  	// requests with the JSON null value. By default, fields with empty
  2452  	// values are omitted from API requests. However, any field with an
  2453  	// empty value appearing in NullFields will be sent to the server as
  2454  	// null. It is an error if a field in this list has a non-empty value.
  2455  	// This may be used to include null fields in Patch requests.
  2456  	NullFields []string `json:"-"`
  2457  }
  2458  
  2459  func (s *GoogleCloudDialogflowV2IntentMessageSelectItemInfo) MarshalJSON() ([]byte, error) {
  2460  	type NoMethod GoogleCloudDialogflowV2IntentMessageSelectItemInfo
  2461  	raw := NoMethod(*s)
  2462  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2463  }
  2464  
  2465  // GoogleCloudDialogflowV2IntentMessageSimpleResponse: The simple
  2466  // response message containing speech or text.
  2467  type GoogleCloudDialogflowV2IntentMessageSimpleResponse struct {
  2468  	// DisplayText: Optional. The text to display.
  2469  	DisplayText string `json:"displayText,omitempty"`
  2470  
  2471  	// Ssml: One of text_to_speech or ssml must be provided. Structured
  2472  	// spoken
  2473  	// response to the user in the SSML format. Mutually exclusive
  2474  	// with
  2475  	// text_to_speech.
  2476  	Ssml string `json:"ssml,omitempty"`
  2477  
  2478  	// TextToSpeech: One of text_to_speech or ssml must be provided. The
  2479  	// plain text of the
  2480  	// speech output. Mutually exclusive with ssml.
  2481  	TextToSpeech string `json:"textToSpeech,omitempty"`
  2482  
  2483  	// ForceSendFields is a list of field names (e.g. "DisplayText") to
  2484  	// unconditionally include in API requests. By default, fields with
  2485  	// empty values are omitted from API requests. However, any non-pointer,
  2486  	// non-interface field appearing in ForceSendFields will be sent to the
  2487  	// server regardless of whether the field is empty or not. This may be
  2488  	// used to include empty fields in Patch requests.
  2489  	ForceSendFields []string `json:"-"`
  2490  
  2491  	// NullFields is a list of field names (e.g. "DisplayText") to include
  2492  	// in API requests with the JSON null value. By default, fields with
  2493  	// empty values are omitted from API requests. However, any field with
  2494  	// an empty value appearing in NullFields will be sent to the server as
  2495  	// null. It is an error if a field in this list has a non-empty value.
  2496  	// This may be used to include null fields in Patch requests.
  2497  	NullFields []string `json:"-"`
  2498  }
  2499  
  2500  func (s *GoogleCloudDialogflowV2IntentMessageSimpleResponse) MarshalJSON() ([]byte, error) {
  2501  	type NoMethod GoogleCloudDialogflowV2IntentMessageSimpleResponse
  2502  	raw := NoMethod(*s)
  2503  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2504  }
  2505  
  2506  // GoogleCloudDialogflowV2IntentMessageSimpleResponses: The collection
  2507  // of simple response candidates.
  2508  // This message in `QueryResult.fulfillment_messages`
  2509  // and
  2510  // `WebhookResponse.fulfillment_messages` should contain only
  2511  // one
  2512  // `SimpleResponse`.
  2513  type GoogleCloudDialogflowV2IntentMessageSimpleResponses struct {
  2514  	// SimpleResponses: Required. The list of simple responses.
  2515  	SimpleResponses []*GoogleCloudDialogflowV2IntentMessageSimpleResponse `json:"simpleResponses,omitempty"`
  2516  
  2517  	// ForceSendFields is a list of field names (e.g. "SimpleResponses") to
  2518  	// unconditionally include in API requests. By default, fields with
  2519  	// empty values are omitted from API requests. However, any non-pointer,
  2520  	// non-interface field appearing in ForceSendFields will be sent to the
  2521  	// server regardless of whether the field is empty or not. This may be
  2522  	// used to include empty fields in Patch requests.
  2523  	ForceSendFields []string `json:"-"`
  2524  
  2525  	// NullFields is a list of field names (e.g. "SimpleResponses") to
  2526  	// include in API requests with the JSON null value. By default, fields
  2527  	// with empty values are omitted from API requests. However, any field
  2528  	// with an empty value appearing in NullFields will be sent to the
  2529  	// server as null. It is an error if a field in this list has a
  2530  	// non-empty value. This may be used to include null fields in Patch
  2531  	// requests.
  2532  	NullFields []string `json:"-"`
  2533  }
  2534  
  2535  func (s *GoogleCloudDialogflowV2IntentMessageSimpleResponses) MarshalJSON() ([]byte, error) {
  2536  	type NoMethod GoogleCloudDialogflowV2IntentMessageSimpleResponses
  2537  	raw := NoMethod(*s)
  2538  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2539  }
  2540  
  2541  // GoogleCloudDialogflowV2IntentMessageSuggestion: The suggestion chip
  2542  // message that the user can tap to quickly post a reply
  2543  // to the conversation.
  2544  type GoogleCloudDialogflowV2IntentMessageSuggestion struct {
  2545  	// Title: Required. The text shown the in the suggestion chip.
  2546  	Title string `json:"title,omitempty"`
  2547  
  2548  	// ForceSendFields is a list of field names (e.g. "Title") to
  2549  	// unconditionally include in API requests. By default, fields with
  2550  	// empty values are omitted from API requests. However, any non-pointer,
  2551  	// non-interface field appearing in ForceSendFields will be sent to the
  2552  	// server regardless of whether the field is empty or not. This may be
  2553  	// used to include empty fields in Patch requests.
  2554  	ForceSendFields []string `json:"-"`
  2555  
  2556  	// NullFields is a list of field names (e.g. "Title") to include in API
  2557  	// requests with the JSON null value. By default, fields with empty
  2558  	// values are omitted from API requests. However, any field with an
  2559  	// empty value appearing in NullFields will be sent to the server as
  2560  	// null. It is an error if a field in this list has a non-empty value.
  2561  	// This may be used to include null fields in Patch requests.
  2562  	NullFields []string `json:"-"`
  2563  }
  2564  
  2565  func (s *GoogleCloudDialogflowV2IntentMessageSuggestion) MarshalJSON() ([]byte, error) {
  2566  	type NoMethod GoogleCloudDialogflowV2IntentMessageSuggestion
  2567  	raw := NoMethod(*s)
  2568  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2569  }
  2570  
  2571  // GoogleCloudDialogflowV2IntentMessageSuggestions: The collection of
  2572  // suggestions.
  2573  type GoogleCloudDialogflowV2IntentMessageSuggestions struct {
  2574  	// Suggestions: Required. The list of suggested replies.
  2575  	Suggestions []*GoogleCloudDialogflowV2IntentMessageSuggestion `json:"suggestions,omitempty"`
  2576  
  2577  	// ForceSendFields is a list of field names (e.g. "Suggestions") to
  2578  	// unconditionally include in API requests. By default, fields with
  2579  	// empty values are omitted from API requests. However, any non-pointer,
  2580  	// non-interface field appearing in ForceSendFields will be sent to the
  2581  	// server regardless of whether the field is empty or not. This may be
  2582  	// used to include empty fields in Patch requests.
  2583  	ForceSendFields []string `json:"-"`
  2584  
  2585  	// NullFields is a list of field names (e.g. "Suggestions") to include
  2586  	// in API requests with the JSON null value. By default, fields with
  2587  	// empty values are omitted from API requests. However, any field with
  2588  	// an empty value appearing in NullFields will be sent to the server as
  2589  	// null. It is an error if a field in this list has a non-empty value.
  2590  	// This may be used to include null fields in Patch requests.
  2591  	NullFields []string `json:"-"`
  2592  }
  2593  
  2594  func (s *GoogleCloudDialogflowV2IntentMessageSuggestions) MarshalJSON() ([]byte, error) {
  2595  	type NoMethod GoogleCloudDialogflowV2IntentMessageSuggestions
  2596  	raw := NoMethod(*s)
  2597  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2598  }
  2599  
  2600  // GoogleCloudDialogflowV2IntentMessageTableCard: Table card for Actions
  2601  // on Google.
  2602  type GoogleCloudDialogflowV2IntentMessageTableCard struct {
  2603  	// Buttons: Optional. List of buttons for the card.
  2604  	Buttons []*GoogleCloudDialogflowV2IntentMessageBasicCardButton `json:"buttons,omitempty"`
  2605  
  2606  	// ColumnProperties: Optional. Display properties for the columns in
  2607  	// this table.
  2608  	ColumnProperties []*GoogleCloudDialogflowV2IntentMessageColumnProperties `json:"columnProperties,omitempty"`
  2609  
  2610  	// Image: Optional. Image which should be displayed on the card.
  2611  	Image *GoogleCloudDialogflowV2IntentMessageImage `json:"image,omitempty"`
  2612  
  2613  	// Rows: Optional. Rows in this table of data.
  2614  	Rows []*GoogleCloudDialogflowV2IntentMessageTableCardRow `json:"rows,omitempty"`
  2615  
  2616  	// Subtitle: Optional. Subtitle to the title.
  2617  	Subtitle string `json:"subtitle,omitempty"`
  2618  
  2619  	// Title: Required. Title of the card.
  2620  	Title string `json:"title,omitempty"`
  2621  
  2622  	// ForceSendFields is a list of field names (e.g. "Buttons") to
  2623  	// unconditionally include in API requests. By default, fields with
  2624  	// empty values are omitted from API requests. However, any non-pointer,
  2625  	// non-interface field appearing in ForceSendFields will be sent to the
  2626  	// server regardless of whether the field is empty or not. This may be
  2627  	// used to include empty fields in Patch requests.
  2628  	ForceSendFields []string `json:"-"`
  2629  
  2630  	// NullFields is a list of field names (e.g. "Buttons") to include in
  2631  	// API requests with the JSON null value. By default, fields with empty
  2632  	// values are omitted from API requests. However, any field with an
  2633  	// empty value appearing in NullFields will be sent to the server as
  2634  	// null. It is an error if a field in this list has a non-empty value.
  2635  	// This may be used to include null fields in Patch requests.
  2636  	NullFields []string `json:"-"`
  2637  }
  2638  
  2639  func (s *GoogleCloudDialogflowV2IntentMessageTableCard) MarshalJSON() ([]byte, error) {
  2640  	type NoMethod GoogleCloudDialogflowV2IntentMessageTableCard
  2641  	raw := NoMethod(*s)
  2642  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2643  }
  2644  
  2645  // GoogleCloudDialogflowV2IntentMessageTableCardCell: Cell of
  2646  // TableCardRow.
  2647  type GoogleCloudDialogflowV2IntentMessageTableCardCell struct {
  2648  	// Text: Required. Text in this cell.
  2649  	Text string `json:"text,omitempty"`
  2650  
  2651  	// ForceSendFields is a list of field names (e.g. "Text") to
  2652  	// unconditionally include in API requests. By default, fields with
  2653  	// empty values are omitted from API requests. However, any non-pointer,
  2654  	// non-interface field appearing in ForceSendFields will be sent to the
  2655  	// server regardless of whether the field is empty or not. This may be
  2656  	// used to include empty fields in Patch requests.
  2657  	ForceSendFields []string `json:"-"`
  2658  
  2659  	// NullFields is a list of field names (e.g. "Text") to include in API
  2660  	// requests with the JSON null value. By default, fields with empty
  2661  	// values are omitted from API requests. However, any field with an
  2662  	// empty value appearing in NullFields will be sent to the server as
  2663  	// null. It is an error if a field in this list has a non-empty value.
  2664  	// This may be used to include null fields in Patch requests.
  2665  	NullFields []string `json:"-"`
  2666  }
  2667  
  2668  func (s *GoogleCloudDialogflowV2IntentMessageTableCardCell) MarshalJSON() ([]byte, error) {
  2669  	type NoMethod GoogleCloudDialogflowV2IntentMessageTableCardCell
  2670  	raw := NoMethod(*s)
  2671  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2672  }
  2673  
  2674  // GoogleCloudDialogflowV2IntentMessageTableCardRow: Row of TableCard.
  2675  type GoogleCloudDialogflowV2IntentMessageTableCardRow struct {
  2676  	// Cells: Optional. List of cells that make up this row.
  2677  	Cells []*GoogleCloudDialogflowV2IntentMessageTableCardCell `json:"cells,omitempty"`
  2678  
  2679  	// DividerAfter: Optional. Whether to add a visual divider after this
  2680  	// row.
  2681  	DividerAfter bool `json:"dividerAfter,omitempty"`
  2682  
  2683  	// ForceSendFields is a list of field names (e.g. "Cells") to
  2684  	// unconditionally include in API requests. By default, fields with
  2685  	// empty values are omitted from API requests. However, any non-pointer,
  2686  	// non-interface field appearing in ForceSendFields will be sent to the
  2687  	// server regardless of whether the field is empty or not. This may be
  2688  	// used to include empty fields in Patch requests.
  2689  	ForceSendFields []string `json:"-"`
  2690  
  2691  	// NullFields is a list of field names (e.g. "Cells") to include in API
  2692  	// requests with the JSON null value. By default, fields with empty
  2693  	// values are omitted from API requests. However, any field with an
  2694  	// empty value appearing in NullFields will be sent to the server as
  2695  	// null. It is an error if a field in this list has a non-empty value.
  2696  	// This may be used to include null fields in Patch requests.
  2697  	NullFields []string `json:"-"`
  2698  }
  2699  
  2700  func (s *GoogleCloudDialogflowV2IntentMessageTableCardRow) MarshalJSON() ([]byte, error) {
  2701  	type NoMethod GoogleCloudDialogflowV2IntentMessageTableCardRow
  2702  	raw := NoMethod(*s)
  2703  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2704  }
  2705  
  2706  // GoogleCloudDialogflowV2IntentMessageText: The text response message.
  2707  type GoogleCloudDialogflowV2IntentMessageText struct {
  2708  	// Text: Optional. The collection of the agent's responses.
  2709  	Text []string `json:"text,omitempty"`
  2710  
  2711  	// ForceSendFields is a list of field names (e.g. "Text") to
  2712  	// unconditionally include in API requests. By default, fields with
  2713  	// empty values are omitted from API requests. However, any non-pointer,
  2714  	// non-interface field appearing in ForceSendFields will be sent to the
  2715  	// server regardless of whether the field is empty or not. This may be
  2716  	// used to include empty fields in Patch requests.
  2717  	ForceSendFields []string `json:"-"`
  2718  
  2719  	// NullFields is a list of field names (e.g. "Text") to include in API
  2720  	// requests with the JSON null value. By default, fields with empty
  2721  	// values are omitted from API requests. However, any field with an
  2722  	// empty value appearing in NullFields will be sent to the server as
  2723  	// null. It is an error if a field in this list has a non-empty value.
  2724  	// This may be used to include null fields in Patch requests.
  2725  	NullFields []string `json:"-"`
  2726  }
  2727  
  2728  func (s *GoogleCloudDialogflowV2IntentMessageText) MarshalJSON() ([]byte, error) {
  2729  	type NoMethod GoogleCloudDialogflowV2IntentMessageText
  2730  	raw := NoMethod(*s)
  2731  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2732  }
  2733  
  2734  // GoogleCloudDialogflowV2IntentParameter: Represents intent parameters.
  2735  type GoogleCloudDialogflowV2IntentParameter struct {
  2736  	// DefaultValue: Optional. The default value to use when the `value`
  2737  	// yields an empty
  2738  	// result.
  2739  	// Default values can be extracted from contexts by using the
  2740  	// following
  2741  	// syntax: `#context_name.parameter_name`.
  2742  	DefaultValue string `json:"defaultValue,omitempty"`
  2743  
  2744  	// DisplayName: Required. The name of the parameter.
  2745  	DisplayName string `json:"displayName,omitempty"`
  2746  
  2747  	// EntityTypeDisplayName: Optional. The name of the entity type,
  2748  	// prefixed with `@`, that
  2749  	// describes values of the parameter. If the parameter is
  2750  	// required, this must be provided.
  2751  	EntityTypeDisplayName string `json:"entityTypeDisplayName,omitempty"`
  2752  
  2753  	// IsList: Optional. Indicates whether the parameter represents a list
  2754  	// of values.
  2755  	IsList bool `json:"isList,omitempty"`
  2756  
  2757  	// Mandatory: Optional. Indicates whether the parameter is required.
  2758  	// That is,
  2759  	// whether the intent cannot be completed without collecting the
  2760  	// parameter
  2761  	// value.
  2762  	Mandatory bool `json:"mandatory,omitempty"`
  2763  
  2764  	// Name: The unique identifier of this parameter.
  2765  	Name string `json:"name,omitempty"`
  2766  
  2767  	// Prompts: Optional. The collection of prompts that the agent can
  2768  	// present to the
  2769  	// user in order to collect a value for the parameter.
  2770  	Prompts []string `json:"prompts,omitempty"`
  2771  
  2772  	// Value: Optional. The definition of the parameter value. It can be:
  2773  	//
  2774  	// - a constant string,
  2775  	// - a parameter value defined as `$parameter_name`,
  2776  	// - an original parameter value defined as
  2777  	// `$parameter_name.original`,
  2778  	// - a parameter value from some context defined as
  2779  	//   `#context_name.parameter_name`.
  2780  	Value string `json:"value,omitempty"`
  2781  
  2782  	// ForceSendFields is a list of field names (e.g. "DefaultValue") to
  2783  	// unconditionally include in API requests. By default, fields with
  2784  	// empty values are omitted from API requests. However, any non-pointer,
  2785  	// non-interface field appearing in ForceSendFields will be sent to the
  2786  	// server regardless of whether the field is empty or not. This may be
  2787  	// used to include empty fields in Patch requests.
  2788  	ForceSendFields []string `json:"-"`
  2789  
  2790  	// NullFields is a list of field names (e.g. "DefaultValue") to include
  2791  	// in API requests with the JSON null value. By default, fields with
  2792  	// empty values are omitted from API requests. However, any field with
  2793  	// an empty value appearing in NullFields will be sent to the server as
  2794  	// null. It is an error if a field in this list has a non-empty value.
  2795  	// This may be used to include null fields in Patch requests.
  2796  	NullFields []string `json:"-"`
  2797  }
  2798  
  2799  func (s *GoogleCloudDialogflowV2IntentParameter) MarshalJSON() ([]byte, error) {
  2800  	type NoMethod GoogleCloudDialogflowV2IntentParameter
  2801  	raw := NoMethod(*s)
  2802  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2803  }
  2804  
  2805  // GoogleCloudDialogflowV2IntentTrainingPhrase: Represents an example
  2806  // that the agent is trained on.
  2807  type GoogleCloudDialogflowV2IntentTrainingPhrase struct {
  2808  	// Name: Output only. The unique identifier of this training phrase.
  2809  	Name string `json:"name,omitempty"`
  2810  
  2811  	// Parts: Required. The ordered list of training phrase parts.
  2812  	// The parts are concatenated in order to form the training
  2813  	// phrase.
  2814  	//
  2815  	// Note: The API does not automatically annotate training phrases like
  2816  	// the
  2817  	// Dialogflow Console does.
  2818  	//
  2819  	// Note: Do not forget to include whitespace at part boundaries,
  2820  	// so the training phrase is well formatted when the parts are
  2821  	// concatenated.
  2822  	//
  2823  	// If the training phrase does not need to be annotated with
  2824  	// parameters,
  2825  	// you just need a single part with only the Part.text field set.
  2826  	//
  2827  	// If you want to annotate the training phrase, you must create
  2828  	// multiple
  2829  	// parts, where the fields of each part are populated in one of two
  2830  	// ways:
  2831  	//
  2832  	// -   `Part.text` is set to a part of the phrase that has no
  2833  	// parameters.
  2834  	// -   `Part.text` is set to a part of the phrase that you want to
  2835  	// annotate,
  2836  	//     and the `entity_type`, `alias`, and `user_defined` fields are
  2837  	// all
  2838  	//     set.
  2839  	Parts []*GoogleCloudDialogflowV2IntentTrainingPhrasePart `json:"parts,omitempty"`
  2840  
  2841  	// TimesAddedCount: Optional. Indicates how many times this example was
  2842  	// added to
  2843  	// the intent. Each time a developer adds an existing sample by editing
  2844  	// an
  2845  	// intent or training, this counter is increased.
  2846  	TimesAddedCount int64 `json:"timesAddedCount,omitempty"`
  2847  
  2848  	// Type: Required. The type of the training phrase.
  2849  	//
  2850  	// Possible values:
  2851  	//   "TYPE_UNSPECIFIED" - Not specified. This value should never be
  2852  	// used.
  2853  	//   "EXAMPLE" - Examples do not contain @-prefixed entity type names,
  2854  	// but example parts
  2855  	// can be annotated with entity types.
  2856  	//   "TEMPLATE" - Templates are not annotated with entity types, but
  2857  	// they can contain
  2858  	// @-prefixed entity type names as substrings.
  2859  	// Template mode has been deprecated. Example mode is the only
  2860  	// supported
  2861  	// way to create new training phrases. If you have existing
  2862  	// training
  2863  	// phrases that you've created in template mode, those will continue
  2864  	// to
  2865  	// work.
  2866  	Type string `json:"type,omitempty"`
  2867  
  2868  	// ForceSendFields is a list of field names (e.g. "Name") to
  2869  	// unconditionally include in API requests. By default, fields with
  2870  	// empty values are omitted from API requests. However, any non-pointer,
  2871  	// non-interface field appearing in ForceSendFields will be sent to the
  2872  	// server regardless of whether the field is empty or not. This may be
  2873  	// used to include empty fields in Patch requests.
  2874  	ForceSendFields []string `json:"-"`
  2875  
  2876  	// NullFields is a list of field names (e.g. "Name") to include in API
  2877  	// requests with the JSON null value. By default, fields with empty
  2878  	// values are omitted from API requests. However, any field with an
  2879  	// empty value appearing in NullFields will be sent to the server as
  2880  	// null. It is an error if a field in this list has a non-empty value.
  2881  	// This may be used to include null fields in Patch requests.
  2882  	NullFields []string `json:"-"`
  2883  }
  2884  
  2885  func (s *GoogleCloudDialogflowV2IntentTrainingPhrase) MarshalJSON() ([]byte, error) {
  2886  	type NoMethod GoogleCloudDialogflowV2IntentTrainingPhrase
  2887  	raw := NoMethod(*s)
  2888  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2889  }
  2890  
  2891  // GoogleCloudDialogflowV2IntentTrainingPhrasePart: Represents a part of
  2892  // a training phrase.
  2893  type GoogleCloudDialogflowV2IntentTrainingPhrasePart struct {
  2894  	// Alias: Optional. The parameter name for the value extracted from
  2895  	// the
  2896  	// annotated part of the example.
  2897  	// This field is required for annotated parts of the training phrase.
  2898  	Alias string `json:"alias,omitempty"`
  2899  
  2900  	// EntityType: Optional. The entity type name prefixed with `@`.
  2901  	// This field is required for annotated parts of the training phrase.
  2902  	EntityType string `json:"entityType,omitempty"`
  2903  
  2904  	// Text: Required. The text for this part.
  2905  	Text string `json:"text,omitempty"`
  2906  
  2907  	// UserDefined: Optional. Indicates whether the text was manually
  2908  	// annotated.
  2909  	// This field is set to true when the Dialogflow Console is used
  2910  	// to
  2911  	// manually annotate the part. When creating an annotated part with
  2912  	// the
  2913  	// API, you must set this to true.
  2914  	UserDefined bool `json:"userDefined,omitempty"`
  2915  
  2916  	// ForceSendFields is a list of field names (e.g. "Alias") to
  2917  	// unconditionally include in API requests. By default, fields with
  2918  	// empty values are omitted from API requests. However, any non-pointer,
  2919  	// non-interface field appearing in ForceSendFields will be sent to the
  2920  	// server regardless of whether the field is empty or not. This may be
  2921  	// used to include empty fields in Patch requests.
  2922  	ForceSendFields []string `json:"-"`
  2923  
  2924  	// NullFields is a list of field names (e.g. "Alias") to include in API
  2925  	// requests with the JSON null value. By default, fields with empty
  2926  	// values are omitted from API requests. However, any field with an
  2927  	// empty value appearing in NullFields will be sent to the server as
  2928  	// null. It is an error if a field in this list has a non-empty value.
  2929  	// This may be used to include null fields in Patch requests.
  2930  	NullFields []string `json:"-"`
  2931  }
  2932  
  2933  func (s *GoogleCloudDialogflowV2IntentTrainingPhrasePart) MarshalJSON() ([]byte, error) {
  2934  	type NoMethod GoogleCloudDialogflowV2IntentTrainingPhrasePart
  2935  	raw := NoMethod(*s)
  2936  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2937  }
  2938  
  2939  // GoogleCloudDialogflowV2Message: Represents a message posted into a
  2940  // conversation.
  2941  type GoogleCloudDialogflowV2Message struct {
  2942  	// Content: Required. The message content.
  2943  	Content string `json:"content,omitempty"`
  2944  
  2945  	// CreateTime: Output only. The time when the message was created.
  2946  	CreateTime string `json:"createTime,omitempty"`
  2947  
  2948  	// LanguageCode: Optional. The message language.
  2949  	// This should be a
  2950  	// [BCP-47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt)
  2951  	// language tag. Example: "en-US".
  2952  	LanguageCode string `json:"languageCode,omitempty"`
  2953  
  2954  	// MessageAnnotation: Output only. The annotation for the message.
  2955  	MessageAnnotation *GoogleCloudDialogflowV2MessageAnnotation `json:"messageAnnotation,omitempty"`
  2956  
  2957  	// Name: The unique identifier of the message.
  2958  	// Format: `projects/<Project
  2959  	// ID>/conversations/<Conversation
  2960  	// ID>/messages/<Message ID>`.
  2961  	Name string `json:"name,omitempty"`
  2962  
  2963  	// Participant: Output only. The participant that sends this message.
  2964  	Participant string `json:"participant,omitempty"`
  2965  
  2966  	// ParticipantRole: Output only. The role of the participant.
  2967  	//
  2968  	// Possible values:
  2969  	//   "ROLE_UNSPECIFIED" - Participant role not set.
  2970  	//   "HUMAN_AGENT" - Participant is a human agent.
  2971  	//   "AUTOMATED_AGENT" - Participant is an automated agent, such as a
  2972  	// Dialogflow agent.
  2973  	//   "END_USER" - Participant is an end user that has called or chatted
  2974  	// with
  2975  	// Dialogflow services.
  2976  	ParticipantRole string `json:"participantRole,omitempty"`
  2977  
  2978  	// ForceSendFields is a list of field names (e.g. "Content") to
  2979  	// unconditionally include in API requests. By default, fields with
  2980  	// empty values are omitted from API requests. However, any non-pointer,
  2981  	// non-interface field appearing in ForceSendFields will be sent to the
  2982  	// server regardless of whether the field is empty or not. This may be
  2983  	// used to include empty fields in Patch requests.
  2984  	ForceSendFields []string `json:"-"`
  2985  
  2986  	// NullFields is a list of field names (e.g. "Content") to include in
  2987  	// API requests with the JSON null value. By default, fields with empty
  2988  	// values are omitted from API requests. However, any field with an
  2989  	// empty value appearing in NullFields will be sent to the server as
  2990  	// null. It is an error if a field in this list has a non-empty value.
  2991  	// This may be used to include null fields in Patch requests.
  2992  	NullFields []string `json:"-"`
  2993  }
  2994  
  2995  func (s *GoogleCloudDialogflowV2Message) MarshalJSON() ([]byte, error) {
  2996  	type NoMethod GoogleCloudDialogflowV2Message
  2997  	raw := NoMethod(*s)
  2998  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2999  }
  3000  
  3001  // GoogleCloudDialogflowV2MessageAnnotation: Represents the result of
  3002  // annotation for the message.
  3003  type GoogleCloudDialogflowV2MessageAnnotation struct {
  3004  	// ContainEntities: Indicates whether the text message contains
  3005  	// entities.
  3006  	ContainEntities bool `json:"containEntities,omitempty"`
  3007  
  3008  	// Parts: The collection of annotated message parts ordered by
  3009  	// their
  3010  	// position in the message. You can recover the annotated message
  3011  	// by
  3012  	// concatenating [AnnotatedMessagePart.text].
  3013  	Parts []*GoogleCloudDialogflowV2AnnotatedMessagePart `json:"parts,omitempty"`
  3014  
  3015  	// ForceSendFields is a list of field names (e.g. "ContainEntities") to
  3016  	// unconditionally include in API requests. By default, fields with
  3017  	// empty values are omitted from API requests. However, any non-pointer,
  3018  	// non-interface field appearing in ForceSendFields will be sent to the
  3019  	// server regardless of whether the field is empty or not. This may be
  3020  	// used to include empty fields in Patch requests.
  3021  	ForceSendFields []string `json:"-"`
  3022  
  3023  	// NullFields is a list of field names (e.g. "ContainEntities") to
  3024  	// include in API requests with the JSON null value. By default, fields
  3025  	// with empty values are omitted from API requests. However, any field
  3026  	// with an empty value appearing in NullFields will be sent to the
  3027  	// server as null. It is an error if a field in this list has a
  3028  	// non-empty value. This may be used to include null fields in Patch
  3029  	// requests.
  3030  	NullFields []string `json:"-"`
  3031  }
  3032  
  3033  func (s *GoogleCloudDialogflowV2MessageAnnotation) MarshalJSON() ([]byte, error) {
  3034  	type NoMethod GoogleCloudDialogflowV2MessageAnnotation
  3035  	raw := NoMethod(*s)
  3036  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  3037  }
  3038  
  3039  // GoogleCloudDialogflowV2OriginalDetectIntentRequest: Represents the
  3040  // contents of the original request that was passed to
  3041  // the `[Streaming]DetectIntent` call.
  3042  type GoogleCloudDialogflowV2OriginalDetectIntentRequest struct {
  3043  	// Payload: Optional. This field is set to the value of the
  3044  	// `QueryParameters.payload`
  3045  	// field passed in the request. Some integrations that query a
  3046  	// Dialogflow
  3047  	// agent may provide additional information in the payload.
  3048  	//
  3049  	// In particular, for the Dialogflow Phone Gateway integration, this
  3050  	// field has
  3051  	// the form:
  3052  	// <pre>{
  3053  	//  "telephony": {
  3054  	//    "caller_id": "+18558363987"
  3055  	//  }
  3056  	// }</pre>
  3057  	// Note: The caller ID field (`caller_id`) will be redacted for
  3058  	// Standard
  3059  	// Edition agents and populated with the caller ID in
  3060  	// [E.164
  3061  	// format](https://en.wikipedia.org/wiki/E.164) for Enterprise Edition
  3062  	// agents.
  3063  	Payload googleapi.RawMessage `json:"payload,omitempty"`
  3064  
  3065  	// Source: The source of this request, e.g., `google`, `facebook`,
  3066  	// `slack`. It is set
  3067  	// by Dialogflow-owned servers.
  3068  	Source string `json:"source,omitempty"`
  3069  
  3070  	// Version: Optional. The version of the protocol used for this
  3071  	// request.
  3072  	// This field is AoG-specific.
  3073  	Version string `json:"version,omitempty"`
  3074  
  3075  	// ForceSendFields is a list of field names (e.g. "Payload") to
  3076  	// unconditionally include in API requests. By default, fields with
  3077  	// empty values are omitted from API requests. However, any non-pointer,
  3078  	// non-interface field appearing in ForceSendFields will be sent to the
  3079  	// server regardless of whether the field is empty or not. This may be
  3080  	// used to include empty fields in Patch requests.
  3081  	ForceSendFields []string `json:"-"`
  3082  
  3083  	// NullFields is a list of field names (e.g. "Payload") to include in
  3084  	// API requests with the JSON null value. By default, fields with empty
  3085  	// values are omitted from API requests. However, any field with an
  3086  	// empty value appearing in NullFields will be sent to the server as
  3087  	// null. It is an error if a field in this list has a non-empty value.
  3088  	// This may be used to include null fields in Patch requests.
  3089  	NullFields []string `json:"-"`
  3090  }
  3091  
  3092  func (s *GoogleCloudDialogflowV2OriginalDetectIntentRequest) MarshalJSON() ([]byte, error) {
  3093  	type NoMethod GoogleCloudDialogflowV2OriginalDetectIntentRequest
  3094  	raw := NoMethod(*s)
  3095  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  3096  }
  3097  
  3098  // GoogleCloudDialogflowV2QueryResult: Represents the result of
  3099  // conversational query or event processing.
  3100  type GoogleCloudDialogflowV2QueryResult struct {
  3101  	// Action: The action name from the matched intent.
  3102  	Action string `json:"action,omitempty"`
  3103  
  3104  	// AllRequiredParamsPresent: This field is set to:
  3105  	//
  3106  	// - `false` if the matched intent has required parameters and not all
  3107  	// of
  3108  	//    the required parameter values have been collected.
  3109  	// - `true` if all required parameter values have been collected, or if
  3110  	// the
  3111  	//    matched intent doesn't contain any required parameters.
  3112  	AllRequiredParamsPresent bool `json:"allRequiredParamsPresent,omitempty"`
  3113  
  3114  	// DiagnosticInfo: Free-form diagnostic information for the associated
  3115  	// detect intent request.
  3116  	// The fields of this data can change without notice, so you should not
  3117  	// write
  3118  	// code that depends on its structure.
  3119  	// The data may contain:
  3120  	//
  3121  	// - webhook call latency
  3122  	// - webhook errors
  3123  	DiagnosticInfo googleapi.RawMessage `json:"diagnosticInfo,omitempty"`
  3124  
  3125  	// FulfillmentMessages: The collection of rich messages to present to
  3126  	// the user.
  3127  	FulfillmentMessages []*GoogleCloudDialogflowV2IntentMessage `json:"fulfillmentMessages,omitempty"`
  3128  
  3129  	// FulfillmentText: The text to be pronounced to the user or shown on
  3130  	// the screen.
  3131  	// Note: This is a legacy field, `fulfillment_messages` should be
  3132  	// preferred.
  3133  	FulfillmentText string `json:"fulfillmentText,omitempty"`
  3134  
  3135  	// Intent: The intent that matched the conversational query. Some,
  3136  	// not
  3137  	// all fields are filled in this message, including but not limited
  3138  	// to:
  3139  	// `name`, `display_name`, `end_interaction` and `is_fallback`.
  3140  	Intent *GoogleCloudDialogflowV2Intent `json:"intent,omitempty"`
  3141  
  3142  	// IntentDetectionConfidence: The intent detection confidence. Values
  3143  	// range from 0.0
  3144  	// (completely uncertain) to 1.0 (completely certain).
  3145  	// This value is for informational purpose only and is only used to
  3146  	// help match the best intent within the classification threshold.
  3147  	// This value may change for the same end-user expression at any time
  3148  	// due to a
  3149  	// model retraining or change in implementation.
  3150  	// If there are `multiple knowledge_answers` messages, this value is set
  3151  	// to
  3152  	// the greatest `knowledgeAnswers.match_confidence` value in the list.
  3153  	IntentDetectionConfidence float64 `json:"intentDetectionConfidence,omitempty"`
  3154  
  3155  	// LanguageCode: The language that was triggered during intent
  3156  	// detection.
  3157  	// See
  3158  	// [Language
  3159  	// Support](https://cloud.google.com/dialogflow/docs/reference/
  3160  	// language)
  3161  	// for a list of the currently supported language codes.
  3162  	LanguageCode string `json:"languageCode,omitempty"`
  3163  
  3164  	// OutputContexts: The collection of output contexts. If
  3165  	// applicable,
  3166  	// `output_contexts.parameters` contains entries with name
  3167  	// `<parameter name>.original` containing the original parameter
  3168  	// values
  3169  	// before the query.
  3170  	OutputContexts []*GoogleCloudDialogflowV2Context `json:"outputContexts,omitempty"`
  3171  
  3172  	// Parameters: The collection of extracted parameters.
  3173  	//
  3174  	// Depending on your protocol or client library language, this is a
  3175  	// map, associative array, symbol table, dictionary, or JSON
  3176  	// object
  3177  	// composed of a collection of (MapKey, MapValue) pairs:
  3178  	//
  3179  	// -   MapKey type: string
  3180  	// -   MapKey value: parameter name
  3181  	// -   MapValue type:
  3182  	//     -   If parameter's entity type is a composite entity: map
  3183  	//     -   Else: string or number, depending on parameter value type
  3184  	// -   MapValue value:
  3185  	//     -   If parameter's entity type is a composite entity:
  3186  	//         map from composite entity property names to property values
  3187  	//     -   Else: parameter value
  3188  	Parameters googleapi.RawMessage `json:"parameters,omitempty"`
  3189  
  3190  	// QueryText: The original conversational query text:
  3191  	//
  3192  	// - If natural language text was provided as input, `query_text`
  3193  	// contains
  3194  	//   a copy of the input.
  3195  	// - If natural language speech audio was provided as input,
  3196  	// `query_text`
  3197  	//   contains the speech recognition result. If speech recognizer
  3198  	// produced
  3199  	//   multiple alternatives, a particular one is picked.
  3200  	// - If automatic spell correction is enabled, `query_text` will contain
  3201  	// the
  3202  	//   corrected user input.
  3203  	QueryText string `json:"queryText,omitempty"`
  3204  
  3205  	// SentimentAnalysisResult: The sentiment analysis result, which depends
  3206  	// on the
  3207  	// `sentiment_analysis_request_config` specified in the request.
  3208  	SentimentAnalysisResult *GoogleCloudDialogflowV2SentimentAnalysisResult `json:"sentimentAnalysisResult,omitempty"`
  3209  
  3210  	// SpeechRecognitionConfidence: The Speech recognition confidence
  3211  	// between 0.0 and 1.0. A higher number
  3212  	// indicates an estimated greater likelihood that the recognized words
  3213  	// are
  3214  	// correct. The default of 0.0 is a sentinel value indicating that
  3215  	// confidence
  3216  	// was not set.
  3217  	//
  3218  	// This field is not guaranteed to be accurate or set. In particular
  3219  	// this
  3220  	// field isn't set for StreamingDetectIntent since the streaming
  3221  	// endpoint has
  3222  	// separate confidence estimates per portion of the audio
  3223  	// in
  3224  	// StreamingRecognitionResult.
  3225  	SpeechRecognitionConfidence float64 `json:"speechRecognitionConfidence,omitempty"`
  3226  
  3227  	// WebhookPayload: If the query was fulfilled by a webhook call, this
  3228  	// field is set to the
  3229  	// value of the `payload` field returned in the webhook response.
  3230  	WebhookPayload googleapi.RawMessage `json:"webhookPayload,omitempty"`
  3231  
  3232  	// WebhookSource: If the query was fulfilled by a webhook call, this
  3233  	// field is set to the
  3234  	// value of the `source` field returned in the webhook response.
  3235  	WebhookSource string `json:"webhookSource,omitempty"`
  3236  
  3237  	// ForceSendFields is a list of field names (e.g. "Action") to
  3238  	// unconditionally include in API requests. By default, fields with
  3239  	// empty values are omitted from API requests. However, any non-pointer,
  3240  	// non-interface field appearing in ForceSendFields will be sent to the
  3241  	// server regardless of whether the field is empty or not. This may be
  3242  	// used to include empty fields in Patch requests.
  3243  	ForceSendFields []string `json:"-"`
  3244  
  3245  	// NullFields is a list of field names (e.g. "Action") to include in API
  3246  	// requests with the JSON null value. By default, fields with empty
  3247  	// values are omitted from API requests. However, any field with an
  3248  	// empty value appearing in NullFields will be sent to the server as
  3249  	// null. It is an error if a field in this list has a non-empty value.
  3250  	// This may be used to include null fields in Patch requests.
  3251  	NullFields []string `json:"-"`
  3252  }
  3253  
  3254  func (s *GoogleCloudDialogflowV2QueryResult) MarshalJSON() ([]byte, error) {
  3255  	type NoMethod GoogleCloudDialogflowV2QueryResult
  3256  	raw := NoMethod(*s)
  3257  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  3258  }
  3259  
  3260  func (s *GoogleCloudDialogflowV2QueryResult) UnmarshalJSON(data []byte) error {
  3261  	type NoMethod GoogleCloudDialogflowV2QueryResult
  3262  	var s1 struct {
  3263  		IntentDetectionConfidence   gensupport.JSONFloat64 `json:"intentDetectionConfidence"`
  3264  		SpeechRecognitionConfidence gensupport.JSONFloat64 `json:"speechRecognitionConfidence"`
  3265  		*NoMethod
  3266  	}
  3267  	s1.NoMethod = (*NoMethod)(s)
  3268  	if err := json.Unmarshal(data, &s1); err != nil {
  3269  		return err
  3270  	}
  3271  	s.IntentDetectionConfidence = float64(s1.IntentDetectionConfidence)
  3272  	s.SpeechRecognitionConfidence = float64(s1.SpeechRecognitionConfidence)
  3273  	return nil
  3274  }
  3275  
  3276  // GoogleCloudDialogflowV2Sentiment: The sentiment, such as
  3277  // positive/negative feeling or association, for a unit
  3278  // of analysis, such as the query text.
  3279  type GoogleCloudDialogflowV2Sentiment struct {
  3280  	// Magnitude: A non-negative number in the [0, +inf) range, which
  3281  	// represents the absolute
  3282  	// magnitude of sentiment, regardless of score (positive or negative).
  3283  	Magnitude float64 `json:"magnitude,omitempty"`
  3284  
  3285  	// Score: Sentiment score between -1.0 (negative sentiment) and 1.0
  3286  	// (positive
  3287  	// sentiment).
  3288  	Score float64 `json:"score,omitempty"`
  3289  
  3290  	// ForceSendFields is a list of field names (e.g. "Magnitude") to
  3291  	// unconditionally include in API requests. By default, fields with
  3292  	// empty values are omitted from API requests. However, any non-pointer,
  3293  	// non-interface field appearing in ForceSendFields will be sent to the
  3294  	// server regardless of whether the field is empty or not. This may be
  3295  	// used to include empty fields in Patch requests.
  3296  	ForceSendFields []string `json:"-"`
  3297  
  3298  	// NullFields is a list of field names (e.g. "Magnitude") to include in
  3299  	// API requests with the JSON null value. By default, fields with empty
  3300  	// values are omitted from API requests. However, any field with an
  3301  	// empty value appearing in NullFields will be sent to the server as
  3302  	// null. It is an error if a field in this list has a non-empty value.
  3303  	// This may be used to include null fields in Patch requests.
  3304  	NullFields []string `json:"-"`
  3305  }
  3306  
  3307  func (s *GoogleCloudDialogflowV2Sentiment) MarshalJSON() ([]byte, error) {
  3308  	type NoMethod GoogleCloudDialogflowV2Sentiment
  3309  	raw := NoMethod(*s)
  3310  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  3311  }
  3312  
  3313  func (s *GoogleCloudDialogflowV2Sentiment) UnmarshalJSON(data []byte) error {
  3314  	type NoMethod GoogleCloudDialogflowV2Sentiment
  3315  	var s1 struct {
  3316  		Magnitude gensupport.JSONFloat64 `json:"magnitude"`
  3317  		Score     gensupport.JSONFloat64 `json:"score"`
  3318  		*NoMethod
  3319  	}
  3320  	s1.NoMethod = (*NoMethod)(s)
  3321  	if err := json.Unmarshal(data, &s1); err != nil {
  3322  		return err
  3323  	}
  3324  	s.Magnitude = float64(s1.Magnitude)
  3325  	s.Score = float64(s1.Score)
  3326  	return nil
  3327  }
  3328  
  3329  // GoogleCloudDialogflowV2SentimentAnalysisResult: The result of
  3330  // sentiment analysis as configured
  3331  // by
  3332  // `sentiment_analysis_request_config`.
  3333  type GoogleCloudDialogflowV2SentimentAnalysisResult struct {
  3334  	// QueryTextSentiment: The sentiment analysis result for `query_text`.
  3335  	QueryTextSentiment *GoogleCloudDialogflowV2Sentiment `json:"queryTextSentiment,omitempty"`
  3336  
  3337  	// ForceSendFields is a list of field names (e.g. "QueryTextSentiment")
  3338  	// to unconditionally include in API requests. By default, fields with
  3339  	// empty values are omitted from API requests. However, any non-pointer,
  3340  	// non-interface field appearing in ForceSendFields will be sent to the
  3341  	// server regardless of whether the field is empty or not. This may be
  3342  	// used to include empty fields in Patch requests.
  3343  	ForceSendFields []string `json:"-"`
  3344  
  3345  	// NullFields is a list of field names (e.g. "QueryTextSentiment") to
  3346  	// include in API requests with the JSON null value. By default, fields
  3347  	// with empty values are omitted from API requests. However, any field
  3348  	// with an empty value appearing in NullFields will be sent to the
  3349  	// server as null. It is an error if a field in this list has a
  3350  	// non-empty value. This may be used to include null fields in Patch
  3351  	// requests.
  3352  	NullFields []string `json:"-"`
  3353  }
  3354  
  3355  func (s *GoogleCloudDialogflowV2SentimentAnalysisResult) MarshalJSON() ([]byte, error) {
  3356  	type NoMethod GoogleCloudDialogflowV2SentimentAnalysisResult
  3357  	raw := NoMethod(*s)
  3358  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  3359  }
  3360  
  3361  // GoogleCloudDialogflowV2SessionEntityType: Represents a session entity
  3362  // type.
  3363  //
  3364  // Extends or replaces a custom entity type at the user session level
  3365  // (we
  3366  // refer to the entity types defined at the agent level as "custom
  3367  // entity
  3368  // types").
  3369  //
  3370  // Note: session entity types apply to all queries, regardless of the
  3371  // language.
  3372  type GoogleCloudDialogflowV2SessionEntityType struct {
  3373  	// Entities: Required. The collection of entities associated with this
  3374  	// session entity
  3375  	// type.
  3376  	Entities []*GoogleCloudDialogflowV2EntityTypeEntity `json:"entities,omitempty"`
  3377  
  3378  	// EntityOverrideMode: Required. Indicates whether the additional data
  3379  	// should override or
  3380  	// supplement the custom entity type definition.
  3381  	//
  3382  	// Possible values:
  3383  	//   "ENTITY_OVERRIDE_MODE_UNSPECIFIED" - Not specified. This value
  3384  	// should be never used.
  3385  	//   "ENTITY_OVERRIDE_MODE_OVERRIDE" - The collection of session
  3386  	// entities overrides the collection of entities
  3387  	// in the corresponding custom entity type.
  3388  	//   "ENTITY_OVERRIDE_MODE_SUPPLEMENT" - The collection of session
  3389  	// entities extends the collection of entities in
  3390  	// the corresponding custom entity type.
  3391  	//
  3392  	// Note: Even in this override mode calls to
  3393  	// `ListSessionEntityTypes`,
  3394  	// `GetSessionEntityType`, `CreateSessionEntityType`
  3395  	// and
  3396  	// `UpdateSessionEntityType` only return the additional entities added
  3397  	// in
  3398  	// this session entity type. If you want to get the supplemented
  3399  	// list,
  3400  	// please call EntityTypes.GetEntityType on the custom entity type
  3401  	// and merge.
  3402  	EntityOverrideMode string `json:"entityOverrideMode,omitempty"`
  3403  
  3404  	// Name: Required. The unique identifier of this session entity type.
  3405  	// Format:
  3406  	// `projects/<Project ID>/agent/sessions/<Session
  3407  	// ID>/entityTypes/<Entity Type
  3408  	// Display Name>`, or `projects/<Project
  3409  	// ID>/agent/environments/<Environment
  3410  	// ID>/users/<User ID>/sessions/<Session ID>/entityTypes/<Entity Type
  3411  	// Display
  3412  	// Name>`.
  3413  	// If `Environment ID` is not specified, we assume default
  3414  	// 'draft'
  3415  	// environment. If `User ID` is not specified, we assume default '-'
  3416  	// user.
  3417  	//
  3418  	// `<Entity Type Display Name>` must be the display name of an existing
  3419  	// entity
  3420  	// type in the same agent that will be overridden or supplemented.
  3421  	Name string `json:"name,omitempty"`
  3422  
  3423  	// ForceSendFields is a list of field names (e.g. "Entities") to
  3424  	// unconditionally include in API requests. By default, fields with
  3425  	// empty values are omitted from API requests. However, any non-pointer,
  3426  	// non-interface field appearing in ForceSendFields will be sent to the
  3427  	// server regardless of whether the field is empty or not. This may be
  3428  	// used to include empty fields in Patch requests.
  3429  	ForceSendFields []string `json:"-"`
  3430  
  3431  	// NullFields is a list of field names (e.g. "Entities") to include in
  3432  	// API requests with the JSON null value. By default, fields with empty
  3433  	// values are omitted from API requests. However, any field with an
  3434  	// empty value appearing in NullFields will be sent to the server as
  3435  	// null. It is an error if a field in this list has a non-empty value.
  3436  	// This may be used to include null fields in Patch requests.
  3437  	NullFields []string `json:"-"`
  3438  }
  3439  
  3440  func (s *GoogleCloudDialogflowV2SessionEntityType) MarshalJSON() ([]byte, error) {
  3441  	type NoMethod GoogleCloudDialogflowV2SessionEntityType
  3442  	raw := NoMethod(*s)
  3443  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  3444  }
  3445  
  3446  // GoogleCloudDialogflowV2WebhookRequest: The request message for a
  3447  // webhook call.
  3448  type GoogleCloudDialogflowV2WebhookRequest struct {
  3449  	// OriginalDetectIntentRequest: Optional. The contents of the original
  3450  	// request that was passed to
  3451  	// `[Streaming]DetectIntent` call.
  3452  	OriginalDetectIntentRequest *GoogleCloudDialogflowV2OriginalDetectIntentRequest `json:"originalDetectIntentRequest,omitempty"`
  3453  
  3454  	// QueryResult: The result of the conversational query or event
  3455  	// processing. Contains the
  3456  	// same value as `[Streaming]DetectIntentResponse.query_result`.
  3457  	QueryResult *GoogleCloudDialogflowV2QueryResult `json:"queryResult,omitempty"`
  3458  
  3459  	// ResponseId: The unique identifier of the response. Contains the same
  3460  	// value as
  3461  	// `[Streaming]DetectIntentResponse.response_id`.
  3462  	ResponseId string `json:"responseId,omitempty"`
  3463  
  3464  	// Session: The unique identifier of detectIntent request session.
  3465  	// Can be used to identify end-user inside webhook
  3466  	// implementation.
  3467  	// Format: `projects/<Project ID>/agent/sessions/<Session ID>`,
  3468  	// or
  3469  	// `projects/<Project ID>/agent/environments/<Environment
  3470  	// ID>/users/<User
  3471  	// ID>/sessions/<Session ID>`.
  3472  	Session string `json:"session,omitempty"`
  3473  
  3474  	// ForceSendFields is a list of field names (e.g.
  3475  	// "OriginalDetectIntentRequest") to unconditionally include in API
  3476  	// requests. By default, fields with empty values are omitted from API
  3477  	// requests. However, any non-pointer, non-interface field appearing in
  3478  	// ForceSendFields will be sent to the server regardless of whether the
  3479  	// field is empty or not. This may be used to include empty fields in
  3480  	// Patch requests.
  3481  	ForceSendFields []string `json:"-"`
  3482  
  3483  	// NullFields is a list of field names (e.g.
  3484  	// "OriginalDetectIntentRequest") to include in API requests with the
  3485  	// JSON null value. By default, fields with empty values are omitted
  3486  	// from API requests. However, any field with an empty value appearing
  3487  	// in NullFields will be sent to the server as null. It is an error if a
  3488  	// field in this list has a non-empty value. This may be used to include
  3489  	// null fields in Patch requests.
  3490  	NullFields []string `json:"-"`
  3491  }
  3492  
  3493  func (s *GoogleCloudDialogflowV2WebhookRequest) MarshalJSON() ([]byte, error) {
  3494  	type NoMethod GoogleCloudDialogflowV2WebhookRequest
  3495  	raw := NoMethod(*s)
  3496  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  3497  }
  3498  
  3499  // GoogleCloudDialogflowV2WebhookResponse: The response message for a
  3500  // webhook call.
  3501  //
  3502  // This response is validated by the Dialogflow server. If validation
  3503  // fails,
  3504  // an error will be returned in the QueryResult.diagnostic_info
  3505  // field.
  3506  // Setting JSON fields to an empty value with the wrong type is a common
  3507  // error.
  3508  // To avoid this error:
  3509  //
  3510  // - Use "" for empty strings
  3511  // - Use `{}` or `null` for empty objects
  3512  // - Use `[]` or `null` for empty arrays
  3513  //
  3514  // For more information, see the
  3515  // [Protocol Buffers
  3516  // Language
  3517  // Guide](https://developers.google.com/protocol-buffers/docs/pr
  3518  // oto3#json).
  3519  type GoogleCloudDialogflowV2WebhookResponse struct {
  3520  	// FollowupEventInput: Optional. Invokes the supplied events.
  3521  	// When this field is set, Dialogflow ignores the
  3522  	// `fulfillment_text`,
  3523  	// `fulfillment_messages`, and `payload` fields.
  3524  	FollowupEventInput *GoogleCloudDialogflowV2EventInput `json:"followupEventInput,omitempty"`
  3525  
  3526  	// FulfillmentMessages: Optional. The rich response messages intended
  3527  	// for the end-user.
  3528  	// When provided, Dialogflow uses this field to
  3529  	// populate
  3530  	// QueryResult.fulfillment_messages sent to the integration or API
  3531  	// caller.
  3532  	FulfillmentMessages []*GoogleCloudDialogflowV2IntentMessage `json:"fulfillmentMessages,omitempty"`
  3533  
  3534  	// FulfillmentText: Optional. The text response message intended for the
  3535  	// end-user.
  3536  	// It is recommended to use `fulfillment_messages.text.text[0]`
  3537  	// instead.
  3538  	// When provided, Dialogflow uses this field to
  3539  	// populate
  3540  	// QueryResult.fulfillment_text sent to the integration or API caller.
  3541  	FulfillmentText string `json:"fulfillmentText,omitempty"`
  3542  
  3543  	// OutputContexts: Optional. The collection of output contexts that will
  3544  	// overwrite currently
  3545  	// active contexts for the session and reset their lifespans.
  3546  	// When provided, Dialogflow uses this field to
  3547  	// populate
  3548  	// QueryResult.output_contexts sent to the integration or API caller.
  3549  	OutputContexts []*GoogleCloudDialogflowV2Context `json:"outputContexts,omitempty"`
  3550  
  3551  	// Payload: Optional. This field can be used to pass custom data from
  3552  	// your webhook to the
  3553  	// integration or API caller. Arbitrary JSON objects are supported.
  3554  	// When provided, Dialogflow uses this field to
  3555  	// populate
  3556  	// QueryResult.webhook_payload sent to the integration or API
  3557  	// caller.
  3558  	// This field is also used by the
  3559  	// [Google
  3560  	// Assistant
  3561  	// integration](https://cloud.google.com/dialogflow/docs/integr
  3562  	// ations/aog)
  3563  	// for rich response messages.
  3564  	// See the format definition at [Google Assistant Dialogflow
  3565  	// webhook
  3566  	// format](https://developers.google.com/assistant/actions/build/
  3567  	// json/dialogflow-webhook-json)
  3568  	Payload googleapi.RawMessage `json:"payload,omitempty"`
  3569  
  3570  	// SessionEntityTypes: Optional. Additional session entity types to
  3571  	// replace or extend developer
  3572  	// entity types with. The entity synonyms apply to all languages and
  3573  	// persist
  3574  	// for the session. Setting this data from a webhook overwrites
  3575  	// the session entity types that have been set using
  3576  	// `detectIntent`,
  3577  	// `streamingDetectIntent` or SessionEntityType management methods.
  3578  	SessionEntityTypes []*GoogleCloudDialogflowV2SessionEntityType `json:"sessionEntityTypes,omitempty"`
  3579  
  3580  	// Source: Optional. A custom field used to identify the webhook
  3581  	// source.
  3582  	// Arbitrary strings are supported.
  3583  	// When provided, Dialogflow uses this field to
  3584  	// populate
  3585  	// QueryResult.webhook_source sent to the integration or API caller.
  3586  	Source string `json:"source,omitempty"`
  3587  
  3588  	// ForceSendFields is a list of field names (e.g. "FollowupEventInput")
  3589  	// to unconditionally include in API requests. By default, fields with
  3590  	// empty values are omitted from API requests. However, any non-pointer,
  3591  	// non-interface field appearing in ForceSendFields will be sent to the
  3592  	// server regardless of whether the field is empty or not. This may be
  3593  	// used to include empty fields in Patch requests.
  3594  	ForceSendFields []string `json:"-"`
  3595  
  3596  	// NullFields is a list of field names (e.g. "FollowupEventInput") to
  3597  	// include in API requests with the JSON null value. By default, fields
  3598  	// with empty values are omitted from API requests. However, any field
  3599  	// with an empty value appearing in NullFields will be sent to the
  3600  	// server as null. It is an error if a field in this list has a
  3601  	// non-empty value. This may be used to include null fields in Patch
  3602  	// requests.
  3603  	NullFields []string `json:"-"`
  3604  }
  3605  
  3606  func (s *GoogleCloudDialogflowV2WebhookResponse) MarshalJSON() ([]byte, error) {
  3607  	type NoMethod GoogleCloudDialogflowV2WebhookResponse
  3608  	raw := NoMethod(*s)
  3609  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  3610  }
  3611  
  3612  // GoogleCloudDialogflowV2beta1AnnotatedConversationDataset: Represents
  3613  // an annotated conversation dataset.
  3614  // ConversationDataset can have multiple AnnotatedConversationDataset,
  3615  // each of
  3616  // them represents one result from one annotation
  3617  // task.
  3618  // AnnotatedConversationDataset can only be generated from annotation
  3619  // task,
  3620  // which will be triggered by LabelConversation.
  3621  type GoogleCloudDialogflowV2beta1AnnotatedConversationDataset struct {
  3622  	// CompletedExampleCount: Output only. Number of examples that have
  3623  	// annotations in the annotated
  3624  	// conversation dataset.
  3625  	CompletedExampleCount int64 `json:"completedExampleCount,omitempty,string"`
  3626  
  3627  	// CreateTime: Output only. Creation time of this annotated conversation
  3628  	// dataset.
  3629  	CreateTime string `json:"createTime,omitempty"`
  3630  
  3631  	// Description: Optional. The description of the annotated conversation
  3632  	// dataset.
  3633  	// Maximum of 10000 bytes.
  3634  	Description string `json:"description,omitempty"`
  3635  
  3636  	// DisplayName: Required. The display name of the annotated conversation
  3637  	// dataset.
  3638  	// It's specified when user starts an annotation task. Maximum of 64
  3639  	// bytes.
  3640  	DisplayName string `json:"displayName,omitempty"`
  3641  
  3642  	// ExampleCount: Output only. Number of examples in the annotated
  3643  	// conversation dataset.
  3644  	ExampleCount int64 `json:"exampleCount,omitempty,string"`
  3645  
  3646  	// Name: Output only. AnnotatedConversationDataset resource name.
  3647  	// Format:
  3648  	// `projects/<Project ID>/conversationDatasets/<Conversation
  3649  	// Dataset
  3650  	// ID>/annotatedConversationDatasets/<Annotated Conversation Dataset
  3651  	// ID>`
  3652  	Name string `json:"name,omitempty"`
  3653  
  3654  	// QuestionTypeName: Output only. Question type name that identifies a
  3655  	// labeling task.
  3656  	// A question is a single task that a worker answers. A question type is
  3657  	// set
  3658  	// of related questions. Each question belongs to a particular question
  3659  	// type.
  3660  	// It can be used in CrowdCompute UI to filter and manage labeling
  3661  	// tasks.
  3662  	QuestionTypeName string `json:"questionTypeName,omitempty"`
  3663  
  3664  	// ForceSendFields is a list of field names (e.g.
  3665  	// "CompletedExampleCount") to unconditionally include in API requests.
  3666  	// By default, fields with empty values are omitted from API requests.
  3667  	// However, any non-pointer, non-interface field appearing in
  3668  	// ForceSendFields will be sent to the server regardless of whether the
  3669  	// field is empty or not. This may be used to include empty fields in
  3670  	// Patch requests.
  3671  	ForceSendFields []string `json:"-"`
  3672  
  3673  	// NullFields is a list of field names (e.g. "CompletedExampleCount") to
  3674  	// include in API requests with the JSON null value. By default, fields
  3675  	// with empty values are omitted from API requests. However, any field
  3676  	// with an empty value appearing in NullFields will be sent to the
  3677  	// server as null. It is an error if a field in this list has a
  3678  	// non-empty value. This may be used to include null fields in Patch
  3679  	// requests.
  3680  	NullFields []string `json:"-"`
  3681  }
  3682  
  3683  func (s *GoogleCloudDialogflowV2beta1AnnotatedConversationDataset) MarshalJSON() ([]byte, error) {
  3684  	type NoMethod GoogleCloudDialogflowV2beta1AnnotatedConversationDataset
  3685  	raw := NoMethod(*s)
  3686  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  3687  }
  3688  
  3689  // GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse: The
  3690  // response message for EntityTypes.BatchUpdateEntityTypes.
  3691  type GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse struct {
  3692  	// EntityTypes: The collection of updated or created entity types.
  3693  	EntityTypes []*GoogleCloudDialogflowV2beta1EntityType `json:"entityTypes,omitempty"`
  3694  
  3695  	// ForceSendFields is a list of field names (e.g. "EntityTypes") to
  3696  	// unconditionally include in API requests. By default, fields with
  3697  	// empty values are omitted from API requests. However, any non-pointer,
  3698  	// non-interface field appearing in ForceSendFields will be sent to the
  3699  	// server regardless of whether the field is empty or not. This may be
  3700  	// used to include empty fields in Patch requests.
  3701  	ForceSendFields []string `json:"-"`
  3702  
  3703  	// NullFields is a list of field names (e.g. "EntityTypes") to include
  3704  	// in API requests with the JSON null value. By default, fields with
  3705  	// empty values are omitted from API requests. However, any field with
  3706  	// an empty value appearing in NullFields will be sent to the server as
  3707  	// null. It is an error if a field in this list has a non-empty value.
  3708  	// This may be used to include null fields in Patch requests.
  3709  	NullFields []string `json:"-"`
  3710  }
  3711  
  3712  func (s *GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse) MarshalJSON() ([]byte, error) {
  3713  	type NoMethod GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse
  3714  	raw := NoMethod(*s)
  3715  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  3716  }
  3717  
  3718  // GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse: The response
  3719  // message for Intents.BatchUpdateIntents.
  3720  type GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse struct {
  3721  	// Intents: The collection of updated or created intents.
  3722  	Intents []*GoogleCloudDialogflowV2beta1Intent `json:"intents,omitempty"`
  3723  
  3724  	// ForceSendFields is a list of field names (e.g. "Intents") to
  3725  	// unconditionally include in API requests. By default, fields with
  3726  	// empty values are omitted from API requests. However, any non-pointer,
  3727  	// non-interface field appearing in ForceSendFields will be sent to the
  3728  	// server regardless of whether the field is empty or not. This may be
  3729  	// used to include empty fields in Patch requests.
  3730  	ForceSendFields []string `json:"-"`
  3731  
  3732  	// NullFields is a list of field names (e.g. "Intents") to include in
  3733  	// API requests with the JSON null value. By default, fields with empty
  3734  	// values are omitted from API requests. However, any field with an
  3735  	// empty value appearing in NullFields will be sent to the server as
  3736  	// null. It is an error if a field in this list has a non-empty value.
  3737  	// This may be used to include null fields in Patch requests.
  3738  	NullFields []string `json:"-"`
  3739  }
  3740  
  3741  func (s *GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse) MarshalJSON() ([]byte, error) {
  3742  	type NoMethod GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse
  3743  	raw := NoMethod(*s)
  3744  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  3745  }
  3746  
  3747  // GoogleCloudDialogflowV2beta1Context: Represents a context.
  3748  type GoogleCloudDialogflowV2beta1Context struct {
  3749  	// LifespanCount: Optional. The number of conversational query requests
  3750  	// after which the
  3751  	// context expires. The default is `0`. If set to `0`, the context
  3752  	// expires
  3753  	// immediately. Contexts expire automatically after 20 minutes if
  3754  	// there
  3755  	// are no matching queries.
  3756  	LifespanCount int64 `json:"lifespanCount,omitempty"`
  3757  
  3758  	// Name: Required. The unique identifier of the context.
  3759  	// Format:
  3760  	// `projects/<Project ID>/agent/sessions/<Session ID>/contexts/<Context
  3761  	// ID>`,
  3762  	// or `projects/<Project ID>/agent/environments/<Environment
  3763  	// ID>/users/<User
  3764  	// ID>/sessions/<Session ID>/contexts/<Context ID>`.
  3765  	//
  3766  	// The `Context ID` is always converted to lowercase, may only
  3767  	// contain
  3768  	// characters in a-zA-Z0-9_-% and may be at most 250 bytes long.
  3769  	//
  3770  	// If `Environment ID` is not specified, we assume default
  3771  	// 'draft'
  3772  	// environment. If `User ID` is not specified, we assume default '-'
  3773  	// user.
  3774  	//
  3775  	// The following context names are reserved for internal use by
  3776  	// Dialogflow.
  3777  	// You should not use these contexts or create contexts with these
  3778  	// names:
  3779  	//
  3780  	// * `__system_counters__`
  3781  	// * `*_id_dialog_context`
  3782  	// * `*_dialog_params_size`
  3783  	Name string `json:"name,omitempty"`
  3784  
  3785  	// Parameters: Optional. The collection of parameters associated with
  3786  	// this context.
  3787  	//
  3788  	// Depending on your protocol or client library language, this is a
  3789  	// map, associative array, symbol table, dictionary, or JSON
  3790  	// object
  3791  	// composed of a collection of (MapKey, MapValue) pairs:
  3792  	//
  3793  	// -   MapKey type: string
  3794  	// -   MapKey value: parameter name
  3795  	// -   MapValue type:
  3796  	//     -   If parameter's entity type is a composite entity: map
  3797  	//     -   Else: string or number, depending on parameter value type
  3798  	// -   MapValue value:
  3799  	//     -   If parameter's entity type is a composite entity:
  3800  	//         map from composite entity property names to property values
  3801  	//     -   Else: parameter value
  3802  	Parameters googleapi.RawMessage `json:"parameters,omitempty"`
  3803  
  3804  	// ForceSendFields is a list of field names (e.g. "LifespanCount") to
  3805  	// unconditionally include in API requests. By default, fields with
  3806  	// empty values are omitted from API requests. However, any non-pointer,
  3807  	// non-interface field appearing in ForceSendFields will be sent to the
  3808  	// server regardless of whether the field is empty or not. This may be
  3809  	// used to include empty fields in Patch requests.
  3810  	ForceSendFields []string `json:"-"`
  3811  
  3812  	// NullFields is a list of field names (e.g. "LifespanCount") to include
  3813  	// in API requests with the JSON null value. By default, fields with
  3814  	// empty values are omitted from API requests. However, any field with
  3815  	// an empty value appearing in NullFields will be sent to the server as
  3816  	// null. It is an error if a field in this list has a non-empty value.
  3817  	// This may be used to include null fields in Patch requests.
  3818  	NullFields []string `json:"-"`
  3819  }
  3820  
  3821  func (s *GoogleCloudDialogflowV2beta1Context) MarshalJSON() ([]byte, error) {
  3822  	type NoMethod GoogleCloudDialogflowV2beta1Context
  3823  	raw := NoMethod(*s)
  3824  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  3825  }
  3826  
  3827  // GoogleCloudDialogflowV2beta1EntityType: Represents an entity
  3828  // type.
  3829  // Entity types serve as a tool for extracting parameter values from
  3830  // natural
  3831  // language queries.
  3832  type GoogleCloudDialogflowV2beta1EntityType struct {
  3833  	// AutoExpansionMode: Optional. Indicates whether the entity type can be
  3834  	// automatically
  3835  	// expanded.
  3836  	//
  3837  	// Possible values:
  3838  	//   "AUTO_EXPANSION_MODE_UNSPECIFIED" - Auto expansion disabled for the
  3839  	// entity.
  3840  	//   "AUTO_EXPANSION_MODE_DEFAULT" - Allows an agent to recognize values
  3841  	// that have not been explicitly
  3842  	// listed in the entity.
  3843  	AutoExpansionMode string `json:"autoExpansionMode,omitempty"`
  3844  
  3845  	// DisplayName: Required. The name of the entity type.
  3846  	DisplayName string `json:"displayName,omitempty"`
  3847  
  3848  	// EnableFuzzyExtraction: Optional. Enables fuzzy entity extraction
  3849  	// during classification.
  3850  	EnableFuzzyExtraction bool `json:"enableFuzzyExtraction,omitempty"`
  3851  
  3852  	// Entities: Optional. The collection of entity entries associated with
  3853  	// the entity type.
  3854  	Entities []*GoogleCloudDialogflowV2beta1EntityTypeEntity `json:"entities,omitempty"`
  3855  
  3856  	// Kind: Required. Indicates the kind of entity type.
  3857  	//
  3858  	// Possible values:
  3859  	//   "KIND_UNSPECIFIED" - Not specified. This value should be never
  3860  	// used.
  3861  	//   "KIND_MAP" - Map entity types allow mapping of a group of synonyms
  3862  	// to a reference
  3863  	// value.
  3864  	//   "KIND_LIST" - List entity types contain a set of entries that do
  3865  	// not map to reference
  3866  	// values. However, list entity types can contain references to other
  3867  	// entity
  3868  	// types (with or without aliases).
  3869  	//   "KIND_REGEXP" - Regexp entity types allow to specify regular
  3870  	// expressions in entries
  3871  	// values.
  3872  	Kind string `json:"kind,omitempty"`
  3873  
  3874  	// Name: The unique identifier of the entity type.
  3875  	// Required for EntityTypes.UpdateEntityType
  3876  	// and
  3877  	// EntityTypes.BatchUpdateEntityTypes methods.
  3878  	// Format: `projects/<Project ID>/agent/entityTypes/<Entity Type ID>`.
  3879  	Name string `json:"name,omitempty"`
  3880  
  3881  	// ForceSendFields is a list of field names (e.g. "AutoExpansionMode")
  3882  	// to unconditionally include in API requests. By default, fields with
  3883  	// empty values are omitted from API requests. However, any non-pointer,
  3884  	// non-interface field appearing in ForceSendFields will be sent to the
  3885  	// server regardless of whether the field is empty or not. This may be
  3886  	// used to include empty fields in Patch requests.
  3887  	ForceSendFields []string `json:"-"`
  3888  
  3889  	// NullFields is a list of field names (e.g. "AutoExpansionMode") to
  3890  	// include in API requests with the JSON null value. By default, fields
  3891  	// with empty values are omitted from API requests. However, any field
  3892  	// with an empty value appearing in NullFields will be sent to the
  3893  	// server as null. It is an error if a field in this list has a
  3894  	// non-empty value. This may be used to include null fields in Patch
  3895  	// requests.
  3896  	NullFields []string `json:"-"`
  3897  }
  3898  
  3899  func (s *GoogleCloudDialogflowV2beta1EntityType) MarshalJSON() ([]byte, error) {
  3900  	type NoMethod GoogleCloudDialogflowV2beta1EntityType
  3901  	raw := NoMethod(*s)
  3902  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  3903  }
  3904  
  3905  // GoogleCloudDialogflowV2beta1EntityTypeEntity: An **entity entry** for
  3906  // an associated entity type.
  3907  type GoogleCloudDialogflowV2beta1EntityTypeEntity struct {
  3908  	// Synonyms: Required. A collection of value synonyms. For example, if
  3909  	// the entity type
  3910  	// is *vegetable*, and `value` is *scallions*, a synonym could be
  3911  	// *green
  3912  	// onions*.
  3913  	//
  3914  	// For `KIND_LIST` entity types:
  3915  	//
  3916  	// *   This collection must contain exactly one synonym equal to
  3917  	// `value`.
  3918  	Synonyms []string `json:"synonyms,omitempty"`
  3919  
  3920  	// Value: Required. The primary value associated with this entity
  3921  	// entry.
  3922  	// For example, if the entity type is *vegetable*, the value could
  3923  	// be
  3924  	// *scallions*.
  3925  	//
  3926  	// For `KIND_MAP` entity types:
  3927  	//
  3928  	// *   A reference value to be used in place of synonyms.
  3929  	//
  3930  	// For `KIND_LIST` entity types:
  3931  	//
  3932  	// *   A string that can contain references to other entity types (with
  3933  	// or
  3934  	//     without aliases).
  3935  	Value string `json:"value,omitempty"`
  3936  
  3937  	// ForceSendFields is a list of field names (e.g. "Synonyms") to
  3938  	// unconditionally include in API requests. By default, fields with
  3939  	// empty values are omitted from API requests. However, any non-pointer,
  3940  	// non-interface field appearing in ForceSendFields will be sent to the
  3941  	// server regardless of whether the field is empty or not. This may be
  3942  	// used to include empty fields in Patch requests.
  3943  	ForceSendFields []string `json:"-"`
  3944  
  3945  	// NullFields is a list of field names (e.g. "Synonyms") to include in
  3946  	// API requests with the JSON null value. By default, fields with empty
  3947  	// values are omitted from API requests. However, any field with an
  3948  	// empty value appearing in NullFields will be sent to the server as
  3949  	// null. It is an error if a field in this list has a non-empty value.
  3950  	// This may be used to include null fields in Patch requests.
  3951  	NullFields []string `json:"-"`
  3952  }
  3953  
  3954  func (s *GoogleCloudDialogflowV2beta1EntityTypeEntity) MarshalJSON() ([]byte, error) {
  3955  	type NoMethod GoogleCloudDialogflowV2beta1EntityTypeEntity
  3956  	raw := NoMethod(*s)
  3957  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  3958  }
  3959  
  3960  // GoogleCloudDialogflowV2beta1EventInput: Events allow for matching
  3961  // intents by event name instead of the natural
  3962  // language input. For instance, input `<event: { name:
  3963  // "welcome_event",
  3964  // parameters: { name: "Sam" } }>` can trigger a personalized welcome
  3965  // response.
  3966  // The parameter `name` may be used by the agent in the
  3967  // response:
  3968  // "Hello #welcome_event.name! What can I do for you today?".
  3969  type GoogleCloudDialogflowV2beta1EventInput struct {
  3970  	// LanguageCode: Required. The language of this query. See
  3971  	// [Language
  3972  	// Support](https://cloud.google.com/dialogflow/docs/reference/
  3973  	// language)
  3974  	// for a list of the currently supported language codes. Note that
  3975  	// queries in
  3976  	// the same session do not necessarily need to specify the same
  3977  	// language.
  3978  	LanguageCode string `json:"languageCode,omitempty"`
  3979  
  3980  	// Name: Required. The unique identifier of the event.
  3981  	Name string `json:"name,omitempty"`
  3982  
  3983  	// Parameters: The collection of parameters associated with the
  3984  	// event.
  3985  	//
  3986  	// Depending on your protocol or client library language, this is a
  3987  	// map, associative array, symbol table, dictionary, or JSON
  3988  	// object
  3989  	// composed of a collection of (MapKey, MapValue) pairs:
  3990  	//
  3991  	// -   MapKey type: string
  3992  	// -   MapKey value: parameter name
  3993  	// -   MapValue type:
  3994  	//     -   If parameter's entity type is a composite entity: map
  3995  	//     -   Else: string or number, depending on parameter value type
  3996  	// -   MapValue value:
  3997  	//     -   If parameter's entity type is a composite entity:
  3998  	//         map from composite entity property names to property values
  3999  	//     -   Else: parameter value
  4000  	Parameters googleapi.RawMessage `json:"parameters,omitempty"`
  4001  
  4002  	// ForceSendFields is a list of field names (e.g. "LanguageCode") to
  4003  	// unconditionally include in API requests. By default, fields with
  4004  	// empty values are omitted from API requests. However, any non-pointer,
  4005  	// non-interface field appearing in ForceSendFields will be sent to the
  4006  	// server regardless of whether the field is empty or not. This may be
  4007  	// used to include empty fields in Patch requests.
  4008  	ForceSendFields []string `json:"-"`
  4009  
  4010  	// NullFields is a list of field names (e.g. "LanguageCode") to include
  4011  	// in API requests with the JSON null value. By default, fields with
  4012  	// empty values are omitted from API requests. However, any field with
  4013  	// an empty value appearing in NullFields will be sent to the server as
  4014  	// null. It is an error if a field in this list has a non-empty value.
  4015  	// This may be used to include null fields in Patch requests.
  4016  	NullFields []string `json:"-"`
  4017  }
  4018  
  4019  func (s *GoogleCloudDialogflowV2beta1EventInput) MarshalJSON() ([]byte, error) {
  4020  	type NoMethod GoogleCloudDialogflowV2beta1EventInput
  4021  	raw := NoMethod(*s)
  4022  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  4023  }
  4024  
  4025  // GoogleCloudDialogflowV2beta1ExportAgentResponse: The response message
  4026  // for Agents.ExportAgent.
  4027  type GoogleCloudDialogflowV2beta1ExportAgentResponse struct {
  4028  	// AgentContent: Zip compressed raw byte content for agent.
  4029  	AgentContent string `json:"agentContent,omitempty"`
  4030  
  4031  	// AgentUri: The URI to a file containing the exported agent. This field
  4032  	// is populated
  4033  	// only if `agent_uri` is specified in `ExportAgentRequest`.
  4034  	AgentUri string `json:"agentUri,omitempty"`
  4035  
  4036  	// ForceSendFields is a list of field names (e.g. "AgentContent") to
  4037  	// unconditionally include in API requests. By default, fields with
  4038  	// empty values are omitted from API requests. However, any non-pointer,
  4039  	// non-interface field appearing in ForceSendFields will be sent to the
  4040  	// server regardless of whether the field is empty or not. This may be
  4041  	// used to include empty fields in Patch requests.
  4042  	ForceSendFields []string `json:"-"`
  4043  
  4044  	// NullFields is a list of field names (e.g. "AgentContent") to include
  4045  	// in API requests with the JSON null value. By default, fields with
  4046  	// empty values are omitted from API requests. However, any field with
  4047  	// an empty value appearing in NullFields will be sent to the server as
  4048  	// null. It is an error if a field in this list has a non-empty value.
  4049  	// This may be used to include null fields in Patch requests.
  4050  	NullFields []string `json:"-"`
  4051  }
  4052  
  4053  func (s *GoogleCloudDialogflowV2beta1ExportAgentResponse) MarshalJSON() ([]byte, error) {
  4054  	type NoMethod GoogleCloudDialogflowV2beta1ExportAgentResponse
  4055  	raw := NoMethod(*s)
  4056  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  4057  }
  4058  
  4059  // GoogleCloudDialogflowV2beta1Intent: Represents an intent.
  4060  // Intents convert a number of user expressions or patterns into an
  4061  // action. An
  4062  // action is an extraction of a user command or sentence semantics.
  4063  type GoogleCloudDialogflowV2beta1Intent struct {
  4064  	// Action: Optional. The name of the action associated with the
  4065  	// intent.
  4066  	// Note: The action name must not contain whitespaces.
  4067  	Action string `json:"action,omitempty"`
  4068  
  4069  	// DefaultResponsePlatforms: Optional. The list of platforms for which
  4070  	// the first responses will be
  4071  	// copied from the messages in PLATFORM_UNSPECIFIED (i.e. default
  4072  	// platform).
  4073  	//
  4074  	// Possible values:
  4075  	//   "PLATFORM_UNSPECIFIED" - Not specified.
  4076  	//   "FACEBOOK" - Facebook.
  4077  	//   "SLACK" - Slack.
  4078  	//   "TELEGRAM" - Telegram.
  4079  	//   "KIK" - Kik.
  4080  	//   "SKYPE" - Skype.
  4081  	//   "LINE" - Line.
  4082  	//   "VIBER" - Viber.
  4083  	//   "ACTIONS_ON_GOOGLE" - Google Assistant
  4084  	// See [Dialogflow
  4085  	// webhook
  4086  	// format](https://developers.google.com/assistant/actions/build/
  4087  	// json/dialogflow-webhook-json)
  4088  	//   "TELEPHONY" - Telephony Gateway.
  4089  	//   "GOOGLE_HANGOUTS" - Google Hangouts.
  4090  	DefaultResponsePlatforms []string `json:"defaultResponsePlatforms,omitempty"`
  4091  
  4092  	// DisplayName: Required. The name of this intent.
  4093  	DisplayName string `json:"displayName,omitempty"`
  4094  
  4095  	// EndInteraction: Optional. Indicates that this intent ends an
  4096  	// interaction. Some integrations
  4097  	// (e.g., Actions on Google or Dialogflow phone gateway) use this
  4098  	// information
  4099  	// to close interaction with an end user. Default is false.
  4100  	EndInteraction bool `json:"endInteraction,omitempty"`
  4101  
  4102  	// Events: Optional. The collection of event names that trigger the
  4103  	// intent.
  4104  	// If the collection of input contexts is not empty, all of the contexts
  4105  	// must
  4106  	// be present in the active user session for an event to trigger this
  4107  	// intent.
  4108  	// Event names are limited to 150 characters.
  4109  	Events []string `json:"events,omitempty"`
  4110  
  4111  	// FollowupIntentInfo: Output only. Information about all followup
  4112  	// intents that have this intent as
  4113  	// a direct or indirect parent. We populate this field only in the
  4114  	// output.
  4115  	FollowupIntentInfo []*GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo `json:"followupIntentInfo,omitempty"`
  4116  
  4117  	// InputContextNames: Optional. The list of context names required for
  4118  	// this intent to be
  4119  	// triggered.
  4120  	// Format: `projects/<Project ID>/agent/sessions/-/contexts/<Context
  4121  	// ID>`.
  4122  	InputContextNames []string `json:"inputContextNames,omitempty"`
  4123  
  4124  	// IsFallback: Optional. Indicates whether this is a fallback intent.
  4125  	IsFallback bool `json:"isFallback,omitempty"`
  4126  
  4127  	// Messages: Optional. The collection of rich messages corresponding to
  4128  	// the
  4129  	// `Response` field in the Dialogflow console.
  4130  	Messages []*GoogleCloudDialogflowV2beta1IntentMessage `json:"messages,omitempty"`
  4131  
  4132  	// MlDisabled: Optional. Indicates whether Machine Learning is disabled
  4133  	// for the intent.
  4134  	// Note: If `ml_disabled` setting is set to true, then this intent is
  4135  	// not
  4136  	// taken into account during inference in `ML ONLY` match mode.
  4137  	// Also,
  4138  	// auto-markup in the UI is turned off.
  4139  	MlDisabled bool `json:"mlDisabled,omitempty"`
  4140  
  4141  	// MlEnabled: Optional. Indicates whether Machine Learning is enabled
  4142  	// for the intent.
  4143  	// Note: If `ml_enabled` setting is set to false, then this intent is
  4144  	// not
  4145  	// taken into account during inference in `ML ONLY` match mode.
  4146  	// Also,
  4147  	// auto-markup in the UI is turned off.
  4148  	// DEPRECATED! Please use `ml_disabled` field instead.
  4149  	// NOTE: If both `ml_enabled` and `ml_disabled` are either not set or
  4150  	// false,
  4151  	// then the default value is determined as follows:
  4152  	// - Before April 15th, 2018 the default is:
  4153  	//   ml_enabled = false / ml_disabled = true.
  4154  	// - After April 15th, 2018 the default is:
  4155  	//   ml_enabled = true / ml_disabled = false.
  4156  	MlEnabled bool `json:"mlEnabled,omitempty"`
  4157  
  4158  	// Name: Optional. The unique identifier of this intent.
  4159  	// Required for Intents.UpdateIntent and
  4160  	// Intents.BatchUpdateIntents
  4161  	// methods.
  4162  	// Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
  4163  	Name string `json:"name,omitempty"`
  4164  
  4165  	// OutputContexts: Optional. The collection of contexts that are
  4166  	// activated when the intent
  4167  	// is matched. Context messages in this collection should not set
  4168  	// the
  4169  	// parameters field. Setting the `lifespan_count` to 0 will reset the
  4170  	// context
  4171  	// when the intent is matched.
  4172  	// Format: `projects/<Project ID>/agent/sessions/-/contexts/<Context
  4173  	// ID>`.
  4174  	OutputContexts []*GoogleCloudDialogflowV2beta1Context `json:"outputContexts,omitempty"`
  4175  
  4176  	// Parameters: Optional. The collection of parameters associated with
  4177  	// the intent.
  4178  	Parameters []*GoogleCloudDialogflowV2beta1IntentParameter `json:"parameters,omitempty"`
  4179  
  4180  	// ParentFollowupIntentName: Optional. The unique identifier of the
  4181  	// parent intent in the
  4182  	// chain of followup intents. You can set this field when creating an
  4183  	// intent,
  4184  	// for example with CreateIntent or
  4185  	// BatchUpdateIntents, in order to make this
  4186  	// intent a followup intent.
  4187  	//
  4188  	// It identifies the parent followup intent.
  4189  	// Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
  4190  	ParentFollowupIntentName string `json:"parentFollowupIntentName,omitempty"`
  4191  
  4192  	// Priority: Optional. The priority of this intent. Higher numbers
  4193  	// represent higher
  4194  	// priorities.
  4195  	//
  4196  	// - If the supplied value is unspecified or 0, the service
  4197  	//   translates the value to 500,000, which corresponds to the
  4198  	//   `Normal` priority in the console.
  4199  	// - If the supplied value is negative, the intent is ignored
  4200  	//   in runtime detect intent requests.
  4201  	Priority int64 `json:"priority,omitempty"`
  4202  
  4203  	// ResetContexts: Optional. Indicates whether to delete all contexts in
  4204  	// the current
  4205  	// session when this intent is matched.
  4206  	ResetContexts bool `json:"resetContexts,omitempty"`
  4207  
  4208  	// RootFollowupIntentName: Output only. The unique identifier of the
  4209  	// root intent in the chain of
  4210  	// followup intents. It identifies the correct followup intents chain
  4211  	// for
  4212  	// this intent.
  4213  	//
  4214  	// Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
  4215  	RootFollowupIntentName string `json:"rootFollowupIntentName,omitempty"`
  4216  
  4217  	// TrainingPhrases: Optional. The collection of examples that the agent
  4218  	// is
  4219  	// trained on.
  4220  	TrainingPhrases []*GoogleCloudDialogflowV2beta1IntentTrainingPhrase `json:"trainingPhrases,omitempty"`
  4221  
  4222  	// WebhookState: Optional. Indicates whether webhooks are enabled for
  4223  	// the intent.
  4224  	//
  4225  	// Possible values:
  4226  	//   "WEBHOOK_STATE_UNSPECIFIED" - Webhook is disabled in the agent and
  4227  	// in the intent.
  4228  	//   "WEBHOOK_STATE_ENABLED" - Webhook is enabled in the agent and in
  4229  	// the intent.
  4230  	//   "WEBHOOK_STATE_ENABLED_FOR_SLOT_FILLING" - Webhook is enabled in
  4231  	// the agent and in the intent. Also, each slot
  4232  	// filling prompt is forwarded to the webhook.
  4233  	WebhookState string `json:"webhookState,omitempty"`
  4234  
  4235  	// ForceSendFields is a list of field names (e.g. "Action") to
  4236  	// unconditionally include in API requests. By default, fields with
  4237  	// empty values are omitted from API requests. However, any non-pointer,
  4238  	// non-interface field appearing in ForceSendFields will be sent to the
  4239  	// server regardless of whether the field is empty or not. This may be
  4240  	// used to include empty fields in Patch requests.
  4241  	ForceSendFields []string `json:"-"`
  4242  
  4243  	// NullFields is a list of field names (e.g. "Action") to include in API
  4244  	// requests with the JSON null value. By default, fields with empty
  4245  	// values are omitted from API requests. However, any field with an
  4246  	// empty value appearing in NullFields will be sent to the server as
  4247  	// null. It is an error if a field in this list has a non-empty value.
  4248  	// This may be used to include null fields in Patch requests.
  4249  	NullFields []string `json:"-"`
  4250  }
  4251  
  4252  func (s *GoogleCloudDialogflowV2beta1Intent) MarshalJSON() ([]byte, error) {
  4253  	type NoMethod GoogleCloudDialogflowV2beta1Intent
  4254  	raw := NoMethod(*s)
  4255  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  4256  }
  4257  
  4258  // GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo: Represents a
  4259  // single followup intent in the chain.
  4260  type GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo struct {
  4261  	// FollowupIntentName: The unique identifier of the followup
  4262  	// intent.
  4263  	// Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
  4264  	FollowupIntentName string `json:"followupIntentName,omitempty"`
  4265  
  4266  	// ParentFollowupIntentName: The unique identifier of the followup
  4267  	// intent's parent.
  4268  	// Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
  4269  	ParentFollowupIntentName string `json:"parentFollowupIntentName,omitempty"`
  4270  
  4271  	// ForceSendFields is a list of field names (e.g. "FollowupIntentName")
  4272  	// to unconditionally include in API requests. By default, fields with
  4273  	// empty values are omitted from API requests. However, any non-pointer,
  4274  	// non-interface field appearing in ForceSendFields will be sent to the
  4275  	// server regardless of whether the field is empty or not. This may be
  4276  	// used to include empty fields in Patch requests.
  4277  	ForceSendFields []string `json:"-"`
  4278  
  4279  	// NullFields is a list of field names (e.g. "FollowupIntentName") to
  4280  	// include in API requests with the JSON null value. By default, fields
  4281  	// with empty values are omitted from API requests. However, any field
  4282  	// with an empty value appearing in NullFields will be sent to the
  4283  	// server as null. It is an error if a field in this list has a
  4284  	// non-empty value. This may be used to include null fields in Patch
  4285  	// requests.
  4286  	NullFields []string `json:"-"`
  4287  }
  4288  
  4289  func (s *GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo) MarshalJSON() ([]byte, error) {
  4290  	type NoMethod GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo
  4291  	raw := NoMethod(*s)
  4292  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  4293  }
  4294  
  4295  // GoogleCloudDialogflowV2beta1IntentMessage: Corresponds to the
  4296  // `Response` field in the Dialogflow console.
  4297  type GoogleCloudDialogflowV2beta1IntentMessage struct {
  4298  	// BasicCard: Displays a basic card for Actions on Google.
  4299  	BasicCard *GoogleCloudDialogflowV2beta1IntentMessageBasicCard `json:"basicCard,omitempty"`
  4300  
  4301  	// BrowseCarouselCard: Browse carousel card for Actions on Google.
  4302  	BrowseCarouselCard *GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard `json:"browseCarouselCard,omitempty"`
  4303  
  4304  	// Card: Displays a card.
  4305  	Card *GoogleCloudDialogflowV2beta1IntentMessageCard `json:"card,omitempty"`
  4306  
  4307  	// CarouselSelect: Displays a carousel card for Actions on Google.
  4308  	CarouselSelect *GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect `json:"carouselSelect,omitempty"`
  4309  
  4310  	// Image: Displays an image.
  4311  	Image *GoogleCloudDialogflowV2beta1IntentMessageImage `json:"image,omitempty"`
  4312  
  4313  	// LinkOutSuggestion: Displays a link out suggestion chip for Actions on
  4314  	// Google.
  4315  	LinkOutSuggestion *GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion `json:"linkOutSuggestion,omitempty"`
  4316  
  4317  	// ListSelect: Displays a list card for Actions on Google.
  4318  	ListSelect *GoogleCloudDialogflowV2beta1IntentMessageListSelect `json:"listSelect,omitempty"`
  4319  
  4320  	// MediaContent: The media content card for Actions on Google.
  4321  	MediaContent *GoogleCloudDialogflowV2beta1IntentMessageMediaContent `json:"mediaContent,omitempty"`
  4322  
  4323  	// Payload: A custom platform-specific response.
  4324  	Payload googleapi.RawMessage `json:"payload,omitempty"`
  4325  
  4326  	// Platform: Optional. The platform that this message is intended for.
  4327  	//
  4328  	// Possible values:
  4329  	//   "PLATFORM_UNSPECIFIED" - Not specified.
  4330  	//   "FACEBOOK" - Facebook.
  4331  	//   "SLACK" - Slack.
  4332  	//   "TELEGRAM" - Telegram.
  4333  	//   "KIK" - Kik.
  4334  	//   "SKYPE" - Skype.
  4335  	//   "LINE" - Line.
  4336  	//   "VIBER" - Viber.
  4337  	//   "ACTIONS_ON_GOOGLE" - Google Assistant
  4338  	// See [Dialogflow
  4339  	// webhook
  4340  	// format](https://developers.google.com/assistant/actions/build/
  4341  	// json/dialogflow-webhook-json)
  4342  	//   "TELEPHONY" - Telephony Gateway.
  4343  	//   "GOOGLE_HANGOUTS" - Google Hangouts.
  4344  	Platform string `json:"platform,omitempty"`
  4345  
  4346  	// QuickReplies: Displays quick replies.
  4347  	QuickReplies *GoogleCloudDialogflowV2beta1IntentMessageQuickReplies `json:"quickReplies,omitempty"`
  4348  
  4349  	// RbmCarouselRichCard: Rich Business Messaging (RBM) carousel rich card
  4350  	// response.
  4351  	RbmCarouselRichCard *GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard `json:"rbmCarouselRichCard,omitempty"`
  4352  
  4353  	// RbmStandaloneRichCard: Standalone Rich Business Messaging (RBM) rich
  4354  	// card response.
  4355  	RbmStandaloneRichCard *GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard `json:"rbmStandaloneRichCard,omitempty"`
  4356  
  4357  	// RbmText: Rich Business Messaging (RBM) text response.
  4358  	//
  4359  	// RBM allows businesses to send enriched and branded versions of SMS.
  4360  	// See
  4361  	// https://jibe.google.com/business-messaging.
  4362  	RbmText *GoogleCloudDialogflowV2beta1IntentMessageRbmText `json:"rbmText,omitempty"`
  4363  
  4364  	// SimpleResponses: Returns a voice or text-only response for Actions on
  4365  	// Google.
  4366  	SimpleResponses *GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses `json:"simpleResponses,omitempty"`
  4367  
  4368  	// Suggestions: Displays suggestion chips for Actions on Google.
  4369  	Suggestions *GoogleCloudDialogflowV2beta1IntentMessageSuggestions `json:"suggestions,omitempty"`
  4370  
  4371  	// TableCard: Table card for Actions on Google.
  4372  	TableCard *GoogleCloudDialogflowV2beta1IntentMessageTableCard `json:"tableCard,omitempty"`
  4373  
  4374  	// TelephonyPlayAudio: Plays audio from a file in Telephony Gateway.
  4375  	TelephonyPlayAudio *GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio `json:"telephonyPlayAudio,omitempty"`
  4376  
  4377  	// TelephonySynthesizeSpeech: Synthesizes speech in Telephony Gateway.
  4378  	TelephonySynthesizeSpeech *GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech `json:"telephonySynthesizeSpeech,omitempty"`
  4379  
  4380  	// TelephonyTransferCall: Transfers the call in Telephony Gateway.
  4381  	TelephonyTransferCall *GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall `json:"telephonyTransferCall,omitempty"`
  4382  
  4383  	// Text: Returns a text response.
  4384  	Text *GoogleCloudDialogflowV2beta1IntentMessageText `json:"text,omitempty"`
  4385  
  4386  	// ForceSendFields is a list of field names (e.g. "BasicCard") to
  4387  	// unconditionally include in API requests. By default, fields with
  4388  	// empty values are omitted from API requests. However, any non-pointer,
  4389  	// non-interface field appearing in ForceSendFields will be sent to the
  4390  	// server regardless of whether the field is empty or not. This may be
  4391  	// used to include empty fields in Patch requests.
  4392  	ForceSendFields []string `json:"-"`
  4393  
  4394  	// NullFields is a list of field names (e.g. "BasicCard") to include in
  4395  	// API requests with the JSON null value. By default, fields with empty
  4396  	// values are omitted from API requests. However, any field with an
  4397  	// empty value appearing in NullFields will be sent to the server as
  4398  	// null. It is an error if a field in this list has a non-empty value.
  4399  	// This may be used to include null fields in Patch requests.
  4400  	NullFields []string `json:"-"`
  4401  }
  4402  
  4403  func (s *GoogleCloudDialogflowV2beta1IntentMessage) MarshalJSON() ([]byte, error) {
  4404  	type NoMethod GoogleCloudDialogflowV2beta1IntentMessage
  4405  	raw := NoMethod(*s)
  4406  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  4407  }
  4408  
  4409  // GoogleCloudDialogflowV2beta1IntentMessageBasicCard: The basic card
  4410  // message. Useful for displaying information.
  4411  type GoogleCloudDialogflowV2beta1IntentMessageBasicCard struct {
  4412  	// Buttons: Optional. The collection of card buttons.
  4413  	Buttons []*GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton `json:"buttons,omitempty"`
  4414  
  4415  	// FormattedText: Required, unless image is present. The body text of
  4416  	// the card.
  4417  	FormattedText string `json:"formattedText,omitempty"`
  4418  
  4419  	// Image: Optional. The image for the card.
  4420  	Image *GoogleCloudDialogflowV2beta1IntentMessageImage `json:"image,omitempty"`
  4421  
  4422  	// Subtitle: Optional. The subtitle of the card.
  4423  	Subtitle string `json:"subtitle,omitempty"`
  4424  
  4425  	// Title: Optional. The title of the card.
  4426  	Title string `json:"title,omitempty"`
  4427  
  4428  	// ForceSendFields is a list of field names (e.g. "Buttons") to
  4429  	// unconditionally include in API requests. By default, fields with
  4430  	// empty values are omitted from API requests. However, any non-pointer,
  4431  	// non-interface field appearing in ForceSendFields will be sent to the
  4432  	// server regardless of whether the field is empty or not. This may be
  4433  	// used to include empty fields in Patch requests.
  4434  	ForceSendFields []string `json:"-"`
  4435  
  4436  	// NullFields is a list of field names (e.g. "Buttons") to include in
  4437  	// API requests with the JSON null value. By default, fields with empty
  4438  	// values are omitted from API requests. However, any field with an
  4439  	// empty value appearing in NullFields will be sent to the server as
  4440  	// null. It is an error if a field in this list has a non-empty value.
  4441  	// This may be used to include null fields in Patch requests.
  4442  	NullFields []string `json:"-"`
  4443  }
  4444  
  4445  func (s *GoogleCloudDialogflowV2beta1IntentMessageBasicCard) MarshalJSON() ([]byte, error) {
  4446  	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageBasicCard
  4447  	raw := NoMethod(*s)
  4448  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  4449  }
  4450  
  4451  // GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton: The button
  4452  // object that appears at the bottom of a card.
  4453  type GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton struct {
  4454  	// OpenUriAction: Required. Action to take when a user taps on the
  4455  	// button.
  4456  	OpenUriAction *GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction `json:"openUriAction,omitempty"`
  4457  
  4458  	// Title: Required. The title of the button.
  4459  	Title string `json:"title,omitempty"`
  4460  
  4461  	// ForceSendFields is a list of field names (e.g. "OpenUriAction") to
  4462  	// unconditionally include in API requests. By default, fields with
  4463  	// empty values are omitted from API requests. However, any non-pointer,
  4464  	// non-interface field appearing in ForceSendFields will be sent to the
  4465  	// server regardless of whether the field is empty or not. This may be
  4466  	// used to include empty fields in Patch requests.
  4467  	ForceSendFields []string `json:"-"`
  4468  
  4469  	// NullFields is a list of field names (e.g. "OpenUriAction") to include
  4470  	// in API requests with the JSON null value. By default, fields with
  4471  	// empty values are omitted from API requests. However, any field with
  4472  	// an empty value appearing in NullFields will be sent to the server as
  4473  	// null. It is an error if a field in this list has a non-empty value.
  4474  	// This may be used to include null fields in Patch requests.
  4475  	NullFields []string `json:"-"`
  4476  }
  4477  
  4478  func (s *GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton) MarshalJSON() ([]byte, error) {
  4479  	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton
  4480  	raw := NoMethod(*s)
  4481  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  4482  }
  4483  
  4484  // GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction:
  4485  //
  4486  //	Opens the given URI.
  4487  type GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction struct {
  4488  	// Uri: Required. The HTTP or HTTPS scheme URI.
  4489  	Uri string `json:"uri,omitempty"`
  4490  
  4491  	// ForceSendFields is a list of field names (e.g. "Uri") to
  4492  	// unconditionally include in API requests. By default, fields with
  4493  	// empty values are omitted from API requests. However, any non-pointer,
  4494  	// non-interface field appearing in ForceSendFields will be sent to the
  4495  	// server regardless of whether the field is empty or not. This may be
  4496  	// used to include empty fields in Patch requests.
  4497  	ForceSendFields []string `json:"-"`
  4498  
  4499  	// NullFields is a list of field names (e.g. "Uri") to include in API
  4500  	// requests with the JSON null value. By default, fields with empty
  4501  	// values are omitted from API requests. However, any field with an
  4502  	// empty value appearing in NullFields will be sent to the server as
  4503  	// null. It is an error if a field in this list has a non-empty value.
  4504  	// This may be used to include null fields in Patch requests.
  4505  	NullFields []string `json:"-"`
  4506  }
  4507  
  4508  func (s *GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction) MarshalJSON() ([]byte, error) {
  4509  	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction
  4510  	raw := NoMethod(*s)
  4511  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  4512  }
  4513  
  4514  // GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard: Browse
  4515  // Carousel Card for Actions on
  4516  // Google.
  4517  // https://developers.google.com/actions/assistant/responses#brow
  4518  // sing_carousel
  4519  type GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard struct {
  4520  	// ImageDisplayOptions: Optional. Settings for displaying the image.
  4521  	// Applies to every image in
  4522  	// items.
  4523  	//
  4524  	// Possible values:
  4525  	//   "IMAGE_DISPLAY_OPTIONS_UNSPECIFIED" - Fill the gaps between the
  4526  	// image and the image container with gray
  4527  	// bars.
  4528  	//   "GRAY" - Fill the gaps between the image and the image container
  4529  	// with gray
  4530  	// bars.
  4531  	//   "WHITE" - Fill the gaps between the image and the image container
  4532  	// with white
  4533  	// bars.
  4534  	//   "CROPPED" - Image is scaled such that the image width and height
  4535  	// match or exceed
  4536  	// the container dimensions. This may crop the top and bottom of
  4537  	// the
  4538  	// image if the scaled image height is greater than the
  4539  	// container
  4540  	// height, or crop the left and right of the image if the scaled
  4541  	// image
  4542  	// width is greater than the container width. This is similar to
  4543  	// "Zoom
  4544  	// Mode" on a widescreen TV when playing a 4:3 video.
  4545  	//   "BLURRED_BACKGROUND" - Pad the gaps between image and image frame
  4546  	// with a blurred copy of the
  4547  	// same image.
  4548  	ImageDisplayOptions string `json:"imageDisplayOptions,omitempty"`
  4549  
  4550  	// Items: Required. List of items in the Browse Carousel Card. Minimum
  4551  	// of two
  4552  	// items, maximum of ten.
  4553  	Items []*GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItem `json:"items,omitempty"`
  4554  
  4555  	// ForceSendFields is a list of field names (e.g. "ImageDisplayOptions")
  4556  	// to unconditionally include in API requests. By default, fields with
  4557  	// empty values are omitted from API requests. However, any non-pointer,
  4558  	// non-interface field appearing in ForceSendFields will be sent to the
  4559  	// server regardless of whether the field is empty or not. This may be
  4560  	// used to include empty fields in Patch requests.
  4561  	ForceSendFields []string `json:"-"`
  4562  
  4563  	// NullFields is a list of field names (e.g. "ImageDisplayOptions") to
  4564  	// include in API requests with the JSON null value. By default, fields
  4565  	// with empty values are omitted from API requests. However, any field
  4566  	// with an empty value appearing in NullFields will be sent to the
  4567  	// server as null. It is an error if a field in this list has a
  4568  	// non-empty value. This may be used to include null fields in Patch
  4569  	// requests.
  4570  	NullFields []string `json:"-"`
  4571  }
  4572  
  4573  func (s *GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard) MarshalJSON() ([]byte, error) {
  4574  	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard
  4575  	raw := NoMethod(*s)
  4576  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  4577  }
  4578  
  4579  // GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarou
  4580  // selCardItem: Browsing carousel tile
  4581  type GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItem struct {
  4582  	// Description: Optional. Description of the carousel item. Maximum of
  4583  	// four lines of
  4584  	// text.
  4585  	Description string `json:"description,omitempty"`
  4586  
  4587  	// Footer: Optional. Text that appears at the bottom of the Browse
  4588  	// Carousel
  4589  	// Card. Maximum of one line of text.
  4590  	Footer string `json:"footer,omitempty"`
  4591  
  4592  	// Image: Optional. Hero image for the carousel item.
  4593  	Image *GoogleCloudDialogflowV2beta1IntentMessageImage `json:"image,omitempty"`
  4594  
  4595  	// OpenUriAction: Required. Action to present to the user.
  4596  	OpenUriAction *GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction `json:"openUriAction,omitempty"`
  4597  
  4598  	// Title: Required. Title of the carousel item. Maximum of two lines of
  4599  	// text.
  4600  	Title string `json:"title,omitempty"`
  4601  
  4602  	// ForceSendFields is a list of field names (e.g. "Description") to
  4603  	// unconditionally include in API requests. By default, fields with
  4604  	// empty values are omitted from API requests. However, any non-pointer,
  4605  	// non-interface field appearing in ForceSendFields will be sent to the
  4606  	// server regardless of whether the field is empty or not. This may be
  4607  	// used to include empty fields in Patch requests.
  4608  	ForceSendFields []string `json:"-"`
  4609  
  4610  	// NullFields is a list of field names (e.g. "Description") to include
  4611  	// in API requests with the JSON null value. By default, fields with
  4612  	// empty values are omitted from API requests. However, any field with
  4613  	// an empty value appearing in NullFields will be sent to the server as
  4614  	// null. It is an error if a field in this list has a non-empty value.
  4615  	// This may be used to include null fields in Patch requests.
  4616  	NullFields []string `json:"-"`
  4617  }
  4618  
  4619  func (s *GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItem) MarshalJSON() ([]byte, error) {
  4620  	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItem
  4621  	raw := NoMethod(*s)
  4622  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  4623  }
  4624  
  4625  // GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarou
  4626  // selCardItemOpenUrlAction: Actions on Google action to open a given
  4627  // url.
  4628  type GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction struct {
  4629  	// Url: Required. URL
  4630  	Url string `json:"url,omitempty"`
  4631  
  4632  	// UrlTypeHint: Optional. Specifies the type of viewer that is used when
  4633  	// opening
  4634  	// the URL. Defaults to opening via web browser.
  4635  	//
  4636  	// Possible values:
  4637  	//   "URL_TYPE_HINT_UNSPECIFIED" - Unspecified
  4638  	//   "AMP_ACTION" - Url would be an amp action
  4639  	//   "AMP_CONTENT" - URL that points directly to AMP content, or to a
  4640  	// canonical URL
  4641  	// which refers to AMP content via <link rel="amphtml">.
  4642  	UrlTypeHint string `json:"urlTypeHint,omitempty"`
  4643  
  4644  	// ForceSendFields is a list of field names (e.g. "Url") to
  4645  	// unconditionally include in API requests. By default, fields with
  4646  	// empty values are omitted from API requests. However, any non-pointer,
  4647  	// non-interface field appearing in ForceSendFields will be sent to the
  4648  	// server regardless of whether the field is empty or not. This may be
  4649  	// used to include empty fields in Patch requests.
  4650  	ForceSendFields []string `json:"-"`
  4651  
  4652  	// NullFields is a list of field names (e.g. "Url") to include in API
  4653  	// requests with the JSON null value. By default, fields with empty
  4654  	// values are omitted from API requests. However, any field with an
  4655  	// empty value appearing in NullFields will be sent to the server as
  4656  	// null. It is an error if a field in this list has a non-empty value.
  4657  	// This may be used to include null fields in Patch requests.
  4658  	NullFields []string `json:"-"`
  4659  }
  4660  
  4661  func (s *GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction) MarshalJSON() ([]byte, error) {
  4662  	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction
  4663  	raw := NoMethod(*s)
  4664  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  4665  }
  4666  
  4667  // GoogleCloudDialogflowV2beta1IntentMessageCard: The card response
  4668  // message.
  4669  type GoogleCloudDialogflowV2beta1IntentMessageCard struct {
  4670  	// Buttons: Optional. The collection of card buttons.
  4671  	Buttons []*GoogleCloudDialogflowV2beta1IntentMessageCardButton `json:"buttons,omitempty"`
  4672  
  4673  	// ImageUri: Optional. The public URI to an image file for the card.
  4674  	ImageUri string `json:"imageUri,omitempty"`
  4675  
  4676  	// Subtitle: Optional. The subtitle of the card.
  4677  	Subtitle string `json:"subtitle,omitempty"`
  4678  
  4679  	// Title: Optional. The title of the card.
  4680  	Title string `json:"title,omitempty"`
  4681  
  4682  	// ForceSendFields is a list of field names (e.g. "Buttons") to
  4683  	// unconditionally include in API requests. By default, fields with
  4684  	// empty values are omitted from API requests. However, any non-pointer,
  4685  	// non-interface field appearing in ForceSendFields will be sent to the
  4686  	// server regardless of whether the field is empty or not. This may be
  4687  	// used to include empty fields in Patch requests.
  4688  	ForceSendFields []string `json:"-"`
  4689  
  4690  	// NullFields is a list of field names (e.g. "Buttons") to include in
  4691  	// API requests with the JSON null value. By default, fields with empty
  4692  	// values are omitted from API requests. However, any field with an
  4693  	// empty value appearing in NullFields will be sent to the server as
  4694  	// null. It is an error if a field in this list has a non-empty value.
  4695  	// This may be used to include null fields in Patch requests.
  4696  	NullFields []string `json:"-"`
  4697  }
  4698  
  4699  func (s *GoogleCloudDialogflowV2beta1IntentMessageCard) MarshalJSON() ([]byte, error) {
  4700  	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageCard
  4701  	raw := NoMethod(*s)
  4702  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  4703  }
  4704  
  4705  // GoogleCloudDialogflowV2beta1IntentMessageCardButton: Optional.
  4706  // Contains information about a button.
  4707  type GoogleCloudDialogflowV2beta1IntentMessageCardButton struct {
  4708  	// Postback: Optional. The text to send back to the Dialogflow API or a
  4709  	// URI to
  4710  	// open.
  4711  	Postback string `json:"postback,omitempty"`
  4712  
  4713  	// Text: Optional. The text to show on the button.
  4714  	Text string `json:"text,omitempty"`
  4715  
  4716  	// ForceSendFields is a list of field names (e.g. "Postback") to
  4717  	// unconditionally include in API requests. By default, fields with
  4718  	// empty values are omitted from API requests. However, any non-pointer,
  4719  	// non-interface field appearing in ForceSendFields will be sent to the
  4720  	// server regardless of whether the field is empty or not. This may be
  4721  	// used to include empty fields in Patch requests.
  4722  	ForceSendFields []string `json:"-"`
  4723  
  4724  	// NullFields is a list of field names (e.g. "Postback") to include in
  4725  	// API requests with the JSON null value. By default, fields with empty
  4726  	// values are omitted from API requests. However, any field with an
  4727  	// empty value appearing in NullFields will be sent to the server as
  4728  	// null. It is an error if a field in this list has a non-empty value.
  4729  	// This may be used to include null fields in Patch requests.
  4730  	NullFields []string `json:"-"`
  4731  }
  4732  
  4733  func (s *GoogleCloudDialogflowV2beta1IntentMessageCardButton) MarshalJSON() ([]byte, error) {
  4734  	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageCardButton
  4735  	raw := NoMethod(*s)
  4736  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  4737  }
  4738  
  4739  // GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect: The card for
  4740  // presenting a carousel of options to select from.
  4741  type GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect struct {
  4742  	// Items: Required. Carousel items.
  4743  	Items []*GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem `json:"items,omitempty"`
  4744  
  4745  	// ForceSendFields is a list of field names (e.g. "Items") to
  4746  	// unconditionally include in API requests. By default, fields with
  4747  	// empty values are omitted from API requests. However, any non-pointer,
  4748  	// non-interface field appearing in ForceSendFields will be sent to the
  4749  	// server regardless of whether the field is empty or not. This may be
  4750  	// used to include empty fields in Patch requests.
  4751  	ForceSendFields []string `json:"-"`
  4752  
  4753  	// NullFields is a list of field names (e.g. "Items") to include in API
  4754  	// requests with the JSON null value. By default, fields with empty
  4755  	// values are omitted from API requests. However, any field with an
  4756  	// empty value appearing in NullFields will be sent to the server as
  4757  	// null. It is an error if a field in this list has a non-empty value.
  4758  	// This may be used to include null fields in Patch requests.
  4759  	NullFields []string `json:"-"`
  4760  }
  4761  
  4762  func (s *GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect) MarshalJSON() ([]byte, error) {
  4763  	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect
  4764  	raw := NoMethod(*s)
  4765  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  4766  }
  4767  
  4768  // GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem: An item
  4769  // in the carousel.
  4770  type GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem struct {
  4771  	// Description: Optional. The body text of the card.
  4772  	Description string `json:"description,omitempty"`
  4773  
  4774  	// Image: Optional. The image to display.
  4775  	Image *GoogleCloudDialogflowV2beta1IntentMessageImage `json:"image,omitempty"`
  4776  
  4777  	// Info: Required. Additional info about the option item.
  4778  	Info *GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo `json:"info,omitempty"`
  4779  
  4780  	// Title: Required. Title of the carousel item.
  4781  	Title string `json:"title,omitempty"`
  4782  
  4783  	// ForceSendFields is a list of field names (e.g. "Description") to
  4784  	// unconditionally include in API requests. By default, fields with
  4785  	// empty values are omitted from API requests. However, any non-pointer,
  4786  	// non-interface field appearing in ForceSendFields will be sent to the
  4787  	// server regardless of whether the field is empty or not. This may be
  4788  	// used to include empty fields in Patch requests.
  4789  	ForceSendFields []string `json:"-"`
  4790  
  4791  	// NullFields is a list of field names (e.g. "Description") to include
  4792  	// in API requests with the JSON null value. By default, fields with
  4793  	// empty values are omitted from API requests. However, any field with
  4794  	// an empty value appearing in NullFields will be sent to the server as
  4795  	// null. It is an error if a field in this list has a non-empty value.
  4796  	// This may be used to include null fields in Patch requests.
  4797  	NullFields []string `json:"-"`
  4798  }
  4799  
  4800  func (s *GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem) MarshalJSON() ([]byte, error) {
  4801  	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem
  4802  	raw := NoMethod(*s)
  4803  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  4804  }
  4805  
  4806  // GoogleCloudDialogflowV2beta1IntentMessageColumnProperties: Column
  4807  // properties for TableCard.
  4808  type GoogleCloudDialogflowV2beta1IntentMessageColumnProperties struct {
  4809  	// Header: Required. Column heading.
  4810  	Header string `json:"header,omitempty"`
  4811  
  4812  	// HorizontalAlignment: Optional. Defines text alignment for all cells
  4813  	// in this column.
  4814  	//
  4815  	// Possible values:
  4816  	//   "HORIZONTAL_ALIGNMENT_UNSPECIFIED" - Text is aligned to the leading
  4817  	// edge of the column.
  4818  	//   "LEADING" - Text is aligned to the leading edge of the column.
  4819  	//   "CENTER" - Text is centered in the column.
  4820  	//   "TRAILING" - Text is aligned to the trailing edge of the column.
  4821  	HorizontalAlignment string `json:"horizontalAlignment,omitempty"`
  4822  
  4823  	// ForceSendFields is a list of field names (e.g. "Header") to
  4824  	// unconditionally include in API requests. By default, fields with
  4825  	// empty values are omitted from API requests. However, any non-pointer,
  4826  	// non-interface field appearing in ForceSendFields will be sent to the
  4827  	// server regardless of whether the field is empty or not. This may be
  4828  	// used to include empty fields in Patch requests.
  4829  	ForceSendFields []string `json:"-"`
  4830  
  4831  	// NullFields is a list of field names (e.g. "Header") to include in API
  4832  	// requests with the JSON null value. By default, fields with empty
  4833  	// values are omitted from API requests. However, any field with an
  4834  	// empty value appearing in NullFields will be sent to the server as
  4835  	// null. It is an error if a field in this list has a non-empty value.
  4836  	// This may be used to include null fields in Patch requests.
  4837  	NullFields []string `json:"-"`
  4838  }
  4839  
  4840  func (s *GoogleCloudDialogflowV2beta1IntentMessageColumnProperties) MarshalJSON() ([]byte, error) {
  4841  	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageColumnProperties
  4842  	raw := NoMethod(*s)
  4843  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  4844  }
  4845  
  4846  // GoogleCloudDialogflowV2beta1IntentMessageImage: The image response
  4847  // message.
  4848  type GoogleCloudDialogflowV2beta1IntentMessageImage struct {
  4849  	// AccessibilityText: A text description of the image to be used for
  4850  	// accessibility,
  4851  	// e.g., screen readers. Required if image_uri is set for
  4852  	// CarouselSelect.
  4853  	AccessibilityText string `json:"accessibilityText,omitempty"`
  4854  
  4855  	// ImageUri: Optional. The public URI to an image file.
  4856  	ImageUri string `json:"imageUri,omitempty"`
  4857  
  4858  	// ForceSendFields is a list of field names (e.g. "AccessibilityText")
  4859  	// to unconditionally include in API requests. By default, fields with
  4860  	// empty values are omitted from API requests. However, any non-pointer,
  4861  	// non-interface field appearing in ForceSendFields will be sent to the
  4862  	// server regardless of whether the field is empty or not. This may be
  4863  	// used to include empty fields in Patch requests.
  4864  	ForceSendFields []string `json:"-"`
  4865  
  4866  	// NullFields is a list of field names (e.g. "AccessibilityText") to
  4867  	// include in API requests with the JSON null value. By default, fields
  4868  	// with empty values are omitted from API requests. However, any field
  4869  	// with an empty value appearing in NullFields will be sent to the
  4870  	// server as null. It is an error if a field in this list has a
  4871  	// non-empty value. This may be used to include null fields in Patch
  4872  	// requests.
  4873  	NullFields []string `json:"-"`
  4874  }
  4875  
  4876  func (s *GoogleCloudDialogflowV2beta1IntentMessageImage) MarshalJSON() ([]byte, error) {
  4877  	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageImage
  4878  	raw := NoMethod(*s)
  4879  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  4880  }
  4881  
  4882  // GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion: The
  4883  // suggestion chip message that allows the user to jump out to the
  4884  // app
  4885  // or website associated with this agent.
  4886  type GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion struct {
  4887  	// DestinationName: Required. The name of the app or site this chip is
  4888  	// linking to.
  4889  	DestinationName string `json:"destinationName,omitempty"`
  4890  
  4891  	// Uri: Required. The URI of the app or site to open when the user taps
  4892  	// the
  4893  	// suggestion chip.
  4894  	Uri string `json:"uri,omitempty"`
  4895  
  4896  	// ForceSendFields is a list of field names (e.g. "DestinationName") to
  4897  	// unconditionally include in API requests. By default, fields with
  4898  	// empty values are omitted from API requests. However, any non-pointer,
  4899  	// non-interface field appearing in ForceSendFields will be sent to the
  4900  	// server regardless of whether the field is empty or not. This may be
  4901  	// used to include empty fields in Patch requests.
  4902  	ForceSendFields []string `json:"-"`
  4903  
  4904  	// NullFields is a list of field names (e.g. "DestinationName") to
  4905  	// include in API requests with the JSON null value. By default, fields
  4906  	// with empty values are omitted from API requests. However, any field
  4907  	// with an empty value appearing in NullFields will be sent to the
  4908  	// server as null. It is an error if a field in this list has a
  4909  	// non-empty value. This may be used to include null fields in Patch
  4910  	// requests.
  4911  	NullFields []string `json:"-"`
  4912  }
  4913  
  4914  func (s *GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion) MarshalJSON() ([]byte, error) {
  4915  	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion
  4916  	raw := NoMethod(*s)
  4917  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  4918  }
  4919  
  4920  // GoogleCloudDialogflowV2beta1IntentMessageListSelect: The card for
  4921  // presenting a list of options to select from.
  4922  type GoogleCloudDialogflowV2beta1IntentMessageListSelect struct {
  4923  	// Items: Required. List items.
  4924  	Items []*GoogleCloudDialogflowV2beta1IntentMessageListSelectItem `json:"items,omitempty"`
  4925  
  4926  	// Subtitle: Optional. Subtitle of the list.
  4927  	Subtitle string `json:"subtitle,omitempty"`
  4928  
  4929  	// Title: Optional. The overall title of the list.
  4930  	Title string `json:"title,omitempty"`
  4931  
  4932  	// ForceSendFields is a list of field names (e.g. "Items") to
  4933  	// unconditionally include in API requests. By default, fields with
  4934  	// empty values are omitted from API requests. However, any non-pointer,
  4935  	// non-interface field appearing in ForceSendFields will be sent to the
  4936  	// server regardless of whether the field is empty or not. This may be
  4937  	// used to include empty fields in Patch requests.
  4938  	ForceSendFields []string `json:"-"`
  4939  
  4940  	// NullFields is a list of field names (e.g. "Items") to include in API
  4941  	// requests with the JSON null value. By default, fields with empty
  4942  	// values are omitted from API requests. However, any field with an
  4943  	// empty value appearing in NullFields will be sent to the server as
  4944  	// null. It is an error if a field in this list has a non-empty value.
  4945  	// This may be used to include null fields in Patch requests.
  4946  	NullFields []string `json:"-"`
  4947  }
  4948  
  4949  func (s *GoogleCloudDialogflowV2beta1IntentMessageListSelect) MarshalJSON() ([]byte, error) {
  4950  	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageListSelect
  4951  	raw := NoMethod(*s)
  4952  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  4953  }
  4954  
  4955  // GoogleCloudDialogflowV2beta1IntentMessageListSelectItem: An item in
  4956  // the list.
  4957  type GoogleCloudDialogflowV2beta1IntentMessageListSelectItem struct {
  4958  	// Description: Optional. The main text describing the item.
  4959  	Description string `json:"description,omitempty"`
  4960  
  4961  	// Image: Optional. The image to display.
  4962  	Image *GoogleCloudDialogflowV2beta1IntentMessageImage `json:"image,omitempty"`
  4963  
  4964  	// Info: Required. Additional information about this option.
  4965  	Info *GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo `json:"info,omitempty"`
  4966  
  4967  	// Title: Required. The title of the list item.
  4968  	Title string `json:"title,omitempty"`
  4969  
  4970  	// ForceSendFields is a list of field names (e.g. "Description") to
  4971  	// unconditionally include in API requests. By default, fields with
  4972  	// empty values are omitted from API requests. However, any non-pointer,
  4973  	// non-interface field appearing in ForceSendFields will be sent to the
  4974  	// server regardless of whether the field is empty or not. This may be
  4975  	// used to include empty fields in Patch requests.
  4976  	ForceSendFields []string `json:"-"`
  4977  
  4978  	// NullFields is a list of field names (e.g. "Description") to include
  4979  	// in API requests with the JSON null value. By default, fields with
  4980  	// empty values are omitted from API requests. However, any field with
  4981  	// an empty value appearing in NullFields will be sent to the server as
  4982  	// null. It is an error if a field in this list has a non-empty value.
  4983  	// This may be used to include null fields in Patch requests.
  4984  	NullFields []string `json:"-"`
  4985  }
  4986  
  4987  func (s *GoogleCloudDialogflowV2beta1IntentMessageListSelectItem) MarshalJSON() ([]byte, error) {
  4988  	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageListSelectItem
  4989  	raw := NoMethod(*s)
  4990  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  4991  }
  4992  
  4993  // GoogleCloudDialogflowV2beta1IntentMessageMediaContent: The media
  4994  // content card for Actions on Google.
  4995  type GoogleCloudDialogflowV2beta1IntentMessageMediaContent struct {
  4996  	// MediaObjects: Required. List of media objects.
  4997  	MediaObjects []*GoogleCloudDialogflowV2beta1IntentMessageMediaContentResponseMediaObject `json:"mediaObjects,omitempty"`
  4998  
  4999  	// MediaType: Optional. What type of media is the content (ie "audio").
  5000  	//
  5001  	// Possible values:
  5002  	//   "RESPONSE_MEDIA_TYPE_UNSPECIFIED" - Unspecified.
  5003  	//   "AUDIO" - Response media type is audio.
  5004  	MediaType string `json:"mediaType,omitempty"`
  5005  
  5006  	// ForceSendFields is a list of field names (e.g. "MediaObjects") to
  5007  	// unconditionally include in API requests. By default, fields with
  5008  	// empty values are omitted from API requests. However, any non-pointer,
  5009  	// non-interface field appearing in ForceSendFields will be sent to the
  5010  	// server regardless of whether the field is empty or not. This may be
  5011  	// used to include empty fields in Patch requests.
  5012  	ForceSendFields []string `json:"-"`
  5013  
  5014  	// NullFields is a list of field names (e.g. "MediaObjects") to include
  5015  	// in API requests with the JSON null value. By default, fields with
  5016  	// empty values are omitted from API requests. However, any field with
  5017  	// an empty value appearing in NullFields will be sent to the server as
  5018  	// null. It is an error if a field in this list has a non-empty value.
  5019  	// This may be used to include null fields in Patch requests.
  5020  	NullFields []string `json:"-"`
  5021  }
  5022  
  5023  func (s *GoogleCloudDialogflowV2beta1IntentMessageMediaContent) MarshalJSON() ([]byte, error) {
  5024  	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageMediaContent
  5025  	raw := NoMethod(*s)
  5026  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5027  }
  5028  
  5029  // GoogleCloudDialogflowV2beta1IntentMessageMediaContentResponseMediaObje
  5030  // ct: Response media object for media content card.
  5031  type GoogleCloudDialogflowV2beta1IntentMessageMediaContentResponseMediaObject struct {
  5032  	// ContentUrl: Required. Url where the media is stored.
  5033  	ContentUrl string `json:"contentUrl,omitempty"`
  5034  
  5035  	// Description: Optional. Description of media card.
  5036  	Description string `json:"description,omitempty"`
  5037  
  5038  	// Icon: Optional. Icon to display above media content.
  5039  	Icon *GoogleCloudDialogflowV2beta1IntentMessageImage `json:"icon,omitempty"`
  5040  
  5041  	// LargeImage: Optional. Image to display above media content.
  5042  	LargeImage *GoogleCloudDialogflowV2beta1IntentMessageImage `json:"largeImage,omitempty"`
  5043  
  5044  	// Name: Required. Name of media card.
  5045  	Name string `json:"name,omitempty"`
  5046  
  5047  	// ForceSendFields is a list of field names (e.g. "ContentUrl") to
  5048  	// unconditionally include in API requests. By default, fields with
  5049  	// empty values are omitted from API requests. However, any non-pointer,
  5050  	// non-interface field appearing in ForceSendFields will be sent to the
  5051  	// server regardless of whether the field is empty or not. This may be
  5052  	// used to include empty fields in Patch requests.
  5053  	ForceSendFields []string `json:"-"`
  5054  
  5055  	// NullFields is a list of field names (e.g. "ContentUrl") to include in
  5056  	// API requests with the JSON null value. By default, fields with empty
  5057  	// values are omitted from API requests. However, any field with an
  5058  	// empty value appearing in NullFields will be sent to the server as
  5059  	// null. It is an error if a field in this list has a non-empty value.
  5060  	// This may be used to include null fields in Patch requests.
  5061  	NullFields []string `json:"-"`
  5062  }
  5063  
  5064  func (s *GoogleCloudDialogflowV2beta1IntentMessageMediaContentResponseMediaObject) MarshalJSON() ([]byte, error) {
  5065  	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageMediaContentResponseMediaObject
  5066  	raw := NoMethod(*s)
  5067  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5068  }
  5069  
  5070  // GoogleCloudDialogflowV2beta1IntentMessageQuickReplies: The quick
  5071  // replies response message.
  5072  type GoogleCloudDialogflowV2beta1IntentMessageQuickReplies struct {
  5073  	// QuickReplies: Optional. The collection of quick replies.
  5074  	QuickReplies []string `json:"quickReplies,omitempty"`
  5075  
  5076  	// Title: Optional. The title of the collection of quick replies.
  5077  	Title string `json:"title,omitempty"`
  5078  
  5079  	// ForceSendFields is a list of field names (e.g. "QuickReplies") to
  5080  	// unconditionally include in API requests. By default, fields with
  5081  	// empty values are omitted from API requests. However, any non-pointer,
  5082  	// non-interface field appearing in ForceSendFields will be sent to the
  5083  	// server regardless of whether the field is empty or not. This may be
  5084  	// used to include empty fields in Patch requests.
  5085  	ForceSendFields []string `json:"-"`
  5086  
  5087  	// NullFields is a list of field names (e.g. "QuickReplies") to include
  5088  	// in API requests with the JSON null value. By default, fields with
  5089  	// empty values are omitted from API requests. However, any field with
  5090  	// an empty value appearing in NullFields will be sent to the server as
  5091  	// null. It is an error if a field in this list has a non-empty value.
  5092  	// This may be used to include null fields in Patch requests.
  5093  	NullFields []string `json:"-"`
  5094  }
  5095  
  5096  func (s *GoogleCloudDialogflowV2beta1IntentMessageQuickReplies) MarshalJSON() ([]byte, error) {
  5097  	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageQuickReplies
  5098  	raw := NoMethod(*s)
  5099  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5100  }
  5101  
  5102  // GoogleCloudDialogflowV2beta1IntentMessageRbmCardContent: Rich
  5103  // Business Messaging (RBM) Card content
  5104  type GoogleCloudDialogflowV2beta1IntentMessageRbmCardContent struct {
  5105  	// Description: Optional. Description of the card (at most 2000
  5106  	// bytes).
  5107  	//
  5108  	// At least one of the title, description or media must be set.
  5109  	Description string `json:"description,omitempty"`
  5110  
  5111  	// Media: Optional. However at least one of the title, description or
  5112  	// media must
  5113  	// be set. Media (image, GIF or a video) to include in the card.
  5114  	Media *GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia `json:"media,omitempty"`
  5115  
  5116  	// Suggestions: Optional. List of suggestions to include in the card.
  5117  	Suggestions []*GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion `json:"suggestions,omitempty"`
  5118  
  5119  	// Title: Optional. Title of the card (at most 200 bytes).
  5120  	//
  5121  	// At least one of the title, description or media must be set.
  5122  	Title string `json:"title,omitempty"`
  5123  
  5124  	// ForceSendFields is a list of field names (e.g. "Description") to
  5125  	// unconditionally include in API requests. By default, fields with
  5126  	// empty values are omitted from API requests. However, any non-pointer,
  5127  	// non-interface field appearing in ForceSendFields will be sent to the
  5128  	// server regardless of whether the field is empty or not. This may be
  5129  	// used to include empty fields in Patch requests.
  5130  	ForceSendFields []string `json:"-"`
  5131  
  5132  	// NullFields is a list of field names (e.g. "Description") to include
  5133  	// in API requests with the JSON null value. By default, fields with
  5134  	// empty values are omitted from API requests. However, any field with
  5135  	// an empty value appearing in NullFields will be sent to the server as
  5136  	// null. It is an error if a field in this list has a non-empty value.
  5137  	// This may be used to include null fields in Patch requests.
  5138  	NullFields []string `json:"-"`
  5139  }
  5140  
  5141  func (s *GoogleCloudDialogflowV2beta1IntentMessageRbmCardContent) MarshalJSON() ([]byte, error) {
  5142  	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageRbmCardContent
  5143  	raw := NoMethod(*s)
  5144  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5145  }
  5146  
  5147  // GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia: Rich
  5148  // Business Messaging (RBM) Media displayed in Cards
  5149  // The following media-types are currently supported:
  5150  //
  5151  // # Image Types
  5152  //
  5153  // * image/jpeg
  5154  // * image/jpg'
  5155  // * image/gif
  5156  // * image/png
  5157  //
  5158  // # Video Types
  5159  //
  5160  // * video/h263
  5161  // * video/m4v
  5162  // * video/mp4
  5163  // * video/mpeg
  5164  // * video/mpeg4
  5165  // * video/webm
  5166  type GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia struct {
  5167  	// FileUri: Required. Publicly reachable URI of the file. The RBM
  5168  	// platform
  5169  	// determines the MIME type of the file from the content-type field
  5170  	// in
  5171  	// the HTTP headers when the platform fetches the file. The
  5172  	// content-type
  5173  	// field must be present and accurate in the HTTP response from the URL.
  5174  	FileUri string `json:"fileUri,omitempty"`
  5175  
  5176  	// Height: Required for cards with vertical orientation. The height of
  5177  	// the media
  5178  	// within a rich card with a vertical layout.
  5179  	// (https://goo.gl/NeFCjz).
  5180  	// For a standalone card with horizontal layout, height is
  5181  	// not
  5182  	// customizable, and this field is ignored.
  5183  	//
  5184  	// Possible values:
  5185  	//   "HEIGHT_UNSPECIFIED" - Not specified.
  5186  	//   "SHORT" - 112 DP.
  5187  	//   "MEDIUM" - 168 DP.
  5188  	//   "TALL" - 264 DP. Not available for rich card carousels when the
  5189  	// card width
  5190  	// is set to small.
  5191  	Height string `json:"height,omitempty"`
  5192  
  5193  	// ThumbnailUri: Optional. Publicly reachable URI of the thumbnail.If
  5194  	// you don't
  5195  	// provide a thumbnail URI, the RBM platform displays a
  5196  	// blank
  5197  	// placeholder thumbnail until the user's device downloads the
  5198  	// file.
  5199  	// Depending on the user's setting, the file may not
  5200  	// download
  5201  	// automatically and may require the user to tap a download button.
  5202  	ThumbnailUri string `json:"thumbnailUri,omitempty"`
  5203  
  5204  	// ForceSendFields is a list of field names (e.g. "FileUri") to
  5205  	// unconditionally include in API requests. By default, fields with
  5206  	// empty values are omitted from API requests. However, any non-pointer,
  5207  	// non-interface field appearing in ForceSendFields will be sent to the
  5208  	// server regardless of whether the field is empty or not. This may be
  5209  	// used to include empty fields in Patch requests.
  5210  	ForceSendFields []string `json:"-"`
  5211  
  5212  	// NullFields is a list of field names (e.g. "FileUri") to include in
  5213  	// API requests with the JSON null value. By default, fields with empty
  5214  	// values are omitted from API requests. However, any field with an
  5215  	// empty value appearing in NullFields will be sent to the server as
  5216  	// null. It is an error if a field in this list has a non-empty value.
  5217  	// This may be used to include null fields in Patch requests.
  5218  	NullFields []string `json:"-"`
  5219  }
  5220  
  5221  func (s *GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia) MarshalJSON() ([]byte, error) {
  5222  	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia
  5223  	raw := NoMethod(*s)
  5224  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5225  }
  5226  
  5227  // GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard: Carousel
  5228  // Rich Business Messaging (RBM) rich card.
  5229  //
  5230  // Rich cards allow you to respond to users with more vivid content,
  5231  // e.g.
  5232  // with media and suggestions.
  5233  //
  5234  // For more details about RBM rich cards, please
  5235  // see:
  5236  // https://developers.google.com/business-communications/rcs-busines
  5237  // s-messaging/guides/build/messages/send#rich-cards
  5238  // If you want to show a single card with more control over the
  5239  // layout,
  5240  // please use RbmStandaloneCard instead.
  5241  type GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard struct {
  5242  	// CardContents: Required. The cards in the carousel. A carousel must
  5243  	// have at least
  5244  	// 2 cards and at most 10.
  5245  	CardContents []*GoogleCloudDialogflowV2beta1IntentMessageRbmCardContent `json:"cardContents,omitempty"`
  5246  
  5247  	// CardWidth: Required. The width of the cards in the carousel.
  5248  	//
  5249  	// Possible values:
  5250  	//   "CARD_WIDTH_UNSPECIFIED" - Not specified.
  5251  	//   "SMALL" - 120 DP. Note that tall media cannot be used.
  5252  	//   "MEDIUM" - 232 DP.
  5253  	CardWidth string `json:"cardWidth,omitempty"`
  5254  
  5255  	// ForceSendFields is a list of field names (e.g. "CardContents") to
  5256  	// unconditionally include in API requests. By default, fields with
  5257  	// empty values are omitted from API requests. However, any non-pointer,
  5258  	// non-interface field appearing in ForceSendFields will be sent to the
  5259  	// server regardless of whether the field is empty or not. This may be
  5260  	// used to include empty fields in Patch requests.
  5261  	ForceSendFields []string `json:"-"`
  5262  
  5263  	// NullFields is a list of field names (e.g. "CardContents") to include
  5264  	// in API requests with the JSON null value. By default, fields with
  5265  	// empty values are omitted from API requests. However, any field with
  5266  	// an empty value appearing in NullFields will be sent to the server as
  5267  	// null. It is an error if a field in this list has a non-empty value.
  5268  	// This may be used to include null fields in Patch requests.
  5269  	NullFields []string `json:"-"`
  5270  }
  5271  
  5272  func (s *GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard) MarshalJSON() ([]byte, error) {
  5273  	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard
  5274  	raw := NoMethod(*s)
  5275  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5276  }
  5277  
  5278  // GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard:
  5279  // Standalone Rich Business Messaging (RBM) rich card.
  5280  //
  5281  // Rich cards allow you to respond to users with more vivid content,
  5282  // e.g.
  5283  // with media and suggestions.
  5284  //
  5285  // For more details about RBM rich cards, please
  5286  // see:
  5287  // https://developers.google.com/business-communications/rcs-busines
  5288  // s-messaging/guides/build/messages/send#rich-cards
  5289  // You can group multiple rich cards into one using RbmCarouselCard
  5290  // but
  5291  // carousel cards will give you less control over the card layout.
  5292  type GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard struct {
  5293  	// CardContent: Required. Card content.
  5294  	CardContent *GoogleCloudDialogflowV2beta1IntentMessageRbmCardContent `json:"cardContent,omitempty"`
  5295  
  5296  	// CardOrientation: Required. Orientation of the card.
  5297  	//
  5298  	// Possible values:
  5299  	//   "CARD_ORIENTATION_UNSPECIFIED" - Not specified.
  5300  	//   "HORIZONTAL" - Horizontal layout.
  5301  	//   "VERTICAL" - Vertical layout.
  5302  	CardOrientation string `json:"cardOrientation,omitempty"`
  5303  
  5304  	// ThumbnailImageAlignment: Required if orientation is horizontal.
  5305  	// Image preview alignment for standalone cards with horizontal layout.
  5306  	//
  5307  	// Possible values:
  5308  	//   "THUMBNAIL_IMAGE_ALIGNMENT_UNSPECIFIED" - Not specified.
  5309  	//   "LEFT" - Thumbnail preview is left-aligned.
  5310  	//   "RIGHT" - Thumbnail preview is right-aligned.
  5311  	ThumbnailImageAlignment string `json:"thumbnailImageAlignment,omitempty"`
  5312  
  5313  	// ForceSendFields is a list of field names (e.g. "CardContent") to
  5314  	// unconditionally include in API requests. By default, fields with
  5315  	// empty values are omitted from API requests. However, any non-pointer,
  5316  	// non-interface field appearing in ForceSendFields will be sent to the
  5317  	// server regardless of whether the field is empty or not. This may be
  5318  	// used to include empty fields in Patch requests.
  5319  	ForceSendFields []string `json:"-"`
  5320  
  5321  	// NullFields is a list of field names (e.g. "CardContent") to include
  5322  	// in API requests with the JSON null value. By default, fields with
  5323  	// empty values are omitted from API requests. However, any field with
  5324  	// an empty value appearing in NullFields will be sent to the server as
  5325  	// null. It is an error if a field in this list has a non-empty value.
  5326  	// This may be used to include null fields in Patch requests.
  5327  	NullFields []string `json:"-"`
  5328  }
  5329  
  5330  func (s *GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard) MarshalJSON() ([]byte, error) {
  5331  	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard
  5332  	raw := NoMethod(*s)
  5333  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5334  }
  5335  
  5336  // GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedAction: Rich
  5337  // Business Messaging (RBM) suggested client-side action that the
  5338  // user
  5339  // can choose from the card.
  5340  type GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedAction struct {
  5341  	// Dial: Suggested client side action: Dial a phone number
  5342  	Dial *GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionDial `json:"dial,omitempty"`
  5343  
  5344  	// OpenUrl: Suggested client side action: Open a URI on device
  5345  	OpenUrl *GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionOpenUri `json:"openUrl,omitempty"`
  5346  
  5347  	// PostbackData: Opaque payload that the Dialogflow receives in a user
  5348  	// event
  5349  	// when the user taps the suggested action. This data will be
  5350  	// also
  5351  	// forwarded to webhook to allow performing custom business logic.
  5352  	PostbackData string `json:"postbackData,omitempty"`
  5353  
  5354  	// ShareLocation: Suggested client side action: Share user location
  5355  	ShareLocation *GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionShareLocation `json:"shareLocation,omitempty"`
  5356  
  5357  	// Text: Text to display alongside the action.
  5358  	Text string `json:"text,omitempty"`
  5359  
  5360  	// ForceSendFields is a list of field names (e.g. "Dial") to
  5361  	// unconditionally include in API requests. By default, fields with
  5362  	// empty values are omitted from API requests. However, any non-pointer,
  5363  	// non-interface field appearing in ForceSendFields will be sent to the
  5364  	// server regardless of whether the field is empty or not. This may be
  5365  	// used to include empty fields in Patch requests.
  5366  	ForceSendFields []string `json:"-"`
  5367  
  5368  	// NullFields is a list of field names (e.g. "Dial") to include in API
  5369  	// requests with the JSON null value. By default, fields with empty
  5370  	// values are omitted from API requests. However, any field with an
  5371  	// empty value appearing in NullFields will be sent to the server as
  5372  	// null. It is an error if a field in this list has a non-empty value.
  5373  	// This may be used to include null fields in Patch requests.
  5374  	NullFields []string `json:"-"`
  5375  }
  5376  
  5377  func (s *GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedAction) MarshalJSON() ([]byte, error) {
  5378  	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedAction
  5379  	raw := NoMethod(*s)
  5380  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5381  }
  5382  
  5383  // GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggeste
  5384  // dActionDial: Opens the user's default dialer app with the specified
  5385  // phone number
  5386  // but does not dial automatically (https://goo.gl/ergbB2).
  5387  type GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionDial struct {
  5388  	// PhoneNumber: Required. The phone number to fill in the default dialer
  5389  	// app.
  5390  	// This field should be in
  5391  	// [E.164](https://en.wikipedia.org/wiki/E.164)
  5392  	// format. An example of a correctly formatted phone
  5393  	// number:
  5394  	// +15556767888.
  5395  	PhoneNumber string `json:"phoneNumber,omitempty"`
  5396  
  5397  	// ForceSendFields is a list of field names (e.g. "PhoneNumber") to
  5398  	// unconditionally include in API requests. By default, fields with
  5399  	// empty values are omitted from API requests. However, any non-pointer,
  5400  	// non-interface field appearing in ForceSendFields will be sent to the
  5401  	// server regardless of whether the field is empty or not. This may be
  5402  	// used to include empty fields in Patch requests.
  5403  	ForceSendFields []string `json:"-"`
  5404  
  5405  	// NullFields is a list of field names (e.g. "PhoneNumber") to include
  5406  	// in API requests with the JSON null value. By default, fields with
  5407  	// empty values are omitted from API requests. However, any field with
  5408  	// an empty value appearing in NullFields will be sent to the server as
  5409  	// null. It is an error if a field in this list has a non-empty value.
  5410  	// This may be used to include null fields in Patch requests.
  5411  	NullFields []string `json:"-"`
  5412  }
  5413  
  5414  func (s *GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionDial) MarshalJSON() ([]byte, error) {
  5415  	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionDial
  5416  	raw := NoMethod(*s)
  5417  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5418  }
  5419  
  5420  // GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggeste
  5421  // dActionOpenUri: Opens the user's default web browser app to the
  5422  // specified uri
  5423  // (https://goo.gl/6GLJD2). If the user has an app installed that
  5424  // is
  5425  // registered as the default handler for the URL, then this app will
  5426  // be
  5427  // opened instead, and its icon will be used in the suggested action UI.
  5428  type GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionOpenUri struct {
  5429  	// Uri: Required. The uri to open on the user device
  5430  	Uri string `json:"uri,omitempty"`
  5431  
  5432  	// ForceSendFields is a list of field names (e.g. "Uri") to
  5433  	// unconditionally include in API requests. By default, fields with
  5434  	// empty values are omitted from API requests. However, any non-pointer,
  5435  	// non-interface field appearing in ForceSendFields will be sent to the
  5436  	// server regardless of whether the field is empty or not. This may be
  5437  	// used to include empty fields in Patch requests.
  5438  	ForceSendFields []string `json:"-"`
  5439  
  5440  	// NullFields is a list of field names (e.g. "Uri") to include in API
  5441  	// requests with the JSON null value. By default, fields with empty
  5442  	// values are omitted from API requests. However, any field with an
  5443  	// empty value appearing in NullFields will be sent to the server as
  5444  	// null. It is an error if a field in this list has a non-empty value.
  5445  	// This may be used to include null fields in Patch requests.
  5446  	NullFields []string `json:"-"`
  5447  }
  5448  
  5449  func (s *GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionOpenUri) MarshalJSON() ([]byte, error) {
  5450  	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionOpenUri
  5451  	raw := NoMethod(*s)
  5452  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5453  }
  5454  
  5455  // GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggeste
  5456  // dActionShareLocation: Opens the device's location chooser so the user
  5457  // can pick a location
  5458  // to send back to the agent (https://goo.gl/GXotJW).
  5459  type GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionShareLocation struct {
  5460  }
  5461  
  5462  // GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedReply: Rich
  5463  // Business Messaging (RBM) suggested reply that the user can
  5464  // click
  5465  // instead of typing in their own response.
  5466  type GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedReply struct {
  5467  	// PostbackData: Opaque payload that the Dialogflow receives in a user
  5468  	// event
  5469  	// when the user taps the suggested reply. This data will be
  5470  	// also
  5471  	// forwarded to webhook to allow performing custom business logic.
  5472  	PostbackData string `json:"postbackData,omitempty"`
  5473  
  5474  	// Text: Suggested reply text.
  5475  	Text string `json:"text,omitempty"`
  5476  
  5477  	// ForceSendFields is a list of field names (e.g. "PostbackData") to
  5478  	// unconditionally include in API requests. By default, fields with
  5479  	// empty values are omitted from API requests. However, any non-pointer,
  5480  	// non-interface field appearing in ForceSendFields will be sent to the
  5481  	// server regardless of whether the field is empty or not. This may be
  5482  	// used to include empty fields in Patch requests.
  5483  	ForceSendFields []string `json:"-"`
  5484  
  5485  	// NullFields is a list of field names (e.g. "PostbackData") to include
  5486  	// in API requests with the JSON null value. By default, fields with
  5487  	// empty values are omitted from API requests. However, any field with
  5488  	// an empty value appearing in NullFields will be sent to the server as
  5489  	// null. It is an error if a field in this list has a non-empty value.
  5490  	// This may be used to include null fields in Patch requests.
  5491  	NullFields []string `json:"-"`
  5492  }
  5493  
  5494  func (s *GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedReply) MarshalJSON() ([]byte, error) {
  5495  	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedReply
  5496  	raw := NoMethod(*s)
  5497  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5498  }
  5499  
  5500  // GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion: Rich Business
  5501  // Messaging (RBM) suggestion. Suggestions allow user to
  5502  // easily select/click a predefined response or perform an action
  5503  // (like
  5504  // opening a web uri).
  5505  type GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion struct {
  5506  	// Action: Predefined client side actions that user can choose
  5507  	Action *GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedAction `json:"action,omitempty"`
  5508  
  5509  	// Reply: Predefined replies for user to select instead of typing
  5510  	Reply *GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedReply `json:"reply,omitempty"`
  5511  
  5512  	// ForceSendFields is a list of field names (e.g. "Action") to
  5513  	// unconditionally include in API requests. By default, fields with
  5514  	// empty values are omitted from API requests. However, any non-pointer,
  5515  	// non-interface field appearing in ForceSendFields will be sent to the
  5516  	// server regardless of whether the field is empty or not. This may be
  5517  	// used to include empty fields in Patch requests.
  5518  	ForceSendFields []string `json:"-"`
  5519  
  5520  	// NullFields is a list of field names (e.g. "Action") to include in API
  5521  	// requests with the JSON null value. By default, fields with empty
  5522  	// values are omitted from API requests. However, any field with an
  5523  	// empty value appearing in NullFields will be sent to the server as
  5524  	// null. It is an error if a field in this list has a non-empty value.
  5525  	// This may be used to include null fields in Patch requests.
  5526  	NullFields []string `json:"-"`
  5527  }
  5528  
  5529  func (s *GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion) MarshalJSON() ([]byte, error) {
  5530  	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion
  5531  	raw := NoMethod(*s)
  5532  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5533  }
  5534  
  5535  // GoogleCloudDialogflowV2beta1IntentMessageRbmText: Rich Business
  5536  // Messaging (RBM) text response with suggestions.
  5537  type GoogleCloudDialogflowV2beta1IntentMessageRbmText struct {
  5538  	// RbmSuggestion: Optional. One or more suggestions to show to the user.
  5539  	RbmSuggestion []*GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion `json:"rbmSuggestion,omitempty"`
  5540  
  5541  	// Text: Required. Text sent and displayed to the user.
  5542  	Text string `json:"text,omitempty"`
  5543  
  5544  	// ForceSendFields is a list of field names (e.g. "RbmSuggestion") to
  5545  	// unconditionally include in API requests. By default, fields with
  5546  	// empty values are omitted from API requests. However, any non-pointer,
  5547  	// non-interface field appearing in ForceSendFields will be sent to the
  5548  	// server regardless of whether the field is empty or not. This may be
  5549  	// used to include empty fields in Patch requests.
  5550  	ForceSendFields []string `json:"-"`
  5551  
  5552  	// NullFields is a list of field names (e.g. "RbmSuggestion") to include
  5553  	// in API requests with the JSON null value. By default, fields with
  5554  	// empty values are omitted from API requests. However, any field with
  5555  	// an empty value appearing in NullFields will be sent to the server as
  5556  	// null. It is an error if a field in this list has a non-empty value.
  5557  	// This may be used to include null fields in Patch requests.
  5558  	NullFields []string `json:"-"`
  5559  }
  5560  
  5561  func (s *GoogleCloudDialogflowV2beta1IntentMessageRbmText) MarshalJSON() ([]byte, error) {
  5562  	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageRbmText
  5563  	raw := NoMethod(*s)
  5564  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5565  }
  5566  
  5567  // GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo: Additional
  5568  // info about the select item for when it is triggered in a
  5569  // dialog.
  5570  type GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo struct {
  5571  	// Key: Required. A unique key that will be sent back to the agent if
  5572  	// this
  5573  	// response is given.
  5574  	Key string `json:"key,omitempty"`
  5575  
  5576  	// Synonyms: Optional. A list of synonyms that can also be used to
  5577  	// trigger this
  5578  	// item in dialog.
  5579  	Synonyms []string `json:"synonyms,omitempty"`
  5580  
  5581  	// ForceSendFields is a list of field names (e.g. "Key") to
  5582  	// unconditionally include in API requests. By default, fields with
  5583  	// empty values are omitted from API requests. However, any non-pointer,
  5584  	// non-interface field appearing in ForceSendFields will be sent to the
  5585  	// server regardless of whether the field is empty or not. This may be
  5586  	// used to include empty fields in Patch requests.
  5587  	ForceSendFields []string `json:"-"`
  5588  
  5589  	// NullFields is a list of field names (e.g. "Key") to include in API
  5590  	// requests with the JSON null value. By default, fields with empty
  5591  	// values are omitted from API requests. However, any field with an
  5592  	// empty value appearing in NullFields will be sent to the server as
  5593  	// null. It is an error if a field in this list has a non-empty value.
  5594  	// This may be used to include null fields in Patch requests.
  5595  	NullFields []string `json:"-"`
  5596  }
  5597  
  5598  func (s *GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo) MarshalJSON() ([]byte, error) {
  5599  	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo
  5600  	raw := NoMethod(*s)
  5601  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5602  }
  5603  
  5604  // GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse: The simple
  5605  // response message containing speech or text.
  5606  type GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse struct {
  5607  	// DisplayText: Optional. The text to display.
  5608  	DisplayText string `json:"displayText,omitempty"`
  5609  
  5610  	// Ssml: One of text_to_speech or ssml must be provided. Structured
  5611  	// spoken
  5612  	// response to the user in the SSML format. Mutually exclusive
  5613  	// with
  5614  	// text_to_speech.
  5615  	Ssml string `json:"ssml,omitempty"`
  5616  
  5617  	// TextToSpeech: One of text_to_speech or ssml must be provided. The
  5618  	// plain text of the
  5619  	// speech output. Mutually exclusive with ssml.
  5620  	TextToSpeech string `json:"textToSpeech,omitempty"`
  5621  
  5622  	// ForceSendFields is a list of field names (e.g. "DisplayText") to
  5623  	// unconditionally include in API requests. By default, fields with
  5624  	// empty values are omitted from API requests. However, any non-pointer,
  5625  	// non-interface field appearing in ForceSendFields will be sent to the
  5626  	// server regardless of whether the field is empty or not. This may be
  5627  	// used to include empty fields in Patch requests.
  5628  	ForceSendFields []string `json:"-"`
  5629  
  5630  	// NullFields is a list of field names (e.g. "DisplayText") to include
  5631  	// in API requests with the JSON null value. By default, fields with
  5632  	// empty values are omitted from API requests. However, any field with
  5633  	// an empty value appearing in NullFields will be sent to the server as
  5634  	// null. It is an error if a field in this list has a non-empty value.
  5635  	// This may be used to include null fields in Patch requests.
  5636  	NullFields []string `json:"-"`
  5637  }
  5638  
  5639  func (s *GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse) MarshalJSON() ([]byte, error) {
  5640  	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse
  5641  	raw := NoMethod(*s)
  5642  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5643  }
  5644  
  5645  // GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses: The
  5646  // collection of simple response candidates.
  5647  // This message in `QueryResult.fulfillment_messages`
  5648  // and
  5649  // `WebhookResponse.fulfillment_messages` should contain only
  5650  // one
  5651  // `SimpleResponse`.
  5652  type GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses struct {
  5653  	// SimpleResponses: Required. The list of simple responses.
  5654  	SimpleResponses []*GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse `json:"simpleResponses,omitempty"`
  5655  
  5656  	// ForceSendFields is a list of field names (e.g. "SimpleResponses") to
  5657  	// unconditionally include in API requests. By default, fields with
  5658  	// empty values are omitted from API requests. However, any non-pointer,
  5659  	// non-interface field appearing in ForceSendFields will be sent to the
  5660  	// server regardless of whether the field is empty or not. This may be
  5661  	// used to include empty fields in Patch requests.
  5662  	ForceSendFields []string `json:"-"`
  5663  
  5664  	// NullFields is a list of field names (e.g. "SimpleResponses") to
  5665  	// include in API requests with the JSON null value. By default, fields
  5666  	// with empty values are omitted from API requests. However, any field
  5667  	// with an empty value appearing in NullFields will be sent to the
  5668  	// server as null. It is an error if a field in this list has a
  5669  	// non-empty value. This may be used to include null fields in Patch
  5670  	// requests.
  5671  	NullFields []string `json:"-"`
  5672  }
  5673  
  5674  func (s *GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses) MarshalJSON() ([]byte, error) {
  5675  	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses
  5676  	raw := NoMethod(*s)
  5677  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5678  }
  5679  
  5680  // GoogleCloudDialogflowV2beta1IntentMessageSuggestion: The suggestion
  5681  // chip message that the user can tap to quickly post a reply
  5682  // to the conversation.
  5683  type GoogleCloudDialogflowV2beta1IntentMessageSuggestion struct {
  5684  	// Title: Required. The text shown the in the suggestion chip.
  5685  	Title string `json:"title,omitempty"`
  5686  
  5687  	// ForceSendFields is a list of field names (e.g. "Title") to
  5688  	// unconditionally include in API requests. By default, fields with
  5689  	// empty values are omitted from API requests. However, any non-pointer,
  5690  	// non-interface field appearing in ForceSendFields will be sent to the
  5691  	// server regardless of whether the field is empty or not. This may be
  5692  	// used to include empty fields in Patch requests.
  5693  	ForceSendFields []string `json:"-"`
  5694  
  5695  	// NullFields is a list of field names (e.g. "Title") to include in API
  5696  	// requests with the JSON null value. By default, fields with empty
  5697  	// values are omitted from API requests. However, any field with an
  5698  	// empty value appearing in NullFields will be sent to the server as
  5699  	// null. It is an error if a field in this list has a non-empty value.
  5700  	// This may be used to include null fields in Patch requests.
  5701  	NullFields []string `json:"-"`
  5702  }
  5703  
  5704  func (s *GoogleCloudDialogflowV2beta1IntentMessageSuggestion) MarshalJSON() ([]byte, error) {
  5705  	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageSuggestion
  5706  	raw := NoMethod(*s)
  5707  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5708  }
  5709  
  5710  // GoogleCloudDialogflowV2beta1IntentMessageSuggestions: The collection
  5711  // of suggestions.
  5712  type GoogleCloudDialogflowV2beta1IntentMessageSuggestions struct {
  5713  	// Suggestions: Required. The list of suggested replies.
  5714  	Suggestions []*GoogleCloudDialogflowV2beta1IntentMessageSuggestion `json:"suggestions,omitempty"`
  5715  
  5716  	// ForceSendFields is a list of field names (e.g. "Suggestions") to
  5717  	// unconditionally include in API requests. By default, fields with
  5718  	// empty values are omitted from API requests. However, any non-pointer,
  5719  	// non-interface field appearing in ForceSendFields will be sent to the
  5720  	// server regardless of whether the field is empty or not. This may be
  5721  	// used to include empty fields in Patch requests.
  5722  	ForceSendFields []string `json:"-"`
  5723  
  5724  	// NullFields is a list of field names (e.g. "Suggestions") to include
  5725  	// in API requests with the JSON null value. By default, fields with
  5726  	// empty values are omitted from API requests. However, any field with
  5727  	// an empty value appearing in NullFields will be sent to the server as
  5728  	// null. It is an error if a field in this list has a non-empty value.
  5729  	// This may be used to include null fields in Patch requests.
  5730  	NullFields []string `json:"-"`
  5731  }
  5732  
  5733  func (s *GoogleCloudDialogflowV2beta1IntentMessageSuggestions) MarshalJSON() ([]byte, error) {
  5734  	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageSuggestions
  5735  	raw := NoMethod(*s)
  5736  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5737  }
  5738  
  5739  // GoogleCloudDialogflowV2beta1IntentMessageTableCard: Table card for
  5740  // Actions on Google.
  5741  type GoogleCloudDialogflowV2beta1IntentMessageTableCard struct {
  5742  	// Buttons: Optional. List of buttons for the card.
  5743  	Buttons []*GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton `json:"buttons,omitempty"`
  5744  
  5745  	// ColumnProperties: Optional. Display properties for the columns in
  5746  	// this table.
  5747  	ColumnProperties []*GoogleCloudDialogflowV2beta1IntentMessageColumnProperties `json:"columnProperties,omitempty"`
  5748  
  5749  	// Image: Optional. Image which should be displayed on the card.
  5750  	Image *GoogleCloudDialogflowV2beta1IntentMessageImage `json:"image,omitempty"`
  5751  
  5752  	// Rows: Optional. Rows in this table of data.
  5753  	Rows []*GoogleCloudDialogflowV2beta1IntentMessageTableCardRow `json:"rows,omitempty"`
  5754  
  5755  	// Subtitle: Optional. Subtitle to the title.
  5756  	Subtitle string `json:"subtitle,omitempty"`
  5757  
  5758  	// Title: Required. Title of the card.
  5759  	Title string `json:"title,omitempty"`
  5760  
  5761  	// ForceSendFields is a list of field names (e.g. "Buttons") to
  5762  	// unconditionally include in API requests. By default, fields with
  5763  	// empty values are omitted from API requests. However, any non-pointer,
  5764  	// non-interface field appearing in ForceSendFields will be sent to the
  5765  	// server regardless of whether the field is empty or not. This may be
  5766  	// used to include empty fields in Patch requests.
  5767  	ForceSendFields []string `json:"-"`
  5768  
  5769  	// NullFields is a list of field names (e.g. "Buttons") to include in
  5770  	// API requests with the JSON null value. By default, fields with empty
  5771  	// values are omitted from API requests. However, any field with an
  5772  	// empty value appearing in NullFields will be sent to the server as
  5773  	// null. It is an error if a field in this list has a non-empty value.
  5774  	// This may be used to include null fields in Patch requests.
  5775  	NullFields []string `json:"-"`
  5776  }
  5777  
  5778  func (s *GoogleCloudDialogflowV2beta1IntentMessageTableCard) MarshalJSON() ([]byte, error) {
  5779  	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageTableCard
  5780  	raw := NoMethod(*s)
  5781  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5782  }
  5783  
  5784  // GoogleCloudDialogflowV2beta1IntentMessageTableCardCell: Cell of
  5785  // TableCardRow.
  5786  type GoogleCloudDialogflowV2beta1IntentMessageTableCardCell struct {
  5787  	// Text: Required. Text in this cell.
  5788  	Text string `json:"text,omitempty"`
  5789  
  5790  	// ForceSendFields is a list of field names (e.g. "Text") to
  5791  	// unconditionally include in API requests. By default, fields with
  5792  	// empty values are omitted from API requests. However, any non-pointer,
  5793  	// non-interface field appearing in ForceSendFields will be sent to the
  5794  	// server regardless of whether the field is empty or not. This may be
  5795  	// used to include empty fields in Patch requests.
  5796  	ForceSendFields []string `json:"-"`
  5797  
  5798  	// NullFields is a list of field names (e.g. "Text") to include in API
  5799  	// requests with the JSON null value. By default, fields with empty
  5800  	// values are omitted from API requests. However, any field with an
  5801  	// empty value appearing in NullFields will be sent to the server as
  5802  	// null. It is an error if a field in this list has a non-empty value.
  5803  	// This may be used to include null fields in Patch requests.
  5804  	NullFields []string `json:"-"`
  5805  }
  5806  
  5807  func (s *GoogleCloudDialogflowV2beta1IntentMessageTableCardCell) MarshalJSON() ([]byte, error) {
  5808  	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageTableCardCell
  5809  	raw := NoMethod(*s)
  5810  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5811  }
  5812  
  5813  // GoogleCloudDialogflowV2beta1IntentMessageTableCardRow: Row of
  5814  // TableCard.
  5815  type GoogleCloudDialogflowV2beta1IntentMessageTableCardRow struct {
  5816  	// Cells: Optional. List of cells that make up this row.
  5817  	Cells []*GoogleCloudDialogflowV2beta1IntentMessageTableCardCell `json:"cells,omitempty"`
  5818  
  5819  	// DividerAfter: Optional. Whether to add a visual divider after this
  5820  	// row.
  5821  	DividerAfter bool `json:"dividerAfter,omitempty"`
  5822  
  5823  	// ForceSendFields is a list of field names (e.g. "Cells") to
  5824  	// unconditionally include in API requests. By default, fields with
  5825  	// empty values are omitted from API requests. However, any non-pointer,
  5826  	// non-interface field appearing in ForceSendFields will be sent to the
  5827  	// server regardless of whether the field is empty or not. This may be
  5828  	// used to include empty fields in Patch requests.
  5829  	ForceSendFields []string `json:"-"`
  5830  
  5831  	// NullFields is a list of field names (e.g. "Cells") to include in API
  5832  	// requests with the JSON null value. By default, fields with empty
  5833  	// values are omitted from API requests. However, any field with an
  5834  	// empty value appearing in NullFields will be sent to the server as
  5835  	// null. It is an error if a field in this list has a non-empty value.
  5836  	// This may be used to include null fields in Patch requests.
  5837  	NullFields []string `json:"-"`
  5838  }
  5839  
  5840  func (s *GoogleCloudDialogflowV2beta1IntentMessageTableCardRow) MarshalJSON() ([]byte, error) {
  5841  	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageTableCardRow
  5842  	raw := NoMethod(*s)
  5843  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5844  }
  5845  
  5846  // GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio: Plays
  5847  // audio from a file in Telephony Gateway.
  5848  type GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio struct {
  5849  	// AudioUri: Required. URI to a Google Cloud Storage object containing
  5850  	// the audio to
  5851  	// play, e.g., "gs://bucket/object". The object must contain a
  5852  	// single
  5853  	// channel (mono) of linear PCM audio (2 bytes / sample) at 8kHz.
  5854  	//
  5855  	// This object must be readable by the
  5856  	// `service-<Project
  5857  	// Number>@gcp-sa-dialogflow.iam.gserviceaccount.com` service
  5858  	// account
  5859  	// where <Project Number> is the number of the Telephony Gateway
  5860  	// project
  5861  	// (usually the same as the Dialogflow agent project). If the Google
  5862  	// Cloud
  5863  	// Storage bucket is in the Telephony Gateway project, this permission
  5864  	// is
  5865  	// added by default when enabling the Dialogflow V2 API.
  5866  	//
  5867  	// For audio from other sources, consider using
  5868  	// the
  5869  	// `TelephonySynthesizeSpeech` message with SSML.
  5870  	AudioUri string `json:"audioUri,omitempty"`
  5871  
  5872  	// ForceSendFields is a list of field names (e.g. "AudioUri") to
  5873  	// unconditionally include in API requests. By default, fields with
  5874  	// empty values are omitted from API requests. However, any non-pointer,
  5875  	// non-interface field appearing in ForceSendFields will be sent to the
  5876  	// server regardless of whether the field is empty or not. This may be
  5877  	// used to include empty fields in Patch requests.
  5878  	ForceSendFields []string `json:"-"`
  5879  
  5880  	// NullFields is a list of field names (e.g. "AudioUri") to include in
  5881  	// API requests with the JSON null value. By default, fields with empty
  5882  	// values are omitted from API requests. However, any field with an
  5883  	// empty value appearing in NullFields will be sent to the server as
  5884  	// null. It is an error if a field in this list has a non-empty value.
  5885  	// This may be used to include null fields in Patch requests.
  5886  	NullFields []string `json:"-"`
  5887  }
  5888  
  5889  func (s *GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio) MarshalJSON() ([]byte, error) {
  5890  	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio
  5891  	raw := NoMethod(*s)
  5892  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5893  }
  5894  
  5895  // GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech:
  5896  // Synthesizes speech and plays back the synthesized audio to the caller
  5897  // in
  5898  // Telephony Gateway.
  5899  //
  5900  // Telephony Gateway takes the synthesizer settings
  5901  // from
  5902  // `DetectIntentResponse.output_audio_config` which can either be set
  5903  // at request-level or can come from the agent-level synthesizer config.
  5904  type GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech struct {
  5905  	// Ssml: The SSML to be synthesized. For more information,
  5906  	// see
  5907  	// [SSML](https://developers.google.com/actions/reference/ssml).
  5908  	Ssml string `json:"ssml,omitempty"`
  5909  
  5910  	// Text: The raw text to be synthesized.
  5911  	Text string `json:"text,omitempty"`
  5912  
  5913  	// ForceSendFields is a list of field names (e.g. "Ssml") to
  5914  	// unconditionally include in API requests. By default, fields with
  5915  	// empty values are omitted from API requests. However, any non-pointer,
  5916  	// non-interface field appearing in ForceSendFields will be sent to the
  5917  	// server regardless of whether the field is empty or not. This may be
  5918  	// used to include empty fields in Patch requests.
  5919  	ForceSendFields []string `json:"-"`
  5920  
  5921  	// NullFields is a list of field names (e.g. "Ssml") to include in API
  5922  	// requests with the JSON null value. By default, fields with empty
  5923  	// values are omitted from API requests. However, any field with an
  5924  	// empty value appearing in NullFields will be sent to the server as
  5925  	// null. It is an error if a field in this list has a non-empty value.
  5926  	// This may be used to include null fields in Patch requests.
  5927  	NullFields []string `json:"-"`
  5928  }
  5929  
  5930  func (s *GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech) MarshalJSON() ([]byte, error) {
  5931  	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech
  5932  	raw := NoMethod(*s)
  5933  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5934  }
  5935  
  5936  // GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall:
  5937  // Transfers the call in Telephony Gateway.
  5938  type GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall struct {
  5939  	// PhoneNumber: Required. The phone number to transfer the call to
  5940  	// in [E.164 format](https://en.wikipedia.org/wiki/E.164).
  5941  	//
  5942  	// We currently only allow transferring to US numbers (+1xxxyyyzzzz).
  5943  	PhoneNumber string `json:"phoneNumber,omitempty"`
  5944  
  5945  	// ForceSendFields is a list of field names (e.g. "PhoneNumber") to
  5946  	// unconditionally include in API requests. By default, fields with
  5947  	// empty values are omitted from API requests. However, any non-pointer,
  5948  	// non-interface field appearing in ForceSendFields will be sent to the
  5949  	// server regardless of whether the field is empty or not. This may be
  5950  	// used to include empty fields in Patch requests.
  5951  	ForceSendFields []string `json:"-"`
  5952  
  5953  	// NullFields is a list of field names (e.g. "PhoneNumber") to include
  5954  	// in API requests with the JSON null value. By default, fields with
  5955  	// empty values are omitted from API requests. However, any field with
  5956  	// an empty value appearing in NullFields will be sent to the server as
  5957  	// null. It is an error if a field in this list has a non-empty value.
  5958  	// This may be used to include null fields in Patch requests.
  5959  	NullFields []string `json:"-"`
  5960  }
  5961  
  5962  func (s *GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall) MarshalJSON() ([]byte, error) {
  5963  	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall
  5964  	raw := NoMethod(*s)
  5965  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5966  }
  5967  
  5968  // GoogleCloudDialogflowV2beta1IntentMessageText: The text response
  5969  // message.
  5970  type GoogleCloudDialogflowV2beta1IntentMessageText struct {
  5971  	// Text: Optional. The collection of the agent's responses.
  5972  	Text []string `json:"text,omitempty"`
  5973  
  5974  	// ForceSendFields is a list of field names (e.g. "Text") to
  5975  	// unconditionally include in API requests. By default, fields with
  5976  	// empty values are omitted from API requests. However, any non-pointer,
  5977  	// non-interface field appearing in ForceSendFields will be sent to the
  5978  	// server regardless of whether the field is empty or not. This may be
  5979  	// used to include empty fields in Patch requests.
  5980  	ForceSendFields []string `json:"-"`
  5981  
  5982  	// NullFields is a list of field names (e.g. "Text") to include in API
  5983  	// requests with the JSON null value. By default, fields with empty
  5984  	// values are omitted from API requests. However, any field with an
  5985  	// empty value appearing in NullFields will be sent to the server as
  5986  	// null. It is an error if a field in this list has a non-empty value.
  5987  	// This may be used to include null fields in Patch requests.
  5988  	NullFields []string `json:"-"`
  5989  }
  5990  
  5991  func (s *GoogleCloudDialogflowV2beta1IntentMessageText) MarshalJSON() ([]byte, error) {
  5992  	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageText
  5993  	raw := NoMethod(*s)
  5994  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5995  }
  5996  
  5997  // GoogleCloudDialogflowV2beta1IntentParameter: Represents intent
  5998  // parameters.
  5999  type GoogleCloudDialogflowV2beta1IntentParameter struct {
  6000  	// DefaultValue: Optional. The default value to use when the `value`
  6001  	// yields an empty
  6002  	// result.
  6003  	// Default values can be extracted from contexts by using the
  6004  	// following
  6005  	// syntax: `#context_name.parameter_name`.
  6006  	DefaultValue string `json:"defaultValue,omitempty"`
  6007  
  6008  	// DisplayName: Required. The name of the parameter.
  6009  	DisplayName string `json:"displayName,omitempty"`
  6010  
  6011  	// EntityTypeDisplayName: Optional. The name of the entity type,
  6012  	// prefixed with `@`, that
  6013  	// describes values of the parameter. If the parameter is
  6014  	// required, this must be provided.
  6015  	EntityTypeDisplayName string `json:"entityTypeDisplayName,omitempty"`
  6016  
  6017  	// IsList: Optional. Indicates whether the parameter represents a list
  6018  	// of values.
  6019  	IsList bool `json:"isList,omitempty"`
  6020  
  6021  	// Mandatory: Optional. Indicates whether the parameter is required.
  6022  	// That is,
  6023  	// whether the intent cannot be completed without collecting the
  6024  	// parameter
  6025  	// value.
  6026  	Mandatory bool `json:"mandatory,omitempty"`
  6027  
  6028  	// Name: The unique identifier of this parameter.
  6029  	Name string `json:"name,omitempty"`
  6030  
  6031  	// Prompts: Optional. The collection of prompts that the agent can
  6032  	// present to the
  6033  	// user in order to collect a value for the parameter.
  6034  	Prompts []string `json:"prompts,omitempty"`
  6035  
  6036  	// Value: Optional. The definition of the parameter value. It can be:
  6037  	//
  6038  	// - a constant string,
  6039  	// - a parameter value defined as `$parameter_name`,
  6040  	// - an original parameter value defined as
  6041  	// `$parameter_name.original`,
  6042  	// - a parameter value from some context defined as
  6043  	//   `#context_name.parameter_name`.
  6044  	Value string `json:"value,omitempty"`
  6045  
  6046  	// ForceSendFields is a list of field names (e.g. "DefaultValue") to
  6047  	// unconditionally include in API requests. By default, fields with
  6048  	// empty values are omitted from API requests. However, any non-pointer,
  6049  	// non-interface field appearing in ForceSendFields will be sent to the
  6050  	// server regardless of whether the field is empty or not. This may be
  6051  	// used to include empty fields in Patch requests.
  6052  	ForceSendFields []string `json:"-"`
  6053  
  6054  	// NullFields is a list of field names (e.g. "DefaultValue") to include
  6055  	// in API requests with the JSON null value. By default, fields with
  6056  	// empty values are omitted from API requests. However, any field with
  6057  	// an empty value appearing in NullFields will be sent to the server as
  6058  	// null. It is an error if a field in this list has a non-empty value.
  6059  	// This may be used to include null fields in Patch requests.
  6060  	NullFields []string `json:"-"`
  6061  }
  6062  
  6063  func (s *GoogleCloudDialogflowV2beta1IntentParameter) MarshalJSON() ([]byte, error) {
  6064  	type NoMethod GoogleCloudDialogflowV2beta1IntentParameter
  6065  	raw := NoMethod(*s)
  6066  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  6067  }
  6068  
  6069  // GoogleCloudDialogflowV2beta1IntentTrainingPhrase: Represents an
  6070  // example that the agent is trained on.
  6071  type GoogleCloudDialogflowV2beta1IntentTrainingPhrase struct {
  6072  	// Name: Output only. The unique identifier of this training phrase.
  6073  	Name string `json:"name,omitempty"`
  6074  
  6075  	// Parts: Required. The ordered list of training phrase parts.
  6076  	// The parts are concatenated in order to form the training
  6077  	// phrase.
  6078  	//
  6079  	// Note: The API does not automatically annotate training phrases like
  6080  	// the
  6081  	// Dialogflow Console does.
  6082  	//
  6083  	// Note: Do not forget to include whitespace at part boundaries,
  6084  	// so the training phrase is well formatted when the parts are
  6085  	// concatenated.
  6086  	//
  6087  	// If the training phrase does not need to be annotated with
  6088  	// parameters,
  6089  	// you just need a single part with only the Part.text field set.
  6090  	//
  6091  	// If you want to annotate the training phrase, you must create
  6092  	// multiple
  6093  	// parts, where the fields of each part are populated in one of two
  6094  	// ways:
  6095  	//
  6096  	// -   `Part.text` is set to a part of the phrase that has no
  6097  	// parameters.
  6098  	// -   `Part.text` is set to a part of the phrase that you want to
  6099  	// annotate,
  6100  	//     and the `entity_type`, `alias`, and `user_defined` fields are
  6101  	// all
  6102  	//     set.
  6103  	Parts []*GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart `json:"parts,omitempty"`
  6104  
  6105  	// TimesAddedCount: Optional. Indicates how many times this example was
  6106  	// added to
  6107  	// the intent. Each time a developer adds an existing sample by editing
  6108  	// an
  6109  	// intent or training, this counter is increased.
  6110  	TimesAddedCount int64 `json:"timesAddedCount,omitempty"`
  6111  
  6112  	// Type: Required. The type of the training phrase.
  6113  	//
  6114  	// Possible values:
  6115  	//   "TYPE_UNSPECIFIED" - Not specified. This value should never be
  6116  	// used.
  6117  	//   "EXAMPLE" - Examples do not contain @-prefixed entity type names,
  6118  	// but example parts
  6119  	// can be annotated with entity types.
  6120  	//   "TEMPLATE" - Templates are not annotated with entity types, but
  6121  	// they can contain
  6122  	// @-prefixed entity type names as substrings.
  6123  	// Template mode has been deprecated. Example mode is the only
  6124  	// supported
  6125  	// way to create new training phrases. If you have existing
  6126  	// training
  6127  	// phrases that you've created in template mode, those will continue
  6128  	// to
  6129  	// work.
  6130  	Type string `json:"type,omitempty"`
  6131  
  6132  	// ForceSendFields is a list of field names (e.g. "Name") to
  6133  	// unconditionally include in API requests. By default, fields with
  6134  	// empty values are omitted from API requests. However, any non-pointer,
  6135  	// non-interface field appearing in ForceSendFields will be sent to the
  6136  	// server regardless of whether the field is empty or not. This may be
  6137  	// used to include empty fields in Patch requests.
  6138  	ForceSendFields []string `json:"-"`
  6139  
  6140  	// NullFields is a list of field names (e.g. "Name") to include in API
  6141  	// requests with the JSON null value. By default, fields with empty
  6142  	// values are omitted from API requests. However, any field with an
  6143  	// empty value appearing in NullFields will be sent to the server as
  6144  	// null. It is an error if a field in this list has a non-empty value.
  6145  	// This may be used to include null fields in Patch requests.
  6146  	NullFields []string `json:"-"`
  6147  }
  6148  
  6149  func (s *GoogleCloudDialogflowV2beta1IntentTrainingPhrase) MarshalJSON() ([]byte, error) {
  6150  	type NoMethod GoogleCloudDialogflowV2beta1IntentTrainingPhrase
  6151  	raw := NoMethod(*s)
  6152  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  6153  }
  6154  
  6155  // GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart: Represents a
  6156  // part of a training phrase.
  6157  type GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart struct {
  6158  	// Alias: Optional. The parameter name for the value extracted from
  6159  	// the
  6160  	// annotated part of the example.
  6161  	// This field is required for annotated parts of the training phrase.
  6162  	Alias string `json:"alias,omitempty"`
  6163  
  6164  	// EntityType: Optional. The entity type name prefixed with `@`.
  6165  	// This field is required for annotated parts of the training phrase.
  6166  	EntityType string `json:"entityType,omitempty"`
  6167  
  6168  	// Text: Required. The text for this part.
  6169  	Text string `json:"text,omitempty"`
  6170  
  6171  	// UserDefined: Optional. Indicates whether the text was manually
  6172  	// annotated.
  6173  	// This field is set to true when the Dialogflow Console is used
  6174  	// to
  6175  	// manually annotate the part. When creating an annotated part with
  6176  	// the
  6177  	// API, you must set this to true.
  6178  	UserDefined bool `json:"userDefined,omitempty"`
  6179  
  6180  	// ForceSendFields is a list of field names (e.g. "Alias") to
  6181  	// unconditionally include in API requests. By default, fields with
  6182  	// empty values are omitted from API requests. However, any non-pointer,
  6183  	// non-interface field appearing in ForceSendFields will be sent to the
  6184  	// server regardless of whether the field is empty or not. This may be
  6185  	// used to include empty fields in Patch requests.
  6186  	ForceSendFields []string `json:"-"`
  6187  
  6188  	// NullFields is a list of field names (e.g. "Alias") to include in API
  6189  	// requests with the JSON null value. By default, fields with empty
  6190  	// values are omitted from API requests. However, any field with an
  6191  	// empty value appearing in NullFields will be sent to the server as
  6192  	// null. It is an error if a field in this list has a non-empty value.
  6193  	// This may be used to include null fields in Patch requests.
  6194  	NullFields []string `json:"-"`
  6195  }
  6196  
  6197  func (s *GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart) MarshalJSON() ([]byte, error) {
  6198  	type NoMethod GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart
  6199  	raw := NoMethod(*s)
  6200  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  6201  }
  6202  
  6203  // GoogleCloudDialogflowV2beta1KnowledgeAnswers: Represents the result
  6204  // of querying a Knowledge base.
  6205  type GoogleCloudDialogflowV2beta1KnowledgeAnswers struct {
  6206  	// Answers: A list of answers from Knowledge Connector.
  6207  	Answers []*GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer `json:"answers,omitempty"`
  6208  
  6209  	// ForceSendFields is a list of field names (e.g. "Answers") to
  6210  	// unconditionally include in API requests. By default, fields with
  6211  	// empty values are omitted from API requests. However, any non-pointer,
  6212  	// non-interface field appearing in ForceSendFields will be sent to the
  6213  	// server regardless of whether the field is empty or not. This may be
  6214  	// used to include empty fields in Patch requests.
  6215  	ForceSendFields []string `json:"-"`
  6216  
  6217  	// NullFields is a list of field names (e.g. "Answers") to include in
  6218  	// API requests with the JSON null value. By default, fields with empty
  6219  	// values are omitted from API requests. However, any field with an
  6220  	// empty value appearing in NullFields will be sent to the server as
  6221  	// null. It is an error if a field in this list has a non-empty value.
  6222  	// This may be used to include null fields in Patch requests.
  6223  	NullFields []string `json:"-"`
  6224  }
  6225  
  6226  func (s *GoogleCloudDialogflowV2beta1KnowledgeAnswers) MarshalJSON() ([]byte, error) {
  6227  	type NoMethod GoogleCloudDialogflowV2beta1KnowledgeAnswers
  6228  	raw := NoMethod(*s)
  6229  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  6230  }
  6231  
  6232  // GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer: An answer from
  6233  // Knowledge Connector.
  6234  type GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer struct {
  6235  	// Answer: The piece of text from the `source` knowledge base document
  6236  	// that answers
  6237  	// this conversational query.
  6238  	Answer string `json:"answer,omitempty"`
  6239  
  6240  	// FaqQuestion: The corresponding FAQ question if the answer was
  6241  	// extracted from a FAQ
  6242  	// Document, empty otherwise.
  6243  	FaqQuestion string `json:"faqQuestion,omitempty"`
  6244  
  6245  	// MatchConfidence: The system's confidence score that this Knowledge
  6246  	// answer is a good match
  6247  	// for this conversational query.
  6248  	// The range is from 0.0 (completely uncertain) to 1.0 (completely
  6249  	// certain).
  6250  	// Note: The confidence score is likely to vary somewhat (possibly even
  6251  	// for
  6252  	// identical requests), as the underlying model is under
  6253  	// constant
  6254  	// improvement. It may be deprecated in the future. We recommend
  6255  	// using
  6256  	// `match_confidence_level` which should be generally more stable.
  6257  	MatchConfidence float64 `json:"matchConfidence,omitempty"`
  6258  
  6259  	// MatchConfidenceLevel: The system's confidence level that this
  6260  	// knowledge answer is a good match
  6261  	// for this conversational query.
  6262  	// NOTE: The confidence level for a given `<query, answer>` pair may
  6263  	// change
  6264  	// without notice, as it depends on models that are constantly
  6265  	// being
  6266  	// improved. However, it will change less frequently than the
  6267  	// confidence
  6268  	// score below, and should be preferred for referencing the quality of
  6269  	// an
  6270  	// answer.
  6271  	//
  6272  	// Possible values:
  6273  	//   "MATCH_CONFIDENCE_LEVEL_UNSPECIFIED" - Not specified.
  6274  	//   "LOW" - Indicates that the confidence is low.
  6275  	//   "MEDIUM" - Indicates our confidence is medium.
  6276  	//   "HIGH" - Indicates our confidence is high.
  6277  	MatchConfidenceLevel string `json:"matchConfidenceLevel,omitempty"`
  6278  
  6279  	// Source: Indicates which Knowledge Document this answer was extracted
  6280  	// from.
  6281  	// Format: `projects/<Project ID>/knowledgeBases/<Knowledge
  6282  	// Base
  6283  	// ID>/documents/<Document ID>`.
  6284  	Source string `json:"source,omitempty"`
  6285  
  6286  	// ForceSendFields is a list of field names (e.g. "Answer") to
  6287  	// unconditionally include in API requests. By default, fields with
  6288  	// empty values are omitted from API requests. However, any non-pointer,
  6289  	// non-interface field appearing in ForceSendFields will be sent to the
  6290  	// server regardless of whether the field is empty or not. This may be
  6291  	// used to include empty fields in Patch requests.
  6292  	ForceSendFields []string `json:"-"`
  6293  
  6294  	// NullFields is a list of field names (e.g. "Answer") to include in API
  6295  	// requests with the JSON null value. By default, fields with empty
  6296  	// values are omitted from API requests. However, any field with an
  6297  	// empty value appearing in NullFields will be sent to the server as
  6298  	// null. It is an error if a field in this list has a non-empty value.
  6299  	// This may be used to include null fields in Patch requests.
  6300  	NullFields []string `json:"-"`
  6301  }
  6302  
  6303  func (s *GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer) MarshalJSON() ([]byte, error) {
  6304  	type NoMethod GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer
  6305  	raw := NoMethod(*s)
  6306  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  6307  }
  6308  
  6309  func (s *GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer) UnmarshalJSON(data []byte) error {
  6310  	type NoMethod GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer
  6311  	var s1 struct {
  6312  		MatchConfidence gensupport.JSONFloat64 `json:"matchConfidence"`
  6313  		*NoMethod
  6314  	}
  6315  	s1.NoMethod = (*NoMethod)(s)
  6316  	if err := json.Unmarshal(data, &s1); err != nil {
  6317  		return err
  6318  	}
  6319  	s.MatchConfidence = float64(s1.MatchConfidence)
  6320  	return nil
  6321  }
  6322  
  6323  // GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata: Metadata in
  6324  // google::longrunning::Operation for Knowledge operations.
  6325  type GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata struct {
  6326  	// State: Required. Output only. The current state of this operation.
  6327  	//
  6328  	// Possible values:
  6329  	//   "STATE_UNSPECIFIED" - State unspecified.
  6330  	//   "PENDING" - The operation has been created.
  6331  	//   "RUNNING" - The operation is currently running.
  6332  	//   "DONE" - The operation is done, either cancelled or completed.
  6333  	State string `json:"state,omitempty"`
  6334  
  6335  	// ForceSendFields is a list of field names (e.g. "State") to
  6336  	// unconditionally include in API requests. By default, fields with
  6337  	// empty values are omitted from API requests. However, any non-pointer,
  6338  	// non-interface field appearing in ForceSendFields will be sent to the
  6339  	// server regardless of whether the field is empty or not. This may be
  6340  	// used to include empty fields in Patch requests.
  6341  	ForceSendFields []string `json:"-"`
  6342  
  6343  	// NullFields is a list of field names (e.g. "State") to include in API
  6344  	// requests with the JSON null value. By default, fields with empty
  6345  	// values are omitted from API requests. However, any field with an
  6346  	// empty value appearing in NullFields will be sent to the server as
  6347  	// null. It is an error if a field in this list has a non-empty value.
  6348  	// This may be used to include null fields in Patch requests.
  6349  	NullFields []string `json:"-"`
  6350  }
  6351  
  6352  func (s *GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata) MarshalJSON() ([]byte, error) {
  6353  	type NoMethod GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata
  6354  	raw := NoMethod(*s)
  6355  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  6356  }
  6357  
  6358  // GoogleCloudDialogflowV2beta1LabelConversationResponse: The response
  6359  // for
  6360  // ConversationDatasets.LabelConversation.
  6361  type GoogleCloudDialogflowV2beta1LabelConversationResponse struct {
  6362  	// AnnotatedConversationDataset: New annotated conversation dataset
  6363  	// created by the labeling task.
  6364  	AnnotatedConversationDataset *GoogleCloudDialogflowV2beta1AnnotatedConversationDataset `json:"annotatedConversationDataset,omitempty"`
  6365  
  6366  	// ForceSendFields is a list of field names (e.g.
  6367  	// "AnnotatedConversationDataset") to unconditionally include in API
  6368  	// requests. By default, fields with empty values are omitted from API
  6369  	// requests. However, any non-pointer, non-interface field appearing in
  6370  	// ForceSendFields will be sent to the server regardless of whether the
  6371  	// field is empty or not. This may be used to include empty fields in
  6372  	// Patch requests.
  6373  	ForceSendFields []string `json:"-"`
  6374  
  6375  	// NullFields is a list of field names (e.g.
  6376  	// "AnnotatedConversationDataset") to include in API requests with the
  6377  	// JSON null value. By default, fields with empty values are omitted
  6378  	// from API requests. However, any field with an empty value appearing
  6379  	// in NullFields will be sent to the server as null. It is an error if a
  6380  	// field in this list has a non-empty value. This may be used to include
  6381  	// null fields in Patch requests.
  6382  	NullFields []string `json:"-"`
  6383  }
  6384  
  6385  func (s *GoogleCloudDialogflowV2beta1LabelConversationResponse) MarshalJSON() ([]byte, error) {
  6386  	type NoMethod GoogleCloudDialogflowV2beta1LabelConversationResponse
  6387  	raw := NoMethod(*s)
  6388  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  6389  }
  6390  
  6391  // GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest: Represents
  6392  // the contents of the original request that was passed to
  6393  // the `[Streaming]DetectIntent` call.
  6394  type GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest struct {
  6395  	// Payload: Optional. This field is set to the value of the
  6396  	// `QueryParameters.payload`
  6397  	// field passed in the request. Some integrations that query a
  6398  	// Dialogflow
  6399  	// agent may provide additional information in the payload.
  6400  	//
  6401  	// In particular, for the Dialogflow Phone Gateway integration, this
  6402  	// field has
  6403  	// the form:
  6404  	// <pre>{
  6405  	//  "telephony": {
  6406  	//    "caller_id": "+18558363987"
  6407  	//  }
  6408  	// }</pre>
  6409  	// Note: The caller ID field (`caller_id`) will be redacted for
  6410  	// Standard
  6411  	// Edition agents and populated with the caller ID in
  6412  	// [E.164
  6413  	// format](https://en.wikipedia.org/wiki/E.164) for Enterprise Edition
  6414  	// agents.
  6415  	Payload googleapi.RawMessage `json:"payload,omitempty"`
  6416  
  6417  	// Source: The source of this request, e.g., `google`, `facebook`,
  6418  	// `slack`. It is set
  6419  	// by Dialogflow-owned servers.
  6420  	Source string `json:"source,omitempty"`
  6421  
  6422  	// Version: Optional. The version of the protocol used for this
  6423  	// request.
  6424  	// This field is AoG-specific.
  6425  	Version string `json:"version,omitempty"`
  6426  
  6427  	// ForceSendFields is a list of field names (e.g. "Payload") to
  6428  	// unconditionally include in API requests. By default, fields with
  6429  	// empty values are omitted from API requests. However, any non-pointer,
  6430  	// non-interface field appearing in ForceSendFields will be sent to the
  6431  	// server regardless of whether the field is empty or not. This may be
  6432  	// used to include empty fields in Patch requests.
  6433  	ForceSendFields []string `json:"-"`
  6434  
  6435  	// NullFields is a list of field names (e.g. "Payload") to include in
  6436  	// API requests with the JSON null value. By default, fields with empty
  6437  	// values are omitted from API requests. However, any field with an
  6438  	// empty value appearing in NullFields will be sent to the server as
  6439  	// null. It is an error if a field in this list has a non-empty value.
  6440  	// This may be used to include null fields in Patch requests.
  6441  	NullFields []string `json:"-"`
  6442  }
  6443  
  6444  func (s *GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest) MarshalJSON() ([]byte, error) {
  6445  	type NoMethod GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest
  6446  	raw := NoMethod(*s)
  6447  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  6448  }
  6449  
  6450  // GoogleCloudDialogflowV2beta1QueryResult: Represents the result of
  6451  // conversational query or event processing.
  6452  type GoogleCloudDialogflowV2beta1QueryResult struct {
  6453  	// Action: The action name from the matched intent.
  6454  	Action string `json:"action,omitempty"`
  6455  
  6456  	// AllRequiredParamsPresent: This field is set to:
  6457  	//
  6458  	// - `false` if the matched intent has required parameters and not all
  6459  	// of
  6460  	//    the required parameter values have been collected.
  6461  	// - `true` if all required parameter values have been collected, or if
  6462  	// the
  6463  	//    matched intent doesn't contain any required parameters.
  6464  	AllRequiredParamsPresent bool `json:"allRequiredParamsPresent,omitempty"`
  6465  
  6466  	// DiagnosticInfo: Free-form diagnostic information for the associated
  6467  	// detect intent request.
  6468  	// The fields of this data can change without notice, so you should not
  6469  	// write
  6470  	// code that depends on its structure.
  6471  	// The data may contain:
  6472  	//
  6473  	// - webhook call latency
  6474  	// - webhook errors
  6475  	DiagnosticInfo googleapi.RawMessage `json:"diagnosticInfo,omitempty"`
  6476  
  6477  	// FulfillmentMessages: The collection of rich messages to present to
  6478  	// the user.
  6479  	FulfillmentMessages []*GoogleCloudDialogflowV2beta1IntentMessage `json:"fulfillmentMessages,omitempty"`
  6480  
  6481  	// FulfillmentText: The text to be pronounced to the user or shown on
  6482  	// the screen.
  6483  	// Note: This is a legacy field, `fulfillment_messages` should be
  6484  	// preferred.
  6485  	FulfillmentText string `json:"fulfillmentText,omitempty"`
  6486  
  6487  	// Intent: The intent that matched the conversational query. Some,
  6488  	// not
  6489  	// all fields are filled in this message, including but not limited
  6490  	// to:
  6491  	// `name`, `display_name`, `end_interaction` and `is_fallback`.
  6492  	Intent *GoogleCloudDialogflowV2beta1Intent `json:"intent,omitempty"`
  6493  
  6494  	// IntentDetectionConfidence: The intent detection confidence. Values
  6495  	// range from 0.0
  6496  	// (completely uncertain) to 1.0 (completely certain).
  6497  	// This value is for informational purpose only and is only used to
  6498  	// help match the best intent within the classification threshold.
  6499  	// This value may change for the same end-user expression at any time
  6500  	// due to a
  6501  	// model retraining or change in implementation.
  6502  	// If there are `multiple knowledge_answers` messages, this value is set
  6503  	// to
  6504  	// the greatest `knowledgeAnswers.match_confidence` value in the list.
  6505  	IntentDetectionConfidence float64 `json:"intentDetectionConfidence,omitempty"`
  6506  
  6507  	// KnowledgeAnswers: The result from Knowledge Connector (if any),
  6508  	// ordered by decreasing
  6509  	// `KnowledgeAnswers.match_confidence`.
  6510  	KnowledgeAnswers *GoogleCloudDialogflowV2beta1KnowledgeAnswers `json:"knowledgeAnswers,omitempty"`
  6511  
  6512  	// LanguageCode: The language that was triggered during intent
  6513  	// detection.
  6514  	// See
  6515  	// [Language
  6516  	// Support](https://cloud.google.com/dialogflow/docs/reference/
  6517  	// language)
  6518  	// for a list of the currently supported language codes.
  6519  	LanguageCode string `json:"languageCode,omitempty"`
  6520  
  6521  	// OutputContexts: The collection of output contexts. If
  6522  	// applicable,
  6523  	// `output_contexts.parameters` contains entries with name
  6524  	// `<parameter name>.original` containing the original parameter
  6525  	// values
  6526  	// before the query.
  6527  	OutputContexts []*GoogleCloudDialogflowV2beta1Context `json:"outputContexts,omitempty"`
  6528  
  6529  	// Parameters: The collection of extracted parameters.
  6530  	//
  6531  	// Depending on your protocol or client library language, this is a
  6532  	// map, associative array, symbol table, dictionary, or JSON
  6533  	// object
  6534  	// composed of a collection of (MapKey, MapValue) pairs:
  6535  	//
  6536  	// -   MapKey type: string
  6537  	// -   MapKey value: parameter name
  6538  	// -   MapValue type:
  6539  	//     -   If parameter's entity type is a composite entity: map
  6540  	//     -   Else: string or number, depending on parameter value type
  6541  	// -   MapValue value:
  6542  	//     -   If parameter's entity type is a composite entity:
  6543  	//         map from composite entity property names to property values
  6544  	//     -   Else: parameter value
  6545  	Parameters googleapi.RawMessage `json:"parameters,omitempty"`
  6546  
  6547  	// QueryText: The original conversational query text:
  6548  	//
  6549  	// - If natural language text was provided as input, `query_text`
  6550  	// contains
  6551  	//   a copy of the input.
  6552  	// - If natural language speech audio was provided as input,
  6553  	// `query_text`
  6554  	//   contains the speech recognition result. If speech recognizer
  6555  	// produced
  6556  	//   multiple alternatives, a particular one is picked.
  6557  	// - If automatic spell correction is enabled, `query_text` will contain
  6558  	// the
  6559  	//   corrected user input.
  6560  	QueryText string `json:"queryText,omitempty"`
  6561  
  6562  	// SentimentAnalysisResult: The sentiment analysis result, which depends
  6563  	// on the
  6564  	// `sentiment_analysis_request_config` specified in the request.
  6565  	SentimentAnalysisResult *GoogleCloudDialogflowV2beta1SentimentAnalysisResult `json:"sentimentAnalysisResult,omitempty"`
  6566  
  6567  	// SpeechRecognitionConfidence: The Speech recognition confidence
  6568  	// between 0.0 and 1.0. A higher number
  6569  	// indicates an estimated greater likelihood that the recognized words
  6570  	// are
  6571  	// correct. The default of 0.0 is a sentinel value indicating that
  6572  	// confidence
  6573  	// was not set.
  6574  	//
  6575  	// This field is not guaranteed to be accurate or set. In particular
  6576  	// this
  6577  	// field isn't set for StreamingDetectIntent since the streaming
  6578  	// endpoint has
  6579  	// separate confidence estimates per portion of the audio
  6580  	// in
  6581  	// StreamingRecognitionResult.
  6582  	SpeechRecognitionConfidence float64 `json:"speechRecognitionConfidence,omitempty"`
  6583  
  6584  	// WebhookPayload: If the query was fulfilled by a webhook call, this
  6585  	// field is set to the
  6586  	// value of the `payload` field returned in the webhook response.
  6587  	WebhookPayload googleapi.RawMessage `json:"webhookPayload,omitempty"`
  6588  
  6589  	// WebhookSource: If the query was fulfilled by a webhook call, this
  6590  	// field is set to the
  6591  	// value of the `source` field returned in the webhook response.
  6592  	WebhookSource string `json:"webhookSource,omitempty"`
  6593  
  6594  	// ForceSendFields is a list of field names (e.g. "Action") to
  6595  	// unconditionally include in API requests. By default, fields with
  6596  	// empty values are omitted from API requests. However, any non-pointer,
  6597  	// non-interface field appearing in ForceSendFields will be sent to the
  6598  	// server regardless of whether the field is empty or not. This may be
  6599  	// used to include empty fields in Patch requests.
  6600  	ForceSendFields []string `json:"-"`
  6601  
  6602  	// NullFields is a list of field names (e.g. "Action") to include in API
  6603  	// requests with the JSON null value. By default, fields with empty
  6604  	// values are omitted from API requests. However, any field with an
  6605  	// empty value appearing in NullFields will be sent to the server as
  6606  	// null. It is an error if a field in this list has a non-empty value.
  6607  	// This may be used to include null fields in Patch requests.
  6608  	NullFields []string `json:"-"`
  6609  }
  6610  
  6611  func (s *GoogleCloudDialogflowV2beta1QueryResult) MarshalJSON() ([]byte, error) {
  6612  	type NoMethod GoogleCloudDialogflowV2beta1QueryResult
  6613  	raw := NoMethod(*s)
  6614  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  6615  }
  6616  
  6617  func (s *GoogleCloudDialogflowV2beta1QueryResult) UnmarshalJSON(data []byte) error {
  6618  	type NoMethod GoogleCloudDialogflowV2beta1QueryResult
  6619  	var s1 struct {
  6620  		IntentDetectionConfidence   gensupport.JSONFloat64 `json:"intentDetectionConfidence"`
  6621  		SpeechRecognitionConfidence gensupport.JSONFloat64 `json:"speechRecognitionConfidence"`
  6622  		*NoMethod
  6623  	}
  6624  	s1.NoMethod = (*NoMethod)(s)
  6625  	if err := json.Unmarshal(data, &s1); err != nil {
  6626  		return err
  6627  	}
  6628  	s.IntentDetectionConfidence = float64(s1.IntentDetectionConfidence)
  6629  	s.SpeechRecognitionConfidence = float64(s1.SpeechRecognitionConfidence)
  6630  	return nil
  6631  }
  6632  
  6633  // GoogleCloudDialogflowV2beta1Sentiment: The sentiment, such as
  6634  // positive/negative feeling or association, for a unit
  6635  // of analysis, such as the query text.
  6636  type GoogleCloudDialogflowV2beta1Sentiment struct {
  6637  	// Magnitude: A non-negative number in the [0, +inf) range, which
  6638  	// represents the absolute
  6639  	// magnitude of sentiment, regardless of score (positive or negative).
  6640  	Magnitude float64 `json:"magnitude,omitempty"`
  6641  
  6642  	// Score: Sentiment score between -1.0 (negative sentiment) and 1.0
  6643  	// (positive
  6644  	// sentiment).
  6645  	Score float64 `json:"score,omitempty"`
  6646  
  6647  	// ForceSendFields is a list of field names (e.g. "Magnitude") to
  6648  	// unconditionally include in API requests. By default, fields with
  6649  	// empty values are omitted from API requests. However, any non-pointer,
  6650  	// non-interface field appearing in ForceSendFields will be sent to the
  6651  	// server regardless of whether the field is empty or not. This may be
  6652  	// used to include empty fields in Patch requests.
  6653  	ForceSendFields []string `json:"-"`
  6654  
  6655  	// NullFields is a list of field names (e.g. "Magnitude") to include in
  6656  	// API requests with the JSON null value. By default, fields with empty
  6657  	// values are omitted from API requests. However, any field with an
  6658  	// empty value appearing in NullFields will be sent to the server as
  6659  	// null. It is an error if a field in this list has a non-empty value.
  6660  	// This may be used to include null fields in Patch requests.
  6661  	NullFields []string `json:"-"`
  6662  }
  6663  
  6664  func (s *GoogleCloudDialogflowV2beta1Sentiment) MarshalJSON() ([]byte, error) {
  6665  	type NoMethod GoogleCloudDialogflowV2beta1Sentiment
  6666  	raw := NoMethod(*s)
  6667  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  6668  }
  6669  
  6670  func (s *GoogleCloudDialogflowV2beta1Sentiment) UnmarshalJSON(data []byte) error {
  6671  	type NoMethod GoogleCloudDialogflowV2beta1Sentiment
  6672  	var s1 struct {
  6673  		Magnitude gensupport.JSONFloat64 `json:"magnitude"`
  6674  		Score     gensupport.JSONFloat64 `json:"score"`
  6675  		*NoMethod
  6676  	}
  6677  	s1.NoMethod = (*NoMethod)(s)
  6678  	if err := json.Unmarshal(data, &s1); err != nil {
  6679  		return err
  6680  	}
  6681  	s.Magnitude = float64(s1.Magnitude)
  6682  	s.Score = float64(s1.Score)
  6683  	return nil
  6684  }
  6685  
  6686  // GoogleCloudDialogflowV2beta1SentimentAnalysisResult: The result of
  6687  // sentiment analysis as configured
  6688  // by
  6689  // `sentiment_analysis_request_config`.
  6690  type GoogleCloudDialogflowV2beta1SentimentAnalysisResult struct {
  6691  	// QueryTextSentiment: The sentiment analysis result for `query_text`.
  6692  	QueryTextSentiment *GoogleCloudDialogflowV2beta1Sentiment `json:"queryTextSentiment,omitempty"`
  6693  
  6694  	// ForceSendFields is a list of field names (e.g. "QueryTextSentiment")
  6695  	// to unconditionally include in API requests. By default, fields with
  6696  	// empty values are omitted from API requests. However, any non-pointer,
  6697  	// non-interface field appearing in ForceSendFields will be sent to the
  6698  	// server regardless of whether the field is empty or not. This may be
  6699  	// used to include empty fields in Patch requests.
  6700  	ForceSendFields []string `json:"-"`
  6701  
  6702  	// NullFields is a list of field names (e.g. "QueryTextSentiment") to
  6703  	// include in API requests with the JSON null value. By default, fields
  6704  	// with empty values are omitted from API requests. However, any field
  6705  	// with an empty value appearing in NullFields will be sent to the
  6706  	// server as null. It is an error if a field in this list has a
  6707  	// non-empty value. This may be used to include null fields in Patch
  6708  	// requests.
  6709  	NullFields []string `json:"-"`
  6710  }
  6711  
  6712  func (s *GoogleCloudDialogflowV2beta1SentimentAnalysisResult) MarshalJSON() ([]byte, error) {
  6713  	type NoMethod GoogleCloudDialogflowV2beta1SentimentAnalysisResult
  6714  	raw := NoMethod(*s)
  6715  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  6716  }
  6717  
  6718  // GoogleCloudDialogflowV2beta1SessionEntityType: Represents a session
  6719  // entity type.
  6720  //
  6721  // Extends or replaces a custom entity type at the user session level
  6722  // (we
  6723  // refer to the entity types defined at the agent level as "custom
  6724  // entity
  6725  // types").
  6726  //
  6727  // Note: session entity types apply to all queries, regardless of the
  6728  // language.
  6729  type GoogleCloudDialogflowV2beta1SessionEntityType struct {
  6730  	// Entities: Required. The collection of entities associated with this
  6731  	// session entity
  6732  	// type.
  6733  	Entities []*GoogleCloudDialogflowV2beta1EntityTypeEntity `json:"entities,omitempty"`
  6734  
  6735  	// EntityOverrideMode: Required. Indicates whether the additional data
  6736  	// should override or
  6737  	// supplement the custom entity type definition.
  6738  	//
  6739  	// Possible values:
  6740  	//   "ENTITY_OVERRIDE_MODE_UNSPECIFIED" - Not specified. This value
  6741  	// should be never used.
  6742  	//   "ENTITY_OVERRIDE_MODE_OVERRIDE" - The collection of session
  6743  	// entities overrides the collection of entities
  6744  	// in the corresponding custom entity type.
  6745  	//   "ENTITY_OVERRIDE_MODE_SUPPLEMENT" - The collection of session
  6746  	// entities extends the collection of entities in
  6747  	// the corresponding custom entity type.
  6748  	//
  6749  	// Note: Even in this override mode calls to
  6750  	// `ListSessionEntityTypes`,
  6751  	// `GetSessionEntityType`, `CreateSessionEntityType`
  6752  	// and
  6753  	// `UpdateSessionEntityType` only return the additional entities added
  6754  	// in
  6755  	// this session entity type. If you want to get the supplemented
  6756  	// list,
  6757  	// please call EntityTypes.GetEntityType on the custom entity type
  6758  	// and merge.
  6759  	EntityOverrideMode string `json:"entityOverrideMode,omitempty"`
  6760  
  6761  	// Name: Required. The unique identifier of this session entity type.
  6762  	// Format:
  6763  	// `projects/<Project ID>/agent/sessions/<Session
  6764  	// ID>/entityTypes/<Entity Type
  6765  	// Display Name>`, or
  6766  	// `projects/<Project ID>/agent/environments/<Environment
  6767  	// ID>/users/<User
  6768  	// ID>/sessions/<Session ID>/entityTypes/<Entity Type Display Name>`.
  6769  	// If `Environment ID` is not specified, we assume default
  6770  	// 'draft'
  6771  	// environment. If `User ID` is not specified, we assume default '-'
  6772  	// user.
  6773  	//
  6774  	// `<Entity Type Display Name>` must be the display name of an existing
  6775  	// entity
  6776  	// type in the same agent that will be overridden or supplemented.
  6777  	Name string `json:"name,omitempty"`
  6778  
  6779  	// ForceSendFields is a list of field names (e.g. "Entities") to
  6780  	// unconditionally include in API requests. By default, fields with
  6781  	// empty values are omitted from API requests. However, any non-pointer,
  6782  	// non-interface field appearing in ForceSendFields will be sent to the
  6783  	// server regardless of whether the field is empty or not. This may be
  6784  	// used to include empty fields in Patch requests.
  6785  	ForceSendFields []string `json:"-"`
  6786  
  6787  	// NullFields is a list of field names (e.g. "Entities") to include in
  6788  	// API requests with the JSON null value. By default, fields with empty
  6789  	// values are omitted from API requests. However, any field with an
  6790  	// empty value appearing in NullFields will be sent to the server as
  6791  	// null. It is an error if a field in this list has a non-empty value.
  6792  	// This may be used to include null fields in Patch requests.
  6793  	NullFields []string `json:"-"`
  6794  }
  6795  
  6796  func (s *GoogleCloudDialogflowV2beta1SessionEntityType) MarshalJSON() ([]byte, error) {
  6797  	type NoMethod GoogleCloudDialogflowV2beta1SessionEntityType
  6798  	raw := NoMethod(*s)
  6799  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  6800  }
  6801  
  6802  // GoogleCloudDialogflowV2beta1WebhookRequest: The request message for a
  6803  // webhook call.
  6804  type GoogleCloudDialogflowV2beta1WebhookRequest struct {
  6805  	// AlternativeQueryResults: Alternative query results from
  6806  	// KnowledgeService.
  6807  	AlternativeQueryResults []*GoogleCloudDialogflowV2beta1QueryResult `json:"alternativeQueryResults,omitempty"`
  6808  
  6809  	// OriginalDetectIntentRequest: Optional. The contents of the original
  6810  	// request that was passed to
  6811  	// `[Streaming]DetectIntent` call.
  6812  	OriginalDetectIntentRequest *GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest `json:"originalDetectIntentRequest,omitempty"`
  6813  
  6814  	// QueryResult: The result of the conversational query or event
  6815  	// processing. Contains the
  6816  	// same value as `[Streaming]DetectIntentResponse.query_result`.
  6817  	QueryResult *GoogleCloudDialogflowV2beta1QueryResult `json:"queryResult,omitempty"`
  6818  
  6819  	// ResponseId: The unique identifier of the response. Contains the same
  6820  	// value as
  6821  	// `[Streaming]DetectIntentResponse.response_id`.
  6822  	ResponseId string `json:"responseId,omitempty"`
  6823  
  6824  	// Session: The unique identifier of detectIntent request session.
  6825  	// Can be used to identify end-user inside webhook
  6826  	// implementation.
  6827  	// Format: `projects/<Project ID>/agent/sessions/<Session ID>`,
  6828  	// or
  6829  	// `projects/<Project ID>/agent/environments/<Environment
  6830  	// ID>/users/<User
  6831  	// ID>/sessions/<Session ID>`.
  6832  	Session string `json:"session,omitempty"`
  6833  
  6834  	// ForceSendFields is a list of field names (e.g.
  6835  	// "AlternativeQueryResults") to unconditionally include in API
  6836  	// requests. By default, fields with empty values are omitted from API
  6837  	// requests. However, any non-pointer, non-interface field appearing in
  6838  	// ForceSendFields will be sent to the server regardless of whether the
  6839  	// field is empty or not. This may be used to include empty fields in
  6840  	// Patch requests.
  6841  	ForceSendFields []string `json:"-"`
  6842  
  6843  	// NullFields is a list of field names (e.g. "AlternativeQueryResults")
  6844  	// to include in API requests with the JSON null value. By default,
  6845  	// fields with empty values are omitted from API requests. However, any
  6846  	// field with an empty value appearing in NullFields will be sent to the
  6847  	// server as null. It is an error if a field in this list has a
  6848  	// non-empty value. This may be used to include null fields in Patch
  6849  	// requests.
  6850  	NullFields []string `json:"-"`
  6851  }
  6852  
  6853  func (s *GoogleCloudDialogflowV2beta1WebhookRequest) MarshalJSON() ([]byte, error) {
  6854  	type NoMethod GoogleCloudDialogflowV2beta1WebhookRequest
  6855  	raw := NoMethod(*s)
  6856  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  6857  }
  6858  
  6859  // GoogleCloudDialogflowV2beta1WebhookResponse: The response message for
  6860  // a webhook call.
  6861  //
  6862  // This response is validated by the Dialogflow server. If validation
  6863  // fails,
  6864  // an error will be returned in the QueryResult.diagnostic_info
  6865  // field.
  6866  // Setting JSON fields to an empty value with the wrong type is a common
  6867  // error.
  6868  // To avoid this error:
  6869  //
  6870  // - Use "" for empty strings
  6871  // - Use `{}` or `null` for empty objects
  6872  // - Use `[]` or `null` for empty arrays
  6873  //
  6874  // For more information, see the
  6875  // [Protocol Buffers
  6876  // Language
  6877  // Guide](https://developers.google.com/protocol-buffers/docs/pr
  6878  // oto3#json).
  6879  type GoogleCloudDialogflowV2beta1WebhookResponse struct {
  6880  	// EndInteraction: Optional. Indicates that this intent ends an
  6881  	// interaction. Some integrations
  6882  	// (e.g., Actions on Google or Dialogflow phone gateway) use this
  6883  	// information
  6884  	// to close interaction with an end user. Default is false.
  6885  	EndInteraction bool `json:"endInteraction,omitempty"`
  6886  
  6887  	// FollowupEventInput: Optional. Invokes the supplied events.
  6888  	// When this field is set, Dialogflow ignores the
  6889  	// `fulfillment_text`,
  6890  	// `fulfillment_messages`, and `payload` fields.
  6891  	FollowupEventInput *GoogleCloudDialogflowV2beta1EventInput `json:"followupEventInput,omitempty"`
  6892  
  6893  	// FulfillmentMessages: Optional. The rich response messages intended
  6894  	// for the end-user.
  6895  	// When provided, Dialogflow uses this field to
  6896  	// populate
  6897  	// QueryResult.fulfillment_messages sent to the integration or API
  6898  	// caller.
  6899  	FulfillmentMessages []*GoogleCloudDialogflowV2beta1IntentMessage `json:"fulfillmentMessages,omitempty"`
  6900  
  6901  	// FulfillmentText: Optional. The text response message intended for the
  6902  	// end-user.
  6903  	// It is recommended to use `fulfillment_messages.text.text[0]`
  6904  	// instead.
  6905  	// When provided, Dialogflow uses this field to
  6906  	// populate
  6907  	// QueryResult.fulfillment_text sent to the integration or API caller.
  6908  	FulfillmentText string `json:"fulfillmentText,omitempty"`
  6909  
  6910  	// OutputContexts: Optional. The collection of output contexts that will
  6911  	// overwrite currently
  6912  	// active contexts for the session and reset their lifespans.
  6913  	// When provided, Dialogflow uses this field to
  6914  	// populate
  6915  	// QueryResult.output_contexts sent to the integration or API caller.
  6916  	OutputContexts []*GoogleCloudDialogflowV2beta1Context `json:"outputContexts,omitempty"`
  6917  
  6918  	// Payload: Optional. This field can be used to pass custom data from
  6919  	// your webhook to the
  6920  	// integration or API caller. Arbitrary JSON objects are supported.
  6921  	// When provided, Dialogflow uses this field to
  6922  	// populate
  6923  	// QueryResult.webhook_payload sent to the integration or API
  6924  	// caller.
  6925  	// This field is also used by the
  6926  	// [Google
  6927  	// Assistant
  6928  	// integration](https://cloud.google.com/dialogflow/docs/integr
  6929  	// ations/aog)
  6930  	// for rich response messages.
  6931  	// See the format definition at [Google Assistant Dialogflow
  6932  	// webhook
  6933  	// format](https://developers.google.com/assistant/actions/build/
  6934  	// json/dialogflow-webhook-json)
  6935  	Payload googleapi.RawMessage `json:"payload,omitempty"`
  6936  
  6937  	// SessionEntityTypes: Optional. Additional session entity types to
  6938  	// replace or extend developer
  6939  	// entity types with. The entity synonyms apply to all languages and
  6940  	// persist
  6941  	// for the session. Setting this data from a webhook overwrites
  6942  	// the session entity types that have been set using
  6943  	// `detectIntent`,
  6944  	// `streamingDetectIntent` or SessionEntityType management methods.
  6945  	SessionEntityTypes []*GoogleCloudDialogflowV2beta1SessionEntityType `json:"sessionEntityTypes,omitempty"`
  6946  
  6947  	// Source: Optional. A custom field used to identify the webhook
  6948  	// source.
  6949  	// Arbitrary strings are supported.
  6950  	// When provided, Dialogflow uses this field to
  6951  	// populate
  6952  	// QueryResult.webhook_source sent to the integration or API caller.
  6953  	Source string `json:"source,omitempty"`
  6954  
  6955  	// ForceSendFields is a list of field names (e.g. "EndInteraction") to
  6956  	// unconditionally include in API requests. By default, fields with
  6957  	// empty values are omitted from API requests. However, any non-pointer,
  6958  	// non-interface field appearing in ForceSendFields will be sent to the
  6959  	// server regardless of whether the field is empty or not. This may be
  6960  	// used to include empty fields in Patch requests.
  6961  	ForceSendFields []string `json:"-"`
  6962  
  6963  	// NullFields is a list of field names (e.g. "EndInteraction") to
  6964  	// include in API requests with the JSON null value. By default, fields
  6965  	// with empty values are omitted from API requests. However, any field
  6966  	// with an empty value appearing in NullFields will be sent to the
  6967  	// server as null. It is an error if a field in this list has a
  6968  	// non-empty value. This may be used to include null fields in Patch
  6969  	// requests.
  6970  	NullFields []string `json:"-"`
  6971  }
  6972  
  6973  func (s *GoogleCloudDialogflowV2beta1WebhookResponse) MarshalJSON() ([]byte, error) {
  6974  	type NoMethod GoogleCloudDialogflowV2beta1WebhookResponse
  6975  	raw := NoMethod(*s)
  6976  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  6977  }
  6978  
  6979  // GoogleCloudDialogflowV3alpha1ExportAgentResponse: The response
  6980  // message for Agents.ExportAgent.
  6981  type GoogleCloudDialogflowV3alpha1ExportAgentResponse struct {
  6982  	// AgentContent: Uncompressed raw byte content for agent.
  6983  	AgentContent string `json:"agentContent,omitempty"`
  6984  
  6985  	// AgentUri: The URI to a file containing the exported agent. This field
  6986  	// is populated
  6987  	// only if `agent_uri` is specified in ExportAgentRequest.
  6988  	AgentUri string `json:"agentUri,omitempty"`
  6989  
  6990  	// ForceSendFields is a list of field names (e.g. "AgentContent") to
  6991  	// unconditionally include in API requests. By default, fields with
  6992  	// empty values are omitted from API requests. However, any non-pointer,
  6993  	// non-interface field appearing in ForceSendFields will be sent to the
  6994  	// server regardless of whether the field is empty or not. This may be
  6995  	// used to include empty fields in Patch requests.
  6996  	ForceSendFields []string `json:"-"`
  6997  
  6998  	// NullFields is a list of field names (e.g. "AgentContent") to include
  6999  	// in API requests with the JSON null value. By default, fields with
  7000  	// empty values are omitted from API requests. However, any field with
  7001  	// an empty value appearing in NullFields will be sent to the server as
  7002  	// null. It is an error if a field in this list has a non-empty value.
  7003  	// This may be used to include null fields in Patch requests.
  7004  	NullFields []string `json:"-"`
  7005  }
  7006  
  7007  func (s *GoogleCloudDialogflowV3alpha1ExportAgentResponse) MarshalJSON() ([]byte, error) {
  7008  	type NoMethod GoogleCloudDialogflowV3alpha1ExportAgentResponse
  7009  	raw := NoMethod(*s)
  7010  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  7011  }
  7012  
  7013  // GoogleLongrunningListOperationsResponse: The response message for
  7014  // Operations.ListOperations.
  7015  type GoogleLongrunningListOperationsResponse struct {
  7016  	// NextPageToken: The standard List next-page token.
  7017  	NextPageToken string `json:"nextPageToken,omitempty"`
  7018  
  7019  	// Operations: A list of operations that matches the specified filter in
  7020  	// the request.
  7021  	Operations []*GoogleLongrunningOperation `json:"operations,omitempty"`
  7022  
  7023  	// ServerResponse contains the HTTP response code and headers from the
  7024  	// server.
  7025  	googleapi.ServerResponse `json:"-"`
  7026  
  7027  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  7028  	// unconditionally include in API requests. By default, fields with
  7029  	// empty values are omitted from API requests. However, any non-pointer,
  7030  	// non-interface field appearing in ForceSendFields will be sent to the
  7031  	// server regardless of whether the field is empty or not. This may be
  7032  	// used to include empty fields in Patch requests.
  7033  	ForceSendFields []string `json:"-"`
  7034  
  7035  	// NullFields is a list of field names (e.g. "NextPageToken") to include
  7036  	// in API requests with the JSON null value. By default, fields with
  7037  	// empty values are omitted from API requests. However, any field with
  7038  	// an empty value appearing in NullFields will be sent to the server as
  7039  	// null. It is an error if a field in this list has a non-empty value.
  7040  	// This may be used to include null fields in Patch requests.
  7041  	NullFields []string `json:"-"`
  7042  }
  7043  
  7044  func (s *GoogleLongrunningListOperationsResponse) MarshalJSON() ([]byte, error) {
  7045  	type NoMethod GoogleLongrunningListOperationsResponse
  7046  	raw := NoMethod(*s)
  7047  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  7048  }
  7049  
  7050  // GoogleLongrunningOperation: This resource represents a long-running
  7051  // operation that is the result of a
  7052  // network API call.
  7053  type GoogleLongrunningOperation struct {
  7054  	// Done: If the value is `false`, it means the operation is still in
  7055  	// progress.
  7056  	// If `true`, the operation is completed, and either `error` or
  7057  	// `response` is
  7058  	// available.
  7059  	Done bool `json:"done,omitempty"`
  7060  
  7061  	// Error: The error result of the operation in case of failure or
  7062  	// cancellation.
  7063  	Error *GoogleRpcStatus `json:"error,omitempty"`
  7064  
  7065  	// Metadata: Service-specific metadata associated with the operation.
  7066  	// It typically
  7067  	// contains progress information and common metadata such as create
  7068  	// time.
  7069  	// Some services might not provide such metadata.  Any method that
  7070  	// returns a
  7071  	// long-running operation should document the metadata type, if any.
  7072  	Metadata googleapi.RawMessage `json:"metadata,omitempty"`
  7073  
  7074  	// Name: The server-assigned name, which is only unique within the same
  7075  	// service that
  7076  	// originally returns it. If you use the default HTTP mapping,
  7077  	// the
  7078  	// `name` should be a resource name ending with
  7079  	// `operations/{unique_id}`.
  7080  	Name string `json:"name,omitempty"`
  7081  
  7082  	// Response: The normal response of the operation in case of success.
  7083  	// If the original
  7084  	// method returns no data on success, such as `Delete`, the response
  7085  	// is
  7086  	// `google.protobuf.Empty`.  If the original method is
  7087  	// standard
  7088  	// `Get`/`Create`/`Update`, the response should be the resource.  For
  7089  	// other
  7090  	// methods, the response should have the type `XxxResponse`, where
  7091  	// `Xxx`
  7092  	// is the original method name.  For example, if the original method
  7093  	// name
  7094  	// is `TakeSnapshot()`, the inferred response type
  7095  	// is
  7096  	// `TakeSnapshotResponse`.
  7097  	Response googleapi.RawMessage `json:"response,omitempty"`
  7098  
  7099  	// ServerResponse contains the HTTP response code and headers from the
  7100  	// server.
  7101  	googleapi.ServerResponse `json:"-"`
  7102  
  7103  	// ForceSendFields is a list of field names (e.g. "Done") to
  7104  	// unconditionally include in API requests. By default, fields with
  7105  	// empty values are omitted from API requests. However, any non-pointer,
  7106  	// non-interface field appearing in ForceSendFields will be sent to the
  7107  	// server regardless of whether the field is empty or not. This may be
  7108  	// used to include empty fields in Patch requests.
  7109  	ForceSendFields []string `json:"-"`
  7110  
  7111  	// NullFields is a list of field names (e.g. "Done") to include in API
  7112  	// requests with the JSON null value. By default, fields with empty
  7113  	// values are omitted from API requests. However, any field with an
  7114  	// empty value appearing in NullFields will be sent to the server as
  7115  	// null. It is an error if a field in this list has a non-empty value.
  7116  	// This may be used to include null fields in Patch requests.
  7117  	NullFields []string `json:"-"`
  7118  }
  7119  
  7120  func (s *GoogleLongrunningOperation) MarshalJSON() ([]byte, error) {
  7121  	type NoMethod GoogleLongrunningOperation
  7122  	raw := NoMethod(*s)
  7123  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  7124  }
  7125  
  7126  // GoogleProtobufEmpty: A generic empty message that you can re-use to
  7127  // avoid defining duplicated
  7128  // empty messages in your APIs. A typical example is to use it as the
  7129  // request
  7130  // or the response type of an API method. For instance:
  7131  //
  7132  //	service Foo {
  7133  //	  rpc Bar(google.protobuf.Empty) returns
  7134  //
  7135  // (google.protobuf.Empty);
  7136  //
  7137  //	}
  7138  //
  7139  // The JSON representation for `Empty` is empty JSON object `{}`.
  7140  type GoogleProtobufEmpty struct {
  7141  	// ServerResponse contains the HTTP response code and headers from the
  7142  	// server.
  7143  	googleapi.ServerResponse `json:"-"`
  7144  }
  7145  
  7146  // GoogleRpcStatus: The `Status` type defines a logical error model that
  7147  // is suitable for
  7148  // different programming environments, including REST APIs and RPC APIs.
  7149  // It is
  7150  // used by [gRPC](https://github.com/grpc). Each `Status` message
  7151  // contains
  7152  // three pieces of data: error code, error message, and error
  7153  // details.
  7154  //
  7155  // You can find out more about this error model and how to work with it
  7156  // in the
  7157  // [API Design Guide](https://cloud.google.com/apis/design/errors).
  7158  type GoogleRpcStatus struct {
  7159  	// Code: The status code, which should be an enum value of
  7160  	// google.rpc.Code.
  7161  	Code int64 `json:"code,omitempty"`
  7162  
  7163  	// Details: A list of messages that carry the error details.  There is a
  7164  	// common set of
  7165  	// message types for APIs to use.
  7166  	Details []googleapi.RawMessage `json:"details,omitempty"`
  7167  
  7168  	// Message: A developer-facing error message, which should be in
  7169  	// English. Any
  7170  	// user-facing error message should be localized and sent in
  7171  	// the
  7172  	// google.rpc.Status.details field, or localized by the client.
  7173  	Message string `json:"message,omitempty"`
  7174  
  7175  	// ForceSendFields is a list of field names (e.g. "Code") to
  7176  	// unconditionally include in API requests. By default, fields with
  7177  	// empty values are omitted from API requests. However, any non-pointer,
  7178  	// non-interface field appearing in ForceSendFields will be sent to the
  7179  	// server regardless of whether the field is empty or not. This may be
  7180  	// used to include empty fields in Patch requests.
  7181  	ForceSendFields []string `json:"-"`
  7182  
  7183  	// NullFields is a list of field names (e.g. "Code") to include in API
  7184  	// requests with the JSON null value. By default, fields with empty
  7185  	// values are omitted from API requests. However, any field with an
  7186  	// empty value appearing in NullFields will be sent to the server as
  7187  	// null. It is an error if a field in this list has a non-empty value.
  7188  	// This may be used to include null fields in Patch requests.
  7189  	NullFields []string `json:"-"`
  7190  }
  7191  
  7192  func (s *GoogleRpcStatus) MarshalJSON() ([]byte, error) {
  7193  	type NoMethod GoogleRpcStatus
  7194  	raw := NoMethod(*s)
  7195  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  7196  }
  7197  
  7198  // method id "dialogflow.projects.locations.operations.cancel":
  7199  
  7200  type ProjectsLocationsOperationsCancelCall struct {
  7201  	s          *Service
  7202  	name       string
  7203  	urlParams_ gensupport.URLParams
  7204  	ctx_       context.Context
  7205  	header_    http.Header
  7206  }
  7207  
  7208  // Cancel: Starts asynchronous cancellation on a long-running operation.
  7209  //
  7210  //	The server
  7211  //
  7212  // makes a best effort to cancel the operation, but success is
  7213  // not
  7214  // guaranteed.  If the server doesn't support this method, it
  7215  // returns
  7216  // `google.rpc.Code.UNIMPLEMENTED`.  Clients can
  7217  // use
  7218  // Operations.GetOperation or
  7219  // other methods to check whether the cancellation succeeded or whether
  7220  // the
  7221  // operation completed despite cancellation. On successful
  7222  // cancellation,
  7223  // the operation is not deleted; instead, it becomes an operation
  7224  // with
  7225  // an Operation.error value with a google.rpc.Status.code of
  7226  // 1,
  7227  // corresponding to `Code.CANCELLED`.
  7228  func (r *ProjectsLocationsOperationsService) Cancel(name string) *ProjectsLocationsOperationsCancelCall {
  7229  	c := &ProjectsLocationsOperationsCancelCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7230  	c.name = name
  7231  	return c
  7232  }
  7233  
  7234  // Fields allows partial responses to be retrieved. See
  7235  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
  7236  // for more information.
  7237  func (c *ProjectsLocationsOperationsCancelCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsCancelCall {
  7238  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7239  	return c
  7240  }
  7241  
  7242  // Context sets the context to be used in this call's Do method. Any
  7243  // pending HTTP request will be aborted if the provided context is
  7244  // canceled.
  7245  func (c *ProjectsLocationsOperationsCancelCall) Context(ctx context.Context) *ProjectsLocationsOperationsCancelCall {
  7246  	c.ctx_ = ctx
  7247  	return c
  7248  }
  7249  
  7250  // Header returns an http.Header that can be modified by the caller to
  7251  // add HTTP headers to the request.
  7252  func (c *ProjectsLocationsOperationsCancelCall) Header() http.Header {
  7253  	if c.header_ == nil {
  7254  		c.header_ = make(http.Header)
  7255  	}
  7256  	return c.header_
  7257  }
  7258  
  7259  func (c *ProjectsLocationsOperationsCancelCall) doRequest(alt string) (*http.Response, error) {
  7260  	reqHeaders := make(http.Header)
  7261  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200518")
  7262  	for k, v := range c.header_ {
  7263  		reqHeaders[k] = v
  7264  	}
  7265  	reqHeaders.Set("User-Agent", c.s.userAgent())
  7266  	var body io.Reader = nil
  7267  	c.urlParams_.Set("alt", alt)
  7268  	c.urlParams_.Set("prettyPrint", "false")
  7269  	urls := googleapi.ResolveRelative(c.s.BasePath, "v3alpha1/{+name}:cancel")
  7270  	urls += "?" + c.urlParams_.Encode()
  7271  	req, err := http.NewRequest("POST", urls, body)
  7272  	if err != nil {
  7273  		return nil, err
  7274  	}
  7275  	req.Header = reqHeaders
  7276  	googleapi.Expand(req.URL, map[string]string{
  7277  		"name": c.name,
  7278  	})
  7279  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7280  }
  7281  
  7282  // Do executes the "dialogflow.projects.locations.operations.cancel" call.
  7283  // Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
  7284  // non-2xx status code is an error. Response headers are in either
  7285  // *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
  7286  // returned at all) in error.(*googleapi.Error).Header. Use
  7287  // googleapi.IsNotModified to check whether the returned error was
  7288  // because http.StatusNotModified was returned.
  7289  func (c *ProjectsLocationsOperationsCancelCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
  7290  	gensupport.SetOptions(c.urlParams_, opts...)
  7291  	res, err := c.doRequest("json")
  7292  	if res != nil && res.StatusCode == http.StatusNotModified {
  7293  		if res.Body != nil {
  7294  			res.Body.Close()
  7295  		}
  7296  		return nil, &googleapi.Error{
  7297  			Code:   res.StatusCode,
  7298  			Header: res.Header,
  7299  		}
  7300  	}
  7301  	if err != nil {
  7302  		return nil, err
  7303  	}
  7304  	defer googleapi.CloseBody(res)
  7305  	if err := googleapi.CheckResponse(res); err != nil {
  7306  		return nil, err
  7307  	}
  7308  	ret := &GoogleProtobufEmpty{
  7309  		ServerResponse: googleapi.ServerResponse{
  7310  			Header:         res.Header,
  7311  			HTTPStatusCode: res.StatusCode,
  7312  		},
  7313  	}
  7314  	target := &ret
  7315  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7316  		return nil, err
  7317  	}
  7318  	return ret, nil
  7319  	// {
  7320  	//   "description": "Starts asynchronous cancellation on a long-running operation.  The server\nmakes a best effort to cancel the operation, but success is not\nguaranteed.  If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`.  Clients can use\nOperations.GetOperation or\nother methods to check whether the cancellation succeeded or whether the\noperation completed despite cancellation. On successful cancellation,\nthe operation is not deleted; instead, it becomes an operation with\nan Operation.error value with a google.rpc.Status.code of 1,\ncorresponding to `Code.CANCELLED`.",
  7321  	//   "flatPath": "v3alpha1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}:cancel",
  7322  	//   "httpMethod": "POST",
  7323  	//   "id": "dialogflow.projects.locations.operations.cancel",
  7324  	//   "parameterOrder": [
  7325  	//     "name"
  7326  	//   ],
  7327  	//   "parameters": {
  7328  	//     "name": {
  7329  	//       "description": "The name of the operation resource to be cancelled.",
  7330  	//       "location": "path",
  7331  	//       "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$",
  7332  	//       "required": true,
  7333  	//       "type": "string"
  7334  	//     }
  7335  	//   },
  7336  	//   "path": "v3alpha1/{+name}:cancel",
  7337  	//   "response": {
  7338  	//     "$ref": "GoogleProtobufEmpty"
  7339  	//   },
  7340  	//   "scopes": [
  7341  	//     "https://www.googleapis.com/auth/cloud-platform",
  7342  	//     "https://www.googleapis.com/auth/dialogflow"
  7343  	//   ]
  7344  	// }
  7345  
  7346  }
  7347  
  7348  // method id "dialogflow.projects.locations.operations.get":
  7349  
  7350  type ProjectsLocationsOperationsGetCall struct {
  7351  	s            *Service
  7352  	name         string
  7353  	urlParams_   gensupport.URLParams
  7354  	ifNoneMatch_ string
  7355  	ctx_         context.Context
  7356  	header_      http.Header
  7357  }
  7358  
  7359  // Get: Gets the latest state of a long-running operation.  Clients can
  7360  // use this
  7361  // method to poll the operation result at intervals as recommended by
  7362  // the API
  7363  // service.
  7364  func (r *ProjectsLocationsOperationsService) Get(name string) *ProjectsLocationsOperationsGetCall {
  7365  	c := &ProjectsLocationsOperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7366  	c.name = name
  7367  	return c
  7368  }
  7369  
  7370  // Fields allows partial responses to be retrieved. See
  7371  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
  7372  // for more information.
  7373  func (c *ProjectsLocationsOperationsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsGetCall {
  7374  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7375  	return c
  7376  }
  7377  
  7378  // IfNoneMatch sets the optional parameter which makes the operation
  7379  // fail if the object's ETag matches the given value. This is useful for
  7380  // getting updates only after the object has changed since the last
  7381  // request. Use googleapi.IsNotModified to check whether the response
  7382  // error from Do is the result of In-None-Match.
  7383  func (c *ProjectsLocationsOperationsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsOperationsGetCall {
  7384  	c.ifNoneMatch_ = entityTag
  7385  	return c
  7386  }
  7387  
  7388  // Context sets the context to be used in this call's Do method. Any
  7389  // pending HTTP request will be aborted if the provided context is
  7390  // canceled.
  7391  func (c *ProjectsLocationsOperationsGetCall) Context(ctx context.Context) *ProjectsLocationsOperationsGetCall {
  7392  	c.ctx_ = ctx
  7393  	return c
  7394  }
  7395  
  7396  // Header returns an http.Header that can be modified by the caller to
  7397  // add HTTP headers to the request.
  7398  func (c *ProjectsLocationsOperationsGetCall) Header() http.Header {
  7399  	if c.header_ == nil {
  7400  		c.header_ = make(http.Header)
  7401  	}
  7402  	return c.header_
  7403  }
  7404  
  7405  func (c *ProjectsLocationsOperationsGetCall) doRequest(alt string) (*http.Response, error) {
  7406  	reqHeaders := make(http.Header)
  7407  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200518")
  7408  	for k, v := range c.header_ {
  7409  		reqHeaders[k] = v
  7410  	}
  7411  	reqHeaders.Set("User-Agent", c.s.userAgent())
  7412  	if c.ifNoneMatch_ != "" {
  7413  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  7414  	}
  7415  	var body io.Reader = nil
  7416  	c.urlParams_.Set("alt", alt)
  7417  	c.urlParams_.Set("prettyPrint", "false")
  7418  	urls := googleapi.ResolveRelative(c.s.BasePath, "v3alpha1/{+name}")
  7419  	urls += "?" + c.urlParams_.Encode()
  7420  	req, err := http.NewRequest("GET", urls, body)
  7421  	if err != nil {
  7422  		return nil, err
  7423  	}
  7424  	req.Header = reqHeaders
  7425  	googleapi.Expand(req.URL, map[string]string{
  7426  		"name": c.name,
  7427  	})
  7428  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7429  }
  7430  
  7431  // Do executes the "dialogflow.projects.locations.operations.get" call.
  7432  // Exactly one of *GoogleLongrunningOperation or error will be non-nil.
  7433  // Any non-2xx status code is an error. Response headers are in either
  7434  // *GoogleLongrunningOperation.ServerResponse.Header or (if a response
  7435  // was returned at all) in error.(*googleapi.Error).Header. Use
  7436  // googleapi.IsNotModified to check whether the returned error was
  7437  // because http.StatusNotModified was returned.
  7438  func (c *ProjectsLocationsOperationsGetCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
  7439  	gensupport.SetOptions(c.urlParams_, opts...)
  7440  	res, err := c.doRequest("json")
  7441  	if res != nil && res.StatusCode == http.StatusNotModified {
  7442  		if res.Body != nil {
  7443  			res.Body.Close()
  7444  		}
  7445  		return nil, &googleapi.Error{
  7446  			Code:   res.StatusCode,
  7447  			Header: res.Header,
  7448  		}
  7449  	}
  7450  	if err != nil {
  7451  		return nil, err
  7452  	}
  7453  	defer googleapi.CloseBody(res)
  7454  	if err := googleapi.CheckResponse(res); err != nil {
  7455  		return nil, err
  7456  	}
  7457  	ret := &GoogleLongrunningOperation{
  7458  		ServerResponse: googleapi.ServerResponse{
  7459  			Header:         res.Header,
  7460  			HTTPStatusCode: res.StatusCode,
  7461  		},
  7462  	}
  7463  	target := &ret
  7464  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7465  		return nil, err
  7466  	}
  7467  	return ret, nil
  7468  	// {
  7469  	//   "description": "Gets the latest state of a long-running operation.  Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.",
  7470  	//   "flatPath": "v3alpha1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}",
  7471  	//   "httpMethod": "GET",
  7472  	//   "id": "dialogflow.projects.locations.operations.get",
  7473  	//   "parameterOrder": [
  7474  	//     "name"
  7475  	//   ],
  7476  	//   "parameters": {
  7477  	//     "name": {
  7478  	//       "description": "The name of the operation resource.",
  7479  	//       "location": "path",
  7480  	//       "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$",
  7481  	//       "required": true,
  7482  	//       "type": "string"
  7483  	//     }
  7484  	//   },
  7485  	//   "path": "v3alpha1/{+name}",
  7486  	//   "response": {
  7487  	//     "$ref": "GoogleLongrunningOperation"
  7488  	//   },
  7489  	//   "scopes": [
  7490  	//     "https://www.googleapis.com/auth/cloud-platform",
  7491  	//     "https://www.googleapis.com/auth/dialogflow"
  7492  	//   ]
  7493  	// }
  7494  
  7495  }
  7496  
  7497  // method id "dialogflow.projects.locations.operations.list":
  7498  
  7499  type ProjectsLocationsOperationsListCall struct {
  7500  	s            *Service
  7501  	name         string
  7502  	urlParams_   gensupport.URLParams
  7503  	ifNoneMatch_ string
  7504  	ctx_         context.Context
  7505  	header_      http.Header
  7506  }
  7507  
  7508  // List: Lists operations that match the specified filter in the
  7509  // request. If the
  7510  // server doesn't support this method, it returns
  7511  // `UNIMPLEMENTED`.
  7512  //
  7513  // NOTE: the `name` binding allows API services to override the
  7514  // binding
  7515  // to use different resource name schemes, such as `users/*/operations`.
  7516  // To
  7517  // override the binding, API services can add a binding such
  7518  // as
  7519  // "/v1/{name=users/*}/operations" to their service configuration.
  7520  // For backwards compatibility, the default name includes the
  7521  // operations
  7522  // collection id, however overriding users must ensure the name
  7523  // binding
  7524  // is the parent resource, without the operations collection id.
  7525  func (r *ProjectsLocationsOperationsService) List(name string) *ProjectsLocationsOperationsListCall {
  7526  	c := &ProjectsLocationsOperationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7527  	c.name = name
  7528  	return c
  7529  }
  7530  
  7531  // Filter sets the optional parameter "filter": The standard list
  7532  // filter.
  7533  func (c *ProjectsLocationsOperationsListCall) Filter(filter string) *ProjectsLocationsOperationsListCall {
  7534  	c.urlParams_.Set("filter", filter)
  7535  	return c
  7536  }
  7537  
  7538  // PageSize sets the optional parameter "pageSize": The standard list
  7539  // page size.
  7540  func (c *ProjectsLocationsOperationsListCall) PageSize(pageSize int64) *ProjectsLocationsOperationsListCall {
  7541  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  7542  	return c
  7543  }
  7544  
  7545  // PageToken sets the optional parameter "pageToken": The standard list
  7546  // page token.
  7547  func (c *ProjectsLocationsOperationsListCall) PageToken(pageToken string) *ProjectsLocationsOperationsListCall {
  7548  	c.urlParams_.Set("pageToken", pageToken)
  7549  	return c
  7550  }
  7551  
  7552  // Fields allows partial responses to be retrieved. See
  7553  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
  7554  // for more information.
  7555  func (c *ProjectsLocationsOperationsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsListCall {
  7556  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7557  	return c
  7558  }
  7559  
  7560  // IfNoneMatch sets the optional parameter which makes the operation
  7561  // fail if the object's ETag matches the given value. This is useful for
  7562  // getting updates only after the object has changed since the last
  7563  // request. Use googleapi.IsNotModified to check whether the response
  7564  // error from Do is the result of In-None-Match.
  7565  func (c *ProjectsLocationsOperationsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsOperationsListCall {
  7566  	c.ifNoneMatch_ = entityTag
  7567  	return c
  7568  }
  7569  
  7570  // Context sets the context to be used in this call's Do method. Any
  7571  // pending HTTP request will be aborted if the provided context is
  7572  // canceled.
  7573  func (c *ProjectsLocationsOperationsListCall) Context(ctx context.Context) *ProjectsLocationsOperationsListCall {
  7574  	c.ctx_ = ctx
  7575  	return c
  7576  }
  7577  
  7578  // Header returns an http.Header that can be modified by the caller to
  7579  // add HTTP headers to the request.
  7580  func (c *ProjectsLocationsOperationsListCall) Header() http.Header {
  7581  	if c.header_ == nil {
  7582  		c.header_ = make(http.Header)
  7583  	}
  7584  	return c.header_
  7585  }
  7586  
  7587  func (c *ProjectsLocationsOperationsListCall) doRequest(alt string) (*http.Response, error) {
  7588  	reqHeaders := make(http.Header)
  7589  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200518")
  7590  	for k, v := range c.header_ {
  7591  		reqHeaders[k] = v
  7592  	}
  7593  	reqHeaders.Set("User-Agent", c.s.userAgent())
  7594  	if c.ifNoneMatch_ != "" {
  7595  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  7596  	}
  7597  	var body io.Reader = nil
  7598  	c.urlParams_.Set("alt", alt)
  7599  	c.urlParams_.Set("prettyPrint", "false")
  7600  	urls := googleapi.ResolveRelative(c.s.BasePath, "v3alpha1/{+name}/operations")
  7601  	urls += "?" + c.urlParams_.Encode()
  7602  	req, err := http.NewRequest("GET", urls, body)
  7603  	if err != nil {
  7604  		return nil, err
  7605  	}
  7606  	req.Header = reqHeaders
  7607  	googleapi.Expand(req.URL, map[string]string{
  7608  		"name": c.name,
  7609  	})
  7610  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7611  }
  7612  
  7613  // Do executes the "dialogflow.projects.locations.operations.list" call.
  7614  // Exactly one of *GoogleLongrunningListOperationsResponse or error will
  7615  // be non-nil. Any non-2xx status code is an error. Response headers are
  7616  // in either
  7617  // *GoogleLongrunningListOperationsResponse.ServerResponse.Header or (if
  7618  // a response was returned at all) in error.(*googleapi.Error).Header.
  7619  // Use googleapi.IsNotModified to check whether the returned error was
  7620  // because http.StatusNotModified was returned.
  7621  func (c *ProjectsLocationsOperationsListCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningListOperationsResponse, error) {
  7622  	gensupport.SetOptions(c.urlParams_, opts...)
  7623  	res, err := c.doRequest("json")
  7624  	if res != nil && res.StatusCode == http.StatusNotModified {
  7625  		if res.Body != nil {
  7626  			res.Body.Close()
  7627  		}
  7628  		return nil, &googleapi.Error{
  7629  			Code:   res.StatusCode,
  7630  			Header: res.Header,
  7631  		}
  7632  	}
  7633  	if err != nil {
  7634  		return nil, err
  7635  	}
  7636  	defer googleapi.CloseBody(res)
  7637  	if err := googleapi.CheckResponse(res); err != nil {
  7638  		return nil, err
  7639  	}
  7640  	ret := &GoogleLongrunningListOperationsResponse{
  7641  		ServerResponse: googleapi.ServerResponse{
  7642  			Header:         res.Header,
  7643  			HTTPStatusCode: res.StatusCode,
  7644  		},
  7645  	}
  7646  	target := &ret
  7647  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7648  		return nil, err
  7649  	}
  7650  	return ret, nil
  7651  	// {
  7652  	//   "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id.",
  7653  	//   "flatPath": "v3alpha1/projects/{projectsId}/locations/{locationsId}/operations",
  7654  	//   "httpMethod": "GET",
  7655  	//   "id": "dialogflow.projects.locations.operations.list",
  7656  	//   "parameterOrder": [
  7657  	//     "name"
  7658  	//   ],
  7659  	//   "parameters": {
  7660  	//     "filter": {
  7661  	//       "description": "The standard list filter.",
  7662  	//       "location": "query",
  7663  	//       "type": "string"
  7664  	//     },
  7665  	//     "name": {
  7666  	//       "description": "The name of the operation's parent resource.",
  7667  	//       "location": "path",
  7668  	//       "pattern": "^projects/[^/]+/locations/[^/]+$",
  7669  	//       "required": true,
  7670  	//       "type": "string"
  7671  	//     },
  7672  	//     "pageSize": {
  7673  	//       "description": "The standard list page size.",
  7674  	//       "format": "int32",
  7675  	//       "location": "query",
  7676  	//       "type": "integer"
  7677  	//     },
  7678  	//     "pageToken": {
  7679  	//       "description": "The standard list page token.",
  7680  	//       "location": "query",
  7681  	//       "type": "string"
  7682  	//     }
  7683  	//   },
  7684  	//   "path": "v3alpha1/{+name}/operations",
  7685  	//   "response": {
  7686  	//     "$ref": "GoogleLongrunningListOperationsResponse"
  7687  	//   },
  7688  	//   "scopes": [
  7689  	//     "https://www.googleapis.com/auth/cloud-platform",
  7690  	//     "https://www.googleapis.com/auth/dialogflow"
  7691  	//   ]
  7692  	// }
  7693  
  7694  }
  7695  
  7696  // Pages invokes f for each page of results.
  7697  // A non-nil error returned from f will halt the iteration.
  7698  // The provided context supersedes any context provided to the Context method.
  7699  func (c *ProjectsLocationsOperationsListCall) Pages(ctx context.Context, f func(*GoogleLongrunningListOperationsResponse) error) error {
  7700  	c.ctx_ = ctx
  7701  	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
  7702  	for {
  7703  		x, err := c.Do()
  7704  		if err != nil {
  7705  			return err
  7706  		}
  7707  		if err := f(x); err != nil {
  7708  			return err
  7709  		}
  7710  		if x.NextPageToken == "" {
  7711  			return nil
  7712  		}
  7713  		c.PageToken(x.NextPageToken)
  7714  	}
  7715  }
  7716  
  7717  // method id "dialogflow.projects.operations.cancel":
  7718  
  7719  type ProjectsOperationsCancelCall struct {
  7720  	s          *Service
  7721  	name       string
  7722  	urlParams_ gensupport.URLParams
  7723  	ctx_       context.Context
  7724  	header_    http.Header
  7725  }
  7726  
  7727  // Cancel: Starts asynchronous cancellation on a long-running operation.
  7728  //
  7729  //	The server
  7730  //
  7731  // makes a best effort to cancel the operation, but success is
  7732  // not
  7733  // guaranteed.  If the server doesn't support this method, it
  7734  // returns
  7735  // `google.rpc.Code.UNIMPLEMENTED`.  Clients can
  7736  // use
  7737  // Operations.GetOperation or
  7738  // other methods to check whether the cancellation succeeded or whether
  7739  // the
  7740  // operation completed despite cancellation. On successful
  7741  // cancellation,
  7742  // the operation is not deleted; instead, it becomes an operation
  7743  // with
  7744  // an Operation.error value with a google.rpc.Status.code of
  7745  // 1,
  7746  // corresponding to `Code.CANCELLED`.
  7747  func (r *ProjectsOperationsService) Cancel(name string) *ProjectsOperationsCancelCall {
  7748  	c := &ProjectsOperationsCancelCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7749  	c.name = name
  7750  	return c
  7751  }
  7752  
  7753  // Fields allows partial responses to be retrieved. See
  7754  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
  7755  // for more information.
  7756  func (c *ProjectsOperationsCancelCall) Fields(s ...googleapi.Field) *ProjectsOperationsCancelCall {
  7757  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7758  	return c
  7759  }
  7760  
  7761  // Context sets the context to be used in this call's Do method. Any
  7762  // pending HTTP request will be aborted if the provided context is
  7763  // canceled.
  7764  func (c *ProjectsOperationsCancelCall) Context(ctx context.Context) *ProjectsOperationsCancelCall {
  7765  	c.ctx_ = ctx
  7766  	return c
  7767  }
  7768  
  7769  // Header returns an http.Header that can be modified by the caller to
  7770  // add HTTP headers to the request.
  7771  func (c *ProjectsOperationsCancelCall) Header() http.Header {
  7772  	if c.header_ == nil {
  7773  		c.header_ = make(http.Header)
  7774  	}
  7775  	return c.header_
  7776  }
  7777  
  7778  func (c *ProjectsOperationsCancelCall) doRequest(alt string) (*http.Response, error) {
  7779  	reqHeaders := make(http.Header)
  7780  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200518")
  7781  	for k, v := range c.header_ {
  7782  		reqHeaders[k] = v
  7783  	}
  7784  	reqHeaders.Set("User-Agent", c.s.userAgent())
  7785  	var body io.Reader = nil
  7786  	c.urlParams_.Set("alt", alt)
  7787  	c.urlParams_.Set("prettyPrint", "false")
  7788  	urls := googleapi.ResolveRelative(c.s.BasePath, "v3alpha1/{+name}:cancel")
  7789  	urls += "?" + c.urlParams_.Encode()
  7790  	req, err := http.NewRequest("POST", urls, body)
  7791  	if err != nil {
  7792  		return nil, err
  7793  	}
  7794  	req.Header = reqHeaders
  7795  	googleapi.Expand(req.URL, map[string]string{
  7796  		"name": c.name,
  7797  	})
  7798  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7799  }
  7800  
  7801  // Do executes the "dialogflow.projects.operations.cancel" call.
  7802  // Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
  7803  // non-2xx status code is an error. Response headers are in either
  7804  // *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
  7805  // returned at all) in error.(*googleapi.Error).Header. Use
  7806  // googleapi.IsNotModified to check whether the returned error was
  7807  // because http.StatusNotModified was returned.
  7808  func (c *ProjectsOperationsCancelCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
  7809  	gensupport.SetOptions(c.urlParams_, opts...)
  7810  	res, err := c.doRequest("json")
  7811  	if res != nil && res.StatusCode == http.StatusNotModified {
  7812  		if res.Body != nil {
  7813  			res.Body.Close()
  7814  		}
  7815  		return nil, &googleapi.Error{
  7816  			Code:   res.StatusCode,
  7817  			Header: res.Header,
  7818  		}
  7819  	}
  7820  	if err != nil {
  7821  		return nil, err
  7822  	}
  7823  	defer googleapi.CloseBody(res)
  7824  	if err := googleapi.CheckResponse(res); err != nil {
  7825  		return nil, err
  7826  	}
  7827  	ret := &GoogleProtobufEmpty{
  7828  		ServerResponse: googleapi.ServerResponse{
  7829  			Header:         res.Header,
  7830  			HTTPStatusCode: res.StatusCode,
  7831  		},
  7832  	}
  7833  	target := &ret
  7834  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7835  		return nil, err
  7836  	}
  7837  	return ret, nil
  7838  	// {
  7839  	//   "description": "Starts asynchronous cancellation on a long-running operation.  The server\nmakes a best effort to cancel the operation, but success is not\nguaranteed.  If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`.  Clients can use\nOperations.GetOperation or\nother methods to check whether the cancellation succeeded or whether the\noperation completed despite cancellation. On successful cancellation,\nthe operation is not deleted; instead, it becomes an operation with\nan Operation.error value with a google.rpc.Status.code of 1,\ncorresponding to `Code.CANCELLED`.",
  7840  	//   "flatPath": "v3alpha1/projects/{projectsId}/operations/{operationsId}:cancel",
  7841  	//   "httpMethod": "POST",
  7842  	//   "id": "dialogflow.projects.operations.cancel",
  7843  	//   "parameterOrder": [
  7844  	//     "name"
  7845  	//   ],
  7846  	//   "parameters": {
  7847  	//     "name": {
  7848  	//       "description": "The name of the operation resource to be cancelled.",
  7849  	//       "location": "path",
  7850  	//       "pattern": "^projects/[^/]+/operations/[^/]+$",
  7851  	//       "required": true,
  7852  	//       "type": "string"
  7853  	//     }
  7854  	//   },
  7855  	//   "path": "v3alpha1/{+name}:cancel",
  7856  	//   "response": {
  7857  	//     "$ref": "GoogleProtobufEmpty"
  7858  	//   },
  7859  	//   "scopes": [
  7860  	//     "https://www.googleapis.com/auth/cloud-platform",
  7861  	//     "https://www.googleapis.com/auth/dialogflow"
  7862  	//   ]
  7863  	// }
  7864  
  7865  }
  7866  
  7867  // method id "dialogflow.projects.operations.get":
  7868  
  7869  type ProjectsOperationsGetCall struct {
  7870  	s            *Service
  7871  	name         string
  7872  	urlParams_   gensupport.URLParams
  7873  	ifNoneMatch_ string
  7874  	ctx_         context.Context
  7875  	header_      http.Header
  7876  }
  7877  
  7878  // Get: Gets the latest state of a long-running operation.  Clients can
  7879  // use this
  7880  // method to poll the operation result at intervals as recommended by
  7881  // the API
  7882  // service.
  7883  func (r *ProjectsOperationsService) Get(name string) *ProjectsOperationsGetCall {
  7884  	c := &ProjectsOperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7885  	c.name = name
  7886  	return c
  7887  }
  7888  
  7889  // Fields allows partial responses to be retrieved. See
  7890  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
  7891  // for more information.
  7892  func (c *ProjectsOperationsGetCall) Fields(s ...googleapi.Field) *ProjectsOperationsGetCall {
  7893  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7894  	return c
  7895  }
  7896  
  7897  // IfNoneMatch sets the optional parameter which makes the operation
  7898  // fail if the object's ETag matches the given value. This is useful for
  7899  // getting updates only after the object has changed since the last
  7900  // request. Use googleapi.IsNotModified to check whether the response
  7901  // error from Do is the result of In-None-Match.
  7902  func (c *ProjectsOperationsGetCall) IfNoneMatch(entityTag string) *ProjectsOperationsGetCall {
  7903  	c.ifNoneMatch_ = entityTag
  7904  	return c
  7905  }
  7906  
  7907  // Context sets the context to be used in this call's Do method. Any
  7908  // pending HTTP request will be aborted if the provided context is
  7909  // canceled.
  7910  func (c *ProjectsOperationsGetCall) Context(ctx context.Context) *ProjectsOperationsGetCall {
  7911  	c.ctx_ = ctx
  7912  	return c
  7913  }
  7914  
  7915  // Header returns an http.Header that can be modified by the caller to
  7916  // add HTTP headers to the request.
  7917  func (c *ProjectsOperationsGetCall) Header() http.Header {
  7918  	if c.header_ == nil {
  7919  		c.header_ = make(http.Header)
  7920  	}
  7921  	return c.header_
  7922  }
  7923  
  7924  func (c *ProjectsOperationsGetCall) doRequest(alt string) (*http.Response, error) {
  7925  	reqHeaders := make(http.Header)
  7926  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200518")
  7927  	for k, v := range c.header_ {
  7928  		reqHeaders[k] = v
  7929  	}
  7930  	reqHeaders.Set("User-Agent", c.s.userAgent())
  7931  	if c.ifNoneMatch_ != "" {
  7932  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  7933  	}
  7934  	var body io.Reader = nil
  7935  	c.urlParams_.Set("alt", alt)
  7936  	c.urlParams_.Set("prettyPrint", "false")
  7937  	urls := googleapi.ResolveRelative(c.s.BasePath, "v3alpha1/{+name}")
  7938  	urls += "?" + c.urlParams_.Encode()
  7939  	req, err := http.NewRequest("GET", urls, body)
  7940  	if err != nil {
  7941  		return nil, err
  7942  	}
  7943  	req.Header = reqHeaders
  7944  	googleapi.Expand(req.URL, map[string]string{
  7945  		"name": c.name,
  7946  	})
  7947  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7948  }
  7949  
  7950  // Do executes the "dialogflow.projects.operations.get" call.
  7951  // Exactly one of *GoogleLongrunningOperation or error will be non-nil.
  7952  // Any non-2xx status code is an error. Response headers are in either
  7953  // *GoogleLongrunningOperation.ServerResponse.Header or (if a response
  7954  // was returned at all) in error.(*googleapi.Error).Header. Use
  7955  // googleapi.IsNotModified to check whether the returned error was
  7956  // because http.StatusNotModified was returned.
  7957  func (c *ProjectsOperationsGetCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
  7958  	gensupport.SetOptions(c.urlParams_, opts...)
  7959  	res, err := c.doRequest("json")
  7960  	if res != nil && res.StatusCode == http.StatusNotModified {
  7961  		if res.Body != nil {
  7962  			res.Body.Close()
  7963  		}
  7964  		return nil, &googleapi.Error{
  7965  			Code:   res.StatusCode,
  7966  			Header: res.Header,
  7967  		}
  7968  	}
  7969  	if err != nil {
  7970  		return nil, err
  7971  	}
  7972  	defer googleapi.CloseBody(res)
  7973  	if err := googleapi.CheckResponse(res); err != nil {
  7974  		return nil, err
  7975  	}
  7976  	ret := &GoogleLongrunningOperation{
  7977  		ServerResponse: googleapi.ServerResponse{
  7978  			Header:         res.Header,
  7979  			HTTPStatusCode: res.StatusCode,
  7980  		},
  7981  	}
  7982  	target := &ret
  7983  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7984  		return nil, err
  7985  	}
  7986  	return ret, nil
  7987  	// {
  7988  	//   "description": "Gets the latest state of a long-running operation.  Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.",
  7989  	//   "flatPath": "v3alpha1/projects/{projectsId}/operations/{operationsId}",
  7990  	//   "httpMethod": "GET",
  7991  	//   "id": "dialogflow.projects.operations.get",
  7992  	//   "parameterOrder": [
  7993  	//     "name"
  7994  	//   ],
  7995  	//   "parameters": {
  7996  	//     "name": {
  7997  	//       "description": "The name of the operation resource.",
  7998  	//       "location": "path",
  7999  	//       "pattern": "^projects/[^/]+/operations/[^/]+$",
  8000  	//       "required": true,
  8001  	//       "type": "string"
  8002  	//     }
  8003  	//   },
  8004  	//   "path": "v3alpha1/{+name}",
  8005  	//   "response": {
  8006  	//     "$ref": "GoogleLongrunningOperation"
  8007  	//   },
  8008  	//   "scopes": [
  8009  	//     "https://www.googleapis.com/auth/cloud-platform",
  8010  	//     "https://www.googleapis.com/auth/dialogflow"
  8011  	//   ]
  8012  	// }
  8013  
  8014  }
  8015  
  8016  // method id "dialogflow.projects.operations.list":
  8017  
  8018  type ProjectsOperationsListCall struct {
  8019  	s            *Service
  8020  	name         string
  8021  	urlParams_   gensupport.URLParams
  8022  	ifNoneMatch_ string
  8023  	ctx_         context.Context
  8024  	header_      http.Header
  8025  }
  8026  
  8027  // List: Lists operations that match the specified filter in the
  8028  // request. If the
  8029  // server doesn't support this method, it returns
  8030  // `UNIMPLEMENTED`.
  8031  //
  8032  // NOTE: the `name` binding allows API services to override the
  8033  // binding
  8034  // to use different resource name schemes, such as `users/*/operations`.
  8035  // To
  8036  // override the binding, API services can add a binding such
  8037  // as
  8038  // "/v1/{name=users/*}/operations" to their service configuration.
  8039  // For backwards compatibility, the default name includes the
  8040  // operations
  8041  // collection id, however overriding users must ensure the name
  8042  // binding
  8043  // is the parent resource, without the operations collection id.
  8044  func (r *ProjectsOperationsService) List(name string) *ProjectsOperationsListCall {
  8045  	c := &ProjectsOperationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8046  	c.name = name
  8047  	return c
  8048  }
  8049  
  8050  // Filter sets the optional parameter "filter": The standard list
  8051  // filter.
  8052  func (c *ProjectsOperationsListCall) Filter(filter string) *ProjectsOperationsListCall {
  8053  	c.urlParams_.Set("filter", filter)
  8054  	return c
  8055  }
  8056  
  8057  // PageSize sets the optional parameter "pageSize": The standard list
  8058  // page size.
  8059  func (c *ProjectsOperationsListCall) PageSize(pageSize int64) *ProjectsOperationsListCall {
  8060  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  8061  	return c
  8062  }
  8063  
  8064  // PageToken sets the optional parameter "pageToken": The standard list
  8065  // page token.
  8066  func (c *ProjectsOperationsListCall) PageToken(pageToken string) *ProjectsOperationsListCall {
  8067  	c.urlParams_.Set("pageToken", pageToken)
  8068  	return c
  8069  }
  8070  
  8071  // Fields allows partial responses to be retrieved. See
  8072  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
  8073  // for more information.
  8074  func (c *ProjectsOperationsListCall) Fields(s ...googleapi.Field) *ProjectsOperationsListCall {
  8075  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  8076  	return c
  8077  }
  8078  
  8079  // IfNoneMatch sets the optional parameter which makes the operation
  8080  // fail if the object's ETag matches the given value. This is useful for
  8081  // getting updates only after the object has changed since the last
  8082  // request. Use googleapi.IsNotModified to check whether the response
  8083  // error from Do is the result of In-None-Match.
  8084  func (c *ProjectsOperationsListCall) IfNoneMatch(entityTag string) *ProjectsOperationsListCall {
  8085  	c.ifNoneMatch_ = entityTag
  8086  	return c
  8087  }
  8088  
  8089  // Context sets the context to be used in this call's Do method. Any
  8090  // pending HTTP request will be aborted if the provided context is
  8091  // canceled.
  8092  func (c *ProjectsOperationsListCall) Context(ctx context.Context) *ProjectsOperationsListCall {
  8093  	c.ctx_ = ctx
  8094  	return c
  8095  }
  8096  
  8097  // Header returns an http.Header that can be modified by the caller to
  8098  // add HTTP headers to the request.
  8099  func (c *ProjectsOperationsListCall) Header() http.Header {
  8100  	if c.header_ == nil {
  8101  		c.header_ = make(http.Header)
  8102  	}
  8103  	return c.header_
  8104  }
  8105  
  8106  func (c *ProjectsOperationsListCall) doRequest(alt string) (*http.Response, error) {
  8107  	reqHeaders := make(http.Header)
  8108  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200518")
  8109  	for k, v := range c.header_ {
  8110  		reqHeaders[k] = v
  8111  	}
  8112  	reqHeaders.Set("User-Agent", c.s.userAgent())
  8113  	if c.ifNoneMatch_ != "" {
  8114  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  8115  	}
  8116  	var body io.Reader = nil
  8117  	c.urlParams_.Set("alt", alt)
  8118  	c.urlParams_.Set("prettyPrint", "false")
  8119  	urls := googleapi.ResolveRelative(c.s.BasePath, "v3alpha1/{+name}/operations")
  8120  	urls += "?" + c.urlParams_.Encode()
  8121  	req, err := http.NewRequest("GET", urls, body)
  8122  	if err != nil {
  8123  		return nil, err
  8124  	}
  8125  	req.Header = reqHeaders
  8126  	googleapi.Expand(req.URL, map[string]string{
  8127  		"name": c.name,
  8128  	})
  8129  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  8130  }
  8131  
  8132  // Do executes the "dialogflow.projects.operations.list" call.
  8133  // Exactly one of *GoogleLongrunningListOperationsResponse or error will
  8134  // be non-nil. Any non-2xx status code is an error. Response headers are
  8135  // in either
  8136  // *GoogleLongrunningListOperationsResponse.ServerResponse.Header or (if
  8137  // a response was returned at all) in error.(*googleapi.Error).Header.
  8138  // Use googleapi.IsNotModified to check whether the returned error was
  8139  // because http.StatusNotModified was returned.
  8140  func (c *ProjectsOperationsListCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningListOperationsResponse, error) {
  8141  	gensupport.SetOptions(c.urlParams_, opts...)
  8142  	res, err := c.doRequest("json")
  8143  	if res != nil && res.StatusCode == http.StatusNotModified {
  8144  		if res.Body != nil {
  8145  			res.Body.Close()
  8146  		}
  8147  		return nil, &googleapi.Error{
  8148  			Code:   res.StatusCode,
  8149  			Header: res.Header,
  8150  		}
  8151  	}
  8152  	if err != nil {
  8153  		return nil, err
  8154  	}
  8155  	defer googleapi.CloseBody(res)
  8156  	if err := googleapi.CheckResponse(res); err != nil {
  8157  		return nil, err
  8158  	}
  8159  	ret := &GoogleLongrunningListOperationsResponse{
  8160  		ServerResponse: googleapi.ServerResponse{
  8161  			Header:         res.Header,
  8162  			HTTPStatusCode: res.StatusCode,
  8163  		},
  8164  	}
  8165  	target := &ret
  8166  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8167  		return nil, err
  8168  	}
  8169  	return ret, nil
  8170  	// {
  8171  	//   "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id.",
  8172  	//   "flatPath": "v3alpha1/projects/{projectsId}/operations",
  8173  	//   "httpMethod": "GET",
  8174  	//   "id": "dialogflow.projects.operations.list",
  8175  	//   "parameterOrder": [
  8176  	//     "name"
  8177  	//   ],
  8178  	//   "parameters": {
  8179  	//     "filter": {
  8180  	//       "description": "The standard list filter.",
  8181  	//       "location": "query",
  8182  	//       "type": "string"
  8183  	//     },
  8184  	//     "name": {
  8185  	//       "description": "The name of the operation's parent resource.",
  8186  	//       "location": "path",
  8187  	//       "pattern": "^projects/[^/]+$",
  8188  	//       "required": true,
  8189  	//       "type": "string"
  8190  	//     },
  8191  	//     "pageSize": {
  8192  	//       "description": "The standard list page size.",
  8193  	//       "format": "int32",
  8194  	//       "location": "query",
  8195  	//       "type": "integer"
  8196  	//     },
  8197  	//     "pageToken": {
  8198  	//       "description": "The standard list page token.",
  8199  	//       "location": "query",
  8200  	//       "type": "string"
  8201  	//     }
  8202  	//   },
  8203  	//   "path": "v3alpha1/{+name}/operations",
  8204  	//   "response": {
  8205  	//     "$ref": "GoogleLongrunningListOperationsResponse"
  8206  	//   },
  8207  	//   "scopes": [
  8208  	//     "https://www.googleapis.com/auth/cloud-platform",
  8209  	//     "https://www.googleapis.com/auth/dialogflow"
  8210  	//   ]
  8211  	// }
  8212  
  8213  }
  8214  
  8215  // Pages invokes f for each page of results.
  8216  // A non-nil error returned from f will halt the iteration.
  8217  // The provided context supersedes any context provided to the Context method.
  8218  func (c *ProjectsOperationsListCall) Pages(ctx context.Context, f func(*GoogleLongrunningListOperationsResponse) error) error {
  8219  	c.ctx_ = ctx
  8220  	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
  8221  	for {
  8222  		x, err := c.Do()
  8223  		if err != nil {
  8224  			return err
  8225  		}
  8226  		if err := f(x); err != nil {
  8227  			return err
  8228  		}
  8229  		if x.NextPageToken == "" {
  8230  			return nil
  8231  		}
  8232  		c.PageToken(x.NextPageToken)
  8233  	}
  8234  }
  8235  

View as plain text