Documentation

Overview

Package dialogflow provides access to the Dialogflow API.

This package is DEPRECATED. Use package cloud.google.com/go/dialogflow/apiv2 instead.

For product documentation, see: https://cloud.google.com/dialogflow/

Creating a client

Usage example:

import "google.golang.org/api/dialogflow/v2"
...
ctx := context.Background()
dialogflowService, err := dialogflow.NewService(ctx)

In this example, Google Application Default Credentials are used for authentication.

For information on how to create and obtain Application Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials.

Other authentication options

By default, all available scopes (see "Constants") are used to authenticate. To restrict scopes, use option.WithScopes:

dialogflowService, err := dialogflow.NewService(ctx, option.WithScopes(dialogflow.DialogflowScope))

To use an API key for authentication (note: some APIs do not support API keys), use option.WithAPIKey:

dialogflowService, err := dialogflow.NewService(ctx, option.WithAPIKey("AIza..."))

To use an OAuth token (e.g., a user token obtained via a three-legged OAuth flow), use option.WithTokenSource:

config := &oauth2.Config{...}
// ...
token, err := config.Exchange(ctx, ...)
dialogflowService, err := dialogflow.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token)))

See https://godoc.org/google.golang.org/api/option/ for details on options.

Index

Constants

View Source
const (
	// View and manage your data across Google Cloud Platform services
	CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform"

	// View, manage and query your Dialogflow agents
	DialogflowScope = "https://www.googleapis.com/auth/dialogflow"
)

    OAuth2 scopes used by this API.

    Variables

    This section is empty.

    Functions

    This section is empty.

    Types

    type GoogleCloudDialogflowCxV3AudioInput

    type GoogleCloudDialogflowCxV3AudioInput struct {
    	// Audio: The natural language speech audio to be processed. A single
    	// request can contain up to 1 minute of speech audio data. The
    	// transcribed text cannot contain more than 256 bytes. For
    	// non-streaming audio detect intent, both `config` and `audio` must be
    	// provided. For streaming audio detect intent, `config` must be
    	// provided in the first request and `audio` must be provided in all
    	// following requests.
    	Audio string `json:"audio,omitempty"`
    
    	// Config: Required. Instructs the speech recognizer how to process the
    	// speech audio.
    	Config *GoogleCloudDialogflowCxV3InputAudioConfig `json:"config,omitempty"`
    
    	// ForceSendFields is a list of field names (e.g. "Audio") to
    	// unconditionally include in API requests. By default, fields with
    	// empty values are omitted from API requests. However, any non-pointer,
    	// non-interface field appearing in ForceSendFields will be sent to the
    	// server regardless of whether the field is empty or not. This may be
    	// used to include empty fields in Patch requests.
    	ForceSendFields []string `json:"-"`
    
    	// NullFields is a list of field names (e.g. "Audio") to include in API
    	// requests with the JSON null value. By default, fields with empty
    	// values are omitted from API requests. However, any field with an
    	// empty value appearing in NullFields will be sent to the server as
    	// null. It is an error if a field in this list has a non-empty value.
    	// This may be used to include null fields in Patch requests.
    	NullFields []string `json:"-"`
    }

      GoogleCloudDialogflowCxV3AudioInput: Represents the natural speech audio to be processed.

      func (*GoogleCloudDialogflowCxV3AudioInput) MarshalJSON

      func (s *GoogleCloudDialogflowCxV3AudioInput) MarshalJSON() ([]byte, error)

      type GoogleCloudDialogflowCxV3BatchRunTestCasesMetadata

      type GoogleCloudDialogflowCxV3BatchRunTestCasesMetadata struct {
      	// Errors: The test errors.
      	Errors []*GoogleCloudDialogflowCxV3TestError `json:"errors,omitempty"`
      
      	// ForceSendFields is a list of field names (e.g. "Errors") to
      	// unconditionally include in API requests. By default, fields with
      	// empty values are omitted from API requests. However, any non-pointer,
      	// non-interface field appearing in ForceSendFields will be sent to the
      	// server regardless of whether the field is empty or not. This may be
      	// used to include empty fields in Patch requests.
      	ForceSendFields []string `json:"-"`
      
      	// NullFields is a list of field names (e.g. "Errors") to include in API
      	// requests with the JSON null value. By default, fields with empty
      	// values are omitted from API requests. However, any field with an
      	// empty value appearing in NullFields will be sent to the server as
      	// null. It is an error if a field in this list has a non-empty value.
      	// This may be used to include null fields in Patch requests.
      	NullFields []string `json:"-"`
      }

        GoogleCloudDialogflowCxV3BatchRunTestCasesMetadata: Metadata returned for the TestCases.BatchRunTestCases long running operation.

        func (*GoogleCloudDialogflowCxV3BatchRunTestCasesMetadata) MarshalJSON

        type GoogleCloudDialogflowCxV3BatchRunTestCasesResponse

        type GoogleCloudDialogflowCxV3BatchRunTestCasesResponse struct {
        	// Results: The test case results. The detailed conversation turns are
        	// empty in this response.
        	Results []*GoogleCloudDialogflowCxV3TestCaseResult `json:"results,omitempty"`
        
        	// ForceSendFields is a list of field names (e.g. "Results") to
        	// unconditionally include in API requests. By default, fields with
        	// empty values are omitted from API requests. However, any non-pointer,
        	// non-interface field appearing in ForceSendFields will be sent to the
        	// server regardless of whether the field is empty or not. This may be
        	// used to include empty fields in Patch requests.
        	ForceSendFields []string `json:"-"`
        
        	// NullFields is a list of field names (e.g. "Results") to include in
        	// API requests with the JSON null value. By default, fields with empty
        	// values are omitted from API requests. However, any field with an
        	// empty value appearing in NullFields will be sent to the server as
        	// null. It is an error if a field in this list has a non-empty value.
        	// This may be used to include null fields in Patch requests.
        	NullFields []string `json:"-"`
        }

          GoogleCloudDialogflowCxV3BatchRunTestCasesResponse: The response message for TestCases.BatchRunTestCases.

          func (*GoogleCloudDialogflowCxV3BatchRunTestCasesResponse) MarshalJSON

          type GoogleCloudDialogflowCxV3ConversationTurn

          type GoogleCloudDialogflowCxV3ConversationTurn struct {
          	// UserInput: The user input.
          	UserInput *GoogleCloudDialogflowCxV3ConversationTurnUserInput `json:"userInput,omitempty"`
          
          	// VirtualAgentOutput: The virtual agent output.
          	VirtualAgentOutput *GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput `json:"virtualAgentOutput,omitempty"`
          
          	// ForceSendFields is a list of field names (e.g. "UserInput") to
          	// unconditionally include in API requests. By default, fields with
          	// empty values are omitted from API requests. However, any non-pointer,
          	// non-interface field appearing in ForceSendFields will be sent to the
          	// server regardless of whether the field is empty or not. This may be
          	// used to include empty fields in Patch requests.
          	ForceSendFields []string `json:"-"`
          
          	// NullFields is a list of field names (e.g. "UserInput") to include in
          	// API requests with the JSON null value. By default, fields with empty
          	// values are omitted from API requests. However, any field with an
          	// empty value appearing in NullFields will be sent to the server as
          	// null. It is an error if a field in this list has a non-empty value.
          	// This may be used to include null fields in Patch requests.
          	NullFields []string `json:"-"`
          }

            GoogleCloudDialogflowCxV3ConversationTurn: One interaction between a human and virtual agent. The human provides some input and the virtual agent provides a response.

            func (*GoogleCloudDialogflowCxV3ConversationTurn) MarshalJSON

            type GoogleCloudDialogflowCxV3ConversationTurnUserInput

            type GoogleCloudDialogflowCxV3ConversationTurnUserInput struct {
            	// InjectedParameters: Parameters that need to be injected into the
            	// conversation during intent detection.
            	InjectedParameters googleapi.RawMessage `json:"injectedParameters,omitempty"`
            
            	// Input: Supports text input, event input, dtmf input in the test case.
            	Input *GoogleCloudDialogflowCxV3QueryInput `json:"input,omitempty"`
            
            	// IsWebhookEnabled: If webhooks should be allowed to trigger in
            	// response to the user utterance. Often if parameters are injected,
            	// webhooks should not be enabled.
            	IsWebhookEnabled bool `json:"isWebhookEnabled,omitempty"`
            
            	// ForceSendFields is a list of field names (e.g. "InjectedParameters")
            	// to unconditionally include in API requests. By default, fields with
            	// empty values are omitted from API requests. However, any non-pointer,
            	// non-interface field appearing in ForceSendFields will be sent to the
            	// server regardless of whether the field is empty or not. This may be
            	// used to include empty fields in Patch requests.
            	ForceSendFields []string `json:"-"`
            
            	// NullFields is a list of field names (e.g. "InjectedParameters") to
            	// include in API requests with the JSON null value. By default, fields
            	// with empty values are omitted from API requests. However, any field
            	// with an empty value appearing in NullFields will be sent to the
            	// server as null. It is an error if a field in this list has a
            	// non-empty value. This may be used to include null fields in Patch
            	// requests.
            	NullFields []string `json:"-"`
            }

              GoogleCloudDialogflowCxV3ConversationTurnUserInput: The input from the human user.

              func (*GoogleCloudDialogflowCxV3ConversationTurnUserInput) MarshalJSON

              type GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput

              type GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput struct {
              	// CurrentPage: The Page on which the utterance was spoken. Only some
              	// fields such as name and displayname will be set.
              	CurrentPage *GoogleCloudDialogflowCxV3Page `json:"currentPage,omitempty"`
              
              	// DiagnosticInfo: Required. Input only. The diagnostic info output for
              	// the turn.
              	DiagnosticInfo googleapi.RawMessage `json:"diagnosticInfo,omitempty"`
              
              	// Differences: Output only. If this is part of a result conversation
              	// turn, the list of differences between the original run and the replay
              	// for this output, if any.
              	Differences []*GoogleCloudDialogflowCxV3TestRunDifference `json:"differences,omitempty"`
              
              	// SessionParameters: The session parameters available to the bot at
              	// this point.
              	SessionParameters googleapi.RawMessage `json:"sessionParameters,omitempty"`
              
              	// Status: Response error from the agent in the test result. If set,
              	// other output is empty.
              	Status *GoogleRpcStatus `json:"status,omitempty"`
              
              	// TextResponses: The text responses from the agent for the turn.
              	TextResponses []*GoogleCloudDialogflowCxV3ResponseMessageText `json:"textResponses,omitempty"`
              
              	// TriggeredIntent: The Intent that triggered the response. Only some
              	// fields such as name and displayname will be set.
              	TriggeredIntent *GoogleCloudDialogflowCxV3Intent `json:"triggeredIntent,omitempty"`
              
              	// ForceSendFields is a list of field names (e.g. "CurrentPage") to
              	// unconditionally include in API requests. By default, fields with
              	// empty values are omitted from API requests. However, any non-pointer,
              	// non-interface field appearing in ForceSendFields will be sent to the
              	// server regardless of whether the field is empty or not. This may be
              	// used to include empty fields in Patch requests.
              	ForceSendFields []string `json:"-"`
              
              	// NullFields is a list of field names (e.g. "CurrentPage") to include
              	// in API requests with the JSON null value. By default, fields with
              	// empty values are omitted from API requests. However, any field with
              	// an empty value appearing in NullFields will be sent to the server as
              	// null. It is an error if a field in this list has a non-empty value.
              	// This may be used to include null fields in Patch requests.
              	NullFields []string `json:"-"`
              }

                GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput: The output from the virtual agent.

                func (*GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput) MarshalJSON

                type GoogleCloudDialogflowCxV3CreateDocumentOperationMetadata

                type GoogleCloudDialogflowCxV3CreateDocumentOperationMetadata struct {
                	// GenericMetadata: The generic information of the operation.
                	GenericMetadata *GoogleCloudDialogflowCxV3GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
                
                	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
                	// unconditionally include in API requests. By default, fields with
                	// empty values are omitted from API requests. However, any non-pointer,
                	// non-interface field appearing in ForceSendFields will be sent to the
                	// server regardless of whether the field is empty or not. This may be
                	// used to include empty fields in Patch requests.
                	ForceSendFields []string `json:"-"`
                
                	// NullFields is a list of field names (e.g. "GenericMetadata") to
                	// include in API requests with the JSON null value. By default, fields
                	// with empty values are omitted from API requests. However, any field
                	// with an empty value appearing in NullFields will be sent to the
                	// server as null. It is an error if a field in this list has a
                	// non-empty value. This may be used to include null fields in Patch
                	// requests.
                	NullFields []string `json:"-"`
                }

                  GoogleCloudDialogflowCxV3CreateDocumentOperationMetadata: Metadata for CreateDocument operation.

                  func (*GoogleCloudDialogflowCxV3CreateDocumentOperationMetadata) MarshalJSON

                  type GoogleCloudDialogflowCxV3CreateVersionOperationMetadata

                  type GoogleCloudDialogflowCxV3CreateVersionOperationMetadata struct {
                  	// Version: Name of the created version. Format:
                  	// `projects//locations//agents//flows//versions/`.
                  	Version string `json:"version,omitempty"`
                  
                  	// ForceSendFields is a list of field names (e.g. "Version") to
                  	// unconditionally include in API requests. By default, fields with
                  	// empty values are omitted from API requests. However, any non-pointer,
                  	// non-interface field appearing in ForceSendFields will be sent to the
                  	// server regardless of whether the field is empty or not. This may be
                  	// used to include empty fields in Patch requests.
                  	ForceSendFields []string `json:"-"`
                  
                  	// NullFields is a list of field names (e.g. "Version") to include in
                  	// API requests with the JSON null value. By default, fields with empty
                  	// values are omitted from API requests. However, any field with an
                  	// empty value appearing in NullFields will be sent to the server as
                  	// null. It is an error if a field in this list has a non-empty value.
                  	// This may be used to include null fields in Patch requests.
                  	NullFields []string `json:"-"`
                  }

                    GoogleCloudDialogflowCxV3CreateVersionOperationMetadata: Metadata associated with the long running operation for Versions.CreateVersion.

                    func (*GoogleCloudDialogflowCxV3CreateVersionOperationMetadata) MarshalJSON

                    type GoogleCloudDialogflowCxV3DeleteDocumentOperationMetadata

                    type GoogleCloudDialogflowCxV3DeleteDocumentOperationMetadata struct {
                    	// GenericMetadata: The generic information of the operation.
                    	GenericMetadata *GoogleCloudDialogflowCxV3GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
                    
                    	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
                    	// unconditionally include in API requests. By default, fields with
                    	// empty values are omitted from API requests. However, any non-pointer,
                    	// non-interface field appearing in ForceSendFields will be sent to the
                    	// server regardless of whether the field is empty or not. This may be
                    	// used to include empty fields in Patch requests.
                    	ForceSendFields []string `json:"-"`
                    
                    	// NullFields is a list of field names (e.g. "GenericMetadata") to
                    	// include in API requests with the JSON null value. By default, fields
                    	// with empty values are omitted from API requests. However, any field
                    	// with an empty value appearing in NullFields will be sent to the
                    	// server as null. It is an error if a field in this list has a
                    	// non-empty value. This may be used to include null fields in Patch
                    	// requests.
                    	NullFields []string `json:"-"`
                    }

                      GoogleCloudDialogflowCxV3DeleteDocumentOperationMetadata: Metadata for DeleteDocument operation.

                      func (*GoogleCloudDialogflowCxV3DeleteDocumentOperationMetadata) MarshalJSON

                      type GoogleCloudDialogflowCxV3DtmfInput

                      type GoogleCloudDialogflowCxV3DtmfInput struct {
                      	// Digits: The dtmf digits.
                      	Digits string `json:"digits,omitempty"`
                      
                      	// FinishDigit: The finish digit (if any).
                      	FinishDigit string `json:"finishDigit,omitempty"`
                      
                      	// ForceSendFields is a list of field names (e.g. "Digits") to
                      	// unconditionally include in API requests. By default, fields with
                      	// empty values are omitted from API requests. However, any non-pointer,
                      	// non-interface field appearing in ForceSendFields will be sent to the
                      	// server regardless of whether the field is empty or not. This may be
                      	// used to include empty fields in Patch requests.
                      	ForceSendFields []string `json:"-"`
                      
                      	// NullFields is a list of field names (e.g. "Digits") to include in API
                      	// requests with the JSON null value. By default, fields with empty
                      	// values are omitted from API requests. However, any field with an
                      	// empty value appearing in NullFields will be sent to the server as
                      	// null. It is an error if a field in this list has a non-empty value.
                      	// This may be used to include null fields in Patch requests.
                      	NullFields []string `json:"-"`
                      }

                        GoogleCloudDialogflowCxV3DtmfInput: Represents the input for dtmf event.

                        func (*GoogleCloudDialogflowCxV3DtmfInput) MarshalJSON

                        func (s *GoogleCloudDialogflowCxV3DtmfInput) MarshalJSON() ([]byte, error)

                        type GoogleCloudDialogflowCxV3EventHandler

                        type GoogleCloudDialogflowCxV3EventHandler struct {
                        	// Event: Required. The name of the event to handle.
                        	Event string `json:"event,omitempty"`
                        
                        	// Name: Output only. The unique identifier of this event handler.
                        	Name string `json:"name,omitempty"`
                        
                        	// TargetFlow: The target flow to transition to. Format:
                        	// `projects//locations//agents//flows/`.
                        	TargetFlow string `json:"targetFlow,omitempty"`
                        
                        	// TargetPage: The target page to transition to. Format:
                        	// `projects//locations//agents//flows//pages/`.
                        	TargetPage string `json:"targetPage,omitempty"`
                        
                        	// TriggerFulfillment: The fulfillment to call when the event occurs.
                        	// Handling webhook errors with a fulfillment enabled with webhook could
                        	// cause infinite loop. It is invalid to specify such fulfillment for a
                        	// handler handling webhooks.
                        	TriggerFulfillment *GoogleCloudDialogflowCxV3Fulfillment `json:"triggerFulfillment,omitempty"`
                        
                        	// ForceSendFields is a list of field names (e.g. "Event") to
                        	// unconditionally include in API requests. By default, fields with
                        	// empty values are omitted from API requests. However, any non-pointer,
                        	// non-interface field appearing in ForceSendFields will be sent to the
                        	// server regardless of whether the field is empty or not. This may be
                        	// used to include empty fields in Patch requests.
                        	ForceSendFields []string `json:"-"`
                        
                        	// NullFields is a list of field names (e.g. "Event") to include in API
                        	// requests with the JSON null value. By default, fields with empty
                        	// values are omitted from API requests. However, any field with an
                        	// empty value appearing in NullFields will be sent to the server as
                        	// null. It is an error if a field in this list has a non-empty value.
                        	// This may be used to include null fields in Patch requests.
                        	NullFields []string `json:"-"`
                        }

                          GoogleCloudDialogflowCxV3EventHandler: An event handler specifies an event that can be handled during a session. When the specified event happens, the following actions are taken in order: * If there is a `trigger_fulfillment` associated with the event, it will be called. * If there is a `target_page` associated with the event, the session will transition into the specified page. * If there is a `target_flow` associated with the event, the session will transition into the specified flow.

                          func (*GoogleCloudDialogflowCxV3EventHandler) MarshalJSON

                          func (s *GoogleCloudDialogflowCxV3EventHandler) MarshalJSON() ([]byte, error)

                          type GoogleCloudDialogflowCxV3EventInput

                          type GoogleCloudDialogflowCxV3EventInput struct {
                          	// Event: Name of the event.
                          	Event string `json:"event,omitempty"`
                          
                          	// ForceSendFields is a list of field names (e.g. "Event") to
                          	// unconditionally include in API requests. By default, fields with
                          	// empty values are omitted from API requests. However, any non-pointer,
                          	// non-interface field appearing in ForceSendFields will be sent to the
                          	// server regardless of whether the field is empty or not. This may be
                          	// used to include empty fields in Patch requests.
                          	ForceSendFields []string `json:"-"`
                          
                          	// NullFields is a list of field names (e.g. "Event") to include in API
                          	// requests with the JSON null value. By default, fields with empty
                          	// values are omitted from API requests. However, any field with an
                          	// empty value appearing in NullFields will be sent to the server as
                          	// null. It is an error if a field in this list has a non-empty value.
                          	// This may be used to include null fields in Patch requests.
                          	NullFields []string `json:"-"`
                          }

                            GoogleCloudDialogflowCxV3EventInput: Represents the event to trigger.

                            func (*GoogleCloudDialogflowCxV3EventInput) MarshalJSON

                            func (s *GoogleCloudDialogflowCxV3EventInput) MarshalJSON() ([]byte, error)

                            type GoogleCloudDialogflowCxV3ExportAgentResponse

                            type GoogleCloudDialogflowCxV3ExportAgentResponse struct {
                            	// AgentContent: Uncompressed raw byte content for agent.
                            	AgentContent string `json:"agentContent,omitempty"`
                            
                            	// AgentUri: The URI to a file containing the exported agent. This field
                            	// is populated only if `agent_uri` is specified in ExportAgentRequest.
                            	AgentUri string `json:"agentUri,omitempty"`
                            
                            	// ForceSendFields is a list of field names (e.g. "AgentContent") to
                            	// unconditionally include in API requests. By default, fields with
                            	// empty values are omitted from API requests. However, any non-pointer,
                            	// non-interface field appearing in ForceSendFields will be sent to the
                            	// server regardless of whether the field is empty or not. This may be
                            	// used to include empty fields in Patch requests.
                            	ForceSendFields []string `json:"-"`
                            
                            	// NullFields is a list of field names (e.g. "AgentContent") to include
                            	// in API requests with the JSON null value. By default, fields with
                            	// empty values are omitted from API requests. However, any field with
                            	// an empty value appearing in NullFields will be sent to the server as
                            	// null. It is an error if a field in this list has a non-empty value.
                            	// This may be used to include null fields in Patch requests.
                            	NullFields []string `json:"-"`
                            }

                              GoogleCloudDialogflowCxV3ExportAgentResponse: The response message for Agents.ExportAgent.

                              func (*GoogleCloudDialogflowCxV3ExportAgentResponse) MarshalJSON

                              type GoogleCloudDialogflowCxV3ExportTestCasesMetadata

                              type GoogleCloudDialogflowCxV3ExportTestCasesMetadata struct {
                              }

                                GoogleCloudDialogflowCxV3ExportTestCasesMetadata: Metadata returned for the TestCases.ExportTestCases long running operation.

                                type GoogleCloudDialogflowCxV3ExportTestCasesResponse

                                type GoogleCloudDialogflowCxV3ExportTestCasesResponse struct {
                                	// Content: Uncompressed raw byte content for test cases.
                                	Content string `json:"content,omitempty"`
                                
                                	// GcsUri: The URI to a file containing the exported test cases. This
                                	// field is populated only if `gcs_uri` is specified in
                                	// ExportTestCasesRequest.
                                	GcsUri string `json:"gcsUri,omitempty"`
                                
                                	// ForceSendFields is a list of field names (e.g. "Content") to
                                	// unconditionally include in API requests. By default, fields with
                                	// empty values are omitted from API requests. However, any non-pointer,
                                	// non-interface field appearing in ForceSendFields will be sent to the
                                	// server regardless of whether the field is empty or not. This may be
                                	// used to include empty fields in Patch requests.
                                	ForceSendFields []string `json:"-"`
                                
                                	// NullFields is a list of field names (e.g. "Content") to include in
                                	// API requests with the JSON null value. By default, fields with empty
                                	// values are omitted from API requests. However, any field with an
                                	// empty value appearing in NullFields will be sent to the server as
                                	// null. It is an error if a field in this list has a non-empty value.
                                	// This may be used to include null fields in Patch requests.
                                	NullFields []string `json:"-"`
                                }

                                  GoogleCloudDialogflowCxV3ExportTestCasesResponse: The response message for TestCases.ExportTestCases.

                                  func (*GoogleCloudDialogflowCxV3ExportTestCasesResponse) MarshalJSON

                                  type GoogleCloudDialogflowCxV3Form

                                  type GoogleCloudDialogflowCxV3Form struct {
                                  	// Parameters: Parameters to collect from the user.
                                  	Parameters []*GoogleCloudDialogflowCxV3FormParameter `json:"parameters,omitempty"`
                                  
                                  	// ForceSendFields is a list of field names (e.g. "Parameters") to
                                  	// unconditionally include in API requests. By default, fields with
                                  	// empty values are omitted from API requests. However, any non-pointer,
                                  	// non-interface field appearing in ForceSendFields will be sent to the
                                  	// server regardless of whether the field is empty or not. This may be
                                  	// used to include empty fields in Patch requests.
                                  	ForceSendFields []string `json:"-"`
                                  
                                  	// NullFields is a list of field names (e.g. "Parameters") to include in
                                  	// API requests with the JSON null value. By default, fields with empty
                                  	// values are omitted from API requests. However, any field with an
                                  	// empty value appearing in NullFields will be sent to the server as
                                  	// null. It is an error if a field in this list has a non-empty value.
                                  	// This may be used to include null fields in Patch requests.
                                  	NullFields []string `json:"-"`
                                  }

                                    GoogleCloudDialogflowCxV3Form: A form is a data model that groups related parameters that can be collected from the user. The process in which the agent prompts the user and collects parameter values from the user is called form filling. A form can be added to a page. When form filling is done, the filled parameters will be written to the session.

                                    func (*GoogleCloudDialogflowCxV3Form) MarshalJSON

                                    func (s *GoogleCloudDialogflowCxV3Form) MarshalJSON() ([]byte, error)

                                    type GoogleCloudDialogflowCxV3FormParameter

                                    type GoogleCloudDialogflowCxV3FormParameter struct {
                                    	// DefaultValue: The default value of an optional parameter. If the
                                    	// parameter is required, the default value will be ignored.
                                    	DefaultValue interface{} `json:"defaultValue,omitempty"`
                                    
                                    	// DisplayName: Required. The human-readable name of the parameter,
                                    	// unique within the form.
                                    	DisplayName string `json:"displayName,omitempty"`
                                    
                                    	// EntityType: Required. The entity type of the parameter. Format:
                                    	// `projects/-/locations/-/agents/-/entityTypes/` for system entity
                                    	// types (for example,
                                    	// `projects/-/locations/-/agents/-/entityTypes/sys.date`), or
                                    	// `projects//locations//agents//entityTypes/` for developer entity
                                    	// types.
                                    	EntityType string `json:"entityType,omitempty"`
                                    
                                    	// FillBehavior: Required. Defines fill behavior for the parameter.
                                    	FillBehavior *GoogleCloudDialogflowCxV3FormParameterFillBehavior `json:"fillBehavior,omitempty"`
                                    
                                    	// IsList: Indicates whether the parameter represents a list of values.
                                    	IsList bool `json:"isList,omitempty"`
                                    
                                    	// Redact: Indicates whether the parameter content should be redacted in
                                    	// log. If redaction is enabled, the parameter content will be replaced
                                    	// by parameter name during logging. Note: the parameter content is
                                    	// subject to redaction if either parameter level redaction or entity
                                    	// type level redaction is enabled.
                                    	Redact bool `json:"redact,omitempty"`
                                    
                                    	// Required: Indicates whether the parameter is required. Optional
                                    	// parameters will not trigger prompts; however, they are filled if the
                                    	// user specifies them. Required parameters must be filled before form
                                    	// filling concludes.
                                    	Required bool `json:"required,omitempty"`
                                    
                                    	// ForceSendFields is a list of field names (e.g. "DefaultValue") to
                                    	// unconditionally include in API requests. By default, fields with
                                    	// empty values are omitted from API requests. However, any non-pointer,
                                    	// non-interface field appearing in ForceSendFields will be sent to the
                                    	// server regardless of whether the field is empty or not. This may be
                                    	// used to include empty fields in Patch requests.
                                    	ForceSendFields []string `json:"-"`
                                    
                                    	// NullFields is a list of field names (e.g. "DefaultValue") to include
                                    	// in API requests with the JSON null value. By default, fields with
                                    	// empty values are omitted from API requests. However, any field with
                                    	// an empty value appearing in NullFields will be sent to the server as
                                    	// null. It is an error if a field in this list has a non-empty value.
                                    	// This may be used to include null fields in Patch requests.
                                    	NullFields []string `json:"-"`
                                    }

                                      GoogleCloudDialogflowCxV3FormParameter: Represents a form parameter.

                                      func (*GoogleCloudDialogflowCxV3FormParameter) MarshalJSON

                                      func (s *GoogleCloudDialogflowCxV3FormParameter) MarshalJSON() ([]byte, error)

                                      type GoogleCloudDialogflowCxV3FormParameterFillBehavior

                                      type GoogleCloudDialogflowCxV3FormParameterFillBehavior struct {
                                      	// InitialPromptFulfillment: Required. The fulfillment to provide the
                                      	// initial prompt that the agent can present to the user in order to
                                      	// fill the parameter.
                                      	InitialPromptFulfillment *GoogleCloudDialogflowCxV3Fulfillment `json:"initialPromptFulfillment,omitempty"`
                                      
                                      	// RepromptEventHandlers: The handlers for parameter-level events, used
                                      	// to provide reprompt for the parameter or transition to a different
                                      	// page/flow. The supported events are: * `sys.no-match-`, where N can
                                      	// be from 1 to 6 * `sys.no-match-default` * `sys.no-input-`, where N
                                      	// can be from 1 to 6 * `sys.no-input-default` * `sys.invalid-parameter`
                                      	// `initial_prompt_fulfillment` provides the first prompt for the
                                      	// parameter. If the user's response does not fill the parameter, a
                                      	// no-match/no-input event will be triggered, and the fulfillment
                                      	// associated with the `sys.no-match-1`/`sys.no-input-1` handler (if
                                      	// defined) will be called to provide a prompt. The
                                      	// `sys.no-match-2`/`sys.no-input-2` handler (if defined) will respond
                                      	// to the next no-match/no-input event, and so on. A
                                      	// `sys.no-match-default` or `sys.no-input-default` handler will be used
                                      	// to handle all following no-match/no-input events after all numbered
                                      	// no-match/no-input handlers for the parameter are consumed. A
                                      	// `sys.invalid-parameter` handler can be defined to handle the case
                                      	// where the parameter values have been `invalidated` by webhook. For
                                      	// example, if the user's response fill the parameter, however the
                                      	// parameter was invalidated by webhook, the fulfillment associated with
                                      	// the `sys.invalid-parameter` handler (if defined) will be called to
                                      	// provide a prompt. If the event handler for the corresponding event
                                      	// can't be found on the parameter, `initial_prompt_fulfillment` will be
                                      	// re-prompted.
                                      	RepromptEventHandlers []*GoogleCloudDialogflowCxV3EventHandler `json:"repromptEventHandlers,omitempty"`
                                      
                                      	// ForceSendFields is a list of field names (e.g.
                                      	// "InitialPromptFulfillment") to unconditionally include in API
                                      	// requests. By default, fields with empty values are omitted from API
                                      	// requests. However, any non-pointer, non-interface field appearing in
                                      	// ForceSendFields will be sent to the server regardless of whether the
                                      	// field is empty or not. This may be used to include empty fields in
                                      	// Patch requests.
                                      	ForceSendFields []string `json:"-"`
                                      
                                      	// NullFields is a list of field names (e.g. "InitialPromptFulfillment")
                                      	// to include in API requests with the JSON null value. By default,
                                      	// fields with empty values are omitted from API requests. However, any
                                      	// field with an empty value appearing in NullFields will be sent to the
                                      	// server as null. It is an error if a field in this list has a
                                      	// non-empty value. This may be used to include null fields in Patch
                                      	// requests.
                                      	NullFields []string `json:"-"`
                                      }

                                        GoogleCloudDialogflowCxV3FormParameterFillBehavior: Configuration for how the filling of a parameter should be handled.

                                        func (*GoogleCloudDialogflowCxV3FormParameterFillBehavior) MarshalJSON

                                        type GoogleCloudDialogflowCxV3Fulfillment

                                        type GoogleCloudDialogflowCxV3Fulfillment struct {
                                        	// ConditionalCases: Conditional cases for this fulfillment.
                                        	ConditionalCases []*GoogleCloudDialogflowCxV3FulfillmentConditionalCases `json:"conditionalCases,omitempty"`
                                        
                                        	// Messages: The list of rich message responses to present to the user.
                                        	Messages []*GoogleCloudDialogflowCxV3ResponseMessage `json:"messages,omitempty"`
                                        
                                        	// SetParameterActions: Set parameter values before executing the
                                        	// webhook.
                                        	SetParameterActions []*GoogleCloudDialogflowCxV3FulfillmentSetParameterAction `json:"setParameterActions,omitempty"`
                                        
                                        	// Tag: The tag used by the webhook to identify which fulfillment is
                                        	// being called. This field is required if `webhook` is specified.
                                        	Tag string `json:"tag,omitempty"`
                                        
                                        	// Webhook: The webhook to call. Format:
                                        	// `projects//locations//agents//webhooks/`.
                                        	Webhook string `json:"webhook,omitempty"`
                                        
                                        	// ForceSendFields is a list of field names (e.g. "ConditionalCases") to
                                        	// unconditionally include in API requests. By default, fields with
                                        	// empty values are omitted from API requests. However, any non-pointer,
                                        	// non-interface field appearing in ForceSendFields will be sent to the
                                        	// server regardless of whether the field is empty or not. This may be
                                        	// used to include empty fields in Patch requests.
                                        	ForceSendFields []string `json:"-"`
                                        
                                        	// NullFields is a list of field names (e.g. "ConditionalCases") to
                                        	// include in API requests with the JSON null value. By default, fields
                                        	// with empty values are omitted from API requests. However, any field
                                        	// with an empty value appearing in NullFields will be sent to the
                                        	// server as null. It is an error if a field in this list has a
                                        	// non-empty value. This may be used to include null fields in Patch
                                        	// requests.
                                        	NullFields []string `json:"-"`
                                        }

                                          GoogleCloudDialogflowCxV3Fulfillment: A fulfillment can do one or more of the following actions at the same time: * Generate rich message responses. * Set parameter values. * Call the webhook. Fulfillments can be called at various stages in the Page or Form lifecycle. For example, when a DetectIntentRequest drives a session to enter a new page, the page's entry fulfillment can add a static response to the QueryResult in the returning DetectIntentResponse, call the webhook (for example, to load user data from a database), or both.

                                          func (*GoogleCloudDialogflowCxV3Fulfillment) MarshalJSON

                                          func (s *GoogleCloudDialogflowCxV3Fulfillment) MarshalJSON() ([]byte, error)

                                          type GoogleCloudDialogflowCxV3FulfillmentConditionalCases

                                          type GoogleCloudDialogflowCxV3FulfillmentConditionalCases struct {
                                          	// Cases: A list of cascading if-else conditions.
                                          	Cases []*GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCase `json:"cases,omitempty"`
                                          
                                          	// ForceSendFields is a list of field names (e.g. "Cases") to
                                          	// unconditionally include in API requests. By default, fields with
                                          	// empty values are omitted from API requests. However, any non-pointer,
                                          	// non-interface field appearing in ForceSendFields will be sent to the
                                          	// server regardless of whether the field is empty or not. This may be
                                          	// used to include empty fields in Patch requests.
                                          	ForceSendFields []string `json:"-"`
                                          
                                          	// NullFields is a list of field names (e.g. "Cases") to include in API
                                          	// requests with the JSON null value. By default, fields with empty
                                          	// values are omitted from API requests. However, any field with an
                                          	// empty value appearing in NullFields will be sent to the server as
                                          	// null. It is an error if a field in this list has a non-empty value.
                                          	// This may be used to include null fields in Patch requests.
                                          	NullFields []string `json:"-"`
                                          }

                                            GoogleCloudDialogflowCxV3FulfillmentConditionalCases: A list of cascading if-else conditions. Cases are mutually exclusive. The first one with a matching condition is selected, all the rest ignored.

                                            func (*GoogleCloudDialogflowCxV3FulfillmentConditionalCases) MarshalJSON

                                            type GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCase

                                            type GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCase struct {
                                            	// CaseContent: A list of case content.
                                            	CaseContent []*GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCaseCaseContent `json:"caseContent,omitempty"`
                                            
                                            	// Condition: The condition to activate and select this case. Empty
                                            	// means the condition is always true. The condition is evaluated
                                            	// against form parameters or session parameters. See the conditions
                                            	// reference
                                            	// (https://cloud.google.com/dialogflow/cx/docs/reference/condition).
                                            	Condition string `json:"condition,omitempty"`
                                            
                                            	// ForceSendFields is a list of field names (e.g. "CaseContent") to
                                            	// unconditionally include in API requests. By default, fields with
                                            	// empty values are omitted from API requests. However, any non-pointer,
                                            	// non-interface field appearing in ForceSendFields will be sent to the
                                            	// server regardless of whether the field is empty or not. This may be
                                            	// used to include empty fields in Patch requests.
                                            	ForceSendFields []string `json:"-"`
                                            
                                            	// NullFields is a list of field names (e.g. "CaseContent") to include
                                            	// in API requests with the JSON null value. By default, fields with
                                            	// empty values are omitted from API requests. However, any field with
                                            	// an empty value appearing in NullFields will be sent to the server as
                                            	// null. It is an error if a field in this list has a non-empty value.
                                            	// This may be used to include null fields in Patch requests.
                                            	NullFields []string `json:"-"`
                                            }

                                              GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCase: Each case has a Boolean condition. When it is evaluated to be True, the corresponding messages will be selected and evaluated recursively.

                                              func (*GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCase) MarshalJSON

                                              type GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCaseCaseContent

                                              type GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCaseCaseContent struct {
                                              	// AdditionalCases: Additional cases to be evaluated.
                                              	AdditionalCases *GoogleCloudDialogflowCxV3FulfillmentConditionalCases `json:"additionalCases,omitempty"`
                                              
                                              	// Message: Returned message.
                                              	Message *GoogleCloudDialogflowCxV3ResponseMessage `json:"message,omitempty"`
                                              
                                              	// ForceSendFields is a list of field names (e.g. "AdditionalCases") to
                                              	// unconditionally include in API requests. By default, fields with
                                              	// empty values are omitted from API requests. However, any non-pointer,
                                              	// non-interface field appearing in ForceSendFields will be sent to the
                                              	// server regardless of whether the field is empty or not. This may be
                                              	// used to include empty fields in Patch requests.
                                              	ForceSendFields []string `json:"-"`
                                              
                                              	// NullFields is a list of field names (e.g. "AdditionalCases") to
                                              	// include in API requests with the JSON null value. By default, fields
                                              	// with empty values are omitted from API requests. However, any field
                                              	// with an empty value appearing in NullFields will be sent to the
                                              	// server as null. It is an error if a field in this list has a
                                              	// non-empty value. This may be used to include null fields in Patch
                                              	// requests.
                                              	NullFields []string `json:"-"`
                                              }

                                                GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCaseCaseContent: The list of messages or conditional cases to activate for this case.

                                                func (*GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCaseCaseContent) MarshalJSON

                                                type GoogleCloudDialogflowCxV3FulfillmentSetParameterAction

                                                type GoogleCloudDialogflowCxV3FulfillmentSetParameterAction struct {
                                                	// Parameter: Display name of the parameter.
                                                	Parameter string `json:"parameter,omitempty"`
                                                
                                                	// Value: The new value of the parameter. A null value clears the
                                                	// parameter.
                                                	Value interface{} `json:"value,omitempty"`
                                                
                                                	// ForceSendFields is a list of field names (e.g. "Parameter") to
                                                	// unconditionally include in API requests. By default, fields with
                                                	// empty values are omitted from API requests. However, any non-pointer,
                                                	// non-interface field appearing in ForceSendFields will be sent to the
                                                	// server regardless of whether the field is empty or not. This may be
                                                	// used to include empty fields in Patch requests.
                                                	ForceSendFields []string `json:"-"`
                                                
                                                	// NullFields is a list of field names (e.g. "Parameter") to include in
                                                	// API requests with the JSON null value. By default, fields with empty
                                                	// values are omitted from API requests. However, any field with an
                                                	// empty value appearing in NullFields will be sent to the server as
                                                	// null. It is an error if a field in this list has a non-empty value.
                                                	// This may be used to include null fields in Patch requests.
                                                	NullFields []string `json:"-"`
                                                }

                                                  GoogleCloudDialogflowCxV3FulfillmentSetParameterAction: Setting a parameter value.

                                                  func (*GoogleCloudDialogflowCxV3FulfillmentSetParameterAction) MarshalJSON

                                                  type GoogleCloudDialogflowCxV3GenericKnowledgeOperationMetadata

                                                  type GoogleCloudDialogflowCxV3GenericKnowledgeOperationMetadata struct {
                                                  	// State: Required. Output only. The current state of this operation.
                                                  	//
                                                  	// Possible values:
                                                  	//   "STATE_UNSPECIFIED" - State unspecified.
                                                  	//   "PENDING" - The operation has been created.
                                                  	//   "RUNNING" - The operation is currently running.
                                                  	//   "DONE" - The operation is done, either cancelled or completed.
                                                  	State string `json:"state,omitempty"`
                                                  
                                                  	// ForceSendFields is a list of field names (e.g. "State") to
                                                  	// unconditionally include in API requests. By default, fields with
                                                  	// empty values are omitted from API requests. However, any non-pointer,
                                                  	// non-interface field appearing in ForceSendFields will be sent to the
                                                  	// server regardless of whether the field is empty or not. This may be
                                                  	// used to include empty fields in Patch requests.
                                                  	ForceSendFields []string `json:"-"`
                                                  
                                                  	// NullFields is a list of field names (e.g. "State") to include in API
                                                  	// requests with the JSON null value. By default, fields with empty
                                                  	// values are omitted from API requests. However, any field with an
                                                  	// empty value appearing in NullFields will be sent to the server as
                                                  	// null. It is an error if a field in this list has a non-empty value.
                                                  	// This may be used to include null fields in Patch requests.
                                                  	NullFields []string `json:"-"`
                                                  }

                                                    GoogleCloudDialogflowCxV3GenericKnowledgeOperationMetadata: Metadata in google::longrunning::Operation for Knowledge operations.

                                                    func (*GoogleCloudDialogflowCxV3GenericKnowledgeOperationMetadata) MarshalJSON

                                                    type GoogleCloudDialogflowCxV3ImportDocumentsOperationMetadata

                                                    type GoogleCloudDialogflowCxV3ImportDocumentsOperationMetadata struct {
                                                    	// GenericMetadata: The generic information of the operation.
                                                    	GenericMetadata *GoogleCloudDialogflowCxV3GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
                                                    
                                                    	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
                                                    	// unconditionally include in API requests. By default, fields with
                                                    	// empty values are omitted from API requests. However, any non-pointer,
                                                    	// non-interface field appearing in ForceSendFields will be sent to the
                                                    	// server regardless of whether the field is empty or not. This may be
                                                    	// used to include empty fields in Patch requests.
                                                    	ForceSendFields []string `json:"-"`
                                                    
                                                    	// NullFields is a list of field names (e.g. "GenericMetadata") to
                                                    	// include in API requests with the JSON null value. By default, fields
                                                    	// with empty values are omitted from API requests. However, any field
                                                    	// with an empty value appearing in NullFields will be sent to the
                                                    	// server as null. It is an error if a field in this list has a
                                                    	// non-empty value. This may be used to include null fields in Patch
                                                    	// requests.
                                                    	NullFields []string `json:"-"`
                                                    }

                                                      GoogleCloudDialogflowCxV3ImportDocumentsOperationMetadata: Metadata for ImportDocuments operation.

                                                      func (*GoogleCloudDialogflowCxV3ImportDocumentsOperationMetadata) MarshalJSON

                                                      type GoogleCloudDialogflowCxV3ImportDocumentsResponse

                                                      type GoogleCloudDialogflowCxV3ImportDocumentsResponse struct {
                                                      	// Warnings: Includes details about skipped documents or any other
                                                      	// warnings.
                                                      	Warnings []*GoogleRpcStatus `json:"warnings,omitempty"`
                                                      
                                                      	// ForceSendFields is a list of field names (e.g. "Warnings") to
                                                      	// unconditionally include in API requests. By default, fields with
                                                      	// empty values are omitted from API requests. However, any non-pointer,
                                                      	// non-interface field appearing in ForceSendFields will be sent to the
                                                      	// server regardless of whether the field is empty or not. This may be
                                                      	// used to include empty fields in Patch requests.
                                                      	ForceSendFields []string `json:"-"`
                                                      
                                                      	// NullFields is a list of field names (e.g. "Warnings") to include in
                                                      	// API requests with the JSON null value. By default, fields with empty
                                                      	// values are omitted from API requests. However, any field with an
                                                      	// empty value appearing in NullFields will be sent to the server as
                                                      	// null. It is an error if a field in this list has a non-empty value.
                                                      	// This may be used to include null fields in Patch requests.
                                                      	NullFields []string `json:"-"`
                                                      }

                                                        GoogleCloudDialogflowCxV3ImportDocumentsResponse: Response message for Documents.ImportDocuments.

                                                        func (*GoogleCloudDialogflowCxV3ImportDocumentsResponse) MarshalJSON

                                                        type GoogleCloudDialogflowCxV3ImportTestCasesMetadata

                                                        type GoogleCloudDialogflowCxV3ImportTestCasesMetadata struct {
                                                        	// Errors: Errors for failed test cases.
                                                        	Errors []*GoogleCloudDialogflowCxV3TestCaseError `json:"errors,omitempty"`
                                                        
                                                        	// ForceSendFields is a list of field names (e.g. "Errors") to
                                                        	// unconditionally include in API requests. By default, fields with
                                                        	// empty values are omitted from API requests. However, any non-pointer,
                                                        	// non-interface field appearing in ForceSendFields will be sent to the
                                                        	// server regardless of whether the field is empty or not. This may be
                                                        	// used to include empty fields in Patch requests.
                                                        	ForceSendFields []string `json:"-"`
                                                        
                                                        	// NullFields is a list of field names (e.g. "Errors") to include in API
                                                        	// requests with the JSON null value. By default, fields with empty
                                                        	// values are omitted from API requests. However, any field with an
                                                        	// empty value appearing in NullFields will be sent to the server as
                                                        	// null. It is an error if a field in this list has a non-empty value.
                                                        	// This may be used to include null fields in Patch requests.
                                                        	NullFields []string `json:"-"`
                                                        }

                                                          GoogleCloudDialogflowCxV3ImportTestCasesMetadata: Metadata returned for the TestCases.ImportTestCases long running operation.

                                                          func (*GoogleCloudDialogflowCxV3ImportTestCasesMetadata) MarshalJSON

                                                          type GoogleCloudDialogflowCxV3ImportTestCasesResponse

                                                          type GoogleCloudDialogflowCxV3ImportTestCasesResponse struct {
                                                          	// Names: The unique identifiers of the new test cases. Format:
                                                          	// `projects//locations//agents//testCases/`.
                                                          	Names []string `json:"names,omitempty"`
                                                          
                                                          	// ForceSendFields is a list of field names (e.g. "Names") to
                                                          	// unconditionally include in API requests. By default, fields with
                                                          	// empty values are omitted from API requests. However, any non-pointer,
                                                          	// non-interface field appearing in ForceSendFields will be sent to the
                                                          	// server regardless of whether the field is empty or not. This may be
                                                          	// used to include empty fields in Patch requests.
                                                          	ForceSendFields []string `json:"-"`
                                                          
                                                          	// NullFields is a list of field names (e.g. "Names") to include in API
                                                          	// requests with the JSON null value. By default, fields with empty
                                                          	// values are omitted from API requests. However, any field with an
                                                          	// empty value appearing in NullFields will be sent to the server as
                                                          	// null. It is an error if a field in this list has a non-empty value.
                                                          	// This may be used to include null fields in Patch requests.
                                                          	NullFields []string `json:"-"`
                                                          }

                                                            GoogleCloudDialogflowCxV3ImportTestCasesResponse: The response message for TestCases.ImportTestCases.

                                                            func (*GoogleCloudDialogflowCxV3ImportTestCasesResponse) MarshalJSON

                                                            type GoogleCloudDialogflowCxV3InputAudioConfig

                                                            type GoogleCloudDialogflowCxV3InputAudioConfig struct {
                                                            	// AudioEncoding: Required. Audio encoding of the audio content to
                                                            	// process.
                                                            	//
                                                            	// Possible values:
                                                            	//   "AUDIO_ENCODING_UNSPECIFIED" - Not specified.
                                                            	//   "AUDIO_ENCODING_LINEAR_16" - Uncompressed 16-bit signed
                                                            	// little-endian samples (Linear PCM).
                                                            	//   "AUDIO_ENCODING_FLAC" -
                                                            	// [`FLAC`](https://xiph.org/flac/documentation.html) (Free Lossless
                                                            	// Audio Codec) is the recommended encoding because it is lossless
                                                            	// (therefore recognition is not compromised) and requires only about
                                                            	// half the bandwidth of `LINEAR16`. `FLAC` stream encoding supports
                                                            	// 16-bit and 24-bit samples, however, not all fields in `STREAMINFO`
                                                            	// are supported.
                                                            	//   "AUDIO_ENCODING_MULAW" - 8-bit samples that compand 14-bit audio
                                                            	// samples using G.711 PCMU/mu-law.
                                                            	//   "AUDIO_ENCODING_AMR" - Adaptive Multi-Rate Narrowband codec.
                                                            	// `sample_rate_hertz` must be 8000.
                                                            	//   "AUDIO_ENCODING_AMR_WB" - Adaptive Multi-Rate Wideband codec.
                                                            	// `sample_rate_hertz` must be 16000.
                                                            	//   "AUDIO_ENCODING_OGG_OPUS" - Opus encoded audio frames in Ogg
                                                            	// container ([OggOpus](https://wiki.xiph.org/OggOpus)).
                                                            	// `sample_rate_hertz` must be 16000.
                                                            	//   "AUDIO_ENCODING_SPEEX_WITH_HEADER_BYTE" - Although the use of lossy
                                                            	// encodings is not recommended, if a very low bitrate encoding is
                                                            	// required, `OGG_OPUS` is highly preferred over Speex encoding. The
                                                            	// [Speex](https://speex.org/) encoding supported by Dialogflow API has
                                                            	// a header byte in each block, as in MIME type
                                                            	// `audio/x-speex-with-header-byte`. It is a variant of the RTP Speex
                                                            	// encoding defined in [RFC 5574](https://tools.ietf.org/html/rfc5574).
                                                            	// The stream is a sequence of blocks, one block per RTP packet. Each
                                                            	// block starts with a byte containing the length of the block, in
                                                            	// bytes, followed by one or more frames of Speex data, padded to an
                                                            	// integral number of bytes (octets) as specified in RFC 5574. In other
                                                            	// words, each RTP header is replaced with a single byte containing the
                                                            	// block length. Only Speex wideband is supported. `sample_rate_hertz`
                                                            	// must be 16000.
                                                            	AudioEncoding string `json:"audioEncoding,omitempty"`
                                                            
                                                            	// EnableWordInfo: Optional. If `true`, Dialogflow returns
                                                            	// SpeechWordInfo in StreamingRecognitionResult with information about
                                                            	// the recognized speech words, e.g. start and end time offsets. If
                                                            	// false or unspecified, Speech doesn't return any word-level
                                                            	// information.
                                                            	EnableWordInfo bool `json:"enableWordInfo,omitempty"`
                                                            
                                                            	// Model: Optional. Which Speech model to select for the given request.
                                                            	// Select the model best suited to your domain to get best results. If a
                                                            	// model is not explicitly specified, then we auto-select a model based
                                                            	// on the parameters in the InputAudioConfig. If enhanced speech model
                                                            	// is enabled for the agent and an enhanced version of the specified
                                                            	// model for the language does not exist, then the speech is recognized
                                                            	// using the standard version of the specified model. Refer to Cloud
                                                            	// Speech API documentation
                                                            	// (https://cloud.google.com/speech-to-text/docs/basics#select-model)
                                                            	// for more details.
                                                            	Model string `json:"model,omitempty"`
                                                            
                                                            	// ModelVariant: Optional. Which variant of the Speech model to use.
                                                            	//
                                                            	// Possible values:
                                                            	//   "SPEECH_MODEL_VARIANT_UNSPECIFIED" - No model variant specified. In
                                                            	// this case Dialogflow defaults to USE_BEST_AVAILABLE.
                                                            	//   "USE_BEST_AVAILABLE" - Use the best available variant of the Speech
                                                            	// model that the caller is eligible for. Please see the [Dialogflow
                                                            	// docs](https://cloud.google.com/dialogflow/docs/data-logging) for how
                                                            	// to make your project eligible for enhanced models.
                                                            	//   "USE_STANDARD" - Use standard model variant even if an enhanced
                                                            	// model is available. See the [Cloud Speech
                                                            	// documentation](https://cloud.google.com/speech-to-text/docs/enhanced-m
                                                            	// odels) for details about enhanced models.
                                                            	//   "USE_ENHANCED" - Use an enhanced model variant: * If an enhanced
                                                            	// variant does not exist for the given model and request language,
                                                            	// Dialogflow falls back to the standard variant. The [Cloud Speech
                                                            	// documentation](https://cloud.google.com/speech-to-text/docs/enhanced-m
                                                            	// odels) describes which models have enhanced variants. * If the API
                                                            	// caller isn't eligible for enhanced models, Dialogflow returns an
                                                            	// error. Please see the [Dialogflow
                                                            	// docs](https://cloud.google.com/dialogflow/docs/data-logging) for how
                                                            	// to make your project eligible.
                                                            	ModelVariant string `json:"modelVariant,omitempty"`
                                                            
                                                            	// PhraseHints: Optional. A list of strings containing words and phrases
                                                            	// that the speech recognizer should recognize with higher likelihood.
                                                            	// See the Cloud Speech documentation
                                                            	// (https://cloud.google.com/speech-to-text/docs/basics#phrase-hints)
                                                            	// for more details.
                                                            	PhraseHints []string `json:"phraseHints,omitempty"`
                                                            
                                                            	// SampleRateHertz: Sample rate (in Hertz) of the audio content sent in
                                                            	// the query. Refer to Cloud Speech API documentation
                                                            	// (https://cloud.google.com/speech-to-text/docs/basics) for more
                                                            	// details.
                                                            	SampleRateHertz int64 `json:"sampleRateHertz,omitempty"`
                                                            
                                                            	// SingleUtterance: Optional. If `false` (default), recognition does not
                                                            	// cease until the client closes the stream. If `true`, the recognizer
                                                            	// will detect a single spoken utterance in input audio. Recognition
                                                            	// ceases when it detects the audio's voice has stopped or paused. In
                                                            	// this case, once a detected intent is received, the client should
                                                            	// close the stream and start a new request with a new stream as needed.
                                                            	// Note: This setting is relevant only for streaming methods.
                                                            	SingleUtterance bool `json:"singleUtterance,omitempty"`
                                                            
                                                            	// ForceSendFields is a list of field names (e.g. "AudioEncoding") to
                                                            	// unconditionally include in API requests. By default, fields with
                                                            	// empty values are omitted from API requests. However, any non-pointer,
                                                            	// non-interface field appearing in ForceSendFields will be sent to the
                                                            	// server regardless of whether the field is empty or not. This may be
                                                            	// used to include empty fields in Patch requests.
                                                            	ForceSendFields []string `json:"-"`
                                                            
                                                            	// NullFields is a list of field names (e.g. "AudioEncoding") to include
                                                            	// in API requests with the JSON null value. By default, fields with
                                                            	// empty values are omitted from API requests. However, any field with
                                                            	// an empty value appearing in NullFields will be sent to the server as
                                                            	// null. It is an error if a field in this list has a non-empty value.
                                                            	// This may be used to include null fields in Patch requests.
                                                            	NullFields []string `json:"-"`
                                                            }

                                                              GoogleCloudDialogflowCxV3InputAudioConfig: Instructs the speech recognizer on how to process the audio content.

                                                              func (*GoogleCloudDialogflowCxV3InputAudioConfig) MarshalJSON

                                                              type GoogleCloudDialogflowCxV3Intent

                                                              type GoogleCloudDialogflowCxV3Intent struct {
                                                              	// Description: Optional. Human readable description for better
                                                              	// understanding an intent like its scope, content, result etc. Maximum
                                                              	// character limit: 140 characters.
                                                              	Description string `json:"description,omitempty"`
                                                              
                                                              	// DisplayName: Required. The human-readable name of the intent, unique
                                                              	// within the agent.
                                                              	DisplayName string `json:"displayName,omitempty"`
                                                              
                                                              	// IsFallback: Indicates whether this is a fallback intent. Currently
                                                              	// only default fallback intent is allowed in the agent, which is added
                                                              	// upon agent creation. Adding training phrases to fallback intent is
                                                              	// useful in the case of requests that are mistakenly matched, since
                                                              	// training phrases assigned to fallback intents act as negative
                                                              	// examples that triggers no-match event.
                                                              	IsFallback bool `json:"isFallback,omitempty"`
                                                              
                                                              	// Labels: Optional. The key/value metadata to label an intent. Labels
                                                              	// can contain lowercase letters, digits and the symbols '-' and '_'.
                                                              	// International characters are allowed, including letters from unicase
                                                              	// alphabets. Keys must start with a letter. Keys and values can be no
                                                              	// longer than 63 characters and no more than 128 bytes. Prefix "sys."
                                                              	// is reserved for Dialogflow defined labels. Currently allowed
                                                              	// Dialogflow defined labels include: * sys.head * sys.contextual The
                                                              	// above labels do not require value. "sys.head" means the intent is a
                                                              	// head intent. "sys.contextual" means the intent is a contextual
                                                              	// intent.
                                                              	Labels map[string]string `json:"labels,omitempty"`
                                                              
                                                              	// Name: The unique identifier of the intent. Required for the
                                                              	// Intents.UpdateIntent method. Intents.CreateIntent populates the name
                                                              	// automatically. Format: `projects//locations//agents//intents/`.
                                                              	Name string `json:"name,omitempty"`
                                                              
                                                              	// Parameters: The collection of parameters associated with the intent.
                                                              	Parameters []*GoogleCloudDialogflowCxV3IntentParameter `json:"parameters,omitempty"`
                                                              
                                                              	// Priority: The priority of this intent. Higher numbers represent
                                                              	// higher priorities. - If the supplied value is unspecified or 0, the
                                                              	// service translates the value to 500,000, which corresponds to the
                                                              	// `Normal` priority in the console. - If the supplied value is
                                                              	// negative, the intent is ignored in runtime detect intent requests.
                                                              	Priority int64 `json:"priority,omitempty"`
                                                              
                                                              	// TrainingPhrases: The collection of training phrases the agent is
                                                              	// trained on to identify the intent.
                                                              	TrainingPhrases []*GoogleCloudDialogflowCxV3IntentTrainingPhrase `json:"trainingPhrases,omitempty"`
                                                              
                                                              	// ForceSendFields is a list of field names (e.g. "Description") to
                                                              	// unconditionally include in API requests. By default, fields with
                                                              	// empty values are omitted from API requests. However, any non-pointer,
                                                              	// non-interface field appearing in ForceSendFields will be sent to the
                                                              	// server regardless of whether the field is empty or not. This may be
                                                              	// used to include empty fields in Patch requests.
                                                              	ForceSendFields []string `json:"-"`
                                                              
                                                              	// NullFields is a list of field names (e.g. "Description") to include
                                                              	// in API requests with the JSON null value. By default, fields with
                                                              	// empty values are omitted from API requests. However, any field with
                                                              	// an empty value appearing in NullFields will be sent to the server as
                                                              	// null. It is an error if a field in this list has a non-empty value.
                                                              	// This may be used to include null fields in Patch requests.
                                                              	NullFields []string `json:"-"`
                                                              }

                                                                GoogleCloudDialogflowCxV3Intent: An intent represents a user's intent to interact with a conversational agent. You can provide information for the Dialogflow API to use to match user input to an intent by adding training phrases (i.e., examples of user input) to your intent.

                                                                func (*GoogleCloudDialogflowCxV3Intent) MarshalJSON

                                                                func (s *GoogleCloudDialogflowCxV3Intent) MarshalJSON() ([]byte, error)

                                                                type GoogleCloudDialogflowCxV3IntentInput

                                                                type GoogleCloudDialogflowCxV3IntentInput struct {
                                                                	// Intent: Required. The unique identifier of the intent. Format:
                                                                	// `projects//locations//agents//intents/`.
                                                                	Intent string `json:"intent,omitempty"`
                                                                
                                                                	// ForceSendFields is a list of field names (e.g. "Intent") to
                                                                	// unconditionally include in API requests. By default, fields with
                                                                	// empty values are omitted from API requests. However, any non-pointer,
                                                                	// non-interface field appearing in ForceSendFields will be sent to the
                                                                	// server regardless of whether the field is empty or not. This may be
                                                                	// used to include empty fields in Patch requests.
                                                                	ForceSendFields []string `json:"-"`
                                                                
                                                                	// NullFields is a list of field names (e.g. "Intent") to include in API
                                                                	// requests with the JSON null value. By default, fields with empty
                                                                	// values are omitted from API requests. However, any field with an
                                                                	// empty value appearing in NullFields will be sent to the server as
                                                                	// null. It is an error if a field in this list has a non-empty value.
                                                                	// This may be used to include null fields in Patch requests.
                                                                	NullFields []string `json:"-"`
                                                                }

                                                                  GoogleCloudDialogflowCxV3IntentInput: Represents the intent to trigger programmatically rather than as a result of natural language processing.

                                                                  func (*GoogleCloudDialogflowCxV3IntentInput) MarshalJSON

                                                                  func (s *GoogleCloudDialogflowCxV3IntentInput) MarshalJSON() ([]byte, error)

                                                                  type GoogleCloudDialogflowCxV3IntentParameter

                                                                  type GoogleCloudDialogflowCxV3IntentParameter struct {
                                                                  	// EntityType: Required. The entity type of the parameter. Format:
                                                                  	// `projects/-/locations/-/agents/-/entityTypes/` for system entity
                                                                  	// types (for example,
                                                                  	// `projects/-/locations/-/agents/-/entityTypes/sys.date`), or
                                                                  	// `projects//locations//agents//entityTypes/` for developer entity
                                                                  	// types.
                                                                  	EntityType string `json:"entityType,omitempty"`
                                                                  
                                                                  	// Id: Required. The unique identifier of the parameter. This field is
                                                                  	// used by training phrases to annotate their parts.
                                                                  	Id string `json:"id,omitempty"`
                                                                  
                                                                  	// IsList: Indicates whether the parameter represents a list of values.
                                                                  	IsList bool `json:"isList,omitempty"`
                                                                  
                                                                  	// Redact: Indicates whether the parameter content should be redacted in
                                                                  	// log. If redaction is enabled, the parameter content will be replaced
                                                                  	// by parameter name during logging. Note: the parameter content is
                                                                  	// subject to redaction if either parameter level redaction or entity
                                                                  	// type level redaction is enabled.
                                                                  	Redact bool `json:"redact,omitempty"`
                                                                  
                                                                  	// ForceSendFields is a list of field names (e.g. "EntityType") to
                                                                  	// unconditionally include in API requests. By default, fields with
                                                                  	// empty values are omitted from API requests. However, any non-pointer,
                                                                  	// non-interface field appearing in ForceSendFields will be sent to the
                                                                  	// server regardless of whether the field is empty or not. This may be
                                                                  	// used to include empty fields in Patch requests.
                                                                  	ForceSendFields []string `json:"-"`
                                                                  
                                                                  	// NullFields is a list of field names (e.g. "EntityType") to include in
                                                                  	// API requests with the JSON null value. By default, fields with empty
                                                                  	// values are omitted from API requests. However, any field with an
                                                                  	// empty value appearing in NullFields will be sent to the server as
                                                                  	// null. It is an error if a field in this list has a non-empty value.
                                                                  	// This may be used to include null fields in Patch requests.
                                                                  	NullFields []string `json:"-"`
                                                                  }

                                                                    GoogleCloudDialogflowCxV3IntentParameter: Represents an intent parameter.

                                                                    func (*GoogleCloudDialogflowCxV3IntentParameter) MarshalJSON

                                                                    func (s *GoogleCloudDialogflowCxV3IntentParameter) MarshalJSON() ([]byte, error)

                                                                    type GoogleCloudDialogflowCxV3IntentTrainingPhrase

                                                                    type GoogleCloudDialogflowCxV3IntentTrainingPhrase struct {
                                                                    	// Id: Output only. The unique identifier of the training phrase.
                                                                    	Id string `json:"id,omitempty"`
                                                                    
                                                                    	// Parts: Required. The ordered list of training phrase parts. The parts
                                                                    	// are concatenated in order to form the training phrase. Note: The API
                                                                    	// does not automatically annotate training phrases like the Dialogflow
                                                                    	// Console does. Note: Do not forget to include whitespace at part
                                                                    	// boundaries, so the training phrase is well formatted when the parts
                                                                    	// are concatenated. If the training phrase does not need to be
                                                                    	// annotated with parameters, you just need a single part with only the
                                                                    	// Part.text field set. If you want to annotate the training phrase, you
                                                                    	// must create multiple parts, where the fields of each part are
                                                                    	// populated in one of two ways: - `Part.text` is set to a part of the
                                                                    	// phrase that has no parameters. - `Part.text` is set to a part of the
                                                                    	// phrase that you want to annotate, and the `parameter_id` field is
                                                                    	// set.
                                                                    	Parts []*GoogleCloudDialogflowCxV3IntentTrainingPhrasePart `json:"parts,omitempty"`
                                                                    
                                                                    	// RepeatCount: Indicates how many times this example was added to the
                                                                    	// intent.
                                                                    	RepeatCount int64 `json:"repeatCount,omitempty"`
                                                                    
                                                                    	// ForceSendFields is a list of field names (e.g. "Id") to
                                                                    	// unconditionally include in API requests. By default, fields with
                                                                    	// empty values are omitted from API requests. However, any non-pointer,
                                                                    	// non-interface field appearing in ForceSendFields will be sent to the
                                                                    	// server regardless of whether the field is empty or not. This may be
                                                                    	// used to include empty fields in Patch requests.
                                                                    	ForceSendFields []string `json:"-"`
                                                                    
                                                                    	// NullFields is a list of field names (e.g. "Id") to include in API
                                                                    	// requests with the JSON null value. By default, fields with empty
                                                                    	// values are omitted from API requests. However, any field with an
                                                                    	// empty value appearing in NullFields will be sent to the server as
                                                                    	// null. It is an error if a field in this list has a non-empty value.
                                                                    	// This may be used to include null fields in Patch requests.
                                                                    	NullFields []string `json:"-"`
                                                                    }

                                                                      GoogleCloudDialogflowCxV3IntentTrainingPhrase: Represents an example that the agent is trained on to identify the intent.

                                                                      func (*GoogleCloudDialogflowCxV3IntentTrainingPhrase) MarshalJSON

                                                                      type GoogleCloudDialogflowCxV3IntentTrainingPhrasePart

                                                                      type GoogleCloudDialogflowCxV3IntentTrainingPhrasePart struct {
                                                                      	// ParameterId: The parameter used to annotate this part of the training
                                                                      	// phrase. This field is required for annotated parts of the training
                                                                      	// phrase.
                                                                      	ParameterId string `json:"parameterId,omitempty"`
                                                                      
                                                                      	// Text: Required. The text for this part.
                                                                      	Text string `json:"text,omitempty"`
                                                                      
                                                                      	// ForceSendFields is a list of field names (e.g. "ParameterId") to
                                                                      	// unconditionally include in API requests. By default, fields with
                                                                      	// empty values are omitted from API requests. However, any non-pointer,
                                                                      	// non-interface field appearing in ForceSendFields will be sent to the
                                                                      	// server regardless of whether the field is empty or not. This may be
                                                                      	// used to include empty fields in Patch requests.
                                                                      	ForceSendFields []string `json:"-"`
                                                                      
                                                                      	// NullFields is a list of field names (e.g. "ParameterId") to include
                                                                      	// in API requests with the JSON null value. By default, fields with
                                                                      	// empty values are omitted from API requests. However, any field with
                                                                      	// an empty value appearing in NullFields will be sent to the server as
                                                                      	// null. It is an error if a field in this list has a non-empty value.
                                                                      	// This may be used to include null fields in Patch requests.
                                                                      	NullFields []string `json:"-"`
                                                                      }

                                                                        GoogleCloudDialogflowCxV3IntentTrainingPhrasePart: Represents a part of a training phrase.

                                                                        func (*GoogleCloudDialogflowCxV3IntentTrainingPhrasePart) MarshalJSON

                                                                        type GoogleCloudDialogflowCxV3Page

                                                                        type GoogleCloudDialogflowCxV3Page struct {
                                                                        	// DisplayName: Required. The human-readable name of the page, unique
                                                                        	// within the agent.
                                                                        	DisplayName string `json:"displayName,omitempty"`
                                                                        
                                                                        	// EntryFulfillment: The fulfillment to call when the session is
                                                                        	// entering the page.
                                                                        	EntryFulfillment *GoogleCloudDialogflowCxV3Fulfillment `json:"entryFulfillment,omitempty"`
                                                                        
                                                                        	// EventHandlers: Handlers associated with the page to handle events
                                                                        	// such as webhook errors, no match or no input.
                                                                        	EventHandlers []*GoogleCloudDialogflowCxV3EventHandler `json:"eventHandlers,omitempty"`
                                                                        
                                                                        	// Form: The form associated with the page, used for collecting
                                                                        	// parameters relevant to the page.
                                                                        	Form *GoogleCloudDialogflowCxV3Form `json:"form,omitempty"`
                                                                        
                                                                        	// Name: The unique identifier of the page. Required for the
                                                                        	// Pages.UpdatePage method. Pages.CreatePage populates the name
                                                                        	// automatically. Format: `projects//locations//agents//flows//pages/`.
                                                                        	Name string `json:"name,omitempty"`
                                                                        
                                                                        	// TransitionRouteGroups: Ordered list of `TransitionRouteGroups`
                                                                        	// associated with the page. Transition route groups must be unique
                                                                        	// within a page. * If multiple transition routes within a page scope
                                                                        	// refer to the same intent, then the precedence order is: page's
                                                                        	// transition route -> page's transition route group -> flow's
                                                                        	// transition routes. * If multiple transition route groups within a
                                                                        	// page contain the same intent, then the first group in the ordered
                                                                        	// list takes precedence.
                                                                        	// Format:`projects//locations//agents//flows//transitionRouteGroups/`.
                                                                        	TransitionRouteGroups []string `json:"transitionRouteGroups,omitempty"`
                                                                        
                                                                        	// TransitionRoutes: A list of transitions for the transition rules of
                                                                        	// this page. They route the conversation to another page in the same
                                                                        	// flow, or another flow. When we are in a certain page, the
                                                                        	// TransitionRoutes are evalauted in the following order: *
                                                                        	// TransitionRoutes defined in the page with intent specified. *
                                                                        	// TransitionRoutes defined in the transition route groups with intent
                                                                        	// specified. * TransitionRoutes defined in flow with intent specified.
                                                                        	// * TransitionRoutes defined in the transition route groups with intent
                                                                        	// specified. * TransitionRoutes defined in the page with only condition
                                                                        	// specified. * TransitionRoutes defined in the transition route groups
                                                                        	// with only condition specified.
                                                                        	TransitionRoutes []*GoogleCloudDialogflowCxV3TransitionRoute `json:"transitionRoutes,omitempty"`
                                                                        
                                                                        	// ForceSendFields is a list of field names (e.g. "DisplayName") to
                                                                        	// unconditionally include in API requests. By default, fields with
                                                                        	// empty values are omitted from API requests. However, any non-pointer,
                                                                        	// non-interface field appearing in ForceSendFields will be sent to the
                                                                        	// server regardless of whether the field is empty or not. This may be
                                                                        	// used to include empty fields in Patch requests.
                                                                        	ForceSendFields []string `json:"-"`
                                                                        
                                                                        	// NullFields is a list of field names (e.g. "DisplayName") to include
                                                                        	// in API requests with the JSON null value. By default, fields with
                                                                        	// empty values are omitted from API requests. However, any field with
                                                                        	// an empty value appearing in NullFields will be sent to the server as
                                                                        	// null. It is an error if a field in this list has a non-empty value.
                                                                        	// This may be used to include null fields in Patch requests.
                                                                        	NullFields []string `json:"-"`
                                                                        }

                                                                          GoogleCloudDialogflowCxV3Page: A Dialogflow CX conversation (session) can be described and visualized as a state machine. The states of a CX session are represented by pages. For each flow, you define many pages, where your combined pages can handle a complete conversation on the topics the flow is designed for. At any given moment, exactly one page is the current page, the current page is considered active, and the flow associated with that page is considered active. Every flow has a special start page. When a flow initially becomes active, the start page page becomes the current page. For each conversational turn, the current page will either stay the same or transition to another page. You configure each page to collect information from the end-user that is relevant for the conversational state represented by the page. For more information, see the Page guide (https://cloud.google.com/dialogflow/cx/docs/concept/page).

                                                                          func (*GoogleCloudDialogflowCxV3Page) MarshalJSON

                                                                          func (s *GoogleCloudDialogflowCxV3Page) MarshalJSON() ([]byte, error)

                                                                          type GoogleCloudDialogflowCxV3PageInfo

                                                                          type GoogleCloudDialogflowCxV3PageInfo struct {
                                                                          	// CurrentPage: Always present for WebhookRequest. Ignored for
                                                                          	// WebhookResponse. The unique identifier of the current page. Format:
                                                                          	// `projects//locations//agents//flows//pages/`.
                                                                          	CurrentPage string `json:"currentPage,omitempty"`
                                                                          
                                                                          	// FormInfo: Optional for both WebhookRequest and WebhookResponse.
                                                                          	// Information about the form.
                                                                          	FormInfo *GoogleCloudDialogflowCxV3PageInfoFormInfo `json:"formInfo,omitempty"`
                                                                          
                                                                          	// ForceSendFields is a list of field names (e.g. "CurrentPage") to
                                                                          	// unconditionally include in API requests. By default, fields with
                                                                          	// empty values are omitted from API requests. However, any non-pointer,
                                                                          	// non-interface field appearing in ForceSendFields will be sent to the
                                                                          	// server regardless of whether the field is empty or not. This may be
                                                                          	// used to include empty fields in Patch requests.
                                                                          	ForceSendFields []string `json:"-"`
                                                                          
                                                                          	// NullFields is a list of field names (e.g. "CurrentPage") to include
                                                                          	// in API requests with the JSON null value. By default, fields with
                                                                          	// empty values are omitted from API requests. However, any field with
                                                                          	// an empty value appearing in NullFields will be sent to the server as
                                                                          	// null. It is an error if a field in this list has a non-empty value.
                                                                          	// This may be used to include null fields in Patch requests.
                                                                          	NullFields []string `json:"-"`
                                                                          }

                                                                            GoogleCloudDialogflowCxV3PageInfo: Represents page information communicated to and from the webhook.

                                                                            func (*GoogleCloudDialogflowCxV3PageInfo) MarshalJSON

                                                                            func (s *GoogleCloudDialogflowCxV3PageInfo) MarshalJSON() ([]byte, error)

                                                                            type GoogleCloudDialogflowCxV3PageInfoFormInfo

                                                                            type GoogleCloudDialogflowCxV3PageInfoFormInfo struct {
                                                                            	// ParameterInfo: Optional for both WebhookRequest and WebhookResponse.
                                                                            	// The parameters contained in the form. Note that the webhook cannot
                                                                            	// add or remove any form parameter.
                                                                            	ParameterInfo []*GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo `json:"parameterInfo,omitempty"`
                                                                            
                                                                            	// ForceSendFields is a list of field names (e.g. "ParameterInfo") to
                                                                            	// unconditionally include in API requests. By default, fields with
                                                                            	// empty values are omitted from API requests. However, any non-pointer,
                                                                            	// non-interface field appearing in ForceSendFields will be sent to the
                                                                            	// server regardless of whether the field is empty or not. This may be
                                                                            	// used to include empty fields in Patch requests.
                                                                            	ForceSendFields []string `json:"-"`
                                                                            
                                                                            	// NullFields is a list of field names (e.g. "ParameterInfo") to include
                                                                            	// in API requests with the JSON null value. By default, fields with
                                                                            	// empty values are omitted from API requests. However, any field with
                                                                            	// an empty value appearing in NullFields will be sent to the server as
                                                                            	// null. It is an error if a field in this list has a non-empty value.
                                                                            	// This may be used to include null fields in Patch requests.
                                                                            	NullFields []string `json:"-"`
                                                                            }

                                                                              GoogleCloudDialogflowCxV3PageInfoFormInfo: Represents form information.

                                                                              func (*GoogleCloudDialogflowCxV3PageInfoFormInfo) MarshalJSON

                                                                              type GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo

                                                                              type GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo struct {
                                                                              	// DisplayName: Always present for WebhookRequest. Required for
                                                                              	// WebhookResponse. The human-readable name of the parameter, unique
                                                                              	// within the form. This field cannot be modified by the webhook.
                                                                              	DisplayName string `json:"displayName,omitempty"`
                                                                              
                                                                              	// JustCollected: Optional for WebhookRequest. Ignored for
                                                                              	// WebhookResponse. Indicates if the parameter value was just collected
                                                                              	// on the last conversation turn.
                                                                              	JustCollected bool `json:"justCollected,omitempty"`
                                                                              
                                                                              	// Required: Optional for both WebhookRequest and WebhookResponse.
                                                                              	// Indicates whether the parameter is required. Optional parameters will
                                                                              	// not trigger prompts; however, they are filled if the user specifies
                                                                              	// them. Required parameters must be filled before form filling
                                                                              	// concludes.
                                                                              	Required bool `json:"required,omitempty"`
                                                                              
                                                                              	// State: Always present for WebhookRequest. Required for
                                                                              	// WebhookResponse. The state of the parameter. This field can be set to
                                                                              	// INVALID by the webhook to invalidate the parameter; other values set
                                                                              	// by the webhook will be ignored.
                                                                              	//
                                                                              	// Possible values:
                                                                              	//   "PARAMETER_STATE_UNSPECIFIED" - Not specified. This value should be
                                                                              	// never used.
                                                                              	//   "EMPTY" - Indicates that the parameter does not have a value.
                                                                              	//   "INVALID" - Indicates that the parameter value is invalid. This
                                                                              	// field can be used by the webhook to invalidate the parameter and ask
                                                                              	// the server to collect it from the user again.
                                                                              	//   "FILLED" - Indicates that the parameter has a value.
                                                                              	State string `json:"state,omitempty"`
                                                                              
                                                                              	// Value: Optional for both WebhookRequest and WebhookResponse. The
                                                                              	// value of the parameter. This field can be set by the webhook to
                                                                              	// change the parameter value.
                                                                              	Value interface{} `json:"value,omitempty"`
                                                                              
                                                                              	// ForceSendFields is a list of field names (e.g. "DisplayName") to
                                                                              	// unconditionally include in API requests. By default, fields with
                                                                              	// empty values are omitted from API requests. However, any non-pointer,
                                                                              	// non-interface field appearing in ForceSendFields will be sent to the
                                                                              	// server regardless of whether the field is empty or not. This may be
                                                                              	// used to include empty fields in Patch requests.
                                                                              	ForceSendFields []string `json:"-"`
                                                                              
                                                                              	// NullFields is a list of field names (e.g. "DisplayName") to include
                                                                              	// in API requests with the JSON null value. By default, fields with
                                                                              	// empty values are omitted from API requests. However, any field with
                                                                              	// an empty value appearing in NullFields will be sent to the server as
                                                                              	// null. It is an error if a field in this list has a non-empty value.
                                                                              	// This may be used to include null fields in Patch requests.
                                                                              	NullFields []string `json:"-"`
                                                                              }

                                                                                GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo: Represents parameter information.

                                                                                func (*GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo) MarshalJSON

                                                                                type GoogleCloudDialogflowCxV3QueryInput

                                                                                type GoogleCloudDialogflowCxV3QueryInput struct {
                                                                                	// Audio: The natural language speech audio to be processed.
                                                                                	Audio *GoogleCloudDialogflowCxV3AudioInput `json:"audio,omitempty"`
                                                                                
                                                                                	// Dtmf: The DTMF event to be handled.
                                                                                	Dtmf *GoogleCloudDialogflowCxV3DtmfInput `json:"dtmf,omitempty"`
                                                                                
                                                                                	// Event: The event to be triggered.
                                                                                	Event *GoogleCloudDialogflowCxV3EventInput `json:"event,omitempty"`
                                                                                
                                                                                	// Intent: The intent to be triggered.
                                                                                	Intent *GoogleCloudDialogflowCxV3IntentInput `json:"intent,omitempty"`
                                                                                
                                                                                	// LanguageCode: Required. The language of the input. See Language
                                                                                	// Su