1// Copyright 2021 Google LLC.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5// Code generated file. DO NOT EDIT.
6
7// Package dialogflow provides access to the Dialogflow API.
8//
9// This package is DEPRECATED. Use package cloud.google.com/go/dialogflow/apiv2 instead.
10//
11// For product documentation, see: https://cloud.google.com/dialogflow/
12//
13// Creating a client
14//
15// Usage example:
16//
17//   import "google.golang.org/api/dialogflow/v3"
18//   ...
19//   ctx := context.Background()
20//   dialogflowService, err := dialogflow.NewService(ctx)
21//
22// In this example, Google Application Default Credentials are used for authentication.
23//
24// For information on how to create and obtain Application Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials.
25//
26// Other authentication options
27//
28// By default, all available scopes (see "Constants") are used to authenticate. To restrict scopes, use option.WithScopes:
29//
30//   dialogflowService, err := dialogflow.NewService(ctx, option.WithScopes(dialogflow.DialogflowScope))
31//
32// To use an API key for authentication (note: some APIs do not support API keys), use option.WithAPIKey:
33//
34//   dialogflowService, err := dialogflow.NewService(ctx, option.WithAPIKey("AIza..."))
35//
36// To use an OAuth token (e.g., a user token obtained via a three-legged OAuth flow), use option.WithTokenSource:
37//
38//   config := &oauth2.Config{...}
39//   // ...
40//   token, err := config.Exchange(ctx, ...)
41//   dialogflowService, err := dialogflow.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token)))
42//
43// See https://godoc.org/google.golang.org/api/option/ for details on options.
44package dialogflow // import "google.golang.org/api/dialogflow/v3"
45
46import (
47	"bytes"
48	"context"
49	"encoding/json"
50	"errors"
51	"fmt"
52	"io"
53	"net/http"
54	"net/url"
55	"strconv"
56	"strings"
57
58	googleapi "google.golang.org/api/googleapi"
59	gensupport "google.golang.org/api/internal/gensupport"
60	option "google.golang.org/api/option"
61	internaloption "google.golang.org/api/option/internaloption"
62	htransport "google.golang.org/api/transport/http"
63)
64
65// Always reference these packages, just in case the auto-generated code
66// below doesn't.
67var _ = bytes.NewBuffer
68var _ = strconv.Itoa
69var _ = fmt.Sprintf
70var _ = json.NewDecoder
71var _ = io.Copy
72var _ = url.Parse
73var _ = gensupport.MarshalJSON
74var _ = googleapi.Version
75var _ = errors.New
76var _ = strings.Replace
77var _ = context.Canceled
78var _ = internaloption.WithDefaultEndpoint
79
80const apiId = "dialogflow:v3"
81const apiName = "dialogflow"
82const apiVersion = "v3"
83const basePath = "https://dialogflow.googleapis.com/"
84const mtlsBasePath = "https://dialogflow.mtls.googleapis.com/"
85
86// OAuth2 scopes used by this API.
87const (
88	// See, edit, configure, and delete your Google Cloud data and see the
89	// email address for your Google Account.
90	CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform"
91
92	// View, manage and query your Dialogflow agents
93	DialogflowScope = "https://www.googleapis.com/auth/dialogflow"
94)
95
96// NewService creates a new Service.
97func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) {
98	scopesOption := option.WithScopes(
99		"https://www.googleapis.com/auth/cloud-platform",
100		"https://www.googleapis.com/auth/dialogflow",
101	)
102	// NOTE: prepend, so we don't override user-specified scopes.
103	opts = append([]option.ClientOption{scopesOption}, opts...)
104	opts = append(opts, internaloption.WithDefaultEndpoint(basePath))
105	opts = append(opts, internaloption.WithDefaultMTLSEndpoint(mtlsBasePath))
106	client, endpoint, err := htransport.NewClient(ctx, opts...)
107	if err != nil {
108		return nil, err
109	}
110	s, err := New(client)
111	if err != nil {
112		return nil, err
113	}
114	if endpoint != "" {
115		s.BasePath = endpoint
116	}
117	return s, nil
118}
119
120// New creates a new Service. It uses the provided http.Client for requests.
121//
122// Deprecated: please use NewService instead.
123// To provide a custom HTTP client, use option.WithHTTPClient.
124// If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead.
125func New(client *http.Client) (*Service, error) {
126	if client == nil {
127		return nil, errors.New("client is nil")
128	}
129	s := &Service{client: client, BasePath: basePath}
130	s.Projects = NewProjectsService(s)
131	return s, nil
132}
133
134type Service struct {
135	client    *http.Client
136	BasePath  string // API endpoint base URL
137	UserAgent string // optional additional User-Agent fragment
138
139	Projects *ProjectsService
140}
141
142func (s *Service) userAgent() string {
143	if s.UserAgent == "" {
144		return googleapi.UserAgent
145	}
146	return googleapi.UserAgent + " " + s.UserAgent
147}
148
149func NewProjectsService(s *Service) *ProjectsService {
150	rs := &ProjectsService{s: s}
151	rs.Locations = NewProjectsLocationsService(s)
152	rs.Operations = NewProjectsOperationsService(s)
153	return rs
154}
155
156type ProjectsService struct {
157	s *Service
158
159	Locations *ProjectsLocationsService
160
161	Operations *ProjectsOperationsService
162}
163
164func NewProjectsLocationsService(s *Service) *ProjectsLocationsService {
165	rs := &ProjectsLocationsService{s: s}
166	rs.Agents = NewProjectsLocationsAgentsService(s)
167	rs.Operations = NewProjectsLocationsOperationsService(s)
168	rs.SecuritySettings = NewProjectsLocationsSecuritySettingsService(s)
169	return rs
170}
171
172type ProjectsLocationsService struct {
173	s *Service
174
175	Agents *ProjectsLocationsAgentsService
176
177	Operations *ProjectsLocationsOperationsService
178
179	SecuritySettings *ProjectsLocationsSecuritySettingsService
180}
181
182func NewProjectsLocationsAgentsService(s *Service) *ProjectsLocationsAgentsService {
183	rs := &ProjectsLocationsAgentsService{s: s}
184	rs.EntityTypes = NewProjectsLocationsAgentsEntityTypesService(s)
185	rs.Environments = NewProjectsLocationsAgentsEnvironmentsService(s)
186	rs.Flows = NewProjectsLocationsAgentsFlowsService(s)
187	rs.Intents = NewProjectsLocationsAgentsIntentsService(s)
188	rs.Sessions = NewProjectsLocationsAgentsSessionsService(s)
189	rs.TestCases = NewProjectsLocationsAgentsTestCasesService(s)
190	rs.Webhooks = NewProjectsLocationsAgentsWebhooksService(s)
191	return rs
192}
193
194type ProjectsLocationsAgentsService struct {
195	s *Service
196
197	EntityTypes *ProjectsLocationsAgentsEntityTypesService
198
199	Environments *ProjectsLocationsAgentsEnvironmentsService
200
201	Flows *ProjectsLocationsAgentsFlowsService
202
203	Intents *ProjectsLocationsAgentsIntentsService
204
205	Sessions *ProjectsLocationsAgentsSessionsService
206
207	TestCases *ProjectsLocationsAgentsTestCasesService
208
209	Webhooks *ProjectsLocationsAgentsWebhooksService
210}
211
212func NewProjectsLocationsAgentsEntityTypesService(s *Service) *ProjectsLocationsAgentsEntityTypesService {
213	rs := &ProjectsLocationsAgentsEntityTypesService{s: s}
214	return rs
215}
216
217type ProjectsLocationsAgentsEntityTypesService struct {
218	s *Service
219}
220
221func NewProjectsLocationsAgentsEnvironmentsService(s *Service) *ProjectsLocationsAgentsEnvironmentsService {
222	rs := &ProjectsLocationsAgentsEnvironmentsService{s: s}
223	rs.ContinuousTestResults = NewProjectsLocationsAgentsEnvironmentsContinuousTestResultsService(s)
224	rs.Experiments = NewProjectsLocationsAgentsEnvironmentsExperimentsService(s)
225	rs.Sessions = NewProjectsLocationsAgentsEnvironmentsSessionsService(s)
226	return rs
227}
228
229type ProjectsLocationsAgentsEnvironmentsService struct {
230	s *Service
231
232	ContinuousTestResults *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsService
233
234	Experiments *ProjectsLocationsAgentsEnvironmentsExperimentsService
235
236	Sessions *ProjectsLocationsAgentsEnvironmentsSessionsService
237}
238
239func NewProjectsLocationsAgentsEnvironmentsContinuousTestResultsService(s *Service) *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsService {
240	rs := &ProjectsLocationsAgentsEnvironmentsContinuousTestResultsService{s: s}
241	return rs
242}
243
244type ProjectsLocationsAgentsEnvironmentsContinuousTestResultsService struct {
245	s *Service
246}
247
248func NewProjectsLocationsAgentsEnvironmentsExperimentsService(s *Service) *ProjectsLocationsAgentsEnvironmentsExperimentsService {
249	rs := &ProjectsLocationsAgentsEnvironmentsExperimentsService{s: s}
250	return rs
251}
252
253type ProjectsLocationsAgentsEnvironmentsExperimentsService struct {
254	s *Service
255}
256
257func NewProjectsLocationsAgentsEnvironmentsSessionsService(s *Service) *ProjectsLocationsAgentsEnvironmentsSessionsService {
258	rs := &ProjectsLocationsAgentsEnvironmentsSessionsService{s: s}
259	rs.EntityTypes = NewProjectsLocationsAgentsEnvironmentsSessionsEntityTypesService(s)
260	return rs
261}
262
263type ProjectsLocationsAgentsEnvironmentsSessionsService struct {
264	s *Service
265
266	EntityTypes *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesService
267}
268
269func NewProjectsLocationsAgentsEnvironmentsSessionsEntityTypesService(s *Service) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesService {
270	rs := &ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesService{s: s}
271	return rs
272}
273
274type ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesService struct {
275	s *Service
276}
277
278func NewProjectsLocationsAgentsFlowsService(s *Service) *ProjectsLocationsAgentsFlowsService {
279	rs := &ProjectsLocationsAgentsFlowsService{s: s}
280	rs.Pages = NewProjectsLocationsAgentsFlowsPagesService(s)
281	rs.TransitionRouteGroups = NewProjectsLocationsAgentsFlowsTransitionRouteGroupsService(s)
282	rs.Versions = NewProjectsLocationsAgentsFlowsVersionsService(s)
283	return rs
284}
285
286type ProjectsLocationsAgentsFlowsService struct {
287	s *Service
288
289	Pages *ProjectsLocationsAgentsFlowsPagesService
290
291	TransitionRouteGroups *ProjectsLocationsAgentsFlowsTransitionRouteGroupsService
292
293	Versions *ProjectsLocationsAgentsFlowsVersionsService
294}
295
296func NewProjectsLocationsAgentsFlowsPagesService(s *Service) *ProjectsLocationsAgentsFlowsPagesService {
297	rs := &ProjectsLocationsAgentsFlowsPagesService{s: s}
298	return rs
299}
300
301type ProjectsLocationsAgentsFlowsPagesService struct {
302	s *Service
303}
304
305func NewProjectsLocationsAgentsFlowsTransitionRouteGroupsService(s *Service) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsService {
306	rs := &ProjectsLocationsAgentsFlowsTransitionRouteGroupsService{s: s}
307	return rs
308}
309
310type ProjectsLocationsAgentsFlowsTransitionRouteGroupsService struct {
311	s *Service
312}
313
314func NewProjectsLocationsAgentsFlowsVersionsService(s *Service) *ProjectsLocationsAgentsFlowsVersionsService {
315	rs := &ProjectsLocationsAgentsFlowsVersionsService{s: s}
316	return rs
317}
318
319type ProjectsLocationsAgentsFlowsVersionsService struct {
320	s *Service
321}
322
323func NewProjectsLocationsAgentsIntentsService(s *Service) *ProjectsLocationsAgentsIntentsService {
324	rs := &ProjectsLocationsAgentsIntentsService{s: s}
325	return rs
326}
327
328type ProjectsLocationsAgentsIntentsService struct {
329	s *Service
330}
331
332func NewProjectsLocationsAgentsSessionsService(s *Service) *ProjectsLocationsAgentsSessionsService {
333	rs := &ProjectsLocationsAgentsSessionsService{s: s}
334	rs.EntityTypes = NewProjectsLocationsAgentsSessionsEntityTypesService(s)
335	return rs
336}
337
338type ProjectsLocationsAgentsSessionsService struct {
339	s *Service
340
341	EntityTypes *ProjectsLocationsAgentsSessionsEntityTypesService
342}
343
344func NewProjectsLocationsAgentsSessionsEntityTypesService(s *Service) *ProjectsLocationsAgentsSessionsEntityTypesService {
345	rs := &ProjectsLocationsAgentsSessionsEntityTypesService{s: s}
346	return rs
347}
348
349type ProjectsLocationsAgentsSessionsEntityTypesService struct {
350	s *Service
351}
352
353func NewProjectsLocationsAgentsTestCasesService(s *Service) *ProjectsLocationsAgentsTestCasesService {
354	rs := &ProjectsLocationsAgentsTestCasesService{s: s}
355	rs.Results = NewProjectsLocationsAgentsTestCasesResultsService(s)
356	return rs
357}
358
359type ProjectsLocationsAgentsTestCasesService struct {
360	s *Service
361
362	Results *ProjectsLocationsAgentsTestCasesResultsService
363}
364
365func NewProjectsLocationsAgentsTestCasesResultsService(s *Service) *ProjectsLocationsAgentsTestCasesResultsService {
366	rs := &ProjectsLocationsAgentsTestCasesResultsService{s: s}
367	return rs
368}
369
370type ProjectsLocationsAgentsTestCasesResultsService struct {
371	s *Service
372}
373
374func NewProjectsLocationsAgentsWebhooksService(s *Service) *ProjectsLocationsAgentsWebhooksService {
375	rs := &ProjectsLocationsAgentsWebhooksService{s: s}
376	return rs
377}
378
379type ProjectsLocationsAgentsWebhooksService struct {
380	s *Service
381}
382
383func NewProjectsLocationsOperationsService(s *Service) *ProjectsLocationsOperationsService {
384	rs := &ProjectsLocationsOperationsService{s: s}
385	return rs
386}
387
388type ProjectsLocationsOperationsService struct {
389	s *Service
390}
391
392func NewProjectsLocationsSecuritySettingsService(s *Service) *ProjectsLocationsSecuritySettingsService {
393	rs := &ProjectsLocationsSecuritySettingsService{s: s}
394	return rs
395}
396
397type ProjectsLocationsSecuritySettingsService struct {
398	s *Service
399}
400
401func NewProjectsOperationsService(s *Service) *ProjectsOperationsService {
402	rs := &ProjectsOperationsService{s: s}
403	return rs
404}
405
406type ProjectsOperationsService struct {
407	s *Service
408}
409
410// GoogleCloudDialogflowCxV3AdvancedSettings: Hierarchical advanced
411// settings for agent/flow/page/fulfillment/parameter. Settings exposed
412// at lower level overrides the settings exposed at higher level.
413// Hierarchy: Agent->Flow->Page->Fulfillment/Parameter.
414type GoogleCloudDialogflowCxV3AdvancedSettings struct {
415	// LoggingSettings: Settings for logging. Settings for Dialogflow
416	// History, Contact Center messages, StackDriver logs, and speech
417	// logging. Exposed at the following levels: - Agent level.
418	LoggingSettings *GoogleCloudDialogflowCxV3AdvancedSettingsLoggingSettings `json:"loggingSettings,omitempty"`
419
420	// ForceSendFields is a list of field names (e.g. "LoggingSettings") to
421	// unconditionally include in API requests. By default, fields with
422	// empty or default values are omitted from API requests. However, any
423	// non-pointer, non-interface field appearing in ForceSendFields will be
424	// sent to the server regardless of whether the field is empty or not.
425	// This may be used to include empty fields in Patch requests.
426	ForceSendFields []string `json:"-"`
427
428	// NullFields is a list of field names (e.g. "LoggingSettings") to
429	// include in API requests with the JSON null value. By default, fields
430	// with empty values are omitted from API requests. However, any field
431	// with an empty value appearing in NullFields will be sent to the
432	// server as null. It is an error if a field in this list has a
433	// non-empty value. This may be used to include null fields in Patch
434	// requests.
435	NullFields []string `json:"-"`
436}
437
438func (s *GoogleCloudDialogflowCxV3AdvancedSettings) MarshalJSON() ([]byte, error) {
439	type NoMethod GoogleCloudDialogflowCxV3AdvancedSettings
440	raw := NoMethod(*s)
441	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
442}
443
444// GoogleCloudDialogflowCxV3AdvancedSettingsLoggingSettings: Define
445// behaviors on logging.
446type GoogleCloudDialogflowCxV3AdvancedSettingsLoggingSettings struct {
447	// EnableInteractionLogging: If true, DF Interaction logging is
448	// currently enabled.
449	EnableInteractionLogging bool `json:"enableInteractionLogging,omitempty"`
450
451	// EnableStackdriverLogging: If true, StackDriver logging is currently
452	// enabled.
453	EnableStackdriverLogging bool `json:"enableStackdriverLogging,omitempty"`
454
455	// ForceSendFields is a list of field names (e.g.
456	// "EnableInteractionLogging") to unconditionally include in API
457	// requests. By default, fields with empty or default values are omitted
458	// from API requests. However, any non-pointer, non-interface field
459	// appearing in ForceSendFields will be sent to the server regardless of
460	// whether the field is empty or not. This may be used to include empty
461	// fields in Patch requests.
462	ForceSendFields []string `json:"-"`
463
464	// NullFields is a list of field names (e.g. "EnableInteractionLogging")
465	// to include in API requests with the JSON null value. By default,
466	// fields with empty values are omitted from API requests. However, any
467	// field with an empty value appearing in NullFields will be sent to the
468	// server as null. It is an error if a field in this list has a
469	// non-empty value. This may be used to include null fields in Patch
470	// requests.
471	NullFields []string `json:"-"`
472}
473
474func (s *GoogleCloudDialogflowCxV3AdvancedSettingsLoggingSettings) MarshalJSON() ([]byte, error) {
475	type NoMethod GoogleCloudDialogflowCxV3AdvancedSettingsLoggingSettings
476	raw := NoMethod(*s)
477	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
478}
479
480// GoogleCloudDialogflowCxV3Agent: Agents are best described as Natural
481// Language Understanding (NLU) modules that transform user requests
482// into actionable data. You can include agents in your app, product, or
483// service to determine user intent and respond to the user in a natural
484// way. After you create an agent, you can add Intents, Entity Types,
485// Flows, Fulfillments, Webhooks, and so on to manage the conversation
486// flows..
487type GoogleCloudDialogflowCxV3Agent struct {
488	// AdvancedSettings: Hierarchical advanced settings for this agent. The
489	// settings exposed at the lower level overrides the settings exposed at
490	// the higher level.
491	AdvancedSettings *GoogleCloudDialogflowCxV3AdvancedSettings `json:"advancedSettings,omitempty"`
492
493	// AvatarUri: The URI of the agent's avatar. Avatars are used throughout
494	// the Dialogflow console and in the self-hosted Web Demo
495	// (https://cloud.google.com/dialogflow/docs/integrations/web-demo)
496	// integration.
497	AvatarUri string `json:"avatarUri,omitempty"`
498
499	// DefaultLanguageCode: Required. Immutable. The default language of the
500	// agent as a language tag. See Language Support
501	// (https://cloud.google.com/dialogflow/cx/docs/reference/language) for
502	// a list of the currently supported language codes. This field cannot
503	// be set by the Agents.UpdateAgent method.
504	DefaultLanguageCode string `json:"defaultLanguageCode,omitempty"`
505
506	// Description: The description of the agent. The maximum length is 500
507	// characters. If exceeded, the request is rejected.
508	Description string `json:"description,omitempty"`
509
510	// DisplayName: Required. The human-readable name of the agent, unique
511	// within the location.
512	DisplayName string `json:"displayName,omitempty"`
513
514	// EnableSpellCorrection: Indicates if automatic spell correction is
515	// enabled in detect intent requests.
516	EnableSpellCorrection bool `json:"enableSpellCorrection,omitempty"`
517
518	// EnableStackdriverLogging: Indicates if stackdriver logging is enabled
519	// for the agent. Please use agent.advanced_settings instead.
520	EnableStackdriverLogging bool `json:"enableStackdriverLogging,omitempty"`
521
522	// Name: The unique identifier of the agent. Required for the
523	// Agents.UpdateAgent method. Agents.CreateAgent populates the name
524	// automatically. Format: `projects//locations//agents/`.
525	Name string `json:"name,omitempty"`
526
527	// SecuritySettings: Name of the SecuritySettings reference for the
528	// agent. Format: `projects//locations//securitySettings/`.
529	SecuritySettings string `json:"securitySettings,omitempty"`
530
531	// SpeechToTextSettings: Speech recognition related settings.
532	SpeechToTextSettings *GoogleCloudDialogflowCxV3SpeechToTextSettings `json:"speechToTextSettings,omitempty"`
533
534	// StartFlow: Immutable. Name of the start flow in this agent. A start
535	// flow will be automatically created when the agent is created, and can
536	// only be deleted by deleting the agent. Format:
537	// `projects//locations//agents//flows/`.
538	StartFlow string `json:"startFlow,omitempty"`
539
540	// SupportedLanguageCodes: The list of all languages supported by the
541	// agent (except for the `default_language_code`).
542	SupportedLanguageCodes []string `json:"supportedLanguageCodes,omitempty"`
543
544	// TimeZone: Required. The time zone of the agent from the time zone
545	// database (https://www.iana.org/time-zones), e.g., America/New_York,
546	// Europe/Paris.
547	TimeZone string `json:"timeZone,omitempty"`
548
549	// ServerResponse contains the HTTP response code and headers from the
550	// server.
551	googleapi.ServerResponse `json:"-"`
552
553	// ForceSendFields is a list of field names (e.g. "AdvancedSettings") to
554	// unconditionally include in API requests. By default, fields with
555	// empty or default values are omitted from API requests. However, any
556	// non-pointer, non-interface field appearing in ForceSendFields will be
557	// sent to the server regardless of whether the field is empty or not.
558	// This may be used to include empty fields in Patch requests.
559	ForceSendFields []string `json:"-"`
560
561	// NullFields is a list of field names (e.g. "AdvancedSettings") to
562	// include in API requests with the JSON null value. By default, fields
563	// with empty values are omitted from API requests. However, any field
564	// with an empty value appearing in NullFields will be sent to the
565	// server as null. It is an error if a field in this list has a
566	// non-empty value. This may be used to include null fields in Patch
567	// requests.
568	NullFields []string `json:"-"`
569}
570
571func (s *GoogleCloudDialogflowCxV3Agent) MarshalJSON() ([]byte, error) {
572	type NoMethod GoogleCloudDialogflowCxV3Agent
573	raw := NoMethod(*s)
574	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
575}
576
577// GoogleCloudDialogflowCxV3AgentValidationResult: The response message
578// for Agents.GetAgentValidationResult.
579type GoogleCloudDialogflowCxV3AgentValidationResult struct {
580	// FlowValidationResults: Contains all flow validation results.
581	FlowValidationResults []*GoogleCloudDialogflowCxV3FlowValidationResult `json:"flowValidationResults,omitempty"`
582
583	// Name: The unique identifier of the agent validation result. Format:
584	// `projects//locations//agents//validationResult`.
585	Name string `json:"name,omitempty"`
586
587	// ServerResponse contains the HTTP response code and headers from the
588	// server.
589	googleapi.ServerResponse `json:"-"`
590
591	// ForceSendFields is a list of field names (e.g.
592	// "FlowValidationResults") to unconditionally include in API requests.
593	// By default, fields with empty or default values are omitted from API
594	// requests. However, any non-pointer, non-interface field appearing in
595	// ForceSendFields will be sent to the server regardless of whether the
596	// field is empty or not. This may be used to include empty fields in
597	// Patch requests.
598	ForceSendFields []string `json:"-"`
599
600	// NullFields is a list of field names (e.g. "FlowValidationResults") to
601	// include in API requests with the JSON null value. By default, fields
602	// with empty values are omitted from API requests. However, any field
603	// with an empty value appearing in NullFields will be sent to the
604	// server as null. It is an error if a field in this list has a
605	// non-empty value. This may be used to include null fields in Patch
606	// requests.
607	NullFields []string `json:"-"`
608}
609
610func (s *GoogleCloudDialogflowCxV3AgentValidationResult) MarshalJSON() ([]byte, error) {
611	type NoMethod GoogleCloudDialogflowCxV3AgentValidationResult
612	raw := NoMethod(*s)
613	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
614}
615
616// GoogleCloudDialogflowCxV3AudioInput: Represents the natural speech
617// audio to be processed.
618type GoogleCloudDialogflowCxV3AudioInput struct {
619	// Audio: The natural language speech audio to be processed. A single
620	// request can contain up to 1 minute of speech audio data. The
621	// transcribed text cannot contain more than 256 bytes. For
622	// non-streaming audio detect intent, both `config` and `audio` must be
623	// provided. For streaming audio detect intent, `config` must be
624	// provided in the first request and `audio` must be provided in all
625	// following requests.
626	Audio string `json:"audio,omitempty"`
627
628	// Config: Required. Instructs the speech recognizer how to process the
629	// speech audio.
630	Config *GoogleCloudDialogflowCxV3InputAudioConfig `json:"config,omitempty"`
631
632	// ForceSendFields is a list of field names (e.g. "Audio") to
633	// unconditionally include in API requests. By default, fields with
634	// empty or default values are omitted from API requests. However, any
635	// non-pointer, non-interface field appearing in ForceSendFields will be
636	// sent to the server regardless of whether the field is empty or not.
637	// This may be used to include empty fields in Patch requests.
638	ForceSendFields []string `json:"-"`
639
640	// NullFields is a list of field names (e.g. "Audio") to include in API
641	// requests with the JSON null value. By default, fields with empty
642	// values are omitted from API requests. However, any field with an
643	// empty value appearing in NullFields will be sent to the server as
644	// null. It is an error if a field in this list has a non-empty value.
645	// This may be used to include null fields in Patch requests.
646	NullFields []string `json:"-"`
647}
648
649func (s *GoogleCloudDialogflowCxV3AudioInput) MarshalJSON() ([]byte, error) {
650	type NoMethod GoogleCloudDialogflowCxV3AudioInput
651	raw := NoMethod(*s)
652	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
653}
654
655// GoogleCloudDialogflowCxV3BatchDeleteTestCasesRequest: The request
656// message for TestCases.BatchDeleteTestCases.
657type GoogleCloudDialogflowCxV3BatchDeleteTestCasesRequest struct {
658	// Names: Required. Format of test case names: `projects//locations/
659	// /agents//testCases/`.
660	Names []string `json:"names,omitempty"`
661
662	// ForceSendFields is a list of field names (e.g. "Names") to
663	// unconditionally include in API requests. By default, fields with
664	// empty or default values are omitted from API requests. However, any
665	// non-pointer, non-interface field appearing in ForceSendFields will be
666	// sent to the server regardless of whether the field is empty or not.
667	// This may be used to include empty fields in Patch requests.
668	ForceSendFields []string `json:"-"`
669
670	// NullFields is a list of field names (e.g. "Names") to include in API
671	// requests with the JSON null value. By default, fields with empty
672	// values are omitted from API requests. However, any field with an
673	// empty value appearing in NullFields will be sent to the server as
674	// null. It is an error if a field in this list has a non-empty value.
675	// This may be used to include null fields in Patch requests.
676	NullFields []string `json:"-"`
677}
678
679func (s *GoogleCloudDialogflowCxV3BatchDeleteTestCasesRequest) MarshalJSON() ([]byte, error) {
680	type NoMethod GoogleCloudDialogflowCxV3BatchDeleteTestCasesRequest
681	raw := NoMethod(*s)
682	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
683}
684
685// GoogleCloudDialogflowCxV3BatchRunTestCasesMetadata: Metadata returned
686// for the TestCases.BatchRunTestCases long running operation.
687type GoogleCloudDialogflowCxV3BatchRunTestCasesMetadata struct {
688	// Errors: The test errors.
689	Errors []*GoogleCloudDialogflowCxV3TestError `json:"errors,omitempty"`
690
691	// ForceSendFields is a list of field names (e.g. "Errors") to
692	// unconditionally include in API requests. By default, fields with
693	// empty or default values are omitted from API requests. However, any
694	// non-pointer, non-interface field appearing in ForceSendFields will be
695	// sent to the server regardless of whether the field is empty or not.
696	// This may be used to include empty fields in Patch requests.
697	ForceSendFields []string `json:"-"`
698
699	// NullFields is a list of field names (e.g. "Errors") to include in API
700	// requests with the JSON null value. By default, fields with empty
701	// values are omitted from API requests. However, any field with an
702	// empty value appearing in NullFields will be sent to the server as
703	// null. It is an error if a field in this list has a non-empty value.
704	// This may be used to include null fields in Patch requests.
705	NullFields []string `json:"-"`
706}
707
708func (s *GoogleCloudDialogflowCxV3BatchRunTestCasesMetadata) MarshalJSON() ([]byte, error) {
709	type NoMethod GoogleCloudDialogflowCxV3BatchRunTestCasesMetadata
710	raw := NoMethod(*s)
711	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
712}
713
714// GoogleCloudDialogflowCxV3BatchRunTestCasesRequest: The request
715// message for TestCases.BatchRunTestCases.
716type GoogleCloudDialogflowCxV3BatchRunTestCasesRequest struct {
717	// Environment: Optional. If not set, draft environment is assumed.
718	// Format: `projects//locations//agents//environments/`.
719	Environment string `json:"environment,omitempty"`
720
721	// TestCases: Required. Format:
722	// `projects//locations//agents//testCases/`.
723	TestCases []string `json:"testCases,omitempty"`
724
725	// ForceSendFields is a list of field names (e.g. "Environment") to
726	// unconditionally include in API requests. By default, fields with
727	// empty or default values are omitted from API requests. However, any
728	// non-pointer, non-interface field appearing in ForceSendFields will be
729	// sent to the server regardless of whether the field is empty or not.
730	// This may be used to include empty fields in Patch requests.
731	ForceSendFields []string `json:"-"`
732
733	// NullFields is a list of field names (e.g. "Environment") to include
734	// in API requests with the JSON null value. By default, fields with
735	// empty values are omitted from API requests. However, any field with
736	// an empty value appearing in NullFields will be sent to the server as
737	// null. It is an error if a field in this list has a non-empty value.
738	// This may be used to include null fields in Patch requests.
739	NullFields []string `json:"-"`
740}
741
742func (s *GoogleCloudDialogflowCxV3BatchRunTestCasesRequest) MarshalJSON() ([]byte, error) {
743	type NoMethod GoogleCloudDialogflowCxV3BatchRunTestCasesRequest
744	raw := NoMethod(*s)
745	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
746}
747
748// GoogleCloudDialogflowCxV3BatchRunTestCasesResponse: The response
749// message for TestCases.BatchRunTestCases.
750type GoogleCloudDialogflowCxV3BatchRunTestCasesResponse struct {
751	// Results: The test case results. The detailed conversation turns are
752	// empty in this response.
753	Results []*GoogleCloudDialogflowCxV3TestCaseResult `json:"results,omitempty"`
754
755	// ForceSendFields is a list of field names (e.g. "Results") to
756	// unconditionally include in API requests. By default, fields with
757	// empty or default values are omitted from API requests. However, any
758	// non-pointer, non-interface field appearing in ForceSendFields will be
759	// sent to the server regardless of whether the field is empty or not.
760	// This may be used to include empty fields in Patch requests.
761	ForceSendFields []string `json:"-"`
762
763	// NullFields is a list of field names (e.g. "Results") to include in
764	// API requests with the JSON null value. By default, fields with empty
765	// values are omitted from API requests. However, any field with an
766	// empty value appearing in NullFields will be sent to the server as
767	// null. It is an error if a field in this list has a non-empty value.
768	// This may be used to include null fields in Patch requests.
769	NullFields []string `json:"-"`
770}
771
772func (s *GoogleCloudDialogflowCxV3BatchRunTestCasesResponse) MarshalJSON() ([]byte, error) {
773	type NoMethod GoogleCloudDialogflowCxV3BatchRunTestCasesResponse
774	raw := NoMethod(*s)
775	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
776}
777
778// GoogleCloudDialogflowCxV3CalculateCoverageResponse: The response
779// message for TestCases.CalculateCoverage.
780type GoogleCloudDialogflowCxV3CalculateCoverageResponse struct {
781	// Agent: The agent to calculate coverage for. Format:
782	// `projects//locations//agents/`.
783	Agent string `json:"agent,omitempty"`
784
785	// IntentCoverage: Intent coverage.
786	IntentCoverage *GoogleCloudDialogflowCxV3IntentCoverage `json:"intentCoverage,omitempty"`
787
788	// RouteGroupCoverage: Transition route group coverage.
789	RouteGroupCoverage *GoogleCloudDialogflowCxV3TransitionRouteGroupCoverage `json:"routeGroupCoverage,omitempty"`
790
791	// TransitionCoverage: Transition (excluding transition route groups)
792	// coverage.
793	TransitionCoverage *GoogleCloudDialogflowCxV3TransitionCoverage `json:"transitionCoverage,omitempty"`
794
795	// ServerResponse contains the HTTP response code and headers from the
796	// server.
797	googleapi.ServerResponse `json:"-"`
798
799	// ForceSendFields is a list of field names (e.g. "Agent") to
800	// unconditionally include in API requests. By default, fields with
801	// empty or default values are omitted from API requests. However, any
802	// non-pointer, non-interface field appearing in ForceSendFields will be
803	// sent to the server regardless of whether the field is empty or not.
804	// This may be used to include empty fields in Patch requests.
805	ForceSendFields []string `json:"-"`
806
807	// NullFields is a list of field names (e.g. "Agent") to include in API
808	// requests with the JSON null value. By default, fields with empty
809	// values are omitted from API requests. However, any field with an
810	// empty value appearing in NullFields will be sent to the server as
811	// null. It is an error if a field in this list has a non-empty value.
812	// This may be used to include null fields in Patch requests.
813	NullFields []string `json:"-"`
814}
815
816func (s *GoogleCloudDialogflowCxV3CalculateCoverageResponse) MarshalJSON() ([]byte, error) {
817	type NoMethod GoogleCloudDialogflowCxV3CalculateCoverageResponse
818	raw := NoMethod(*s)
819	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
820}
821
822// GoogleCloudDialogflowCxV3ContinuousTestResult: Represents a result
823// from running a test case in an agent environment.
824type GoogleCloudDialogflowCxV3ContinuousTestResult struct {
825	// Name: The resource name for the continuous test result. Format:
826	// `projects//locations//agents//environments//continuousTestResults/`.
827	Name string `json:"name,omitempty"`
828
829	// Result: The result of this continuous test run, i.e. whether all the
830	// tests in this continuous test run pass or not.
831	//
832	// Possible values:
833	//   "AGGREGATED_TEST_RESULT_UNSPECIFIED" - Not specified. Should never
834	// be used.
835	//   "PASSED" - All the tests passed.
836	//   "FAILED" - At least one test did not pass.
837	Result string `json:"result,omitempty"`
838
839	// RunTime: Time when the continuous testing run starts.
840	RunTime string `json:"runTime,omitempty"`
841
842	// TestCaseResults: A list of individual test case results names in this
843	// continuous test run.
844	TestCaseResults []string `json:"testCaseResults,omitempty"`
845
846	// ForceSendFields is a list of field names (e.g. "Name") to
847	// unconditionally include in API requests. By default, fields with
848	// empty or default values are omitted from API requests. However, any
849	// non-pointer, non-interface field appearing in ForceSendFields will be
850	// sent to the server regardless of whether the field is empty or not.
851	// This may be used to include empty fields in Patch requests.
852	ForceSendFields []string `json:"-"`
853
854	// NullFields is a list of field names (e.g. "Name") to include in API
855	// requests with the JSON null value. By default, fields with empty
856	// values are omitted from API requests. However, any field with an
857	// empty value appearing in NullFields will be sent to the server as
858	// null. It is an error if a field in this list has a non-empty value.
859	// This may be used to include null fields in Patch requests.
860	NullFields []string `json:"-"`
861}
862
863func (s *GoogleCloudDialogflowCxV3ContinuousTestResult) MarshalJSON() ([]byte, error) {
864	type NoMethod GoogleCloudDialogflowCxV3ContinuousTestResult
865	raw := NoMethod(*s)
866	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
867}
868
869// GoogleCloudDialogflowCxV3ConversationTurn: One interaction between a
870// human and virtual agent. The human provides some input and the
871// virtual agent provides a response.
872type GoogleCloudDialogflowCxV3ConversationTurn struct {
873	// UserInput: The user input.
874	UserInput *GoogleCloudDialogflowCxV3ConversationTurnUserInput `json:"userInput,omitempty"`
875
876	// VirtualAgentOutput: The virtual agent output.
877	VirtualAgentOutput *GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput `json:"virtualAgentOutput,omitempty"`
878
879	// ForceSendFields is a list of field names (e.g. "UserInput") to
880	// unconditionally include in API requests. By default, fields with
881	// empty or default values are omitted from API requests. However, any
882	// non-pointer, non-interface field appearing in ForceSendFields will be
883	// sent to the server regardless of whether the field is empty or not.
884	// This may be used to include empty fields in Patch requests.
885	ForceSendFields []string `json:"-"`
886
887	// NullFields is a list of field names (e.g. "UserInput") to include in
888	// API requests with the JSON null value. By default, fields with empty
889	// values are omitted from API requests. However, any field with an
890	// empty value appearing in NullFields will be sent to the server as
891	// null. It is an error if a field in this list has a non-empty value.
892	// This may be used to include null fields in Patch requests.
893	NullFields []string `json:"-"`
894}
895
896func (s *GoogleCloudDialogflowCxV3ConversationTurn) MarshalJSON() ([]byte, error) {
897	type NoMethod GoogleCloudDialogflowCxV3ConversationTurn
898	raw := NoMethod(*s)
899	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
900}
901
902// GoogleCloudDialogflowCxV3ConversationTurnUserInput: The input from
903// the human user.
904type GoogleCloudDialogflowCxV3ConversationTurnUserInput struct {
905	// EnableSentimentAnalysis: Whether sentiment analysis is enabled.
906	EnableSentimentAnalysis bool `json:"enableSentimentAnalysis,omitempty"`
907
908	// InjectedParameters: Parameters that need to be injected into the
909	// conversation during intent detection.
910	InjectedParameters googleapi.RawMessage `json:"injectedParameters,omitempty"`
911
912	// Input: Supports text input, event input, dtmf input in the test case.
913	Input *GoogleCloudDialogflowCxV3QueryInput `json:"input,omitempty"`
914
915	// IsWebhookEnabled: If webhooks should be allowed to trigger in
916	// response to the user utterance. Often if parameters are injected,
917	// webhooks should not be enabled.
918	IsWebhookEnabled bool `json:"isWebhookEnabled,omitempty"`
919
920	// ForceSendFields is a list of field names (e.g.
921	// "EnableSentimentAnalysis") to unconditionally include in API
922	// requests. By default, fields with empty or default values are omitted
923	// from API requests. However, any non-pointer, non-interface field
924	// appearing in ForceSendFields will be sent to the server regardless of
925	// whether the field is empty or not. This may be used to include empty
926	// fields in Patch requests.
927	ForceSendFields []string `json:"-"`
928
929	// NullFields is a list of field names (e.g. "EnableSentimentAnalysis")
930	// to include in API requests with the JSON null value. By default,
931	// fields with empty values are omitted from API requests. However, any
932	// field with an empty value appearing in NullFields will be sent to the
933	// server as null. It is an error if a field in this list has a
934	// non-empty value. This may be used to include null fields in Patch
935	// requests.
936	NullFields []string `json:"-"`
937}
938
939func (s *GoogleCloudDialogflowCxV3ConversationTurnUserInput) MarshalJSON() ([]byte, error) {
940	type NoMethod GoogleCloudDialogflowCxV3ConversationTurnUserInput
941	raw := NoMethod(*s)
942	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
943}
944
945// GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput: The
946// output from the virtual agent.
947type GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput struct {
948	// CurrentPage: The Page on which the utterance was spoken. Only name
949	// and displayName will be set.
950	CurrentPage *GoogleCloudDialogflowCxV3Page `json:"currentPage,omitempty"`
951
952	// DiagnosticInfo: Required. Input only. The diagnostic info output for
953	// the turn.
954	DiagnosticInfo googleapi.RawMessage `json:"diagnosticInfo,omitempty"`
955
956	// Differences: Output only. If this is part of a result conversation
957	// turn, the list of differences between the original run and the replay
958	// for this output, if any.
959	Differences []*GoogleCloudDialogflowCxV3TestRunDifference `json:"differences,omitempty"`
960
961	// SessionParameters: The session parameters available to the bot at
962	// this point.
963	SessionParameters googleapi.RawMessage `json:"sessionParameters,omitempty"`
964
965	// Status: Response error from the agent in the test result. If set,
966	// other output is empty.
967	Status *GoogleRpcStatus `json:"status,omitempty"`
968
969	// TextResponses: The text responses from the agent for the turn.
970	TextResponses []*GoogleCloudDialogflowCxV3ResponseMessageText `json:"textResponses,omitempty"`
971
972	// TriggeredIntent: The Intent that triggered the response. Only name
973	// and displayName will be set.
974	TriggeredIntent *GoogleCloudDialogflowCxV3Intent `json:"triggeredIntent,omitempty"`
975
976	// ForceSendFields is a list of field names (e.g. "CurrentPage") to
977	// unconditionally include in API requests. By default, fields with
978	// empty or default values are omitted from API requests. However, any
979	// non-pointer, non-interface field appearing in ForceSendFields will be
980	// sent to the server regardless of whether the field is empty or not.
981	// This may be used to include empty fields in Patch requests.
982	ForceSendFields []string `json:"-"`
983
984	// NullFields is a list of field names (e.g. "CurrentPage") to include
985	// in API requests with the JSON null value. By default, fields with
986	// empty values are omitted from API requests. However, any field with
987	// an empty value appearing in NullFields will be sent to the server as
988	// null. It is an error if a field in this list has a non-empty value.
989	// This may be used to include null fields in Patch requests.
990	NullFields []string `json:"-"`
991}
992
993func (s *GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput) MarshalJSON() ([]byte, error) {
994	type NoMethod GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput
995	raw := NoMethod(*s)
996	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
997}
998
999// GoogleCloudDialogflowCxV3CreateDocumentOperationMetadata: Metadata
1000// for CreateDocument operation.
1001type GoogleCloudDialogflowCxV3CreateDocumentOperationMetadata struct {
1002	// GenericMetadata: The generic information of the operation.
1003	GenericMetadata *GoogleCloudDialogflowCxV3GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
1004
1005	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
1006	// unconditionally include in API requests. By default, fields with
1007	// empty or default values are omitted from API requests. However, any
1008	// non-pointer, non-interface field appearing in ForceSendFields will be
1009	// sent to the server regardless of whether the field is empty or not.
1010	// This may be used to include empty fields in Patch requests.
1011	ForceSendFields []string `json:"-"`
1012
1013	// NullFields is a list of field names (e.g. "GenericMetadata") to
1014	// include in API requests with the JSON null value. By default, fields
1015	// with empty values are omitted from API requests. However, any field
1016	// with an empty value appearing in NullFields will be sent to the
1017	// server as null. It is an error if a field in this list has a
1018	// non-empty value. This may be used to include null fields in Patch
1019	// requests.
1020	NullFields []string `json:"-"`
1021}
1022
1023func (s *GoogleCloudDialogflowCxV3CreateDocumentOperationMetadata) MarshalJSON() ([]byte, error) {
1024	type NoMethod GoogleCloudDialogflowCxV3CreateDocumentOperationMetadata
1025	raw := NoMethod(*s)
1026	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1027}
1028
1029// GoogleCloudDialogflowCxV3CreateVersionOperationMetadata: Metadata
1030// associated with the long running operation for
1031// Versions.CreateVersion.
1032type GoogleCloudDialogflowCxV3CreateVersionOperationMetadata struct {
1033	// Version: Name of the created version. Format:
1034	// `projects//locations//agents//flows//versions/`.
1035	Version string `json:"version,omitempty"`
1036
1037	// ForceSendFields is a list of field names (e.g. "Version") to
1038	// unconditionally include in API requests. By default, fields with
1039	// empty or default values are omitted from API requests. However, any
1040	// non-pointer, non-interface field appearing in ForceSendFields will be
1041	// sent to the server regardless of whether the field is empty or not.
1042	// This may be used to include empty fields in Patch requests.
1043	ForceSendFields []string `json:"-"`
1044
1045	// NullFields is a list of field names (e.g. "Version") to include in
1046	// API requests with the JSON null value. By default, fields with empty
1047	// values are omitted from API requests. However, any field with an
1048	// empty value appearing in NullFields will be sent to the server as
1049	// null. It is an error if a field in this list has a non-empty value.
1050	// This may be used to include null fields in Patch requests.
1051	NullFields []string `json:"-"`
1052}
1053
1054func (s *GoogleCloudDialogflowCxV3CreateVersionOperationMetadata) MarshalJSON() ([]byte, error) {
1055	type NoMethod GoogleCloudDialogflowCxV3CreateVersionOperationMetadata
1056	raw := NoMethod(*s)
1057	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1058}
1059
1060// GoogleCloudDialogflowCxV3DeleteDocumentOperationMetadata: Metadata
1061// for DeleteDocument operation.
1062type GoogleCloudDialogflowCxV3DeleteDocumentOperationMetadata struct {
1063	// GenericMetadata: The generic information of the operation.
1064	GenericMetadata *GoogleCloudDialogflowCxV3GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
1065
1066	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
1067	// unconditionally include in API requests. By default, fields with
1068	// empty or default values are omitted from API requests. However, any
1069	// non-pointer, non-interface field appearing in ForceSendFields will be
1070	// sent to the server regardless of whether the field is empty or not.
1071	// This may be used to include empty fields in Patch requests.
1072	ForceSendFields []string `json:"-"`
1073
1074	// NullFields is a list of field names (e.g. "GenericMetadata") to
1075	// include in API requests with the JSON null value. By default, fields
1076	// with empty values are omitted from API requests. However, any field
1077	// with an empty value appearing in NullFields will be sent to the
1078	// server as null. It is an error if a field in this list has a
1079	// non-empty value. This may be used to include null fields in Patch
1080	// requests.
1081	NullFields []string `json:"-"`
1082}
1083
1084func (s *GoogleCloudDialogflowCxV3DeleteDocumentOperationMetadata) MarshalJSON() ([]byte, error) {
1085	type NoMethod GoogleCloudDialogflowCxV3DeleteDocumentOperationMetadata
1086	raw := NoMethod(*s)
1087	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1088}
1089
1090// GoogleCloudDialogflowCxV3DetectIntentRequest: The request to detect
1091// user's intent.
1092type GoogleCloudDialogflowCxV3DetectIntentRequest struct {
1093	// OutputAudioConfig: Instructs the speech synthesizer how to generate
1094	// the output audio.
1095	OutputAudioConfig *GoogleCloudDialogflowCxV3OutputAudioConfig `json:"outputAudioConfig,omitempty"`
1096
1097	// QueryInput: Required. The input specification.
1098	QueryInput *GoogleCloudDialogflowCxV3QueryInput `json:"queryInput,omitempty"`
1099
1100	// QueryParams: The parameters of this query.
1101	QueryParams *GoogleCloudDialogflowCxV3QueryParameters `json:"queryParams,omitempty"`
1102
1103	// ForceSendFields is a list of field names (e.g. "OutputAudioConfig")
1104	// to unconditionally include in API requests. By default, fields with
1105	// empty or default values are omitted from API requests. However, any
1106	// non-pointer, non-interface field appearing in ForceSendFields will be
1107	// sent to the server regardless of whether the field is empty or not.
1108	// This may be used to include empty fields in Patch requests.
1109	ForceSendFields []string `json:"-"`
1110
1111	// NullFields is a list of field names (e.g. "OutputAudioConfig") to
1112	// include in API requests with the JSON null value. By default, fields
1113	// with empty values are omitted from API requests. However, any field
1114	// with an empty value appearing in NullFields will be sent to the
1115	// server as null. It is an error if a field in this list has a
1116	// non-empty value. This may be used to include null fields in Patch
1117	// requests.
1118	NullFields []string `json:"-"`
1119}
1120
1121func (s *GoogleCloudDialogflowCxV3DetectIntentRequest) MarshalJSON() ([]byte, error) {
1122	type NoMethod GoogleCloudDialogflowCxV3DetectIntentRequest
1123	raw := NoMethod(*s)
1124	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1125}
1126
1127// GoogleCloudDialogflowCxV3DetectIntentResponse: The message returned
1128// from the DetectIntent method.
1129type GoogleCloudDialogflowCxV3DetectIntentResponse struct {
1130	// AllowCancellation: Indicates whether the partial response can be
1131	// cancelled when a later response arrives. e.g. if the agent specified
1132	// some music as partial response, it can be cancelled.
1133	AllowCancellation bool `json:"allowCancellation,omitempty"`
1134
1135	// OutputAudio: The audio data bytes encoded as specified in the
1136	// request. Note: The output audio is generated based on the values of
1137	// default platform text responses found in the
1138	// `query_result.response_messages` field. If multiple default text
1139	// responses exist, they will be concatenated when generating audio. If
1140	// no default platform text responses exist, the generated audio content
1141	// will be empty. In some scenarios, multiple output audio fields may be
1142	// present in the response structure. In these cases, only the
1143	// top-most-level audio output has content.
1144	OutputAudio string `json:"outputAudio,omitempty"`
1145
1146	// OutputAudioConfig: The config used by the speech synthesizer to
1147	// generate the output audio.
1148	OutputAudioConfig *GoogleCloudDialogflowCxV3OutputAudioConfig `json:"outputAudioConfig,omitempty"`
1149
1150	// QueryResult: The result of the conversational query.
1151	QueryResult *GoogleCloudDialogflowCxV3QueryResult `json:"queryResult,omitempty"`
1152
1153	// ResponseId: Output only. The unique identifier of the response. It
1154	// can be used to locate a response in the training example set or for
1155	// reporting issues.
1156	ResponseId string `json:"responseId,omitempty"`
1157
1158	// ResponseType: Response type.
1159	//
1160	// Possible values:
1161	//   "RESPONSE_TYPE_UNSPECIFIED" - Not specified. This should never
1162	// happen.
1163	//   "PARTIAL" - Partial response. e.g. Aggregated responses in a
1164	// Fulfillment that enables `return_partial_response` can be returned as
1165	// partial response. WARNING: partial response is not eligible for
1166	// barge-in.
1167	//   "FINAL" - Final response.
1168	ResponseType string `json:"responseType,omitempty"`
1169
1170	// ServerResponse contains the HTTP response code and headers from the
1171	// server.
1172	googleapi.ServerResponse `json:"-"`
1173
1174	// ForceSendFields is a list of field names (e.g. "AllowCancellation")
1175	// to unconditionally include in API requests. By default, fields with
1176	// empty or default values are omitted from API requests. However, any
1177	// non-pointer, non-interface field appearing in ForceSendFields will be
1178	// sent to the server regardless of whether the field is empty or not.
1179	// This may be used to include empty fields in Patch requests.
1180	ForceSendFields []string `json:"-"`
1181
1182	// NullFields is a list of field names (e.g. "AllowCancellation") to
1183	// include in API requests with the JSON null value. By default, fields
1184	// with empty values are omitted from API requests. However, any field
1185	// with an empty value appearing in NullFields will be sent to the
1186	// server as null. It is an error if a field in this list has a
1187	// non-empty value. This may be used to include null fields in Patch
1188	// requests.
1189	NullFields []string `json:"-"`
1190}
1191
1192func (s *GoogleCloudDialogflowCxV3DetectIntentResponse) MarshalJSON() ([]byte, error) {
1193	type NoMethod GoogleCloudDialogflowCxV3DetectIntentResponse
1194	raw := NoMethod(*s)
1195	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1196}
1197
1198// GoogleCloudDialogflowCxV3DtmfInput: Represents the input for dtmf
1199// event.
1200type GoogleCloudDialogflowCxV3DtmfInput struct {
1201	// Digits: The dtmf digits.
1202	Digits string `json:"digits,omitempty"`
1203
1204	// FinishDigit: The finish digit (if any).
1205	FinishDigit string `json:"finishDigit,omitempty"`
1206
1207	// ForceSendFields is a list of field names (e.g. "Digits") to
1208	// unconditionally include in API requests. By default, fields with
1209	// empty or default values are omitted from API requests. However, any
1210	// non-pointer, non-interface field appearing in ForceSendFields will be
1211	// sent to the server regardless of whether the field is empty or not.
1212	// This may be used to include empty fields in Patch requests.
1213	ForceSendFields []string `json:"-"`
1214
1215	// NullFields is a list of field names (e.g. "Digits") to include in API
1216	// requests with the JSON null value. By default, fields with empty
1217	// values are omitted from API requests. However, any field with an
1218	// empty value appearing in NullFields will be sent to the server as
1219	// null. It is an error if a field in this list has a non-empty value.
1220	// This may be used to include null fields in Patch requests.
1221	NullFields []string `json:"-"`
1222}
1223
1224func (s *GoogleCloudDialogflowCxV3DtmfInput) MarshalJSON() ([]byte, error) {
1225	type NoMethod GoogleCloudDialogflowCxV3DtmfInput
1226	raw := NoMethod(*s)
1227	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1228}
1229
1230// GoogleCloudDialogflowCxV3EntityType: Entities are extracted from user
1231// input and represent parameters that are meaningful to your
1232// application. For example, a date range, a proper name such as a
1233// geographic location or landmark, and so on. Entities represent
1234// actionable data for your application. When you define an entity, you
1235// can also include synonyms that all map to that entity. For example,
1236// "soft drink", "soda", "pop", and so on. There are three types of
1237// entities: * **System** - entities that are defined by the Dialogflow
1238// API for common data types such as date, time, currency, and so on. A
1239// system entity is represented by the `EntityType` type. * **Custom** -
1240// entities that are defined by you that represent actionable data that
1241// is meaningful to your application. For example, you could define a
1242// `pizza.sauce` entity for red or white pizza sauce, a `pizza.cheese`
1243// entity for the different types of cheese on a pizza, a
1244// `pizza.topping` entity for different toppings, and so on. A custom
1245// entity is represented by the `EntityType` type. * **User** - entities
1246// that are built for an individual user such as favorites, preferences,
1247// playlists, and so on. A user entity is represented by the
1248// SessionEntityType type. For more information about entity types, see
1249// the Dialogflow documentation
1250// (https://cloud.google.com/dialogflow/docs/entities-overview).
1251type GoogleCloudDialogflowCxV3EntityType struct {
1252	// AutoExpansionMode: Indicates whether the entity type can be
1253	// automatically expanded.
1254	//
1255	// Possible values:
1256	//   "AUTO_EXPANSION_MODE_UNSPECIFIED" - Auto expansion disabled for the
1257	// entity.
1258	//   "AUTO_EXPANSION_MODE_DEFAULT" - Allows an agent to recognize values
1259	// that have not been explicitly listed in the entity.
1260	AutoExpansionMode string `json:"autoExpansionMode,omitempty"`
1261
1262	// DisplayName: Required. The human-readable name of the entity type,
1263	// unique within the agent.
1264	DisplayName string `json:"displayName,omitempty"`
1265
1266	// EnableFuzzyExtraction: Enables fuzzy entity extraction during
1267	// classification.
1268	EnableFuzzyExtraction bool `json:"enableFuzzyExtraction,omitempty"`
1269
1270	// Entities: The collection of entity entries associated with the entity
1271	// type.
1272	Entities []*GoogleCloudDialogflowCxV3EntityTypeEntity `json:"entities,omitempty"`
1273
1274	// ExcludedPhrases: Collection of exceptional words and phrases that
1275	// shouldn't be matched. For example, if you have a size entity type
1276	// with entry `giant`(an adjective), you might consider adding
1277	// `giants`(a noun) as an exclusion. If the kind of entity type is
1278	// `KIND_MAP`, then the phrases specified by entities and excluded
1279	// phrases should be mutually exclusive.
1280	ExcludedPhrases []*GoogleCloudDialogflowCxV3EntityTypeExcludedPhrase `json:"excludedPhrases,omitempty"`
1281
1282	// Kind: Required. Indicates the kind of entity type.
1283	//
1284	// Possible values:
1285	//   "KIND_UNSPECIFIED" - Not specified. This value should be never
1286	// used.
1287	//   "KIND_MAP" - Map entity types allow mapping of a group of synonyms
1288	// to a canonical value.
1289	//   "KIND_LIST" - List entity types contain a set of entries that do
1290	// not map to canonical values. However, list entity types can contain
1291	// references to other entity types (with or without aliases).
1292	//   "KIND_REGEXP" - Regexp entity types allow to specify regular
1293	// expressions in entries values.
1294	Kind string `json:"kind,omitempty"`
1295
1296	// Name: The unique identifier of the entity type. Required for
1297	// EntityTypes.UpdateEntityType. Format:
1298	// `projects//locations//agents//entityTypes/`.
1299	Name string `json:"name,omitempty"`
1300
1301	// Redact: Indicates whether parameters of the entity type should be
1302	// redacted in log. If redaction is enabled, page parameters and intent
1303	// parameters referring to the entity type will be replaced by parameter
1304	// name when logging.
1305	Redact bool `json:"redact,omitempty"`
1306
1307	// ServerResponse contains the HTTP response code and headers from the
1308	// server.
1309	googleapi.ServerResponse `json:"-"`
1310
1311	// ForceSendFields is a list of field names (e.g. "AutoExpansionMode")
1312	// to unconditionally include in API requests. By default, fields with
1313	// empty or default values are omitted from API requests. However, any
1314	// non-pointer, non-interface field appearing in ForceSendFields will be
1315	// sent to the server regardless of whether the field is empty or not.
1316	// This may be used to include empty fields in Patch requests.
1317	ForceSendFields []string `json:"-"`
1318
1319	// NullFields is a list of field names (e.g. "AutoExpansionMode") to
1320	// include in API requests with the JSON null value. By default, fields
1321	// with empty values are omitted from API requests. However, any field
1322	// with an empty value appearing in NullFields will be sent to the
1323	// server as null. It is an error if a field in this list has a
1324	// non-empty value. This may be used to include null fields in Patch
1325	// requests.
1326	NullFields []string `json:"-"`
1327}
1328
1329func (s *GoogleCloudDialogflowCxV3EntityType) MarshalJSON() ([]byte, error) {
1330	type NoMethod GoogleCloudDialogflowCxV3EntityType
1331	raw := NoMethod(*s)
1332	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1333}
1334
1335// GoogleCloudDialogflowCxV3EntityTypeEntity: An **entity entry** for an
1336// associated entity type.
1337type GoogleCloudDialogflowCxV3EntityTypeEntity struct {
1338	// Synonyms: Required. A collection of value synonyms. For example, if
1339	// the entity type is *vegetable*, and `value` is *scallions*, a synonym
1340	// could be *green onions*. For `KIND_LIST` entity types: * This
1341	// collection must contain exactly one synonym equal to `value`.
1342	Synonyms []string `json:"synonyms,omitempty"`
1343
1344	// Value: Required. The primary value associated with this entity entry.
1345	// For example, if the entity type is *vegetable*, the value could be
1346	// *scallions*. For `KIND_MAP` entity types: * A canonical value to be
1347	// used in place of synonyms. For `KIND_LIST` entity types: * A string
1348	// that can contain references to other entity types (with or without
1349	// aliases).
1350	Value string `json:"value,omitempty"`
1351
1352	// ForceSendFields is a list of field names (e.g. "Synonyms") to
1353	// unconditionally include in API requests. By default, fields with
1354	// empty or default values are omitted from API requests. However, any
1355	// non-pointer, non-interface field appearing in ForceSendFields will be
1356	// sent to the server regardless of whether the field is empty or not.
1357	// This may be used to include empty fields in Patch requests.
1358	ForceSendFields []string `json:"-"`
1359
1360	// NullFields is a list of field names (e.g. "Synonyms") to include in
1361	// API requests with the JSON null value. By default, fields with empty
1362	// values are omitted from API requests. However, any field with an
1363	// empty value appearing in NullFields will be sent to the server as
1364	// null. It is an error if a field in this list has a non-empty value.
1365	// This may be used to include null fields in Patch requests.
1366	NullFields []string `json:"-"`
1367}
1368
1369func (s *GoogleCloudDialogflowCxV3EntityTypeEntity) MarshalJSON() ([]byte, error) {
1370	type NoMethod GoogleCloudDialogflowCxV3EntityTypeEntity
1371	raw := NoMethod(*s)
1372	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1373}
1374
1375// GoogleCloudDialogflowCxV3EntityTypeExcludedPhrase: An excluded entity
1376// phrase that should not be matched.
1377type GoogleCloudDialogflowCxV3EntityTypeExcludedPhrase struct {
1378	// Value: Required. The word or phrase to be excluded.
1379	Value string `json:"value,omitempty"`
1380
1381	// ForceSendFields is a list of field names (e.g. "Value") to
1382	// unconditionally include in API requests. By default, fields with
1383	// empty or default values are omitted from API requests. However, any
1384	// non-pointer, non-interface field appearing in ForceSendFields will be
1385	// sent to the server regardless of whether the field is empty or not.
1386	// This may be used to include empty fields in Patch requests.
1387	ForceSendFields []string `json:"-"`
1388
1389	// NullFields is a list of field names (e.g. "Value") to include in API
1390	// requests with the JSON null value. By default, fields with empty
1391	// values are omitted from API requests. However, any field with an
1392	// empty value appearing in NullFields will be sent to the server as
1393	// null. It is an error if a field in this list has a non-empty value.
1394	// This may be used to include null fields in Patch requests.
1395	NullFields []string `json:"-"`
1396}
1397
1398func (s *GoogleCloudDialogflowCxV3EntityTypeExcludedPhrase) MarshalJSON() ([]byte, error) {
1399	type NoMethod GoogleCloudDialogflowCxV3EntityTypeExcludedPhrase
1400	raw := NoMethod(*s)
1401	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1402}
1403
1404// GoogleCloudDialogflowCxV3Environment: Represents an environment for
1405// an agent. You can create multiple versions of your agent and publish
1406// them to separate environments. When you edit an agent, you are
1407// editing the draft agent. At any point, you can save the draft agent
1408// as an agent version, which is an immutable snapshot of your agent.
1409// When you save the draft agent, it is published to the default
1410// environment. When you create agent versions, you can publish them to
1411// custom environments. You can create a variety of custom environments
1412// for testing, development, production, etc.
1413type GoogleCloudDialogflowCxV3Environment struct {
1414	// Description: The human-readable description of the environment. The
1415	// maximum length is 500 characters. If exceeded, the request is
1416	// rejected.
1417	Description string `json:"description,omitempty"`
1418
1419	// DisplayName: Required. The human-readable name of the environment
1420	// (unique in an agent). Limit of 64 characters.
1421	DisplayName string `json:"displayName,omitempty"`
1422
1423	// Name: The name of the environment. Format:
1424	// `projects//locations//agents//environments/`.
1425	Name string `json:"name,omitempty"`
1426
1427	// UpdateTime: Output only. Update time of this environment.
1428	UpdateTime string `json:"updateTime,omitempty"`
1429
1430	// VersionConfigs: Required. A list of configurations for flow versions.
1431	// You should include version configs for all flows that are reachable
1432	// from `Start Flow` in the agent. Otherwise, an error will be returned.
1433	VersionConfigs []*GoogleCloudDialogflowCxV3EnvironmentVersionConfig `json:"versionConfigs,omitempty"`
1434
1435	// ServerResponse contains the HTTP response code and headers from the
1436	// server.
1437	googleapi.ServerResponse `json:"-"`
1438
1439	// ForceSendFields is a list of field names (e.g. "Description") to
1440	// unconditionally include in API requests. By default, fields with
1441	// empty or default values are omitted from API requests. However, any
1442	// non-pointer, non-interface field appearing in ForceSendFields will be
1443	// sent to the server regardless of whether the field is empty or not.
1444	// This may be used to include empty fields in Patch requests.
1445	ForceSendFields []string `json:"-"`
1446
1447	// NullFields is a list of field names (e.g. "Description") to include
1448	// in API requests with the JSON null value. By default, fields with
1449	// empty values are omitted from API requests. However, any field with
1450	// an empty value appearing in NullFields will be sent to the server as
1451	// null. It is an error if a field in this list has a non-empty value.
1452	// This may be used to include null fields in Patch requests.
1453	NullFields []string `json:"-"`
1454}
1455
1456func (s *GoogleCloudDialogflowCxV3Environment) MarshalJSON() ([]byte, error) {
1457	type NoMethod GoogleCloudDialogflowCxV3Environment
1458	raw := NoMethod(*s)
1459	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1460}
1461
1462// GoogleCloudDialogflowCxV3EnvironmentVersionConfig: Configuration for
1463// the version.
1464type GoogleCloudDialogflowCxV3EnvironmentVersionConfig struct {
1465	// Version: Required. Format:
1466	// projects//locations//agents//flows//versions/.
1467	Version string `json:"version,omitempty"`
1468
1469	// ForceSendFields is a list of field names (e.g. "Version") to
1470	// unconditionally include in API requests. By default, fields with
1471	// empty or default values are omitted from API requests. However, any
1472	// non-pointer, non-interface field appearing in ForceSendFields will be
1473	// sent to the server regardless of whether the field is empty or not.
1474	// This may be used to include empty fields in Patch requests.
1475	ForceSendFields []string `json:"-"`
1476
1477	// NullFields is a list of field names (e.g. "Version") to include in
1478	// API requests with the JSON null value. By default, fields with empty
1479	// values are omitted from API requests. However, any field with an
1480	// empty value appearing in NullFields will be sent to the server as
1481	// null. It is an error if a field in this list has a non-empty value.
1482	// This may be used to include null fields in Patch requests.
1483	NullFields []string `json:"-"`
1484}
1485
1486func (s *GoogleCloudDialogflowCxV3EnvironmentVersionConfig) MarshalJSON() ([]byte, error) {
1487	type NoMethod GoogleCloudDialogflowCxV3EnvironmentVersionConfig
1488	raw := NoMethod(*s)
1489	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1490}
1491
1492// GoogleCloudDialogflowCxV3EventHandler: An event handler specifies an
1493// event that can be handled during a session. When the specified event
1494// happens, the following actions are taken in order: * If there is a
1495// `trigger_fulfillment` associated with the event, it will be called. *
1496// If there is a `target_page` associated with the event, the session
1497// will transition into the specified page. * If there is a
1498// `target_flow` associated with the event, the session will transition
1499// into the specified flow.
1500type GoogleCloudDialogflowCxV3EventHandler struct {
1501	// Event: Required. The name of the event to handle.
1502	Event string `json:"event,omitempty"`
1503
1504	// Name: Output only. The unique identifier of this event handler.
1505	Name string `json:"name,omitempty"`
1506
1507	// TargetFlow: The target flow to transition to. Format:
1508	// `projects//locations//agents//flows/`.
1509	TargetFlow string `json:"targetFlow,omitempty"`
1510
1511	// TargetPage: The target page to transition to. Format:
1512	// `projects//locations//agents//flows//pages/`.
1513	TargetPage string `json:"targetPage,omitempty"`
1514
1515	// TriggerFulfillment: The fulfillment to call when the event occurs.
1516	// Handling webhook errors with a fulfillment enabled with webhook could
1517	// cause infinite loop. It is invalid to specify such fulfillment for a
1518	// handler handling webhooks.
1519	TriggerFulfillment *GoogleCloudDialogflowCxV3Fulfillment `json:"triggerFulfillment,omitempty"`
1520
1521	// ForceSendFields is a list of field names (e.g. "Event") to
1522	// unconditionally include in API requests. By default, fields with
1523	// empty or default values are omitted from API requests. However, any
1524	// non-pointer, non-interface field appearing in ForceSendFields will be
1525	// sent to the server regardless of whether the field is empty or not.
1526	// This may be used to include empty fields in Patch requests.
1527	ForceSendFields []string `json:"-"`
1528
1529	// NullFields is a list of field names (e.g. "Event") to include in API
1530	// requests with the JSON null value. By default, fields with empty
1531	// values are omitted from API requests. However, any field with an
1532	// empty value appearing in NullFields will be sent to the server as
1533	// null. It is an error if a field in this list has a non-empty value.
1534	// This may be used to include null fields in Patch requests.
1535	NullFields []string `json:"-"`
1536}
1537
1538func (s *GoogleCloudDialogflowCxV3EventHandler) MarshalJSON() ([]byte, error) {
1539	type NoMethod GoogleCloudDialogflowCxV3EventHandler
1540	raw := NoMethod(*s)
1541	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1542}
1543
1544// GoogleCloudDialogflowCxV3EventInput: Represents the event to trigger.
1545type GoogleCloudDialogflowCxV3EventInput struct {
1546	// Event: Name of the event.
1547	Event string `json:"event,omitempty"`
1548
1549	// ForceSendFields is a list of field names (e.g. "Event") to
1550	// unconditionally include in API requests. By default, fields with
1551	// empty or default values are omitted from API requests. However, any
1552	// non-pointer, non-interface field appearing in ForceSendFields will be
1553	// sent to the server regardless of whether the field is empty or not.
1554	// This may be used to include empty fields in Patch requests.
1555	ForceSendFields []string `json:"-"`
1556
1557	// NullFields is a list of field names (e.g. "Event") to include in API
1558	// requests with the JSON null value. By default, fields with empty
1559	// values are omitted from API requests. However, any field with an
1560	// empty value appearing in NullFields will be sent to the server as
1561	// null. It is an error if a field in this list has a non-empty value.
1562	// This may be used to include null fields in Patch requests.
1563	NullFields []string `json:"-"`
1564}
1565
1566func (s *GoogleCloudDialogflowCxV3EventInput) MarshalJSON() ([]byte, error) {
1567	type NoMethod GoogleCloudDialogflowCxV3EventInput
1568	raw := NoMethod(*s)
1569	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1570}
1571
1572// GoogleCloudDialogflowCxV3Experiment: Represents an experiment in an
1573// environment.
1574type GoogleCloudDialogflowCxV3Experiment struct {
1575	// CreateTime: Creation time of this experiment.
1576	CreateTime string `json:"createTime,omitempty"`
1577
1578	// Definition: The definition of the experiment.
1579	Definition *GoogleCloudDialogflowCxV3ExperimentDefinition `json:"definition,omitempty"`
1580
1581	// Description: The human-readable description of the experiment.
1582	Description string `json:"description,omitempty"`
1583
1584	// DisplayName: Required. The human-readable name of the experiment
1585	// (unique in an environment). Limit of 64 characters.
1586	DisplayName string `json:"displayName,omitempty"`
1587
1588	// EndTime: End time of this experiment.
1589	EndTime string `json:"endTime,omitempty"`
1590
1591	// ExperimentLength: Maximum number of days to run the
1592	// experiment/rollout. If auto-rollout is not enabled, default value and
1593	// maximum will be 30 days. If auto-rollout is enabled, default value
1594	// and maximum will be 6 days.
1595	ExperimentLength string `json:"experimentLength,omitempty"`
1596
1597	// LastUpdateTime: Last update time of this experiment.
1598	LastUpdateTime string `json:"lastUpdateTime,omitempty"`
1599
1600	// Name: The name of the experiment. Format:
1601	// projects//locations//agents//environments//experiments/..
1602	Name string `json:"name,omitempty"`
1603
1604	// Result: Inference result of the experiment.
1605	Result *GoogleCloudDialogflowCxV3ExperimentResult `json:"result,omitempty"`
1606
1607	// RolloutConfig: The configuration for auto rollout. If set, there
1608	// should be exactly two variants in the experiment (control variant
1609	// being the default version of the flow), the traffic allocation for
1610	// the non-control variant will gradually increase to 100% when
1611	// conditions are met, and eventually replace the control variant to
1612	// become the default version of the flow.
1613	RolloutConfig *GoogleCloudDialogflowCxV3RolloutConfig `json:"rolloutConfig,omitempty"`
1614
1615	// RolloutFailureReason: The reason why rollout has failed. Should only
1616	// be set when state is ROLLOUT_FAILED.
1617	RolloutFailureReason string `json:"rolloutFailureReason,omitempty"`
1618
1619	// RolloutState: State of the auto rollout process.
1620	RolloutState *GoogleCloudDialogflowCxV3RolloutState `json:"rolloutState,omitempty"`
1621
1622	// StartTime: Start time of this experiment.
1623	StartTime string `json:"startTime,omitempty"`
1624
1625	// State: The current state of the experiment. Transition triggered by
1626	// Experiments.StartExperiment: DRAFT->RUNNING. Transition triggered by
1627	// Experiments.CancelExperiment: DRAFT->DONE or RUNNING->DONE.
1628	//
1629	// Possible values:
1630	//   "STATE_UNSPECIFIED" - State unspecified.
1631	//   "DRAFT" - The experiment is created but not started yet.
1632	//   "RUNNING" - The experiment is running.
1633	//   "DONE" - The experiment is done.
1634	//   "ROLLOUT_FAILED" - The experiment with auto-rollout enabled has
1635	// failed.
1636	State string `json:"state,omitempty"`
1637
1638	// VariantsHistory: The history of updates to the experiment variants.
1639	VariantsHistory []*GoogleCloudDialogflowCxV3VariantsHistory `json:"variantsHistory,omitempty"`
1640
1641	// ServerResponse contains the HTTP response code and headers from the
1642	// server.
1643	googleapi.ServerResponse `json:"-"`
1644
1645	// ForceSendFields is a list of field names (e.g. "CreateTime") to
1646	// unconditionally include in API requests. By default, fields with
1647	// empty or default values are omitted from API requests. However, any
1648	// non-pointer, non-interface field appearing in ForceSendFields will be
1649	// sent to the server regardless of whether the field is empty or not.
1650	// This may be used to include empty fields in Patch requests.
1651	ForceSendFields []string `json:"-"`
1652
1653	// NullFields is a list of field names (e.g. "CreateTime") to include in
1654	// API requests with the JSON null value. By default, fields with empty
1655	// values are omitted from API requests. However, any field with an
1656	// empty value appearing in NullFields will be sent to the server as
1657	// null. It is an error if a field in this list has a non-empty value.
1658	// This may be used to include null fields in Patch requests.
1659	NullFields []string `json:"-"`
1660}
1661
1662func (s *GoogleCloudDialogflowCxV3Experiment) MarshalJSON() ([]byte, error) {
1663	type NoMethod GoogleCloudDialogflowCxV3Experiment
1664	raw := NoMethod(*s)
1665	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1666}
1667
1668// GoogleCloudDialogflowCxV3ExperimentDefinition: Definition of the
1669// experiment.
1670type GoogleCloudDialogflowCxV3ExperimentDefinition struct {
1671	// Condition: The condition defines which subset of sessions are
1672	// selected for this experiment. If not specified, all sessions are
1673	// eligible. E.g. "query_input.language_code=en" See the conditions
1674	// reference
1675	// (https://cloud.google.com/dialogflow/cx/docs/reference/condition).
1676	Condition string `json:"condition,omitempty"`
1677
1678	// VersionVariants: The flow versions as the variants of this
1679	// experiment.
1680	VersionVariants *GoogleCloudDialogflowCxV3VersionVariants `json:"versionVariants,omitempty"`
1681
1682	// ForceSendFields is a list of field names (e.g. "Condition") to
1683	// unconditionally include in API requests. By default, fields with
1684	// empty or default values are omitted from API requests. However, any
1685	// non-pointer, non-interface field appearing in ForceSendFields will be
1686	// sent to the server regardless of whether the field is empty or not.
1687	// This may be used to include empty fields in Patch requests.
1688	ForceSendFields []string `json:"-"`
1689
1690	// NullFields is a list of field names (e.g. "Condition") to include in
1691	// API requests with the JSON null value. By default, fields with empty
1692	// values are omitted from API requests. However, any field with an
1693	// empty value appearing in NullFields will be sent to the server as
1694	// null. It is an error if a field in this list has a non-empty value.
1695	// This may be used to include null fields in Patch requests.
1696	NullFields []string `json:"-"`
1697}
1698
1699func (s *GoogleCloudDialogflowCxV3ExperimentDefinition) MarshalJSON() ([]byte, error) {
1700	type NoMethod GoogleCloudDialogflowCxV3ExperimentDefinition
1701	raw := NoMethod(*s)
1702	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1703}
1704
1705// GoogleCloudDialogflowCxV3ExperimentResult: The inference result which
1706// includes an objective metric to optimize and the confidence interval.
1707type GoogleCloudDialogflowCxV3ExperimentResult struct {
1708	// LastUpdateTime: The last time the experiment's stats data was
1709	// updated. Will have default value if stats have never been computed
1710	// for this experiment.
1711	LastUpdateTime string `json:"lastUpdateTime,omitempty"`
1712
1713	// VersionMetrics: Version variants and metrics.
1714	VersionMetrics []*GoogleCloudDialogflowCxV3ExperimentResultVersionMetrics `json:"versionMetrics,omitempty"`
1715
1716	// ForceSendFields is a list of field names (e.g. "LastUpdateTime") to
1717	// unconditionally include in API requests. By default, fields with
1718	// empty or default values are omitted from API requests. However, any
1719	// non-pointer, non-interface field appearing in ForceSendFields will be
1720	// sent to the server regardless of whether the field is empty or not.
1721	// This may be used to include empty fields in Patch requests.
1722	ForceSendFields []string `json:"-"`
1723
1724	// NullFields is a list of field names (e.g. "LastUpdateTime") to
1725	// include in API requests with the JSON null value. By default, fields
1726	// with empty values are omitted from API requests. However, any field
1727	// with an empty value appearing in NullFields will be sent to the
1728	// server as null. It is an error if a field in this list has a
1729	// non-empty value. This may be used to include null fields in Patch
1730	// requests.
1731	NullFields []string `json:"-"`
1732}
1733
1734func (s *GoogleCloudDialogflowCxV3ExperimentResult) MarshalJSON() ([]byte, error) {
1735	type NoMethod GoogleCloudDialogflowCxV3ExperimentResult
1736	raw := NoMethod(*s)
1737	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1738}
1739
1740// GoogleCloudDialogflowCxV3ExperimentResultConfidenceInterval: A
1741// confidence interval is a range of possible values for the experiment
1742// objective you are trying to measure.
1743type GoogleCloudDialogflowCxV3ExperimentResultConfidenceInterval struct {
1744	// ConfidenceLevel: The confidence level used to construct the interval,
1745	// i.e. there is X% chance that the true value is within this interval.
1746	ConfidenceLevel float64 `json:"confidenceLevel,omitempty"`
1747
1748	// LowerBound: Lower bound of the interval.
1749	LowerBound float64 `json:"lowerBound,omitempty"`
1750
1751	// Ratio: The percent change between an experiment metric's value and
1752	// the value for its control.
1753	Ratio float64 `json:"ratio,omitempty"`
1754
1755	// UpperBound: Upper bound of the interval.
1756	UpperBound float64 `json:"upperBound,omitempty"`
1757
1758	// ForceSendFields is a list of field names (e.g. "ConfidenceLevel") to
1759	// unconditionally include in API requests. By default, fields with
1760	// empty or default values are omitted from API requests. However, any
1761	// non-pointer, non-interface field appearing in ForceSendFields will be
1762	// sent to the server regardless of whether the field is empty or not.
1763	// This may be used to include empty fields in Patch requests.
1764	ForceSendFields []string `json:"-"`
1765
1766	// NullFields is a list of field names (e.g. "ConfidenceLevel") to
1767	// include in API requests with the JSON null value. By default, fields
1768	// with empty values are omitted from API requests. However, any field
1769	// with an empty value appearing in NullFields will be sent to the
1770	// server as null. It is an error if a field in this list has a
1771	// non-empty value. This may be used to include null fields in Patch
1772	// requests.
1773	NullFields []string `json:"-"`
1774}
1775
1776func (s *GoogleCloudDialogflowCxV3ExperimentResultConfidenceInterval) MarshalJSON() ([]byte, error) {
1777	type NoMethod GoogleCloudDialogflowCxV3ExperimentResultConfidenceInterval
1778	raw := NoMethod(*s)
1779	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1780}
1781
1782func (s *GoogleCloudDialogflowCxV3ExperimentResultConfidenceInterval) UnmarshalJSON(data []byte) error {
1783	type NoMethod GoogleCloudDialogflowCxV3ExperimentResultConfidenceInterval
1784	var s1 struct {
1785		ConfidenceLevel gensupport.JSONFloat64 `json:"confidenceLevel"`
1786		LowerBound      gensupport.JSONFloat64 `json:"lowerBound"`
1787		Ratio           gensupport.JSONFloat64 `json:"ratio"`
1788		UpperBound      gensupport.JSONFloat64 `json:"upperBound"`
1789		*NoMethod
1790	}
1791	s1.NoMethod = (*NoMethod)(s)
1792	if err := json.Unmarshal(data, &s1); err != nil {
1793		return err
1794	}
1795	s.ConfidenceLevel = float64(s1.ConfidenceLevel)
1796	s.LowerBound = float64(s1.LowerBound)
1797	s.Ratio = float64(s1.Ratio)
1798	s.UpperBound = float64(s1.UpperBound)
1799	return nil
1800}
1801
1802// GoogleCloudDialogflowCxV3ExperimentResultMetric: Metric and
1803// corresponding confidence intervals.
1804type GoogleCloudDialogflowCxV3ExperimentResultMetric struct {
1805	// ConfidenceInterval: The probability that the treatment is better than
1806	// all other treatments in the experiment
1807	ConfidenceInterval *GoogleCloudDialogflowCxV3ExperimentResultConfidenceInterval `json:"confidenceInterval,omitempty"`
1808
1809	// Count: Count value of a metric.
1810	Count float64 `json:"count,omitempty"`
1811
1812	// CountType: Count-based metric type. Only one of type or count_type is
1813	// specified in each Metric.
1814	//
1815	// Possible values:
1816	//   "COUNT_TYPE_UNSPECIFIED" - Count type unspecified.
1817	//   "TOTAL_NO_MATCH_COUNT" - Total number of occurrences of a
1818	// 'NO_MATCH'.
1819	//   "TOTAL_TURN_COUNT" - Total number of turn counts.
1820	//   "AVERAGE_TURN_COUNT" - Average turn count in a session.
1821	CountType string `json:"countType,omitempty"`
1822
1823	// Ratio: Ratio value of a metric.
1824	Ratio float64 `json:"ratio,omitempty"`
1825
1826	// Type: Ratio-based metric type. Only one of type or count_type is
1827	// specified in each Metric.
1828	//
1829	// Possible values:
1830	//   "METRIC_UNSPECIFIED" - Metric unspecified.
1831	//   "CONTAINED_SESSION_NO_CALLBACK_RATE" - Percentage of contained
1832	// sessions without user calling back in 24 hours.
1833	//   "LIVE_AGENT_HANDOFF_RATE" - Percentage of sessions that were handed
1834	// to a human agent.
1835	//   "CALLBACK_SESSION_RATE" - Percentage of sessions with the same user
1836	// calling back.
1837	//   "ABANDONED_SESSION_RATE" - Percentage of sessions where user hung
1838	// up.
1839	//   "SESSION_END_RATE" - Percentage of sessions reached Dialogflow
1840	// 'END_PAGE' or 'END_SESSION'.
1841	Type string `json:"type,omitempty"`
1842
1843	// ForceSendFields is a list of field names (e.g. "ConfidenceInterval")
1844	// to unconditionally include in API requests. By default, fields with
1845	// empty or default values are omitted from API requests. However, any
1846	// non-pointer, non-interface field appearing in ForceSendFields will be
1847	// sent to the server regardless of whether the field is empty or not.
1848	// This may be used to include empty fields in Patch requests.
1849	ForceSendFields []string `json:"-"`
1850
1851	// NullFields is a list of field names (e.g. "ConfidenceInterval") to
1852	// include in API requests with the JSON null value. By default, fields
1853	// with empty values are omitted from API requests. However, any field
1854	// with an empty value appearing in NullFields will be sent to the
1855	// server as null. It is an error if a field in this list has a
1856	// non-empty value. This may be used to include null fields in Patch
1857	// requests.
1858	NullFields []string `json:"-"`
1859}
1860
1861func (s *GoogleCloudDialogflowCxV3ExperimentResultMetric) MarshalJSON() ([]byte, error) {
1862	type NoMethod GoogleCloudDialogflowCxV3ExperimentResultMetric
1863	raw := NoMethod(*s)
1864	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1865}
1866
1867func (s *GoogleCloudDialogflowCxV3ExperimentResultMetric) UnmarshalJSON(data []byte) error {
1868	type NoMethod GoogleCloudDialogflowCxV3ExperimentResultMetric
1869	var s1 struct {
1870		Count gensupport.JSONFloat64 `json:"count"`
1871		Ratio gensupport.JSONFloat64 `json:"ratio"`
1872		*NoMethod
1873	}
1874	s1.NoMethod = (*NoMethod)(s)
1875	if err := json.Unmarshal(data, &s1); err != nil {
1876		return err
1877	}
1878	s.Count = float64(s1.Count)
1879	s.Ratio = float64(s1.Ratio)
1880	return nil
1881}
1882
1883// GoogleCloudDialogflowCxV3ExperimentResultVersionMetrics: Version
1884// variant and associated metrics.
1885type GoogleCloudDialogflowCxV3ExperimentResultVersionMetrics struct {
1886	// Metrics: The metrics and corresponding confidence intervals in the
1887	// inference result.
1888	Metrics []*GoogleCloudDialogflowCxV3ExperimentResultMetric `json:"metrics,omitempty"`
1889
1890	// SessionCount: Number of sessions that were allocated to this version.
1891	SessionCount int64 `json:"sessionCount,omitempty"`
1892
1893	// Version: The name of the flow Version. Format:
1894	// `projects//locations//agents//flows//versions/`.
1895	Version string `json:"version,omitempty"`
1896
1897	// ForceSendFields is a list of field names (e.g. "Metrics") to
1898	// unconditionally include in API requests. By default, fields with
1899	// empty or default values are omitted from API requests. However, any
1900	// non-pointer, non-interface field appearing in ForceSendFields will be
1901	// sent to the server regardless of whether the field is empty or not.
1902	// This may be used to include empty fields in Patch requests.
1903	ForceSendFields []string `json:"-"`
1904
1905	// NullFields is a list of field names (e.g. "Metrics") to include in
1906	// API requests with the JSON null value. By default, fields with empty
1907	// values are omitted from API requests. However, any field with an
1908	// empty value appearing in NullFields will be sent to the server as
1909	// null. It is an error if a field in this list has a non-empty value.
1910	// This may be used to include null fields in Patch requests.
1911	NullFields []string `json:"-"`
1912}
1913
1914func (s *GoogleCloudDialogflowCxV3ExperimentResultVersionMetrics) MarshalJSON() ([]byte, error) {
1915	type NoMethod GoogleCloudDialogflowCxV3ExperimentResultVersionMetrics
1916	raw := NoMethod(*s)
1917	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1918}
1919
1920// GoogleCloudDialogflowCxV3ExportAgentRequest: The request message for
1921// Agents.ExportAgent.
1922type GoogleCloudDialogflowCxV3ExportAgentRequest struct {
1923	// AgentUri: Optional. The Google Cloud Storage
1924	// (https://cloud.google.com/storage/docs/) URI to export the agent to.
1925	// The format of this URI must be `gs:///`. If left unspecified, the
1926	// serialized agent is returned inline.
1927	AgentUri string `json:"agentUri,omitempty"`
1928
1929	// Environment: Optional. Environment name. If not set, draft
1930	// environment is assumed. Format:
1931	// `projects//locations//agents//environments/`.
1932	Environment string `json:"environment,omitempty"`
1933
1934	// ForceSendFields is a list of field names (e.g. "AgentUri") to
1935	// unconditionally include in API requests. By default, fields with
1936	// empty or default values are omitted from API requests. However, any
1937	// non-pointer, non-interface field appearing in ForceSendFields will be
1938	// sent to the server regardless of whether the field is empty or not.
1939	// This may be used to include empty fields in Patch requests.
1940	ForceSendFields []string `json:"-"`
1941
1942	// NullFields is a list of field names (e.g. "AgentUri") to include in
1943	// API requests with the JSON null value. By default, fields with empty
1944	// values are omitted from API requests. However, any field with an
1945	// empty value appearing in NullFields will be sent to the server as
1946	// null. It is an error if a field in this list has a non-empty value.
1947	// This may be used to include null fields in Patch requests.
1948	NullFields []string `json:"-"`
1949}
1950
1951func (s *GoogleCloudDialogflowCxV3ExportAgentRequest) MarshalJSON() ([]byte, error) {
1952	type NoMethod GoogleCloudDialogflowCxV3ExportAgentRequest
1953	raw := NoMethod(*s)
1954	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1955}
1956
1957// GoogleCloudDialogflowCxV3ExportAgentResponse: The response message
1958// for Agents.ExportAgent.
1959type GoogleCloudDialogflowCxV3ExportAgentResponse struct {
1960	// AgentContent: Uncompressed raw byte content for agent.
1961	AgentContent string `json:"agentContent,omitempty"`
1962
1963	// AgentUri: The URI to a file containing the exported agent. This field
1964	// is populated only if `agent_uri` is specified in ExportAgentRequest.
1965	AgentUri string `json:"agentUri,omitempty"`
1966
1967	// ForceSendFields is a list of field names (e.g. "AgentContent") to
1968	// unconditionally include in API requests. By default, fields with
1969	// empty or default values are omitted from API requests. However, any
1970	// non-pointer, non-interface field appearing in ForceSendFields will be
1971	// sent to the server regardless of whether the field is empty or not.
1972	// This may be used to include empty fields in Patch requests.
1973	ForceSendFields []string `json:"-"`
1974
1975	// NullFields is a list of field names (e.g. "AgentContent") to include
1976	// in API requests with the JSON null value. By default, fields with
1977	// empty values are omitted from API requests. However, any field with
1978	// an empty value appearing in NullFields will be sent to the server as
1979	// null. It is an error if a field in this list has a non-empty value.
1980	// This may be used to include null fields in Patch requests.
1981	NullFields []string `json:"-"`
1982}
1983
1984func (s *GoogleCloudDialogflowCxV3ExportAgentResponse) MarshalJSON() ([]byte, error) {
1985	type NoMethod GoogleCloudDialogflowCxV3ExportAgentResponse
1986	raw := NoMethod(*s)
1987	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1988}
1989
1990// GoogleCloudDialogflowCxV3ExportFlowRequest: The request message for
1991// Flows.ExportFlow.
1992type GoogleCloudDialogflowCxV3ExportFlowRequest struct {
1993	// FlowUri: Optional. The Google Cloud Storage
1994	// (https://cloud.google.com/storage/docs/) URI to export the flow to.
1995	// The format of this URI must be `gs:///`. If left unspecified, the
1996	// serialized flow is returned inline.
1997	FlowUri string `json:"flowUri,omitempty"`
1998
1999	// IncludeReferencedFlows: Optional. Whether to export flows referenced
2000	// by the specified flow.
2001	IncludeReferencedFlows bool `json:"includeReferencedFlows,omitempty"`
2002
2003	// ForceSendFields is a list of field names (e.g. "FlowUri") to
2004	// unconditionally include in API requests. By default, fields with
2005	// empty or default values are omitted from API requests. However, any
2006	// non-pointer, non-interface field appearing in ForceSendFields will be
2007	// sent to the server regardless of whether the field is empty or not.
2008	// This may be used to include empty fields in Patch requests.
2009	ForceSendFields []string `json:"-"`
2010
2011	// NullFields is a list of field names (e.g. "FlowUri") to include in
2012	// API requests with the JSON null value. By default, fields with empty
2013	// values are omitted from API requests. However, any field with an
2014	// empty value appearing in NullFields will be sent to the server as
2015	// null. It is an error if a field in this list has a non-empty value.
2016	// This may be used to include null fields in Patch requests.
2017	NullFields []string `json:"-"`
2018}
2019
2020func (s *GoogleCloudDialogflowCxV3ExportFlowRequest) MarshalJSON() ([]byte, error) {
2021	type NoMethod GoogleCloudDialogflowCxV3ExportFlowRequest
2022	raw := NoMethod(*s)
2023	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2024}
2025
2026// GoogleCloudDialogflowCxV3ExportFlowResponse: The response message for
2027// Flows.ExportFlow.
2028type GoogleCloudDialogflowCxV3ExportFlowResponse struct {
2029	// FlowContent: Uncompressed raw byte content for flow.
2030	FlowContent string `json:"flowContent,omitempty"`
2031
2032	// FlowUri: The URI to a file containing the exported flow. This field
2033	// is populated only if `flow_uri` is specified in ExportFlowRequest.
2034	FlowUri string `json:"flowUri,omitempty"`
2035
2036	// ForceSendFields is a list of field names (e.g. "FlowContent") to
2037	// unconditionally include in API requests. By default, fields with
2038	// empty or default values are omitted from API requests. However, any
2039	// non-pointer, non-interface field appearing in ForceSendFields will be
2040	// sent to the server regardless of whether the field is empty or not.
2041	// This may be used to include empty fields in Patch requests.
2042	ForceSendFields []string `json:"-"`
2043
2044	// NullFields is a list of field names (e.g. "FlowContent") to include
2045	// in API requests with the JSON null value. By default, fields with
2046	// empty values are omitted from API requests. However, any field with
2047	// an empty value appearing in NullFields will be sent to the server as
2048	// null. It is an error if a field in this list has a non-empty value.
2049	// This may be used to include null fields in Patch requests.
2050	NullFields []string `json:"-"`
2051}
2052
2053func (s *GoogleCloudDialogflowCxV3ExportFlowResponse) MarshalJSON() ([]byte, error) {
2054	type NoMethod GoogleCloudDialogflowCxV3ExportFlowResponse
2055	raw := NoMethod(*s)
2056	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2057}
2058
2059// GoogleCloudDialogflowCxV3ExportTestCasesMetadata: Metadata returned
2060// for the TestCases.ExportTestCases long running operation.
2061type GoogleCloudDialogflowCxV3ExportTestCasesMetadata struct {
2062}
2063
2064// GoogleCloudDialogflowCxV3ExportTestCasesRequest: The request message
2065// for TestCases.ExportTestCases.
2066type GoogleCloudDialogflowCxV3ExportTestCasesRequest struct {
2067	// DataFormat: The data format of the exported test cases. If not
2068	// specified, `BLOB` is assumed.
2069	//
2070	// Possible values:
2071	//   "DATA_FORMAT_UNSPECIFIED" - Unspecified format.
2072	//   "BLOB" - Raw bytes.
2073	//   "JSON" - JSON format.
2074	DataFormat string `json:"dataFormat,omitempty"`
2075
2076	// Filter: The filter expression used to filter exported test cases, see
2077	// API Filtering (https://aip.dev/160). The expression is case
2078	// insensitive and supports the following syntax: name = [OR name = ]
2079	// ... For example: * "name = t1 OR name = t2" matches the test case
2080	// with the exact resource name "t1" or "t2".
2081	Filter string `json:"filter,omitempty"`
2082
2083	// GcsUri: The Google Cloud Storage
2084	// (https://cloud.google.com/storage/docs/) URI to export the test cases
2085	// to. The format of this URI must be `gs:///`. If unspecified, the
2086	// serialized test cases is returned inline.
2087	GcsUri string `json:"gcsUri,omitempty"`
2088
2089	// ForceSendFields is a list of field names (e.g. "DataFormat") to
2090	// unconditionally include in API requests. By default, fields with
2091	// empty or default values are omitted from API requests. However, any
2092	// non-pointer, non-interface field appearing in ForceSendFields will be
2093	// sent to the server regardless of whether the field is empty or not.
2094	// This may be used to include empty fields in Patch requests.
2095	ForceSendFields []string `json:"-"`
2096
2097	// NullFields is a list of field names (e.g. "DataFormat") to include in
2098	// API requests with the JSON null value. By default, fields with empty
2099	// values are omitted from API requests. However, any field with an
2100	// empty value appearing in NullFields will be sent to the server as
2101	// null. It is an error if a field in this list has a non-empty value.
2102	// This may be used to include null fields in Patch requests.
2103	NullFields []string `json:"-"`
2104}
2105
2106func (s *GoogleCloudDialogflowCxV3ExportTestCasesRequest) MarshalJSON() ([]byte, error) {
2107	type NoMethod GoogleCloudDialogflowCxV3ExportTestCasesRequest
2108	raw := NoMethod(*s)
2109	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2110}
2111
2112// GoogleCloudDialogflowCxV3ExportTestCasesResponse: The response
2113// message for TestCases.ExportTestCases.
2114type GoogleCloudDialogflowCxV3ExportTestCasesResponse struct {
2115	// Content: Uncompressed raw byte content for test cases.
2116	Content string `json:"content,omitempty"`
2117
2118	// GcsUri: The URI to a file containing the exported test cases. This
2119	// field is populated only if `gcs_uri` is specified in
2120	// ExportTestCasesRequest.
2121	GcsUri string `json:"gcsUri,omitempty"`
2122
2123	// ForceSendFields is a list of field names (e.g. "Content") to
2124	// unconditionally include in API requests. By default, fields with
2125	// empty or default values are omitted from API requests. However, any
2126	// non-pointer, non-interface field appearing in ForceSendFields will be
2127	// sent to the server regardless of whether the field is empty or not.
2128	// This may be used to include empty fields in Patch requests.
2129	ForceSendFields []string `json:"-"`
2130
2131	// NullFields is a list of field names (e.g. "Content") to include in
2132	// API requests with the JSON null value. By default, fields with empty
2133	// values are omitted from API requests. However, any field with an
2134	// empty value appearing in NullFields will be sent to the server as
2135	// null. It is an error if a field in this list has a non-empty value.
2136	// This may be used to include null fields in Patch requests.
2137	NullFields []string `json:"-"`
2138}
2139
2140func (s *GoogleCloudDialogflowCxV3ExportTestCasesResponse) MarshalJSON() ([]byte, error) {
2141	type NoMethod GoogleCloudDialogflowCxV3ExportTestCasesResponse
2142	raw := NoMethod(*s)
2143	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2144}
2145
2146// GoogleCloudDialogflowCxV3Flow: Flows represents the conversation
2147// flows when you build your chatbot agent. A flow consists of many
2148// pages connected by the transition routes. Conversations always start
2149// with the built-in Start Flow (with an all-0 ID). Transition routes
2150// can direct the conversation session from the current flow (parent
2151// flow) to another flow (sub flow). When the sub flow is finished,
2152// Dialogflow will bring the session back to the parent flow, where the
2153// sub flow is started. Usually, when a transition route is followed by
2154// a matched intent, the intent will be "consumed". This means the
2155// intent won't activate more transition routes. However, when the
2156// followed transition route moves the conversation session into a
2157// different flow, the matched intent can be carried over and to be
2158// consumed in the target flow.
2159type GoogleCloudDialogflowCxV3Flow struct {
2160	// Description: The description of the flow. The maximum length is 500
2161	// characters. If exceeded, the request is rejected.
2162	Description string `json:"description,omitempty"`
2163
2164	// DisplayName: Required. The human-readable name of the flow.
2165	DisplayName string `json:"displayName,omitempty"`
2166
2167	// EventHandlers: A flow's event handlers serve two purposes: * They are
2168	// responsible for handling events (e.g. no match, webhook errors) in
2169	// the flow. * They are inherited by every page's event handlers, which
2170	// can be used to handle common events regardless of the current page.
2171	// Event handlers defined in the page have higher priority than those
2172	// defined in the flow. Unlike transition_routes, these handlers are
2173	// evaluated on a first-match basis. The first one that matches the
2174	// event get executed, with the rest being ignored.
2175	EventHandlers []*GoogleCloudDialogflowCxV3EventHandler `json:"eventHandlers,omitempty"`
2176
2177	// Name: The unique identifier of the flow. Format:
2178	// `projects//locations//agents//flows/`.
2179	Name string `json:"name,omitempty"`
2180
2181	// NluSettings: NLU related settings of the flow.
2182	NluSettings *GoogleCloudDialogflowCxV3NluSettings `json:"nluSettings,omitempty"`
2183
2184	// TransitionRouteGroups: A flow's transition route group serve two
2185	// purposes: * They are responsible for matching the user's first
2186	// utterances in the flow. * They are inherited by every page's
2187	// transition route groups. Transition route groups defined in the page
2188	// have higher priority than those defined in the flow.
2189	// Format:`projects//locations//agents//flows//transitionRouteGroups/`.
2190	TransitionRouteGroups []string `json:"transitionRouteGroups,omitempty"`
2191
2192	// TransitionRoutes: A flow's transition routes serve two purposes: *
2193	// They are responsible for matching the user's first utterances in the
2194	// flow. * They are inherited by every page's transition routes and can
2195	// support use cases such as the user saying "help" or "can I talk to a
2196	// human?", which can be handled in a common way regardless of the
2197	// current page. Transition routes defined in the page have higher
2198	// priority than those defined in the flow. TransitionRoutes are
2199	// evalauted in the following order: * TransitionRoutes with intent
2200	// specified.. * TransitionRoutes with only condition specified.
2201	// TransitionRoutes with intent specified are inherited by pages in the
2202	// flow.
2203	TransitionRoutes []*GoogleCloudDialogflowCxV3TransitionRoute `json:"transitionRoutes,omitempty"`
2204
2205	// ServerResponse contains the HTTP response code and headers from the
2206	// server.
2207	googleapi.ServerResponse `json:"-"`
2208
2209	// ForceSendFields is a list of field names (e.g. "Description") to
2210	// unconditionally include in API requests. By default, fields with
2211	// empty or default values are omitted from API requests. However, any
2212	// non-pointer, non-interface field appearing in ForceSendFields will be
2213	// sent to the server regardless of whether the field is empty or not.
2214	// This may be used to include empty fields in Patch requests.
2215	ForceSendFields []string `json:"-"`
2216
2217	// NullFields is a list of field names (e.g. "Description") to include
2218	// in API requests with the JSON null value. By default, fields with
2219	// empty values are omitted from API requests. However, any field with
2220	// an empty value appearing in NullFields will be sent to the server as
2221	// null. It is an error if a field in this list has a non-empty value.
2222	// This may be used to include null fields in Patch requests.
2223	NullFields []string `json:"-"`
2224}
2225
2226func (s *GoogleCloudDialogflowCxV3Flow) MarshalJSON() ([]byte, error) {
2227	type NoMethod GoogleCloudDialogflowCxV3Flow
2228	raw := NoMethod(*s)
2229	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2230}
2231
2232// GoogleCloudDialogflowCxV3FlowValidationResult: The response message
2233// for Flows.GetFlowValidationResult.
2234type GoogleCloudDialogflowCxV3FlowValidationResult struct {
2235	// Name: The unique identifier of the flow validation result. Format:
2236	// `projects//locations//agents//flows//validationResult`.
2237	Name string `json:"name,omitempty"`
2238
2239	// UpdateTime: Last time the flow was validated.
2240	UpdateTime string `json:"updateTime,omitempty"`
2241
2242	// ValidationMessages: Contains all validation messages.
2243	ValidationMessages []*GoogleCloudDialogflowCxV3ValidationMessage `json:"validationMessages,omitempty"`
2244
2245	// ServerResponse contains the HTTP response code and headers from the
2246	// server.
2247	googleapi.ServerResponse `json:"-"`
2248
2249	// ForceSendFields is a list of field names (e.g. "Name") to
2250	// unconditionally include in API requests. By default, fields with
2251	// empty or default values are omitted from API requests. However, any
2252	// non-pointer, non-interface field appearing in ForceSendFields will be
2253	// sent to the server regardless of whether the field is empty or not.
2254	// This may be used to include empty fields in Patch requests.
2255	ForceSendFields []string `json:"-"`
2256
2257	// NullFields is a list of field names (e.g. "Name") to include in API
2258	// requests with the JSON null value. By default, fields with empty
2259	// values are omitted from API requests. However, any field with an
2260	// empty value appearing in NullFields will be sent to the server as
2261	// null. It is an error if a field in this list has a non-empty value.
2262	// This may be used to include null fields in Patch requests.
2263	NullFields []string `json:"-"`
2264}
2265
2266func (s *GoogleCloudDialogflowCxV3FlowValidationResult) MarshalJSON() ([]byte, error) {
2267	type NoMethod GoogleCloudDialogflowCxV3FlowValidationResult
2268	raw := NoMethod(*s)
2269	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2270}
2271
2272// GoogleCloudDialogflowCxV3Form: A form is a data model that groups
2273// related parameters that can be collected from the user. The process
2274// in which the agent prompts the user and collects parameter values
2275// from the user is called form filling. A form can be added to a page.
2276// When form filling is done, the filled parameters will be written to
2277// the session.
2278type GoogleCloudDialogflowCxV3Form struct {
2279	// Parameters: Parameters to collect from the user.
2280	Parameters []*GoogleCloudDialogflowCxV3FormParameter `json:"parameters,omitempty"`
2281
2282	// ForceSendFields is a list of field names (e.g. "Parameters") to
2283	// unconditionally include in API requests. By default, fields with
2284	// empty or default values are omitted from API requests. However, any
2285	// non-pointer, non-interface field appearing in ForceSendFields will be
2286	// sent to the server regardless of whether the field is empty or not.
2287	// This may be used to include empty fields in Patch requests.
2288	ForceSendFields []string `json:"-"`
2289
2290	// NullFields is a list of field names (e.g. "Parameters") to include in
2291	// API requests with the JSON null value. By default, fields with empty
2292	// values are omitted from API requests. However, any field with an
2293	// empty value appearing in NullFields will be sent to the server as
2294	// null. It is an error if a field in this list has a non-empty value.
2295	// This may be used to include null fields in Patch requests.
2296	NullFields []string `json:"-"`
2297}
2298
2299func (s *GoogleCloudDialogflowCxV3Form) MarshalJSON() ([]byte, error) {
2300	type NoMethod GoogleCloudDialogflowCxV3Form
2301	raw := NoMethod(*s)
2302	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2303}
2304
2305// GoogleCloudDialogflowCxV3FormParameter: Represents a form parameter.
2306type GoogleCloudDialogflowCxV3FormParameter struct {
2307	// DefaultValue: The default value of an optional parameter. If the
2308	// parameter is required, the default value will be ignored.
2309	DefaultValue interface{} `json:"defaultValue,omitempty"`
2310
2311	// DisplayName: Required. The human-readable name of the parameter,
2312	// unique within the form.
2313	DisplayName string `json:"displayName,omitempty"`
2314
2315	// EntityType: Required. The entity type of the parameter. Format:
2316	// `projects/-/locations/-/agents/-/entityTypes/` for system entity
2317	// types (for example,
2318	// `projects/-/locations/-/agents/-/entityTypes/sys.date`), or
2319	// `projects//locations//agents//entityTypes/` for developer entity
2320	// types.
2321	EntityType string `json:"entityType,omitempty"`
2322
2323	// FillBehavior: Required. Defines fill behavior for the parameter.
2324	FillBehavior *GoogleCloudDialogflowCxV3FormParameterFillBehavior `json:"fillBehavior,omitempty"`
2325
2326	// IsList: Indicates whether the parameter represents a list of values.
2327	IsList bool `json:"isList,omitempty"`
2328
2329	// Redact: Indicates whether the parameter content should be redacted in
2330	// log. If redaction is enabled, the parameter content will be replaced
2331	// by parameter name during logging. Note: the parameter content is
2332	// subject to redaction if either parameter level redaction or entity
2333	// type level redaction is enabled.
2334	Redact bool `json:"redact,omitempty"`
2335
2336	// Required: Indicates whether the parameter is required. Optional
2337	// parameters will not trigger prompts; however, they are filled if the
2338	// user specifies them. Required parameters must be filled before form
2339	// filling concludes.
2340	Required bool `json:"required,omitempty"`
2341
2342	// ForceSendFields is a list of field names (e.g. "DefaultValue") to
2343	// unconditionally include in API requests. By default, fields with
2344	// empty or default values are omitted from API requests. However, any
2345	// non-pointer, non-interface field appearing in ForceSendFields will be
2346	// sent to the server regardless of whether the field is empty or not.
2347	// This may be used to include empty fields in Patch requests.
2348	ForceSendFields []string `json:"-"`
2349
2350	// NullFields is a list of field names (e.g. "DefaultValue") to include
2351	// in API requests with the JSON null value. By default, fields with
2352	// empty values are omitted from API requests. However, any field with
2353	// an empty value appearing in NullFields will be sent to the server as
2354	// null. It is an error if a field in this list has a non-empty value.
2355	// This may be used to include null fields in Patch requests.
2356	NullFields []string `json:"-"`
2357}
2358
2359func (s *GoogleCloudDialogflowCxV3FormParameter) MarshalJSON() ([]byte, error) {
2360	type NoMethod GoogleCloudDialogflowCxV3FormParameter
2361	raw := NoMethod(*s)
2362	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2363}
2364
2365// GoogleCloudDialogflowCxV3FormParameterFillBehavior: Configuration for
2366// how the filling of a parameter should be handled.
2367type GoogleCloudDialogflowCxV3FormParameterFillBehavior struct {
2368	// InitialPromptFulfillment: Required. The fulfillment to provide the
2369	// initial prompt that the agent can present to the user in order to
2370	// fill the parameter.
2371	InitialPromptFulfillment *GoogleCloudDialogflowCxV3Fulfillment `json:"initialPromptFulfillment,omitempty"`
2372
2373	// RepromptEventHandlers: The handlers for parameter-level events, used
2374	// to provide reprompt for the parameter or transition to a different
2375	// page/flow. The supported events are: * `sys.no-match-`, where N can
2376	// be from 1 to 6 * `sys.no-match-default` * `sys.no-input-`, where N
2377	// can be from 1 to 6 * `sys.no-input-default` * `sys.invalid-parameter`
2378	// `initial_prompt_fulfillment` provides the first prompt for the
2379	// parameter. If the user's response does not fill the parameter, a
2380	// no-match/no-input event will be triggered, and the fulfillment
2381	// associated with the `sys.no-match-1`/`sys.no-input-1` handler (if
2382	// defined) will be called to provide a prompt. The
2383	// `sys.no-match-2`/`sys.no-input-2` handler (if defined) will respond
2384	// to the next no-match/no-input event, and so on. A
2385	// `sys.no-match-default` or `sys.no-input-default` handler will be used
2386	// to handle all following no-match/no-input events after all numbered
2387	// no-match/no-input handlers for the parameter are consumed. A
2388	// `sys.invalid-parameter` handler can be defined to handle the case
2389	// where the parameter values have been `invalidated` by webhook. For
2390	// example, if the user's response fill the parameter, however the
2391	// parameter was invalidated by webhook, the fulfillment associated with
2392	// the `sys.invalid-parameter` handler (if defined) will be called to
2393	// provide a prompt. If the event handler for the corresponding event
2394	// can't be found on the parameter, `initial_prompt_fulfillment` will be
2395	// re-prompted.
2396	RepromptEventHandlers []*GoogleCloudDialogflowCxV3EventHandler `json:"repromptEventHandlers,omitempty"`
2397
2398	// ForceSendFields is a list of field names (e.g.
2399	// "InitialPromptFulfillment") to unconditionally include in API
2400	// requests. By default, fields with empty or default values are omitted
2401	// from API requests. However, any non-pointer, non-interface field
2402	// appearing in ForceSendFields will be sent to the server regardless of
2403	// whether the field is empty or not. This may be used to include empty
2404	// fields in Patch requests.
2405	ForceSendFields []string `json:"-"`
2406
2407	// NullFields is a list of field names (e.g. "InitialPromptFulfillment")
2408	// to include in API requests with the JSON null value. By default,
2409	// fields with empty values are omitted from API requests. However, any
2410	// field with an empty value appearing in NullFields will be sent to the
2411	// server as null. It is an error if a field in this list has a
2412	// non-empty value. This may be used to include null fields in Patch
2413	// requests.
2414	NullFields []string `json:"-"`
2415}
2416
2417func (s *GoogleCloudDialogflowCxV3FormParameterFillBehavior) MarshalJSON() ([]byte, error) {
2418	type NoMethod GoogleCloudDialogflowCxV3FormParameterFillBehavior
2419	raw := NoMethod(*s)
2420	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2421}
2422
2423// GoogleCloudDialogflowCxV3FulfillIntentRequest: Request of
2424// FulfillIntent
2425type GoogleCloudDialogflowCxV3FulfillIntentRequest struct {
2426	// Match: The matched intent/event to fulfill.
2427	Match *GoogleCloudDialogflowCxV3Match `json:"match,omitempty"`
2428
2429	// MatchIntentRequest: Must be same as the corresponding MatchIntent
2430	// request, otherwise the behavior is undefined.
2431	MatchIntentRequest *GoogleCloudDialogflowCxV3MatchIntentRequest `json:"matchIntentRequest,omitempty"`
2432
2433	// OutputAudioConfig: Instructs the speech synthesizer how to generate
2434	// output audio.
2435	OutputAudioConfig *GoogleCloudDialogflowCxV3OutputAudioConfig `json:"outputAudioConfig,omitempty"`
2436
2437	// ForceSendFields is a list of field names (e.g. "Match") to
2438	// unconditionally include in API requests. By default, fields with
2439	// empty or default values are omitted from API requests. However, any
2440	// non-pointer, non-interface field appearing in ForceSendFields will be
2441	// sent to the server regardless of whether the field is empty or not.
2442	// This may be used to include empty fields in Patch requests.
2443	ForceSendFields []string `json:"-"`
2444
2445	// NullFields is a list of field names (e.g. "Match") to include in API
2446	// requests with the JSON null value. By default, fields with empty
2447	// values are omitted from API requests. However, any field with an
2448	// empty value appearing in NullFields will be sent to the server as
2449	// null. It is an error if a field in this list has a non-empty value.
2450	// This may be used to include null fields in Patch requests.
2451	NullFields []string `json:"-"`
2452}
2453
2454func (s *GoogleCloudDialogflowCxV3FulfillIntentRequest) MarshalJSON() ([]byte, error) {
2455	type NoMethod GoogleCloudDialogflowCxV3FulfillIntentRequest
2456	raw := NoMethod(*s)
2457	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2458}
2459
2460// GoogleCloudDialogflowCxV3FulfillIntentResponse: Response of
2461// FulfillIntent
2462type GoogleCloudDialogflowCxV3FulfillIntentResponse struct {
2463	// OutputAudio: The audio data bytes encoded as specified in the
2464	// request. Note: The output audio is generated based on the values of
2465	// default platform text responses found in the
2466	// `query_result.response_messages` field. If multiple default text
2467	// responses exist, they will be concatenated when generating audio. If
2468	// no default platform text responses exist, the generated audio content
2469	// will be empty. In some scenarios, multiple output audio fields may be
2470	// present in the response structure. In these cases, only the
2471	// top-most-level audio output has content.
2472	OutputAudio string `json:"outputAudio,omitempty"`
2473
2474	// OutputAudioConfig: The config used by the speech synthesizer to
2475	// generate the output audio.
2476	OutputAudioConfig *GoogleCloudDialogflowCxV3OutputAudioConfig `json:"outputAudioConfig,omitempty"`
2477
2478	// QueryResult: The result of the conversational query.
2479	QueryResult *GoogleCloudDialogflowCxV3QueryResult `json:"queryResult,omitempty"`
2480
2481	// ResponseId: Output only. The unique identifier of the response. It
2482	// can be used to locate a response in the training example set or for
2483	// reporting issues.
2484	ResponseId string `json:"responseId,omitempty"`
2485
2486	// ServerResponse contains the HTTP response code and headers from the
2487	// server.
2488	googleapi.ServerResponse `json:"-"`
2489
2490	// ForceSendFields is a list of field names (e.g. "OutputAudio") to
2491	// unconditionally include in API requests. By default, fields with
2492	// empty or default values are omitted from API requests. However, any
2493	// non-pointer, non-interface field appearing in ForceSendFields will be
2494	// sent to the server regardless of whether the field is empty or not.
2495	// This may be used to include empty fields in Patch requests.
2496	ForceSendFields []string `json:"-"`
2497
2498	// NullFields is a list of field names (e.g. "OutputAudio") to include
2499	// in API requests with the JSON null value. By default, fields with
2500	// empty values are omitted from API requests. However, any field with
2501	// an empty value appearing in NullFields will be sent to the server as
2502	// null. It is an error if a field in this list has a non-empty value.
2503	// This may be used to include null fields in Patch requests.
2504	NullFields []string `json:"-"`
2505}
2506
2507func (s *GoogleCloudDialogflowCxV3FulfillIntentResponse) MarshalJSON() ([]byte, error) {
2508	type NoMethod GoogleCloudDialogflowCxV3FulfillIntentResponse
2509	raw := NoMethod(*s)
2510	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2511}
2512
2513// GoogleCloudDialogflowCxV3Fulfillment: A fulfillment can do one or
2514// more of the following actions at the same time: * Generate rich
2515// message responses. * Set parameter values. * Call the webhook.
2516// Fulfillments can be called at various stages in the Page or Form
2517// lifecycle. For example, when a DetectIntentRequest drives a session
2518// to enter a new page, the page's entry fulfillment can add a static
2519// response to the QueryResult in the returning DetectIntentResponse,
2520// call the webhook (for example, to load user data from a database), or
2521// both.
2522type GoogleCloudDialogflowCxV3Fulfillment struct {
2523	// ConditionalCases: Conditional cases for this fulfillment.
2524	ConditionalCases []*GoogleCloudDialogflowCxV3FulfillmentConditionalCases `json:"conditionalCases,omitempty"`
2525
2526	// Messages: The list of rich message responses to present to the user.
2527	Messages []*GoogleCloudDialogflowCxV3ResponseMessage `json:"messages,omitempty"`
2528
2529	// ReturnPartialResponses: Whether Dialogflow should return currently
2530	// queued fulfillment response messages in streaming APIs. If a webhook
2531	// is specified, it happens before Dialogflow invokes webhook. Warning:
2532	// 1) This flag only affects streaming API. Responses are still queued
2533	// and returned once in non-streaming API. 2) The flag can be enabled in
2534	// any fulfillment but only the first 3 partial responses will be
2535	// returned. You may only want to apply it to fulfillments that have
2536	// slow webhooks.
2537	ReturnPartialResponses bool `json:"returnPartialResponses,omitempty"`
2538
2539	// SetParameterActions: Set parameter values before executing the
2540	// webhook.
2541	SetParameterActions []*GoogleCloudDialogflowCxV3FulfillmentSetParameterAction `json:"setParameterActions,omitempty"`
2542
2543	// Tag: The tag used by the webhook to identify which fulfillment is
2544	// being called. This field is required if `webhook` is specified.
2545	Tag string `json:"tag,omitempty"`
2546
2547	// Webhook: The webhook to call. Format:
2548	// `projects//locations//agents//webhooks/`.
2549	Webhook string `json:"webhook,omitempty"`
2550
2551	// ForceSendFields is a list of field names (e.g. "ConditionalCases") to
2552	// unconditionally include in API requests. By default, fields with
2553	// empty or default values are omitted from API requests. However, any
2554	// non-pointer, non-interface field appearing in ForceSendFields will be
2555	// sent to the server regardless of whether the field is empty or not.
2556	// This may be used to include empty fields in Patch requests.
2557	ForceSendFields []string `json:"-"`
2558
2559	// NullFields is a list of field names (e.g. "ConditionalCases") to
2560	// include in API requests with the JSON null value. By default, fields
2561	// with empty values are omitted from API requests. However, any field
2562	// with an empty value appearing in NullFields will be sent to the
2563	// server as null. It is an error if a field in this list has a
2564	// non-empty value. This may be used to include null fields in Patch
2565	// requests.
2566	NullFields []string `json:"-"`
2567}
2568
2569func (s *GoogleCloudDialogflowCxV3Fulfillment) MarshalJSON() ([]byte, error) {
2570	type NoMethod GoogleCloudDialogflowCxV3Fulfillment
2571	raw := NoMethod(*s)
2572	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2573}
2574
2575// GoogleCloudDialogflowCxV3FulfillmentConditionalCases: A list of
2576// cascading if-else conditions. Cases are mutually exclusive. The first
2577// one with a matching condition is selected, all the rest ignored.
2578type GoogleCloudDialogflowCxV3FulfillmentConditionalCases struct {
2579	// Cases: A list of cascading if-else conditions.
2580	Cases []*GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCase `json:"cases,omitempty"`
2581
2582	// ForceSendFields is a list of field names (e.g. "Cases") to
2583	// unconditionally include in API requests. By default, fields with
2584	// empty or default values are omitted from API requests. However, any
2585	// non-pointer, non-interface field appearing in ForceSendFields will be
2586	// sent to the server regardless of whether the field is empty or not.
2587	// This may be used to include empty fields in Patch requests.
2588	ForceSendFields []string `json:"-"`
2589
2590	// NullFields is a list of field names (e.g. "Cases") to include in API
2591	// requests with the JSON null value. By default, fields with empty
2592	// values are omitted from API requests. However, any field with an
2593	// empty value appearing in NullFields will be sent to the server as
2594	// null. It is an error if a field in this list has a non-empty value.
2595	// This may be used to include null fields in Patch requests.
2596	NullFields []string `json:"-"`
2597}
2598
2599func (s *GoogleCloudDialogflowCxV3FulfillmentConditionalCases) MarshalJSON() ([]byte, error) {
2600	type NoMethod GoogleCloudDialogflowCxV3FulfillmentConditionalCases
2601	raw := NoMethod(*s)
2602	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2603}
2604
2605// GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCase: Each case
2606// has a Boolean condition. When it is evaluated to be True, the
2607// corresponding messages will be selected and evaluated recursively.
2608type GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCase struct {
2609	// CaseContent: A list of case content.
2610	CaseContent []*GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCaseCaseContent `json:"caseContent,omitempty"`
2611
2612	// Condition: The condition to activate and select this case. Empty
2613	// means the condition is always true. The condition is evaluated
2614	// against form parameters or session parameters. See the conditions
2615	// reference
2616	// (https://cloud.google.com/dialogflow/cx/docs/reference/condition).
2617	Condition string `json:"condition,omitempty"`
2618
2619	// ForceSendFields is a list of field names (e.g. "CaseContent") to
2620	// unconditionally include in API requests. By default, fields with
2621	// empty or default values are omitted from API requests. However, any
2622	// non-pointer, non-interface field appearing in ForceSendFields will be
2623	// sent to the server regardless of whether the field is empty or not.
2624	// This may be used to include empty fields in Patch requests.
2625	ForceSendFields []string `json:"-"`
2626
2627	// NullFields is a list of field names (e.g. "CaseContent") to include
2628	// in API requests with the JSON null value. By default, fields with
2629	// empty values are omitted from API requests. However, any field with
2630	// an empty value appearing in NullFields will be sent to the server as
2631	// null. It is an error if a field in this list has a non-empty value.
2632	// This may be used to include null fields in Patch requests.
2633	NullFields []string `json:"-"`
2634}
2635
2636func (s *GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCase) MarshalJSON() ([]byte, error) {
2637	type NoMethod GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCase
2638	raw := NoMethod(*s)
2639	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2640}
2641
2642// GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCaseCaseContent:
2643// The list of messages or conditional cases to activate for this case.
2644type GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCaseCaseContent struct {
2645	// AdditionalCases: Additional cases to be evaluated.
2646	AdditionalCases *GoogleCloudDialogflowCxV3FulfillmentConditionalCases `json:"additionalCases,omitempty"`
2647
2648	// Message: Returned message.
2649	Message *GoogleCloudDialogflowCxV3ResponseMessage `json:"message,omitempty"`
2650
2651	// ForceSendFields is a list of field names (e.g. "AdditionalCases") to
2652	// unconditionally include in API requests. By default, fields with
2653	// empty or default values are omitted from API requests. However, any
2654	// non-pointer, non-interface field appearing in ForceSendFields will be
2655	// sent to the server regardless of whether the field is empty or not.
2656	// This may be used to include empty fields in Patch requests.
2657	ForceSendFields []string `json:"-"`
2658
2659	// NullFields is a list of field names (e.g. "AdditionalCases") to
2660	// include in API requests with the JSON null value. By default, fields
2661	// with empty values are omitted from API requests. However, any field
2662	// with an empty value appearing in NullFields will be sent to the
2663	// server as null. It is an error if a field in this list has a
2664	// non-empty value. This may be used to include null fields in Patch
2665	// requests.
2666	NullFields []string `json:"-"`
2667}
2668
2669func (s *GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCaseCaseContent) MarshalJSON() ([]byte, error) {
2670	type NoMethod GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCaseCaseContent
2671	raw := NoMethod(*s)
2672	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2673}
2674
2675// GoogleCloudDialogflowCxV3FulfillmentSetParameterAction: Setting a
2676// parameter value.
2677type GoogleCloudDialogflowCxV3FulfillmentSetParameterAction struct {
2678	// Parameter: Display name of the parameter.
2679	Parameter string `json:"parameter,omitempty"`
2680
2681	// Value: The new value of the parameter. A null value clears the
2682	// parameter.
2683	Value interface{} `json:"value,omitempty"`
2684
2685	// ForceSendFields is a list of field names (e.g. "Parameter") to
2686	// unconditionally include in API requests. By default, fields with
2687	// empty or default values are omitted from API requests. However, any
2688	// non-pointer, non-interface field appearing in ForceSendFields will be
2689	// sent to the server regardless of whether the field is empty or not.
2690	// This may be used to include empty fields in Patch requests.
2691	ForceSendFields []string `json:"-"`
2692
2693	// NullFields is a list of field names (e.g. "Parameter") to include in
2694	// API requests with the JSON null value. By default, fields with empty
2695	// values are omitted from API requests. However, any field with an
2696	// empty value appearing in NullFields will be sent to the server as
2697	// null. It is an error if a field in this list has a non-empty value.
2698	// This may be used to include null fields in Patch requests.
2699	NullFields []string `json:"-"`
2700}
2701
2702func (s *GoogleCloudDialogflowCxV3FulfillmentSetParameterAction) MarshalJSON() ([]byte, error) {
2703	type NoMethod GoogleCloudDialogflowCxV3FulfillmentSetParameterAction
2704	raw := NoMethod(*s)
2705	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2706}
2707
2708// GoogleCloudDialogflowCxV3GenericKnowledgeOperationMetadata: Metadata
2709// in google::longrunning::Operation for Knowledge operations.
2710type GoogleCloudDialogflowCxV3GenericKnowledgeOperationMetadata struct {
2711	// State: Required. Output only. The current state of this operation.
2712	//
2713	// Possible values:
2714	//   "STATE_UNSPECIFIED" - State unspecified.
2715	//   "PENDING" - The operation has been created.
2716	//   "RUNNING" - The operation is currently running.
2717	//   "DONE" - The operation is done, either cancelled or completed.
2718	State string `json:"state,omitempty"`
2719
2720	// ForceSendFields is a list of field names (e.g. "State") to
2721	// unconditionally include in API requests. By default, fields with
2722	// empty or default values are omitted from API requests. However, any
2723	// non-pointer, non-interface field appearing in ForceSendFields will be
2724	// sent to the server regardless of whether the field is empty or not.
2725	// This may be used to include empty fields in Patch requests.
2726	ForceSendFields []string `json:"-"`
2727
2728	// NullFields is a list of field names (e.g. "State") to include in API
2729	// requests with the JSON null value. By default, fields with empty
2730	// values are omitted from API requests. However, any field with an
2731	// empty value appearing in NullFields will be sent to the server as
2732	// null. It is an error if a field in this list has a non-empty value.
2733	// This may be used to include null fields in Patch requests.
2734	NullFields []string `json:"-"`
2735}
2736
2737func (s *GoogleCloudDialogflowCxV3GenericKnowledgeOperationMetadata) MarshalJSON() ([]byte, error) {
2738	type NoMethod GoogleCloudDialogflowCxV3GenericKnowledgeOperationMetadata
2739	raw := NoMethod(*s)
2740	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2741}
2742
2743// GoogleCloudDialogflowCxV3ImportDocumentsOperationMetadata: Metadata
2744// for ImportDocuments operation.
2745type GoogleCloudDialogflowCxV3ImportDocumentsOperationMetadata struct {
2746	// GenericMetadata: The generic information of the operation.
2747	GenericMetadata *GoogleCloudDialogflowCxV3GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
2748
2749	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
2750	// unconditionally include in API requests. By default, fields with
2751	// empty or default values are omitted from API requests. However, any
2752	// non-pointer, non-interface field appearing in ForceSendFields will be
2753	// sent to the server regardless of whether the field is empty or not.
2754	// This may be used to include empty fields in Patch requests.
2755	ForceSendFields []string `json:"-"`
2756
2757	// NullFields is a list of field names (e.g. "GenericMetadata") to
2758	// include in API requests with the JSON null value. By default, fields
2759	// with empty values are omitted from API requests. However, any field
2760	// with an empty value appearing in NullFields will be sent to the
2761	// server as null. It is an error if a field in this list has a
2762	// non-empty value. This may be used to include null fields in Patch
2763	// requests.
2764	NullFields []string `json:"-"`
2765}
2766
2767func (s *GoogleCloudDialogflowCxV3ImportDocumentsOperationMetadata) MarshalJSON() ([]byte, error) {
2768	type NoMethod GoogleCloudDialogflowCxV3ImportDocumentsOperationMetadata
2769	raw := NoMethod(*s)
2770	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2771}
2772
2773// GoogleCloudDialogflowCxV3ImportDocumentsResponse: Response message
2774// for Documents.ImportDocuments.
2775type GoogleCloudDialogflowCxV3ImportDocumentsResponse struct {
2776	// Warnings: Includes details about skipped documents or any other
2777	// warnings.
2778	Warnings []*GoogleRpcStatus `json:"warnings,omitempty"`
2779
2780	// ForceSendFields is a list of field names (e.g. "Warnings") to
2781	// unconditionally include in API requests. By default, fields with
2782	// empty or default values are omitted from API requests. However, any
2783	// non-pointer, non-interface field appearing in ForceSendFields will be
2784	// sent to the server regardless of whether the field is empty or not.
2785	// This may be used to include empty fields in Patch requests.
2786	ForceSendFields []string `json:"-"`
2787
2788	// NullFields is a list of field names (e.g. "Warnings") to include in
2789	// API requests with the JSON null value. By default, fields with empty
2790	// values are omitted from API requests. However, any field with an
2791	// empty value appearing in NullFields will be sent to the server as
2792	// null. It is an error if a field in this list has a non-empty value.
2793	// This may be used to include null fields in Patch requests.
2794	NullFields []string `json:"-"`
2795}
2796
2797func (s *GoogleCloudDialogflowCxV3ImportDocumentsResponse) MarshalJSON() ([]byte, error) {
2798	type NoMethod GoogleCloudDialogflowCxV3ImportDocumentsResponse
2799	raw := NoMethod(*s)
2800	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2801}
2802
2803// GoogleCloudDialogflowCxV3ImportFlowRequest: The request message for
2804// Flows.ImportFlow.
2805type GoogleCloudDialogflowCxV3ImportFlowRequest struct {
2806	// FlowContent: Uncompressed raw byte content for flow.
2807	FlowContent string `json:"flowContent,omitempty"`
2808
2809	// FlowUri: The Google Cloud Storage
2810	// (https://cloud.google.com/storage/docs/) URI to import flow from. The
2811	// format of this URI must be `gs:///`.
2812	FlowUri string `json:"flowUri,omitempty"`
2813
2814	// ImportOption: Flow import mode. If not specified, `KEEP` is assumed.
2815	//
2816	// Possible values:
2817	//   "IMPORT_OPTION_UNSPECIFIED" - Unspecified. Treated as `KEEP`.
2818	//   "KEEP" - Always respect settings in exported flow content. It may
2819	// cause a import failure if some settings (e.g. custom NLU) are not
2820	// supported in the agent to import into.
2821	//   "FALLBACK" - Fallback to default settings if some settings are not
2822	// supported in the agent to import into. E.g. Standard NLU will be used
2823	// if custom NLU is not available.
2824	ImportOption string `json:"importOption,omitempty"`
2825
2826	// ForceSendFields is a list of field names (e.g. "FlowContent") to
2827	// unconditionally include in API requests. By default, fields with
2828	// empty or default values are omitted from API requests. However, any
2829	// non-pointer, non-interface field appearing in ForceSendFields will be
2830	// sent to the server regardless of whether the field is empty or not.
2831	// This may be used to include empty fields in Patch requests.
2832	ForceSendFields []string `json:"-"`
2833
2834	// NullFields is a list of field names (e.g. "FlowContent") to include
2835	// in API requests with the JSON null value. By default, fields with
2836	// empty values are omitted from API requests. However, any field with
2837	// an empty value appearing in NullFields will be sent to the server as
2838	// null. It is an error if a field in this list has a non-empty value.
2839	// This may be used to include null fields in Patch requests.
2840	NullFields []string `json:"-"`
2841}
2842
2843func (s *GoogleCloudDialogflowCxV3ImportFlowRequest) MarshalJSON() ([]byte, error) {
2844	type NoMethod GoogleCloudDialogflowCxV3ImportFlowRequest
2845	raw := NoMethod(*s)
2846	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2847}
2848
2849// GoogleCloudDialogflowCxV3ImportFlowResponse: The response message for
2850// Flows.ImportFlow.
2851type GoogleCloudDialogflowCxV3ImportFlowResponse struct {
2852	// Flow: The unique identifier of the new flow. Format:
2853	// `projects//locations//agents//flows/`.
2854	Flow string `json:"flow,omitempty"`
2855
2856	// ForceSendFields is a list of field names (e.g. "Flow") to
2857	// unconditionally include in API requests. By default, fields with
2858	// empty or default values are omitted from API requests. However, any
2859	// non-pointer, non-interface field appearing in ForceSendFields will be
2860	// sent to the server regardless of whether the field is empty or not.
2861	// This may be used to include empty fields in Patch requests.
2862	ForceSendFields []string `json:"-"`
2863
2864	// NullFields is a list of field names (e.g. "Flow") to include in API
2865	// requests with the JSON null value. By default, fields with empty
2866	// values are omitted from API requests. However, any field with an
2867	// empty value appearing in NullFields will be sent to the server as
2868	// null. It is an error if a field in this list has a non-empty value.
2869	// This may be used to include null fields in Patch requests.
2870	NullFields []string `json:"-"`
2871}
2872
2873func (s *GoogleCloudDialogflowCxV3ImportFlowResponse) MarshalJSON() ([]byte, error) {
2874	type NoMethod GoogleCloudDialogflowCxV3ImportFlowResponse
2875	raw := NoMethod(*s)
2876	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2877}
2878
2879// GoogleCloudDialogflowCxV3ImportTestCasesMetadata: Metadata returned
2880// for the TestCases.ImportTestCases long running operation.
2881type GoogleCloudDialogflowCxV3ImportTestCasesMetadata struct {
2882	// Errors: Errors for failed test cases.
2883	Errors []*GoogleCloudDialogflowCxV3TestCaseError `json:"errors,omitempty"`
2884
2885	// ForceSendFields is a list of field names (e.g. "Errors") to
2886	// unconditionally include in API requests. By default, fields with
2887	// empty or default values are omitted from API requests. However, any
2888	// non-pointer, non-interface field appearing in ForceSendFields will be
2889	// sent to the server regardless of whether the field is empty or not.
2890	// This may be used to include empty fields in Patch requests.
2891	ForceSendFields []string `json:"-"`
2892
2893	// NullFields is a list of field names (e.g. "Errors") to include in API
2894	// requests with the JSON null value. By default, fields with empty
2895	// values are omitted from API requests. However, any field with an
2896	// empty value appearing in NullFields will be sent to the server as
2897	// null. It is an error if a field in this list has a non-empty value.
2898	// This may be used to include null fields in Patch requests.
2899	NullFields []string `json:"-"`
2900}
2901
2902func (s *GoogleCloudDialogflowCxV3ImportTestCasesMetadata) MarshalJSON() ([]byte, error) {
2903	type NoMethod GoogleCloudDialogflowCxV3ImportTestCasesMetadata
2904	raw := NoMethod(*s)
2905	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2906}
2907
2908// GoogleCloudDialogflowCxV3ImportTestCasesRequest: The request message
2909// for TestCases.ImportTestCases.
2910type GoogleCloudDialogflowCxV3ImportTestCasesRequest struct {
2911	// Content: Uncompressed raw byte content for test cases.
2912	Content string `json:"content,omitempty"`
2913
2914	// GcsUri: The Google Cloud Storage
2915	// (https://cloud.google.com/storage/docs/) URI to import test cases
2916	// from. The format of this URI must be `gs:///`.
2917	GcsUri string `json:"gcsUri,omitempty"`
2918
2919	// ForceSendFields is a list of field names (e.g. "Content") to
2920	// unconditionally include in API requests. By default, fields with
2921	// empty or default values are omitted from API requests. However, any
2922	// non-pointer, non-interface field appearing in ForceSendFields will be
2923	// sent to the server regardless of whether the field is empty or not.
2924	// This may be used to include empty fields in Patch requests.
2925	ForceSendFields []string `json:"-"`
2926
2927	// NullFields is a list of field names (e.g. "Content") to include in
2928	// API requests with the JSON null value. By default, fields with empty
2929	// values are omitted from API requests. However, any field with an
2930	// empty value appearing in NullFields will be sent to the server as
2931	// null. It is an error if a field in this list has a non-empty value.
2932	// This may be used to include null fields in Patch requests.
2933	NullFields []string `json:"-"`
2934}
2935
2936func (s *GoogleCloudDialogflowCxV3ImportTestCasesRequest) MarshalJSON() ([]byte, error) {
2937	type NoMethod GoogleCloudDialogflowCxV3ImportTestCasesRequest
2938	raw := NoMethod(*s)
2939	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2940}
2941
2942// GoogleCloudDialogflowCxV3ImportTestCasesResponse: The response
2943// message for TestCases.ImportTestCases.
2944type GoogleCloudDialogflowCxV3ImportTestCasesResponse struct {
2945	// Names: The unique identifiers of the new test cases. Format:
2946	// `projects//locations//agents//testCases/`.
2947	Names []string `json:"names,omitempty"`
2948
2949	// ForceSendFields is a list of field names (e.g. "Names") to
2950	// unconditionally include in API requests. By default, fields with
2951	// empty or default values are omitted from API requests. However, any
2952	// non-pointer, non-interface field appearing in ForceSendFields will be
2953	// sent to the server regardless of whether the field is empty or not.
2954	// This may be used to include empty fields in Patch requests.
2955	ForceSendFields []string `json:"-"`
2956
2957	// NullFields is a list of field names (e.g. "Names") to include in API
2958	// requests with the JSON null value. By default, fields with empty
2959	// values are omitted from API requests. However, any field with an
2960	// empty value appearing in NullFields will be sent to the server as
2961	// null. It is an error if a field in this list has a non-empty value.
2962	// This may be used to include null fields in Patch requests.
2963	NullFields []string `json:"-"`
2964}
2965
2966func (s *GoogleCloudDialogflowCxV3ImportTestCasesResponse) MarshalJSON() ([]byte, error) {
2967	type NoMethod GoogleCloudDialogflowCxV3ImportTestCasesResponse
2968	raw := NoMethod(*s)
2969	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2970}
2971
2972// GoogleCloudDialogflowCxV3InputAudioConfig: Instructs the speech
2973// recognizer on how to process the audio content.
2974type GoogleCloudDialogflowCxV3InputAudioConfig struct {
2975	// AudioEncoding: Required. Audio encoding of the audio content to
2976	// process.
2977	//
2978	// Possible values:
2979	//   "AUDIO_ENCODING_UNSPECIFIED" - Not specified.
2980	//   "AUDIO_ENCODING_LINEAR_16" - Uncompressed 16-bit signed
2981	// little-endian samples (Linear PCM).
2982	//   "AUDIO_ENCODING_FLAC" -
2983	// [`FLAC`](https://xiph.org/flac/documentation.html) (Free Lossless
2984	// Audio Codec) is the recommended encoding because it is lossless
2985	// (therefore recognition is not compromised) and requires only about
2986	// half the bandwidth of `LINEAR16`. `FLAC` stream encoding supports
2987	// 16-bit and 24-bit samples, however, not all fields in `STREAMINFO`
2988	// are supported.
2989	//   "AUDIO_ENCODING_MULAW" - 8-bit samples that compand 14-bit audio
2990	// samples using G.711 PCMU/mu-law.
2991	//   "AUDIO_ENCODING_AMR" - Adaptive Multi-Rate Narrowband codec.
2992	// `sample_rate_hertz` must be 8000.
2993	//   "AUDIO_ENCODING_AMR_WB" - Adaptive Multi-Rate Wideband codec.
2994	// `sample_rate_hertz` must be 16000.
2995	//   "AUDIO_ENCODING_OGG_OPUS" - Opus encoded audio frames in Ogg
2996	// container ([OggOpus](https://wiki.xiph.org/OggOpus)).
2997	// `sample_rate_hertz` must be 16000.
2998	//   "AUDIO_ENCODING_SPEEX_WITH_HEADER_BYTE" - Although the use of lossy
2999	// encodings is not recommended, if a very low bitrate encoding is
3000	// required, `OGG_OPUS` is highly preferred over Speex encoding. The
3001	// [Speex](https://speex.org/) encoding supported by Dialogflow API has
3002	// a header byte in each block, as in MIME type
3003	// `audio/x-speex-with-header-byte`. It is a variant of the RTP Speex
3004	// encoding defined in [RFC 5574](https://tools.ietf.org/html/rfc5574).
3005	// The stream is a sequence of blocks, one block per RTP packet. Each
3006	// block starts with a byte containing the length of the block, in
3007	// bytes, followed by one or more frames of Speex data, padded to an
3008	// integral number of bytes (octets) as specified in RFC 5574. In other
3009	// words, each RTP header is replaced with a single byte containing the
3010	// block length. Only Speex wideband is supported. `sample_rate_hertz`
3011	// must be 16000.
3012	AudioEncoding string `json:"audioEncoding,omitempty"`
3013
3014	// EnableWordInfo: Optional. If `true`, Dialogflow returns
3015	// SpeechWordInfo in StreamingRecognitionResult with information about
3016	// the recognized speech words, e.g. start and end time offsets. If
3017	// false or unspecified, Speech doesn't return any word-level
3018	// information.
3019	EnableWordInfo bool `json:"enableWordInfo,omitempty"`
3020
3021	// Model: Optional. Which Speech model to select for the given request.
3022	// Select the model best suited to your domain to get best results. If a
3023	// model is not explicitly specified, then we auto-select a model based
3024	// on the parameters in the InputAudioConfig. If enhanced speech model
3025	// is enabled for the agent and an enhanced version of the specified
3026	// model for the language does not exist, then the speech is recognized
3027	// using the standard version of the specified model. Refer to Cloud
3028	// Speech API documentation
3029	// (https://cloud.google.com/speech-to-text/docs/basics#select-model)
3030	// for more details.
3031	Model string `json:"model,omitempty"`
3032
3033	// ModelVariant: Optional. Which variant of the Speech model to use.
3034	//
3035	// Possible values:
3036	//   "SPEECH_MODEL_VARIANT_UNSPECIFIED" - No model variant specified. In
3037	// this case Dialogflow defaults to USE_BEST_AVAILABLE.
3038	//   "USE_BEST_AVAILABLE" - Use the best available variant of the Speech
3039	// model that the caller is eligible for. Please see the [Dialogflow
3040	// docs](https://cloud.google.com/dialogflow/docs/data-logging) for how
3041	// to make your project eligible for enhanced models.
3042	//   "USE_STANDARD" - Use standard model variant even if an enhanced
3043	// model is available. See the [Cloud Speech
3044	// documentation](https://cloud.google.com/speech-to-text/docs/enhanced-m
3045	// odels) for details about enhanced models.
3046	//   "USE_ENHANCED" - Use an enhanced model variant: * If an enhanced
3047	// variant does not exist for the given model and request language,
3048	// Dialogflow falls back to the standard variant. The [Cloud Speech
3049	// documentation](https://cloud.google.com/speech-to-text/docs/enhanced-m
3050	// odels) describes which models have enhanced variants. * If the API
3051	// caller isn't eligible for enhanced models, Dialogflow returns an
3052	// error. Please see the [Dialogflow
3053	// docs](https://cloud.google.com/dialogflow/docs/data-logging) for how
3054	// to make your project eligible.
3055	ModelVariant string `json:"modelVariant,omitempty"`
3056
3057	// PhraseHints: Optional. A list of strings containing words and phrases
3058	// that the speech recognizer should recognize with higher likelihood.
3059	// See the Cloud Speech documentation
3060	// (https://cloud.google.com/speech-to-text/docs/basics#phrase-hints)
3061	// for more details.
3062	PhraseHints []string `json:"phraseHints,omitempty"`
3063
3064	// SampleRateHertz: Sample rate (in Hertz) of the audio content sent in
3065	// the query. Refer to Cloud Speech API documentation
3066	// (https://cloud.google.com/speech-to-text/docs/basics) for more
3067	// details.
3068	SampleRateHertz int64 `json:"sampleRateHertz,omitempty"`
3069
3070	// SingleUtterance: Optional. If `false` (default), recognition does not
3071	// cease until the client closes the stream. If `true`, the recognizer
3072	// will detect a single spoken utterance in input audio. Recognition
3073	// ceases when it detects the audio's voice has stopped or paused. In
3074	// this case, once a detected intent is received, the client should
3075	// close the stream and start a new request with a new stream as needed.
3076	// Note: This setting is relevant only for streaming methods.
3077	SingleUtterance bool `json:"singleUtterance,omitempty"`
3078
3079	// ForceSendFields is a list of field names (e.g. "AudioEncoding") to
3080	// unconditionally include in API requests. By default, fields with
3081	// empty or default values are omitted from API requests. However, any
3082	// non-pointer, non-interface field appearing in ForceSendFields will be
3083	// sent to the server regardless of whether the field is empty or not.
3084	// This may be used to include empty fields in Patch requests.
3085	ForceSendFields []string `json:"-"`
3086
3087	// NullFields is a list of field names (e.g. "AudioEncoding") to include
3088	// in API requests with the JSON null value. By default, fields with
3089	// empty values are omitted from API requests. However, any field with
3090	// an empty value appearing in NullFields will be sent to the server as
3091	// null. It is an error if a field in this list has a non-empty value.
3092	// This may be used to include null fields in Patch requests.
3093	NullFields []string `json:"-"`
3094}
3095
3096func (s *GoogleCloudDialogflowCxV3InputAudioConfig) MarshalJSON() ([]byte, error) {
3097	type NoMethod GoogleCloudDialogflowCxV3InputAudioConfig
3098	raw := NoMethod(*s)
3099	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3100}
3101
3102// GoogleCloudDialogflowCxV3Intent: An intent represents a user's intent
3103// to interact with a conversational agent. You can provide information
3104// for the Dialogflow API to use to match user input to an intent by
3105// adding training phrases (i.e., examples of user input) to your
3106// intent.
3107type GoogleCloudDialogflowCxV3Intent struct {
3108	// Description: Human readable description for better understanding an
3109	// intent like its scope, content, result etc. Maximum character limit:
3110	// 140 characters.
3111	Description string `json:"description,omitempty"`
3112
3113	// DisplayName: Required. The human-readable name of the intent, unique
3114	// within the agent.
3115	DisplayName string `json:"displayName,omitempty"`
3116
3117	// IsFallback: Indicates whether this is a fallback intent. Currently
3118	// only default fallback intent is allowed in the agent, which is added
3119	// upon agent creation. Adding training phrases to fallback intent is
3120	// useful in the case of requests that are mistakenly matched, since
3121	// training phrases assigned to fallback intents act as negative
3122	// examples that triggers no-match event.
3123	IsFallback bool `json:"isFallback,omitempty"`
3124
3125	// Labels: The key/value metadata to label an intent. Labels can contain
3126	// lowercase letters, digits and the symbols '-' and '_'. International
3127	// characters are allowed, including letters from unicase alphabets.
3128	// Keys must start with a letter. Keys and values can be no longer than
3129	// 63 characters and no more than 128 bytes. Prefix "sys-" is reserved
3130	// for Dialogflow defined labels. Currently allowed Dialogflow defined
3131	// labels include: * sys-head * sys-contextual The above labels do not
3132	// require value. "sys-head" means the intent is a head intent.
3133	// "sys.contextual" means the intent is a contextual intent.
3134	Labels map[string]string `json:"labels,omitempty"`
3135
3136	// Name: The unique identifier of the intent. Required for the
3137	// Intents.UpdateIntent method. Intents.CreateIntent populates the name
3138	// automatically. Format: `projects//locations//agents//intents/`.
3139	Name string `json:"name,omitempty"`
3140
3141	// Parameters: The collection of parameters associated with the intent.
3142	Parameters []*GoogleCloudDialogflowCxV3IntentParameter `json:"parameters,omitempty"`
3143
3144	// Priority: The priority of this intent. Higher numbers represent
3145	// higher priorities. - If the supplied value is unspecified or 0, the
3146	// service translates the value to 500,000, which corresponds to the
3147	// `Normal` priority in the console. - If the supplied value is
3148	// negative, the intent is ignored in runtime detect intent requests.
3149	Priority int64 `json:"priority,omitempty"`
3150
3151	// TrainingPhrases: The collection of training phrases the agent is
3152	// trained on to identify the intent.
3153	TrainingPhrases []*GoogleCloudDialogflowCxV3IntentTrainingPhrase `json:"trainingPhrases,omitempty"`
3154
3155	// ServerResponse contains the HTTP response code and headers from the
3156	// server.
3157	googleapi.ServerResponse `json:"-"`
3158
3159	// ForceSendFields is a list of field names (e.g. "Description") to
3160	// unconditionally include in API requests. By default, fields with
3161	// empty or default values are omitted from API requests. However, any
3162	// non-pointer, non-interface field appearing in ForceSendFields will be
3163	// sent to the server regardless of whether the field is empty or not.
3164	// This may be used to include empty fields in Patch requests.
3165	ForceSendFields []string `json:"-"`
3166
3167	// NullFields is a list of field names (e.g. "Description") to include
3168	// in API requests with the JSON null value. By default, fields with
3169	// empty values are omitted from API requests. However, any field with
3170	// an empty value appearing in NullFields will be sent to the server as
3171	// null. It is an error if a field in this list has a non-empty value.
3172	// This may be used to include null fields in Patch requests.
3173	NullFields []string `json:"-"`
3174}
3175
3176func (s *GoogleCloudDialogflowCxV3Intent) MarshalJSON() ([]byte, error) {
3177	type NoMethod GoogleCloudDialogflowCxV3Intent
3178	raw := NoMethod(*s)
3179	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3180}
3181
3182// GoogleCloudDialogflowCxV3IntentCoverage: Intent coverage represents
3183// the percentage of all possible intents in the agent that are
3184// triggered in any of a parent's test cases.
3185type GoogleCloudDialogflowCxV3IntentCoverage struct {
3186	// CoverageScore: The percent of intents in the agent that are covered.
3187	CoverageScore float64 `json:"coverageScore,omitempty"`
3188
3189	// Intents: The list of Intents present in the agent
3190	Intents []*GoogleCloudDialogflowCxV3IntentCoverageIntent `json:"intents,omitempty"`
3191
3192	// ForceSendFields is a list of field names (e.g. "CoverageScore") to
3193	// unconditionally include in API requests. By default, fields with
3194	// empty or default values are omitted from API requests. However, any
3195	// non-pointer, non-interface field appearing in ForceSendFields will be
3196	// sent to the server regardless of whether the field is empty or not.
3197	// This may be used to include empty fields in Patch requests.
3198	ForceSendFields []string `json:"-"`
3199
3200	// NullFields is a list of field names (e.g. "CoverageScore") to include
3201	// in API requests with the JSON null value. By default, fields with
3202	// empty values are omitted from API requests. However, any field with
3203	// an empty value appearing in NullFields will be sent to the server as
3204	// null. It is an error if a field in this list has a non-empty value.
3205	// This may be used to include null fields in Patch requests.
3206	NullFields []string `json:"-"`
3207}
3208
3209func (s *GoogleCloudDialogflowCxV3IntentCoverage) MarshalJSON() ([]byte, error) {
3210	type NoMethod GoogleCloudDialogflowCxV3IntentCoverage
3211	raw := NoMethod(*s)
3212	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3213}
3214
3215func (s *GoogleCloudDialogflowCxV3IntentCoverage) UnmarshalJSON(data []byte) error {
3216	type NoMethod GoogleCloudDialogflowCxV3IntentCoverage
3217	var s1 struct {
3218		CoverageScore gensupport.JSONFloat64 `json:"coverageScore"`
3219		*NoMethod
3220	}
3221	s1.NoMethod = (*NoMethod)(s)
3222	if err := json.Unmarshal(data, &s1); err != nil {
3223		return err
3224	}
3225	s.CoverageScore = float64(s1.CoverageScore)
3226	return nil
3227}
3228
3229// GoogleCloudDialogflowCxV3IntentCoverageIntent: The agent's intent.
3230type GoogleCloudDialogflowCxV3IntentCoverageIntent struct {
3231	// Covered: Whether or not the intent is covered by at least one of the
3232	// agent's test cases.
3233	Covered bool `json:"covered,omitempty"`
3234
3235	// Intent: The intent full resource name
3236	Intent string `json:"intent,omitempty"`
3237
3238	// ForceSendFields is a list of field names (e.g. "Covered") to
3239	// unconditionally include in API requests. By default, fields with
3240	// empty or default values are omitted from API requests. However, any
3241	// non-pointer, non-interface field appearing in ForceSendFields will be
3242	// sent to the server regardless of whether the field is empty or not.
3243	// This may be used to include empty fields in Patch requests.
3244	ForceSendFields []string `json:"-"`
3245
3246	// NullFields is a list of field names (e.g. "Covered") to include in
3247	// API requests with the JSON null value. By default, fields with empty
3248	// values are omitted from API requests. However, any field with an
3249	// empty value appearing in NullFields will be sent to the server as
3250	// null. It is an error if a field in this list has a non-empty value.
3251	// This may be used to include null fields in Patch requests.
3252	NullFields []string `json:"-"`
3253}
3254
3255func (s *GoogleCloudDialogflowCxV3IntentCoverageIntent) MarshalJSON() ([]byte, error) {
3256	type NoMethod GoogleCloudDialogflowCxV3IntentCoverageIntent
3257	raw := NoMethod(*s)
3258	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3259}
3260
3261// GoogleCloudDialogflowCxV3IntentInput: Represents the intent to
3262// trigger programmatically rather than as a result of natural language
3263// processing.
3264type GoogleCloudDialogflowCxV3IntentInput struct {
3265	// Intent: Required. The unique identifier of the intent. Format:
3266	// `projects//locations//agents//intents/`.
3267	Intent string `json:"intent,omitempty"`
3268
3269	// ForceSendFields is a list of field names (e.g. "Intent") to
3270	// unconditionally include in API requests. By default, fields with
3271	// empty or default values are omitted from API requests. However, any
3272	// non-pointer, non-interface field appearing in ForceSendFields will be
3273	// sent to the server regardless of whether the field is empty or not.
3274	// This may be used to include empty fields in Patch requests.
3275	ForceSendFields []string `json:"-"`
3276
3277	// NullFields is a list of field names (e.g. "Intent") to include in API
3278	// requests with the JSON null value. By default, fields with empty
3279	// values are omitted from API requests. However, any field with an
3280	// empty value appearing in NullFields will be sent to the server as
3281	// null. It is an error if a field in this list has a non-empty value.
3282	// This may be used to include null fields in Patch requests.
3283	NullFields []string `json:"-"`
3284}
3285
3286func (s *GoogleCloudDialogflowCxV3IntentInput) MarshalJSON() ([]byte, error) {
3287	type NoMethod GoogleCloudDialogflowCxV3IntentInput
3288	raw := NoMethod(*s)
3289	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3290}
3291
3292// GoogleCloudDialogflowCxV3IntentParameter: Represents an intent
3293// parameter.
3294type GoogleCloudDialogflowCxV3IntentParameter struct {
3295	// EntityType: Required. The entity type of the parameter. Format:
3296	// `projects/-/locations/-/agents/-/entityTypes/` for system entity
3297	// types (for example,
3298	// `projects/-/locations/-/agents/-/entityTypes/sys.date`), or
3299	// `projects//locations//agents//entityTypes/` for developer entity
3300	// types.
3301	EntityType string `json:"entityType,omitempty"`
3302
3303	// Id: Required. The unique identifier of the parameter. This field is
3304	// used by training phrases to annotate their parts.
3305	Id string `json:"id,omitempty"`
3306
3307	// IsList: Indicates whether the parameter represents a list of values.
3308	IsList bool `json:"isList,omitempty"`
3309
3310	// Redact: Indicates whether the parameter content should be redacted in
3311	// log. If redaction is enabled, the parameter content will be replaced
3312	// by parameter name during logging. Note: the parameter content is
3313	// subject to redaction if either parameter level redaction or entity
3314	// type level redaction is enabled.
3315	Redact bool `json:"redact,omitempty"`
3316
3317	// ForceSendFields is a list of field names (e.g. "EntityType") to
3318	// unconditionally include in API requests. By default, fields with
3319	// empty or default values are omitted from API requests. However, any
3320	// non-pointer, non-interface field appearing in ForceSendFields will be
3321	// sent to the server regardless of whether the field is empty or not.
3322	// This may be used to include empty fields in Patch requests.
3323	ForceSendFields []string `json:"-"`
3324
3325	// NullFields is a list of field names (e.g. "EntityType") to include in
3326	// API requests with the JSON null value. By default, fields with empty
3327	// values are omitted from API requests. However, any field with an
3328	// empty value appearing in NullFields will be sent to the server as
3329	// null. It is an error if a field in this list has a non-empty value.
3330	// This may be used to include null fields in Patch requests.
3331	NullFields []string `json:"-"`
3332}
3333
3334func (s *GoogleCloudDialogflowCxV3IntentParameter) MarshalJSON() ([]byte, error) {
3335	type NoMethod GoogleCloudDialogflowCxV3IntentParameter
3336	raw := NoMethod(*s)
3337	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3338}
3339
3340// GoogleCloudDialogflowCxV3IntentTrainingPhrase: Represents an example
3341// that the agent is trained on to identify the intent.
3342type GoogleCloudDialogflowCxV3IntentTrainingPhrase struct {
3343	// Id: Output only. The unique identifier of the training phrase.
3344	Id string `json:"id,omitempty"`
3345
3346	// Parts: Required. The ordered list of training phrase parts. The parts
3347	// are concatenated in order to form the training phrase. Note: The API
3348	// does not automatically annotate training phrases like the Dialogflow
3349	// Console does. Note: Do not forget to include whitespace at part
3350	// boundaries, so the training phrase is well formatted when the parts
3351	// are concatenated. If the training phrase does not need to be
3352	// annotated with parameters, you just need a single part with only the
3353	// Part.text field set. If you want to annotate the training phrase, you
3354	// must create multiple parts, where the fields of each part are
3355	// populated in one of two ways: - `Part.text` is set to a part of the
3356	// phrase that has no parameters. - `Part.text` is set to a part of the
3357	// phrase that you want to annotate, and the `parameter_id` field is
3358	// set.
3359	Parts []*GoogleCloudDialogflowCxV3IntentTrainingPhrasePart `json:"parts,omitempty"`
3360
3361	// RepeatCount: Indicates how many times this example was added to the
3362	// intent.
3363	RepeatCount int64 `json:"repeatCount,omitempty"`
3364
3365	// ForceSendFields is a list of field names (e.g. "Id") to
3366	// unconditionally include in API requests. By default, fields with
3367	// empty or default values are omitted from API requests. However, any
3368	// non-pointer, non-interface field appearing in ForceSendFields will be
3369	// sent to the server regardless of whether the field is empty or not.
3370	// This may be used to include empty fields in Patch requests.
3371	ForceSendFields []string `json:"-"`
3372
3373	// NullFields is a list of field names (e.g. "Id") to include in API
3374	// requests with the JSON null value. By default, fields with empty
3375	// values are omitted from API requests. However, any field with an
3376	// empty value appearing in NullFields will be sent to the server as
3377	// null. It is an error if a field in this list has a non-empty value.
3378	// This may be used to include null fields in Patch requests.
3379	NullFields []string `json:"-"`
3380}
3381
3382func (s *GoogleCloudDialogflowCxV3IntentTrainingPhrase) MarshalJSON() ([]byte, error) {
3383	type NoMethod GoogleCloudDialogflowCxV3IntentTrainingPhrase
3384	raw := NoMethod(*s)
3385	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3386}
3387
3388// GoogleCloudDialogflowCxV3IntentTrainingPhrasePart: Represents a part
3389// of a training phrase.
3390type GoogleCloudDialogflowCxV3IntentTrainingPhrasePart struct {
3391	// ParameterId: The parameter used to annotate this part of the training
3392	// phrase. This field is required for annotated parts of the training
3393	// phrase.
3394	ParameterId string `json:"parameterId,omitempty"`
3395
3396	// Text: Required. The text for this part.
3397	Text string `json:"text,omitempty"`
3398
3399	// ForceSendFields is a list of field names (e.g. "ParameterId") to
3400	// unconditionally include in API requests. By default, fields with
3401	// empty or default values are omitted from API requests. However, any
3402	// non-pointer, non-interface field appearing in ForceSendFields will be
3403	// sent to the server regardless of whether the field is empty or not.
3404	// This may be used to include empty fields in Patch requests.
3405	ForceSendFields []string `json:"-"`
3406
3407	// NullFields is a list of field names (e.g. "ParameterId") to include
3408	// in API requests with the JSON null value. By default, fields with
3409	// empty values are omitted from API requests. However, any field with
3410	// an empty value appearing in NullFields will be sent to the server as
3411	// null. It is an error if a field in this list has a non-empty value.
3412	// This may be used to include null fields in Patch requests.
3413	NullFields []string `json:"-"`
3414}
3415
3416func (s *GoogleCloudDialogflowCxV3IntentTrainingPhrasePart) MarshalJSON() ([]byte, error) {
3417	type NoMethod GoogleCloudDialogflowCxV3IntentTrainingPhrasePart
3418	raw := NoMethod(*s)
3419	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3420}
3421
3422// GoogleCloudDialogflowCxV3ListAgentsResponse: The response message for
3423// Agents.ListAgents.
3424type GoogleCloudDialogflowCxV3ListAgentsResponse struct {
3425	// Agents: The list of agents. There will be a maximum number of items
3426	// returned based on the page_size field in the request.
3427	Agents []*GoogleCloudDialogflowCxV3Agent `json:"agents,omitempty"`
3428
3429	// NextPageToken: Token to retrieve the next page of results, or empty
3430	// if there are no more results in the list.
3431	NextPageToken string `json:"nextPageToken,omitempty"`
3432
3433	// ServerResponse contains the HTTP response code and headers from the
3434	// server.
3435	googleapi.ServerResponse `json:"-"`
3436
3437	// ForceSendFields is a list of field names (e.g. "Agents") to
3438	// unconditionally include in API requests. By default, fields with
3439	// empty or default values are omitted from API requests. However, any
3440	// non-pointer, non-interface field appearing in ForceSendFields will be
3441	// sent to the server regardless of whether the field is empty or not.
3442	// This may be used to include empty fields in Patch requests.
3443	ForceSendFields []string `json:"-"`
3444
3445	// NullFields is a list of field names (e.g. "Agents") to include in API
3446	// requests with the JSON null value. By default, fields with empty
3447	// values are omitted from API requests. However, any field with an
3448	// empty value appearing in NullFields will be sent to the server as
3449	// null. It is an error if a field in this list has a non-empty value.
3450	// This may be used to include null fields in Patch requests.
3451	NullFields []string `json:"-"`
3452}
3453
3454func (s *GoogleCloudDialogflowCxV3ListAgentsResponse) MarshalJSON() ([]byte, error) {
3455	type NoMethod GoogleCloudDialogflowCxV3ListAgentsResponse
3456	raw := NoMethod(*s)
3457	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3458}
3459
3460// GoogleCloudDialogflowCxV3ListContinuousTestResultsResponse: The
3461// response message for Environments.ListTestCaseResults.
3462type GoogleCloudDialogflowCxV3ListContinuousTestResultsResponse struct {
3463	// ContinuousTestResults: The list of continuous test results.
3464	ContinuousTestResults []*GoogleCloudDialogflowCxV3ContinuousTestResult `json:"continuousTestResults,omitempty"`
3465
3466	// NextPageToken: Token to retrieve the next page of results, or empty
3467	// if there are no more results in the list.
3468	NextPageToken string `json:"nextPageToken,omitempty"`
3469
3470	// ServerResponse contains the HTTP response code and headers from the
3471	// server.
3472	googleapi.ServerResponse `json:"-"`
3473
3474	// ForceSendFields is a list of field names (e.g.
3475	// "ContinuousTestResults") to unconditionally include in API requests.
3476	// By default, fields with empty or default values are omitted from API
3477	// requests. However, any non-pointer, non-interface field appearing in
3478	// ForceSendFields will be sent to the server regardless of whether the
3479	// field is empty or not. This may be used to include empty fields in
3480	// Patch requests.
3481	ForceSendFields []string `json:"-"`
3482
3483	// NullFields is a list of field names (e.g. "ContinuousTestResults") to
3484	// include in API requests with the JSON null value. By default, fields
3485	// with empty values are omitted from API requests. However, any field
3486	// with an empty value appearing in NullFields will be sent to the
3487	// server as null. It is an error if a field in this list has a
3488	// non-empty value. This may be used to include null fields in Patch
3489	// requests.
3490	NullFields []string `json:"-"`
3491}
3492
3493func (s *GoogleCloudDialogflowCxV3ListContinuousTestResultsResponse) MarshalJSON() ([]byte, error) {
3494	type NoMethod GoogleCloudDialogflowCxV3ListContinuousTestResultsResponse
3495	raw := NoMethod(*s)
3496	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3497}
3498
3499// GoogleCloudDialogflowCxV3ListEntityTypesResponse: The response
3500// message for EntityTypes.ListEntityTypes.
3501type GoogleCloudDialogflowCxV3ListEntityTypesResponse struct {
3502	// EntityTypes: The list of entity types. There will be a maximum number
3503	// of items returned based on the page_size field in the request.
3504	EntityTypes []*GoogleCloudDialogflowCxV3EntityType `json:"entityTypes,omitempty"`
3505
3506	// NextPageToken: Token to retrieve the next page of results, or empty
3507	// if there are no more results in the list.
3508	NextPageToken string `json:"nextPageToken,omitempty"`
3509
3510	// ServerResponse contains the HTTP response code and headers from the
3511	// server.
3512	googleapi.ServerResponse `json:"-"`
3513
3514	// ForceSendFields is a list of field names (e.g. "EntityTypes") to
3515	// unconditionally include in API requests. By default, fields with
3516	// empty or default values are omitted from API requests. However, any
3517	// non-pointer, non-interface field appearing in ForceSendFields will be
3518	// sent to the server regardless of whether the field is empty or not.
3519	// This may be used to include empty fields in Patch requests.
3520	ForceSendFields []string `json:"-"`
3521
3522	// NullFields is a list of field names (e.g. "EntityTypes") to include
3523	// in API requests with the JSON null value. By default, fields with
3524	// empty values are omitted from API requests. However, any field with
3525	// an empty value appearing in NullFields will be sent to the server as
3526	// null. It is an error if a field in this list has a non-empty value.
3527	// This may be used to include null fields in Patch requests.
3528	NullFields []string `json:"-"`
3529}
3530
3531func (s *GoogleCloudDialogflowCxV3ListEntityTypesResponse) MarshalJSON() ([]byte, error) {
3532	type NoMethod GoogleCloudDialogflowCxV3ListEntityTypesResponse
3533	raw := NoMethod(*s)
3534	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3535}
3536
3537// GoogleCloudDialogflowCxV3ListEnvironmentsResponse: The response
3538// message for Environments.ListEnvironments.
3539type GoogleCloudDialogflowCxV3ListEnvironmentsResponse struct {
3540	// Environments: The list of environments. There will be a maximum
3541	// number of items returned based on the page_size field in the request.
3542	// The list may in some cases be empty or contain fewer entries than
3543	// page_size even if this isn't the last page.
3544	Environments []*GoogleCloudDialogflowCxV3Environment `json:"environments,omitempty"`
3545
3546	// NextPageToken: Token to retrieve the next page of results, or empty
3547	// if there are no more results in the list.
3548	NextPageToken string `json:"nextPageToken,omitempty"`
3549
3550	// ServerResponse contains the HTTP response code and headers from the
3551	// server.
3552	googleapi.ServerResponse `json:"-"`
3553
3554	// ForceSendFields is a list of field names (e.g. "Environments") to
3555	// unconditionally include in API requests. By default, fields with
3556	// empty or default values are omitted from API requests. However, any
3557	// non-pointer, non-interface field appearing in ForceSendFields will be
3558	// sent to the server regardless of whether the field is empty or not.
3559	// This may be used to include empty fields in Patch requests.
3560	ForceSendFields []string `json:"-"`
3561
3562	// NullFields is a list of field names (e.g. "Environments") to include
3563	// in API requests with the JSON null value. By default, fields with
3564	// empty values are omitted from API requests. However, any field with
3565	// an empty value appearing in NullFields will be sent to the server as
3566	// null. It is an error if a field in this list has a non-empty value.
3567	// This may be used to include null fields in Patch requests.
3568	NullFields []string `json:"-"`
3569}
3570
3571func (s *GoogleCloudDialogflowCxV3ListEnvironmentsResponse) MarshalJSON() ([]byte, error) {
3572	type NoMethod GoogleCloudDialogflowCxV3ListEnvironmentsResponse
3573	raw := NoMethod(*s)
3574	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3575}
3576
3577// GoogleCloudDialogflowCxV3ListExperimentsResponse: The response
3578// message for Experiments.ListExperiments.
3579type GoogleCloudDialogflowCxV3ListExperimentsResponse struct {
3580	// Experiments: The list of experiments. There will be a maximum number
3581	// of items returned based on the page_size field in the request. The
3582	// list may in some cases be empty or contain fewer entries than
3583	// page_size even if this isn't the last page.
3584	Experiments []*GoogleCloudDialogflowCxV3Experiment `json:"experiments,omitempty"`
3585
3586	// NextPageToken: Token to retrieve the next page of results, or empty
3587	// if there are no more results in the list.
3588	NextPageToken string `json:"nextPageToken,omitempty"`
3589
3590	// ServerResponse contains the HTTP response code and headers from the
3591	// server.
3592	googleapi.ServerResponse `json:"-"`
3593
3594	// ForceSendFields is a list of field names (e.g. "Experiments") to
3595	// unconditionally include in API requests. By default, fields with
3596	// empty or default values are omitted from API requests. However, any
3597	// non-pointer, non-interface field appearing in ForceSendFields will be
3598	// sent to the server regardless of whether the field is empty or not.
3599	// This may be used to include empty fields in Patch requests.
3600	ForceSendFields []string `json:"-"`
3601
3602	// NullFields is a list of field names (e.g. "Experiments") to include
3603	// in API requests with the JSON null value. By default, fields with
3604	// empty values are omitted from API requests. However, any field with
3605	// an empty value appearing in NullFields will be sent to the server as
3606	// null. It is an error if a field in this list has a non-empty value.
3607	// This may be used to include null fields in Patch requests.
3608	NullFields []string `json:"-"`
3609}
3610
3611func (s *GoogleCloudDialogflowCxV3ListExperimentsResponse) MarshalJSON() ([]byte, error) {
3612	type NoMethod GoogleCloudDialogflowCxV3ListExperimentsResponse
3613	raw := NoMethod(*s)
3614	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3615}
3616
3617// GoogleCloudDialogflowCxV3ListFlowsResponse: The response message for
3618// Flows.ListFlows.
3619type GoogleCloudDialogflowCxV3ListFlowsResponse struct {
3620	// Flows: The list of flows. There will be a maximum number of items
3621	// returned based on the page_size field in the request.
3622	Flows []*GoogleCloudDialogflowCxV3Flow `json:"flows,omitempty"`
3623
3624	// NextPageToken: Token to retrieve the next page of results, or empty
3625	// if there are no more results in the list.
3626	NextPageToken string `json:"nextPageToken,omitempty"`
3627
3628	// ServerResponse contains the HTTP response code and headers from the
3629	// server.
3630	googleapi.ServerResponse `json:"-"`
3631
3632	// ForceSendFields is a list of field names (e.g. "Flows") to
3633	// unconditionally include in API requests. By default, fields with
3634	// empty or default values are omitted from API requests. However, any
3635	// non-pointer, non-interface field appearing in ForceSendFields will be
3636	// sent to the server regardless of whether the field is empty or not.
3637	// This may be used to include empty fields in Patch requests.
3638	ForceSendFields []string `json:"-"`
3639
3640	// NullFields is a list of field names (e.g. "Flows") to include in API
3641	// requests with the JSON null value. By default, fields with empty
3642	// values are omitted from API requests. However, any field with an
3643	// empty value appearing in NullFields will be sent to the server as
3644	// null. It is an error if a field in this list has a non-empty value.
3645	// This may be used to include null fields in Patch requests.
3646	NullFields []string `json:"-"`
3647}
3648
3649func (s *GoogleCloudDialogflowCxV3ListFlowsResponse) MarshalJSON() ([]byte, error) {
3650	type NoMethod GoogleCloudDialogflowCxV3ListFlowsResponse
3651	raw := NoMethod(*s)
3652	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3653}
3654
3655// GoogleCloudDialogflowCxV3ListIntentsResponse: The response message
3656// for Intents.ListIntents.
3657type GoogleCloudDialogflowCxV3ListIntentsResponse struct {
3658	// Intents: The list of intents. There will be a maximum number of items
3659	// returned based on the page_size field in the request.
3660	Intents []*GoogleCloudDialogflowCxV3Intent `json:"intents,omitempty"`
3661
3662	// NextPageToken: Token to retrieve the next page of results, or empty
3663	// if there are no more results in the list.
3664	NextPageToken string `json:"nextPageToken,omitempty"`
3665
3666	// ServerResponse contains the HTTP response code and headers from the
3667	// server.
3668	googleapi.ServerResponse `json:"-"`
3669
3670	// ForceSendFields is a list of field names (e.g. "Intents") to
3671	// unconditionally include in API requests. By default, fields with
3672	// empty or default values are omitted from API requests. However, any
3673	// non-pointer, non-interface field appearing in ForceSendFields will be
3674	// sent to the server regardless of whether the field is empty or not.
3675	// This may be used to include empty fields in Patch requests.
3676	ForceSendFields []string `json:"-"`
3677
3678	// NullFields is a list of field names (e.g. "Intents") to include in
3679	// API requests with the JSON null value. By default, fields with empty
3680	// values are omitted from API requests. However, any field with an
3681	// empty value appearing in NullFields will be sent to the server as
3682	// null. It is an error if a field in this list has a non-empty value.
3683	// This may be used to include null fields in Patch requests.
3684	NullFields []string `json:"-"`
3685}
3686
3687func (s *GoogleCloudDialogflowCxV3ListIntentsResponse) MarshalJSON() ([]byte, error) {
3688	type NoMethod GoogleCloudDialogflowCxV3ListIntentsResponse
3689	raw := NoMethod(*s)
3690	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3691}
3692
3693// GoogleCloudDialogflowCxV3ListPagesResponse: The response message for
3694// Pages.ListPages.
3695type GoogleCloudDialogflowCxV3ListPagesResponse struct {
3696	// NextPageToken: Token to retrieve the next page of results, or empty
3697	// if there are no more results in the list.
3698	NextPageToken string `json:"nextPageToken,omitempty"`
3699
3700	// Pages: The list of pages. There will be a maximum number of items
3701	// returned based on the page_size field in the request.
3702	Pages []*GoogleCloudDialogflowCxV3Page `json:"pages,omitempty"`
3703
3704	// ServerResponse contains the HTTP response code and headers from the
3705	// server.
3706	googleapi.ServerResponse `json:"-"`
3707
3708	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
3709	// unconditionally include in API requests. By default, fields with
3710	// empty or default values are omitted from API requests. However, any
3711	// non-pointer, non-interface field appearing in ForceSendFields will be
3712	// sent to the server regardless of whether the field is empty or not.
3713	// This may be used to include empty fields in Patch requests.
3714	ForceSendFields []string `json:"-"`
3715
3716	// NullFields is a list of field names (e.g. "NextPageToken") to include
3717	// in API requests with the JSON null value. By default, fields with
3718	// empty values are omitted from API requests. However, any field with
3719	// an empty value appearing in NullFields will be sent to the server as
3720	// null. It is an error if a field in this list has a non-empty value.
3721	// This may be used to include null fields in Patch requests.
3722	NullFields []string `json:"-"`
3723}
3724
3725func (s *GoogleCloudDialogflowCxV3ListPagesResponse) MarshalJSON() ([]byte, error) {
3726	type NoMethod GoogleCloudDialogflowCxV3ListPagesResponse
3727	raw := NoMethod(*s)
3728	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3729}
3730
3731// GoogleCloudDialogflowCxV3ListSecuritySettingsResponse: The response
3732// message for SecuritySettings.ListSecuritySettings.
3733type GoogleCloudDialogflowCxV3ListSecuritySettingsResponse struct {
3734	// NextPageToken: Token to retrieve the next page of results, or empty
3735	// if there are no more results in the list.
3736	NextPageToken string `json:"nextPageToken,omitempty"`
3737
3738	// SecuritySettings: The list of security settings.
3739	SecuritySettings []*GoogleCloudDialogflowCxV3SecuritySettings `json:"securitySettings,omitempty"`
3740
3741	// ServerResponse contains the HTTP response code and headers from the
3742	// server.
3743	googleapi.ServerResponse `json:"-"`
3744
3745	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
3746	// unconditionally include in API requests. By default, fields with
3747	// empty or default values are omitted from API requests. However, any
3748	// non-pointer, non-interface field appearing in ForceSendFields will be
3749	// sent to the server regardless of whether the field is empty or not.
3750	// This may be used to include empty fields in Patch requests.
3751	ForceSendFields []string `json:"-"`
3752
3753	// NullFields is a list of field names (e.g. "NextPageToken") to include
3754	// in API requests with the JSON null value. By default, fields with
3755	// empty values are omitted from API requests. However, any field with
3756	// an empty value appearing in NullFields will be sent to the server as
3757	// null. It is an error if a field in this list has a non-empty value.
3758	// This may be used to include null fields in Patch requests.
3759	NullFields []string `json:"-"`
3760}
3761
3762func (s *GoogleCloudDialogflowCxV3ListSecuritySettingsResponse) MarshalJSON() ([]byte, error) {
3763	type NoMethod GoogleCloudDialogflowCxV3ListSecuritySettingsResponse
3764	raw := NoMethod(*s)
3765	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3766}
3767
3768// GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse: The response
3769// message for SessionEntityTypes.ListSessionEntityTypes.
3770type GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse struct {
3771	// NextPageToken: Token to retrieve the next page of results, or empty
3772	// if there are no more results in the list.
3773	NextPageToken string `json:"nextPageToken,omitempty"`
3774
3775	// SessionEntityTypes: The list of session entity types. There will be a
3776	// maximum number of items returned based on the page_size field in the
3777	// request.
3778	SessionEntityTypes []*GoogleCloudDialogflowCxV3SessionEntityType `json:"sessionEntityTypes,omitempty"`
3779
3780	// ServerResponse contains the HTTP response code and headers from the
3781	// server.
3782	googleapi.ServerResponse `json:"-"`
3783
3784	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
3785	// unconditionally include in API requests. By default, fields with
3786	// empty or default values are omitted from API requests. However, any
3787	// non-pointer, non-interface field appearing in ForceSendFields will be
3788	// sent to the server regardless of whether the field is empty or not.
3789	// This may be used to include empty fields in Patch requests.
3790	ForceSendFields []string `json:"-"`
3791
3792	// NullFields is a list of field names (e.g. "NextPageToken") to include
3793	// in API requests with the JSON null value. By default, fields with
3794	// empty values are omitted from API requests. However, any field with
3795	// an empty value appearing in NullFields will be sent to the server as
3796	// null. It is an error if a field in this list has a non-empty value.
3797	// This may be used to include null fields in Patch requests.
3798	NullFields []string `json:"-"`
3799}
3800
3801func (s *GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse) MarshalJSON() ([]byte, error) {
3802	type NoMethod GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse
3803	raw := NoMethod(*s)
3804	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3805}
3806
3807// GoogleCloudDialogflowCxV3ListTestCaseResultsResponse: The response
3808// message for TestCases.ListTestCaseResults.
3809type GoogleCloudDialogflowCxV3ListTestCaseResultsResponse struct {
3810	// NextPageToken: Token to retrieve the next page of results, or empty
3811	// if there are no more results in the list.
3812	NextPageToken string `json:"nextPageToken,omitempty"`
3813
3814	// TestCaseResults: The list of test case results.
3815	TestCaseResults []*GoogleCloudDialogflowCxV3TestCaseResult `json:"testCaseResults,omitempty"`
3816
3817	// ServerResponse contains the HTTP response code and headers from the
3818	// server.
3819	googleapi.ServerResponse `json:"-"`
3820
3821	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
3822	// unconditionally include in API requests. By default, fields with
3823	// empty or default values are omitted from API requests. However, any
3824	// non-pointer, non-interface field appearing in ForceSendFields will be
3825	// sent to the server regardless of whether the field is empty or not.
3826	// This may be used to include empty fields in Patch requests.
3827	ForceSendFields []string `json:"-"`
3828
3829	// NullFields is a list of field names (e.g. "NextPageToken") to include
3830	// in API requests with the JSON null value. By default, fields with
3831	// empty values are omitted from API requests. However, any field with
3832	// an empty value appearing in NullFields will be sent to the server as
3833	// null. It is an error if a field in this list has a non-empty value.
3834	// This may be used to include null fields in Patch requests.
3835	NullFields []string `json:"-"`
3836}
3837
3838func (s *GoogleCloudDialogflowCxV3ListTestCaseResultsResponse) MarshalJSON() ([]byte, error) {
3839	type NoMethod GoogleCloudDialogflowCxV3ListTestCaseResultsResponse
3840	raw := NoMethod(*s)
3841	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3842}
3843
3844// GoogleCloudDialogflowCxV3ListTestCasesResponse: The response message
3845// for TestCases.ListTestCases.
3846type GoogleCloudDialogflowCxV3ListTestCasesResponse struct {
3847	// NextPageToken: Token to retrieve the next page of results, or empty
3848	// if there are no more results in the list.
3849	NextPageToken string `json:"nextPageToken,omitempty"`
3850
3851	// TestCases: The list of test cases. There will be a maximum number of
3852	// items returned based on the page_size field in the request.
3853	TestCases []*GoogleCloudDialogflowCxV3TestCase `json:"testCases,omitempty"`
3854
3855	// ServerResponse contains the HTTP response code and headers from the
3856	// server.
3857	googleapi.ServerResponse `json:"-"`
3858
3859	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
3860	// unconditionally include in API requests. By default, fields with
3861	// empty or default values are omitted from API requests. However, any
3862	// non-pointer, non-interface field appearing in ForceSendFields will be
3863	// sent to the server regardless of whether the field is empty or not.
3864	// This may be used to include empty fields in Patch requests.
3865	ForceSendFields []string `json:"-"`
3866
3867	// NullFields is a list of field names (e.g. "NextPageToken") to include
3868	// in API requests with the JSON null value. By default, fields with
3869	// empty values are omitted from API requests. However, any field with
3870	// an empty value appearing in NullFields will be sent to the server as
3871	// null. It is an error if a field in this list has a non-empty value.
3872	// This may be used to include null fields in Patch requests.
3873	NullFields []string `json:"-"`
3874}
3875
3876func (s *GoogleCloudDialogflowCxV3ListTestCasesResponse) MarshalJSON() ([]byte, error) {
3877	type NoMethod GoogleCloudDialogflowCxV3ListTestCasesResponse
3878	raw := NoMethod(*s)
3879	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3880}
3881
3882// GoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse: The
3883// response message for TransitionRouteGroups.ListTransitionRouteGroups.
3884type GoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse struct {
3885	// NextPageToken: Token to retrieve the next page of results, or empty
3886	// if there are no more results in the list.
3887	NextPageToken string `json:"nextPageToken,omitempty"`
3888
3889	// TransitionRouteGroups: The list of transition route groups. There
3890	// will be a maximum number of items returned based on the page_size
3891	// field in the request. The list may in some cases be empty or contain
3892	// fewer entries than page_size even if this isn't the last page.
3893	TransitionRouteGroups []*GoogleCloudDialogflowCxV3TransitionRouteGroup `json:"transitionRouteGroups,omitempty"`
3894
3895	// ServerResponse contains the HTTP response code and headers from the
3896	// server.
3897	googleapi.ServerResponse `json:"-"`
3898
3899	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
3900	// unconditionally include in API requests. By default, fields with
3901	// empty or default values are omitted from API requests. However, any
3902	// non-pointer, non-interface field appearing in ForceSendFields will be
3903	// sent to the server regardless of whether the field is empty or not.
3904	// This may be used to include empty fields in Patch requests.
3905	ForceSendFields []string `json:"-"`
3906
3907	// NullFields is a list of field names (e.g. "NextPageToken") to include
3908	// in API requests with the JSON null value. By default, fields with
3909	// empty values are omitted from API requests. However, any field with
3910	// an empty value appearing in NullFields will be sent to the server as
3911	// null. It is an error if a field in this list has a non-empty value.
3912	// This may be used to include null fields in Patch requests.
3913	NullFields []string `json:"-"`
3914}
3915
3916func (s *GoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse) MarshalJSON() ([]byte, error) {
3917	type NoMethod GoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse
3918	raw := NoMethod(*s)
3919	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3920}
3921
3922// GoogleCloudDialogflowCxV3ListVersionsResponse: The response message
3923// for Versions.ListVersions.
3924type GoogleCloudDialogflowCxV3ListVersionsResponse struct {
3925	// NextPageToken: Token to retrieve the next page of results, or empty
3926	// if there are no more results in the list.
3927	NextPageToken string `json:"nextPageToken,omitempty"`
3928
3929	// Versions: A list of versions. There will be a maximum number of items
3930	// returned based on the page_size field in the request. The list may in
3931	// some cases be empty or contain fewer entries than page_size even if
3932	// this isn't the last page.
3933	Versions []*GoogleCloudDialogflowCxV3Version `json:"versions,omitempty"`
3934
3935	// ServerResponse contains the HTTP response code and headers from the
3936	// server.
3937	googleapi.ServerResponse `json:"-"`
3938
3939	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
3940	// unconditionally include in API requests. By default, fields with
3941	// empty or default values are omitted from API requests. However, any
3942	// non-pointer, non-interface field appearing in ForceSendFields will be
3943	// sent to the server regardless of whether the field is empty or not.
3944	// This may be used to include empty fields in Patch requests.
3945	ForceSendFields []string `json:"-"`
3946
3947	// NullFields is a list of field names (e.g. "NextPageToken") to include
3948	// in API requests with the JSON null value. By default, fields with
3949	// empty values are omitted from API requests. However, any field with
3950	// an empty value appearing in NullFields will be sent to the server as
3951	// null. It is an error if a field in this list has a non-empty value.
3952	// This may be used to include null fields in Patch requests.
3953	NullFields []string `json:"-"`
3954}
3955
3956func (s *GoogleCloudDialogflowCxV3ListVersionsResponse) MarshalJSON() ([]byte, error) {
3957	type NoMethod GoogleCloudDialogflowCxV3ListVersionsResponse
3958	raw := NoMethod(*s)
3959	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3960}
3961
3962// GoogleCloudDialogflowCxV3ListWebhooksResponse: The response message
3963// for Webhooks.ListWebhooks.
3964type GoogleCloudDialogflowCxV3ListWebhooksResponse struct {
3965	// NextPageToken: Token to retrieve the next page of results, or empty
3966	// if there are no more results in the list.
3967	NextPageToken string `json:"nextPageToken,omitempty"`
3968
3969	// Webhooks: The list of webhooks. There will be a maximum number of
3970	// items returned based on the page_size field in the request.
3971	Webhooks []*GoogleCloudDialogflowCxV3Webhook `json:"webhooks,omitempty"`
3972
3973	// ServerResponse contains the HTTP response code and headers from the
3974	// server.
3975	googleapi.ServerResponse `json:"-"`
3976
3977	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
3978	// unconditionally include in API requests. By default, fields with
3979	// empty or default values are omitted from API requests. However, any
3980	// non-pointer, non-interface field appearing in ForceSendFields will be
3981	// sent to the server regardless of whether the field is empty or not.
3982	// This may be used to include empty fields in Patch requests.
3983	ForceSendFields []string `json:"-"`
3984
3985	// NullFields is a list of field names (e.g. "NextPageToken") to include
3986	// in API requests with the JSON null value. By default, fields with
3987	// empty values are omitted from API requests. However, any field with
3988	// an empty value appearing in NullFields will be sent to the server as
3989	// null. It is an error if a field in this list has a non-empty value.
3990	// This may be used to include null fields in Patch requests.
3991	NullFields []string `json:"-"`
3992}
3993
3994func (s *GoogleCloudDialogflowCxV3ListWebhooksResponse) MarshalJSON() ([]byte, error) {
3995	type NoMethod GoogleCloudDialogflowCxV3ListWebhooksResponse
3996	raw := NoMethod(*s)
3997	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3998}
3999
4000// GoogleCloudDialogflowCxV3LoadVersionRequest: The request message for
4001// Versions.LoadVersion.
4002type GoogleCloudDialogflowCxV3LoadVersionRequest struct {
4003	// AllowOverrideAgentResources: This field is used to prevent accidental
4004	// overwrite of other agent resources, which can potentially impact
4005	// other flow's behavior. If `allow_override_agent_resources` is false,
4006	// conflicted agent-level resources will not be overridden (i.e.
4007	// intents, entities, webhooks).
4008	AllowOverrideAgentResources bool `json:"allowOverrideAgentResources,omitempty"`
4009
4010	// ForceSendFields is a list of field names (e.g.
4011	// "AllowOverrideAgentResources") to unconditionally include in API
4012	// requests. By default, fields with empty or default values are omitted
4013	// from API requests. However, any non-pointer, non-interface field
4014	// appearing in ForceSendFields will be sent to the server regardless of
4015	// whether the field is empty or not. This may be used to include empty
4016	// fields in Patch requests.
4017	ForceSendFields []string `json:"-"`
4018
4019	// NullFields is a list of field names (e.g.
4020	// "AllowOverrideAgentResources") to include in API requests with the
4021	// JSON null value. By default, fields with empty values are omitted
4022	// from API requests. However, any field with an empty value appearing
4023	// in NullFields will be sent to the server as null. It is an error if a
4024	// field in this list has a non-empty value. This may be used to include
4025	// null fields in Patch requests.
4026	NullFields []string `json:"-"`
4027}
4028
4029func (s *GoogleCloudDialogflowCxV3LoadVersionRequest) MarshalJSON() ([]byte, error) {
4030	type NoMethod GoogleCloudDialogflowCxV3LoadVersionRequest
4031	raw := NoMethod(*s)
4032	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4033}
4034
4035// GoogleCloudDialogflowCxV3LookupEnvironmentHistoryResponse: The
4036// response message for Environments.LookupEnvironmentHistory.
4037type GoogleCloudDialogflowCxV3LookupEnvironmentHistoryResponse struct {
4038	// Environments: Represents a list of snapshots for an environment. Time
4039	// of the snapshots is stored in `update_time`.
4040	Environments []*GoogleCloudDialogflowCxV3Environment `json:"environments,omitempty"`
4041
4042	// NextPageToken: Token to retrieve the next page of results, or empty
4043	// if there are no more results in the list.
4044	NextPageToken string `json:"nextPageToken,omitempty"`
4045
4046	// ServerResponse contains the HTTP response code and headers from the
4047	// server.
4048	googleapi.ServerResponse `json:"-"`
4049
4050	// ForceSendFields is a list of field names (e.g. "Environments") to
4051	// unconditionally include in API requests. By default, fields with
4052	// empty or default values are omitted from API requests. However, any
4053	// non-pointer, non-interface field appearing in ForceSendFields will be
4054	// sent to the server regardless of whether the field is empty or not.
4055	// This may be used to include empty fields in Patch requests.
4056	ForceSendFields []string `json:"-"`
4057
4058	// NullFields is a list of field names (e.g. "Environments") to include
4059	// in API requests with the JSON null value. By default, fields with
4060	// empty values are omitted from API requests. However, any field with
4061	// an empty value appearing in NullFields will be sent to the server as
4062	// null. It is an error if a field in this list has a non-empty value.
4063	// This may be used to include null fields in Patch requests.
4064	NullFields []string `json:"-"`
4065}
4066
4067func (s *GoogleCloudDialogflowCxV3LookupEnvironmentHistoryResponse) MarshalJSON() ([]byte, error) {
4068	type NoMethod GoogleCloudDialogflowCxV3LookupEnvironmentHistoryResponse
4069	raw := NoMethod(*s)
4070	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4071}
4072
4073// GoogleCloudDialogflowCxV3Match: Represents one match result of
4074// MatchIntent.
4075type GoogleCloudDialogflowCxV3Match struct {
4076	// Confidence: The confidence of this match. Values range from 0.0
4077	// (completely uncertain) to 1.0 (completely certain). This value is for
4078	// informational purpose only and is only used to help match the best
4079	// intent within the classification threshold. This value may change for
4080	// the same end-user expression at any time due to a model retraining or
4081	// change in implementation.
4082	Confidence float64 `json:"confidence,omitempty"`
4083
4084	// Event: The event that matched the query. Only filled for `EVENT`
4085	// match type.
4086	Event string `json:"event,omitempty"`
4087
4088	// Intent: The Intent that matched the query. Some, not all fields are
4089	// filled in this message, including but not limited to: `name` and
4090	// `display_name`. Only filled for `INTENT` match type.
4091	Intent *GoogleCloudDialogflowCxV3Intent `json:"intent,omitempty"`
4092
4093	// MatchType: Type of this Match.
4094	//
4095	// Possible values:
4096	//   "MATCH_TYPE_UNSPECIFIED" - Not specified. Should never be used.
4097	//   "INTENT" - The query was matched to an intent.
4098	//   "DIRECT_INTENT" - The query directly triggered an intent.
4099	//   "PARAMETER_FILLING" - The query was used for parameter filling.
4100	//   "NO_MATCH" - No match was found for the query.
4101	//   "NO_INPUT" - Indicates an empty query.
4102	//   "EVENT" - The query directly triggered an event.
4103	MatchType string `json:"matchType,omitempty"`
4104
4105	// Parameters: The collection of parameters extracted from the query.
4106	// Depending on your protocol or client library language, this is a map,
4107	// associative array, symbol table, dictionary, or JSON object composed
4108	// of a collection of (MapKey, MapValue) pairs: - MapKey type: string -
4109	// MapKey value: parameter name - MapValue type: - If parameter's entity
4110	// type is a composite entity: map - Else: depending on parameter value
4111	// type, could be one of string, number, boolean, null, list or map -
4112	// MapValue value: - If parameter's entity type is a composite entity:
4113	// map from composite entity property names to property values - Else:
4114	// parameter value
4115	Parameters googleapi.RawMessage `json:"parameters,omitempty"`
4116
4117	// ResolvedInput: Final text input which was matched during MatchIntent.
4118	// This value can be different from original input sent in request
4119	// because of spelling correction or other processing.
4120	ResolvedInput string `json:"resolvedInput,omitempty"`
4121
4122	// ForceSendFields is a list of field names (e.g. "Confidence") to
4123	// unconditionally include in API requests. By default, fields with
4124	// empty or default values are omitted from API requests. However, any
4125	// non-pointer, non-interface field appearing in ForceSendFields will be
4126	// sent to the server regardless of whether the field is empty or not.
4127	// This may be used to include empty fields in Patch requests.
4128	ForceSendFields []string `json:"-"`
4129
4130	// NullFields is a list of field names (e.g. "Confidence") to include in
4131	// API requests with the JSON null value. By default, fields with empty
4132	// values are omitted from API requests. However, any field with an
4133	// empty value appearing in NullFields will be sent to the server as
4134	// null. It is an error if a field in this list has a non-empty value.
4135	// This may be used to include null fields in Patch requests.
4136	NullFields []string `json:"-"`
4137}
4138
4139func (s *GoogleCloudDialogflowCxV3Match) MarshalJSON() ([]byte, error) {
4140	type NoMethod GoogleCloudDialogflowCxV3Match
4141	raw := NoMethod(*s)
4142	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4143}
4144
4145func (s *GoogleCloudDialogflowCxV3Match) UnmarshalJSON(data []byte) error {
4146	type NoMethod GoogleCloudDialogflowCxV3Match
4147	var s1 struct {
4148		Confidence gensupport.JSONFloat64 `json:"confidence"`
4149		*NoMethod
4150	}
4151	s1.NoMethod = (*NoMethod)(s)
4152	if err := json.Unmarshal(data, &s1); err != nil {
4153		return err
4154	}
4155	s.Confidence = float64(s1.Confidence)
4156	return nil
4157}
4158
4159// GoogleCloudDialogflowCxV3MatchIntentRequest: Request of MatchIntent.
4160type GoogleCloudDialogflowCxV3MatchIntentRequest struct {
4161	// QueryInput: Required. The input specification.
4162	QueryInput *GoogleCloudDialogflowCxV3QueryInput `json:"queryInput,omitempty"`
4163
4164	// QueryParams: The parameters of this query.
4165	QueryParams *GoogleCloudDialogflowCxV3QueryParameters `json:"queryParams,omitempty"`
4166
4167	// ForceSendFields is a list of field names (e.g. "QueryInput") to
4168	// unconditionally include in API requests. By default, fields with
4169	// empty or default values are omitted from API requests. However, any
4170	// non-pointer, non-interface field appearing in ForceSendFields will be
4171	// sent to the server regardless of whether the field is empty or not.
4172	// This may be used to include empty fields in Patch requests.
4173	ForceSendFields []string `json:"-"`
4174
4175	// NullFields is a list of field names (e.g. "QueryInput") to include in
4176	// API requests with the JSON null value. By default, fields with empty
4177	// values are omitted from API requests. However, any field with an
4178	// empty value appearing in NullFields will be sent to the server as
4179	// null. It is an error if a field in this list has a non-empty value.
4180	// This may be used to include null fields in Patch requests.
4181	NullFields []string `json:"-"`
4182}
4183
4184func (s *GoogleCloudDialogflowCxV3MatchIntentRequest) MarshalJSON() ([]byte, error) {
4185	type NoMethod GoogleCloudDialogflowCxV3MatchIntentRequest
4186	raw := NoMethod(*s)
4187	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4188}
4189
4190// GoogleCloudDialogflowCxV3MatchIntentResponse: Response of
4191// MatchIntent.
4192type GoogleCloudDialogflowCxV3MatchIntentResponse struct {
4193	// CurrentPage: The current Page. Some, not all fields are filled in
4194	// this message, including but not limited to `name` and `display_name`.
4195	CurrentPage *GoogleCloudDialogflowCxV3Page `json:"currentPage,omitempty"`
4196
4197	// Matches: Match results, if more than one, ordered descendingly by the
4198	// confidence we have that the particular intent matches the query.
4199	Matches []*GoogleCloudDialogflowCxV3Match `json:"matches,omitempty"`
4200
4201	// Text: If natural language text was provided as input, this field will
4202	// contain a copy of the text.
4203	Text string `json:"text,omitempty"`
4204
4205	// Transcript: If natural language speech audio was provided as input,
4206	// this field will contain the transcript for the audio.
4207	Transcript string `json:"transcript,omitempty"`
4208
4209	// TriggerEvent: If an event was provided as input, this field will
4210	// contain a copy of the event name.
4211	TriggerEvent string `json:"triggerEvent,omitempty"`
4212
4213	// TriggerIntent: If an intent was provided as input, this field will
4214	// contain a copy of the intent identifier. Format:
4215	// `projects//locations//agents//intents/`.
4216	TriggerIntent string `json:"triggerIntent,omitempty"`
4217
4218	// ServerResponse contains the HTTP response code and headers from the
4219	// server.
4220	googleapi.ServerResponse `json:"-"`
4221
4222	// ForceSendFields is a list of field names (e.g. "CurrentPage") to
4223	// unconditionally include in API requests. By default, fields with
4224	// empty or default values are omitted from API requests. However, any
4225	// non-pointer, non-interface field appearing in ForceSendFields will be
4226	// sent to the server regardless of whether the field is empty or not.
4227	// This may be used to include empty fields in Patch requests.
4228	ForceSendFields []string `json:"-"`
4229
4230	// NullFields is a list of field names (e.g. "CurrentPage") to include
4231	// in API requests with the JSON null value. By default, fields with
4232	// empty values are omitted from API requests. However, any field with
4233	// an empty value appearing in NullFields will be sent to the server as
4234	// null. It is an error if a field in this list has a non-empty value.
4235	// This may be used to include null fields in Patch requests.
4236	NullFields []string `json:"-"`
4237}
4238
4239func (s *GoogleCloudDialogflowCxV3MatchIntentResponse) MarshalJSON() ([]byte, error) {
4240	type NoMethod GoogleCloudDialogflowCxV3MatchIntentResponse
4241	raw := NoMethod(*s)
4242	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4243}
4244
4245// GoogleCloudDialogflowCxV3NluSettings: Settings related to NLU.
4246type GoogleCloudDialogflowCxV3NluSettings struct {
4247	// ClassificationThreshold: To filter out false positive results and
4248	// still get variety in matched natural language inputs for your agent,
4249	// you can tune the machine learning classification threshold. If the
4250	// returned score value is less than the threshold value, then a
4251	// no-match event will be triggered. The score values range from 0.0
4252	// (completely uncertain) to 1.0 (completely certain). If set to 0.0,
4253	// the default of 0.3 is used.
4254	ClassificationThreshold float64 `json:"classificationThreshold,omitempty"`
4255
4256	// ModelTrainingMode: Indicates NLU model training mode.
4257	//
4258	// Possible values:
4259	//   "MODEL_TRAINING_MODE_UNSPECIFIED" - Not specified.
4260	// `MODEL_TRAINING_MODE_AUTOMATIC` will be used.
4261	//   "MODEL_TRAINING_MODE_AUTOMATIC" - NLU model training is
4262	// automatically triggered when a flow gets modified. User can also
4263	// manually trigger model training in this mode.
4264	//   "MODEL_TRAINING_MODE_MANUAL" - User needs to manually trigger NLU
4265	// model training. Best for large flows whose models take long time to
4266	// train.
4267	ModelTrainingMode string `json:"modelTrainingMode,omitempty"`
4268
4269	// ModelType: Indicates the type of NLU model.
4270	//
4271	// Possible values:
4272	//   "MODEL_TYPE_UNSPECIFIED" - Not specified. `MODEL_TYPE_STANDARD`
4273	// will be used.
4274	//   "MODEL_TYPE_STANDARD" - Use standard NLU model.
4275	//   "MODEL_TYPE_ADVANCED" - Use advanced NLU model.
4276	ModelType string `json:"modelType,omitempty"`
4277
4278	// ForceSendFields is a list of field names (e.g.
4279	// "ClassificationThreshold") to unconditionally include in API
4280	// requests. By default, fields with empty or default values are omitted
4281	// from API requests. However, any non-pointer, non-interface field
4282	// appearing in ForceSendFields will be sent to the server regardless of
4283	// whether the field is empty or not. This may be used to include empty
4284	// fields in Patch requests.
4285	ForceSendFields []string `json:"-"`
4286
4287	// NullFields is a list of field names (e.g. "ClassificationThreshold")
4288	// to include in API requests with the JSON null value. By default,
4289	// fields with empty values are omitted from API requests. However, any
4290	// field with an empty value appearing in NullFields will be sent to the
4291	// server as null. It is an error if a field in this list has a
4292	// non-empty value. This may be used to include null fields in Patch
4293	// requests.
4294	NullFields []string `json:"-"`
4295}
4296
4297func (s *GoogleCloudDialogflowCxV3NluSettings) MarshalJSON() ([]byte, error) {
4298	type NoMethod GoogleCloudDialogflowCxV3NluSettings
4299	raw := NoMethod(*s)
4300	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4301}
4302
4303func (s *GoogleCloudDialogflowCxV3NluSettings) UnmarshalJSON(data []byte) error {
4304	type NoMethod GoogleCloudDialogflowCxV3NluSettings
4305	var s1 struct {
4306		ClassificationThreshold gensupport.JSONFloat64 `json:"classificationThreshold"`
4307		*NoMethod
4308	}
4309	s1.NoMethod = (*NoMethod)(s)
4310	if err := json.Unmarshal(data, &s1); err != nil {
4311		return err
4312	}
4313	s.ClassificationThreshold = float64(s1.ClassificationThreshold)
4314	return nil
4315}
4316
4317// GoogleCloudDialogflowCxV3OutputAudioConfig: Instructs the speech
4318// synthesizer how to generate the output audio content.
4319type GoogleCloudDialogflowCxV3OutputAudioConfig struct {
4320	// AudioEncoding: Required. Audio encoding of the synthesized audio
4321	// content.
4322	//
4323	// Possible values:
4324	//   "OUTPUT_AUDIO_ENCODING_UNSPECIFIED" - Not specified.
4325	//   "OUTPUT_AUDIO_ENCODING_LINEAR_16" - Uncompressed 16-bit signed
4326	// little-endian samples (Linear PCM). Audio content returned as
4327	// LINEAR16 also contains a WAV header.
4328	//   "OUTPUT_AUDIO_ENCODING_MP3" - MP3 audio at 32kbps.
4329	//   "OUTPUT_AUDIO_ENCODING_MP3_64_KBPS" - MP3 audio at 64kbps.
4330	//   "OUTPUT_AUDIO_ENCODING_OGG_OPUS" - Opus encoded audio wrapped in an
4331	// ogg container. The result will be a file which can be played natively
4332	// on Android, and in browsers (at least Chrome and Firefox). The
4333	// quality of the encoding is considerably higher than MP3 while using
4334	// approximately the same bitrate.
4335	//   "OUTPUT_AUDIO_ENCODING_MULAW" - 8-bit samples that compand 14-bit
4336	// audio samples using G.711 PCMU/mu-law.
4337	AudioEncoding string `json:"audioEncoding,omitempty"`
4338
4339	// SampleRateHertz: Optional. The synthesis sample rate (in hertz) for
4340	// this audio. If not provided, then the synthesizer will use the
4341	// default sample rate based on the audio encoding. If this is different
4342	// from the voice's natural sample rate, then the synthesizer will honor
4343	// this request by converting to the desired sample rate (which might
4344	// result in worse audio quality).
4345	SampleRateHertz int64 `json:"sampleRateHertz,omitempty"`
4346
4347	// SynthesizeSpeechConfig: Optional. Configuration of how speech should
4348	// be synthesized.
4349	SynthesizeSpeechConfig *GoogleCloudDialogflowCxV3SynthesizeSpeechConfig `json:"synthesizeSpeechConfig,omitempty"`
4350
4351	// ForceSendFields is a list of field names (e.g. "AudioEncoding") to
4352	// unconditionally include in API requests. By default, fields with
4353	// empty or default values are omitted from API requests. However, any
4354	// non-pointer, non-interface field appearing in ForceSendFields will be
4355	// sent to the server regardless of whether the field is empty or not.
4356	// This may be used to include empty fields in Patch requests.
4357	ForceSendFields []string `json:"-"`
4358
4359	// NullFields is a list of field names (e.g. "AudioEncoding") to include
4360	// in API requests with the JSON null value. By default, fields with
4361	// empty values are omitted from API requests. However, any field with
4362	// an empty value appearing in NullFields will be sent to the server as
4363	// null. It is an error if a field in this list has a non-empty value.
4364	// This may be used to include null fields in Patch requests.
4365	NullFields []string `json:"-"`
4366}
4367
4368func (s *GoogleCloudDialogflowCxV3OutputAudioConfig) MarshalJSON() ([]byte, error) {
4369	type NoMethod GoogleCloudDialogflowCxV3OutputAudioConfig
4370	raw := NoMethod(*s)
4371	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4372}
4373
4374// GoogleCloudDialogflowCxV3Page: A Dialogflow CX conversation (session)
4375// can be described and visualized as a state machine. The states of a
4376// CX session are represented by pages. For each flow, you define many
4377// pages, where your combined pages can handle a complete conversation
4378// on the topics the flow is designed for. At any given moment, exactly
4379// one page is the current page, the current page is considered active,
4380// and the flow associated with that page is considered active. Every
4381// flow has a special start page. When a flow initially becomes active,
4382// the start page page becomes the current page. For each conversational
4383// turn, the current page will either stay the same or transition to
4384// another page. You configure each page to collect information from the
4385// end-user that is relevant for the conversational state represented by
4386// the page. For more information, see the Page guide
4387// (https://cloud.google.com/dialogflow/cx/docs/concept/page).
4388type GoogleCloudDialogflowCxV3Page struct {
4389	// DisplayName: Required. The human-readable name of the page, unique
4390	// within the agent.
4391	DisplayName string `json:"displayName,omitempty"`
4392
4393	// EntryFulfillment: The fulfillment to call when the session is
4394	// entering the page.
4395	EntryFulfillment *GoogleCloudDialogflowCxV3Fulfillment `json:"entryFulfillment,omitempty"`
4396
4397	// EventHandlers: Handlers associated with the page to handle events
4398	// such as webhook errors, no match or no input.
4399	EventHandlers []*GoogleCloudDialogflowCxV3EventHandler `json:"eventHandlers,omitempty"`
4400
4401	// Form: The form associated with the page, used for collecting
4402	// parameters relevant to the page.
4403	Form *GoogleCloudDialogflowCxV3Form `json:"form,omitempty"`
4404
4405	// Name: The unique identifier of the page. Required for the
4406	// Pages.UpdatePage method. Pages.CreatePage populates the name
4407	// automatically. Format: `projects//locations//agents//flows//pages/`.
4408	Name string `json:"name,omitempty"`
4409
4410	// TransitionRouteGroups: Ordered list of `TransitionRouteGroups`
4411	// associated with the page. Transition route groups must be unique
4412	// within a page. * If multiple transition routes within a page scope
4413	// refer to the same intent, then the precedence order is: page's
4414	// transition route -> page's transition route group -> flow's
4415	// transition routes. * If multiple transition route groups within a
4416	// page contain the same intent, then the first group in the ordered
4417	// list takes precedence.
4418	// Format:`projects//locations//agents//flows//transitionRouteGroups/`.
4419	TransitionRouteGroups []string `json:"transitionRouteGroups,omitempty"`
4420
4421	// TransitionRoutes: A list of transitions for the transition rules of
4422	// this page. They route the conversation to another page in the same
4423	// flow, or another flow. When we are in a certain page, the
4424	// TransitionRoutes are evalauted in the following order: *
4425	// TransitionRoutes defined in the page with intent specified. *
4426	// TransitionRoutes defined in the transition route groups with intent
4427	// specified. * TransitionRoutes defined in flow with intent specified.
4428	// * TransitionRoutes defined in the transition route groups with intent
4429	// specified. * TransitionRoutes defined in the page with only condition
4430	// specified. * TransitionRoutes defined in the transition route groups
4431	// with only condition specified.
4432	TransitionRoutes []*GoogleCloudDialogflowCxV3TransitionRoute `json:"transitionRoutes,omitempty"`
4433
4434	// ServerResponse contains the HTTP response code and headers from the
4435	// server.
4436	googleapi.ServerResponse `json:"-"`
4437
4438	// ForceSendFields is a list of field names (e.g. "DisplayName") to
4439	// unconditionally include in API requests. By default, fields with
4440	// empty or default values are omitted from API requests. However, any
4441	// non-pointer, non-interface field appearing in ForceSendFields will be
4442	// sent to the server regardless of whether the field is empty or not.
4443	// This may be used to include empty fields in Patch requests.
4444	ForceSendFields []string `json:"-"`
4445
4446	// NullFields is a list of field names (e.g. "DisplayName") to include
4447	// in API requests with the JSON null value. By default, fields with
4448	// empty values are omitted from API requests. However, any field with
4449	// an empty value appearing in NullFields will be sent to the server as
4450	// null. It is an error if a field in this list has a non-empty value.
4451	// This may be used to include null fields in Patch requests.
4452	NullFields []string `json:"-"`
4453}
4454
4455func (s *GoogleCloudDialogflowCxV3Page) MarshalJSON() ([]byte, error) {
4456	type NoMethod GoogleCloudDialogflowCxV3Page
4457	raw := NoMethod(*s)
4458	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4459}
4460
4461// GoogleCloudDialogflowCxV3PageInfo: Represents page information
4462// communicated to and from the webhook.
4463type GoogleCloudDialogflowCxV3PageInfo struct {
4464	// CurrentPage: Always present for WebhookRequest. Ignored for
4465	// WebhookResponse. The unique identifier of the current page. Format:
4466	// `projects//locations//agents//flows//pages/`.
4467	CurrentPage string `json:"currentPage,omitempty"`
4468
4469	// FormInfo: Optional for both WebhookRequest and WebhookResponse.
4470	// Information about the form.
4471	FormInfo *GoogleCloudDialogflowCxV3PageInfoFormInfo `json:"formInfo,omitempty"`
4472
4473	// ForceSendFields is a list of field names (e.g. "CurrentPage") to
4474	// unconditionally include in API requests. By default, fields with
4475	// empty or default values are omitted from API requests. However, any
4476	// non-pointer, non-interface field appearing in ForceSendFields will be
4477	// sent to the server regardless of whether the field is empty or not.
4478	// This may be used to include empty fields in Patch requests.
4479	ForceSendFields []string `json:"-"`
4480
4481	// NullFields is a list of field names (e.g. "CurrentPage") to include
4482	// in API requests with the JSON null value. By default, fields with
4483	// empty values are omitted from API requests. However, any field with
4484	// an empty value appearing in NullFields will be sent to the server as
4485	// null. It is an error if a field in this list has a non-empty value.
4486	// This may be used to include null fields in Patch requests.
4487	NullFields []string `json:"-"`
4488}
4489
4490func (s *GoogleCloudDialogflowCxV3PageInfo) MarshalJSON() ([]byte, error) {
4491	type NoMethod GoogleCloudDialogflowCxV3PageInfo
4492	raw := NoMethod(*s)
4493	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4494}
4495
4496// GoogleCloudDialogflowCxV3PageInfoFormInfo: Represents form
4497// information.
4498type GoogleCloudDialogflowCxV3PageInfoFormInfo struct {
4499	// ParameterInfo: Optional for both WebhookRequest and WebhookResponse.
4500	// The parameters contained in the form. Note that the webhook cannot
4501	// add or remove any form parameter.
4502	ParameterInfo []*GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo `json:"parameterInfo,omitempty"`
4503
4504	// ForceSendFields is a list of field names (e.g. "ParameterInfo") to
4505	// unconditionally include in API requests. By default, fields with
4506	// empty or default values are omitted from API requests. However, any
4507	// non-pointer, non-interface field appearing in ForceSendFields will be
4508	// sent to the server regardless of whether the field is empty or not.
4509	// This may be used to include empty fields in Patch requests.
4510	ForceSendFields []string `json:"-"`
4511
4512	// NullFields is a list of field names (e.g. "ParameterInfo") to include
4513	// in API requests with the JSON null value. By default, fields with
4514	// empty values are omitted from API requests. However, any field with
4515	// an empty value appearing in NullFields will be sent to the server as
4516	// null. It is an error if a field in this list has a non-empty value.
4517	// This may be used to include null fields in Patch requests.
4518	NullFields []string `json:"-"`
4519}
4520
4521func (s *GoogleCloudDialogflowCxV3PageInfoFormInfo) MarshalJSON() ([]byte, error) {
4522	type NoMethod GoogleCloudDialogflowCxV3PageInfoFormInfo
4523	raw := NoMethod(*s)
4524	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4525}
4526
4527// GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo: Represents
4528// parameter information.
4529type GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo struct {
4530	// DisplayName: Always present for WebhookRequest. Required for
4531	// WebhookResponse. The human-readable name of the parameter, unique
4532	// within the form. This field cannot be modified by the webhook.
4533	DisplayName string `json:"displayName,omitempty"`
4534
4535	// JustCollected: Optional for WebhookRequest. Ignored for
4536	// WebhookResponse. Indicates if the parameter value was just collected
4537	// on the last conversation turn.
4538	JustCollected bool `json:"justCollected,omitempty"`
4539
4540	// Required: Optional for both WebhookRequest and WebhookResponse.
4541	// Indicates whether the parameter is required. Optional parameters will
4542	// not trigger prompts; however, they are filled if the user specifies
4543	// them. Required parameters must be filled before form filling
4544	// concludes.
4545	Required bool `json:"required,omitempty"`
4546
4547	// State: Always present for WebhookRequest. Required for
4548	// WebhookResponse. The state of the parameter. This field can be set to
4549	// INVALID by the webhook to invalidate the parameter; other values set
4550	// by the webhook will be ignored.
4551	//
4552	// Possible values:
4553	//   "PARAMETER_STATE_UNSPECIFIED" - Not specified. This value should be
4554	// never used.
4555	//   "EMPTY" - Indicates that the parameter does not have a value.
4556	//   "INVALID" - Indicates that the parameter value is invalid. This
4557	// field can be used by the webhook to invalidate the parameter and ask
4558	// the server to collect it from the user again.
4559	//   "FILLED" - Indicates that the parameter has a value.
4560	State string `json:"state,omitempty"`
4561
4562	// Value: Optional for both WebhookRequest and WebhookResponse. The
4563	// value of the parameter. This field can be set by the webhook to
4564	// change the parameter value.
4565	Value interface{} `json:"value,omitempty"`
4566
4567	// ForceSendFields is a list of field names (e.g. "DisplayName") to
4568	// unconditionally include in API requests. By default, fields with
4569	// empty or default values are omitted from API requests. However, any
4570	// non-pointer, non-interface field appearing in ForceSendFields will be
4571	// sent to the server regardless of whether the field is empty or not.
4572	// This may be used to include empty fields in Patch requests.
4573	ForceSendFields []string `json:"-"`
4574
4575	// NullFields is a list of field names (e.g. "DisplayName") to include
4576	// in API requests with the JSON null value. By default, fields with
4577	// empty values are omitted from API requests. However, any field with
4578	// an empty value appearing in NullFields will be sent to the server as
4579	// null. It is an error if a field in this list has a non-empty value.
4580	// This may be used to include null fields in Patch requests.
4581	NullFields []string `json:"-"`
4582}
4583
4584func (s *GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo) MarshalJSON() ([]byte, error) {
4585	type NoMethod GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo
4586	raw := NoMethod(*s)
4587	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4588}
4589
4590// GoogleCloudDialogflowCxV3QueryInput: Represents the query input. It
4591// can contain one of: 1. A conversational query in the form of text. 2.
4592// An intent query that specifies which intent to trigger. 3. Natural
4593// language speech audio to be processed. 4. An event to be triggered.
4594type GoogleCloudDialogflowCxV3QueryInput struct {
4595	// Audio: The natural language speech audio to be processed.
4596	Audio *GoogleCloudDialogflowCxV3AudioInput `json:"audio,omitempty"`
4597
4598	// Dtmf: The DTMF event to be handled.
4599	Dtmf *GoogleCloudDialogflowCxV3DtmfInput `json:"dtmf,omitempty"`
4600
4601	// Event: The event to be triggered.
4602	Event *GoogleCloudDialogflowCxV3EventInput `json:"event,omitempty"`
4603
4604	// Intent: The intent to be triggered.
4605	Intent *GoogleCloudDialogflowCxV3IntentInput `json:"intent,omitempty"`
4606
4607	// LanguageCode: Required. The language of the input. See Language
4608	// Support
4609	// (https://cloud.google.com/dialogflow/cx/docs/reference/language) for
4610	// a list of the currently supported language codes. Note that queries
4611	// in the same session do not necessarily need to specify the same
4612	// language.
4613	LanguageCode string `json:"languageCode,omitempty"`
4614
4615	// Text: The natural language text to be processed.
4616	Text *GoogleCloudDialogflowCxV3TextInput `json:"text,omitempty"`
4617
4618	// ForceSendFields is a list of field names (e.g. "Audio") to
4619	// unconditionally include in API requests. By default, fields with
4620	// empty or default values are omitted from API requests. However, any
4621	// non-pointer, non-interface field appearing in ForceSendFields will be
4622	// sent to the server regardless of whether the field is empty or not.
4623	// This may be used to include empty fields in Patch requests.
4624	ForceSendFields []string `json:"-"`
4625
4626	// NullFields is a list of field names (e.g. "Audio") to include in API
4627	// requests with the JSON null value. By default, fields with empty
4628	// values are omitted from API requests. However, any field with an
4629	// empty value appearing in NullFields will be sent to the server as
4630	// null. It is an error if a field in this list has a non-empty value.
4631	// This may be used to include null fields in Patch requests.
4632	NullFields []string `json:"-"`
4633}
4634
4635func (s *GoogleCloudDialogflowCxV3QueryInput) MarshalJSON() ([]byte, error) {
4636	type NoMethod GoogleCloudDialogflowCxV3QueryInput
4637	raw := NoMethod(*s)
4638	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4639}
4640
4641// GoogleCloudDialogflowCxV3QueryParameters: Represents the parameters
4642// of a conversational query.
4643type GoogleCloudDialogflowCxV3QueryParameters struct {
4644	// AnalyzeQueryTextSentiment: Configures whether sentiment analysis
4645	// should be performed. If not provided, sentiment analysis is not
4646	// performed.
4647	AnalyzeQueryTextSentiment bool `json:"analyzeQueryTextSentiment,omitempty"`
4648
4649	// CurrentPage: The unique identifier of the page to override the
4650	// current page in the session. Format:
4651	// `projects//locations//agents//flows//pages/`. If `current_page` is
4652	// specified, the previous state of the session will be ignored by
4653	// Dialogflow, including the previous page and the previous session
4654	// parameters. In most cases, current_page and parameters should be
4655	// configured together to direct a session to a specific state.
4656	CurrentPage string `json:"currentPage,omitempty"`
4657
4658	// DisableWebhook: Whether to disable webhook calls for this request.
4659	DisableWebhook bool `json:"disableWebhook,omitempty"`
4660
4661	// FlowVersions: A list of flow versions to override for the request.
4662	// Format: `projects//locations//agents//flows//versions/`. If version 1
4663	// of flow X is included in this list, the traffic of flow X will go
4664	// through version 1 regardless of the version configuration in the
4665	// environment. Each flow can have at most one version specified in this
4666	// list.
4667	FlowVersions []string `json:"flowVersions,omitempty"`
4668
4669	// GeoLocation: The geo location of this conversational query.
4670	GeoLocation *GoogleTypeLatLng `json:"geoLocation,omitempty"`
4671
4672	// Parameters: Additional parameters to be put into session parameters.
4673	// To remove a parameter from the session, clients should explicitly set
4674	// the parameter value to null. You can reference the session parameters
4675	// in the agent with the following format: $session.params.parameter-id.
4676	// Depending on your protocol or client library language, this is a map,
4677	// associative array, symbol table, dictionary, or JSON object composed
4678	// of a collection of (MapKey, MapValue) pairs: - MapKey type: string -
4679	// MapKey value: parameter name - MapValue type: - If parameter's entity
4680	// type is a composite entity: map - Else: depending on parameter value
4681	// type, could be one of string, number, boolean, null, list or map -
4682	// MapValue value: - If parameter's entity type is a composite entity:
4683	// map from composite entity property names to property values - Else:
4684	// parameter value
4685	Parameters googleapi.RawMessage `json:"parameters,omitempty"`
4686
4687	// Payload: This field can be used to pass custom data into the webhook
4688	// associated with the agent. Arbitrary JSON objects are supported. Some
4689	// integrations that query a Dialogflow agent may provide additional
4690	// information in the payload. In particular, for the Dialogflow Phone
4691	// Gateway integration, this field has the form: ``` { "telephony": {
4692	// "caller_id": "+18558363987" } } ```
4693	Payload googleapi.RawMessage `json:"payload,omitempty"`
4694
4695	// SessionEntityTypes: Additional session entity types to replace or
4696	// extend developer entity types with. The entity synonyms apply to all
4697	// languages and persist for the session of this query.
4698	SessionEntityTypes []*GoogleCloudDialogflowCxV3SessionEntityType `json:"sessionEntityTypes,omitempty"`
4699
4700	// TimeZone: The time zone of this conversational query from the time
4701	// zone database (https://www.iana.org/time-zones), e.g.,
4702	// America/New_York, Europe/Paris. If not provided, the time zone
4703	// specified in the agent is used.
4704	TimeZone string `json:"timeZone,omitempty"`
4705
4706	// WebhookHeaders: This field can be used to pass HTTP headers for a
4707	// webhook call. These headers will be sent to webhook along with the
4708	// headers that have been configured through Dialogflow web console. The
4709	// headers defined within this field will overwrite the headers
4710	// configured through Dialogflow console if there is a conflict. Header
4711	// names are case-insensitive. Google's specified headers are not
4712	// allowed. Including: "Host", "Content-Length", "Connection", "From",
4713	// "User-Agent", "Accept-Encoding", "If-Modified-Since",
4714	// "If-None-Match", "X-Forwarded-For", etc.
4715	WebhookHeaders map[string]string `json:"webhookHeaders,omitempty"`
4716
4717	// ForceSendFields is a list of field names (e.g.
4718	// "AnalyzeQueryTextSentiment") to unconditionally include in API
4719	// requests. By default, fields with empty or default values are omitted
4720	// from API requests. However, any non-pointer, non-interface field
4721	// appearing in ForceSendFields will be sent to the server regardless of
4722	// whether the field is empty or not. This may be used to include empty
4723	// fields in Patch requests.
4724	ForceSendFields []string `json:"-"`
4725
4726	// NullFields is a list of field names (e.g.
4727	// "AnalyzeQueryTextSentiment") to include in API requests with the JSON
4728	// null value. By default, fields with empty values are omitted from API
4729	// requests. However, any field with an empty value appearing in
4730	// NullFields will be sent to the server as null. It is an error if a
4731	// field in this list has a non-empty value. This may be used to include
4732	// null fields in Patch requests.
4733	NullFields []string `json:"-"`
4734}
4735
4736func (s *GoogleCloudDialogflowCxV3QueryParameters) MarshalJSON() ([]byte, error) {
4737	type NoMethod GoogleCloudDialogflowCxV3QueryParameters
4738	raw := NoMethod(*s)
4739	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4740}
4741
4742// GoogleCloudDialogflowCxV3QueryResult: Represents the result of a
4743// conversational query.
4744type GoogleCloudDialogflowCxV3QueryResult struct {
4745	// CurrentPage: The current Page. Some, not all fields are filled in
4746	// this message, including but not limited to `name` and `display_name`.
4747	CurrentPage *GoogleCloudDialogflowCxV3Page `json:"currentPage,omitempty"`
4748
4749	// DiagnosticInfo: The free-form diagnostic info. For example, this
4750	// field could contain webhook call latency. The string keys of the
4751	// Struct's fields map can change without notice.
4752	DiagnosticInfo googleapi.RawMessage `json:"diagnosticInfo,omitempty"`
4753
4754	// Intent: The Intent that matched the conversational query. Some, not
4755	// all fields are filled in this message, including but not limited to:
4756	// `name` and `display_name`. This field is deprecated, please use
4757	// QueryResult.match instead.
4758	Intent *GoogleCloudDialogflowCxV3Intent `json:"intent,omitempty"`
4759
4760	// IntentDetectionConfidence: The intent detection confidence. Values
4761	// range from 0.0 (completely uncertain) to 1.0 (completely certain).
4762	// This value is for informational purpose only and is only used to help
4763	// match the best intent within the classification threshold. This value
4764	// may change for the same end-user expression at any time due to a
4765	// model retraining or change in implementation. This field is
4766	// deprecated, please use QueryResult.match instead.
4767	IntentDetectionConfidence float64 `json:"intentDetectionConfidence,omitempty"`
4768
4769	// LanguageCode: The language that was triggered during intent
4770	// detection. See Language Support
4771	// (https://cloud.google.com/dialogflow/cx/docs/reference/language) for
4772	// a list of the currently supported language codes.
4773	LanguageCode string `json:"languageCode,omitempty"`
4774
4775	// Match: Intent match result, could be an intent or an event.
4776	Match *GoogleCloudDialogflowCxV3Match `json:"match,omitempty"`
4777
4778	// Parameters: The collected session parameters. Depending on your
4779	// protocol or client library language, this is a map, associative
4780	// array, symbol table, dictionary, or JSON object composed of a
4781	// collection of (MapKey, MapValue) pairs: - MapKey type: string -
4782	// MapKey value: parameter name - MapValue type: - If parameter's entity
4783	// type is a composite entity: map - Else: depending on parameter value
4784	// type, could be one of string, number, boolean, null, list or map -
4785	// MapValue value: - If parameter's entity type is a composite entity:
4786	// map from composite entity property names to property values - Else:
4787	// parameter value
4788	Parameters googleapi.RawMessage `json:"parameters,omitempty"`
4789
4790	// ResponseMessages: The list of rich messages returned to the client.
4791	// Responses vary from simple text messages to more sophisticated,
4792	// structured payloads used to drive complex logic.
4793	ResponseMessages []*GoogleCloudDialogflowCxV3ResponseMessage `json:"responseMessages,omitempty"`
4794
4795	// SentimentAnalysisResult: The sentiment analyss result, which depends
4796	// on `analyze_query_text_sentiment`, specified in the request.
4797	SentimentAnalysisResult *GoogleCloudDialogflowCxV3SentimentAnalysisResult `json:"sentimentAnalysisResult,omitempty"`
4798
4799	// Text: If natural language text was provided as input, this field will
4800	// contain a copy of the text.
4801	Text string `json:"text,omitempty"`
4802
4803	// Transcript: If natural language speech audio was provided as input,
4804	// this field will contain the transcript for the audio.
4805	Transcript string `json:"transcript,omitempty"`
4806
4807	// TriggerEvent: If an event was provided as input, this field will
4808	// contain the name of the event.
4809	TriggerEvent string `json:"triggerEvent,omitempty"`
4810
4811	// TriggerIntent: If an intent was provided as input, this field will
4812	// contain a copy of the intent identifier. Format:
4813	// `projects//locations//agents//intents/`.
4814	TriggerIntent string `json:"triggerIntent,omitempty"`
4815
4816	// WebhookPayloads: The list of webhook payload in
4817	// WebhookResponse.payload, in the order of call sequence. If some
4818	// webhook call fails or doesn't return any payload, an empty `Struct`
4819	// would be used instead.
4820	WebhookPayloads []googleapi.RawMessage `json:"webhookPayloads,omitempty"`
4821
4822	// WebhookStatuses: The list of webhook call status in the order of call
4823	// sequence.
4824	WebhookStatuses []*GoogleRpcStatus `json:"webhookStatuses,omitempty"`
4825
4826	// ForceSendFields is a list of field names (e.g. "CurrentPage") to
4827	// unconditionally include in API requests. By default, fields with
4828	// empty or default values are omitted from API requests. However, any
4829	// non-pointer, non-interface field appearing in ForceSendFields will be
4830	// sent to the server regardless of whether the field is empty or not.
4831	// This may be used to include empty fields in Patch requests.
4832	ForceSendFields []string `json:"-"`
4833
4834	// NullFields is a list of field names (e.g. "CurrentPage") to include
4835	// in API requests with the JSON null value. By default, fields with
4836	// empty values are omitted from API requests. However, any field with
4837	// an empty value appearing in NullFields will be sent to the server as
4838	// null. It is an error if a field in this list has a non-empty value.
4839	// This may be used to include null fields in Patch requests.
4840	NullFields []string `json:"-"`
4841}
4842
4843func (s *GoogleCloudDialogflowCxV3QueryResult) MarshalJSON() ([]byte, error) {
4844	type NoMethod GoogleCloudDialogflowCxV3QueryResult
4845	raw := NoMethod(*s)
4846	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4847}
4848
4849func (s *GoogleCloudDialogflowCxV3QueryResult) UnmarshalJSON(data []byte) error {
4850	type NoMethod GoogleCloudDialogflowCxV3QueryResult
4851	var s1 struct {
4852		IntentDetectionConfidence gensupport.JSONFloat64 `json:"intentDetectionConfidence"`
4853		*NoMethod
4854	}
4855	s1.NoMethod = (*NoMethod)(s)
4856	if err := json.Unmarshal(data, &s1); err != nil {
4857		return err
4858	}
4859	s.IntentDetectionConfidence = float64(s1.IntentDetectionConfidence)
4860	return nil
4861}
4862
4863// GoogleCloudDialogflowCxV3ReloadDocumentOperationMetadata: Metadata
4864// for ReloadDocument operation.
4865type GoogleCloudDialogflowCxV3ReloadDocumentOperationMetadata struct {
4866	// GenericMetadata: The generic information of the operation.
4867	GenericMetadata *GoogleCloudDialogflowCxV3GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
4868
4869	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
4870	// unconditionally include in API requests. By default, fields with
4871	// empty or default values are omitted from API requests. However, any
4872	// non-pointer, non-interface field appearing in ForceSendFields will be
4873	// sent to the server regardless of whether the field is empty or not.
4874	// This may be used to include empty fields in Patch requests.
4875	ForceSendFields []string `json:"-"`
4876
4877	// NullFields is a list of field names (e.g. "GenericMetadata") to
4878	// include in API requests with the JSON null value. By default, fields
4879	// with empty values are omitted from API requests. However, any field
4880	// with an empty value appearing in NullFields will be sent to the
4881	// server as null. It is an error if a field in this list has a
4882	// non-empty value. This may be used to include null fields in Patch
4883	// requests.
4884	NullFields []string `json:"-"`
4885}
4886
4887func (s *GoogleCloudDialogflowCxV3ReloadDocumentOperationMetadata) MarshalJSON() ([]byte, error) {
4888	type NoMethod GoogleCloudDialogflowCxV3ReloadDocumentOperationMetadata
4889	raw := NoMethod(*s)
4890	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4891}
4892
4893// GoogleCloudDialogflowCxV3ResourceName: Resource name and display
4894// name.
4895type GoogleCloudDialogflowCxV3ResourceName struct {
4896	// DisplayName: Display name.
4897	DisplayName string `json:"displayName,omitempty"`
4898
4899	// Name: Name.
4900	Name string `json:"name,omitempty"`
4901
4902	// ForceSendFields is a list of field names (e.g. "DisplayName") to
4903	// unconditionally include in API requests. By default, fields with
4904	// empty or default values are omitted from API requests. However, any
4905	// non-pointer, non-interface field appearing in ForceSendFields will be
4906	// sent to the server regardless of whether the field is empty or not.
4907	// This may be used to include empty fields in Patch requests.
4908	ForceSendFields []string `json:"-"`
4909
4910	// NullFields is a list of field names (e.g. "DisplayName") to include
4911	// in API requests with the JSON null value. By default, fields with
4912	// empty values are omitted from API requests. However, any field with
4913	// an empty value appearing in NullFields will be sent to the server as
4914	// null. It is an error if a field in this list has a non-empty value.
4915	// This may be used to include null fields in Patch requests.
4916	NullFields []string `json:"-"`
4917}
4918
4919func (s *GoogleCloudDialogflowCxV3ResourceName) MarshalJSON() ([]byte, error) {
4920	type NoMethod GoogleCloudDialogflowCxV3ResourceName
4921	raw := NoMethod(*s)
4922	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4923}
4924
4925// GoogleCloudDialogflowCxV3ResponseMessage: Represents a response
4926// message that can be returned by a conversational agent. Response
4927// messages are also used for output audio synthesis. The approach is as
4928// follows: * If at least one OutputAudioText response is present, then
4929// all OutputAudioText responses are linearly concatenated, and the
4930// result is used for output audio synthesis. * If the OutputAudioText
4931// responses are a mixture of text and SSML, then the concatenated
4932// result is treated as SSML; otherwise, the result is treated as either
4933// text or SSML as appropriate. The agent designer should ideally use
4934// either text or SSML consistently throughout the bot design. *
4935// Otherwise, all Text responses are linearly concatenated, and the
4936// result is used for output audio synthesis. This approach allows for
4937// more sophisticated user experience scenarios, where the text
4938// displayed to the user may differ from what is heard.
4939type GoogleCloudDialogflowCxV3ResponseMessage struct {
4940	// ConversationSuccess: Indicates that the conversation succeeded.
4941	ConversationSuccess *GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess `json:"conversationSuccess,omitempty"`
4942
4943	// EndInteraction: Output only. A signal that indicates the interaction
4944	// with the Dialogflow agent has ended. This message is generated by
4945	// Dialogflow only when the conversation reaches `END_SESSION` page. It
4946	// is not supposed to be defined by the user. It's guaranteed that there
4947	// is at most one such message in each response.
4948	EndInteraction *GoogleCloudDialogflowCxV3ResponseMessageEndInteraction `json:"endInteraction,omitempty"`
4949
4950	// LiveAgentHandoff: Hands off conversation to a human agent.
4951	LiveAgentHandoff *GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff `json:"liveAgentHandoff,omitempty"`
4952
4953	// MixedAudio: Output only. An audio response message composed of both
4954	// the synthesized Dialogflow agent responses and responses defined via
4955	// play_audio. This message is generated by Dialogflow only and not
4956	// supposed to be defined by the user.
4957	MixedAudio *GoogleCloudDialogflowCxV3ResponseMessageMixedAudio `json:"mixedAudio,omitempty"`
4958
4959	// OutputAudioText: A text or ssml response that is preferentially used
4960	// for TTS output audio synthesis, as described in the comment on the
4961	// ResponseMessage message.
4962	OutputAudioText *GoogleCloudDialogflowCxV3ResponseMessageOutputAudioText `json:"outputAudioText,omitempty"`
4963
4964	// Payload: Returns a response containing a custom, platform-specific
4965	// payload.
4966	Payload googleapi.RawMessage `json:"payload,omitempty"`
4967
4968	// PlayAudio: Signal that the client should play an audio clip hosted at
4969	// a client-specific URI. Dialogflow uses this to construct mixed_audio.
4970	// However, Dialogflow itself does not try to read or process the URI in
4971	// any way.
4972	PlayAudio *GoogleCloudDialogflowCxV3ResponseMessagePlayAudio `json:"playAudio,omitempty"`
4973
4974	// Text: Returns a text response.
4975	Text *GoogleCloudDialogflowCxV3ResponseMessageText `json:"text,omitempty"`
4976
4977	// ForceSendFields is a list of field names (e.g. "ConversationSuccess")
4978	// to unconditionally include in API requests. By default, fields with
4979	// empty or default values are omitted from API requests. However, any
4980	// non-pointer, non-interface field appearing in ForceSendFields will be
4981	// sent to the server regardless of whether the field is empty or not.
4982	// This may be used to include empty fields in Patch requests.
4983	ForceSendFields []string `json:"-"`
4984
4985	// NullFields is a list of field names (e.g. "ConversationSuccess") to
4986	// include in API requests with the JSON null value. By default, fields
4987	// with empty values are omitted from API requests. However, any field
4988	// with an empty value appearing in NullFields will be sent to the
4989	// server as null. It is an error if a field in this list has a
4990	// non-empty value. This may be used to include null fields in Patch
4991	// requests.
4992	NullFields []string `json:"-"`
4993}
4994
4995func (s *GoogleCloudDialogflowCxV3ResponseMessage) MarshalJSON() ([]byte, error) {
4996	type NoMethod GoogleCloudDialogflowCxV3ResponseMessage
4997	raw := NoMethod(*s)
4998	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4999}
5000
5001// GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess:
5002// Indicates that the conversation succeeded, i.e., the bot handled the
5003// issue that the customer talked to it about. Dialogflow only uses this
5004// to determine which conversations should be counted as successful and
5005// doesn't process the metadata in this message in any way. Note that
5006// Dialogflow also considers conversations that get to the conversation
5007// end page as successful even if they don't return ConversationSuccess.
5008// You may set this, for example: * In the entry_fulfillment of a Page
5009// if entering the page indicates that the conversation succeeded. * In
5010// a webhook response when you determine that you handled the customer
5011// issue.
5012type GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess struct {
5013	// Metadata: Custom metadata. Dialogflow doesn't impose any structure on
5014	// this.
5015	Metadata googleapi.RawMessage `json:"metadata,omitempty"`
5016
5017	// ForceSendFields is a list of field names (e.g. "Metadata") to
5018	// unconditionally include in API requests. By default, fields with
5019	// empty or default values are omitted from API requests. However, any
5020	// non-pointer, non-interface field appearing in ForceSendFields will be
5021	// sent to the server regardless of whether the field is empty or not.
5022	// This may be used to include empty fields in Patch requests.
5023	ForceSendFields []string `json:"-"`
5024
5025	// NullFields is a list of field names (e.g. "Metadata") to include in
5026	// API requests with the JSON null value. By default, fields with empty
5027	// values are omitted from API requests. However, any field with an
5028	// empty value appearing in NullFields will be sent to the server as
5029	// null. It is an error if a field in this list has a non-empty value.
5030	// This may be used to include null fields in Patch requests.
5031	NullFields []string `json:"-"`
5032}
5033
5034func (s *GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess) MarshalJSON() ([]byte, error) {
5035	type NoMethod GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess
5036	raw := NoMethod(*s)
5037	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5038}
5039
5040// GoogleCloudDialogflowCxV3ResponseMessageEndInteraction: Indicates
5041// that interaction with the Dialogflow agent has ended. This message is
5042// generated by Dialogflow only and not supposed to be defined by the
5043// user.
5044type GoogleCloudDialogflowCxV3ResponseMessageEndInteraction struct {
5045}
5046
5047// GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff: Indicates
5048// that the conversation should be handed off to a live agent.
5049// Dialogflow only uses this to determine which conversations were
5050// handed off to a human agent for measurement purposes. What else to do
5051// with this signal is up to you and your handoff procedures. You may
5052// set this, for example: * In the entry_fulfillment of a Page if
5053// entering the page indicates something went extremely wrong in the
5054// conversation. * In a webhook response when you determine that the
5055// customer issue can only be handled by a human.
5056type GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff struct {
5057	// Metadata: Custom metadata for your handoff procedure. Dialogflow
5058	// doesn't impose any structure on this.
5059	Metadata googleapi.RawMessage `json:"metadata,omitempty"`
5060
5061	// ForceSendFields is a list of field names (e.g. "Metadata") to
5062	// unconditionally include in API requests. By default, fields with
5063	// empty or default values are omitted from API requests. However, any
5064	// non-pointer, non-interface field appearing in ForceSendFields will be
5065	// sent to the server regardless of whether the field is empty or not.
5066	// This may be used to include empty fields in Patch requests.
5067	ForceSendFields []string `json:"-"`
5068
5069	// NullFields is a list of field names (e.g. "Metadata") to include in
5070	// API requests with the JSON null value. By default, fields with empty
5071	// values are omitted from API requests. However, any field with an
5072	// empty value appearing in NullFields will be sent to the server as
5073	// null. It is an error if a field in this list has a non-empty value.
5074	// This may be used to include null fields in Patch requests.
5075	NullFields []string `json:"-"`
5076}
5077
5078func (s *GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff) MarshalJSON() ([]byte, error) {
5079	type NoMethod GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff
5080	raw := NoMethod(*s)
5081	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5082}
5083
5084// GoogleCloudDialogflowCxV3ResponseMessageMixedAudio: Represents an
5085// audio message that is composed of both segments synthesized from the
5086// Dialogflow agent prompts and ones hosted externally at the specified
5087// URIs. The external URIs are specified via play_audio. This message is
5088// generated by Dialogflow only and not supposed to be defined by the
5089// user.
5090type GoogleCloudDialogflowCxV3ResponseMessageMixedAudio struct {
5091	// Segments: Segments this audio response is composed of.
5092	Segments []*GoogleCloudDialogflowCxV3ResponseMessageMixedAudioSegment `json:"segments,omitempty"`
5093
5094	// ForceSendFields is a list of field names (e.g. "Segments") to
5095	// unconditionally include in API requests. By default, fields with
5096	// empty or default values are omitted from API requests. However, any
5097	// non-pointer, non-interface field appearing in ForceSendFields will be
5098	// sent to the server regardless of whether the field is empty or not.
5099	// This may be used to include empty fields in Patch requests.
5100	ForceSendFields []string `json:"-"`
5101
5102	// NullFields is a list of field names (e.g. "Segments") to include in
5103	// API requests with the JSON null value. By default, fields with empty
5104	// values are omitted from API requests. However, any field with an
5105	// empty value appearing in NullFields will be sent to the server as
5106	// null. It is an error if a field in this list has a non-empty value.
5107	// This may be used to include null fields in Patch requests.
5108	NullFields []string `json:"-"`
5109}
5110
5111func (s *GoogleCloudDialogflowCxV3ResponseMessageMixedAudio) MarshalJSON() ([]byte, error) {
5112	type NoMethod GoogleCloudDialogflowCxV3ResponseMessageMixedAudio
5113	raw := NoMethod(*s)
5114	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5115}
5116
5117// GoogleCloudDialogflowCxV3ResponseMessageMixedAudioSegment: Represents
5118// one segment of audio.
5119type GoogleCloudDialogflowCxV3ResponseMessageMixedAudioSegment struct {
5120	// AllowPlaybackInterruption: Output only. Whether the playback of this
5121	// segment can be interrupted by the end user's speech and the client
5122	// should then start the next Dialogflow request.
5123	AllowPlaybackInterruption bool `json:"allowPlaybackInterruption,omitempty"`
5124
5125	// Audio: Raw audio synthesized from the Dialogflow agent's response
5126	// using the output config specified in the request.
5127	Audio string `json:"audio,omitempty"`
5128
5129	// Uri: Client-specific URI that points to an audio clip accessible to
5130	// the client. Dialogflow does not impose any validation on it.
5131	Uri string `json:"uri,omitempty"`
5132
5133	// ForceSendFields is a list of field names (e.g.
5134	// "AllowPlaybackInterruption") to unconditionally include in API
5135	// requests. By default, fields with empty or default values are omitted
5136	// from API requests. However, any non-pointer, non-interface field
5137	// appearing in ForceSendFields will be sent to the server regardless of
5138	// whether the field is empty or not. This may be used to include empty
5139	// fields in Patch requests.
5140	ForceSendFields []string `json:"-"`
5141
5142	// NullFields is a list of field names (e.g.
5143	// "AllowPlaybackInterruption") to include in API requests with the JSON
5144	// null value. By default, fields with empty values are omitted from API
5145	// requests. However, any field with an empty value appearing in
5146	// NullFields will be sent to the server as null. It is an error if a
5147	// field in this list has a non-empty value. This may be used to include
5148	// null fields in Patch requests.
5149	NullFields []string `json:"-"`
5150}
5151
5152func (s *GoogleCloudDialogflowCxV3ResponseMessageMixedAudioSegment) MarshalJSON() ([]byte, error) {
5153	type NoMethod GoogleCloudDialogflowCxV3ResponseMessageMixedAudioSegment
5154	raw := NoMethod(*s)
5155	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5156}
5157
5158// GoogleCloudDialogflowCxV3ResponseMessageOutputAudioText: A text or
5159// ssml response that is preferentially used for TTS output audio
5160// synthesis, as described in the comment on the ResponseMessage
5161// message.
5162type GoogleCloudDialogflowCxV3ResponseMessageOutputAudioText struct {
5163	// AllowPlaybackInterruption: Output only. Whether the playback of this
5164	// message can be interrupted by the end user's speech and the client
5165	// can then starts the next Dialogflow request.
5166	AllowPlaybackInterruption bool `json:"allowPlaybackInterruption,omitempty"`
5167
5168	// Ssml: The SSML text to be synthesized. For more information, see SSML
5169	// (/speech/text-to-speech/docs/ssml).
5170	Ssml string `json:"ssml,omitempty"`
5171
5172	// Text: The raw text to be synthesized.
5173	Text string `json:"text,omitempty"`
5174
5175	// ForceSendFields is a list of field names (e.g.
5176	// "AllowPlaybackInterruption") to unconditionally include in API
5177	// requests. By default, fields with empty or default values are omitted
5178	// from API requests. However, any non-pointer, non-interface field
5179	// appearing in ForceSendFields will be sent to the server regardless of
5180	// whether the field is empty or not. This may be used to include empty
5181	// fields in Patch requests.
5182	ForceSendFields []string `json:"-"`
5183
5184	// NullFields is a list of field names (e.g.
5185	// "AllowPlaybackInterruption") to include in API requests with the JSON
5186	// null value. By default, fields with empty values are omitted from API
5187	// requests. However, any field with an empty value appearing in
5188	// NullFields will be sent to the server as null. It is an error if a
5189	// field in this list has a non-empty value. This may be used to include
5190	// null fields in Patch requests.
5191	NullFields []string `json:"-"`
5192}
5193
5194func (s *GoogleCloudDialogflowCxV3ResponseMessageOutputAudioText) MarshalJSON() ([]byte, error) {
5195	type NoMethod GoogleCloudDialogflowCxV3ResponseMessageOutputAudioText
5196	raw := NoMethod(*s)
5197	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5198}
5199
5200// GoogleCloudDialogflowCxV3ResponseMessagePlayAudio: Specifies an audio
5201// clip to be played by the client as part of the response.
5202type GoogleCloudDialogflowCxV3ResponseMessagePlayAudio struct {
5203	// AllowPlaybackInterruption: Output only. Whether the playback of this
5204	// message can be interrupted by the end user's speech and the client
5205	// can then starts the next Dialogflow request.
5206	AllowPlaybackInterruption bool `json:"allowPlaybackInterruption,omitempty"`
5207
5208	// AudioUri: Required. URI of the audio clip. Dialogflow does not impose
5209	// any validation on this value. It is specific to the client that reads
5210	// it.
5211	AudioUri string `json:"audioUri,omitempty"`
5212
5213	// ForceSendFields is a list of field names (e.g.
5214	// "AllowPlaybackInterruption") to unconditionally include in API
5215	// requests. By default, fields with empty or default values are omitted
5216	// from API requests. However, any non-pointer, non-interface field
5217	// appearing in ForceSendFields will be sent to the server regardless of
5218	// whether the field is empty or not. This may be used to include empty
5219	// fields in Patch requests.
5220	ForceSendFields []string `json:"-"`
5221
5222	// NullFields is a list of field names (e.g.
5223	// "AllowPlaybackInterruption") to include in API requests with the JSON
5224	// null value. By default, fields with empty values are omitted from API
5225	// requests. However, any field with an empty value appearing in
5226	// NullFields will be sent to the server as null. It is an error if a
5227	// field in this list has a non-empty value. This may be used to include
5228	// null fields in Patch requests.
5229	NullFields []string `json:"-"`
5230}
5231
5232func (s *GoogleCloudDialogflowCxV3ResponseMessagePlayAudio) MarshalJSON() ([]byte, error) {
5233	type NoMethod GoogleCloudDialogflowCxV3ResponseMessagePlayAudio
5234	raw := NoMethod(*s)
5235	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5236}
5237
5238// GoogleCloudDialogflowCxV3ResponseMessageText: The text response
5239// message.
5240type GoogleCloudDialogflowCxV3ResponseMessageText struct {
5241	// AllowPlaybackInterruption: Output only. Whether the playback of this
5242	// message can be interrupted by the end user's speech and the client
5243	// can then starts the next Dialogflow request.
5244	AllowPlaybackInterruption bool `json:"allowPlaybackInterruption,omitempty"`
5245
5246	// Text: Required. A collection of text responses.
5247	Text []string `json:"text,omitempty"`
5248
5249	// ForceSendFields is a list of field names (e.g.
5250	// "AllowPlaybackInterruption") to unconditionally include in API
5251	// requests. By default, fields with empty or default values are omitted
5252	// from API requests. However, any non-pointer, non-interface field
5253	// appearing in ForceSendFields will be sent to the server regardless of
5254	// whether the field is empty or not. This may be used to include empty
5255	// fields in Patch requests.
5256	ForceSendFields []string `json:"-"`
5257
5258	// NullFields is a list of field names (e.g.
5259	// "AllowPlaybackInterruption") to include in API requests with the JSON
5260	// null value. By default, fields with empty values are omitted from API
5261	// requests. However, any field with an empty value appearing in
5262	// NullFields will be sent to the server as null. It is an error if a
5263	// field in this list has a non-empty value. This may be used to include
5264	// null fields in Patch requests.
5265	NullFields []string `json:"-"`
5266}
5267
5268func (s *GoogleCloudDialogflowCxV3ResponseMessageText) MarshalJSON() ([]byte, error) {
5269	type NoMethod GoogleCloudDialogflowCxV3ResponseMessageText
5270	raw := NoMethod(*s)
5271	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5272}
5273
5274// GoogleCloudDialogflowCxV3RestoreAgentRequest: The request message for
5275// Agents.RestoreAgent.
5276type GoogleCloudDialogflowCxV3RestoreAgentRequest struct {
5277	// AgentContent: Uncompressed raw byte content for agent.
5278	AgentContent string `json:"agentContent,omitempty"`
5279
5280	// AgentUri: The Google Cloud Storage
5281	// (https://cloud.google.com/storage/docs/) URI to restore agent from.
5282	// The format of this URI must be `gs:///`.
5283	AgentUri string `json:"agentUri,omitempty"`
5284
5285	// RestoreOption: Agent restore mode. If not specified, `KEEP` is
5286	// assumed.
5287	//
5288	// Possible values:
5289	//   "RESTORE_OPTION_UNSPECIFIED" - Unspecified. Treated as KEEP.
5290	//   "KEEP" - Always respect the settings from the exported agent file.
5291	// It may cause a restoration failure if some settings (e.g. model type)
5292	// are not supported in the target agent.
5293	//   "FALLBACK" - Fallback to default settings if some settings are not
5294	// supported in the target agent.
5295	RestoreOption string `json:"restoreOption,omitempty"`
5296
5297	// ForceSendFields is a list of field names (e.g. "AgentContent") to
5298	// unconditionally include in API requests. By default, fields with
5299	// empty or default values are omitted from API requests. However, any
5300	// non-pointer, non-interface field appearing in ForceSendFields will be
5301	// sent to the server regardless of whether the field is empty or not.
5302	// This may be used to include empty fields in Patch requests.
5303	ForceSendFields []string `json:"-"`
5304
5305	// NullFields is a list of field names (e.g. "AgentContent") to include
5306	// in API requests with the JSON null value. By default, fields with
5307	// empty values are omitted from API requests. However, any field with
5308	// an empty value appearing in NullFields will be sent to the server as
5309	// null. It is an error if a field in this list has a non-empty value.
5310	// This may be used to include null fields in Patch requests.
5311	NullFields []string `json:"-"`
5312}
5313
5314func (s *GoogleCloudDialogflowCxV3RestoreAgentRequest) MarshalJSON() ([]byte, error) {
5315	type NoMethod GoogleCloudDialogflowCxV3RestoreAgentRequest
5316	raw := NoMethod(*s)
5317	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5318}
5319
5320// GoogleCloudDialogflowCxV3RolloutConfig: The configuration for auto
5321// rollout.
5322type GoogleCloudDialogflowCxV3RolloutConfig struct {
5323	// FailureCondition: The conditions that are used to evaluate the
5324	// failure of a rollout step. If not specified, no rollout steps will
5325	// fail. E.g. "containment_rate < 10% OR average_turn_count < 3". See
5326	// the conditions reference
5327	// (https://cloud.google.com/dialogflow/cx/docs/reference/condition).
5328	FailureCondition string `json:"failureCondition,omitempty"`
5329
5330	// RolloutCondition: The conditions that are used to evaluate the
5331	// success of a rollout step. If not specified, all rollout steps will
5332	// proceed to the next one unless failure conditions are met. E.g.
5333	// "containment_rate > 60% AND callback_rate < 20%". See the conditions
5334	// reference
5335	// (https://cloud.google.com/dialogflow/cx/docs/reference/condition).
5336	RolloutCondition string `json:"rolloutCondition,omitempty"`
5337
5338	// RolloutSteps: Steps to roll out a flow version. Steps should be
5339	// sorted by percentage in ascending order.
5340	RolloutSteps []*GoogleCloudDialogflowCxV3RolloutConfigRolloutStep `json:"rolloutSteps,omitempty"`
5341
5342	// ForceSendFields is a list of field names (e.g. "FailureCondition") to
5343	// unconditionally include in API requests. By default, fields with
5344	// empty or default values are omitted from API requests. However, any
5345	// non-pointer, non-interface field appearing in ForceSendFields will be
5346	// sent to the server regardless of whether the field is empty or not.
5347	// This may be used to include empty fields in Patch requests.
5348	ForceSendFields []string `json:"-"`
5349
5350	// NullFields is a list of field names (e.g. "FailureCondition") to
5351	// include in API requests with the JSON null value. By default, fields
5352	// with empty values are omitted from API requests. However, any field
5353	// with an empty value appearing in NullFields will be sent to the
5354	// server as null. It is an error if a field in this list has a
5355	// non-empty value. This may be used to include null fields in Patch
5356	// requests.
5357	NullFields []string `json:"-"`
5358}
5359
5360func (s *GoogleCloudDialogflowCxV3RolloutConfig) MarshalJSON() ([]byte, error) {
5361	type NoMethod GoogleCloudDialogflowCxV3RolloutConfig
5362	raw := NoMethod(*s)
5363	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5364}
5365
5366// GoogleCloudDialogflowCxV3RolloutConfigRolloutStep: A single rollout
5367// step with specified traffic allocation.
5368type GoogleCloudDialogflowCxV3RolloutConfigRolloutStep struct {
5369	// DisplayName: The name of the rollout step;
5370	DisplayName string `json:"displayName,omitempty"`
5371
5372	// MinDuration: The minimum time that this step should last. Should be
5373	// longer than 1 hour. If not set, the default minimum duration for each
5374	// step will be 1 hour.
5375	MinDuration string `json:"minDuration,omitempty"`
5376
5377	// TrafficPercent: The percentage of traffic allocated to the flow
5378	// version of this rollout step. (0%, 100%].
5379	TrafficPercent int64 `json:"trafficPercent,omitempty"`
5380
5381	// ForceSendFields is a list of field names (e.g. "DisplayName") to
5382	// unconditionally include in API requests. By default, fields with
5383	// empty or default values are omitted from API requests. However, any
5384	// non-pointer, non-interface field appearing in ForceSendFields will be
5385	// sent to the server regardless of whether the field is empty or not.
5386	// This may be used to include empty fields in Patch requests.
5387	ForceSendFields []string `json:"-"`
5388
5389	// NullFields is a list of field names (e.g. "DisplayName") to include
5390	// in API requests with the JSON null value. By default, fields with
5391	// empty values are omitted from API requests. However, any field with
5392	// an empty value appearing in NullFields will be sent to the server as
5393	// null. It is an error if a field in this list has a non-empty value.
5394	// This may be used to include null fields in Patch requests.
5395	NullFields []string `json:"-"`
5396}
5397
5398func (s *GoogleCloudDialogflowCxV3RolloutConfigRolloutStep) MarshalJSON() ([]byte, error) {
5399	type NoMethod GoogleCloudDialogflowCxV3RolloutConfigRolloutStep
5400	raw := NoMethod(*s)
5401	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5402}
5403
5404// GoogleCloudDialogflowCxV3RolloutState: State of the auto-rollout
5405// process.
5406type GoogleCloudDialogflowCxV3RolloutState struct {
5407	// StartTime: Start time of the current step.
5408	StartTime string `json:"startTime,omitempty"`
5409
5410	// Step: Display name of the current auto rollout step.
5411	Step string `json:"step,omitempty"`
5412
5413	// StepIndex: Index of the current step in the auto rollout steps list.
5414	StepIndex int64 `json:"stepIndex,omitempty"`
5415
5416	// ForceSendFields is a list of field names (e.g. "StartTime") to
5417	// unconditionally include in API requests. By default, fields with
5418	// empty or default values are omitted from API requests. However, any
5419	// non-pointer, non-interface field appearing in ForceSendFields will be
5420	// sent to the server regardless of whether the field is empty or not.
5421	// This may be used to include empty fields in Patch requests.
5422	ForceSendFields []string `json:"-"`
5423
5424	// NullFields is a list of field names (e.g. "StartTime") to include in
5425	// API requests with the JSON null value. By default, fields with empty
5426	// values are omitted from API requests. However, any field with an
5427	// empty value appearing in NullFields will be sent to the server as
5428	// null. It is an error if a field in this list has a non-empty value.
5429	// This may be used to include null fields in Patch requests.
5430	NullFields []string `json:"-"`
5431}
5432
5433func (s *GoogleCloudDialogflowCxV3RolloutState) MarshalJSON() ([]byte, error) {
5434	type NoMethod GoogleCloudDialogflowCxV3RolloutState
5435	raw := NoMethod(*s)
5436	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5437}
5438
5439// GoogleCloudDialogflowCxV3RunContinuousTestMetadata: Metadata returned
5440// for the Environments.RunContinuousTest long running operation.
5441type GoogleCloudDialogflowCxV3RunContinuousTestMetadata struct {
5442	// Errors: The test errors.
5443	Errors []*GoogleCloudDialogflowCxV3TestError `json:"errors,omitempty"`
5444
5445	// ForceSendFields is a list of field names (e.g. "Errors") to
5446	// unconditionally include in API requests. By default, fields with
5447	// empty or default values are omitted from API requests. However, any
5448	// non-pointer, non-interface field appearing in ForceSendFields will be
5449	// sent to the server regardless of whether the field is empty or not.
5450	// This may be used to include empty fields in Patch requests.
5451	ForceSendFields []string `json:"-"`
5452
5453	// NullFields is a list of field names (e.g. "Errors") to include in API
5454	// requests with the JSON null value. By default, fields with empty
5455	// values are omitted from API requests. However, any field with an
5456	// empty value appearing in NullFields will be sent to the server as
5457	// null. It is an error if a field in this list has a non-empty value.
5458	// This may be used to include null fields in Patch requests.
5459	NullFields []string `json:"-"`
5460}
5461
5462func (s *GoogleCloudDialogflowCxV3RunContinuousTestMetadata) MarshalJSON() ([]byte, error) {
5463	type NoMethod GoogleCloudDialogflowCxV3RunContinuousTestMetadata
5464	raw := NoMethod(*s)
5465	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5466}
5467
5468// GoogleCloudDialogflowCxV3RunContinuousTestRequest: The request
5469// message for Environments.RunContinuousTest.
5470type GoogleCloudDialogflowCxV3RunContinuousTestRequest struct {
5471}
5472
5473// GoogleCloudDialogflowCxV3RunContinuousTestResponse: The response
5474// message for Environments.RunContinuousTest.
5475type GoogleCloudDialogflowCxV3RunContinuousTestResponse struct {
5476	// ContinuousTestResult: The result for a continuous test run.
5477	ContinuousTestResult *GoogleCloudDialogflowCxV3ContinuousTestResult `json:"continuousTestResult,omitempty"`
5478
5479	// ForceSendFields is a list of field names (e.g.
5480	// "ContinuousTestResult") to unconditionally include in API requests.
5481	// By default, fields with empty or default values are omitted from API
5482	// requests. However, any non-pointer, non-interface field appearing in
5483	// ForceSendFields will be sent to the server regardless of whether the
5484	// field is empty or not. This may be used to include empty fields in
5485	// Patch requests.
5486	ForceSendFields []string `json:"-"`
5487
5488	// NullFields is a list of field names (e.g. "ContinuousTestResult") to
5489	// include in API requests with the JSON null value. By default, fields
5490	// with empty values are omitted from API requests. However, any field
5491	// with an empty value appearing in NullFields will be sent to the
5492	// server as null. It is an error if a field in this list has a
5493	// non-empty value. This may be used to include null fields in Patch
5494	// requests.
5495	NullFields []string `json:"-"`
5496}
5497
5498func (s *GoogleCloudDialogflowCxV3RunContinuousTestResponse) MarshalJSON() ([]byte, error) {
5499	type NoMethod GoogleCloudDialogflowCxV3RunContinuousTestResponse
5500	raw := NoMethod(*s)
5501	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5502}
5503
5504// GoogleCloudDialogflowCxV3RunTestCaseMetadata: Metadata returned for
5505// the TestCases.RunTestCase long running operation.
5506type GoogleCloudDialogflowCxV3RunTestCaseMetadata struct {
5507}
5508
5509// GoogleCloudDialogflowCxV3RunTestCaseRequest: The request message for
5510// TestCases.RunTestCase.
5511type GoogleCloudDialogflowCxV3RunTestCaseRequest struct {
5512	// Environment: Optional. Environment name. If not set, draft
5513	// environment is assumed. Format:
5514	// `projects//locations//agents//environments/`.
5515	Environment string `json:"environment,omitempty"`
5516
5517	// ForceSendFields is a list of field names (e.g. "Environment") to
5518	// unconditionally include in API requests. By default, fields with
5519	// empty or default values are omitted from API requests. However, any
5520	// non-pointer, non-interface field appearing in ForceSendFields will be
5521	// sent to the server regardless of whether the field is empty or not.
5522	// This may be used to include empty fields in Patch requests.
5523	ForceSendFields []string `json:"-"`
5524
5525	// NullFields is a list of field names (e.g. "Environment") to include
5526	// in API requests with the JSON null value. By default, fields with
5527	// empty values are omitted from API requests. However, any field with
5528	// an empty value appearing in NullFields will be sent to the server as
5529	// null. It is an error if a field in this list has a non-empty value.
5530	// This may be used to include null fields in Patch requests.
5531	NullFields []string `json:"-"`
5532}
5533
5534func (s *GoogleCloudDialogflowCxV3RunTestCaseRequest) MarshalJSON() ([]byte, error) {
5535	type NoMethod GoogleCloudDialogflowCxV3RunTestCaseRequest
5536	raw := NoMethod(*s)
5537	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5538}
5539
5540// GoogleCloudDialogflowCxV3RunTestCaseResponse: The response message
5541// for TestCases.RunTestCase.
5542type GoogleCloudDialogflowCxV3RunTestCaseResponse struct {
5543	// Result: The result.
5544	Result *GoogleCloudDialogflowCxV3TestCaseResult `json:"result,omitempty"`
5545
5546	// ForceSendFields is a list of field names (e.g. "Result") to
5547	// unconditionally include in API requests. By default, fields with
5548	// empty or default values are omitted from API requests. However, any
5549	// non-pointer, non-interface field appearing in ForceSendFields will be
5550	// sent to the server regardless of whether the field is empty or not.
5551	// This may be used to include empty fields in Patch requests.
5552	ForceSendFields []string `json:"-"`
5553
5554	// NullFields is a list of field names (e.g. "Result") to include in API
5555	// requests with the JSON null value. By default, fields with empty
5556	// values are omitted from API requests. However, any field with an
5557	// empty value appearing in NullFields will be sent to the server as
5558	// null. It is an error if a field in this list has a non-empty value.
5559	// This may be used to include null fields in Patch requests.
5560	NullFields []string `json:"-"`
5561}
5562
5563func (s *GoogleCloudDialogflowCxV3RunTestCaseResponse) MarshalJSON() ([]byte, error) {
5564	type NoMethod GoogleCloudDialogflowCxV3RunTestCaseResponse
5565	raw := NoMethod(*s)
5566	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5567}
5568
5569// GoogleCloudDialogflowCxV3SecuritySettings: Represents the settings
5570// related to security issues, such as data redaction and data
5571// retention. It may take hours for updates on the settings to propagate
5572// to all the related components and take effect.
5573type GoogleCloudDialogflowCxV3SecuritySettings struct {
5574	// DeidentifyTemplate: DLP (https://cloud.google.com/dlp/docs)
5575	// deidentify template name. Use this template to define
5576	// de-identification configuration for the content. If empty, Dialogflow
5577	// replaces sensitive info with `[redacted]` text. The template name
5578	// will have one of the following formats:
5579	// `projects//locations//deidentifyTemplates/` OR
5580	// `organizations//locations//deidentifyTemplates/` Note:
5581	// `deidentify_template` must be located in the same region as the
5582	// `SecuritySettings`.
5583	DeidentifyTemplate string `json:"deidentifyTemplate,omitempty"`
5584
5585	// DisplayName: Required. The human-readable name of the security
5586	// settings, unique within the location.
5587	DisplayName string `json:"displayName,omitempty"`
5588
5589	// InsightsExportSettings: Controls conversation exporting settings to
5590	// Insights after conversation is completed. If retention_strategy is
5591	// set to REMOVE_AFTER_CONVERSATION, Insights export is disabled no
5592	// matter what you configure here.
5593	InsightsExportSettings *GoogleCloudDialogflowCxV3SecuritySettingsInsightsExportSettings `json:"insightsExportSettings,omitempty"`
5594
5595	// InspectTemplate: DLP (https://cloud.google.com/dlp/docs) inspect
5596	// template name. Use this template to define inspect base settings. If
5597	// empty, we use the default DLP inspect config. The template name will
5598	// have one of the following formats:
5599	// `projects//locations//inspectTemplates/` OR
5600	// `organizations//locations//inspectTemplates/` Note:
5601	// `inspect_template` must be located in the same region as the
5602	// `SecuritySettings`.
5603	InspectTemplate string `json:"inspectTemplate,omitempty"`
5604
5605	// Name: Required. Resource name of the settings. Format:
5606	// `projects//locations//securitySettings/`.
5607	Name string `json:"name,omitempty"`
5608
5609	// PurgeDataTypes: List of types of data to remove when retention
5610	// settings triggers purge.
5611	//
5612	// Possible values:
5613	//   "PURGE_DATA_TYPE_UNSPECIFIED" - Unspecified. Do not use.
5614	//   "DIALOGFLOW_HISTORY" - Dialogflow history. This does not include
5615	// Cloud logging, which is owned by the user - not Dialogflow.
5616	PurgeDataTypes []string `json:"purgeDataTypes,omitempty"`
5617
5618	// RedactionScope: Defines the data for which Dialogflow applies
5619	// redaction. Dialogflow does not redact data that it does not have
5620	// access to – for example, Cloud logging.
5621	//
5622	// Possible values:
5623	//   "REDACTION_SCOPE_UNSPECIFIED" - Don't redact any kind of data.
5624	//   "REDACT_DISK_STORAGE" - On data to be written to disk or similar
5625	// devices that are capable of holding data even if power is
5626	// disconnected. This includes data that are temporarily saved on disk.
5627	RedactionScope string `json:"redactionScope,omitempty"`
5628
5629	// RedactionStrategy: Strategy that defines how we do redaction.
5630	//
5631	// Possible values:
5632	//   "REDACTION_STRATEGY_UNSPECIFIED" - Do not redact.
5633	//   "REDACT_WITH_SERVICE" - Call redaction service to clean up the data
5634	// to be persisted.
5635	RedactionStrategy string `json:"redactionStrategy,omitempty"`
5636
5637	// RetentionWindowDays: Retains data in interaction logging for the
5638	// specified number of days. This does not apply to Cloud logging, which
5639	// is owned by the user - not Dialogflow. User must Set a value lower
5640	// than Dialogflow's default 30d TTL. Setting a value higher than that
5641	// has no effect. A missing value or setting to 0 also means we use
5642	// Dialogflow's default TTL. Note: Interaction logging is a limited
5643	// access feature. Talk to your Google representative to check
5644	// availability for you.
5645	RetentionWindowDays int64 `json:"retentionWindowDays,omitempty"`
5646
5647	// ServerResponse contains the HTTP response code and headers from the
5648	// server.
5649	googleapi.ServerResponse `json:"-"`
5650
5651	// ForceSendFields is a list of field names (e.g. "DeidentifyTemplate")
5652	// to unconditionally include in API requests. By default, fields with
5653	// empty or default values are omitted from API requests. However, any
5654	// non-pointer, non-interface field appearing in ForceSendFields will be
5655	// sent to the server regardless of whether the field is empty or not.
5656	// This may be used to include empty fields in Patch requests.
5657	ForceSendFields []string `json:"-"`
5658
5659	// NullFields is a list of field names (e.g. "DeidentifyTemplate") to
5660	// include in API requests with the JSON null value. By default, fields
5661	// with empty values are omitted from API requests. However, any field
5662	// with an empty value appearing in NullFields will be sent to the
5663	// server as null. It is an error if a field in this list has a
5664	// non-empty value. This may be used to include null fields in Patch
5665	// requests.
5666	NullFields []string `json:"-"`
5667}
5668
5669func (s *GoogleCloudDialogflowCxV3SecuritySettings) MarshalJSON() ([]byte, error) {
5670	type NoMethod GoogleCloudDialogflowCxV3SecuritySettings
5671	raw := NoMethod(*s)
5672	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5673}
5674
5675// GoogleCloudDialogflowCxV3SecuritySettingsInsightsExportSettings:
5676// Settings for exporting conversations to Insights
5677// (https://cloud.google.com/dialogflow/priv/docs/insights).
5678type GoogleCloudDialogflowCxV3SecuritySettingsInsightsExportSettings struct {
5679	// EnableInsightsExport: If enabled, we will automatically exports
5680	// conversations to Insights and Insights runs its analyzers.
5681	EnableInsightsExport bool `json:"enableInsightsExport,omitempty"`
5682
5683	// ForceSendFields is a list of field names (e.g.
5684	// "EnableInsightsExport") to unconditionally include in API requests.
5685	// By default, fields with empty or default values are omitted from API
5686	// requests. However, any non-pointer, non-interface field appearing in
5687	// ForceSendFields will be sent to the server regardless of whether the
5688	// field is empty or not. This may be used to include empty fields in
5689	// Patch requests.
5690	ForceSendFields []string `json:"-"`
5691
5692	// NullFields is a list of field names (e.g. "EnableInsightsExport") to
5693	// include in API requests with the JSON null value. By default, fields
5694	// with empty values are omitted from API requests. However, any field
5695	// with an empty value appearing in NullFields will be sent to the
5696	// server as null. It is an error if a field in this list has a
5697	// non-empty value. This may be used to include null fields in Patch
5698	// requests.
5699	NullFields []string `json:"-"`
5700}
5701
5702func (s *GoogleCloudDialogflowCxV3SecuritySettingsInsightsExportSettings) MarshalJSON() ([]byte, error) {
5703	type NoMethod GoogleCloudDialogflowCxV3SecuritySettingsInsightsExportSettings
5704	raw := NoMethod(*s)
5705	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5706}
5707
5708// GoogleCloudDialogflowCxV3SentimentAnalysisResult: The result of
5709// sentiment analysis. Sentiment analysis inspects user input and
5710// identifies the prevailing subjective opinion, especially to determine
5711// a user's attitude as positive, negative, or neutral.
5712type GoogleCloudDialogflowCxV3SentimentAnalysisResult struct {
5713	// Magnitude: A non-negative number in the [0, +inf) range, which
5714	// represents the absolute magnitude of sentiment, regardless of score
5715	// (positive or negative).
5716	Magnitude float64 `json:"magnitude,omitempty"`
5717
5718	// Score: Sentiment score between -1.0 (negative sentiment) and 1.0
5719	// (positive sentiment).
5720	Score float64 `json:"score,omitempty"`
5721
5722	// ForceSendFields is a list of field names (e.g. "Magnitude") to
5723	// unconditionally include in API requests. By default, fields with
5724	// empty or default values are omitted from API requests. However, any
5725	// non-pointer, non-interface field appearing in ForceSendFields will be
5726	// sent to the server regardless of whether the field is empty or not.
5727	// This may be used to include empty fields in Patch requests.
5728	ForceSendFields []string `json:"-"`
5729
5730	// NullFields is a list of field names (e.g. "Magnitude") to include in
5731	// API requests with the JSON null value. By default, fields with empty
5732	// values are omitted from API requests. However, any field with an
5733	// empty value appearing in NullFields will be sent to the server as
5734	// null. It is an error if a field in this list has a non-empty value.
5735	// This may be used to include null fields in Patch requests.
5736	NullFields []string `json:"-"`
5737}
5738
5739func (s *GoogleCloudDialogflowCxV3SentimentAnalysisResult) MarshalJSON() ([]byte, error) {
5740	type NoMethod GoogleCloudDialogflowCxV3SentimentAnalysisResult
5741	raw := NoMethod(*s)
5742	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5743}
5744
5745func (s *GoogleCloudDialogflowCxV3SentimentAnalysisResult) UnmarshalJSON(data []byte) error {
5746	type NoMethod GoogleCloudDialogflowCxV3SentimentAnalysisResult
5747	var s1 struct {
5748		Magnitude gensupport.JSONFloat64 `json:"magnitude"`
5749		Score     gensupport.JSONFloat64 `json:"score"`
5750		*NoMethod
5751	}
5752	s1.NoMethod = (*NoMethod)(s)
5753	if err := json.Unmarshal(data, &s1); err != nil {
5754		return err
5755	}
5756	s.Magnitude = float64(s1.Magnitude)
5757	s.Score = float64(s1.Score)
5758	return nil
5759}
5760
5761// GoogleCloudDialogflowCxV3SessionEntityType: Session entity types are
5762// referred to as **User** entity types and are entities that are built
5763// for an individual user such as favorites, preferences, playlists, and
5764// so on. You can redefine a session entity type at the session level to
5765// extend or replace a custom entity type at the user session level (we
5766// refer to the entity types defined at the agent level as "custom
5767// entity types"). Note: session entity types apply to all queries,
5768// regardless of the language. For more information about entity types,
5769// see the Dialogflow documentation
5770// (https://cloud.google.com/dialogflow/docs/entities-overview).
5771type GoogleCloudDialogflowCxV3SessionEntityType struct {
5772	// Entities: Required. The collection of entities to override or
5773	// supplement the custom entity type.
5774	Entities []*GoogleCloudDialogflowCxV3EntityTypeEntity `json:"entities,omitempty"`
5775
5776	// EntityOverrideMode: Required. Indicates whether the additional data
5777	// should override or supplement the custom entity type definition.
5778	//
5779	// Possible values:
5780	//   "ENTITY_OVERRIDE_MODE_UNSPECIFIED" - Not specified. This value
5781	// should be never used.
5782	//   "ENTITY_OVERRIDE_MODE_OVERRIDE" - The collection of session
5783	// entities overrides the collection of entities in the corresponding
5784	// custom entity type.
5785	//   "ENTITY_OVERRIDE_MODE_SUPPLEMENT" - The collection of session
5786	// entities extends the collection of entities in the corresponding
5787	// custom entity type. Note: Even in this override mode calls to
5788	// `ListSessionEntityTypes`, `GetSessionEntityType`,
5789	// `CreateSessionEntityType` and `UpdateSessionEntityType` only return
5790	// the additional entities added in this session entity type. If you
5791	// want to get the supplemented list, please call
5792	// EntityTypes.GetEntityType on the custom entity type and merge.
5793	EntityOverrideMode string `json:"entityOverrideMode,omitempty"`
5794
5795	// Name: Required. The unique identifier of the session entity type.
5796	// Format: `projects//locations//agents//sessions//entityTypes/` or
5797	// `projects//locations//agents//environments//sessions//entityTypes/`.
5798	// If `Environment ID` is not specified, we assume default 'draft'
5799	// environment.
5800	Name string `json:"name,omitempty"`
5801
5802	// ServerResponse contains the HTTP response code and headers from the
5803	// server.
5804	googleapi.ServerResponse `json:"-"`
5805
5806	// ForceSendFields is a list of field names (e.g. "Entities") to
5807	// unconditionally include in API requests. By default, fields with
5808	// empty or default values are omitted from API requests. However, any
5809	// non-pointer, non-interface field appearing in ForceSendFields will be
5810	// sent to the server regardless of whether the field is empty or not.
5811	// This may be used to include empty fields in Patch requests.
5812	ForceSendFields []string `json:"-"`
5813
5814	// NullFields is a list of field names (e.g. "Entities") to include in
5815	// API requests with the JSON null value. By default, fields with empty
5816	// values are omitted from API requests. However, any field with an
5817	// empty value appearing in NullFields will be sent to the server as
5818	// null. It is an error if a field in this list has a non-empty value.
5819	// This may be used to include null fields in Patch requests.
5820	NullFields []string `json:"-"`
5821}
5822
5823func (s *GoogleCloudDialogflowCxV3SessionEntityType) MarshalJSON() ([]byte, error) {
5824	type NoMethod GoogleCloudDialogflowCxV3SessionEntityType
5825	raw := NoMethod(*s)
5826	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5827}
5828
5829// GoogleCloudDialogflowCxV3SessionInfo: Represents session information
5830// communicated to and from the webhook.
5831type GoogleCloudDialogflowCxV3SessionInfo struct {
5832	// Parameters: Optional for WebhookRequest. Optional for
5833	// WebhookResponse. All parameters collected from forms and intents
5834	// during the session. Parameters can be created, updated, or removed by
5835	// the webhook. To remove a parameter from the session, the webhook
5836	// should explicitly set the parameter value to null in WebhookResponse.
5837	// The map is keyed by parameters' display names.
5838	Parameters googleapi.RawMessage `json:"parameters,omitempty"`
5839
5840	// Session: Always present for WebhookRequest. Ignored for
5841	// WebhookResponse. The unique identifier of the session. This field can
5842	// be used by the webhook to identify a session. Format:
5843	// `projects//locations//agents//sessions/` or
5844	// `projects//locations//agents//environments//sessions/` if environment
5845	// is specified.
5846	Session string `json:"session,omitempty"`
5847
5848	// ForceSendFields is a list of field names (e.g. "Parameters") to
5849	// unconditionally include in API requests. By default, fields with
5850	// empty or default values are omitted from API requests. However, any
5851	// non-pointer, non-interface field appearing in ForceSendFields will be
5852	// sent to the server regardless of whether the field is empty or not.
5853	// This may be used to include empty fields in Patch requests.
5854	ForceSendFields []string `json:"-"`
5855
5856	// NullFields is a list of field names (e.g. "Parameters") to include in
5857	// API requests with the JSON null value. By default, fields with empty
5858	// values are omitted from API requests. However, any field with an
5859	// empty value appearing in NullFields will be sent to the server as
5860	// null. It is an error if a field in this list has a non-empty value.
5861	// This may be used to include null fields in Patch requests.
5862	NullFields []string `json:"-"`
5863}
5864
5865func (s *GoogleCloudDialogflowCxV3SessionInfo) MarshalJSON() ([]byte, error) {
5866	type NoMethod GoogleCloudDialogflowCxV3SessionInfo
5867	raw := NoMethod(*s)
5868	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5869}
5870
5871// GoogleCloudDialogflowCxV3SpeechToTextSettings: Settings related to
5872// speech recognition.
5873type GoogleCloudDialogflowCxV3SpeechToTextSettings struct {
5874	// EnableSpeechAdaptation: Whether to use speech adaptation for speech
5875	// recognition.
5876	EnableSpeechAdaptation bool `json:"enableSpeechAdaptation,omitempty"`
5877
5878	// ForceSendFields is a list of field names (e.g.
5879	// "EnableSpeechAdaptation") to unconditionally include in API requests.
5880	// By default, fields with empty or default values are omitted from API
5881	// requests. However, any non-pointer, non-interface field appearing in
5882	// ForceSendFields will be sent to the server regardless of whether the
5883	// field is empty or not. This may be used to include empty fields in
5884	// Patch requests.
5885	ForceSendFields []string `json:"-"`
5886
5887	// NullFields is a list of field names (e.g. "EnableSpeechAdaptation")
5888	// to include in API requests with the JSON null value. By default,
5889	// fields with empty values are omitted from API requests. However, any
5890	// field with an empty value appearing in NullFields will be sent to the
5891	// server as null. It is an error if a field in this list has a
5892	// non-empty value. This may be used to include null fields in Patch
5893	// requests.
5894	NullFields []string `json:"-"`
5895}
5896
5897func (s *GoogleCloudDialogflowCxV3SpeechToTextSettings) MarshalJSON() ([]byte, error) {
5898	type NoMethod GoogleCloudDialogflowCxV3SpeechToTextSettings
5899	raw := NoMethod(*s)
5900	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5901}
5902
5903// GoogleCloudDialogflowCxV3StartExperimentRequest: The request message
5904// for Experiments.StartExperiment.
5905type GoogleCloudDialogflowCxV3StartExperimentRequest struct {
5906}
5907
5908// GoogleCloudDialogflowCxV3StopExperimentRequest: The request message
5909// for Experiments.StopExperiment.
5910type GoogleCloudDialogflowCxV3StopExperimentRequest struct {
5911}
5912
5913// GoogleCloudDialogflowCxV3SynthesizeSpeechConfig: Configuration of how
5914// speech should be synthesized.
5915type GoogleCloudDialogflowCxV3SynthesizeSpeechConfig struct {
5916	// EffectsProfileId: Optional. An identifier which selects 'audio
5917	// effects' profiles that are applied on (post synthesized) text to
5918	// speech. Effects are applied on top of each other in the order they
5919	// are given.
5920	EffectsProfileId []string `json:"effectsProfileId,omitempty"`
5921
5922	// Pitch: Optional. Speaking pitch, in the range [-20.0, 20.0]. 20 means
5923	// increase 20 semitones from the original pitch. -20 means decrease 20
5924	// semitones from the original pitch.
5925	Pitch float64 `json:"pitch,omitempty"`
5926
5927	// SpeakingRate: Optional. Speaking rate/speed, in the range [0.25,
5928	// 4.0]. 1.0 is the normal native speed supported by the specific voice.
5929	// 2.0 is twice as fast, and 0.5 is half as fast. If unset(0.0),
5930	// defaults to the native 1.0 speed. Any other values < 0.25 or > 4.0
5931	// will return an error.
5932	SpeakingRate float64 `json:"speakingRate,omitempty"`
5933
5934	// Voice: Optional. The desired voice of the synthesized audio.
5935	Voice *GoogleCloudDialogflowCxV3VoiceSelectionParams `json:"voice,omitempty"`
5936
5937	// VolumeGainDb: Optional. Volume gain (in dB) of the normal native
5938	// volume supported by the specific voice, in the range [-96.0, 16.0].
5939	// If unset, or set to a value of 0.0 (dB), will play at normal native
5940	// signal amplitude. A value of -6.0 (dB) will play at approximately
5941	// half the amplitude of the normal native signal amplitude. A value of
5942	// +6.0 (dB) will play at approximately twice the amplitude of the
5943	// normal native signal amplitude. We strongly recommend not to exceed
5944	// +10 (dB) as there's usually no effective increase in loudness for any
5945	// value greater than that.
5946	VolumeGainDb float64 `json:"volumeGainDb,omitempty"`
5947
5948	// ForceSendFields is a list of field names (e.g. "EffectsProfileId") to
5949	// unconditionally include in API requests. By default, fields with
5950	// empty or default values are omitted from API requests. However, any
5951	// non-pointer, non-interface field appearing in ForceSendFields will be
5952	// sent to the server regardless of whether the field is empty or not.
5953	// This may be used to include empty fields in Patch requests.
5954	ForceSendFields []string `json:"-"`
5955
5956	// NullFields is a list of field names (e.g. "EffectsProfileId") to
5957	// include in API requests with the JSON null value. By default, fields
5958	// with empty values are omitted from API requests. However, any field
5959	// with an empty value appearing in NullFields will be sent to the
5960	// server as null. It is an error if a field in this list has a
5961	// non-empty value. This may be used to include null fields in Patch
5962	// requests.
5963	NullFields []string `json:"-"`
5964}
5965
5966func (s *GoogleCloudDialogflowCxV3SynthesizeSpeechConfig) MarshalJSON() ([]byte, error) {
5967	type NoMethod GoogleCloudDialogflowCxV3SynthesizeSpeechConfig
5968	raw := NoMethod(*s)
5969	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5970}
5971
5972func (s *GoogleCloudDialogflowCxV3SynthesizeSpeechConfig) UnmarshalJSON(data []byte) error {
5973	type NoMethod GoogleCloudDialogflowCxV3SynthesizeSpeechConfig
5974	var s1 struct {
5975		Pitch        gensupport.JSONFloat64 `json:"pitch"`
5976		SpeakingRate gensupport.JSONFloat64 `json:"speakingRate"`
5977		VolumeGainDb gensupport.JSONFloat64 `json:"volumeGainDb"`
5978		*NoMethod
5979	}
5980	s1.NoMethod = (*NoMethod)(s)
5981	if err := json.Unmarshal(data, &s1); err != nil {
5982		return err
5983	}
5984	s.Pitch = float64(s1.Pitch)
5985	s.SpeakingRate = float64(s1.SpeakingRate)
5986	s.VolumeGainDb = float64(s1.VolumeGainDb)
5987	return nil
5988}
5989
5990// GoogleCloudDialogflowCxV3TestCase: Represents a test case.
5991type GoogleCloudDialogflowCxV3TestCase struct {
5992	// CreationTime: Output only. When the test was created.
5993	CreationTime string `json:"creationTime,omitempty"`
5994
5995	// DisplayName: Required. The human-readable name of the test case,
5996	// unique within the agent. Limit of 200 characters.
5997	DisplayName string `json:"displayName,omitempty"`
5998
5999	// LastTestResult: The latest test result.
6000	LastTestResult *GoogleCloudDialogflowCxV3TestCaseResult `json:"lastTestResult,omitempty"`
6001
6002	// Name: The unique identifier of the test case.
6003	// TestCases.CreateTestCase will populate the name automatically.
6004	// Otherwise use format: `projects//locations//agents/ /testCases/`.
6005	Name string `json:"name,omitempty"`
6006
6007	// Notes: Additional freeform notes about the test case. Limit of 400
6008	// characters.
6009	Notes string `json:"notes,omitempty"`
6010
6011	// Tags: Tags are short descriptions that users may apply to test cases
6012	// for organizational and filtering purposes. Each tag should start with
6013	// "#" and has a limit of 30 characters.
6014	Tags []string `json:"tags,omitempty"`
6015
6016	// TestCaseConversationTurns: The conversation turns uttered when the
6017	// test case was created, in chronological order. These include the
6018	// canonical set of agent utterances that should occur when the agent is
6019	// working properly.
6020	TestCaseConversationTurns []*GoogleCloudDialogflowCxV3ConversationTurn `json:"testCaseConversationTurns,omitempty"`
6021
6022	// TestConfig: Config for the test case.
6023	TestConfig *GoogleCloudDialogflowCxV3TestConfig `json:"testConfig,omitempty"`
6024
6025	// ServerResponse contains the HTTP response code and headers from the
6026	// server.
6027	googleapi.ServerResponse `json:"-"`
6028
6029	// ForceSendFields is a list of field names (e.g. "CreationTime") to
6030	// unconditionally include in API requests. By default, fields with
6031	// empty or default values are omitted from API requests. However, any
6032	// non-pointer, non-interface field appearing in ForceSendFields will be
6033	// sent to the server regardless of whether the field is empty or not.
6034	// This may be used to include empty fields in Patch requests.
6035	ForceSendFields []string `json:"-"`
6036
6037	// NullFields is a list of field names (e.g. "CreationTime") to include
6038	// in API requests with the JSON null value. By default, fields with
6039	// empty values are omitted from API requests. However, any field with
6040	// an empty value appearing in NullFields will be sent to the server as
6041	// null. It is an error if a field in this list has a non-empty value.
6042	// This may be used to include null fields in Patch requests.
6043	NullFields []string `json:"-"`
6044}
6045
6046func (s *GoogleCloudDialogflowCxV3TestCase) MarshalJSON() ([]byte, error) {
6047	type NoMethod GoogleCloudDialogflowCxV3TestCase
6048	raw := NoMethod(*s)
6049	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6050}
6051
6052// GoogleCloudDialogflowCxV3TestCaseError: Error info for importing a
6053// test.
6054type GoogleCloudDialogflowCxV3TestCaseError struct {
6055	// Status: The status associated with the test case.
6056	Status *GoogleRpcStatus `json:"status,omitempty"`
6057
6058	// TestCase: The test case.
6059	TestCase *GoogleCloudDialogflowCxV3TestCase `json:"testCase,omitempty"`
6060
6061	// ForceSendFields is a list of field names (e.g. "Status") to
6062	// unconditionally include in API requests. By default, fields with
6063	// empty or default values are omitted from API requests. However, any
6064	// non-pointer, non-interface field appearing in ForceSendFields will be
6065	// sent to the server regardless of whether the field is empty or not.
6066	// This may be used to include empty fields in Patch requests.
6067	ForceSendFields []string `json:"-"`
6068
6069	// NullFields is a list of field names (e.g. "Status") to include in API
6070	// requests with the JSON null value. By default, fields with empty
6071	// values are omitted from API requests. However, any field with an
6072	// empty value appearing in NullFields will be sent to the server as
6073	// null. It is an error if a field in this list has a non-empty value.
6074	// This may be used to include null fields in Patch requests.
6075	NullFields []string `json:"-"`
6076}
6077
6078func (s *GoogleCloudDialogflowCxV3TestCaseError) MarshalJSON() ([]byte, error) {
6079	type NoMethod GoogleCloudDialogflowCxV3TestCaseError
6080	raw := NoMethod(*s)
6081	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6082}
6083
6084// GoogleCloudDialogflowCxV3TestCaseResult: Represents a result from
6085// running a test case in an agent environment.
6086type GoogleCloudDialogflowCxV3TestCaseResult struct {
6087	// ConversationTurns: The conversation turns uttered during the test
6088	// case replay in chronological order.
6089	ConversationTurns []*GoogleCloudDialogflowCxV3ConversationTurn `json:"conversationTurns,omitempty"`
6090
6091	// Environment: Environment where the test was run. If not set, it
6092	// indicates the draft environment.
6093	Environment string `json:"environment,omitempty"`
6094
6095	// Name: The resource name for the test case result. Format:
6096	// `projects//locations//agents//testCases/ /results/`.
6097	Name string `json:"name,omitempty"`
6098
6099	// TestResult: Whether the test case passed in the agent environment.
6100	//
6101	// Possible values:
6102	//   "TEST_RESULT_UNSPECIFIED" - Not specified. Should never be used.
6103	//   "PASSED" - The test passed.
6104	//   "FAILED" - The test did not pass.
6105	TestResult string `json:"testResult,omitempty"`
6106
6107	// TestTime: The time that the test was run.
6108	TestTime string `json:"testTime,omitempty"`
6109
6110	// ServerResponse contains the HTTP response code and headers from the
6111	// server.
6112	googleapi.ServerResponse `json:"-"`
6113
6114	// ForceSendFields is a list of field names (e.g. "ConversationTurns")
6115	// to unconditionally include in API requests. By default, fields with
6116	// empty or default values are omitted from API requests. However, any
6117	// non-pointer, non-interface field appearing in ForceSendFields will be
6118	// sent to the server regardless of whether the field is empty or not.
6119	// This may be used to include empty fields in Patch requests.
6120	ForceSendFields []string `json:"-"`
6121
6122	// NullFields is a list of field names (e.g. "ConversationTurns") to
6123	// include in API requests with the JSON null value. By default, fields
6124	// with empty values are omitted from API requests. However, any field
6125	// with an empty value appearing in NullFields will be sent to the
6126	// server as null. It is an error if a field in this list has a
6127	// non-empty value. This may be used to include null fields in Patch
6128	// requests.
6129	NullFields []string `json:"-"`
6130}
6131
6132func (s *GoogleCloudDialogflowCxV3TestCaseResult) MarshalJSON() ([]byte, error) {
6133	type NoMethod GoogleCloudDialogflowCxV3TestCaseResult
6134	raw := NoMethod(*s)
6135	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6136}
6137
6138// GoogleCloudDialogflowCxV3TestConfig: Represents configurations for a
6139// test case.
6140type GoogleCloudDialogflowCxV3TestConfig struct {
6141	// Flow: Flow name. If not set, default start flow is assumed. Format:
6142	// `projects//locations//agents//flows/`.
6143	Flow string `json:"flow,omitempty"`
6144
6145	// TrackingParameters: Session parameters to be compared when
6146	// calculating differences.
6147	TrackingParameters []string `json:"trackingParameters,omitempty"`
6148
6149	// ForceSendFields is a list of field names (e.g. "Flow") to
6150	// unconditionally include in API requests. By default, fields with
6151	// empty or default values are omitted from API requests. However, any
6152	// non-pointer, non-interface field appearing in ForceSendFields will be
6153	// sent to the server regardless of whether the field is empty or not.
6154	// This may be used to include empty fields in Patch requests.
6155	ForceSendFields []string `json:"-"`
6156
6157	// NullFields is a list of field names (e.g. "Flow") to include in API
6158	// requests with the JSON null value. By default, fields with empty
6159	// values are omitted from API requests. However, any field with an
6160	// empty value appearing in NullFields will be sent to the server as
6161	// null. It is an error if a field in this list has a non-empty value.
6162	// This may be used to include null fields in Patch requests.
6163	NullFields []string `json:"-"`
6164}
6165
6166func (s *GoogleCloudDialogflowCxV3TestConfig) MarshalJSON() ([]byte, error) {
6167	type NoMethod GoogleCloudDialogflowCxV3TestConfig
6168	raw := NoMethod(*s)
6169	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6170}
6171
6172// GoogleCloudDialogflowCxV3TestError: Error info for running a test.
6173type GoogleCloudDialogflowCxV3TestError struct {
6174	// Status: The status associated with the test.
6175	Status *GoogleRpcStatus `json:"status,omitempty"`
6176
6177	// TestCase: The test case resource name.
6178	TestCase string `json:"testCase,omitempty"`
6179
6180	// TestTime: The timestamp when the test was completed.
6181	TestTime string `json:"testTime,omitempty"`
6182
6183	// ForceSendFields is a list of field names (e.g. "Status") to
6184	// unconditionally include in API requests. By default, fields with
6185	// empty or default values are omitted from API requests. However, any
6186	// non-pointer, non-interface field appearing in ForceSendFields will be
6187	// sent to the server regardless of whether the field is empty or not.
6188	// This may be used to include empty fields in Patch requests.
6189	ForceSendFields []string `json:"-"`
6190
6191	// NullFields is a list of field names (e.g. "Status") to include in API
6192	// requests with the JSON null value. By default, fields with empty
6193	// values are omitted from API requests. However, any field with an
6194	// empty value appearing in NullFields will be sent to the server as
6195	// null. It is an error if a field in this list has a non-empty value.
6196	// This may be used to include null fields in Patch requests.
6197	NullFields []string `json:"-"`
6198}
6199
6200func (s *GoogleCloudDialogflowCxV3TestError) MarshalJSON() ([]byte, error) {
6201	type NoMethod GoogleCloudDialogflowCxV3TestError
6202	raw := NoMethod(*s)
6203	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6204}
6205
6206// GoogleCloudDialogflowCxV3TestRunDifference: The description of
6207// differences between original and replayed agent output.
6208type GoogleCloudDialogflowCxV3TestRunDifference struct {
6209	// Description: A description of the diff, showing the actual output vs
6210	// expected output.
6211	Description string `json:"description,omitempty"`
6212
6213	// Type: The type of diff.
6214	//
6215	// Possible values:
6216	//   "DIFF_TYPE_UNSPECIFIED" - Should never be used.
6217	//   "INTENT" - The intent.
6218	//   "PAGE" - The page.
6219	//   "PARAMETERS" - The parameters.
6220	//   "UTTERANCE" - The message utterance.
6221	Type string `json:"type,omitempty"`
6222
6223	// ForceSendFields is a list of field names (e.g. "Description") to
6224	// unconditionally include in API requests. By default, fields with
6225	// empty or default values are omitted from API requests. However, any
6226	// non-pointer, non-interface field appearing in ForceSendFields will be
6227	// sent to the server regardless of whether the field is empty or not.
6228	// This may be used to include empty fields in Patch requests.
6229	ForceSendFields []string `json:"-"`
6230
6231	// NullFields is a list of field names (e.g. "Description") to include
6232	// in API requests with the JSON null value. By default, fields with
6233	// empty values are omitted from API requests. However, any field with
6234	// an empty value appearing in NullFields will be sent to the server as
6235	// null. It is an error if a field in this list has a non-empty value.
6236	// This may be used to include null fields in Patch requests.
6237	NullFields []string `json:"-"`
6238}
6239
6240func (s *GoogleCloudDialogflowCxV3TestRunDifference) MarshalJSON() ([]byte, error) {
6241	type NoMethod GoogleCloudDialogflowCxV3TestRunDifference
6242	raw := NoMethod(*s)
6243	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6244}
6245
6246// GoogleCloudDialogflowCxV3TextInput: Represents the natural language
6247// text to be processed.
6248type GoogleCloudDialogflowCxV3TextInput struct {
6249	// Text: Required. The UTF-8 encoded natural language text to be
6250	// processed. Text length must not exceed 256 characters.
6251	Text string `json:"text,omitempty"`
6252
6253	// ForceSendFields is a list of field names (e.g. "Text") to
6254	// unconditionally include in API requests. By default, fields with
6255	// empty or default values are omitted from API requests. However, any
6256	// non-pointer, non-interface field appearing in ForceSendFields will be
6257	// sent to the server regardless of whether the field is empty or not.
6258	// This may be used to include empty fields in Patch requests.
6259	ForceSendFields []string `json:"-"`
6260
6261	// NullFields is a list of field names (e.g. "Text") to include in API
6262	// requests with the JSON null value. By default, fields with empty
6263	// values are omitted from API requests. However, any field with an
6264	// empty value appearing in NullFields will be sent to the server as
6265	// null. It is an error if a field in this list has a non-empty value.
6266	// This may be used to include null fields in Patch requests.
6267	NullFields []string `json:"-"`
6268}
6269
6270func (s *GoogleCloudDialogflowCxV3TextInput) MarshalJSON() ([]byte, error) {
6271	type NoMethod GoogleCloudDialogflowCxV3TextInput
6272	raw := NoMethod(*s)
6273	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6274}
6275
6276// GoogleCloudDialogflowCxV3TrainFlowRequest: The request message for
6277// Flows.TrainFlow.
6278type GoogleCloudDialogflowCxV3TrainFlowRequest struct {
6279}
6280
6281// GoogleCloudDialogflowCxV3TransitionCoverage: Transition coverage
6282// represents the percentage of all possible page transitions
6283// (page-level transition routes and event handlers, excluding
6284// transition route groups) present within any of a parent's test cases.
6285type GoogleCloudDialogflowCxV3TransitionCoverage struct {
6286	// CoverageScore: The percent of transitions in the agent that are
6287	// covered.
6288	CoverageScore float64 `json:"coverageScore,omitempty"`
6289
6290	// Transitions: The list of Transitions present in the agent.
6291	Transitions []*GoogleCloudDialogflowCxV3TransitionCoverageTransition `json:"transitions,omitempty"`
6292
6293	// ForceSendFields is a list of field names (e.g. "CoverageScore") to
6294	// unconditionally include in API requests. By default, fields with
6295	// empty or default values are omitted from API requests. However, any
6296	// non-pointer, non-interface field appearing in ForceSendFields will be
6297	// sent to the server regardless of whether the field is empty or not.
6298	// This may be used to include empty fields in Patch requests.
6299	ForceSendFields []string `json:"-"`
6300
6301	// NullFields is a list of field names (e.g. "CoverageScore") to include
6302	// in API requests with the JSON null value. By default, fields with
6303	// empty values are omitted from API requests. However, any field with
6304	// an empty value appearing in NullFields will be sent to the server as
6305	// null. It is an error if a field in this list has a non-empty value.
6306	// This may be used to include null fields in Patch requests.
6307	NullFields []string `json:"-"`
6308}
6309
6310func (s *GoogleCloudDialogflowCxV3TransitionCoverage) MarshalJSON() ([]byte, error) {
6311	type NoMethod GoogleCloudDialogflowCxV3TransitionCoverage
6312	raw := NoMethod(*s)
6313	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6314}
6315
6316func (s *GoogleCloudDialogflowCxV3TransitionCoverage) UnmarshalJSON(data []byte) error {
6317	type NoMethod GoogleCloudDialogflowCxV3TransitionCoverage
6318	var s1 struct {
6319		CoverageScore gensupport.JSONFloat64 `json:"coverageScore"`
6320		*NoMethod
6321	}
6322	s1.NoMethod = (*NoMethod)(s)
6323	if err := json.Unmarshal(data, &s1); err != nil {
6324		return err
6325	}
6326	s.CoverageScore = float64(s1.CoverageScore)
6327	return nil
6328}
6329
6330// GoogleCloudDialogflowCxV3TransitionCoverageTransition: A transition
6331// in a page.
6332type GoogleCloudDialogflowCxV3TransitionCoverageTransition struct {
6333	// Covered: Whether or not the transition is covered by at least one of
6334	// the agent's test cases.
6335	Covered bool `json:"covered,omitempty"`
6336
6337	// EventHandler: Event handler.
6338	EventHandler *GoogleCloudDialogflowCxV3EventHandler `json:"eventHandler,omitempty"`
6339
6340	// Index: The index of a transition in the transition list. Starting
6341	// from 0.
6342	Index int64 `json:"index,omitempty"`
6343
6344	// Source: The start node of a transition.
6345	Source *GoogleCloudDialogflowCxV3TransitionCoverageTransitionNode `json:"source,omitempty"`
6346
6347	// Target: The end node of a transition.
6348	Target *GoogleCloudDialogflowCxV3TransitionCoverageTransitionNode `json:"target,omitempty"`
6349
6350	// TransitionRoute: Intent route or condition route.
6351	TransitionRoute *GoogleCloudDialogflowCxV3TransitionRoute `json:"transitionRoute,omitempty"`
6352
6353	// ForceSendFields is a list of field names (e.g. "Covered") to
6354	// unconditionally include in API requests. By default, fields with
6355	// empty or default values are omitted from API requests. However, any
6356	// non-pointer, non-interface field appearing in ForceSendFields will be
6357	// sent to the server regardless of whether the field is empty or not.
6358	// This may be used to include empty fields in Patch requests.
6359	ForceSendFields []string `json:"-"`
6360
6361	// NullFields is a list of field names (e.g. "Covered") to include in
6362	// API requests with the JSON null value. By default, fields with empty
6363	// values are omitted from API requests. However, any field with an
6364	// empty value appearing in NullFields will be sent to the server as
6365	// null. It is an error if a field in this list has a non-empty value.
6366	// This may be used to include null fields in Patch requests.
6367	NullFields []string `json:"-"`
6368}
6369
6370func (s *GoogleCloudDialogflowCxV3TransitionCoverageTransition) MarshalJSON() ([]byte, error) {
6371	type NoMethod GoogleCloudDialogflowCxV3TransitionCoverageTransition
6372	raw := NoMethod(*s)
6373	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6374}
6375
6376// GoogleCloudDialogflowCxV3TransitionCoverageTransitionNode: The source
6377// or target of a transition.
6378type GoogleCloudDialogflowCxV3TransitionCoverageTransitionNode struct {
6379	// Flow: Indicates a transition to a Flow. Only some fields such as name
6380	// and displayname will be set.
6381	Flow *GoogleCloudDialogflowCxV3Flow `json:"flow,omitempty"`
6382
6383	// Page: Indicates a transition to a Page. Only some fields such as name
6384	// and displayname will be set.
6385	Page *GoogleCloudDialogflowCxV3Page `json:"page,omitempty"`
6386
6387	// ForceSendFields is a list of field names (e.g. "Flow") to
6388	// unconditionally include in API requests. By default, fields with
6389	// empty or default values are omitted from API requests. However, any
6390	// non-pointer, non-interface field appearing in ForceSendFields will be
6391	// sent to the server regardless of whether the field is empty or not.
6392	// This may be used to include empty fields in Patch requests.
6393	ForceSendFields []string `json:"-"`
6394
6395	// NullFields is a list of field names (e.g. "Flow") to include in API
6396	// requests with the JSON null value. By default, fields with empty
6397	// values are omitted from API requests. However, any field with an
6398	// empty value appearing in NullFields will be sent to the server as
6399	// null. It is an error if a field in this list has a non-empty value.
6400	// This may be used to include null fields in Patch requests.
6401	NullFields []string `json:"-"`
6402}
6403
6404func (s *GoogleCloudDialogflowCxV3TransitionCoverageTransitionNode) MarshalJSON() ([]byte, error) {
6405	type NoMethod GoogleCloudDialogflowCxV3TransitionCoverageTransitionNode
6406	raw := NoMethod(*s)
6407	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6408}
6409
6410// GoogleCloudDialogflowCxV3TransitionRoute: A transition route
6411// specifies a intent that can be matched and/or a data condition that
6412// can be evaluated during a session. When a specified transition is
6413// matched, the following actions are taken in order: * If there is a
6414// `trigger_fulfillment` associated with the transition, it will be
6415// called. * If there is a `target_page` associated with the transition,
6416// the session will transition into the specified page. * If there is a
6417// `target_flow` associated with the transition, the session will
6418// transition into the specified flow.
6419type GoogleCloudDialogflowCxV3TransitionRoute struct {
6420	// Condition: The condition to evaluate against form parameters or
6421	// session parameters. See the conditions reference
6422	// (https://cloud.google.com/dialogflow/cx/docs/reference/condition). At
6423	// least one of `intent` or `condition` must be specified. When both
6424	// `intent` and `condition` are specified, the transition can only
6425	// happen when both are fulfilled.
6426	Condition string `json:"condition,omitempty"`
6427
6428	// Intent: The unique identifier of an Intent. Format:
6429	// `projects//locations//agents//intents/`. Indicates that the
6430	// transition can only happen when the given intent is matched. At least
6431	// one of `intent` or `condition` must be specified. When both `intent`
6432	// and `condition` are specified, the transition can only happen when
6433	// both are fulfilled.
6434	Intent string `json:"intent,omitempty"`
6435
6436	// Name: Output only. The unique identifier of this transition route.
6437	Name string `json:"name,omitempty"`
6438
6439	// TargetFlow: The target flow to transition to. Format:
6440	// `projects//locations//agents//flows/`.
6441	TargetFlow string `json:"targetFlow,omitempty"`
6442
6443	// TargetPage: The target page to transition to. Format:
6444	// `projects//locations//agents//flows//pages/`.
6445	TargetPage string `json:"targetPage,omitempty"`
6446
6447	// TriggerFulfillment: The fulfillment to call when the condition is
6448	// satisfied. At least one of `trigger_fulfillment` and `target` must be
6449	// specified. When both are defined, `trigger_fulfillment` is executed
6450	// first.
6451	TriggerFulfillment *GoogleCloudDialogflowCxV3Fulfillment `json:"triggerFulfillment,omitempty"`
6452
6453	// ForceSendFields is a list of field names (e.g. "Condition") to
6454	// unconditionally include in API requests. By default, fields with
6455	// empty or default values are omitted from API requests. However, any
6456	// non-pointer, non-interface field appearing in ForceSendFields will be
6457	// sent to the server regardless of whether the field is empty or not.
6458	// This may be used to include empty fields in Patch requests.
6459	ForceSendFields []string `json:"-"`
6460
6461	// NullFields is a list of field names (e.g. "Condition") to include in
6462	// API requests with the JSON null value. By default, fields with empty
6463	// values are omitted from API requests. However, any field with an
6464	// empty value appearing in NullFields will be sent to the server as
6465	// null. It is an error if a field in this list has a non-empty value.
6466	// This may be used to include null fields in Patch requests.
6467	NullFields []string `json:"-"`
6468}
6469
6470func (s *GoogleCloudDialogflowCxV3TransitionRoute) MarshalJSON() ([]byte, error) {
6471	type NoMethod GoogleCloudDialogflowCxV3TransitionRoute
6472	raw := NoMethod(*s)
6473	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6474}
6475
6476// GoogleCloudDialogflowCxV3TransitionRouteGroup: An
6477// TransitionRouteGroup represents a group of `TransitionRoutes` to be
6478// used by a Page.
6479type GoogleCloudDialogflowCxV3TransitionRouteGroup struct {
6480	// DisplayName: Required. The human-readable name of the transition
6481	// route group, unique within the Agent. The display name can be no
6482	// longer than 30 characters.
6483	DisplayName string `json:"displayName,omitempty"`
6484
6485	// Name: The unique identifier of the transition route group.
6486	// TransitionRouteGroups.CreateTransitionRouteGroup populates the name
6487	// automatically. Format:
6488	// `projects//locations//agents//flows//transitionRouteGroups/`.
6489	Name string `json:"name,omitempty"`
6490
6491	// TransitionRoutes: Transition routes associated with the
6492	// TransitionRouteGroup.
6493	TransitionRoutes []*GoogleCloudDialogflowCxV3TransitionRoute `json:"transitionRoutes,omitempty"`
6494
6495	// ServerResponse contains the HTTP response code and headers from the
6496	// server.
6497	googleapi.ServerResponse `json:"-"`
6498
6499	// ForceSendFields is a list of field names (e.g. "DisplayName") to
6500	// unconditionally include in API requests. By default, fields with
6501	// empty or default values are omitted from API requests. However, any
6502	// non-pointer, non-interface field appearing in ForceSendFields will be
6503	// sent to the server regardless of whether the field is empty or not.
6504	// This may be used to include empty fields in Patch requests.
6505	ForceSendFields []string `json:"-"`
6506
6507	// NullFields is a list of field names (e.g. "DisplayName") to include
6508	// in API requests with the JSON null value. By default, fields with
6509	// empty values are omitted from API requests. However, any field with
6510	// an empty value appearing in NullFields will be sent to the server as
6511	// null. It is an error if a field in this list has a non-empty value.
6512	// This may be used to include null fields in Patch requests.
6513	NullFields []string `json:"-"`
6514}
6515
6516func (s *GoogleCloudDialogflowCxV3TransitionRouteGroup) MarshalJSON() ([]byte, error) {
6517	type NoMethod GoogleCloudDialogflowCxV3TransitionRouteGroup
6518	raw := NoMethod(*s)
6519	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6520}
6521
6522// GoogleCloudDialogflowCxV3TransitionRouteGroupCoverage: Transition
6523// route group coverage represents the percentage of all possible
6524// transition routes present within any of a parent's test cases. The
6525// results are grouped by the transition route group.
6526type GoogleCloudDialogflowCxV3TransitionRouteGroupCoverage struct {
6527	// CoverageScore: The percent of transition routes in all the transition
6528	// route groups that are covered.
6529	CoverageScore float64 `json:"coverageScore,omitempty"`
6530
6531	// Coverages: Transition route group coverages.
6532	Coverages []*GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverage `json:"coverages,omitempty"`
6533
6534	// ForceSendFields is a list of field names (e.g. "CoverageScore") to
6535	// unconditionally include in API requests. By default, fields with
6536	// empty or default values are omitted from API requests. However, any
6537	// non-pointer, non-interface field appearing in ForceSendFields will be
6538	// sent to the server regardless of whether the field is empty or not.
6539	// This may be used to include empty fields in Patch requests.
6540	ForceSendFields []string `json:"-"`
6541
6542	// NullFields is a list of field names (e.g. "CoverageScore") to include
6543	// in API requests with the JSON null value. By default, fields with
6544	// empty values are omitted from API requests. However, any field with
6545	// an empty value appearing in NullFields will be sent to the server as
6546	// null. It is an error if a field in this list has a non-empty value.
6547	// This may be used to include null fields in Patch requests.
6548	NullFields []string `json:"-"`
6549}
6550
6551func (s *GoogleCloudDialogflowCxV3TransitionRouteGroupCoverage) MarshalJSON() ([]byte, error) {
6552	type NoMethod GoogleCloudDialogflowCxV3TransitionRouteGroupCoverage
6553	raw := NoMethod(*s)
6554	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6555}
6556
6557func (s *GoogleCloudDialogflowCxV3TransitionRouteGroupCoverage) UnmarshalJSON(data []byte) error {
6558	type NoMethod GoogleCloudDialogflowCxV3TransitionRouteGroupCoverage
6559	var s1 struct {
6560		CoverageScore gensupport.JSONFloat64 `json:"coverageScore"`
6561		*NoMethod
6562	}
6563	s1.NoMethod = (*NoMethod)(s)
6564	if err := json.Unmarshal(data, &s1); err != nil {
6565		return err
6566	}
6567	s.CoverageScore = float64(s1.CoverageScore)
6568	return nil
6569}
6570
6571// GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverage:
6572// Coverage result message for one transition route group.
6573type GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverage struct {
6574	// CoverageScore: The percent of transition routes in the transition
6575	// route group that are covered.
6576	CoverageScore float64 `json:"coverageScore,omitempty"`
6577
6578	// RouteGroup: Transition route group metadata. Only name and
6579	// displayName will be set.
6580	RouteGroup *GoogleCloudDialogflowCxV3TransitionRouteGroup `json:"routeGroup,omitempty"`
6581
6582	// Transitions: The list of transition routes and coverage in the
6583	// transition route group.
6584	Transitions []*GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverageTransition `json:"transitions,omitempty"`
6585
6586	// ForceSendFields is a list of field names (e.g. "CoverageScore") to
6587	// unconditionally include in API requests. By default, fields with
6588	// empty or default values are omitted from API requests. However, any
6589	// non-pointer, non-interface field appearing in ForceSendFields will be
6590	// sent to the server regardless of whether the field is empty or not.
6591	// This may be used to include empty fields in Patch requests.
6592	ForceSendFields []string `json:"-"`
6593
6594	// NullFields is a list of field names (e.g. "CoverageScore") to include
6595	// in API requests with the JSON null value. By default, fields with
6596	// empty values are omitted from API requests. However, any field with
6597	// an empty value appearing in NullFields will be sent to the server as
6598	// null. It is an error if a field in this list has a non-empty value.
6599	// This may be used to include null fields in Patch requests.
6600	NullFields []string `json:"-"`
6601}
6602
6603func (s *GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverage) MarshalJSON() ([]byte, error) {
6604	type NoMethod GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverage
6605	raw := NoMethod(*s)
6606	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6607}
6608
6609func (s *GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverage) UnmarshalJSON(data []byte) error {
6610	type NoMethod GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverage
6611	var s1 struct {
6612		CoverageScore gensupport.JSONFloat64 `json:"coverageScore"`
6613		*NoMethod
6614	}
6615	s1.NoMethod = (*NoMethod)(s)
6616	if err := json.Unmarshal(data, &s1); err != nil {
6617		return err
6618	}
6619	s.CoverageScore = float64(s1.CoverageScore)
6620	return nil
6621}
6622
6623// GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverageTransitio
6624// n: A transition coverage in a transition route group.
6625type GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverageTransition struct {
6626	// Covered: Whether or not the transition route is covered by at least
6627	// one of the agent's test cases.
6628	Covered bool `json:"covered,omitempty"`
6629
6630	// TransitionRoute: Intent route or condition route.
6631	TransitionRoute *GoogleCloudDialogflowCxV3TransitionRoute `json:"transitionRoute,omitempty"`
6632
6633	// ForceSendFields is a list of field names (e.g. "Covered") to
6634	// unconditionally include in API requests. By default, fields with
6635	// empty or default values are omitted from API requests. However, any
6636	// non-pointer, non-interface field appearing in ForceSendFields will be
6637	// sent to the server regardless of whether the field is empty or not.
6638	// This may be used to include empty fields in Patch requests.
6639	ForceSendFields []string `json:"-"`
6640
6641	// NullFields is a list of field names (e.g. "Covered") to include in
6642	// API requests with the JSON null value. By default, fields with empty
6643	// values are omitted from API requests. However, any field with an
6644	// empty value appearing in NullFields will be sent to the server as
6645	// null. It is an error if a field in this list has a non-empty value.
6646	// This may be used to include null fields in Patch requests.
6647	NullFields []string `json:"-"`
6648}
6649
6650func (s *GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverageTransition) MarshalJSON() ([]byte, error) {
6651	type NoMethod GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverageTransition
6652	raw := NoMethod(*s)
6653	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6654}
6655
6656// GoogleCloudDialogflowCxV3UpdateDocumentOperationMetadata: Metadata
6657// for UpdateDocument operation.
6658type GoogleCloudDialogflowCxV3UpdateDocumentOperationMetadata struct {
6659	// GenericMetadata: The generic information of the operation.
6660	GenericMetadata *GoogleCloudDialogflowCxV3GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
6661
6662	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
6663	// unconditionally include in API requests. By default, fields with
6664	// empty or default values are omitted from API requests. However, any
6665	// non-pointer, non-interface field appearing in ForceSendFields will be
6666	// sent to the server regardless of whether the field is empty or not.
6667	// This may be used to include empty fields in Patch requests.
6668	ForceSendFields []string `json:"-"`
6669
6670	// NullFields is a list of field names (e.g. "GenericMetadata") to
6671	// include in API requests with the JSON null value. By default, fields
6672	// with empty values are omitted from API requests. However, any field
6673	// with an empty value appearing in NullFields will be sent to the
6674	// server as null. It is an error if a field in this list has a
6675	// non-empty value. This may be used to include null fields in Patch
6676	// requests.
6677	NullFields []string `json:"-"`
6678}
6679
6680func (s *GoogleCloudDialogflowCxV3UpdateDocumentOperationMetadata) MarshalJSON() ([]byte, error) {
6681	type NoMethod GoogleCloudDialogflowCxV3UpdateDocumentOperationMetadata
6682	raw := NoMethod(*s)
6683	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6684}
6685
6686// GoogleCloudDialogflowCxV3ValidateAgentRequest: The request message
6687// for Agents.ValidateAgent.
6688type GoogleCloudDialogflowCxV3ValidateAgentRequest struct {
6689	// LanguageCode: If not specified, the agent's default language is used.
6690	LanguageCode string `json:"languageCode,omitempty"`
6691
6692	// ForceSendFields is a list of field names (e.g. "LanguageCode") to
6693	// unconditionally include in API requests. By default, fields with
6694	// empty or default values are omitted from API requests. However, any
6695	// non-pointer, non-interface field appearing in ForceSendFields will be
6696	// sent to the server regardless of whether the field is empty or not.
6697	// This may be used to include empty fields in Patch requests.
6698	ForceSendFields []string `json:"-"`
6699
6700	// NullFields is a list of field names (e.g. "LanguageCode") to include
6701	// in API requests with the JSON null value. By default, fields with
6702	// empty values are omitted from API requests. However, any field with
6703	// an empty value appearing in NullFields will be sent to the server as
6704	// null. It is an error if a field in this list has a non-empty value.
6705	// This may be used to include null fields in Patch requests.
6706	NullFields []string `json:"-"`
6707}
6708
6709func (s *GoogleCloudDialogflowCxV3ValidateAgentRequest) MarshalJSON() ([]byte, error) {
6710	type NoMethod GoogleCloudDialogflowCxV3ValidateAgentRequest
6711	raw := NoMethod(*s)
6712	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6713}
6714
6715// GoogleCloudDialogflowCxV3ValidateFlowRequest: The request message for
6716// Flows.ValidateFlow.
6717type GoogleCloudDialogflowCxV3ValidateFlowRequest struct {
6718	// LanguageCode: If not specified, the agent's default language is used.
6719	LanguageCode string `json:"languageCode,omitempty"`
6720
6721	// ForceSendFields is a list of field names (e.g. "LanguageCode") to
6722	// unconditionally include in API requests. By default, fields with
6723	// empty or default values are omitted from API requests. However, any
6724	// non-pointer, non-interface field appearing in ForceSendFields will be
6725	// sent to the server regardless of whether the field is empty or not.
6726	// This may be used to include empty fields in Patch requests.
6727	ForceSendFields []string `json:"-"`
6728
6729	// NullFields is a list of field names (e.g. "LanguageCode") to include
6730	// in API requests with the JSON null value. By default, fields with
6731	// empty values are omitted from API requests. However, any field with
6732	// an empty value appearing in NullFields will be sent to the server as
6733	// null. It is an error if a field in this list has a non-empty value.
6734	// This may be used to include null fields in Patch requests.
6735	NullFields []string `json:"-"`
6736}
6737
6738func (s *GoogleCloudDialogflowCxV3ValidateFlowRequest) MarshalJSON() ([]byte, error) {
6739	type NoMethod GoogleCloudDialogflowCxV3ValidateFlowRequest
6740	raw := NoMethod(*s)
6741	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6742}
6743
6744// GoogleCloudDialogflowCxV3ValidationMessage: Agent/flow validation
6745// message.
6746type GoogleCloudDialogflowCxV3ValidationMessage struct {
6747	// Detail: The message detail.
6748	Detail string `json:"detail,omitempty"`
6749
6750	// ResourceNames: The resource names of the resources where the message
6751	// is found.
6752	ResourceNames []*GoogleCloudDialogflowCxV3ResourceName `json:"resourceNames,omitempty"`
6753
6754	// ResourceType: The type of the resources where the message is found.
6755	//
6756	// Possible values:
6757	//   "RESOURCE_TYPE_UNSPECIFIED" - Unspecified.
6758	//   "AGENT" - Agent.
6759	//   "INTENT" - Intent.
6760	//   "INTENT_TRAINING_PHRASE" - Intent training phrase.
6761	//   "INTENT_PARAMETER" - Intent parameter.
6762	//   "INTENTS" - Multiple intents.
6763	//   "INTENT_TRAINING_PHRASES" - Multiple training phrases.
6764	//   "ENTITY_TYPE" - Entity type.
6765	//   "ENTITY_TYPES" - Multiple entity types.
6766	//   "WEBHOOK" - Webhook.
6767	//   "FLOW" - Flow.
6768	//   "PAGE" - Page.
6769	//   "PAGES" - Multiple pages.
6770	//   "TRANSITION_ROUTE_GROUP" - Transition route group.
6771	ResourceType string `json:"resourceType,omitempty"`
6772
6773	// Resources: The names of the resources where the message is found.
6774	Resources []string `json:"resources,omitempty"`
6775
6776	// Severity: Indicates the severity of the message.
6777	//
6778	// Possible values:
6779	//   "SEVERITY_UNSPECIFIED" - Unspecified.
6780	//   "INFO" - The agent doesn't follow Dialogflow best practices.
6781	//   "WARNING" - The agent may not behave as expected.
6782	//   "ERROR" - The agent may experience failures.
6783	Severity string `json:"severity,omitempty"`
6784
6785	// ForceSendFields is a list of field names (e.g. "Detail") to
6786	// unconditionally include in API requests. By default, fields with
6787	// empty or default values are omitted from API requests. However, any
6788	// non-pointer, non-interface field appearing in ForceSendFields will be
6789	// sent to the server regardless of whether the field is empty or not.
6790	// This may be used to include empty fields in Patch requests.
6791	ForceSendFields []string `json:"-"`
6792
6793	// NullFields is a list of field names (e.g. "Detail") to include in API
6794	// requests with the JSON null value. By default, fields with empty
6795	// values are omitted from API requests. However, any field with an
6796	// empty value appearing in NullFields will be sent to the server as
6797	// null. It is an error if a field in this list has a non-empty value.
6798	// This may be used to include null fields in Patch requests.
6799	NullFields []string `json:"-"`
6800}
6801
6802func (s *GoogleCloudDialogflowCxV3ValidationMessage) MarshalJSON() ([]byte, error) {
6803	type NoMethod GoogleCloudDialogflowCxV3ValidationMessage
6804	raw := NoMethod(*s)
6805	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6806}
6807
6808// GoogleCloudDialogflowCxV3VariantsHistory: The history of variants
6809// update.
6810type GoogleCloudDialogflowCxV3VariantsHistory struct {
6811	// UpdateTime: Update time of the variants.
6812	UpdateTime string `json:"updateTime,omitempty"`
6813
6814	// VersionVariants: The flow versions as the variants.
6815	VersionVariants *GoogleCloudDialogflowCxV3VersionVariants `json:"versionVariants,omitempty"`
6816
6817	// ForceSendFields is a list of field names (e.g. "UpdateTime") to
6818	// unconditionally include in API requests. By default, fields with
6819	// empty or default values are omitted from API requests. However, any
6820	// non-pointer, non-interface field appearing in ForceSendFields will be
6821	// sent to the server regardless of whether the field is empty or not.
6822	// This may be used to include empty fields in Patch requests.
6823	ForceSendFields []string `json:"-"`
6824
6825	// NullFields is a list of field names (e.g. "UpdateTime") to include in
6826	// API requests with the JSON null value. By default, fields with empty
6827	// values are omitted from API requests. However, any field with an
6828	// empty value appearing in NullFields will be sent to the server as
6829	// null. It is an error if a field in this list has a non-empty value.
6830	// This may be used to include null fields in Patch requests.
6831	NullFields []string `json:"-"`
6832}
6833
6834func (s *GoogleCloudDialogflowCxV3VariantsHistory) MarshalJSON() ([]byte, error) {
6835	type NoMethod GoogleCloudDialogflowCxV3VariantsHistory
6836	raw := NoMethod(*s)
6837	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6838}
6839
6840// GoogleCloudDialogflowCxV3Version: Represents a version of a flow.
6841type GoogleCloudDialogflowCxV3Version struct {
6842	// CreateTime: Output only. Create time of the version.
6843	CreateTime string `json:"createTime,omitempty"`
6844
6845	// Description: The description of the version. The maximum length is
6846	// 500 characters. If exceeded, the request is rejected.
6847	Description string `json:"description,omitempty"`
6848
6849	// DisplayName: Required. The human-readable name of the version. Limit
6850	// of 64 characters.
6851	DisplayName string `json:"displayName,omitempty"`
6852
6853	// Name: Format: projects//locations//agents//flows//versions/. Version
6854	// ID is a self-increasing number generated by Dialogflow upon version
6855	// creation.
6856	Name string `json:"name,omitempty"`
6857
6858	// NluSettings: Output only. The NLU settings of the flow at version
6859	// creation.
6860	NluSettings *GoogleCloudDialogflowCxV3NluSettings `json:"nluSettings,omitempty"`
6861
6862	// State: Output only. The state of this version. This field is
6863	// read-only and cannot be set by create and update methods.
6864	//
6865	// Possible values:
6866	//   "STATE_UNSPECIFIED" - Not specified. This value is not used.
6867	//   "RUNNING" - Version is not ready to serve (e.g. training is
6868	// running).
6869	//   "SUCCEEDED" - Training has succeeded and this version is ready to
6870	// serve.
6871	//   "FAILED" - Version training failed.
6872	State string `json:"state,omitempty"`
6873
6874	// ServerResponse contains the HTTP response code and headers from the
6875	// server.
6876	googleapi.ServerResponse `json:"-"`
6877
6878	// ForceSendFields is a list of field names (e.g. "CreateTime") to
6879	// unconditionally include in API requests. By default, fields with
6880	// empty or default values are omitted from API requests. However, any
6881	// non-pointer, non-interface field appearing in ForceSendFields will be
6882	// sent to the server regardless of whether the field is empty or not.
6883	// This may be used to include empty fields in Patch requests.
6884	ForceSendFields []string `json:"-"`
6885
6886	// NullFields is a list of field names (e.g. "CreateTime") to include in
6887	// API requests with the JSON null value. By default, fields with empty
6888	// values are omitted from API requests. However, any field with an
6889	// empty value appearing in NullFields will be sent to the server as
6890	// null. It is an error if a field in this list has a non-empty value.
6891	// This may be used to include null fields in Patch requests.
6892	NullFields []string `json:"-"`
6893}
6894
6895func (s *GoogleCloudDialogflowCxV3Version) MarshalJSON() ([]byte, error) {
6896	type NoMethod GoogleCloudDialogflowCxV3Version
6897	raw := NoMethod(*s)
6898	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6899}
6900
6901// GoogleCloudDialogflowCxV3VersionVariants: A list of flow version
6902// variants.
6903type GoogleCloudDialogflowCxV3VersionVariants struct {
6904	// Variants: A list of flow version variants.
6905	Variants []*GoogleCloudDialogflowCxV3VersionVariantsVariant `json:"variants,omitempty"`
6906
6907	// ForceSendFields is a list of field names (e.g. "Variants") to
6908	// unconditionally include in API requests. By default, fields with
6909	// empty or default values are omitted from API requests. However, any
6910	// non-pointer, non-interface field appearing in ForceSendFields will be
6911	// sent to the server regardless of whether the field is empty or not.
6912	// This may be used to include empty fields in Patch requests.
6913	ForceSendFields []string `json:"-"`
6914
6915	// NullFields is a list of field names (e.g. "Variants") to include in
6916	// API requests with the JSON null value. By default, fields with empty
6917	// values are omitted from API requests. However, any field with an
6918	// empty value appearing in NullFields will be sent to the server as
6919	// null. It is an error if a field in this list has a non-empty value.
6920	// This may be used to include null fields in Patch requests.
6921	NullFields []string `json:"-"`
6922}
6923
6924func (s *GoogleCloudDialogflowCxV3VersionVariants) MarshalJSON() ([]byte, error) {
6925	type NoMethod GoogleCloudDialogflowCxV3VersionVariants
6926	raw := NoMethod(*s)
6927	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6928}
6929
6930// GoogleCloudDialogflowCxV3VersionVariantsVariant: A single flow
6931// version with specified traffic allocation.
6932type GoogleCloudDialogflowCxV3VersionVariantsVariant struct {
6933	// IsControlGroup: Whether the variant is for the control group.
6934	IsControlGroup bool `json:"isControlGroup,omitempty"`
6935
6936	// TrafficAllocation: Percentage of the traffic which should be routed
6937	// to this version of flow. Traffic allocation for a single flow must
6938	// sum up to 1.0.
6939	TrafficAllocation float64 `json:"trafficAllocation,omitempty"`
6940
6941	// Version: The name of the flow version. Format:
6942	// `projects//locations//agents//flows//versions/`.
6943	Version string `json:"version,omitempty"`
6944
6945	// ForceSendFields is a list of field names (e.g. "IsControlGroup") to
6946	// unconditionally include in API requests. By default, fields with
6947	// empty or default values are omitted from API requests. However, any
6948	// non-pointer, non-interface field appearing in ForceSendFields will be
6949	// sent to the server regardless of whether the field is empty or not.
6950	// This may be used to include empty fields in Patch requests.
6951	ForceSendFields []string `json:"-"`
6952
6953	// NullFields is a list of field names (e.g. "IsControlGroup") to
6954	// include in API requests with the JSON null value. By default, fields
6955	// with empty values are omitted from API requests. However, any field
6956	// with an empty value appearing in NullFields will be sent to the
6957	// server as null. It is an error if a field in this list has a
6958	// non-empty value. This may be used to include null fields in Patch
6959	// requests.
6960	NullFields []string `json:"-"`
6961}
6962
6963func (s *GoogleCloudDialogflowCxV3VersionVariantsVariant) MarshalJSON() ([]byte, error) {
6964	type NoMethod GoogleCloudDialogflowCxV3VersionVariantsVariant
6965	raw := NoMethod(*s)
6966	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6967}
6968
6969func (s *GoogleCloudDialogflowCxV3VersionVariantsVariant) UnmarshalJSON(data []byte) error {
6970	type NoMethod GoogleCloudDialogflowCxV3VersionVariantsVariant
6971	var s1 struct {
6972		TrafficAllocation gensupport.JSONFloat64 `json:"trafficAllocation"`
6973		*NoMethod
6974	}
6975	s1.NoMethod = (*NoMethod)(s)
6976	if err := json.Unmarshal(data, &s1); err != nil {
6977		return err
6978	}
6979	s.TrafficAllocation = float64(s1.TrafficAllocation)
6980	return nil
6981}
6982
6983// GoogleCloudDialogflowCxV3VoiceSelectionParams: Description of which
6984// voice to use for speech synthesis.
6985type GoogleCloudDialogflowCxV3VoiceSelectionParams struct {
6986	// Name: Optional. The name of the voice. If not set, the service will
6987	// choose a voice based on the other parameters such as language_code
6988	// and ssml_gender. For the list of available voices, please refer to
6989	// Supported voices and languages
6990	// (https://cloud.google.com/text-to-speech/docs/voices).
6991	Name string `json:"name,omitempty"`
6992
6993	// SsmlGender: Optional. The preferred gender of the voice. If not set,
6994	// the service will choose a voice based on the other parameters such as
6995	// language_code and name. Note that this is only a preference, not
6996	// requirement. If a voice of the appropriate gender is not available,
6997	// the synthesizer substitutes a voice with a different gender rather
6998	// than failing the request.
6999	//
7000	// Possible values:
7001	//   "SSML_VOICE_GENDER_UNSPECIFIED" - An unspecified gender, which
7002	// means that the client doesn't care which gender the selected voice
7003	// will have.
7004	//   "SSML_VOICE_GENDER_MALE" - A male voice.
7005	//   "SSML_VOICE_GENDER_FEMALE" - A female voice.
7006	//   "SSML_VOICE_GENDER_NEUTRAL" - A gender-neutral voice.
7007	SsmlGender string `json:"ssmlGender,omitempty"`
7008
7009	// ForceSendFields is a list of field names (e.g. "Name") to
7010	// unconditionally include in API requests. By default, fields with
7011	// empty or default values are omitted from API requests. However, any
7012	// non-pointer, non-interface field appearing in ForceSendFields will be
7013	// sent to the server regardless of whether the field is empty or not.
7014	// This may be used to include empty fields in Patch requests.
7015	ForceSendFields []string `json:"-"`
7016
7017	// NullFields is a list of field names (e.g. "Name") to include in API
7018	// requests with the JSON null value. By default, fields with empty
7019	// values are omitted from API requests. However, any field with an
7020	// empty value appearing in NullFields will be sent to the server as
7021	// null. It is an error if a field in this list has a non-empty value.
7022	// This may be used to include null fields in Patch requests.
7023	NullFields []string `json:"-"`
7024}
7025
7026func (s *GoogleCloudDialogflowCxV3VoiceSelectionParams) MarshalJSON() ([]byte, error) {
7027	type NoMethod GoogleCloudDialogflowCxV3VoiceSelectionParams
7028	raw := NoMethod(*s)
7029	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7030}
7031
7032// GoogleCloudDialogflowCxV3Webhook: Webhooks host the developer's
7033// business logic. During a session, webhooks allow the developer to use
7034// the data extracted by Dialogflow's natural language processing to
7035// generate dynamic responses, validate collected data, or trigger
7036// actions on the backend.
7037type GoogleCloudDialogflowCxV3Webhook struct {
7038	// Disabled: Indicates whether the webhook is disabled.
7039	Disabled bool `json:"disabled,omitempty"`
7040
7041	// DisplayName: Required. The human-readable name of the webhook, unique
7042	// within the agent.
7043	DisplayName string `json:"displayName,omitempty"`
7044
7045	// GenericWebService: Configuration for a generic web service.
7046	GenericWebService *GoogleCloudDialogflowCxV3WebhookGenericWebService `json:"genericWebService,omitempty"`
7047
7048	// Name: The unique identifier of the webhook. Required for the
7049	// Webhooks.UpdateWebhook method. Webhooks.CreateWebhook populates the
7050	// name automatically. Format: `projects//locations//agents//webhooks/`.
7051	Name string `json:"name,omitempty"`
7052
7053	// ServiceDirectory: Configuration for a Service Directory
7054	// (https://cloud.google.com/service-directory) service.
7055	ServiceDirectory *GoogleCloudDialogflowCxV3WebhookServiceDirectoryConfig `json:"serviceDirectory,omitempty"`
7056
7057	// Timeout: Webhook execution timeout. Execution is considered failed if
7058	// Dialogflow doesn't receive a response from webhook at the end of the
7059	// timeout period. Defaults to 5 seconds, maximum allowed timeout is 30
7060	// seconds.
7061	Timeout string `json:"timeout,omitempty"`
7062
7063	// ServerResponse contains the HTTP response code and headers from the
7064	// server.
7065	googleapi.ServerResponse `json:"-"`
7066
7067	// ForceSendFields is a list of field names (e.g. "Disabled") to
7068	// unconditionally include in API requests. By default, fields with
7069	// empty or default values are omitted from API requests. However, any
7070	// non-pointer, non-interface field appearing in ForceSendFields will be
7071	// sent to the server regardless of whether the field is empty or not.
7072	// This may be used to include empty fields in Patch requests.
7073	ForceSendFields []string `json:"-"`
7074
7075	// NullFields is a list of field names (e.g. "Disabled") to include in
7076	// API requests with the JSON null value. By default, fields with empty
7077	// values are omitted from API requests. However, any field with an
7078	// empty value appearing in NullFields will be sent to the server as
7079	// null. It is an error if a field in this list has a non-empty value.
7080	// This may be used to include null fields in Patch requests.
7081	NullFields []string `json:"-"`
7082}
7083
7084func (s *GoogleCloudDialogflowCxV3Webhook) MarshalJSON() ([]byte, error) {
7085	type NoMethod GoogleCloudDialogflowCxV3Webhook
7086	raw := NoMethod(*s)
7087	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7088}
7089
7090// GoogleCloudDialogflowCxV3WebhookGenericWebService: Represents
7091// configuration for a generic web service.
7092type GoogleCloudDialogflowCxV3WebhookGenericWebService struct {
7093	// Password: The password for HTTP Basic authentication.
7094	Password string `json:"password,omitempty"`
7095
7096	// RequestHeaders: The HTTP request headers to send together with
7097	// webhook requests.
7098	RequestHeaders map[string]string `json:"requestHeaders,omitempty"`
7099
7100	// Uri: Required. The webhook URI for receiving POST requests. It must
7101	// use https protocol.
7102	Uri string `json:"uri,omitempty"`
7103
7104	// Username: The user name for HTTP Basic authentication.
7105	Username string `json:"username,omitempty"`
7106
7107	// ForceSendFields is a list of field names (e.g. "Password") to
7108	// unconditionally include in API requests. By default, fields with
7109	// empty or default values are omitted from API requests. However, any
7110	// non-pointer, non-interface field appearing in ForceSendFields will be
7111	// sent to the server regardless of whether the field is empty or not.
7112	// This may be used to include empty fields in Patch requests.
7113	ForceSendFields []string `json:"-"`
7114
7115	// NullFields is a list of field names (e.g. "Password") to include in
7116	// API requests with the JSON null value. By default, fields with empty
7117	// values are omitted from API requests. However, any field with an
7118	// empty value appearing in NullFields will be sent to the server as
7119	// null. It is an error if a field in this list has a non-empty value.
7120	// This may be used to include null fields in Patch requests.
7121	NullFields []string `json:"-"`
7122}
7123
7124func (s *GoogleCloudDialogflowCxV3WebhookGenericWebService) MarshalJSON() ([]byte, error) {
7125	type NoMethod GoogleCloudDialogflowCxV3WebhookGenericWebService
7126	raw := NoMethod(*s)
7127	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7128}
7129
7130// GoogleCloudDialogflowCxV3WebhookRequest: The request message for a
7131// webhook call. The request is sent as a JSON object and the field
7132// names will be presented in camel cases.
7133type GoogleCloudDialogflowCxV3WebhookRequest struct {
7134	// DetectIntentResponseId: Always present. The unique identifier of the
7135	// DetectIntentResponse that will be returned to the API caller.
7136	DetectIntentResponseId string `json:"detectIntentResponseId,omitempty"`
7137
7138	// FulfillmentInfo: Always present. Information about the fulfillment
7139	// that triggered this webhook call.
7140	FulfillmentInfo *GoogleCloudDialogflowCxV3WebhookRequestFulfillmentInfo `json:"fulfillmentInfo,omitempty"`
7141
7142	// IntentInfo: Information about the last matched intent.
7143	IntentInfo *GoogleCloudDialogflowCxV3WebhookRequestIntentInfo `json:"intentInfo,omitempty"`
7144
7145	// LanguageCode: The language code specified in the original request.
7146	LanguageCode string `json:"languageCode,omitempty"`
7147
7148	// Messages: The list of rich message responses to present to the user.
7149	// Webhook can choose to append or replace this list in
7150	// WebhookResponse.fulfillment_response;
7151	Messages []*GoogleCloudDialogflowCxV3ResponseMessage `json:"messages,omitempty"`
7152
7153	// PageInfo: Information about page status.
7154	PageInfo *GoogleCloudDialogflowCxV3PageInfo `json:"pageInfo,omitempty"`
7155
7156	// Payload: Custom data set in QueryParameters.payload.
7157	Payload googleapi.RawMessage `json:"payload,omitempty"`
7158
7159	// SentimentAnalysisResult: The sentiment analysis result of the current
7160	// user request. The field is filled when sentiment analysis is
7161	// configured to be enabled for the request.
7162	SentimentAnalysisResult *GoogleCloudDialogflowCxV3WebhookRequestSentimentAnalysisResult `json:"sentimentAnalysisResult,omitempty"`
7163
7164	// SessionInfo: Information about session status.
7165	SessionInfo *GoogleCloudDialogflowCxV3SessionInfo `json:"sessionInfo,omitempty"`
7166
7167	// Text: If natural language text was provided as input, this field will
7168	// contain a copy of the text.
7169	Text string `json:"text,omitempty"`
7170
7171	// Transcript: If natural language speech audio was provided as input,
7172	// this field will contain the transcript for the audio.
7173	Transcript string `json:"transcript,omitempty"`
7174
7175	// TriggerEvent: If an event was provided as input, this field will
7176	// contain the name of the event.
7177	TriggerEvent string `json:"triggerEvent,omitempty"`
7178
7179	// TriggerIntent: If an intent was provided as input, this field will
7180	// contain a copy of the intent identifier. Format:
7181	// `projects//locations//agents//intents/`.
7182	TriggerIntent string `json:"triggerIntent,omitempty"`
7183
7184	// ForceSendFields is a list of field names (e.g.
7185	// "DetectIntentResponseId") to unconditionally include in API requests.
7186	// By default, fields with empty or default values are omitted from API
7187	// requests. However, any non-pointer, non-interface field appearing in
7188	// ForceSendFields will be sent to the server regardless of whether the
7189	// field is empty or not. This may be used to include empty fields in
7190	// Patch requests.
7191	ForceSendFields []string `json:"-"`
7192
7193	// NullFields is a list of field names (e.g. "DetectIntentResponseId")
7194	// to include in API requests with the JSON null value. By default,
7195	// fields with empty values are omitted from API requests. However, any
7196	// field with an empty value appearing in NullFields will be sent to the
7197	// server as null. It is an error if a field in this list has a
7198	// non-empty value. This may be used to include null fields in Patch
7199	// requests.
7200	NullFields []string `json:"-"`
7201}
7202
7203func (s *GoogleCloudDialogflowCxV3WebhookRequest) MarshalJSON() ([]byte, error) {
7204	type NoMethod GoogleCloudDialogflowCxV3WebhookRequest
7205	raw := NoMethod(*s)
7206	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7207}
7208
7209// GoogleCloudDialogflowCxV3WebhookRequestFulfillmentInfo: Represents
7210// fulfillment information communicated to the webhook.
7211type GoogleCloudDialogflowCxV3WebhookRequestFulfillmentInfo struct {
7212	// Tag: Always present. The tag used to identify which fulfillment is
7213	// being called.
7214	Tag string `json:"tag,omitempty"`
7215
7216	// ForceSendFields is a list of field names (e.g. "Tag") to
7217	// unconditionally include in API requests. By default, fields with
7218	// empty or default values are omitted from API requests. However, any
7219	// non-pointer, non-interface field appearing in ForceSendFields will be
7220	// sent to the server regardless of whether the field is empty or not.
7221	// This may be used to include empty fields in Patch requests.
7222	ForceSendFields []string `json:"-"`
7223
7224	// NullFields is a list of field names (e.g. "Tag") to include in API
7225	// requests with the JSON null value. By default, fields with empty
7226	// values are omitted from API requests. However, any field with an
7227	// empty value appearing in NullFields will be sent to the server as
7228	// null. It is an error if a field in this list has a non-empty value.
7229	// This may be used to include null fields in Patch requests.
7230	NullFields []string `json:"-"`
7231}
7232
7233func (s *GoogleCloudDialogflowCxV3WebhookRequestFulfillmentInfo) MarshalJSON() ([]byte, error) {
7234	type NoMethod GoogleCloudDialogflowCxV3WebhookRequestFulfillmentInfo
7235	raw := NoMethod(*s)
7236	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7237}
7238
7239// GoogleCloudDialogflowCxV3WebhookRequestIntentInfo: Represents intent
7240// information communicated to the webhook.
7241type GoogleCloudDialogflowCxV3WebhookRequestIntentInfo struct {
7242	// Confidence: The confidence of the matched intent. Values range from
7243	// 0.0 (completely uncertain) to 1.0 (completely certain).
7244	Confidence float64 `json:"confidence,omitempty"`
7245
7246	// DisplayName: Always present. The display name of the last matched
7247	// intent.
7248	DisplayName string `json:"displayName,omitempty"`
7249
7250	// LastMatchedIntent: Always present. The unique identifier of the last
7251	// matched intent. Format: `projects//locations//agents//intents/`.
7252	LastMatchedIntent string `json:"lastMatchedIntent,omitempty"`
7253
7254	// Parameters: Parameters identified as a result of intent matching.
7255	// This is a map of the name of the identified parameter to the value of
7256	// the parameter identified from the user's utterance. All parameters
7257	// defined in the matched intent that are identified will be surfaced
7258	// here.
7259	Parameters map[string]GoogleCloudDialogflowCxV3WebhookRequestIntentInfoIntentParameterValue `json:"parameters,omitempty"`
7260
7261	// ForceSendFields is a list of field names (e.g. "Confidence") to
7262	// unconditionally include in API requests. By default, fields with
7263	// empty or default values are omitted from API requests. However, any
7264	// non-pointer, non-interface field appearing in ForceSendFields will be
7265	// sent to the server regardless of whether the field is empty or not.
7266	// This may be used to include empty fields in Patch requests.
7267	ForceSendFields []string `json:"-"`
7268
7269	// NullFields is a list of field names (e.g. "Confidence") to include in
7270	// API requests with the JSON null value. By default, fields with empty
7271	// values are omitted from API requests. However, any field with an
7272	// empty value appearing in NullFields will be sent to the server as
7273	// null. It is an error if a field in this list has a non-empty value.
7274	// This may be used to include null fields in Patch requests.
7275	NullFields []string `json:"-"`
7276}
7277
7278func (s *GoogleCloudDialogflowCxV3WebhookRequestIntentInfo) MarshalJSON() ([]byte, error) {
7279	type NoMethod GoogleCloudDialogflowCxV3WebhookRequestIntentInfo
7280	raw := NoMethod(*s)
7281	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7282}
7283
7284func (s *GoogleCloudDialogflowCxV3WebhookRequestIntentInfo) UnmarshalJSON(data []byte) error {
7285	type NoMethod GoogleCloudDialogflowCxV3WebhookRequestIntentInfo
7286	var s1 struct {
7287		Confidence gensupport.JSONFloat64 `json:"confidence"`
7288		*NoMethod
7289	}
7290	s1.NoMethod = (*NoMethod)(s)
7291	if err := json.Unmarshal(data, &s1); err != nil {
7292		return err
7293	}
7294	s.Confidence = float64(s1.Confidence)
7295	return nil
7296}
7297
7298// GoogleCloudDialogflowCxV3WebhookRequestIntentInfoIntentParameterValue:
7299//  Represents a value for an intent parameter.
7300type GoogleCloudDialogflowCxV3WebhookRequestIntentInfoIntentParameterValue struct {
7301	// OriginalValue: Always present. Original text value extracted from
7302	// user utterance.
7303	OriginalValue string `json:"originalValue,omitempty"`
7304
7305	// ResolvedValue: Always present. Structured value for the parameter
7306	// extracted from user utterance.
7307	ResolvedValue interface{} `json:"resolvedValue,omitempty"`
7308
7309	// ForceSendFields is a list of field names (e.g. "OriginalValue") to
7310	// unconditionally include in API requests. By default, fields with
7311	// empty or default values are omitted from API requests. However, any
7312	// non-pointer, non-interface field appearing in ForceSendFields will be
7313	// sent to the server regardless of whether the field is empty or not.
7314	// This may be used to include empty fields in Patch requests.
7315	ForceSendFields []string `json:"-"`
7316
7317	// NullFields is a list of field names (e.g. "OriginalValue") to include
7318	// in API requests with the JSON null value. By default, fields with
7319	// empty values are omitted from API requests. However, any field with
7320	// an empty value appearing in NullFields will be sent to the server as
7321	// null. It is an error if a field in this list has a non-empty value.
7322	// This may be used to include null fields in Patch requests.
7323	NullFields []string `json:"-"`
7324}
7325
7326func (s *GoogleCloudDialogflowCxV3WebhookRequestIntentInfoIntentParameterValue) MarshalJSON() ([]byte, error) {
7327	type NoMethod GoogleCloudDialogflowCxV3WebhookRequestIntentInfoIntentParameterValue
7328	raw := NoMethod(*s)
7329	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7330}
7331
7332// GoogleCloudDialogflowCxV3WebhookRequestSentimentAnalysisResult:
7333// Represents the result of sentiment analysis.
7334type GoogleCloudDialogflowCxV3WebhookRequestSentimentAnalysisResult struct {
7335	// Magnitude: A non-negative number in the [0, +inf) range, which
7336	// represents the absolute magnitude of sentiment, regardless of score
7337	// (positive or negative).
7338	Magnitude float64 `json:"magnitude,omitempty"`
7339
7340	// Score: Sentiment score between -1.0 (negative sentiment) and 1.0
7341	// (positive sentiment).
7342	Score float64 `json:"score,omitempty"`
7343
7344	// ForceSendFields is a list of field names (e.g. "Magnitude") to
7345	// unconditionally include in API requests. By default, fields with
7346	// empty or default values are omitted from API requests. However, any
7347	// non-pointer, non-interface field appearing in ForceSendFields will be
7348	// sent to the server regardless of whether the field is empty or not.
7349	// This may be used to include empty fields in Patch requests.
7350	ForceSendFields []string `json:"-"`
7351
7352	// NullFields is a list of field names (e.g. "Magnitude") to include in
7353	// API requests with the JSON null value. By default, fields with empty
7354	// values are omitted from API requests. However, any field with an
7355	// empty value appearing in NullFields will be sent to the server as
7356	// null. It is an error if a field in this list has a non-empty value.
7357	// This may be used to include null fields in Patch requests.
7358	NullFields []string `json:"-"`
7359}
7360
7361func (s *GoogleCloudDialogflowCxV3WebhookRequestSentimentAnalysisResult) MarshalJSON() ([]byte, error) {
7362	type NoMethod GoogleCloudDialogflowCxV3WebhookRequestSentimentAnalysisResult
7363	raw := NoMethod(*s)
7364	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7365}
7366
7367func (s *GoogleCloudDialogflowCxV3WebhookRequestSentimentAnalysisResult) UnmarshalJSON(data []byte) error {
7368	type NoMethod GoogleCloudDialogflowCxV3WebhookRequestSentimentAnalysisResult
7369	var s1 struct {
7370		Magnitude gensupport.JSONFloat64 `json:"magnitude"`
7371		Score     gensupport.JSONFloat64 `json:"score"`
7372		*NoMethod
7373	}
7374	s1.NoMethod = (*NoMethod)(s)
7375	if err := json.Unmarshal(data, &s1); err != nil {
7376		return err
7377	}
7378	s.Magnitude = float64(s1.Magnitude)
7379	s.Score = float64(s1.Score)
7380	return nil
7381}
7382
7383// GoogleCloudDialogflowCxV3WebhookResponse: The response message for a
7384// webhook call.
7385type GoogleCloudDialogflowCxV3WebhookResponse struct {
7386	// FulfillmentResponse: The fulfillment response to send to the user.
7387	// This field can be omitted by the webhook if it does not intend to
7388	// send any response to the user.
7389	FulfillmentResponse *GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse `json:"fulfillmentResponse,omitempty"`
7390
7391	// PageInfo: Information about page status. This field can be omitted by
7392	// the webhook if it does not intend to modify page status.
7393	PageInfo *GoogleCloudDialogflowCxV3PageInfo `json:"pageInfo,omitempty"`
7394
7395	// Payload: Value to append directly to QueryResult.webhook_payloads.
7396	Payload googleapi.RawMessage `json:"payload,omitempty"`
7397
7398	// SessionInfo: Information about session status. This field can be
7399	// omitted by the webhook if it does not intend to modify session
7400	// status.
7401	SessionInfo *GoogleCloudDialogflowCxV3SessionInfo `json:"sessionInfo,omitempty"`
7402
7403	// TargetFlow: The target flow to transition to. Format:
7404	// `projects//locations//agents//flows/`.
7405	TargetFlow string `json:"targetFlow,omitempty"`
7406
7407	// TargetPage: The target page to transition to. Format:
7408	// `projects//locations//agents//flows//pages/`.
7409	TargetPage string `json:"targetPage,omitempty"`
7410
7411	// ForceSendFields is a list of field names (e.g. "FulfillmentResponse")
7412	// to unconditionally include in API requests. By default, fields with
7413	// empty or default values are omitted from API requests. However, any
7414	// non-pointer, non-interface field appearing in ForceSendFields will be
7415	// sent to the server regardless of whether the field is empty or not.
7416	// This may be used to include empty fields in Patch requests.
7417	ForceSendFields []string `json:"-"`
7418
7419	// NullFields is a list of field names (e.g. "FulfillmentResponse") to
7420	// include in API requests with the JSON null value. By default, fields
7421	// with empty values are omitted from API requests. However, any field
7422	// with an empty value appearing in NullFields will be sent to the
7423	// server as null. It is an error if a field in this list has a
7424	// non-empty value. This may be used to include null fields in Patch
7425	// requests.
7426	NullFields []string `json:"-"`
7427}
7428
7429func (s *GoogleCloudDialogflowCxV3WebhookResponse) MarshalJSON() ([]byte, error) {
7430	type NoMethod GoogleCloudDialogflowCxV3WebhookResponse
7431	raw := NoMethod(*s)
7432	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7433}
7434
7435// GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse:
7436// Represents a fulfillment response to the user.
7437type GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse struct {
7438	// MergeBehavior: Merge behavior for `messages`.
7439	//
7440	// Possible values:
7441	//   "MERGE_BEHAVIOR_UNSPECIFIED" - Not specified. `APPEND` will be
7442	// used.
7443	//   "APPEND" - `messages` will be appended to the list of messages
7444	// waiting to be sent to the user.
7445	//   "REPLACE" - `messages` will replace the list of messages waiting to
7446	// be sent to the user.
7447	MergeBehavior string `json:"mergeBehavior,omitempty"`
7448
7449	// Messages: The list of rich message responses to present to the user.
7450	Messages []*GoogleCloudDialogflowCxV3ResponseMessage `json:"messages,omitempty"`
7451
7452	// ForceSendFields is a list of field names (e.g. "MergeBehavior") to
7453	// unconditionally include in API requests. By default, fields with
7454	// empty or default values are omitted from API requests. However, any
7455	// non-pointer, non-interface field appearing in ForceSendFields will be
7456	// sent to the server regardless of whether the field is empty or not.
7457	// This may be used to include empty fields in Patch requests.
7458	ForceSendFields []string `json:"-"`
7459
7460	// NullFields is a list of field names (e.g. "MergeBehavior") to include
7461	// in API requests with the JSON null value. By default, fields with
7462	// empty values are omitted from API requests. However, any field with
7463	// an empty value appearing in NullFields will be sent to the server as
7464	// null. It is an error if a field in this list has a non-empty value.
7465	// This may be used to include null fields in Patch requests.
7466	NullFields []string `json:"-"`
7467}
7468
7469func (s *GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse) MarshalJSON() ([]byte, error) {
7470	type NoMethod GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse
7471	raw := NoMethod(*s)
7472	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7473}
7474
7475// GoogleCloudDialogflowCxV3WebhookServiceDirectoryConfig: Represents
7476// configuration for a Service Directory
7477// (https://cloud.google.com/service-directory) service.
7478type GoogleCloudDialogflowCxV3WebhookServiceDirectoryConfig struct {
7479	// GenericWebService: Generic Service configuration of this webhook.
7480	GenericWebService *GoogleCloudDialogflowCxV3WebhookGenericWebService `json:"genericWebService,omitempty"`
7481
7482	// Service: Required. The name of Service Directory
7483	// (https://cloud.google.com/service-directory) service. Format:
7484	// `projects//locations//namespaces//services/`. `Location ID` of the
7485	// service directory must be the same as the location of the agent.
7486	Service string `json:"service,omitempty"`
7487
7488	// ForceSendFields is a list of field names (e.g. "GenericWebService")
7489	// to unconditionally include in API requests. By default, fields with
7490	// empty or default values are omitted from API requests. However, any
7491	// non-pointer, non-interface field appearing in ForceSendFields will be
7492	// sent to the server regardless of whether the field is empty or not.
7493	// This may be used to include empty fields in Patch requests.
7494	ForceSendFields []string `json:"-"`
7495
7496	// NullFields is a list of field names (e.g. "GenericWebService") to
7497	// include in API requests with the JSON null value. By default, fields
7498	// with empty values are omitted from API requests. However, any field
7499	// with an empty value appearing in NullFields will be sent to the
7500	// server as null. It is an error if a field in this list has a
7501	// non-empty value. This may be used to include null fields in Patch
7502	// requests.
7503	NullFields []string `json:"-"`
7504}
7505
7506func (s *GoogleCloudDialogflowCxV3WebhookServiceDirectoryConfig) MarshalJSON() ([]byte, error) {
7507	type NoMethod GoogleCloudDialogflowCxV3WebhookServiceDirectoryConfig
7508	raw := NoMethod(*s)
7509	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7510}
7511
7512// GoogleCloudDialogflowCxV3beta1AudioInput: Represents the natural
7513// speech audio to be processed.
7514type GoogleCloudDialogflowCxV3beta1AudioInput struct {
7515	// Audio: The natural language speech audio to be processed. A single
7516	// request can contain up to 1 minute of speech audio data. The
7517	// transcribed text cannot contain more than 256 bytes. For
7518	// non-streaming audio detect intent, both `config` and `audio` must be
7519	// provided. For streaming audio detect intent, `config` must be
7520	// provided in the first request and `audio` must be provided in all
7521	// following requests.
7522	Audio string `json:"audio,omitempty"`
7523
7524	// Config: Required. Instructs the speech recognizer how to process the
7525	// speech audio.
7526	Config *GoogleCloudDialogflowCxV3beta1InputAudioConfig `json:"config,omitempty"`
7527
7528	// ForceSendFields is a list of field names (e.g. "Audio") to
7529	// unconditionally include in API requests. By default, fields with
7530	// empty or default values are omitted from API requests. However, any
7531	// non-pointer, non-interface field appearing in ForceSendFields will be
7532	// sent to the server regardless of whether the field is empty or not.
7533	// This may be used to include empty fields in Patch requests.
7534	ForceSendFields []string `json:"-"`
7535
7536	// NullFields is a list of field names (e.g. "Audio") to include in API
7537	// requests with the JSON null value. By default, fields with empty
7538	// values are omitted from API requests. However, any field with an
7539	// empty value appearing in NullFields will be sent to the server as
7540	// null. It is an error if a field in this list has a non-empty value.
7541	// This may be used to include null fields in Patch requests.
7542	NullFields []string `json:"-"`
7543}
7544
7545func (s *GoogleCloudDialogflowCxV3beta1AudioInput) MarshalJSON() ([]byte, error) {
7546	type NoMethod GoogleCloudDialogflowCxV3beta1AudioInput
7547	raw := NoMethod(*s)
7548	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7549}
7550
7551// GoogleCloudDialogflowCxV3beta1BatchRunTestCasesMetadata: Metadata
7552// returned for the TestCases.BatchRunTestCases long running operation.
7553type GoogleCloudDialogflowCxV3beta1BatchRunTestCasesMetadata struct {
7554	// Errors: The test errors.
7555	Errors []*GoogleCloudDialogflowCxV3beta1TestError `json:"errors,omitempty"`
7556
7557	// ForceSendFields is a list of field names (e.g. "Errors") to
7558	// unconditionally include in API requests. By default, fields with
7559	// empty or default values are omitted from API requests. However, any
7560	// non-pointer, non-interface field appearing in ForceSendFields will be
7561	// sent to the server regardless of whether the field is empty or not.
7562	// This may be used to include empty fields in Patch requests.
7563	ForceSendFields []string `json:"-"`
7564
7565	// NullFields is a list of field names (e.g. "Errors") to include in API
7566	// requests with the JSON null value. By default, fields with empty
7567	// values are omitted from API requests. However, any field with an
7568	// empty value appearing in NullFields will be sent to the server as
7569	// null. It is an error if a field in this list has a non-empty value.
7570	// This may be used to include null fields in Patch requests.
7571	NullFields []string `json:"-"`
7572}
7573
7574func (s *GoogleCloudDialogflowCxV3beta1BatchRunTestCasesMetadata) MarshalJSON() ([]byte, error) {
7575	type NoMethod GoogleCloudDialogflowCxV3beta1BatchRunTestCasesMetadata
7576	raw := NoMethod(*s)
7577	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7578}
7579
7580// GoogleCloudDialogflowCxV3beta1BatchRunTestCasesResponse: The response
7581// message for TestCases.BatchRunTestCases.
7582type GoogleCloudDialogflowCxV3beta1BatchRunTestCasesResponse struct {
7583	// Results: The test case results. The detailed conversation turns are
7584	// empty in this response.
7585	Results []*GoogleCloudDialogflowCxV3beta1TestCaseResult `json:"results,omitempty"`
7586
7587	// ForceSendFields is a list of field names (e.g. "Results") to
7588	// unconditionally include in API requests. By default, fields with
7589	// empty or default values are omitted from API requests. However, any
7590	// non-pointer, non-interface field appearing in ForceSendFields will be
7591	// sent to the server regardless of whether the field is empty or not.
7592	// This may be used to include empty fields in Patch requests.
7593	ForceSendFields []string `json:"-"`
7594
7595	// NullFields is a list of field names (e.g. "Results") to include in
7596	// API requests with the JSON null value. By default, fields with empty
7597	// values are omitted from API requests. However, any field with an
7598	// empty value appearing in NullFields will be sent to the server as
7599	// null. It is an error if a field in this list has a non-empty value.
7600	// This may be used to include null fields in Patch requests.
7601	NullFields []string `json:"-"`
7602}
7603
7604func (s *GoogleCloudDialogflowCxV3beta1BatchRunTestCasesResponse) MarshalJSON() ([]byte, error) {
7605	type NoMethod GoogleCloudDialogflowCxV3beta1BatchRunTestCasesResponse
7606	raw := NoMethod(*s)
7607	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7608}
7609
7610// GoogleCloudDialogflowCxV3beta1ContinuousTestResult: Represents a
7611// result from running a test case in an agent environment.
7612type GoogleCloudDialogflowCxV3beta1ContinuousTestResult struct {
7613	// Name: The resource name for the continuous test result. Format:
7614	// `projects//locations//agents//environments//continuousTestResults/`.
7615	Name string `json:"name,omitempty"`
7616
7617	// Result: The result of this continuous test run, i.e. whether all the
7618	// tests in this continuous test run pass or not.
7619	//
7620	// Possible values:
7621	//   "AGGREGATED_TEST_RESULT_UNSPECIFIED" - Not specified. Should never
7622	// be used.
7623	//   "PASSED" - All the tests passed.
7624	//   "FAILED" - At least one test did not pass.
7625	Result string `json:"result,omitempty"`
7626
7627	// RunTime: Time when the continuous testing run starts.
7628	RunTime string `json:"runTime,omitempty"`
7629
7630	// TestCaseResults: A list of individual test case results names in this
7631	// continuous test run.
7632	TestCaseResults []string `json:"testCaseResults,omitempty"`
7633
7634	// ForceSendFields is a list of field names (e.g. "Name") to
7635	// unconditionally include in API requests. By default, fields with
7636	// empty or default values are omitted from API requests. However, any
7637	// non-pointer, non-interface field appearing in ForceSendFields will be
7638	// sent to the server regardless of whether the field is empty or not.
7639	// This may be used to include empty fields in Patch requests.
7640	ForceSendFields []string `json:"-"`
7641
7642	// NullFields is a list of field names (e.g. "Name") to include in API
7643	// requests with the JSON null value. By default, fields with empty
7644	// values are omitted from API requests. However, any field with an
7645	// empty value appearing in NullFields will be sent to the server as
7646	// null. It is an error if a field in this list has a non-empty value.
7647	// This may be used to include null fields in Patch requests.
7648	NullFields []string `json:"-"`
7649}
7650
7651func (s *GoogleCloudDialogflowCxV3beta1ContinuousTestResult) MarshalJSON() ([]byte, error) {
7652	type NoMethod GoogleCloudDialogflowCxV3beta1ContinuousTestResult
7653	raw := NoMethod(*s)
7654	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7655}
7656
7657// GoogleCloudDialogflowCxV3beta1ConversationTurn: One interaction
7658// between a human and virtual agent. The human provides some input and
7659// the virtual agent provides a response.
7660type GoogleCloudDialogflowCxV3beta1ConversationTurn struct {
7661	// UserInput: The user input.
7662	UserInput *GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput `json:"userInput,omitempty"`
7663
7664	// VirtualAgentOutput: The virtual agent output.
7665	VirtualAgentOutput *GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput `json:"virtualAgentOutput,omitempty"`
7666
7667	// ForceSendFields is a list of field names (e.g. "UserInput") to
7668	// unconditionally include in API requests. By default, fields with
7669	// empty or default values are omitted from API requests. However, any
7670	// non-pointer, non-interface field appearing in ForceSendFields will be
7671	// sent to the server regardless of whether the field is empty or not.
7672	// This may be used to include empty fields in Patch requests.
7673	ForceSendFields []string `json:"-"`
7674
7675	// NullFields is a list of field names (e.g. "UserInput") to include in
7676	// API requests with the JSON null value. By default, fields with empty
7677	// values are omitted from API requests. However, any field with an
7678	// empty value appearing in NullFields will be sent to the server as
7679	// null. It is an error if a field in this list has a non-empty value.
7680	// This may be used to include null fields in Patch requests.
7681	NullFields []string `json:"-"`
7682}
7683
7684func (s *GoogleCloudDialogflowCxV3beta1ConversationTurn) MarshalJSON() ([]byte, error) {
7685	type NoMethod GoogleCloudDialogflowCxV3beta1ConversationTurn
7686	raw := NoMethod(*s)
7687	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7688}
7689
7690// GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput: The input
7691// from the human user.
7692type GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput struct {
7693	// EnableSentimentAnalysis: Whether sentiment analysis is enabled.
7694	EnableSentimentAnalysis bool `json:"enableSentimentAnalysis,omitempty"`
7695
7696	// InjectedParameters: Parameters that need to be injected into the
7697	// conversation during intent detection.
7698	InjectedParameters googleapi.RawMessage `json:"injectedParameters,omitempty"`
7699
7700	// Input: Supports text input, event input, dtmf input in the test case.
7701	Input *GoogleCloudDialogflowCxV3beta1QueryInput `json:"input,omitempty"`
7702
7703	// IsWebhookEnabled: If webhooks should be allowed to trigger in
7704	// response to the user utterance. Often if parameters are injected,
7705	// webhooks should not be enabled.
7706	IsWebhookEnabled bool `json:"isWebhookEnabled,omitempty"`
7707
7708	// ForceSendFields is a list of field names (e.g.
7709	// "EnableSentimentAnalysis") to unconditionally include in API
7710	// requests. By default, fields with empty or default values are omitted
7711	// from API requests. However, any non-pointer, non-interface field
7712	// appearing in ForceSendFields will be sent to the server regardless of
7713	// whether the field is empty or not. This may be used to include empty
7714	// fields in Patch requests.
7715	ForceSendFields []string `json:"-"`
7716
7717	// NullFields is a list of field names (e.g. "EnableSentimentAnalysis")
7718	// to include in API requests with the JSON null value. By default,
7719	// fields with empty values are omitted from API requests. However, any
7720	// field with an empty value appearing in NullFields will be sent to the
7721	// server as null. It is an error if a field in this list has a
7722	// non-empty value. This may be used to include null fields in Patch
7723	// requests.
7724	NullFields []string `json:"-"`
7725}
7726
7727func (s *GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput) MarshalJSON() ([]byte, error) {
7728	type NoMethod GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput
7729	raw := NoMethod(*s)
7730	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7731}
7732
7733// GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput: The
7734// output from the virtual agent.
7735type GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput struct {
7736	// CurrentPage: The Page on which the utterance was spoken. Only name
7737	// and displayName will be set.
7738	CurrentPage *GoogleCloudDialogflowCxV3beta1Page `json:"currentPage,omitempty"`
7739
7740	// DiagnosticInfo: Required. Input only. The diagnostic info output for
7741	// the turn.
7742	DiagnosticInfo googleapi.RawMessage `json:"diagnosticInfo,omitempty"`
7743
7744	// Differences: Output only. If this is part of a result conversation
7745	// turn, the list of differences between the original run and the replay
7746	// for this output, if any.
7747	Differences []*GoogleCloudDialogflowCxV3beta1TestRunDifference `json:"differences,omitempty"`
7748
7749	// SessionParameters: The session parameters available to the bot at
7750	// this point.
7751	SessionParameters googleapi.RawMessage `json:"sessionParameters,omitempty"`
7752
7753	// Status: Response error from the agent in the test result. If set,
7754	// other output is empty.
7755	Status *GoogleRpcStatus `json:"status,omitempty"`
7756
7757	// TextResponses: The text responses from the agent for the turn.
7758	TextResponses []*GoogleCloudDialogflowCxV3beta1ResponseMessageText `json:"textResponses,omitempty"`
7759
7760	// TriggeredIntent: The Intent that triggered the response. Only name
7761	// and displayName will be set.
7762	TriggeredIntent *GoogleCloudDialogflowCxV3beta1Intent `json:"triggeredIntent,omitempty"`
7763
7764	// ForceSendFields is a list of field names (e.g. "CurrentPage") to
7765	// unconditionally include in API requests. By default, fields with
7766	// empty or default values are omitted from API requests. However, any
7767	// non-pointer, non-interface field appearing in ForceSendFields will be
7768	// sent to the server regardless of whether the field is empty or not.
7769	// This may be used to include empty fields in Patch requests.
7770	ForceSendFields []string `json:"-"`
7771
7772	// NullFields is a list of field names (e.g. "CurrentPage") to include
7773	// in API requests with the JSON null value. By default, fields with
7774	// empty values are omitted from API requests. However, any field with
7775	// an empty value appearing in NullFields will be sent to the server as
7776	// null. It is an error if a field in this list has a non-empty value.
7777	// This may be used to include null fields in Patch requests.
7778	NullFields []string `json:"-"`
7779}
7780
7781func (s *GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput) MarshalJSON() ([]byte, error) {
7782	type NoMethod GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput
7783	raw := NoMethod(*s)
7784	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7785}
7786
7787// GoogleCloudDialogflowCxV3beta1CreateDocumentOperationMetadata:
7788// Metadata for CreateDocument operation.
7789type GoogleCloudDialogflowCxV3beta1CreateDocumentOperationMetadata struct {
7790	// GenericMetadata: The generic information of the operation.
7791	GenericMetadata *GoogleCloudDialogflowCxV3beta1GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
7792
7793	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
7794	// unconditionally include in API requests. By default, fields with
7795	// empty or default values are omitted from API requests. However, any
7796	// non-pointer, non-interface field appearing in ForceSendFields will be
7797	// sent to the server regardless of whether the field is empty or not.
7798	// This may be used to include empty fields in Patch requests.
7799	ForceSendFields []string `json:"-"`
7800
7801	// NullFields is a list of field names (e.g. "GenericMetadata") to
7802	// include in API requests with the JSON null value. By default, fields
7803	// with empty values are omitted from API requests. However, any field
7804	// with an empty value appearing in NullFields will be sent to the
7805	// server as null. It is an error if a field in this list has a
7806	// non-empty value. This may be used to include null fields in Patch
7807	// requests.
7808	NullFields []string `json:"-"`
7809}
7810
7811func (s *GoogleCloudDialogflowCxV3beta1CreateDocumentOperationMetadata) MarshalJSON() ([]byte, error) {
7812	type NoMethod GoogleCloudDialogflowCxV3beta1CreateDocumentOperationMetadata
7813	raw := NoMethod(*s)
7814	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7815}
7816
7817// GoogleCloudDialogflowCxV3beta1CreateVersionOperationMetadata:
7818// Metadata associated with the long running operation for
7819// Versions.CreateVersion.
7820type GoogleCloudDialogflowCxV3beta1CreateVersionOperationMetadata struct {
7821	// Version: Name of the created version. Format:
7822	// `projects//locations//agents//flows//versions/`.
7823	Version string `json:"version,omitempty"`
7824
7825	// ForceSendFields is a list of field names (e.g. "Version") to
7826	// unconditionally include in API requests. By default, fields with
7827	// empty or default values are omitted from API requests. However, any
7828	// non-pointer, non-interface field appearing in ForceSendFields will be
7829	// sent to the server regardless of whether the field is empty or not.
7830	// This may be used to include empty fields in Patch requests.
7831	ForceSendFields []string `json:"-"`
7832
7833	// NullFields is a list of field names (e.g. "Version") to include in
7834	// API requests with the JSON null value. By default, fields with empty
7835	// values are omitted from API requests. However, any field with an
7836	// empty value appearing in NullFields will be sent to the server as
7837	// null. It is an error if a field in this list has a non-empty value.
7838	// This may be used to include null fields in Patch requests.
7839	NullFields []string `json:"-"`
7840}
7841
7842func (s *GoogleCloudDialogflowCxV3beta1CreateVersionOperationMetadata) MarshalJSON() ([]byte, error) {
7843	type NoMethod GoogleCloudDialogflowCxV3beta1CreateVersionOperationMetadata
7844	raw := NoMethod(*s)
7845	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7846}
7847
7848// GoogleCloudDialogflowCxV3beta1DeleteDocumentOperationMetadata:
7849// Metadata for DeleteDocument operation.
7850type GoogleCloudDialogflowCxV3beta1DeleteDocumentOperationMetadata struct {
7851	// GenericMetadata: The generic information of the operation.
7852	GenericMetadata *GoogleCloudDialogflowCxV3beta1GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
7853
7854	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
7855	// unconditionally include in API requests. By default, fields with
7856	// empty or default values are omitted from API requests. However, any
7857	// non-pointer, non-interface field appearing in ForceSendFields will be
7858	// sent to the server regardless of whether the field is empty or not.
7859	// This may be used to include empty fields in Patch requests.
7860	ForceSendFields []string `json:"-"`
7861
7862	// NullFields is a list of field names (e.g. "GenericMetadata") to
7863	// include in API requests with the JSON null value. By default, fields
7864	// with empty values are omitted from API requests. However, any field
7865	// with an empty value appearing in NullFields will be sent to the
7866	// server as null. It is an error if a field in this list has a
7867	// non-empty value. This may be used to include null fields in Patch
7868	// requests.
7869	NullFields []string `json:"-"`
7870}
7871
7872func (s *GoogleCloudDialogflowCxV3beta1DeleteDocumentOperationMetadata) MarshalJSON() ([]byte, error) {
7873	type NoMethod GoogleCloudDialogflowCxV3beta1DeleteDocumentOperationMetadata
7874	raw := NoMethod(*s)
7875	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7876}
7877
7878// GoogleCloudDialogflowCxV3beta1DtmfInput: Represents the input for
7879// dtmf event.
7880type GoogleCloudDialogflowCxV3beta1DtmfInput struct {
7881	// Digits: The dtmf digits.
7882	Digits string `json:"digits,omitempty"`
7883
7884	// FinishDigit: The finish digit (if any).
7885	FinishDigit string `json:"finishDigit,omitempty"`
7886
7887	// ForceSendFields is a list of field names (e.g. "Digits") to
7888	// unconditionally include in API requests. By default, fields with
7889	// empty or default values are omitted from API requests. However, any
7890	// non-pointer, non-interface field appearing in ForceSendFields will be
7891	// sent to the server regardless of whether the field is empty or not.
7892	// This may be used to include empty fields in Patch requests.
7893	ForceSendFields []string `json:"-"`
7894
7895	// NullFields is a list of field names (e.g. "Digits") to include in API
7896	// requests with the JSON null value. By default, fields with empty
7897	// values are omitted from API requests. However, any field with an
7898	// empty value appearing in NullFields will be sent to the server as
7899	// null. It is an error if a field in this list has a non-empty value.
7900	// This may be used to include null fields in Patch requests.
7901	NullFields []string `json:"-"`
7902}
7903
7904func (s *GoogleCloudDialogflowCxV3beta1DtmfInput) MarshalJSON() ([]byte, error) {
7905	type NoMethod GoogleCloudDialogflowCxV3beta1DtmfInput
7906	raw := NoMethod(*s)
7907	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7908}
7909
7910// GoogleCloudDialogflowCxV3beta1EventHandler: An event handler
7911// specifies an event that can be handled during a session. When the
7912// specified event happens, the following actions are taken in order: *
7913// If there is a `trigger_fulfillment` associated with the event, it
7914// will be called. * If there is a `target_page` associated with the
7915// event, the session will transition into the specified page. * If
7916// there is a `target_flow` associated with the event, the session will
7917// transition into the specified flow.
7918type GoogleCloudDialogflowCxV3beta1EventHandler struct {
7919	// Event: Required. The name of the event to handle.
7920	Event string `json:"event,omitempty"`
7921
7922	// Name: Output only. The unique identifier of this event handler.
7923	Name string `json:"name,omitempty"`
7924
7925	// TargetFlow: The target flow to transition to. Format:
7926	// `projects//locations//agents//flows/`.
7927	TargetFlow string `json:"targetFlow,omitempty"`
7928
7929	// TargetPage: The target page to transition to. Format:
7930	// `projects//locations//agents//flows//pages/`.
7931	TargetPage string `json:"targetPage,omitempty"`
7932
7933	// TriggerFulfillment: The fulfillment to call when the event occurs.
7934	// Handling webhook errors with a fulfillment enabled with webhook could
7935	// cause infinite loop. It is invalid to specify such fulfillment for a
7936	// handler handling webhooks.
7937	TriggerFulfillment *GoogleCloudDialogflowCxV3beta1Fulfillment `json:"triggerFulfillment,omitempty"`
7938
7939	// ForceSendFields is a list of field names (e.g. "Event") to
7940	// unconditionally include in API requests. By default, fields with
7941	// empty or default values are omitted from API requests. However, any
7942	// non-pointer, non-interface field appearing in ForceSendFields will be
7943	// sent to the server regardless of whether the field is empty or not.
7944	// This may be used to include empty fields in Patch requests.
7945	ForceSendFields []string `json:"-"`
7946
7947	// NullFields is a list of field names (e.g. "Event") to include in API
7948	// requests with the JSON null value. By default, fields with empty
7949	// values are omitted from API requests. However, any field with an
7950	// empty value appearing in NullFields will be sent to the server as
7951	// null. It is an error if a field in this list has a non-empty value.
7952	// This may be used to include null fields in Patch requests.
7953	NullFields []string `json:"-"`
7954}
7955
7956func (s *GoogleCloudDialogflowCxV3beta1EventHandler) MarshalJSON() ([]byte, error) {
7957	type NoMethod GoogleCloudDialogflowCxV3beta1EventHandler
7958	raw := NoMethod(*s)
7959	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7960}
7961
7962// GoogleCloudDialogflowCxV3beta1EventInput: Represents the event to
7963// trigger.
7964type GoogleCloudDialogflowCxV3beta1EventInput struct {
7965	// Event: Name of the event.
7966	Event string `json:"event,omitempty"`
7967
7968	// ForceSendFields is a list of field names (e.g. "Event") to
7969	// unconditionally include in API requests. By default, fields with
7970	// empty or default values are omitted from API requests. However, any
7971	// non-pointer, non-interface field appearing in ForceSendFields will be
7972	// sent to the server regardless of whether the field is empty or not.
7973	// This may be used to include empty fields in Patch requests.
7974	ForceSendFields []string `json:"-"`
7975
7976	// NullFields is a list of field names (e.g. "Event") to include in API
7977	// requests with the JSON null value. By default, fields with empty
7978	// values are omitted from API requests. However, any field with an
7979	// empty value appearing in NullFields will be sent to the server as
7980	// null. It is an error if a field in this list has a non-empty value.
7981	// This may be used to include null fields in Patch requests.
7982	NullFields []string `json:"-"`
7983}
7984
7985func (s *GoogleCloudDialogflowCxV3beta1EventInput) MarshalJSON() ([]byte, error) {
7986	type NoMethod GoogleCloudDialogflowCxV3beta1EventInput
7987	raw := NoMethod(*s)
7988	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7989}
7990
7991// GoogleCloudDialogflowCxV3beta1ExportAgentResponse: The response
7992// message for Agents.ExportAgent.
7993type GoogleCloudDialogflowCxV3beta1ExportAgentResponse struct {
7994	// AgentContent: Uncompressed raw byte content for agent.
7995	AgentContent string `json:"agentContent,omitempty"`
7996
7997	// AgentUri: The URI to a file containing the exported agent. This field
7998	// is populated only if `agent_uri` is specified in ExportAgentRequest.
7999	AgentUri string `json:"agentUri,omitempty"`
8000
8001	// ForceSendFields is a list of field names (e.g. "AgentContent") to
8002	// unconditionally include in API requests. By default, fields with
8003	// empty or default values are omitted from API requests. However, any
8004	// non-pointer, non-interface field appearing in ForceSendFields will be
8005	// sent to the server regardless of whether the field is empty or not.
8006	// This may be used to include empty fields in Patch requests.
8007	ForceSendFields []string `json:"-"`
8008
8009	// NullFields is a list of field names (e.g. "AgentContent") to include
8010	// in API requests with the JSON null value. By default, fields with
8011	// empty values are omitted from API requests. However, any field with
8012	// an empty value appearing in NullFields will be sent to the server as
8013	// null. It is an error if a field in this list has a non-empty value.
8014	// This may be used to include null fields in Patch requests.
8015	NullFields []string `json:"-"`
8016}
8017
8018func (s *GoogleCloudDialogflowCxV3beta1ExportAgentResponse) MarshalJSON() ([]byte, error) {
8019	type NoMethod GoogleCloudDialogflowCxV3beta1ExportAgentResponse
8020	raw := NoMethod(*s)
8021	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8022}
8023
8024// GoogleCloudDialogflowCxV3beta1ExportFlowResponse: The response
8025// message for Flows.ExportFlow.
8026type GoogleCloudDialogflowCxV3beta1ExportFlowResponse struct {
8027	// FlowContent: Uncompressed raw byte content for flow.
8028	FlowContent string `json:"flowContent,omitempty"`
8029
8030	// FlowUri: The URI to a file containing the exported flow. This field
8031	// is populated only if `flow_uri` is specified in ExportFlowRequest.
8032	FlowUri string `json:"flowUri,omitempty"`
8033
8034	// ForceSendFields is a list of field names (e.g. "FlowContent") to
8035	// unconditionally include in API requests. By default, fields with
8036	// empty or default values are omitted from API requests. However, any
8037	// non-pointer, non-interface field appearing in ForceSendFields will be
8038	// sent to the server regardless of whether the field is empty or not.
8039	// This may be used to include empty fields in Patch requests.
8040	ForceSendFields []string `json:"-"`
8041
8042	// NullFields is a list of field names (e.g. "FlowContent") to include
8043	// in API requests with the JSON null value. By default, fields with
8044	// empty values are omitted from API requests. However, any field with
8045	// an empty value appearing in NullFields will be sent to the server as
8046	// null. It is an error if a field in this list has a non-empty value.
8047	// This may be used to include null fields in Patch requests.
8048	NullFields []string `json:"-"`
8049}
8050
8051func (s *GoogleCloudDialogflowCxV3beta1ExportFlowResponse) MarshalJSON() ([]byte, error) {
8052	type NoMethod GoogleCloudDialogflowCxV3beta1ExportFlowResponse
8053	raw := NoMethod(*s)
8054	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8055}
8056
8057// GoogleCloudDialogflowCxV3beta1ExportTestCasesMetadata: Metadata
8058// returned for the TestCases.ExportTestCases long running operation.
8059type GoogleCloudDialogflowCxV3beta1ExportTestCasesMetadata struct {
8060}
8061
8062// GoogleCloudDialogflowCxV3beta1ExportTestCasesResponse: The response
8063// message for TestCases.ExportTestCases.
8064type GoogleCloudDialogflowCxV3beta1ExportTestCasesResponse struct {
8065	// Content: Uncompressed raw byte content for test cases.
8066	Content string `json:"content,omitempty"`
8067
8068	// GcsUri: The URI to a file containing the exported test cases. This
8069	// field is populated only if `gcs_uri` is specified in
8070	// ExportTestCasesRequest.
8071	GcsUri string `json:"gcsUri,omitempty"`
8072
8073	// ForceSendFields is a list of field names (e.g. "Content") to
8074	// unconditionally include in API requests. By default, fields with
8075	// empty or default values are omitted from API requests. However, any
8076	// non-pointer, non-interface field appearing in ForceSendFields will be
8077	// sent to the server regardless of whether the field is empty or not.
8078	// This may be used to include empty fields in Patch requests.
8079	ForceSendFields []string `json:"-"`
8080
8081	// NullFields is a list of field names (e.g. "Content") to include in
8082	// API requests with the JSON null value. By default, fields with empty
8083	// values are omitted from API requests. However, any field with an
8084	// empty value appearing in NullFields will be sent to the server as
8085	// null. It is an error if a field in this list has a non-empty value.
8086	// This may be used to include null fields in Patch requests.
8087	NullFields []string `json:"-"`
8088}
8089
8090func (s *GoogleCloudDialogflowCxV3beta1ExportTestCasesResponse) MarshalJSON() ([]byte, error) {
8091	type NoMethod GoogleCloudDialogflowCxV3beta1ExportTestCasesResponse
8092	raw := NoMethod(*s)
8093	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8094}
8095
8096// GoogleCloudDialogflowCxV3beta1Form: A form is a data model that
8097// groups related parameters that can be collected from the user. The
8098// process in which the agent prompts the user and collects parameter
8099// values from the user is called form filling. A form can be added to a
8100// page. When form filling is done, the filled parameters will be
8101// written to the session.
8102type GoogleCloudDialogflowCxV3beta1Form struct {
8103	// Parameters: Parameters to collect from the user.
8104	Parameters []*GoogleCloudDialogflowCxV3beta1FormParameter `json:"parameters,omitempty"`
8105
8106	// ForceSendFields is a list of field names (e.g. "Parameters") to
8107	// unconditionally include in API requests. By default, fields with
8108	// empty or default values are omitted from API requests. However, any
8109	// non-pointer, non-interface field appearing in ForceSendFields will be
8110	// sent to the server regardless of whether the field is empty or not.
8111	// This may be used to include empty fields in Patch requests.
8112	ForceSendFields []string `json:"-"`
8113
8114	// NullFields is a list of field names (e.g. "Parameters") to include in
8115	// API requests with the JSON null value. By default, fields with empty
8116	// values are omitted from API requests. However, any field with an
8117	// empty value appearing in NullFields will be sent to the server as
8118	// null. It is an error if a field in this list has a non-empty value.
8119	// This may be used to include null fields in Patch requests.
8120	NullFields []string `json:"-"`
8121}
8122
8123func (s *GoogleCloudDialogflowCxV3beta1Form) MarshalJSON() ([]byte, error) {
8124	type NoMethod GoogleCloudDialogflowCxV3beta1Form
8125	raw := NoMethod(*s)
8126	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8127}
8128
8129// GoogleCloudDialogflowCxV3beta1FormParameter: Represents a form
8130// parameter.
8131type GoogleCloudDialogflowCxV3beta1FormParameter struct {
8132	// DefaultValue: The default value of an optional parameter. If the
8133	// parameter is required, the default value will be ignored.
8134	DefaultValue interface{} `json:"defaultValue,omitempty"`
8135
8136	// DisplayName: Required. The human-readable name of the parameter,
8137	// unique within the form.
8138	DisplayName string `json:"displayName,omitempty"`
8139
8140	// EntityType: Required. The entity type of the parameter. Format:
8141	// `projects/-/locations/-/agents/-/entityTypes/` for system entity
8142	// types (for example,
8143	// `projects/-/locations/-/agents/-/entityTypes/sys.date`), or
8144	// `projects//locations//agents//entityTypes/` for developer entity
8145	// types.
8146	EntityType string `json:"entityType,omitempty"`
8147
8148	// FillBehavior: Required. Defines fill behavior for the parameter.
8149	FillBehavior *GoogleCloudDialogflowCxV3beta1FormParameterFillBehavior `json:"fillBehavior,omitempty"`
8150
8151	// IsList: Indicates whether the parameter represents a list of values.
8152	IsList bool `json:"isList,omitempty"`
8153
8154	// Redact: Indicates whether the parameter content should be redacted in
8155	// log. If redaction is enabled, the parameter content will be replaced
8156	// by parameter name during logging. Note: the parameter content is
8157	// subject to redaction if either parameter level redaction or entity
8158	// type level redaction is enabled.
8159	Redact bool `json:"redact,omitempty"`
8160
8161	// Required: Indicates whether the parameter is required. Optional
8162	// parameters will not trigger prompts; however, they are filled if the
8163	// user specifies them. Required parameters must be filled before form
8164	// filling concludes.
8165	Required bool `json:"required,omitempty"`
8166
8167	// ForceSendFields is a list of field names (e.g. "DefaultValue") to
8168	// unconditionally include in API requests. By default, fields with
8169	// empty or default values are omitted from API requests. However, any
8170	// non-pointer, non-interface field appearing in ForceSendFields will be
8171	// sent to the server regardless of whether the field is empty or not.
8172	// This may be used to include empty fields in Patch requests.
8173	ForceSendFields []string `json:"-"`
8174
8175	// NullFields is a list of field names (e.g. "DefaultValue") to include
8176	// in API requests with the JSON null value. By default, fields with
8177	// empty values are omitted from API requests. However, any field with
8178	// an empty value appearing in NullFields will be sent to the server as
8179	// null. It is an error if a field in this list has a non-empty value.
8180	// This may be used to include null fields in Patch requests.
8181	NullFields []string `json:"-"`
8182}
8183
8184func (s *GoogleCloudDialogflowCxV3beta1FormParameter) MarshalJSON() ([]byte, error) {
8185	type NoMethod GoogleCloudDialogflowCxV3beta1FormParameter
8186	raw := NoMethod(*s)
8187	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8188}
8189
8190// GoogleCloudDialogflowCxV3beta1FormParameterFillBehavior:
8191// Configuration for how the filling of a parameter should be handled.
8192type GoogleCloudDialogflowCxV3beta1FormParameterFillBehavior struct {
8193	// InitialPromptFulfillment: Required. The fulfillment to provide the
8194	// initial prompt that the agent can present to the user in order to
8195	// fill the parameter.
8196	InitialPromptFulfillment *GoogleCloudDialogflowCxV3beta1Fulfillment `json:"initialPromptFulfillment,omitempty"`
8197
8198	// RepromptEventHandlers: The handlers for parameter-level events, used
8199	// to provide reprompt for the parameter or transition to a different
8200	// page/flow. The supported events are: * `sys.no-match-`, where N can
8201	// be from 1 to 6 * `sys.no-match-default` * `sys.no-input-`, where N
8202	// can be from 1 to 6 * `sys.no-input-default` * `sys.invalid-parameter`
8203	// `initial_prompt_fulfillment` provides the first prompt for the
8204	// parameter. If the user's response does not fill the parameter, a
8205	// no-match/no-input event will be triggered, and the fulfillment
8206	// associated with the `sys.no-match-1`/`sys.no-input-1` handler (if
8207	// defined) will be called to provide a prompt. The
8208	// `sys.no-match-2`/`sys.no-input-2` handler (if defined) will respond
8209	// to the next no-match/no-input event, and so on. A
8210	// `sys.no-match-default` or `sys.no-input-default` handler will be used
8211	// to handle all following no-match/no-input events after all numbered
8212	// no-match/no-input handlers for the parameter are consumed. A
8213	// `sys.invalid-parameter` handler can be defined to handle the case
8214	// where the parameter values have been `invalidated` by webhook. For
8215	// example, if the user's response fill the parameter, however the
8216	// parameter was invalidated by webhook, the fulfillment associated with
8217	// the `sys.invalid-parameter` handler (if defined) will be called to
8218	// provide a prompt. If the event handler for the corresponding event
8219	// can't be found on the parameter, `initial_prompt_fulfillment` will be
8220	// re-prompted.
8221	RepromptEventHandlers []*GoogleCloudDialogflowCxV3beta1EventHandler `json:"repromptEventHandlers,omitempty"`
8222
8223	// ForceSendFields is a list of field names (e.g.
8224	// "InitialPromptFulfillment") to unconditionally include in API
8225	// requests. By default, fields with empty or default values are omitted
8226	// from API requests. However, any non-pointer, non-interface field
8227	// appearing in ForceSendFields will be sent to the server regardless of
8228	// whether the field is empty or not. This may be used to include empty
8229	// fields in Patch requests.
8230	ForceSendFields []string `json:"-"`
8231
8232	// NullFields is a list of field names (e.g. "InitialPromptFulfillment")
8233	// to include in API requests with the JSON null value. By default,
8234	// fields with empty values are omitted from API requests. However, any
8235	// field with an empty value appearing in NullFields will be sent to the
8236	// server as null. It is an error if a field in this list has a
8237	// non-empty value. This may be used to include null fields in Patch
8238	// requests.
8239	NullFields []string `json:"-"`
8240}
8241
8242func (s *GoogleCloudDialogflowCxV3beta1FormParameterFillBehavior) MarshalJSON() ([]byte, error) {
8243	type NoMethod GoogleCloudDialogflowCxV3beta1FormParameterFillBehavior
8244	raw := NoMethod(*s)
8245	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8246}
8247
8248// GoogleCloudDialogflowCxV3beta1Fulfillment: A fulfillment can do one
8249// or more of the following actions at the same time: * Generate rich
8250// message responses. * Set parameter values. * Call the webhook.
8251// Fulfillments can be called at various stages in the Page or Form
8252// lifecycle. For example, when a DetectIntentRequest drives a session
8253// to enter a new page, the page's entry fulfillment can add a static
8254// response to the QueryResult in the returning DetectIntentResponse,
8255// call the webhook (for example, to load user data from a database), or
8256// both.
8257type GoogleCloudDialogflowCxV3beta1Fulfillment struct {
8258	// ConditionalCases: Conditional cases for this fulfillment.
8259	ConditionalCases []*GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases `json:"conditionalCases,omitempty"`
8260
8261	// Messages: The list of rich message responses to present to the user.
8262	Messages []*GoogleCloudDialogflowCxV3beta1ResponseMessage `json:"messages,omitempty"`
8263
8264	// ReturnPartialResponses: Whether Dialogflow should return currently
8265	// queued fulfillment response messages in streaming APIs. If a webhook
8266	// is specified, it happens before Dialogflow invokes webhook. Warning:
8267	// 1) This flag only affects streaming API. Responses are still queued
8268	// and returned once in non-streaming API. 2) The flag can be enabled in
8269	// any fulfillment but only the first 3 partial responses will be
8270	// returned. You may only want to apply it to fulfillments that have
8271	// slow webhooks.
8272	ReturnPartialResponses bool `json:"returnPartialResponses,omitempty"`
8273
8274	// SetParameterActions: Set parameter values before executing the
8275	// webhook.
8276	SetParameterActions []*GoogleCloudDialogflowCxV3beta1FulfillmentSetParameterAction `json:"setParameterActions,omitempty"`
8277
8278	// Tag: The tag used by the webhook to identify which fulfillment is
8279	// being called. This field is required if `webhook` is specified.
8280	Tag string `json:"tag,omitempty"`
8281
8282	// Webhook: The webhook to call. Format:
8283	// `projects//locations//agents//webhooks/`.
8284	Webhook string `json:"webhook,omitempty"`
8285
8286	// ForceSendFields is a list of field names (e.g. "ConditionalCases") to
8287	// unconditionally include in API requests. By default, fields with
8288	// empty or default values are omitted from API requests. However, any
8289	// non-pointer, non-interface field appearing in ForceSendFields will be
8290	// sent to the server regardless of whether the field is empty or not.
8291	// This may be used to include empty fields in Patch requests.
8292	ForceSendFields []string `json:"-"`
8293
8294	// NullFields is a list of field names (e.g. "ConditionalCases") to
8295	// include in API requests with the JSON null value. By default, fields
8296	// with empty values are omitted from API requests. However, any field
8297	// with an empty value appearing in NullFields will be sent to the
8298	// server as null. It is an error if a field in this list has a
8299	// non-empty value. This may be used to include null fields in Patch
8300	// requests.
8301	NullFields []string `json:"-"`
8302}
8303
8304func (s *GoogleCloudDialogflowCxV3beta1Fulfillment) MarshalJSON() ([]byte, error) {
8305	type NoMethod GoogleCloudDialogflowCxV3beta1Fulfillment
8306	raw := NoMethod(*s)
8307	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8308}
8309
8310// GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases: A list of
8311// cascading if-else conditions. Cases are mutually exclusive. The first
8312// one with a matching condition is selected, all the rest ignored.
8313type GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases struct {
8314	// Cases: A list of cascading if-else conditions.
8315	Cases []*GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCase `json:"cases,omitempty"`
8316
8317	// ForceSendFields is a list of field names (e.g. "Cases") to
8318	// unconditionally include in API requests. By default, fields with
8319	// empty or default values are omitted from API requests. However, any
8320	// non-pointer, non-interface field appearing in ForceSendFields will be
8321	// sent to the server regardless of whether the field is empty or not.
8322	// This may be used to include empty fields in Patch requests.
8323	ForceSendFields []string `json:"-"`
8324
8325	// NullFields is a list of field names (e.g. "Cases") to include in API
8326	// requests with the JSON null value. By default, fields with empty
8327	// values are omitted from API requests. However, any field with an
8328	// empty value appearing in NullFields will be sent to the server as
8329	// null. It is an error if a field in this list has a non-empty value.
8330	// This may be used to include null fields in Patch requests.
8331	NullFields []string `json:"-"`
8332}
8333
8334func (s *GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases) MarshalJSON() ([]byte, error) {
8335	type NoMethod GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases
8336	raw := NoMethod(*s)
8337	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8338}
8339
8340// GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCase: Each
8341// case has a Boolean condition. When it is evaluated to be True, the
8342// corresponding messages will be selected and evaluated recursively.
8343type GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCase struct {
8344	// CaseContent: A list of case content.
8345	CaseContent []*GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCaseCaseContent `json:"caseContent,omitempty"`
8346
8347	// Condition: The condition to activate and select this case. Empty
8348	// means the condition is always true. The condition is evaluated
8349	// against form parameters or session parameters. See the conditions
8350	// reference
8351	// (https://cloud.google.com/dialogflow/cx/docs/reference/condition).
8352	Condition string `json:"condition,omitempty"`
8353
8354	// ForceSendFields is a list of field names (e.g. "CaseContent") to
8355	// unconditionally include in API requests. By default, fields with
8356	// empty or default values are omitted from API requests. However, any
8357	// non-pointer, non-interface field appearing in ForceSendFields will be
8358	// sent to the server regardless of whether the field is empty or not.
8359	// This may be used to include empty fields in Patch requests.
8360	ForceSendFields []string `json:"-"`
8361
8362	// NullFields is a list of field names (e.g. "CaseContent") to include
8363	// in API requests with the JSON null value. By default, fields with
8364	// empty values are omitted from API requests. However, any field with
8365	// an empty value appearing in NullFields will be sent to the server as
8366	// null. It is an error if a field in this list has a non-empty value.
8367	// This may be used to include null fields in Patch requests.
8368	NullFields []string `json:"-"`
8369}
8370
8371func (s *GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCase) MarshalJSON() ([]byte, error) {
8372	type NoMethod GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCase
8373	raw := NoMethod(*s)
8374	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8375}
8376
8377// GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCaseCaseConte
8378// nt: The list of messages or conditional cases to activate for this
8379// case.
8380type GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCaseCaseContent struct {
8381	// AdditionalCases: Additional cases to be evaluated.
8382	AdditionalCases *GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases `json:"additionalCases,omitempty"`
8383
8384	// Message: Returned message.
8385	Message *GoogleCloudDialogflowCxV3beta1ResponseMessage `json:"message,omitempty"`
8386
8387	// ForceSendFields is a list of field names (e.g. "AdditionalCases") to
8388	// unconditionally include in API requests. By default, fields with
8389	// empty or default values are omitted from API requests. However, any
8390	// non-pointer, non-interface field appearing in ForceSendFields will be
8391	// sent to the server regardless of whether the field is empty or not.
8392	// This may be used to include empty fields in Patch requests.
8393	ForceSendFields []string `json:"-"`
8394
8395	// NullFields is a list of field names (e.g. "AdditionalCases") to
8396	// include in API requests with the JSON null value. By default, fields
8397	// with empty values are omitted from API requests. However, any field
8398	// with an empty value appearing in NullFields will be sent to the
8399	// server as null. It is an error if a field in this list has a
8400	// non-empty value. This may be used to include null fields in Patch
8401	// requests.
8402	NullFields []string `json:"-"`
8403}
8404
8405func (s *GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCaseCaseContent) MarshalJSON() ([]byte, error) {
8406	type NoMethod GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCaseCaseContent
8407	raw := NoMethod(*s)
8408	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8409}
8410
8411// GoogleCloudDialogflowCxV3beta1FulfillmentSetParameterAction: Setting
8412// a parameter value.
8413type GoogleCloudDialogflowCxV3beta1FulfillmentSetParameterAction struct {
8414	// Parameter: Display name of the parameter.
8415	Parameter string `json:"parameter,omitempty"`
8416
8417	// Value: The new value of the parameter. A null value clears the
8418	// parameter.
8419	Value interface{} `json:"value,omitempty"`
8420
8421	// ForceSendFields is a list of field names (e.g. "Parameter") to
8422	// unconditionally include in API requests. By default, fields with
8423	// empty or default values are omitted from API requests. However, any
8424	// non-pointer, non-interface field appearing in ForceSendFields will be
8425	// sent to the server regardless of whether the field is empty or not.
8426	// This may be used to include empty fields in Patch requests.
8427	ForceSendFields []string `json:"-"`
8428
8429	// NullFields is a list of field names (e.g. "Parameter") to include in
8430	// API requests with the JSON null value. By default, fields with empty
8431	// values are omitted from API requests. However, any field with an
8432	// empty value appearing in NullFields will be sent to the server as
8433	// null. It is an error if a field in this list has a non-empty value.
8434	// This may be used to include null fields in Patch requests.
8435	NullFields []string `json:"-"`
8436}
8437
8438func (s *GoogleCloudDialogflowCxV3beta1FulfillmentSetParameterAction) MarshalJSON() ([]byte, error) {
8439	type NoMethod GoogleCloudDialogflowCxV3beta1FulfillmentSetParameterAction
8440	raw := NoMethod(*s)
8441	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8442}
8443
8444// GoogleCloudDialogflowCxV3beta1GenericKnowledgeOperationMetadata:
8445// Metadata in google::longrunning::Operation for Knowledge operations.
8446type GoogleCloudDialogflowCxV3beta1GenericKnowledgeOperationMetadata struct {
8447	// State: Required. Output only. The current state of this operation.
8448	//
8449	// Possible values:
8450	//   "STATE_UNSPECIFIED" - State unspecified.
8451	//   "PENDING" - The operation has been created.
8452	//   "RUNNING" - The operation is currently running.
8453	//   "DONE" - The operation is done, either cancelled or completed.
8454	State string `json:"state,omitempty"`
8455
8456	// ForceSendFields is a list of field names (e.g. "State") to
8457	// unconditionally include in API requests. By default, fields with
8458	// empty or default values are omitted from API requests. However, any
8459	// non-pointer, non-interface field appearing in ForceSendFields will be
8460	// sent to the server regardless of whether the field is empty or not.
8461	// This may be used to include empty fields in Patch requests.
8462	ForceSendFields []string `json:"-"`
8463
8464	// NullFields is a list of field names (e.g. "State") to include in API
8465	// requests with the JSON null value. By default, fields with empty
8466	// values are omitted from API requests. However, any field with an
8467	// empty value appearing in NullFields will be sent to the server as
8468	// null. It is an error if a field in this list has a non-empty value.
8469	// This may be used to include null fields in Patch requests.
8470	NullFields []string `json:"-"`
8471}
8472
8473func (s *GoogleCloudDialogflowCxV3beta1GenericKnowledgeOperationMetadata) MarshalJSON() ([]byte, error) {
8474	type NoMethod GoogleCloudDialogflowCxV3beta1GenericKnowledgeOperationMetadata
8475	raw := NoMethod(*s)
8476	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8477}
8478
8479// GoogleCloudDialogflowCxV3beta1ImportDocumentsOperationMetadata:
8480// Metadata for ImportDocuments operation.
8481type GoogleCloudDialogflowCxV3beta1ImportDocumentsOperationMetadata struct {
8482	// GenericMetadata: The generic information of the operation.
8483	GenericMetadata *GoogleCloudDialogflowCxV3beta1GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
8484
8485	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
8486	// unconditionally include in API requests. By default, fields with
8487	// empty or default values are omitted from API requests. However, any
8488	// non-pointer, non-interface field appearing in ForceSendFields will be
8489	// sent to the server regardless of whether the field is empty or not.
8490	// This may be used to include empty fields in Patch requests.
8491	ForceSendFields []string `json:"-"`
8492
8493	// NullFields is a list of field names (e.g. "GenericMetadata") to
8494	// include in API requests with the JSON null value. By default, fields
8495	// with empty values are omitted from API requests. However, any field
8496	// with an empty value appearing in NullFields will be sent to the
8497	// server as null. It is an error if a field in this list has a
8498	// non-empty value. This may be used to include null fields in Patch
8499	// requests.
8500	NullFields []string `json:"-"`
8501}
8502
8503func (s *GoogleCloudDialogflowCxV3beta1ImportDocumentsOperationMetadata) MarshalJSON() ([]byte, error) {
8504	type NoMethod GoogleCloudDialogflowCxV3beta1ImportDocumentsOperationMetadata
8505	raw := NoMethod(*s)
8506	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8507}
8508
8509// GoogleCloudDialogflowCxV3beta1ImportDocumentsResponse: Response
8510// message for Documents.ImportDocuments.
8511type GoogleCloudDialogflowCxV3beta1ImportDocumentsResponse struct {
8512	// Warnings: Includes details about skipped documents or any other
8513	// warnings.
8514	Warnings []*GoogleRpcStatus `json:"warnings,omitempty"`
8515
8516	// ForceSendFields is a list of field names (e.g. "Warnings") to
8517	// unconditionally include in API requests. By default, fields with
8518	// empty or default values are omitted from API requests. However, any
8519	// non-pointer, non-interface field appearing in ForceSendFields will be
8520	// sent to the server regardless of whether the field is empty or not.
8521	// This may be used to include empty fields in Patch requests.
8522	ForceSendFields []string `json:"-"`
8523
8524	// NullFields is a list of field names (e.g. "Warnings") to include in
8525	// API requests with the JSON null value. By default, fields with empty
8526	// values are omitted from API requests. However, any field with an
8527	// empty value appearing in NullFields will be sent to the server as
8528	// null. It is an error if a field in this list has a non-empty value.
8529	// This may be used to include null fields in Patch requests.
8530	NullFields []string `json:"-"`
8531}
8532
8533func (s *GoogleCloudDialogflowCxV3beta1ImportDocumentsResponse) MarshalJSON() ([]byte, error) {
8534	type NoMethod GoogleCloudDialogflowCxV3beta1ImportDocumentsResponse
8535	raw := NoMethod(*s)
8536	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8537}
8538
8539// GoogleCloudDialogflowCxV3beta1ImportFlowResponse: The response
8540// message for Flows.ImportFlow.
8541type GoogleCloudDialogflowCxV3beta1ImportFlowResponse struct {
8542	// Flow: The unique identifier of the new flow. Format:
8543	// `projects//locations//agents//flows/`.
8544	Flow string `json:"flow,omitempty"`
8545
8546	// ForceSendFields is a list of field names (e.g. "Flow") to
8547	// unconditionally include in API requests. By default, fields with
8548	// empty or default values are omitted from API requests. However, any
8549	// non-pointer, non-interface field appearing in ForceSendFields will be
8550	// sent to the server regardless of whether the field is empty or not.
8551	// This may be used to include empty fields in Patch requests.
8552	ForceSendFields []string `json:"-"`
8553
8554	// NullFields is a list of field names (e.g. "Flow") to include in API
8555	// requests with the JSON null value. By default, fields with empty
8556	// values are omitted from API requests. However, any field with an
8557	// empty value appearing in NullFields will be sent to the server as
8558	// null. It is an error if a field in this list has a non-empty value.
8559	// This may be used to include null fields in Patch requests.
8560	NullFields []string `json:"-"`
8561}
8562
8563func (s *GoogleCloudDialogflowCxV3beta1ImportFlowResponse) MarshalJSON() ([]byte, error) {
8564	type NoMethod GoogleCloudDialogflowCxV3beta1ImportFlowResponse
8565	raw := NoMethod(*s)
8566	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8567}
8568
8569// GoogleCloudDialogflowCxV3beta1ImportTestCasesMetadata: Metadata
8570// returned for the TestCases.ImportTestCases long running operation.
8571type GoogleCloudDialogflowCxV3beta1ImportTestCasesMetadata struct {
8572	// Errors: Errors for failed test cases.
8573	Errors []*GoogleCloudDialogflowCxV3beta1TestCaseError `json:"errors,omitempty"`
8574
8575	// ForceSendFields is a list of field names (e.g. "Errors") to
8576	// unconditionally include in API requests. By default, fields with
8577	// empty or default values are omitted from API requests. However, any
8578	// non-pointer, non-interface field appearing in ForceSendFields will be
8579	// sent to the server regardless of whether the field is empty or not.
8580	// This may be used to include empty fields in Patch requests.
8581	ForceSendFields []string `json:"-"`
8582
8583	// NullFields is a list of field names (e.g. "Errors") to include in API
8584	// requests with the JSON null value. By default, fields with empty
8585	// values are omitted from API requests. However, any field with an
8586	// empty value appearing in NullFields will be sent to the server as
8587	// null. It is an error if a field in this list has a non-empty value.
8588	// This may be used to include null fields in Patch requests.
8589	NullFields []string `json:"-"`
8590}
8591
8592func (s *GoogleCloudDialogflowCxV3beta1ImportTestCasesMetadata) MarshalJSON() ([]byte, error) {
8593	type NoMethod GoogleCloudDialogflowCxV3beta1ImportTestCasesMetadata
8594	raw := NoMethod(*s)
8595	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8596}
8597
8598// GoogleCloudDialogflowCxV3beta1ImportTestCasesResponse: The response
8599// message for TestCases.ImportTestCases.
8600type GoogleCloudDialogflowCxV3beta1ImportTestCasesResponse struct {
8601	// Names: The unique identifiers of the new test cases. Format:
8602	// `projects//locations//agents//testCases/`.
8603	Names []string `json:"names,omitempty"`
8604
8605	// ForceSendFields is a list of field names (e.g. "Names") to
8606	// unconditionally include in API requests. By default, fields with
8607	// empty or default values are omitted from API requests. However, any
8608	// non-pointer, non-interface field appearing in ForceSendFields will be
8609	// sent to the server regardless of whether the field is empty or not.
8610	// This may be used to include empty fields in Patch requests.
8611	ForceSendFields []string `json:"-"`
8612
8613	// NullFields is a list of field names (e.g. "Names") to include in API
8614	// requests with the JSON null value. By default, fields with empty
8615	// values are omitted from API requests. However, any field with an
8616	// empty value appearing in NullFields will be sent to the server as
8617	// null. It is an error if a field in this list has a non-empty value.
8618	// This may be used to include null fields in Patch requests.
8619	NullFields []string `json:"-"`
8620}
8621
8622func (s *GoogleCloudDialogflowCxV3beta1ImportTestCasesResponse) MarshalJSON() ([]byte, error) {
8623	type NoMethod GoogleCloudDialogflowCxV3beta1ImportTestCasesResponse
8624	raw := NoMethod(*s)
8625	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8626}
8627
8628// GoogleCloudDialogflowCxV3beta1InputAudioConfig: Instructs the speech
8629// recognizer on how to process the audio content.
8630type GoogleCloudDialogflowCxV3beta1InputAudioConfig struct {
8631	// AudioEncoding: Required. Audio encoding of the audio content to
8632	// process.
8633	//
8634	// Possible values:
8635	//   "AUDIO_ENCODING_UNSPECIFIED" - Not specified.
8636	//   "AUDIO_ENCODING_LINEAR_16" - Uncompressed 16-bit signed
8637	// little-endian samples (Linear PCM).
8638	//   "AUDIO_ENCODING_FLAC" -
8639	// [`FLAC`](https://xiph.org/flac/documentation.html) (Free Lossless
8640	// Audio Codec) is the recommended encoding because it is lossless
8641	// (therefore recognition is not compromised) and requires only about
8642	// half the bandwidth of `LINEAR16`. `FLAC` stream encoding supports
8643	// 16-bit and 24-bit samples, however, not all fields in `STREAMINFO`
8644	// are supported.
8645	//   "AUDIO_ENCODING_MULAW" - 8-bit samples that compand 14-bit audio
8646	// samples using G.711 PCMU/mu-law.
8647	//   "AUDIO_ENCODING_AMR" - Adaptive Multi-Rate Narrowband codec.
8648	// `sample_rate_hertz` must be 8000.
8649	//   "AUDIO_ENCODING_AMR_WB" - Adaptive Multi-Rate Wideband codec.
8650	// `sample_rate_hertz` must be 16000.
8651	//   "AUDIO_ENCODING_OGG_OPUS" - Opus encoded audio frames in Ogg
8652	// container ([OggOpus](https://wiki.xiph.org/OggOpus)).
8653	// `sample_rate_hertz` must be 16000.
8654	//   "AUDIO_ENCODING_SPEEX_WITH_HEADER_BYTE" - Although the use of lossy
8655	// encodings is not recommended, if a very low bitrate encoding is
8656	// required, `OGG_OPUS` is highly preferred over Speex encoding. The
8657	// [Speex](https://speex.org/) encoding supported by Dialogflow API has
8658	// a header byte in each block, as in MIME type
8659	// `audio/x-speex-with-header-byte`. It is a variant of the RTP Speex
8660	// encoding defined in [RFC 5574](https://tools.ietf.org/html/rfc5574).
8661	// The stream is a sequence of blocks, one block per RTP packet. Each
8662	// block starts with a byte containing the length of the block, in
8663	// bytes, followed by one or more frames of Speex data, padded to an
8664	// integral number of bytes (octets) as specified in RFC 5574. In other
8665	// words, each RTP header is replaced with a single byte containing the
8666	// block length. Only Speex wideband is supported. `sample_rate_hertz`
8667	// must be 16000.
8668	AudioEncoding string `json:"audioEncoding,omitempty"`
8669
8670	// EnableWordInfo: Optional. If `true`, Dialogflow returns
8671	// SpeechWordInfo in StreamingRecognitionResult with information about
8672	// the recognized speech words, e.g. start and end time offsets. If
8673	// false or unspecified, Speech doesn't return any word-level
8674	// information.
8675	EnableWordInfo bool `json:"enableWordInfo,omitempty"`
8676
8677	// Model: Optional. Which Speech model to select for the given request.
8678	// Select the model best suited to your domain to get best results. If a
8679	// model is not explicitly specified, then we auto-select a model based
8680	// on the parameters in the InputAudioConfig. If enhanced speech model
8681	// is enabled for the agent and an enhanced version of the specified
8682	// model for the language does not exist, then the speech is recognized
8683	// using the standard version of the specified model. Refer to Cloud
8684	// Speech API documentation
8685	// (https://cloud.google.com/speech-to-text/docs/basics#select-model)
8686	// for more details.
8687	Model string `json:"model,omitempty"`
8688
8689	// ModelVariant: Optional. Which variant of the Speech model to use.
8690	//
8691	// Possible values:
8692	//   "SPEECH_MODEL_VARIANT_UNSPECIFIED" - No model variant specified. In
8693	// this case Dialogflow defaults to USE_BEST_AVAILABLE.
8694	//   "USE_BEST_AVAILABLE" - Use the best available variant of the Speech
8695	// model that the caller is eligible for. Please see the [Dialogflow
8696	// docs](https://cloud.google.com/dialogflow/docs/data-logging) for how
8697	// to make your project eligible for enhanced models.
8698	//   "USE_STANDARD" - Use standard model variant even if an enhanced
8699	// model is available. See the [Cloud Speech
8700	// documentation](https://cloud.google.com/speech-to-text/docs/enhanced-m
8701	// odels) for details about enhanced models.
8702	//   "USE_ENHANCED" - Use an enhanced model variant: * If an enhanced
8703	// variant does not exist for the given model and request language,
8704	// Dialogflow falls back to the standard variant. The [Cloud Speech
8705	// documentation](https://cloud.google.com/speech-to-text/docs/enhanced-m
8706	// odels) describes which models have enhanced variants. * If the API
8707	// caller isn't eligible for enhanced models, Dialogflow returns an
8708	// error. Please see the [Dialogflow
8709	// docs](https://cloud.google.com/dialogflow/docs/data-logging) for how
8710	// to make your project eligible.
8711	ModelVariant string `json:"modelVariant,omitempty"`
8712
8713	// PhraseHints: Optional. A list of strings containing words and phrases
8714	// that the speech recognizer should recognize with higher likelihood.
8715	// See the Cloud Speech documentation
8716	// (https://cloud.google.com/speech-to-text/docs/basics#phrase-hints)
8717	// for more details.
8718	PhraseHints []string `json:"phraseHints,omitempty"`
8719
8720	// SampleRateHertz: Sample rate (in Hertz) of the audio content sent in
8721	// the query. Refer to Cloud Speech API documentation
8722	// (https://cloud.google.com/speech-to-text/docs/basics) for more
8723	// details.
8724	SampleRateHertz int64 `json:"sampleRateHertz,omitempty"`
8725
8726	// SingleUtterance: Optional. If `false` (default), recognition does not
8727	// cease until the client closes the stream. If `true`, the recognizer
8728	// will detect a single spoken utterance in input audio. Recognition
8729	// ceases when it detects the audio's voice has stopped or paused. In
8730	// this case, once a detected intent is received, the client should
8731	// close the stream and start a new request with a new stream as needed.
8732	// Note: This setting is relevant only for streaming methods.
8733	SingleUtterance bool `json:"singleUtterance,omitempty"`
8734
8735	// ForceSendFields is a list of field names (e.g. "AudioEncoding") to
8736	// unconditionally include in API requests. By default, fields with
8737	// empty or default values are omitted from API requests. However, any
8738	// non-pointer, non-interface field appearing in ForceSendFields will be
8739	// sent to the server regardless of whether the field is empty or not.
8740	// This may be used to include empty fields in Patch requests.
8741	ForceSendFields []string `json:"-"`
8742
8743	// NullFields is a list of field names (e.g. "AudioEncoding") to include
8744	// in API requests with the JSON null value. By default, fields with
8745	// empty values are omitted from API requests. However, any field with
8746	// an empty value appearing in NullFields will be sent to the server as
8747	// null. It is an error if a field in this list has a non-empty value.
8748	// This may be used to include null fields in Patch requests.
8749	NullFields []string `json:"-"`
8750}
8751
8752func (s *GoogleCloudDialogflowCxV3beta1InputAudioConfig) MarshalJSON() ([]byte, error) {
8753	type NoMethod GoogleCloudDialogflowCxV3beta1InputAudioConfig
8754	raw := NoMethod(*s)
8755	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8756}
8757
8758// GoogleCloudDialogflowCxV3beta1Intent: An intent represents a user's
8759// intent to interact with a conversational agent. You can provide
8760// information for the Dialogflow API to use to match user input to an
8761// intent by adding training phrases (i.e., examples of user input) to
8762// your intent.
8763type GoogleCloudDialogflowCxV3beta1Intent struct {
8764	// Description: Human readable description for better understanding an
8765	// intent like its scope, content, result etc. Maximum character limit:
8766	// 140 characters.
8767	Description string `json:"description,omitempty"`
8768
8769	// DisplayName: Required. The human-readable name of the intent, unique
8770	// within the agent.
8771	DisplayName string `json:"displayName,omitempty"`
8772
8773	// IsFallback: Indicates whether this is a fallback intent. Currently
8774	// only default fallback intent is allowed in the agent, which is added
8775	// upon agent creation. Adding training phrases to fallback intent is
8776	// useful in the case of requests that are mistakenly matched, since
8777	// training phrases assigned to fallback intents act as negative
8778	// examples that triggers no-match event.
8779	IsFallback bool `json:"isFallback,omitempty"`
8780
8781	// Labels: The key/value metadata to label an intent. Labels can contain
8782	// lowercase letters, digits and the symbols '-' and '_'. International
8783	// characters are allowed, including letters from unicase alphabets.
8784	// Keys must start with a letter. Keys and values can be no longer than
8785	// 63 characters and no more than 128 bytes. Prefix "sys-" is reserved
8786	// for Dialogflow defined labels. Currently allowed Dialogflow defined
8787	// labels include: * sys-head * sys-contextual The above labels do not
8788	// require value. "sys-head" means the intent is a head intent.
8789	// "sys-contextual" means the intent is a contextual intent.
8790	Labels map[string]string `json:"labels,omitempty"`
8791
8792	// Name: The unique identifier of the intent. Required for the
8793	// Intents.UpdateIntent method. Intents.CreateIntent populates the name
8794	// automatically. Format: `projects//locations//agents//intents/`.
8795	Name string `json:"name,omitempty"`
8796
8797	// Parameters: The collection of parameters associated with the intent.
8798	Parameters []*GoogleCloudDialogflowCxV3beta1IntentParameter `json:"parameters,omitempty"`
8799
8800	// Priority: The priority of this intent. Higher numbers represent
8801	// higher priorities. - If the supplied value is unspecified or 0, the
8802	// service translates the value to 500,000, which corresponds to the
8803	// `Normal` priority in the console. - If the supplied value is
8804	// negative, the intent is ignored in runtime detect intent requests.
8805	Priority int64 `json:"priority,omitempty"`
8806
8807	// TrainingPhrases: The collection of training phrases the agent is
8808	// trained on to identify the intent.
8809	TrainingPhrases []*GoogleCloudDialogflowCxV3beta1IntentTrainingPhrase `json:"trainingPhrases,omitempty"`
8810
8811	// ForceSendFields is a list of field names (e.g. "Description") to
8812	// unconditionally include in API requests. By default, fields with
8813	// empty or default values are omitted from API requests. However, any
8814	// non-pointer, non-interface field appearing in ForceSendFields will be
8815	// sent to the server regardless of whether the field is empty or not.
8816	// This may be used to include empty fields in Patch requests.
8817	ForceSendFields []string `json:"-"`
8818
8819	// NullFields is a list of field names (e.g. "Description") to include
8820	// in API requests with the JSON null value. By default, fields with
8821	// empty values are omitted from API requests. However, any field with
8822	// an empty value appearing in NullFields will be sent to the server as
8823	// null. It is an error if a field in this list has a non-empty value.
8824	// This may be used to include null fields in Patch requests.
8825	NullFields []string `json:"-"`
8826}
8827
8828func (s *GoogleCloudDialogflowCxV3beta1Intent) MarshalJSON() ([]byte, error) {
8829	type NoMethod GoogleCloudDialogflowCxV3beta1Intent
8830	raw := NoMethod(*s)
8831	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8832}
8833
8834// GoogleCloudDialogflowCxV3beta1IntentInput: Represents the intent to
8835// trigger programmatically rather than as a result of natural language
8836// processing.
8837type GoogleCloudDialogflowCxV3beta1IntentInput struct {
8838	// Intent: Required. The unique identifier of the intent. Format:
8839	// `projects//locations//agents//intents/`.
8840	Intent string `json:"intent,omitempty"`
8841
8842	// ForceSendFields is a list of field names (e.g. "Intent") to
8843	// unconditionally include in API requests. By default, fields with
8844	// empty or default values are omitted from API requests. However, any
8845	// non-pointer, non-interface field appearing in ForceSendFields will be
8846	// sent to the server regardless of whether the field is empty or not.
8847	// This may be used to include empty fields in Patch requests.
8848	ForceSendFields []string `json:"-"`
8849
8850	// NullFields is a list of field names (e.g. "Intent") to include in API
8851	// requests with the JSON null value. By default, fields with empty
8852	// values are omitted from API requests. However, any field with an
8853	// empty value appearing in NullFields will be sent to the server as
8854	// null. It is an error if a field in this list has a non-empty value.
8855	// This may be used to include null fields in Patch requests.
8856	NullFields []string `json:"-"`
8857}
8858
8859func (s *GoogleCloudDialogflowCxV3beta1IntentInput) MarshalJSON() ([]byte, error) {
8860	type NoMethod GoogleCloudDialogflowCxV3beta1IntentInput
8861	raw := NoMethod(*s)
8862	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8863}
8864
8865// GoogleCloudDialogflowCxV3beta1IntentParameter: Represents an intent
8866// parameter.
8867type GoogleCloudDialogflowCxV3beta1IntentParameter struct {
8868	// EntityType: Required. The entity type of the parameter. Format:
8869	// `projects/-/locations/-/agents/-/entityTypes/` for system entity
8870	// types (for example,
8871	// `projects/-/locations/-/agents/-/entityTypes/sys.date`), or
8872	// `projects//locations//agents//entityTypes/` for developer entity
8873	// types.
8874	EntityType string `json:"entityType,omitempty"`
8875
8876	// Id: Required. The unique identifier of the parameter. This field is
8877	// used by training phrases to annotate their parts.
8878	Id string `json:"id,omitempty"`
8879
8880	// IsList: Indicates whether the parameter represents a list of values.
8881	IsList bool `json:"isList,omitempty"`
8882
8883	// Redact: Indicates whether the parameter content should be redacted in
8884	// log. If redaction is enabled, the parameter content will be replaced
8885	// by parameter name during logging. Note: the parameter content is
8886	// subject to redaction if either parameter level redaction or entity
8887	// type level redaction is enabled.
8888	Redact bool `json:"redact,omitempty"`
8889
8890	// ForceSendFields is a list of field names (e.g. "EntityType") to
8891	// unconditionally include in API requests. By default, fields with
8892	// empty or default values are omitted from API requests. However, any
8893	// non-pointer, non-interface field appearing in ForceSendFields will be
8894	// sent to the server regardless of whether the field is empty or not.
8895	// This may be used to include empty fields in Patch requests.
8896	ForceSendFields []string `json:"-"`
8897
8898	// NullFields is a list of field names (e.g. "EntityType") to include in
8899	// API requests with the JSON null value. By default, fields with empty
8900	// values are omitted from API requests. However, any field with an
8901	// empty value appearing in NullFields will be sent to the server as
8902	// null. It is an error if a field in this list has a non-empty value.
8903	// This may be used to include null fields in Patch requests.
8904	NullFields []string `json:"-"`
8905}
8906
8907func (s *GoogleCloudDialogflowCxV3beta1IntentParameter) MarshalJSON() ([]byte, error) {
8908	type NoMethod GoogleCloudDialogflowCxV3beta1IntentParameter
8909	raw := NoMethod(*s)
8910	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8911}
8912
8913// GoogleCloudDialogflowCxV3beta1IntentTrainingPhrase: Represents an
8914// example that the agent is trained on to identify the intent.
8915type GoogleCloudDialogflowCxV3beta1IntentTrainingPhrase struct {
8916	// Id: Output only. The unique identifier of the training phrase.
8917	Id string `json:"id,omitempty"`
8918
8919	// Parts: Required. The ordered list of training phrase parts. The parts
8920	// are concatenated in order to form the training phrase. Note: The API
8921	// does not automatically annotate training phrases like the Dialogflow
8922	// Console does. Note: Do not forget to include whitespace at part
8923	// boundaries, so the training phrase is well formatted when the parts
8924	// are concatenated. If the training phrase does not need to be
8925	// annotated with parameters, you just need a single part with only the
8926	// Part.text field set. If you want to annotate the training phrase, you
8927	// must create multiple parts, where the fields of each part are
8928	// populated in one of two ways: - `Part.text` is set to a part of the
8929	// phrase that has no parameters. - `Part.text` is set to a part of the
8930	// phrase that you want to annotate, and the `parameter_id` field is
8931	// set.
8932	Parts []*GoogleCloudDialogflowCxV3beta1IntentTrainingPhrasePart `json:"parts,omitempty"`
8933
8934	// RepeatCount: Indicates how many times this example was added to the
8935	// intent.
8936	RepeatCount int64 `json:"repeatCount,omitempty"`
8937
8938	// ForceSendFields is a list of field names (e.g. "Id") to
8939	// unconditionally include in API requests. By default, fields with
8940	// empty or default values are omitted from API requests. However, any
8941	// non-pointer, non-interface field appearing in ForceSendFields will be
8942	// sent to the server regardless of whether the field is empty or not.
8943	// This may be used to include empty fields in Patch requests.
8944	ForceSendFields []string `json:"-"`
8945
8946	// NullFields is a list of field names (e.g. "Id") to include in API
8947	// requests with the JSON null value. By default, fields with empty
8948	// values are omitted from API requests. However, any field with an
8949	// empty value appearing in NullFields will be sent to the server as
8950	// null. It is an error if a field in this list has a non-empty value.
8951	// This may be used to include null fields in Patch requests.
8952	NullFields []string `json:"-"`
8953}
8954
8955func (s *GoogleCloudDialogflowCxV3beta1IntentTrainingPhrase) MarshalJSON() ([]byte, error) {
8956	type NoMethod GoogleCloudDialogflowCxV3beta1IntentTrainingPhrase
8957	raw := NoMethod(*s)
8958	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8959}
8960
8961// GoogleCloudDialogflowCxV3beta1IntentTrainingPhrasePart: Represents a
8962// part of a training phrase.
8963type GoogleCloudDialogflowCxV3beta1IntentTrainingPhrasePart struct {
8964	// ParameterId: The parameter used to annotate this part of the training
8965	// phrase. This field is required for annotated parts of the training
8966	// phrase.
8967	ParameterId string `json:"parameterId,omitempty"`
8968
8969	// Text: Required. The text for this part.
8970	Text string `json:"text,omitempty"`
8971
8972	// ForceSendFields is a list of field names (e.g. "ParameterId") to
8973	// unconditionally include in API requests. By default, fields with
8974	// empty or default values are omitted from API requests. However, any
8975	// non-pointer, non-interface field appearing in ForceSendFields will be
8976	// sent to the server regardless of whether the field is empty or not.
8977	// This may be used to include empty fields in Patch requests.
8978	ForceSendFields []string `json:"-"`
8979
8980	// NullFields is a list of field names (e.g. "ParameterId") to include
8981	// in API requests with the JSON null value. By default, fields with
8982	// empty values are omitted from API requests. However, any field with
8983	// an empty value appearing in NullFields will be sent to the server as
8984	// null. It is an error if a field in this list has a non-empty value.
8985	// This may be used to include null fields in Patch requests.
8986	NullFields []string `json:"-"`
8987}
8988
8989func (s *GoogleCloudDialogflowCxV3beta1IntentTrainingPhrasePart) MarshalJSON() ([]byte, error) {
8990	type NoMethod GoogleCloudDialogflowCxV3beta1IntentTrainingPhrasePart
8991	raw := NoMethod(*s)
8992	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8993}
8994
8995// GoogleCloudDialogflowCxV3beta1Page: A Dialogflow CX conversation
8996// (session) can be described and visualized as a state machine. The
8997// states of a CX session are represented by pages. For each flow, you
8998// define many pages, where your combined pages can handle a complete
8999// conversation on the topics the flow is designed for. At any given
9000// moment, exactly one page is the current page, the current page is
9001// considered active, and the flow associated with that page is
9002// considered active. Every flow has a special start page. When a flow
9003// initially becomes active, the start page page becomes the current
9004// page. For each conversational turn, the current page will either stay
9005// the same or transition to another page. You configure each page to
9006// collect information from the end-user that is relevant for the
9007// conversational state represented by the page. For more information,
9008// see the Page guide
9009// (https://cloud.google.com/dialogflow/cx/docs/concept/page).
9010type GoogleCloudDialogflowCxV3beta1Page struct {
9011	// DisplayName: Required. The human-readable name of the page, unique
9012	// within the agent.
9013	DisplayName string `json:"displayName,omitempty"`
9014
9015	// EntryFulfillment: The fulfillment to call when the session is
9016	// entering the page.
9017	EntryFulfillment *GoogleCloudDialogflowCxV3beta1Fulfillment `json:"entryFulfillment,omitempty"`
9018
9019	// EventHandlers: Handlers associated with the page to handle events
9020	// such as webhook errors, no match or no input.
9021	EventHandlers []*GoogleCloudDialogflowCxV3beta1EventHandler `json:"eventHandlers,omitempty"`
9022
9023	// Form: The form associated with the page, used for collecting
9024	// parameters relevant to the page.
9025	Form *GoogleCloudDialogflowCxV3beta1Form `json:"form,omitempty"`
9026
9027	// Name: The unique identifier of the page. Required for the
9028	// Pages.UpdatePage method. Pages.CreatePage populates the name
9029	// automatically. Format: `projects//locations//agents//flows//pages/`.
9030	Name string `json:"name,omitempty"`
9031
9032	// TransitionRouteGroups: Ordered list of `TransitionRouteGroups`
9033	// associated with the page. Transition route groups must be unique
9034	// within a page. * If multiple transition routes within a page scope
9035	// refer to the same intent, then the precedence order is: page's
9036	// transition route -> page's transition route group -> flow's
9037	// transition routes. * If multiple transition route groups within a
9038	// page contain the same intent, then the first group in the ordered
9039	// list takes precedence.
9040	// Format:`projects//locations//agents//flows//transitionRouteGroups/`.
9041	TransitionRouteGroups []string `json:"transitionRouteGroups,omitempty"`
9042
9043	// TransitionRoutes: A list of transitions for the transition rules of
9044	// this page. They route the conversation to another page in the same
9045	// flow, or another flow. When we are in a certain page, the
9046	// TransitionRoutes are evalauted in the following order: *
9047	// TransitionRoutes defined in the page with intent specified. *
9048	// TransitionRoutes defined in the transition route groups with intent
9049	// specified. * TransitionRoutes defined in flow with intent specified.
9050	// * TransitionRoutes defined in the transition route groups with intent
9051	// specified. * TransitionRoutes defined in the page with only condition
9052	// specified. * TransitionRoutes defined in the transition route groups
9053	// with only condition specified.
9054	TransitionRoutes []*GoogleCloudDialogflowCxV3beta1TransitionRoute `json:"transitionRoutes,omitempty"`
9055
9056	// ForceSendFields is a list of field names (e.g. "DisplayName") to
9057	// unconditionally include in API requests. By default, fields with
9058	// empty or default values are omitted from API requests. However, any
9059	// non-pointer, non-interface field appearing in ForceSendFields will be
9060	// sent to the server regardless of whether the field is empty or not.
9061	// This may be used to include empty fields in Patch requests.
9062	ForceSendFields []string `json:"-"`
9063
9064	// NullFields is a list of field names (e.g. "DisplayName") to include
9065	// in API requests with the JSON null value. By default, fields with
9066	// empty values are omitted from API requests. However, any field with
9067	// an empty value appearing in NullFields will be sent to the server as
9068	// null. It is an error if a field in this list has a non-empty value.
9069	// This may be used to include null fields in Patch requests.
9070	NullFields []string `json:"-"`
9071}
9072
9073func (s *GoogleCloudDialogflowCxV3beta1Page) MarshalJSON() ([]byte, error) {
9074	type NoMethod GoogleCloudDialogflowCxV3beta1Page
9075	raw := NoMethod(*s)
9076	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9077}
9078
9079// GoogleCloudDialogflowCxV3beta1PageInfo: Represents page information
9080// communicated to and from the webhook.
9081type GoogleCloudDialogflowCxV3beta1PageInfo struct {
9082	// CurrentPage: Always present for WebhookRequest. Ignored for
9083	// WebhookResponse. The unique identifier of the current page. Format:
9084	// `projects//locations//agents//flows//pages/`.
9085	CurrentPage string `json:"currentPage,omitempty"`
9086
9087	// FormInfo: Optional for both WebhookRequest and WebhookResponse.
9088	// Information about the form.
9089	FormInfo *GoogleCloudDialogflowCxV3beta1PageInfoFormInfo `json:"formInfo,omitempty"`
9090
9091	// ForceSendFields is a list of field names (e.g. "CurrentPage") to
9092	// unconditionally include in API requests. By default, fields with
9093	// empty or default values are omitted from API requests. However, any
9094	// non-pointer, non-interface field appearing in ForceSendFields will be
9095	// sent to the server regardless of whether the field is empty or not.
9096	// This may be used to include empty fields in Patch requests.
9097	ForceSendFields []string `json:"-"`
9098
9099	// NullFields is a list of field names (e.g. "CurrentPage") to include
9100	// in API requests with the JSON null value. By default, fields with
9101	// empty values are omitted from API requests. However, any field with
9102	// an empty value appearing in NullFields will be sent to the server as
9103	// null. It is an error if a field in this list has a non-empty value.
9104	// This may be used to include null fields in Patch requests.
9105	NullFields []string `json:"-"`
9106}
9107
9108func (s *GoogleCloudDialogflowCxV3beta1PageInfo) MarshalJSON() ([]byte, error) {
9109	type NoMethod GoogleCloudDialogflowCxV3beta1PageInfo
9110	raw := NoMethod(*s)
9111	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9112}
9113
9114// GoogleCloudDialogflowCxV3beta1PageInfoFormInfo: Represents form
9115// information.
9116type GoogleCloudDialogflowCxV3beta1PageInfoFormInfo struct {
9117	// ParameterInfo: Optional for both WebhookRequest and WebhookResponse.
9118	// The parameters contained in the form. Note that the webhook cannot
9119	// add or remove any form parameter.
9120	ParameterInfo []*GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo `json:"parameterInfo,omitempty"`
9121
9122	// ForceSendFields is a list of field names (e.g. "ParameterInfo") to
9123	// unconditionally include in API requests. By default, fields with
9124	// empty or default values are omitted from API requests. However, any
9125	// non-pointer, non-interface field appearing in ForceSendFields will be
9126	// sent to the server regardless of whether the field is empty or not.
9127	// This may be used to include empty fields in Patch requests.
9128	ForceSendFields []string `json:"-"`
9129
9130	// NullFields is a list of field names (e.g. "ParameterInfo") to include
9131	// in API requests with the JSON null value. By default, fields with
9132	// empty values are omitted from API requests. However, any field with
9133	// an empty value appearing in NullFields will be sent to the server as
9134	// null. It is an error if a field in this list has a non-empty value.
9135	// This may be used to include null fields in Patch requests.
9136	NullFields []string `json:"-"`
9137}
9138
9139func (s *GoogleCloudDialogflowCxV3beta1PageInfoFormInfo) MarshalJSON() ([]byte, error) {
9140	type NoMethod GoogleCloudDialogflowCxV3beta1PageInfoFormInfo
9141	raw := NoMethod(*s)
9142	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9143}
9144
9145// GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo:
9146// Represents parameter information.
9147type GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo struct {
9148	// DisplayName: Always present for WebhookRequest. Required for
9149	// WebhookResponse. The human-readable name of the parameter, unique
9150	// within the form. This field cannot be modified by the webhook.
9151	DisplayName string `json:"displayName,omitempty"`
9152
9153	// JustCollected: Optional for WebhookRequest. Ignored for
9154	// WebhookResponse. Indicates if the parameter value was just collected
9155	// on the last conversation turn.
9156	JustCollected bool `json:"justCollected,omitempty"`
9157
9158	// Required: Optional for both WebhookRequest and WebhookResponse.
9159	// Indicates whether the parameter is required. Optional parameters will
9160	// not trigger prompts; however, they are filled if the user specifies
9161	// them. Required parameters must be filled before form filling
9162	// concludes.
9163	Required bool `json:"required,omitempty"`
9164
9165	// State: Always present for WebhookRequest. Required for
9166	// WebhookResponse. The state of the parameter. This field can be set to
9167	// INVALID by the webhook to invalidate the parameter; other values set
9168	// by the webhook will be ignored.
9169	//
9170	// Possible values:
9171	//   "PARAMETER_STATE_UNSPECIFIED" - Not specified. This value should be
9172	// never used.
9173	//   "EMPTY" - Indicates that the parameter does not have a value.
9174	//   "INVALID" - Indicates that the parameter value is invalid. This
9175	// field can be used by the webhook to invalidate the parameter and ask
9176	// the server to collect it from the user again.
9177	//   "FILLED" - Indicates that the parameter has a value.
9178	State string `json:"state,omitempty"`
9179
9180	// Value: Optional for both WebhookRequest and WebhookResponse. The
9181	// value of the parameter. This field can be set by the webhook to
9182	// change the parameter value.
9183	Value interface{} `json:"value,omitempty"`
9184
9185	// ForceSendFields is a list of field names (e.g. "DisplayName") to
9186	// unconditionally include in API requests. By default, fields with
9187	// empty or default values are omitted from API requests. However, any
9188	// non-pointer, non-interface field appearing in ForceSendFields will be
9189	// sent to the server regardless of whether the field is empty or not.
9190	// This may be used to include empty fields in Patch requests.
9191	ForceSendFields []string `json:"-"`
9192
9193	// NullFields is a list of field names (e.g. "DisplayName") to include
9194	// in API requests with the JSON null value. By default, fields with
9195	// empty values are omitted from API requests. However, any field with
9196	// an empty value appearing in NullFields will be sent to the server as
9197	// null. It is an error if a field in this list has a non-empty value.
9198	// This may be used to include null fields in Patch requests.
9199	NullFields []string `json:"-"`
9200}
9201
9202func (s *GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo) MarshalJSON() ([]byte, error) {
9203	type NoMethod GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo
9204	raw := NoMethod(*s)
9205	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9206}
9207
9208// GoogleCloudDialogflowCxV3beta1QueryInput: Represents the query input.
9209// It can contain one of: 1. A conversational query in the form of text.
9210// 2. An intent query that specifies which intent to trigger. 3. Natural
9211// language speech audio to be processed. 4. An event to be triggered.
9212type GoogleCloudDialogflowCxV3beta1QueryInput struct {
9213	// Audio: The natural language speech audio to be processed.
9214	Audio *GoogleCloudDialogflowCxV3beta1AudioInput `json:"audio,omitempty"`
9215
9216	// Dtmf: The DTMF event to be handled.
9217	Dtmf *GoogleCloudDialogflowCxV3beta1DtmfInput `json:"dtmf,omitempty"`
9218
9219	// Event: The event to be triggered.
9220	Event *GoogleCloudDialogflowCxV3beta1EventInput `json:"event,omitempty"`
9221
9222	// Intent: The intent to be triggered.
9223	Intent *GoogleCloudDialogflowCxV3beta1IntentInput `json:"intent,omitempty"`
9224
9225	// LanguageCode: Required. The language of the input. See Language
9226	// Support
9227	// (https://cloud.google.com/dialogflow/cx/docs/reference/language) for
9228	// a list of the currently supported language codes. Note that queries
9229	// in the same session do not necessarily need to specify the same
9230	// language.
9231	LanguageCode string `json:"languageCode,omitempty"`
9232
9233	// Text: The natural language text to be processed.
9234	Text *GoogleCloudDialogflowCxV3beta1TextInput `json:"text,omitempty"`
9235
9236	// ForceSendFields is a list of field names (e.g. "Audio") to
9237	// unconditionally include in API requests. By default, fields with
9238	// empty or default values are omitted from API requests. However, any
9239	// non-pointer, non-interface field appearing in ForceSendFields will be
9240	// sent to the server regardless of whether the field is empty or not.
9241	// This may be used to include empty fields in Patch requests.
9242	ForceSendFields []string `json:"-"`
9243
9244	// NullFields is a list of field names (e.g. "Audio") to include in API
9245	// requests with the JSON null value. By default, fields with empty
9246	// values are omitted from API requests. However, any field with an
9247	// empty value appearing in NullFields will be sent to the server as
9248	// null. It is an error if a field in this list has a non-empty value.
9249	// This may be used to include null fields in Patch requests.
9250	NullFields []string `json:"-"`
9251}
9252
9253func (s *GoogleCloudDialogflowCxV3beta1QueryInput) MarshalJSON() ([]byte, error) {
9254	type NoMethod GoogleCloudDialogflowCxV3beta1QueryInput
9255	raw := NoMethod(*s)
9256	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9257}
9258
9259// GoogleCloudDialogflowCxV3beta1ReloadDocumentOperationMetadata:
9260// Metadata for ReloadDocument operation.
9261type GoogleCloudDialogflowCxV3beta1ReloadDocumentOperationMetadata struct {
9262	// GenericMetadata: The generic information of the operation.
9263	GenericMetadata *GoogleCloudDialogflowCxV3beta1GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
9264
9265	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
9266	// unconditionally include in API requests. By default, fields with
9267	// empty or default values are omitted from API requests. However, any
9268	// non-pointer, non-interface field appearing in ForceSendFields will be
9269	// sent to the server regardless of whether the field is empty or not.
9270	// This may be used to include empty fields in Patch requests.
9271	ForceSendFields []string `json:"-"`
9272
9273	// NullFields is a list of field names (e.g. "GenericMetadata") to
9274	// include in API requests with the JSON null value. By default, fields
9275	// with empty values are omitted from API requests. However, any field
9276	// with an empty value appearing in NullFields will be sent to the
9277	// server as null. It is an error if a field in this list has a
9278	// non-empty value. This may be used to include null fields in Patch
9279	// requests.
9280	NullFields []string `json:"-"`
9281}
9282
9283func (s *GoogleCloudDialogflowCxV3beta1ReloadDocumentOperationMetadata) MarshalJSON() ([]byte, error) {
9284	type NoMethod GoogleCloudDialogflowCxV3beta1ReloadDocumentOperationMetadata
9285	raw := NoMethod(*s)
9286	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9287}
9288
9289// GoogleCloudDialogflowCxV3beta1ResponseMessage: Represents a response
9290// message that can be returned by a conversational agent. Response
9291// messages are also used for output audio synthesis. The approach is as
9292// follows: * If at least one OutputAudioText response is present, then
9293// all OutputAudioText responses are linearly concatenated, and the
9294// result is used for output audio synthesis. * If the OutputAudioText
9295// responses are a mixture of text and SSML, then the concatenated
9296// result is treated as SSML; otherwise, the result is treated as either
9297// text or SSML as appropriate. The agent designer should ideally use
9298// either text or SSML consistently throughout the bot design. *
9299// Otherwise, all Text responses are linearly concatenated, and the
9300// result is used for output audio synthesis. This approach allows for
9301// more sophisticated user experience scenarios, where the text
9302// displayed to the user may differ from what is heard.
9303type GoogleCloudDialogflowCxV3beta1ResponseMessage struct {
9304	// ConversationSuccess: Indicates that the conversation succeeded.
9305	ConversationSuccess *GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess `json:"conversationSuccess,omitempty"`
9306
9307	// EndInteraction: Output only. A signal that indicates the interaction
9308	// with the Dialogflow agent has ended. This message is generated by
9309	// Dialogflow only when the conversation reaches `END_SESSION` page. It
9310	// is not supposed to be defined by the user. It's guaranteed that there
9311	// is at most one such message in each response.
9312	EndInteraction *GoogleCloudDialogflowCxV3beta1ResponseMessageEndInteraction `json:"endInteraction,omitempty"`
9313
9314	// LiveAgentHandoff: Hands off conversation to a human agent.
9315	LiveAgentHandoff *GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff `json:"liveAgentHandoff,omitempty"`
9316
9317	// MixedAudio: Output only. An audio response message composed of both
9318	// the synthesized Dialogflow agent responses and responses defined via
9319	// play_audio. This message is generated by Dialogflow only and not
9320	// supposed to be defined by the user.
9321	MixedAudio *GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudio `json:"mixedAudio,omitempty"`
9322
9323	// OutputAudioText: A text or ssml response that is preferentially used
9324	// for TTS output audio synthesis, as described in the comment on the
9325	// ResponseMessage message.
9326	OutputAudioText *GoogleCloudDialogflowCxV3beta1ResponseMessageOutputAudioText `json:"outputAudioText,omitempty"`
9327
9328	// Payload: Returns a response containing a custom, platform-specific
9329	// payload.
9330	Payload googleapi.RawMessage `json:"payload,omitempty"`
9331
9332	// PlayAudio: Signal that the client should play an audio clip hosted at
9333	// a client-specific URI. Dialogflow uses this to construct mixed_audio.
9334	// However, Dialogflow itself does not try to read or process the URI in
9335	// any way.
9336	PlayAudio *GoogleCloudDialogflowCxV3beta1ResponseMessagePlayAudio `json:"playAudio,omitempty"`
9337
9338	// Text: Returns a text response.
9339	Text *GoogleCloudDialogflowCxV3beta1ResponseMessageText `json:"text,omitempty"`
9340
9341	// ForceSendFields is a list of field names (e.g. "ConversationSuccess")
9342	// to unconditionally include in API requests. By default, fields with
9343	// empty or default values are omitted from API requests. However, any
9344	// non-pointer, non-interface field appearing in ForceSendFields will be
9345	// sent to the server regardless of whether the field is empty or not.
9346	// This may be used to include empty fields in Patch requests.
9347	ForceSendFields []string `json:"-"`
9348
9349	// NullFields is a list of field names (e.g. "ConversationSuccess") to
9350	// include in API requests with the JSON null value. By default, fields
9351	// with empty values are omitted from API requests. However, any field
9352	// with an empty value appearing in NullFields will be sent to the
9353	// server as null. It is an error if a field in this list has a
9354	// non-empty value. This may be used to include null fields in Patch
9355	// requests.
9356	NullFields []string `json:"-"`
9357}
9358
9359func (s *GoogleCloudDialogflowCxV3beta1ResponseMessage) MarshalJSON() ([]byte, error) {
9360	type NoMethod GoogleCloudDialogflowCxV3beta1ResponseMessage
9361	raw := NoMethod(*s)
9362	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9363}
9364
9365// GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess:
9366// Indicates that the conversation succeeded, i.e., the bot handled the
9367// issue that the customer talked to it about. Dialogflow only uses this
9368// to determine which conversations should be counted as successful and
9369// doesn't process the metadata in this message in any way. Note that
9370// Dialogflow also considers conversations that get to the conversation
9371// end page as successful even if they don't return ConversationSuccess.
9372// You may set this, for example: * In the entry_fulfillment of a Page
9373// if entering the page indicates that the conversation succeeded. * In
9374// a webhook response when you determine that you handled the customer
9375// issue.
9376type GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess struct {
9377	// Metadata: Custom metadata. Dialogflow doesn't impose any structure on
9378	// this.
9379	Metadata googleapi.RawMessage `json:"metadata,omitempty"`
9380
9381	// ForceSendFields is a list of field names (e.g. "Metadata") to
9382	// unconditionally include in API requests. By default, fields with
9383	// empty or default values are omitted from API requests. However, any
9384	// non-pointer, non-interface field appearing in ForceSendFields will be
9385	// sent to the server regardless of whether the field is empty or not.
9386	// This may be used to include empty fields in Patch requests.
9387	ForceSendFields []string `json:"-"`
9388
9389	// NullFields is a list of field names (e.g. "Metadata") to include in
9390	// API requests with the JSON null value. By default, fields with empty
9391	// values are omitted from API requests. However, any field with an
9392	// empty value appearing in NullFields will be sent to the server as
9393	// null. It is an error if a field in this list has a non-empty value.
9394	// This may be used to include null fields in Patch requests.
9395	NullFields []string `json:"-"`
9396}
9397
9398func (s *GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess) MarshalJSON() ([]byte, error) {
9399	type NoMethod GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess
9400	raw := NoMethod(*s)
9401	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9402}
9403
9404// GoogleCloudDialogflowCxV3beta1ResponseMessageEndInteraction:
9405// Indicates that interaction with the Dialogflow agent has ended. This
9406// message is generated by Dialogflow only and not supposed to be
9407// defined by the user.
9408type GoogleCloudDialogflowCxV3beta1ResponseMessageEndInteraction struct {
9409}
9410
9411// GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff:
9412// Indicates that the conversation should be handed off to a live agent.
9413// Dialogflow only uses this to determine which conversations were
9414// handed off to a human agent for measurement purposes. What else to do
9415// with this signal is up to you and your handoff procedures. You may
9416// set this, for example: * In the entry_fulfillment of a Page if
9417// entering the page indicates something went extremely wrong in the
9418// conversation. * In a webhook response when you determine that the
9419// customer issue can only be handled by a human.
9420type GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff struct {
9421	// Metadata: Custom metadata for your handoff procedure. Dialogflow
9422	// doesn't impose any structure on this.
9423	Metadata googleapi.RawMessage `json:"metadata,omitempty"`
9424
9425	// ForceSendFields is a list of field names (e.g. "Metadata") to
9426	// unconditionally include in API requests. By default, fields with
9427	// empty or default values are omitted from API requests. However, any
9428	// non-pointer, non-interface field appearing in ForceSendFields will be
9429	// sent to the server regardless of whether the field is empty or not.
9430	// This may be used to include empty fields in Patch requests.
9431	ForceSendFields []string `json:"-"`
9432
9433	// NullFields is a list of field names (e.g. "Metadata") to include in
9434	// API requests with the JSON null value. By default, fields with empty
9435	// values are omitted from API requests. However, any field with an
9436	// empty value appearing in NullFields will be sent to the server as
9437	// null. It is an error if a field in this list has a non-empty value.
9438	// This may be used to include null fields in Patch requests.
9439	NullFields []string `json:"-"`
9440}
9441
9442func (s *GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff) MarshalJSON() ([]byte, error) {
9443	type NoMethod GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff
9444	raw := NoMethod(*s)
9445	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9446}
9447
9448// GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudio: Represents
9449// an audio message that is composed of both segments synthesized from
9450// the Dialogflow agent prompts and ones hosted externally at the
9451// specified URIs. The external URIs are specified via play_audio. This
9452// message is generated by Dialogflow only and not supposed to be
9453// defined by the user.
9454type GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudio struct {
9455	// Segments: Segments this audio response is composed of.
9456	Segments []*GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudioSegment `json:"segments,omitempty"`
9457
9458	// ForceSendFields is a list of field names (e.g. "Segments") to
9459	// unconditionally include in API requests. By default, fields with
9460	// empty or default values are omitted from API requests. However, any
9461	// non-pointer, non-interface field appearing in ForceSendFields will be
9462	// sent to the server regardless of whether the field is empty or not.
9463	// This may be used to include empty fields in Patch requests.
9464	ForceSendFields []string `json:"-"`
9465
9466	// NullFields is a list of field names (e.g. "Segments") to include in
9467	// API requests with the JSON null value. By default, fields with empty
9468	// values are omitted from API requests. However, any field with an
9469	// empty value appearing in NullFields will be sent to the server as
9470	// null. It is an error if a field in this list has a non-empty value.
9471	// This may be used to include null fields in Patch requests.
9472	NullFields []string `json:"-"`
9473}
9474
9475func (s *GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudio) MarshalJSON() ([]byte, error) {
9476	type NoMethod GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudio
9477	raw := NoMethod(*s)
9478	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9479}
9480
9481// GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudioSegment:
9482// Represents one segment of audio.
9483type GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudioSegment struct {
9484	// AllowPlaybackInterruption: Output only. Whether the playback of this
9485	// segment can be interrupted by the end user's speech and the client
9486	// should then start the next Dialogflow request.
9487	AllowPlaybackInterruption bool `json:"allowPlaybackInterruption,omitempty"`
9488
9489	// Audio: Raw audio synthesized from the Dialogflow agent's response
9490	// using the output config specified in the request.
9491	Audio string `json:"audio,omitempty"`
9492
9493	// Uri: Client-specific URI that points to an audio clip accessible to
9494	// the client. Dialogflow does not impose any validation on it.
9495	Uri string `json:"uri,omitempty"`
9496
9497	// ForceSendFields is a list of field names (e.g.
9498	// "AllowPlaybackInterruption") to unconditionally include in API
9499	// requests. By default, fields with empty or default values are omitted
9500	// from API requests. However, any non-pointer, non-interface field
9501	// appearing in ForceSendFields will be sent to the server regardless of
9502	// whether the field is empty or not. This may be used to include empty
9503	// fields in Patch requests.
9504	ForceSendFields []string `json:"-"`
9505
9506	// NullFields is a list of field names (e.g.
9507	// "AllowPlaybackInterruption") to include in API requests with the JSON
9508	// null value. By default, fields with empty values are omitted from API
9509	// requests. However, any field with an empty value appearing in
9510	// NullFields will be sent to the server as null. It is an error if a
9511	// field in this list has a non-empty value. This may be used to include
9512	// null fields in Patch requests.
9513	NullFields []string `json:"-"`
9514}
9515
9516func (s *GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudioSegment) MarshalJSON() ([]byte, error) {
9517	type NoMethod GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudioSegment
9518	raw := NoMethod(*s)
9519	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9520}
9521
9522// GoogleCloudDialogflowCxV3beta1ResponseMessageOutputAudioText: A text
9523// or ssml response that is preferentially used for TTS output audio
9524// synthesis, as described in the comment on the ResponseMessage
9525// message.
9526type GoogleCloudDialogflowCxV3beta1ResponseMessageOutputAudioText struct {
9527	// AllowPlaybackInterruption: Output only. Whether the playback of this
9528	// message can be interrupted by the end user's speech and the client
9529	// can then starts the next Dialogflow request.
9530	AllowPlaybackInterruption bool `json:"allowPlaybackInterruption,omitempty"`
9531
9532	// Ssml: The SSML text to be synthesized. For more information, see SSML
9533	// (/speech/text-to-speech/docs/ssml).
9534	Ssml string `json:"ssml,omitempty"`
9535
9536	// Text: The raw text to be synthesized.
9537	Text string `json:"text,omitempty"`
9538
9539	// ForceSendFields is a list of field names (e.g.
9540	// "AllowPlaybackInterruption") to unconditionally include in API
9541	// requests. By default, fields with empty or default values are omitted
9542	// from API requests. However, any non-pointer, non-interface field
9543	// appearing in ForceSendFields will be sent to the server regardless of
9544	// whether the field is empty or not. This may be used to include empty
9545	// fields in Patch requests.
9546	ForceSendFields []string `json:"-"`
9547
9548	// NullFields is a list of field names (e.g.
9549	// "AllowPlaybackInterruption") to include in API requests with the JSON
9550	// null value. By default, fields with empty values are omitted from API
9551	// requests. However, any field with an empty value appearing in
9552	// NullFields will be sent to the server as null. It is an error if a
9553	// field in this list has a non-empty value. This may be used to include
9554	// null fields in Patch requests.
9555	NullFields []string `json:"-"`
9556}
9557
9558func (s *GoogleCloudDialogflowCxV3beta1ResponseMessageOutputAudioText) MarshalJSON() ([]byte, error) {
9559	type NoMethod GoogleCloudDialogflowCxV3beta1ResponseMessageOutputAudioText
9560	raw := NoMethod(*s)
9561	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9562}
9563
9564// GoogleCloudDialogflowCxV3beta1ResponseMessagePlayAudio: Specifies an
9565// audio clip to be played by the client as part of the response.
9566type GoogleCloudDialogflowCxV3beta1ResponseMessagePlayAudio struct {
9567	// AllowPlaybackInterruption: Output only. Whether the playback of this
9568	// message can be interrupted by the end user's speech and the client
9569	// can then starts the next Dialogflow request.
9570	AllowPlaybackInterruption bool `json:"allowPlaybackInterruption,omitempty"`
9571
9572	// AudioUri: Required. URI of the audio clip. Dialogflow does not impose
9573	// any validation on this value. It is specific to the client that reads
9574	// it.
9575	AudioUri string `json:"audioUri,omitempty"`
9576
9577	// ForceSendFields is a list of field names (e.g.
9578	// "AllowPlaybackInterruption") to unconditionally include in API
9579	// requests. By default, fields with empty or default values are omitted
9580	// from API requests. However, any non-pointer, non-interface field
9581	// appearing in ForceSendFields will be sent to the server regardless of
9582	// whether the field is empty or not. This may be used to include empty
9583	// fields in Patch requests.
9584	ForceSendFields []string `json:"-"`
9585
9586	// NullFields is a list of field names (e.g.
9587	// "AllowPlaybackInterruption") to include in API requests with the JSON
9588	// null value. By default, fields with empty values are omitted from API
9589	// requests. However, any field with an empty value appearing in
9590	// NullFields will be sent to the server as null. It is an error if a
9591	// field in this list has a non-empty value. This may be used to include
9592	// null fields in Patch requests.
9593	NullFields []string `json:"-"`
9594}
9595
9596func (s *GoogleCloudDialogflowCxV3beta1ResponseMessagePlayAudio) MarshalJSON() ([]byte, error) {
9597	type NoMethod GoogleCloudDialogflowCxV3beta1ResponseMessagePlayAudio
9598	raw := NoMethod(*s)
9599	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9600}
9601
9602// GoogleCloudDialogflowCxV3beta1ResponseMessageText: The text response
9603// message.
9604type GoogleCloudDialogflowCxV3beta1ResponseMessageText struct {
9605	// AllowPlaybackInterruption: Output only. Whether the playback of this
9606	// message can be interrupted by the end user's speech and the client
9607	// can then starts the next Dialogflow request.
9608	AllowPlaybackInterruption bool `json:"allowPlaybackInterruption,omitempty"`
9609
9610	// Text: Required. A collection of text responses.
9611	Text []string `json:"text,omitempty"`
9612
9613	// ForceSendFields is a list of field names (e.g.
9614	// "AllowPlaybackInterruption") to unconditionally include in API
9615	// requests. By default, fields with empty or default values are omitted
9616	// from API requests. However, any non-pointer, non-interface field
9617	// appearing in ForceSendFields will be sent to the server regardless of
9618	// whether the field is empty or not. This may be used to include empty
9619	// fields in Patch requests.
9620	ForceSendFields []string `json:"-"`
9621
9622	// NullFields is a list of field names (e.g.
9623	// "AllowPlaybackInterruption") to include in API requests with the JSON
9624	// null value. By default, fields with empty values are omitted from API
9625	// requests. However, any field with an empty value appearing in
9626	// NullFields will be sent to the server as null. It is an error if a
9627	// field in this list has a non-empty value. This may be used to include
9628	// null fields in Patch requests.
9629	NullFields []string `json:"-"`
9630}
9631
9632func (s *GoogleCloudDialogflowCxV3beta1ResponseMessageText) MarshalJSON() ([]byte, error) {
9633	type NoMethod GoogleCloudDialogflowCxV3beta1ResponseMessageText
9634	raw := NoMethod(*s)
9635	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9636}
9637
9638// GoogleCloudDialogflowCxV3beta1RunContinuousTestMetadata: Metadata
9639// returned for the Environments.RunContinuousTest long running
9640// operation.
9641type GoogleCloudDialogflowCxV3beta1RunContinuousTestMetadata struct {
9642	// Errors: The test errors.
9643	Errors []*GoogleCloudDialogflowCxV3beta1TestError `json:"errors,omitempty"`
9644
9645	// ForceSendFields is a list of field names (e.g. "Errors") to
9646	// unconditionally include in API requests. By default, fields with
9647	// empty or default values are omitted from API requests. However, any
9648	// non-pointer, non-interface field appearing in ForceSendFields will be
9649	// sent to the server regardless of whether the field is empty or not.
9650	// This may be used to include empty fields in Patch requests.
9651	ForceSendFields []string `json:"-"`
9652
9653	// NullFields is a list of field names (e.g. "Errors") to include in API
9654	// requests with the JSON null value. By default, fields with empty
9655	// values are omitted from API requests. However, any field with an
9656	// empty value appearing in NullFields will be sent to the server as
9657	// null. It is an error if a field in this list has a non-empty value.
9658	// This may be used to include null fields in Patch requests.
9659	NullFields []string `json:"-"`
9660}
9661
9662func (s *GoogleCloudDialogflowCxV3beta1RunContinuousTestMetadata) MarshalJSON() ([]byte, error) {
9663	type NoMethod GoogleCloudDialogflowCxV3beta1RunContinuousTestMetadata
9664	raw := NoMethod(*s)
9665	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9666}
9667
9668// GoogleCloudDialogflowCxV3beta1RunContinuousTestResponse: The response
9669// message for Environments.RunContinuousTest.
9670type GoogleCloudDialogflowCxV3beta1RunContinuousTestResponse struct {
9671	// ContinuousTestResult: The result for a continuous test run.
9672	ContinuousTestResult *GoogleCloudDialogflowCxV3beta1ContinuousTestResult `json:"continuousTestResult,omitempty"`
9673
9674	// ForceSendFields is a list of field names (e.g.
9675	// "ContinuousTestResult") to unconditionally include in API requests.
9676	// By default, fields with empty or default values are omitted from API
9677	// requests. However, any non-pointer, non-interface field appearing in
9678	// ForceSendFields will be sent to the server regardless of whether the
9679	// field is empty or not. This may be used to include empty fields in
9680	// Patch requests.
9681	ForceSendFields []string `json:"-"`
9682
9683	// NullFields is a list of field names (e.g. "ContinuousTestResult") to
9684	// include in API requests with the JSON null value. By default, fields
9685	// with empty values are omitted from API requests. However, any field
9686	// with an empty value appearing in NullFields will be sent to the
9687	// server as null. It is an error if a field in this list has a
9688	// non-empty value. This may be used to include null fields in Patch
9689	// requests.
9690	NullFields []string `json:"-"`
9691}
9692
9693func (s *GoogleCloudDialogflowCxV3beta1RunContinuousTestResponse) MarshalJSON() ([]byte, error) {
9694	type NoMethod GoogleCloudDialogflowCxV3beta1RunContinuousTestResponse
9695	raw := NoMethod(*s)
9696	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9697}
9698
9699// GoogleCloudDialogflowCxV3beta1RunTestCaseMetadata: Metadata returned
9700// for the TestCases.RunTestCase long running operation.
9701type GoogleCloudDialogflowCxV3beta1RunTestCaseMetadata struct {
9702}
9703
9704// GoogleCloudDialogflowCxV3beta1RunTestCaseResponse: The response
9705// message for TestCases.RunTestCase.
9706type GoogleCloudDialogflowCxV3beta1RunTestCaseResponse struct {
9707	// Result: The result.
9708	Result *GoogleCloudDialogflowCxV3beta1TestCaseResult `json:"result,omitempty"`
9709
9710	// ForceSendFields is a list of field names (e.g. "Result") to
9711	// unconditionally include in API requests. By default, fields with
9712	// empty or default values are omitted from API requests. However, any
9713	// non-pointer, non-interface field appearing in ForceSendFields will be
9714	// sent to the server regardless of whether the field is empty or not.
9715	// This may be used to include empty fields in Patch requests.
9716	ForceSendFields []string `json:"-"`
9717
9718	// NullFields is a list of field names (e.g. "Result") to include in API
9719	// requests with the JSON null value. By default, fields with empty
9720	// values are omitted from API requests. However, any field with an
9721	// empty value appearing in NullFields will be sent to the server as
9722	// null. It is an error if a field in this list has a non-empty value.
9723	// This may be used to include null fields in Patch requests.
9724	NullFields []string `json:"-"`
9725}
9726
9727func (s *GoogleCloudDialogflowCxV3beta1RunTestCaseResponse) MarshalJSON() ([]byte, error) {
9728	type NoMethod GoogleCloudDialogflowCxV3beta1RunTestCaseResponse
9729	raw := NoMethod(*s)
9730	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9731}
9732
9733// GoogleCloudDialogflowCxV3beta1SessionInfo: Represents session
9734// information communicated to and from the webhook.
9735type GoogleCloudDialogflowCxV3beta1SessionInfo struct {
9736	// Parameters: Optional for WebhookRequest. Optional for
9737	// WebhookResponse. All parameters collected from forms and intents
9738	// during the session. Parameters can be created, updated, or removed by
9739	// the webhook. To remove a parameter from the session, the webhook
9740	// should explicitly set the parameter value to null in WebhookResponse.
9741	// The map is keyed by parameters' display names.
9742	Parameters googleapi.RawMessage `json:"parameters,omitempty"`
9743
9744	// Session: Always present for WebhookRequest. Ignored for
9745	// WebhookResponse. The unique identifier of the session. This field can
9746	// be used by the webhook to identify a session. Format:
9747	// `projects//locations//agents//sessions/` or
9748	// `projects//locations//agents//environments//sessions/` if environment
9749	// is specified.
9750	Session string `json:"session,omitempty"`
9751
9752	// ForceSendFields is a list of field names (e.g. "Parameters") to
9753	// unconditionally include in API requests. By default, fields with
9754	// empty or default values are omitted from API requests. However, any
9755	// non-pointer, non-interface field appearing in ForceSendFields will be
9756	// sent to the server regardless of whether the field is empty or not.
9757	// This may be used to include empty fields in Patch requests.
9758	ForceSendFields []string `json:"-"`
9759
9760	// NullFields is a list of field names (e.g. "Parameters") to include in
9761	// API requests with the JSON null value. By default, fields with empty
9762	// values are omitted from API requests. However, any field with an
9763	// empty value appearing in NullFields will be sent to the server as
9764	// null. It is an error if a field in this list has a non-empty value.
9765	// This may be used to include null fields in Patch requests.
9766	NullFields []string `json:"-"`
9767}
9768
9769func (s *GoogleCloudDialogflowCxV3beta1SessionInfo) MarshalJSON() ([]byte, error) {
9770	type NoMethod GoogleCloudDialogflowCxV3beta1SessionInfo
9771	raw := NoMethod(*s)
9772	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9773}
9774
9775// GoogleCloudDialogflowCxV3beta1TestCase: Represents a test case.
9776type GoogleCloudDialogflowCxV3beta1TestCase struct {
9777	// CreationTime: Output only. When the test was created.
9778	CreationTime string `json:"creationTime,omitempty"`
9779
9780	// DisplayName: Required. The human-readable name of the test case,
9781	// unique within the agent. Limit of 200 characters.
9782	DisplayName string `json:"displayName,omitempty"`
9783
9784	// LastTestResult: The latest test result.
9785	LastTestResult *GoogleCloudDialogflowCxV3beta1TestCaseResult `json:"lastTestResult,omitempty"`
9786
9787	// Name: The unique identifier of the test case.
9788	// TestCases.CreateTestCase will populate the name automatically.
9789	// Otherwise use format: `projects//locations//agents/ /testCases/`.
9790	Name string `json:"name,omitempty"`
9791
9792	// Notes: Additional freeform notes about the test case. Limit of 400
9793	// characters.
9794	Notes string `json:"notes,omitempty"`
9795
9796	// Tags: Tags are short descriptions that users may apply to test cases
9797	// for organizational and filtering purposes. Each tag should start with
9798	// "#" and has a limit of 30 characters.
9799	Tags []string `json:"tags,omitempty"`
9800
9801	// TestCaseConversationTurns: The conversation turns uttered when the
9802	// test case was created, in chronological order. These include the
9803	// canonical set of agent utterances that should occur when the agent is
9804	// working properly.
9805	TestCaseConversationTurns []*GoogleCloudDialogflowCxV3beta1ConversationTurn `json:"testCaseConversationTurns,omitempty"`
9806
9807	// TestConfig: Config for the test case.
9808	TestConfig *GoogleCloudDialogflowCxV3beta1TestConfig `json:"testConfig,omitempty"`
9809
9810	// ForceSendFields is a list of field names (e.g. "CreationTime") to
9811	// unconditionally include in API requests. By default, fields with
9812	// empty or default values are omitted from API requests. However, any
9813	// non-pointer, non-interface field appearing in ForceSendFields will be
9814	// sent to the server regardless of whether the field is empty or not.
9815	// This may be used to include empty fields in Patch requests.
9816	ForceSendFields []string `json:"-"`
9817
9818	// NullFields is a list of field names (e.g. "CreationTime") to include
9819	// in API requests with the JSON null value. By default, fields with
9820	// empty values are omitted from API requests. However, any field with
9821	// an empty value appearing in NullFields will be sent to the server as
9822	// null. It is an error if a field in this list has a non-empty value.
9823	// This may be used to include null fields in Patch requests.
9824	NullFields []string `json:"-"`
9825}
9826
9827func (s *GoogleCloudDialogflowCxV3beta1TestCase) MarshalJSON() ([]byte, error) {
9828	type NoMethod GoogleCloudDialogflowCxV3beta1TestCase
9829	raw := NoMethod(*s)
9830	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9831}
9832
9833// GoogleCloudDialogflowCxV3beta1TestCaseError: Error info for importing
9834// a test.
9835type GoogleCloudDialogflowCxV3beta1TestCaseError struct {
9836	// Status: The status associated with the test case.
9837	Status *GoogleRpcStatus `json:"status,omitempty"`
9838
9839	// TestCase: The test case.
9840	TestCase *GoogleCloudDialogflowCxV3beta1TestCase `json:"testCase,omitempty"`
9841
9842	// ForceSendFields is a list of field names (e.g. "Status") to
9843	// unconditionally include in API requests. By default, fields with
9844	// empty or default values are omitted from API requests. However, any
9845	// non-pointer, non-interface field appearing in ForceSendFields will be
9846	// sent to the server regardless of whether the field is empty or not.
9847	// This may be used to include empty fields in Patch requests.
9848	ForceSendFields []string `json:"-"`
9849
9850	// NullFields is a list of field names (e.g. "Status") to include in API
9851	// requests with the JSON null value. By default, fields with empty
9852	// values are omitted from API requests. However, any field with an
9853	// empty value appearing in NullFields will be sent to the server as
9854	// null. It is an error if a field in this list has a non-empty value.
9855	// This may be used to include null fields in Patch requests.
9856	NullFields []string `json:"-"`
9857}
9858
9859func (s *GoogleCloudDialogflowCxV3beta1TestCaseError) MarshalJSON() ([]byte, error) {
9860	type NoMethod GoogleCloudDialogflowCxV3beta1TestCaseError
9861	raw := NoMethod(*s)
9862	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9863}
9864
9865// GoogleCloudDialogflowCxV3beta1TestCaseResult: Represents a result
9866// from running a test case in an agent environment.
9867type GoogleCloudDialogflowCxV3beta1TestCaseResult struct {
9868	// ConversationTurns: The conversation turns uttered during the test
9869	// case replay in chronological order.
9870	ConversationTurns []*GoogleCloudDialogflowCxV3beta1ConversationTurn `json:"conversationTurns,omitempty"`
9871
9872	// Environment: Environment where the test was run. If not set, it
9873	// indicates the draft environment.
9874	Environment string `json:"environment,omitempty"`
9875
9876	// Name: The resource name for the test case result. Format:
9877	// `projects//locations//agents//testCases/ /results/`.
9878	Name string `json:"name,omitempty"`
9879
9880	// TestResult: Whether the test case passed in the agent environment.
9881	//
9882	// Possible values:
9883	//   "TEST_RESULT_UNSPECIFIED" - Not specified. Should never be used.
9884	//   "PASSED" - The test passed.
9885	//   "FAILED" - The test did not pass.
9886	TestResult string `json:"testResult,omitempty"`
9887
9888	// TestTime: The time that the test was run.
9889	TestTime string `json:"testTime,omitempty"`
9890
9891	// ForceSendFields is a list of field names (e.g. "ConversationTurns")
9892	// to unconditionally include in API requests. By default, fields with
9893	// empty or default values are omitted from API requests. However, any
9894	// non-pointer, non-interface field appearing in ForceSendFields will be
9895	// sent to the server regardless of whether the field is empty or not.
9896	// This may be used to include empty fields in Patch requests.
9897	ForceSendFields []string `json:"-"`
9898
9899	// NullFields is a list of field names (e.g. "ConversationTurns") to
9900	// include in API requests with the JSON null value. By default, fields
9901	// with empty values are omitted from API requests. However, any field
9902	// with an empty value appearing in NullFields will be sent to the
9903	// server as null. It is an error if a field in this list has a
9904	// non-empty value. This may be used to include null fields in Patch
9905	// requests.
9906	NullFields []string `json:"-"`
9907}
9908
9909func (s *GoogleCloudDialogflowCxV3beta1TestCaseResult) MarshalJSON() ([]byte, error) {
9910	type NoMethod GoogleCloudDialogflowCxV3beta1TestCaseResult
9911	raw := NoMethod(*s)
9912	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9913}
9914
9915// GoogleCloudDialogflowCxV3beta1TestConfig: Represents configurations
9916// for a test case.
9917type GoogleCloudDialogflowCxV3beta1TestConfig struct {
9918	// Flow: Flow name. If not set, default start flow is assumed. Format:
9919	// `projects//locations//agents//flows/`.
9920	Flow string `json:"flow,omitempty"`
9921
9922	// TrackingParameters: Session parameters to be compared when
9923	// calculating differences.
9924	TrackingParameters []string `json:"trackingParameters,omitempty"`
9925
9926	// ForceSendFields is a list of field names (e.g. "Flow") to
9927	// unconditionally include in API requests. By default, fields with
9928	// empty or default values are omitted from API requests. However, any
9929	// non-pointer, non-interface field appearing in ForceSendFields will be
9930	// sent to the server regardless of whether the field is empty or not.
9931	// This may be used to include empty fields in Patch requests.
9932	ForceSendFields []string `json:"-"`
9933
9934	// NullFields is a list of field names (e.g. "Flow") to include in API
9935	// requests with the JSON null value. By default, fields with empty
9936	// values are omitted from API requests. However, any field with an
9937	// empty value appearing in NullFields will be sent to the server as
9938	// null. It is an error if a field in this list has a non-empty value.
9939	// This may be used to include null fields in Patch requests.
9940	NullFields []string `json:"-"`
9941}
9942
9943func (s *GoogleCloudDialogflowCxV3beta1TestConfig) MarshalJSON() ([]byte, error) {
9944	type NoMethod GoogleCloudDialogflowCxV3beta1TestConfig
9945	raw := NoMethod(*s)
9946	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9947}
9948
9949// GoogleCloudDialogflowCxV3beta1TestError: Error info for running a
9950// test.
9951type GoogleCloudDialogflowCxV3beta1TestError struct {
9952	// Status: The status associated with the test.
9953	Status *GoogleRpcStatus `json:"status,omitempty"`
9954
9955	// TestCase: The test case resource name.
9956	TestCase string `json:"testCase,omitempty"`
9957
9958	// TestTime: The timestamp when the test was completed.
9959	TestTime string `json:"testTime,omitempty"`
9960
9961	// ForceSendFields is a list of field names (e.g. "Status") to
9962	// unconditionally include in API requests. By default, fields with
9963	// empty or default values are omitted from API requests. However, any
9964	// non-pointer, non-interface field appearing in ForceSendFields will be
9965	// sent to the server regardless of whether the field is empty or not.
9966	// This may be used to include empty fields in Patch requests.
9967	ForceSendFields []string `json:"-"`
9968
9969	// NullFields is a list of field names (e.g. "Status") to include in API
9970	// requests with the JSON null value. By default, fields with empty
9971	// values are omitted from API requests. However, any field with an
9972	// empty value appearing in NullFields will be sent to the server as
9973	// null. It is an error if a field in this list has a non-empty value.
9974	// This may be used to include null fields in Patch requests.
9975	NullFields []string `json:"-"`
9976}
9977
9978func (s *GoogleCloudDialogflowCxV3beta1TestError) MarshalJSON() ([]byte, error) {
9979	type NoMethod GoogleCloudDialogflowCxV3beta1TestError
9980	raw := NoMethod(*s)
9981	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9982}
9983
9984// GoogleCloudDialogflowCxV3beta1TestRunDifference: The description of
9985// differences between original and replayed agent output.
9986type GoogleCloudDialogflowCxV3beta1TestRunDifference struct {
9987	// Description: A description of the diff, showing the actual output vs
9988	// expected output.
9989	Description string `json:"description,omitempty"`
9990
9991	// Type: The type of diff.
9992	//
9993	// Possible values:
9994	//   "DIFF_TYPE_UNSPECIFIED" - Should never be used.
9995	//   "INTENT" - The intent.
9996	//   "PAGE" - The page.
9997	//   "PARAMETERS" - The parameters.
9998	//   "UTTERANCE" - The message utterance.
9999	Type string `json:"type,omitempty"`
10000
10001	// ForceSendFields is a list of field names (e.g. "Description") to
10002	// unconditionally include in API requests. By default, fields with
10003	// empty or default values are omitted from API requests. However, any
10004	// non-pointer, non-interface field appearing in ForceSendFields will be
10005	// sent to the server regardless of whether the field is empty or not.
10006	// This may be used to include empty fields in Patch requests.
10007	ForceSendFields []string `json:"-"`
10008
10009	// NullFields is a list of field names (e.g. "Description") to include
10010	// in API requests with the JSON null value. By default, fields with
10011	// empty values are omitted from API requests. However, any field with
10012	// an empty value appearing in NullFields will be sent to the server as
10013	// null. It is an error if a field in this list has a non-empty value.
10014	// This may be used to include null fields in Patch requests.
10015	NullFields []string `json:"-"`
10016}
10017
10018func (s *GoogleCloudDialogflowCxV3beta1TestRunDifference) MarshalJSON() ([]byte, error) {
10019	type NoMethod GoogleCloudDialogflowCxV3beta1TestRunDifference
10020	raw := NoMethod(*s)
10021	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10022}
10023
10024// GoogleCloudDialogflowCxV3beta1TextInput: Represents the natural
10025// language text to be processed.
10026type GoogleCloudDialogflowCxV3beta1TextInput struct {
10027	// Text: Required. The UTF-8 encoded natural language text to be
10028	// processed. Text length must not exceed 256 characters.
10029	Text string `json:"text,omitempty"`
10030
10031	// ForceSendFields is a list of field names (e.g. "Text") to
10032	// unconditionally include in API requests. By default, fields with
10033	// empty or default values are omitted from API requests. However, any
10034	// non-pointer, non-interface field appearing in ForceSendFields will be
10035	// sent to the server regardless of whether the field is empty or not.
10036	// This may be used to include empty fields in Patch requests.
10037	ForceSendFields []string `json:"-"`
10038
10039	// NullFields is a list of field names (e.g. "Text") to include in API
10040	// requests with the JSON null value. By default, fields with empty
10041	// values are omitted from API requests. However, any field with an
10042	// empty value appearing in NullFields will be sent to the server as
10043	// null. It is an error if a field in this list has a non-empty value.
10044	// This may be used to include null fields in Patch requests.
10045	NullFields []string `json:"-"`
10046}
10047
10048func (s *GoogleCloudDialogflowCxV3beta1TextInput) MarshalJSON() ([]byte, error) {
10049	type NoMethod GoogleCloudDialogflowCxV3beta1TextInput
10050	raw := NoMethod(*s)
10051	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10052}
10053
10054// GoogleCloudDialogflowCxV3beta1TransitionRoute: A transition route
10055// specifies a intent that can be matched and/or a data condition that
10056// can be evaluated during a session. When a specified transition is
10057// matched, the following actions are taken in order: * If there is a
10058// `trigger_fulfillment` associated with the transition, it will be
10059// called. * If there is a `target_page` associated with the transition,
10060// the session will transition into the specified page. * If there is a
10061// `target_flow` associated with the transition, the session will
10062// transition into the specified flow.
10063type GoogleCloudDialogflowCxV3beta1TransitionRoute struct {
10064	// Condition: The condition to evaluate against form parameters or
10065	// session parameters. See the conditions reference
10066	// (https://cloud.google.com/dialogflow/cx/docs/reference/condition). At
10067	// least one of `intent` or `condition` must be specified. When both
10068	// `intent` and `condition` are specified, the transition can only
10069	// happen when both are fulfilled.
10070	Condition string `json:"condition,omitempty"`
10071
10072	// Intent: The unique identifier of an Intent. Format:
10073	// `projects//locations//agents//intents/`. Indicates that the
10074	// transition can only happen when the given intent is matched. At least
10075	// one of `intent` or `condition` must be specified. When both `intent`
10076	// and `condition` are specified, the transition can only happen when
10077	// both are fulfilled.
10078	Intent string `json:"intent,omitempty"`
10079
10080	// Name: Output only. The unique identifier of this transition route.
10081	Name string `json:"name,omitempty"`
10082
10083	// TargetFlow: The target flow to transition to. Format:
10084	// `projects//locations//agents//flows/`.
10085	TargetFlow string `json:"targetFlow,omitempty"`
10086
10087	// TargetPage: The target page to transition to. Format:
10088	// `projects//locations//agents//flows//pages/`.
10089	TargetPage string `json:"targetPage,omitempty"`
10090
10091	// TriggerFulfillment: The fulfillment to call when the condition is
10092	// satisfied. At least one of `trigger_fulfillment` and `target` must be
10093	// specified. When both are defined, `trigger_fulfillment` is executed
10094	// first.
10095	TriggerFulfillment *GoogleCloudDialogflowCxV3beta1Fulfillment `json:"triggerFulfillment,omitempty"`
10096
10097	// ForceSendFields is a list of field names (e.g. "Condition") to
10098	// unconditionally include in API requests. By default, fields with
10099	// empty or default values are omitted from API requests. However, any
10100	// non-pointer, non-interface field appearing in ForceSendFields will be
10101	// sent to the server regardless of whether the field is empty or not.
10102	// This may be used to include empty fields in Patch requests.
10103	ForceSendFields []string `json:"-"`
10104
10105	// NullFields is a list of field names (e.g. "Condition") to include in
10106	// API requests with the JSON null value. By default, fields with empty
10107	// values are omitted from API requests. However, any field with an
10108	// empty value appearing in NullFields will be sent to the server as
10109	// null. It is an error if a field in this list has a non-empty value.
10110	// This may be used to include null fields in Patch requests.
10111	NullFields []string `json:"-"`
10112}
10113
10114func (s *GoogleCloudDialogflowCxV3beta1TransitionRoute) MarshalJSON() ([]byte, error) {
10115	type NoMethod GoogleCloudDialogflowCxV3beta1TransitionRoute
10116	raw := NoMethod(*s)
10117	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10118}
10119
10120// GoogleCloudDialogflowCxV3beta1UpdateDocumentOperationMetadata:
10121// Metadata for UpdateDocument operation.
10122type GoogleCloudDialogflowCxV3beta1UpdateDocumentOperationMetadata struct {
10123	// GenericMetadata: The generic information of the operation.
10124	GenericMetadata *GoogleCloudDialogflowCxV3beta1GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
10125
10126	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
10127	// unconditionally include in API requests. By default, fields with
10128	// empty or default values are omitted from API requests. However, any
10129	// non-pointer, non-interface field appearing in ForceSendFields will be
10130	// sent to the server regardless of whether the field is empty or not.
10131	// This may be used to include empty fields in Patch requests.
10132	ForceSendFields []string `json:"-"`
10133
10134	// NullFields is a list of field names (e.g. "GenericMetadata") to
10135	// include in API requests with the JSON null value. By default, fields
10136	// with empty values are omitted from API requests. However, any field
10137	// with an empty value appearing in NullFields will be sent to the
10138	// server as null. It is an error if a field in this list has a
10139	// non-empty value. This may be used to include null fields in Patch
10140	// requests.
10141	NullFields []string `json:"-"`
10142}
10143
10144func (s *GoogleCloudDialogflowCxV3beta1UpdateDocumentOperationMetadata) MarshalJSON() ([]byte, error) {
10145	type NoMethod GoogleCloudDialogflowCxV3beta1UpdateDocumentOperationMetadata
10146	raw := NoMethod(*s)
10147	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10148}
10149
10150// GoogleCloudDialogflowCxV3beta1WebhookRequest: The request message for
10151// a webhook call. The request is sent as a JSON object and the field
10152// names will be presented in camel cases.
10153type GoogleCloudDialogflowCxV3beta1WebhookRequest struct {
10154	// DetectIntentResponseId: Always present. The unique identifier of the
10155	// DetectIntentResponse that will be returned to the API caller.
10156	DetectIntentResponseId string `json:"detectIntentResponseId,omitempty"`
10157
10158	// FulfillmentInfo: Always present. Information about the fulfillment
10159	// that triggered this webhook call.
10160	FulfillmentInfo *GoogleCloudDialogflowCxV3beta1WebhookRequestFulfillmentInfo `json:"fulfillmentInfo,omitempty"`
10161
10162	// IntentInfo: Information about the last matched intent.
10163	IntentInfo *GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo `json:"intentInfo,omitempty"`
10164
10165	// LanguageCode: The language code specified in the original request.
10166	LanguageCode string `json:"languageCode,omitempty"`
10167
10168	// Messages: The list of rich message responses to present to the user.
10169	// Webhook can choose to append or replace this list in
10170	// WebhookResponse.fulfillment_response;
10171	Messages []*GoogleCloudDialogflowCxV3beta1ResponseMessage `json:"messages,omitempty"`
10172
10173	// PageInfo: Information about page status.
10174	PageInfo *GoogleCloudDialogflowCxV3beta1PageInfo `json:"pageInfo,omitempty"`
10175
10176	// Payload: Custom data set in QueryParameters.payload.
10177	Payload googleapi.RawMessage `json:"payload,omitempty"`
10178
10179	// SentimentAnalysisResult: The sentiment analysis result of the current
10180	// user request. The field is filled when sentiment analysis is
10181	// configured to be enabled for the request.
10182	SentimentAnalysisResult *GoogleCloudDialogflowCxV3beta1WebhookRequestSentimentAnalysisResult `json:"sentimentAnalysisResult,omitempty"`
10183
10184	// SessionInfo: Information about session status.
10185	SessionInfo *GoogleCloudDialogflowCxV3beta1SessionInfo `json:"sessionInfo,omitempty"`
10186
10187	// Text: If natural language text was provided as input, this field will
10188	// contain a copy of the text.
10189	Text string `json:"text,omitempty"`
10190
10191	// Transcript: If natural language speech audio was provided as input,
10192	// this field will contain the transcript for the audio.
10193	Transcript string `json:"transcript,omitempty"`
10194
10195	// TriggerEvent: If an event was provided as input, this field will
10196	// contain the name of the event.
10197	TriggerEvent string `json:"triggerEvent,omitempty"`
10198
10199	// TriggerIntent: If an intent was provided as input, this field will
10200	// contain a copy of the intent identifier. Format:
10201	// `projects//locations//agents//intents/`.
10202	TriggerIntent string `json:"triggerIntent,omitempty"`
10203
10204	// ForceSendFields is a list of field names (e.g.
10205	// "DetectIntentResponseId") to unconditionally include in API requests.
10206	// By default, fields with empty or default values are omitted from API
10207	// requests. However, any non-pointer, non-interface field appearing in
10208	// ForceSendFields will be sent to the server regardless of whether the
10209	// field is empty or not. This may be used to include empty fields in
10210	// Patch requests.
10211	ForceSendFields []string `json:"-"`
10212
10213	// NullFields is a list of field names (e.g. "DetectIntentResponseId")
10214	// to include in API requests with the JSON null value. By default,
10215	// fields with empty values are omitted from API requests. However, any
10216	// field with an empty value appearing in NullFields will be sent to the
10217	// server as null. It is an error if a field in this list has a
10218	// non-empty value. This may be used to include null fields in Patch
10219	// requests.
10220	NullFields []string `json:"-"`
10221}
10222
10223func (s *GoogleCloudDialogflowCxV3beta1WebhookRequest) MarshalJSON() ([]byte, error) {
10224	type NoMethod GoogleCloudDialogflowCxV3beta1WebhookRequest
10225	raw := NoMethod(*s)
10226	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10227}
10228
10229// GoogleCloudDialogflowCxV3beta1WebhookRequestFulfillmentInfo:
10230// Represents fulfillment information communicated to the webhook.
10231type GoogleCloudDialogflowCxV3beta1WebhookRequestFulfillmentInfo struct {
10232	// Tag: Always present. The tag used to identify which fulfillment is
10233	// being called.
10234	Tag string `json:"tag,omitempty"`
10235
10236	// ForceSendFields is a list of field names (e.g. "Tag") to
10237	// unconditionally include in API requests. By default, fields with
10238	// empty or default values are omitted from API requests. However, any
10239	// non-pointer, non-interface field appearing in ForceSendFields will be
10240	// sent to the server regardless of whether the field is empty or not.
10241	// This may be used to include empty fields in Patch requests.
10242	ForceSendFields []string `json:"-"`
10243
10244	// NullFields is a list of field names (e.g. "Tag") to include in API
10245	// requests with the JSON null value. By default, fields with empty
10246	// values are omitted from API requests. However, any field with an
10247	// empty value appearing in NullFields will be sent to the server as
10248	// null. It is an error if a field in this list has a non-empty value.
10249	// This may be used to include null fields in Patch requests.
10250	NullFields []string `json:"-"`
10251}
10252
10253func (s *GoogleCloudDialogflowCxV3beta1WebhookRequestFulfillmentInfo) MarshalJSON() ([]byte, error) {
10254	type NoMethod GoogleCloudDialogflowCxV3beta1WebhookRequestFulfillmentInfo
10255	raw := NoMethod(*s)
10256	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10257}
10258
10259// GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo: Represents
10260// intent information communicated to the webhook.
10261type GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo struct {
10262	// Confidence: The confidence of the matched intent. Values range from
10263	// 0.0 (completely uncertain) to 1.0 (completely certain).
10264	Confidence float64 `json:"confidence,omitempty"`
10265
10266	// DisplayName: Always present. The display name of the last matched
10267	// intent.
10268	DisplayName string `json:"displayName,omitempty"`
10269
10270	// LastMatchedIntent: Always present. The unique identifier of the last
10271	// matched intent. Format: `projects//locations//agents//intents/`.
10272	LastMatchedIntent string `json:"lastMatchedIntent,omitempty"`
10273
10274	// Parameters: Parameters identified as a result of intent matching.
10275	// This is a map of the name of the identified parameter to the value of
10276	// the parameter identified from the user's utterance. All parameters
10277	// defined in the matched intent that are identified will be surfaced
10278	// here.
10279	Parameters map[string]GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfoIntentParameterValue `json:"parameters,omitempty"`
10280
10281	// ForceSendFields is a list of field names (e.g. "Confidence") to
10282	// unconditionally include in API requests. By default, fields with
10283	// empty or default values are omitted from API requests. However, any
10284	// non-pointer, non-interface field appearing in ForceSendFields will be
10285	// sent to the server regardless of whether the field is empty or not.
10286	// This may be used to include empty fields in Patch requests.
10287	ForceSendFields []string `json:"-"`
10288
10289	// NullFields is a list of field names (e.g. "Confidence") to include in
10290	// API requests with the JSON null value. By default, fields with empty
10291	// values are omitted from API requests. However, any field with an
10292	// empty value appearing in NullFields will be sent to the server as
10293	// null. It is an error if a field in this list has a non-empty value.
10294	// This may be used to include null fields in Patch requests.
10295	NullFields []string `json:"-"`
10296}
10297
10298func (s *GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo) MarshalJSON() ([]byte, error) {
10299	type NoMethod GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo
10300	raw := NoMethod(*s)
10301	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10302}
10303
10304func (s *GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo) UnmarshalJSON(data []byte) error {
10305	type NoMethod GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo
10306	var s1 struct {
10307		Confidence gensupport.JSONFloat64 `json:"confidence"`
10308		*NoMethod
10309	}
10310	s1.NoMethod = (*NoMethod)(s)
10311	if err := json.Unmarshal(data, &s1); err != nil {
10312		return err
10313	}
10314	s.Confidence = float64(s1.Confidence)
10315	return nil
10316}
10317
10318// GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfoIntentParameterV
10319// alue: Represents a value for an intent parameter.
10320type GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfoIntentParameterValue struct {
10321	// OriginalValue: Always present. Original text value extracted from
10322	// user utterance.
10323	OriginalValue string `json:"originalValue,omitempty"`
10324
10325	// ResolvedValue: Always present. Structured value for the parameter
10326	// extracted from user utterance.
10327	ResolvedValue interface{} `json:"resolvedValue,omitempty"`
10328
10329	// ForceSendFields is a list of field names (e.g. "OriginalValue") to
10330	// unconditionally include in API requests. By default, fields with
10331	// empty or default values are omitted from API requests. However, any
10332	// non-pointer, non-interface field appearing in ForceSendFields will be
10333	// sent to the server regardless of whether the field is empty or not.
10334	// This may be used to include empty fields in Patch requests.
10335	ForceSendFields []string `json:"-"`
10336
10337	// NullFields is a list of field names (e.g. "OriginalValue") to include
10338	// in API requests with the JSON null value. By default, fields with
10339	// empty values are omitted from API requests. However, any field with
10340	// an empty value appearing in NullFields will be sent to the server as
10341	// null. It is an error if a field in this list has a non-empty value.
10342	// This may be used to include null fields in Patch requests.
10343	NullFields []string `json:"-"`
10344}
10345
10346func (s *GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfoIntentParameterValue) MarshalJSON() ([]byte, error) {
10347	type NoMethod GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfoIntentParameterValue
10348	raw := NoMethod(*s)
10349	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10350}
10351
10352// GoogleCloudDialogflowCxV3beta1WebhookRequestSentimentAnalysisResult:
10353// Represents the result of sentiment analysis.
10354type GoogleCloudDialogflowCxV3beta1WebhookRequestSentimentAnalysisResult struct {
10355	// Magnitude: A non-negative number in the [0, +inf) range, which
10356	// represents the absolute magnitude of sentiment, regardless of score
10357	// (positive or negative).
10358	Magnitude float64 `json:"magnitude,omitempty"`
10359
10360	// Score: Sentiment score between -1.0 (negative sentiment) and 1.0
10361	// (positive sentiment).
10362	Score float64 `json:"score,omitempty"`
10363
10364	// ForceSendFields is a list of field names (e.g. "Magnitude") to
10365	// unconditionally include in API requests. By default, fields with
10366	// empty or default values are omitted from API requests. However, any
10367	// non-pointer, non-interface field appearing in ForceSendFields will be
10368	// sent to the server regardless of whether the field is empty or not.
10369	// This may be used to include empty fields in Patch requests.
10370	ForceSendFields []string `json:"-"`
10371
10372	// NullFields is a list of field names (e.g. "Magnitude") to include in
10373	// API requests with the JSON null value. By default, fields with empty
10374	// values are omitted from API requests. However, any field with an
10375	// empty value appearing in NullFields will be sent to the server as
10376	// null. It is an error if a field in this list has a non-empty value.
10377	// This may be used to include null fields in Patch requests.
10378	NullFields []string `json:"-"`
10379}
10380
10381func (s *GoogleCloudDialogflowCxV3beta1WebhookRequestSentimentAnalysisResult) MarshalJSON() ([]byte, error) {
10382	type NoMethod GoogleCloudDialogflowCxV3beta1WebhookRequestSentimentAnalysisResult
10383	raw := NoMethod(*s)
10384	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10385}
10386
10387func (s *GoogleCloudDialogflowCxV3beta1WebhookRequestSentimentAnalysisResult) UnmarshalJSON(data []byte) error {
10388	type NoMethod GoogleCloudDialogflowCxV3beta1WebhookRequestSentimentAnalysisResult
10389	var s1 struct {
10390		Magnitude gensupport.JSONFloat64 `json:"magnitude"`
10391		Score     gensupport.JSONFloat64 `json:"score"`
10392		*NoMethod
10393	}
10394	s1.NoMethod = (*NoMethod)(s)
10395	if err := json.Unmarshal(data, &s1); err != nil {
10396		return err
10397	}
10398	s.Magnitude = float64(s1.Magnitude)
10399	s.Score = float64(s1.Score)
10400	return nil
10401}
10402
10403// GoogleCloudDialogflowCxV3beta1WebhookResponse: The response message
10404// for a webhook call.
10405type GoogleCloudDialogflowCxV3beta1WebhookResponse struct {
10406	// FulfillmentResponse: The fulfillment response to send to the user.
10407	// This field can be omitted by the webhook if it does not intend to
10408	// send any response to the user.
10409	FulfillmentResponse *GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse `json:"fulfillmentResponse,omitempty"`
10410
10411	// PageInfo: Information about page status. This field can be omitted by
10412	// the webhook if it does not intend to modify page status.
10413	PageInfo *GoogleCloudDialogflowCxV3beta1PageInfo `json:"pageInfo,omitempty"`
10414
10415	// Payload: Value to append directly to QueryResult.webhook_payloads.
10416	Payload googleapi.RawMessage `json:"payload,omitempty"`
10417
10418	// SessionInfo: Information about session status. This field can be
10419	// omitted by the webhook if it does not intend to modify session
10420	// status.
10421	SessionInfo *GoogleCloudDialogflowCxV3beta1SessionInfo `json:"sessionInfo,omitempty"`
10422
10423	// TargetFlow: The target flow to transition to. Format:
10424	// `projects//locations//agents//flows/`.
10425	TargetFlow string `json:"targetFlow,omitempty"`
10426
10427	// TargetPage: The target page to transition to. Format:
10428	// `projects//locations//agents//flows//pages/`.
10429	TargetPage string `json:"targetPage,omitempty"`
10430
10431	// ForceSendFields is a list of field names (e.g. "FulfillmentResponse")
10432	// to unconditionally include in API requests. By default, fields with
10433	// empty or default values are omitted from API requests. However, any
10434	// non-pointer, non-interface field appearing in ForceSendFields will be
10435	// sent to the server regardless of whether the field is empty or not.
10436	// This may be used to include empty fields in Patch requests.
10437	ForceSendFields []string `json:"-"`
10438
10439	// NullFields is a list of field names (e.g. "FulfillmentResponse") to
10440	// include in API requests with the JSON null value. By default, fields
10441	// with empty values are omitted from API requests. However, any field
10442	// with an empty value appearing in NullFields will be sent to the
10443	// server as null. It is an error if a field in this list has a
10444	// non-empty value. This may be used to include null fields in Patch
10445	// requests.
10446	NullFields []string `json:"-"`
10447}
10448
10449func (s *GoogleCloudDialogflowCxV3beta1WebhookResponse) MarshalJSON() ([]byte, error) {
10450	type NoMethod GoogleCloudDialogflowCxV3beta1WebhookResponse
10451	raw := NoMethod(*s)
10452	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10453}
10454
10455// GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse:
10456// Represents a fulfillment response to the user.
10457type GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse struct {
10458	// MergeBehavior: Merge behavior for `messages`.
10459	//
10460	// Possible values:
10461	//   "MERGE_BEHAVIOR_UNSPECIFIED" - Not specified. `APPEND` will be
10462	// used.
10463	//   "APPEND" - `messages` will be appended to the list of messages
10464	// waiting to be sent to the user.
10465	//   "REPLACE" - `messages` will replace the list of messages waiting to
10466	// be sent to the user.
10467	MergeBehavior string `json:"mergeBehavior,omitempty"`
10468
10469	// Messages: The list of rich message responses to present to the user.
10470	Messages []*GoogleCloudDialogflowCxV3beta1ResponseMessage `json:"messages,omitempty"`
10471
10472	// ForceSendFields is a list of field names (e.g. "MergeBehavior") to
10473	// unconditionally include in API requests. By default, fields with
10474	// empty or default values are omitted from API requests. However, any
10475	// non-pointer, non-interface field appearing in ForceSendFields will be
10476	// sent to the server regardless of whether the field is empty or not.
10477	// This may be used to include empty fields in Patch requests.
10478	ForceSendFields []string `json:"-"`
10479
10480	// NullFields is a list of field names (e.g. "MergeBehavior") to include
10481	// in API requests with the JSON null value. By default, fields with
10482	// empty values are omitted from API requests. However, any field with
10483	// an empty value appearing in NullFields will be sent to the server as
10484	// null. It is an error if a field in this list has a non-empty value.
10485	// This may be used to include null fields in Patch requests.
10486	NullFields []string `json:"-"`
10487}
10488
10489func (s *GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse) MarshalJSON() ([]byte, error) {
10490	type NoMethod GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse
10491	raw := NoMethod(*s)
10492	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10493}
10494
10495// GoogleCloudDialogflowV2AnnotatedMessagePart: Represents a part of a
10496// message possibly annotated with an entity. The part can be an entity
10497// or purely a part of the message between two entities or message
10498// start/end.
10499type GoogleCloudDialogflowV2AnnotatedMessagePart struct {
10500	// EntityType: The Dialogflow system entity type
10501	// (https://cloud.google.com/dialogflow/docs/reference/system-entities)
10502	// of this message part. If this is empty, Dialogflow could not annotate
10503	// the phrase part with a system entity.
10504	EntityType string `json:"entityType,omitempty"`
10505
10506	// FormattedValue: The Dialogflow system entity formatted value
10507	// (https://cloud.google.com/dialogflow/docs/reference/system-entities)
10508	// of this message part. For example for a system entity of type
10509	// `@sys.unit-currency`, this may contain: { "amount": 5, "currency":
10510	// "USD" }
10511	FormattedValue interface{} `json:"formattedValue,omitempty"`
10512
10513	// Text: A part of a message possibly annotated with an entity.
10514	Text string `json:"text,omitempty"`
10515
10516	// ForceSendFields is a list of field names (e.g. "EntityType") to
10517	// unconditionally include in API requests. By default, fields with
10518	// empty or default values are omitted from API requests. However, any
10519	// non-pointer, non-interface field appearing in ForceSendFields will be
10520	// sent to the server regardless of whether the field is empty or not.
10521	// This may be used to include empty fields in Patch requests.
10522	ForceSendFields []string `json:"-"`
10523
10524	// NullFields is a list of field names (e.g. "EntityType") to include in
10525	// API requests with the JSON null value. By default, fields with empty
10526	// values are omitted from API requests. However, any field with an
10527	// empty value appearing in NullFields will be sent to the server as
10528	// null. It is an error if a field in this list has a non-empty value.
10529	// This may be used to include null fields in Patch requests.
10530	NullFields []string `json:"-"`
10531}
10532
10533func (s *GoogleCloudDialogflowV2AnnotatedMessagePart) MarshalJSON() ([]byte, error) {
10534	type NoMethod GoogleCloudDialogflowV2AnnotatedMessagePart
10535	raw := NoMethod(*s)
10536	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10537}
10538
10539// GoogleCloudDialogflowV2ArticleAnswer: Represents article answer.
10540type GoogleCloudDialogflowV2ArticleAnswer struct {
10541	// AnswerRecord: The name of answer record, in the format of
10542	// "projects//locations//answerRecords/"
10543	AnswerRecord string `json:"answerRecord,omitempty"`
10544
10545	// Confidence: Article match confidence. The system's confidence score
10546	// that this article is a good match for this conversation, as a value
10547	// from 0.0 (completely uncertain) to 1.0 (completely certain).
10548	Confidence float64 `json:"confidence,omitempty"`
10549
10550	// Metadata: A map that contains metadata about the answer and the
10551	// document from which it originates.
10552	Metadata map[string]string `json:"metadata,omitempty"`
10553
10554	// Snippets: Article snippets.
10555	Snippets []string `json:"snippets,omitempty"`
10556
10557	// Title: The article title.
10558	Title string `json:"title,omitempty"`
10559
10560	// Uri: The article URI.
10561	Uri string `json:"uri,omitempty"`
10562
10563	// ForceSendFields is a list of field names (e.g. "AnswerRecord") to
10564	// unconditionally include in API requests. By default, fields with
10565	// empty or default values are omitted from API requests. However, any
10566	// non-pointer, non-interface field appearing in ForceSendFields will be
10567	// sent to the server regardless of whether the field is empty or not.
10568	// This may be used to include empty fields in Patch requests.
10569	ForceSendFields []string `json:"-"`
10570
10571	// NullFields is a list of field names (e.g. "AnswerRecord") to include
10572	// in API requests with the JSON null value. By default, fields with
10573	// empty values are omitted from API requests. However, any field with
10574	// an empty value appearing in NullFields will be sent to the server as
10575	// null. It is an error if a field in this list has a non-empty value.
10576	// This may be used to include null fields in Patch requests.
10577	NullFields []string `json:"-"`
10578}
10579
10580func (s *GoogleCloudDialogflowV2ArticleAnswer) MarshalJSON() ([]byte, error) {
10581	type NoMethod GoogleCloudDialogflowV2ArticleAnswer
10582	raw := NoMethod(*s)
10583	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10584}
10585
10586func (s *GoogleCloudDialogflowV2ArticleAnswer) UnmarshalJSON(data []byte) error {
10587	type NoMethod GoogleCloudDialogflowV2ArticleAnswer
10588	var s1 struct {
10589		Confidence gensupport.JSONFloat64 `json:"confidence"`
10590		*NoMethod
10591	}
10592	s1.NoMethod = (*NoMethod)(s)
10593	if err := json.Unmarshal(data, &s1); err != nil {
10594		return err
10595	}
10596	s.Confidence = float64(s1.Confidence)
10597	return nil
10598}
10599
10600// GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse: The response
10601// message for EntityTypes.BatchUpdateEntityTypes.
10602type GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse struct {
10603	// EntityTypes: The collection of updated or created entity types.
10604	EntityTypes []*GoogleCloudDialogflowV2EntityType `json:"entityTypes,omitempty"`
10605
10606	// ForceSendFields is a list of field names (e.g. "EntityTypes") to
10607	// unconditionally include in API requests. By default, fields with
10608	// empty or default values are omitted from API requests. However, any
10609	// non-pointer, non-interface field appearing in ForceSendFields will be
10610	// sent to the server regardless of whether the field is empty or not.
10611	// This may be used to include empty fields in Patch requests.
10612	ForceSendFields []string `json:"-"`
10613
10614	// NullFields is a list of field names (e.g. "EntityTypes") to include
10615	// in API requests with the JSON null value. By default, fields with
10616	// empty values are omitted from API requests. However, any field with
10617	// an empty value appearing in NullFields will be sent to the server as
10618	// null. It is an error if a field in this list has a non-empty value.
10619	// This may be used to include null fields in Patch requests.
10620	NullFields []string `json:"-"`
10621}
10622
10623func (s *GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse) MarshalJSON() ([]byte, error) {
10624	type NoMethod GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse
10625	raw := NoMethod(*s)
10626	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10627}
10628
10629// GoogleCloudDialogflowV2BatchUpdateIntentsResponse: The response
10630// message for Intents.BatchUpdateIntents.
10631type GoogleCloudDialogflowV2BatchUpdateIntentsResponse struct {
10632	// Intents: The collection of updated or created intents.
10633	Intents []*GoogleCloudDialogflowV2Intent `json:"intents,omitempty"`
10634
10635	// ForceSendFields is a list of field names (e.g. "Intents") to
10636	// unconditionally include in API requests. By default, fields with
10637	// empty or default values are omitted from API requests. However, any
10638	// non-pointer, non-interface field appearing in ForceSendFields will be
10639	// sent to the server regardless of whether the field is empty or not.
10640	// This may be used to include empty fields in Patch requests.
10641	ForceSendFields []string `json:"-"`
10642
10643	// NullFields is a list of field names (e.g. "Intents") to include in
10644	// API requests with the JSON null value. By default, fields with empty
10645	// values are omitted from API requests. However, any field with an
10646	// empty value appearing in NullFields will be sent to the server as
10647	// null. It is an error if a field in this list has a non-empty value.
10648	// This may be used to include null fields in Patch requests.
10649	NullFields []string `json:"-"`
10650}
10651
10652func (s *GoogleCloudDialogflowV2BatchUpdateIntentsResponse) MarshalJSON() ([]byte, error) {
10653	type NoMethod GoogleCloudDialogflowV2BatchUpdateIntentsResponse
10654	raw := NoMethod(*s)
10655	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10656}
10657
10658// GoogleCloudDialogflowV2Context: Dialogflow contexts are similar to
10659// natural language context. If a person says to you "they are orange",
10660// you need context in order to understand what "they" is referring to.
10661// Similarly, for Dialogflow to handle an end-user expression like that,
10662// it needs to be provided with context in order to correctly match an
10663// intent. Using contexts, you can control the flow of a conversation.
10664// You can configure contexts for an intent by setting input and output
10665// contexts, which are identified by string names. When an intent is
10666// matched, any configured output contexts for that intent become
10667// active. While any contexts are active, Dialogflow is more likely to
10668// match intents that are configured with input contexts that correspond
10669// to the currently active contexts. For more information about context,
10670// see the Contexts guide
10671// (https://cloud.google.com/dialogflow/docs/contexts-overview).
10672type GoogleCloudDialogflowV2Context struct {
10673	// LifespanCount: Optional. The number of conversational query requests
10674	// after which the context expires. The default is `0`. If set to `0`,
10675	// the context expires immediately. Contexts expire automatically after
10676	// 20 minutes if there are no matching queries.
10677	LifespanCount int64 `json:"lifespanCount,omitempty"`
10678
10679	// Name: Required. The unique identifier of the context. Format:
10680	// `projects//agent/sessions//contexts/`, or
10681	// `projects//agent/environments//users//sessions//contexts/`. The
10682	// `Context ID` is always converted to lowercase, may only contain
10683	// characters in a-zA-Z0-9_-% and may be at most 250 bytes long. If
10684	// `Environment ID` is not specified, we assume default 'draft'
10685	// environment. If `User ID` is not specified, we assume default '-'
10686	// user. The following context names are reserved for internal use by
10687	// Dialogflow. You should not use these contexts or create contexts with
10688	// these names: * `__system_counters__` * `*_id_dialog_context` *
10689	// `*_dialog_params_size`
10690	Name string `json:"name,omitempty"`
10691
10692	// Parameters: Optional. The collection of parameters associated with
10693	// this context. Depending on your protocol or client library language,
10694	// this is a map, associative array, symbol table, dictionary, or JSON
10695	// object composed of a collection of (MapKey, MapValue) pairs: - MapKey
10696	// type: string - MapKey value: parameter name - MapValue type: - If
10697	// parameter's entity type is a composite entity: map - Else: depending
10698	// on parameter value type, could be one of string, number, boolean,
10699	// null, list or map - MapValue value: - If parameter's entity type is a
10700	// composite entity: map from composite entity property names to
10701	// property values - Else: parameter value
10702	Parameters googleapi.RawMessage `json:"parameters,omitempty"`
10703
10704	// ForceSendFields is a list of field names (e.g. "LifespanCount") to
10705	// unconditionally include in API requests. By default, fields with
10706	// empty or default values are omitted from API requests. However, any
10707	// non-pointer, non-interface field appearing in ForceSendFields will be
10708	// sent to the server regardless of whether the field is empty or not.
10709	// This may be used to include empty fields in Patch requests.
10710	ForceSendFields []string `json:"-"`
10711
10712	// NullFields is a list of field names (e.g. "LifespanCount") to include
10713	// in API requests with the JSON null value. By default, fields with
10714	// empty values are omitted from API requests. However, any field with
10715	// an empty value appearing in NullFields will be sent to the server as
10716	// null. It is an error if a field in this list has a non-empty value.
10717	// This may be used to include null fields in Patch requests.
10718	NullFields []string `json:"-"`
10719}
10720
10721func (s *GoogleCloudDialogflowV2Context) MarshalJSON() ([]byte, error) {
10722	type NoMethod GoogleCloudDialogflowV2Context
10723	raw := NoMethod(*s)
10724	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10725}
10726
10727// GoogleCloudDialogflowV2ConversationEvent: Represents a notification
10728// sent to Pub/Sub subscribers for conversation lifecycle events.
10729type GoogleCloudDialogflowV2ConversationEvent struct {
10730	// Conversation: The unique identifier of the conversation this
10731	// notification refers to. Format: `projects//conversations/`.
10732	Conversation string `json:"conversation,omitempty"`
10733
10734	// ErrorStatus: More detailed information about an error. Only set for
10735	// type UNRECOVERABLE_ERROR_IN_PHONE_CALL.
10736	ErrorStatus *GoogleRpcStatus `json:"errorStatus,omitempty"`
10737
10738	// NewMessagePayload: Payload of NEW_MESSAGE event.
10739	NewMessagePayload *GoogleCloudDialogflowV2Message `json:"newMessagePayload,omitempty"`
10740
10741	// Type: The type of the event that this notification refers to.
10742	//
10743	// Possible values:
10744	//   "TYPE_UNSPECIFIED" - Type not set.
10745	//   "CONVERSATION_STARTED" - A new conversation has been opened. This
10746	// is fired when a telephone call is answered, or a conversation is
10747	// created via the API.
10748	//   "CONVERSATION_FINISHED" - An existing conversation has closed. This
10749	// is fired when a telephone call is terminated, or a conversation is
10750	// closed via the API.
10751	//   "HUMAN_INTERVENTION_NEEDED" - An existing conversation has received
10752	// notification from Dialogflow that human intervention is required.
10753	//   "NEW_MESSAGE" - An existing conversation has received a new
10754	// message, either from API or telephony. It is configured in
10755	// ConversationProfile.new_message_event_notification_config
10756	//   "UNRECOVERABLE_ERROR" - Unrecoverable error during a telephone
10757	// call. In general non-recoverable errors only occur if something was
10758	// misconfigured in the ConversationProfile corresponding to the call.
10759	// After a non-recoverable error, Dialogflow may stop responding. We
10760	// don't fire this event: * in an API call because we can directly
10761	// return the error, or, * when we can recover from an error.
10762	Type string `json:"type,omitempty"`
10763
10764	// ForceSendFields is a list of field names (e.g. "Conversation") to
10765	// unconditionally include in API requests. By default, fields with
10766	// empty or default values are omitted from API requests. However, any
10767	// non-pointer, non-interface field appearing in ForceSendFields will be
10768	// sent to the server regardless of whether the field is empty or not.
10769	// This may be used to include empty fields in Patch requests.
10770	ForceSendFields []string `json:"-"`
10771
10772	// NullFields is a list of field names (e.g. "Conversation") to include
10773	// in API requests with the JSON null value. By default, fields with
10774	// empty values are omitted from API requests. However, any field with
10775	// an empty value appearing in NullFields will be sent to the server as
10776	// null. It is an error if a field in this list has a non-empty value.
10777	// This may be used to include null fields in Patch requests.
10778	NullFields []string `json:"-"`
10779}
10780
10781func (s *GoogleCloudDialogflowV2ConversationEvent) MarshalJSON() ([]byte, error) {
10782	type NoMethod GoogleCloudDialogflowV2ConversationEvent
10783	raw := NoMethod(*s)
10784	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10785}
10786
10787// GoogleCloudDialogflowV2EntityType: Each intent parameter has a type,
10788// called the entity type, which dictates exactly how data from an
10789// end-user expression is extracted. Dialogflow provides predefined
10790// system entities that can match many common types of data. For
10791// example, there are system entities for matching dates, times, colors,
10792// email addresses, and so on. You can also create your own custom
10793// entities for matching custom data. For example, you could define a
10794// vegetable entity that can match the types of vegetables available for
10795// purchase with a grocery store agent. For more information, see the
10796// Entity guide
10797// (https://cloud.google.com/dialogflow/docs/entities-overview).
10798type GoogleCloudDialogflowV2EntityType struct {
10799	// AutoExpansionMode: Optional. Indicates whether the entity type can be
10800	// automatically expanded.
10801	//
10802	// Possible values:
10803	//   "AUTO_EXPANSION_MODE_UNSPECIFIED" - Auto expansion disabled for the
10804	// entity.
10805	//   "AUTO_EXPANSION_MODE_DEFAULT" - Allows an agent to recognize values
10806	// that have not been explicitly listed in the entity.
10807	AutoExpansionMode string `json:"autoExpansionMode,omitempty"`
10808
10809	// DisplayName: Required. The name of the entity type.
10810	DisplayName string `json:"displayName,omitempty"`
10811
10812	// EnableFuzzyExtraction: Optional. Enables fuzzy entity extraction
10813	// during classification.
10814	EnableFuzzyExtraction bool `json:"enableFuzzyExtraction,omitempty"`
10815
10816	// Entities: Optional. The collection of entity entries associated with
10817	// the entity type.
10818	Entities []*GoogleCloudDialogflowV2EntityTypeEntity `json:"entities,omitempty"`
10819
10820	// Kind: Required. Indicates the kind of entity type.
10821	//
10822	// Possible values:
10823	//   "KIND_UNSPECIFIED" - Not specified. This value should be never
10824	// used.
10825	//   "KIND_MAP" - Map entity types allow mapping of a group of synonyms
10826	// to a reference value.
10827	//   "KIND_LIST" - List entity types contain a set of entries that do
10828	// not map to reference values. However, list entity types can contain
10829	// references to other entity types (with or without aliases).
10830	//   "KIND_REGEXP" - Regexp entity types allow to specify regular
10831	// expressions in entries values.
10832	Kind string `json:"kind,omitempty"`
10833
10834	// Name: The unique identifier of the entity type. Required for
10835	// EntityTypes.UpdateEntityType and EntityTypes.BatchUpdateEntityTypes
10836	// methods. Format: `projects//agent/entityTypes/`.
10837	Name string `json:"name,omitempty"`
10838
10839	// ForceSendFields is a list of field names (e.g. "AutoExpansionMode")
10840	// to unconditionally include in API requests. By default, fields with
10841	// empty or default values are omitted from API requests. However, any
10842	// non-pointer, non-interface field appearing in ForceSendFields will be
10843	// sent to the server regardless of whether the field is empty or not.
10844	// This may be used to include empty fields in Patch requests.
10845	ForceSendFields []string `json:"-"`
10846
10847	// NullFields is a list of field names (e.g. "AutoExpansionMode") to
10848	// include in API requests with the JSON null value. By default, fields
10849	// with empty values are omitted from API requests. However, any field
10850	// with an empty value appearing in NullFields will be sent to the
10851	// server as null. It is an error if a field in this list has a
10852	// non-empty value. This may be used to include null fields in Patch
10853	// requests.
10854	NullFields []string `json:"-"`
10855}
10856
10857func (s *GoogleCloudDialogflowV2EntityType) MarshalJSON() ([]byte, error) {
10858	type NoMethod GoogleCloudDialogflowV2EntityType
10859	raw := NoMethod(*s)
10860	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10861}
10862
10863// GoogleCloudDialogflowV2EntityTypeEntity: An **entity entry** for an
10864// associated entity type.
10865type GoogleCloudDialogflowV2EntityTypeEntity struct {
10866	// Synonyms: Required. A collection of value synonyms. For example, if
10867	// the entity type is *vegetable*, and `value` is *scallions*, a synonym
10868	// could be *green onions*. For `KIND_LIST` entity types: * This
10869	// collection must contain exactly one synonym equal to `value`.
10870	Synonyms []string `json:"synonyms,omitempty"`
10871
10872	// Value: Required. The primary value associated with this entity entry.
10873	// For example, if the entity type is *vegetable*, the value could be
10874	// *scallions*. For `KIND_MAP` entity types: * A reference value to be
10875	// used in place of synonyms. For `KIND_LIST` entity types: * A string
10876	// that can contain references to other entity types (with or without
10877	// aliases).
10878	Value string `json:"value,omitempty"`
10879
10880	// ForceSendFields is a list of field names (e.g. "Synonyms") to
10881	// unconditionally include in API requests. By default, fields with
10882	// empty or default values are omitted from API requests. However, any
10883	// non-pointer, non-interface field appearing in ForceSendFields will be
10884	// sent to the server regardless of whether the field is empty or not.
10885	// This may be used to include empty fields in Patch requests.
10886	ForceSendFields []string `json:"-"`
10887
10888	// NullFields is a list of field names (e.g. "Synonyms") to include in
10889	// API requests with the JSON null value. By default, fields with empty
10890	// values are omitted from API requests. However, any field with an
10891	// empty value appearing in NullFields will be sent to the server as
10892	// null. It is an error if a field in this list has a non-empty value.
10893	// This may be used to include null fields in Patch requests.
10894	NullFields []string `json:"-"`
10895}
10896
10897func (s *GoogleCloudDialogflowV2EntityTypeEntity) MarshalJSON() ([]byte, error) {
10898	type NoMethod GoogleCloudDialogflowV2EntityTypeEntity
10899	raw := NoMethod(*s)
10900	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10901}
10902
10903// GoogleCloudDialogflowV2EventInput: Events allow for matching intents
10904// by event name instead of the natural language input. For instance,
10905// input `` can trigger a personalized welcome response. The parameter
10906// `name` may be used by the agent in the response: "Hello
10907// #welcome_event.name! What can I do for you today?".
10908type GoogleCloudDialogflowV2EventInput struct {
10909	// LanguageCode: Required. The language of this query. See Language
10910	// Support (https://cloud.google.com/dialogflow/docs/reference/language)
10911	// for a list of the currently supported language codes. Note that
10912	// queries in the same session do not necessarily need to specify the
10913	// same language.
10914	LanguageCode string `json:"languageCode,omitempty"`
10915
10916	// Name: Required. The unique identifier of the event.
10917	Name string `json:"name,omitempty"`
10918
10919	// Parameters: The collection of parameters associated with the event.
10920	// Depending on your protocol or client library language, this is a map,
10921	// associative array, symbol table, dictionary, or JSON object composed
10922	// of a collection of (MapKey, MapValue) pairs: - MapKey type: string -
10923	// MapKey value: parameter name - MapValue type: - If parameter's entity
10924	// type is a composite entity: map - Else: depending on parameter value
10925	// type, could be one of string, number, boolean, null, list or map -
10926	// MapValue value: - If parameter's entity type is a composite entity:
10927	// map from composite entity property names to property values - Else:
10928	// parameter value
10929	Parameters googleapi.RawMessage `json:"parameters,omitempty"`
10930
10931	// ForceSendFields is a list of field names (e.g. "LanguageCode") to
10932	// unconditionally include in API requests. By default, fields with
10933	// empty or default values are omitted from API requests. However, any
10934	// non-pointer, non-interface field appearing in ForceSendFields will be
10935	// sent to the server regardless of whether the field is empty or not.
10936	// This may be used to include empty fields in Patch requests.
10937	ForceSendFields []string `json:"-"`
10938
10939	// NullFields is a list of field names (e.g. "LanguageCode") to include
10940	// in API requests with the JSON null value. By default, fields with
10941	// empty values are omitted from API requests. However, any field with
10942	// an empty value appearing in NullFields will be sent to the server as
10943	// null. It is an error if a field in this list has a non-empty value.
10944	// This may be used to include null fields in Patch requests.
10945	NullFields []string `json:"-"`
10946}
10947
10948func (s *GoogleCloudDialogflowV2EventInput) MarshalJSON() ([]byte, error) {
10949	type NoMethod GoogleCloudDialogflowV2EventInput
10950	raw := NoMethod(*s)
10951	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10952}
10953
10954// GoogleCloudDialogflowV2ExportAgentResponse: The response message for
10955// Agents.ExportAgent.
10956type GoogleCloudDialogflowV2ExportAgentResponse struct {
10957	// AgentContent: Zip compressed raw byte content for agent.
10958	AgentContent string `json:"agentContent,omitempty"`
10959
10960	// AgentUri: The URI to a file containing the exported agent. This field
10961	// is populated only if `agent_uri` is specified in
10962	// `ExportAgentRequest`.
10963	AgentUri string `json:"agentUri,omitempty"`
10964
10965	// ForceSendFields is a list of field names (e.g. "AgentContent") to
10966	// unconditionally include in API requests. By default, fields with
10967	// empty or default values are omitted from API requests. However, any
10968	// non-pointer, non-interface field appearing in ForceSendFields will be
10969	// sent to the server regardless of whether the field is empty or not.
10970	// This may be used to include empty fields in Patch requests.
10971	ForceSendFields []string `json:"-"`
10972
10973	// NullFields is a list of field names (e.g. "AgentContent") to include
10974	// in API requests with the JSON null value. By default, fields with
10975	// empty values are omitted from API requests. However, any field with
10976	// an empty value appearing in NullFields will be sent to the server as
10977	// null. It is an error if a field in this list has a non-empty value.
10978	// This may be used to include null fields in Patch requests.
10979	NullFields []string `json:"-"`
10980}
10981
10982func (s *GoogleCloudDialogflowV2ExportAgentResponse) MarshalJSON() ([]byte, error) {
10983	type NoMethod GoogleCloudDialogflowV2ExportAgentResponse
10984	raw := NoMethod(*s)
10985	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10986}
10987
10988// GoogleCloudDialogflowV2FaqAnswer: Represents answer from "frequently
10989// asked questions".
10990type GoogleCloudDialogflowV2FaqAnswer struct {
10991	// Answer: The piece of text from the `source` knowledge base document.
10992	Answer string `json:"answer,omitempty"`
10993
10994	// AnswerRecord: The name of answer record, in the format of
10995	// "projects//locations//answerRecords/"
10996	AnswerRecord string `json:"answerRecord,omitempty"`
10997
10998	// Confidence: The system's confidence score that this Knowledge answer
10999	// is a good match for this conversational query, range from 0.0
11000	// (completely uncertain) to 1.0 (completely certain).
11001	Confidence float64 `json:"confidence,omitempty"`
11002
11003	// Metadata: A map that contains metadata about the answer and the
11004	// document from which it originates.
11005	Metadata map[string]string `json:"metadata,omitempty"`
11006
11007	// Question: The corresponding FAQ question.
11008	Question string `json:"question,omitempty"`
11009
11010	// Source: Indicates which Knowledge Document this answer was extracted
11011	// from. Format:
11012	// `projects//locations//agent/knowledgeBases//documents/`.
11013	Source string `json:"source,omitempty"`
11014
11015	// ForceSendFields is a list of field names (e.g. "Answer") to
11016	// unconditionally include in API requests. By default, fields with
11017	// empty or default values are omitted from API requests. However, any
11018	// non-pointer, non-interface field appearing in ForceSendFields will be
11019	// sent to the server regardless of whether the field is empty or not.
11020	// This may be used to include empty fields in Patch requests.
11021	ForceSendFields []string `json:"-"`
11022
11023	// NullFields is a list of field names (e.g. "Answer") to include in API
11024	// requests with the JSON null value. By default, fields with empty
11025	// values are omitted from API requests. However, any field with an
11026	// empty value appearing in NullFields will be sent to the server as
11027	// null. It is an error if a field in this list has a non-empty value.
11028	// This may be used to include null fields in Patch requests.
11029	NullFields []string `json:"-"`
11030}
11031
11032func (s *GoogleCloudDialogflowV2FaqAnswer) MarshalJSON() ([]byte, error) {
11033	type NoMethod GoogleCloudDialogflowV2FaqAnswer
11034	raw := NoMethod(*s)
11035	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11036}
11037
11038func (s *GoogleCloudDialogflowV2FaqAnswer) UnmarshalJSON(data []byte) error {
11039	type NoMethod GoogleCloudDialogflowV2FaqAnswer
11040	var s1 struct {
11041		Confidence gensupport.JSONFloat64 `json:"confidence"`
11042		*NoMethod
11043	}
11044	s1.NoMethod = (*NoMethod)(s)
11045	if err := json.Unmarshal(data, &s1); err != nil {
11046		return err
11047	}
11048	s.Confidence = float64(s1.Confidence)
11049	return nil
11050}
11051
11052// GoogleCloudDialogflowV2HumanAgentAssistantEvent: Represents a
11053// notification sent to Cloud Pub/Sub subscribers for human agent
11054// assistant events in a specific conversation.
11055type GoogleCloudDialogflowV2HumanAgentAssistantEvent struct {
11056	// Conversation: The conversation this notification refers to. Format:
11057	// `projects//conversations/`.
11058	Conversation string `json:"conversation,omitempty"`
11059
11060	// Participant: The participant that the suggestion is compiled for.
11061	// Format: `projects//conversations//participants/`. It will not be set
11062	// in legacy workflow.
11063	Participant string `json:"participant,omitempty"`
11064
11065	// SuggestionResults: The suggestion results payload that this
11066	// notification refers to.
11067	SuggestionResults []*GoogleCloudDialogflowV2SuggestionResult `json:"suggestionResults,omitempty"`
11068
11069	// ForceSendFields is a list of field names (e.g. "Conversation") to
11070	// unconditionally include in API requests. By default, fields with
11071	// empty or default values are omitted from API requests. However, any
11072	// non-pointer, non-interface field appearing in ForceSendFields will be
11073	// sent to the server regardless of whether the field is empty or not.
11074	// This may be used to include empty fields in Patch requests.
11075	ForceSendFields []string `json:"-"`
11076
11077	// NullFields is a list of field names (e.g. "Conversation") to include
11078	// in API requests with the JSON null value. By default, fields with
11079	// empty values are omitted from API requests. However, any field with
11080	// an empty value appearing in NullFields will be sent to the server as
11081	// null. It is an error if a field in this list has a non-empty value.
11082	// This may be used to include null fields in Patch requests.
11083	NullFields []string `json:"-"`
11084}
11085
11086func (s *GoogleCloudDialogflowV2HumanAgentAssistantEvent) MarshalJSON() ([]byte, error) {
11087	type NoMethod GoogleCloudDialogflowV2HumanAgentAssistantEvent
11088	raw := NoMethod(*s)
11089	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11090}
11091
11092// GoogleCloudDialogflowV2Intent: An intent categorizes an end-user's
11093// intention for one conversation turn. For each agent, you define many
11094// intents, where your combined intents can handle a complete
11095// conversation. When an end-user writes or says something, referred to
11096// as an end-user expression or end-user input, Dialogflow matches the
11097// end-user input to the best intent in your agent. Matching an intent
11098// is also known as intent classification. For more information, see the
11099// intent guide
11100// (https://cloud.google.com/dialogflow/docs/intents-overview).
11101type GoogleCloudDialogflowV2Intent struct {
11102	// Action: Optional. The name of the action associated with the intent.
11103	// Note: The action name must not contain whitespaces.
11104	Action string `json:"action,omitempty"`
11105
11106	// DefaultResponsePlatforms: Optional. The list of platforms for which
11107	// the first responses will be copied from the messages in
11108	// PLATFORM_UNSPECIFIED (i.e. default platform).
11109	//
11110	// Possible values:
11111	//   "PLATFORM_UNSPECIFIED" - Default platform.
11112	//   "FACEBOOK" - Facebook.
11113	//   "SLACK" - Slack.
11114	//   "TELEGRAM" - Telegram.
11115	//   "KIK" - Kik.
11116	//   "SKYPE" - Skype.
11117	//   "LINE" - Line.
11118	//   "VIBER" - Viber.
11119	//   "ACTIONS_ON_GOOGLE" - Google Assistant See [Dialogflow webhook
11120	// format](https://developers.google.com/assistant/actions/build/json/dia
11121	// logflow-webhook-json)
11122	//   "GOOGLE_HANGOUTS" - Google Hangouts.
11123	DefaultResponsePlatforms []string `json:"defaultResponsePlatforms,omitempty"`
11124
11125	// DisplayName: Required. The name of this intent.
11126	DisplayName string `json:"displayName,omitempty"`
11127
11128	// EndInteraction: Optional. Indicates that this intent ends an
11129	// interaction. Some integrations (e.g., Actions on Google or Dialogflow
11130	// phone gateway) use this information to close interaction with an end
11131	// user. Default is false.
11132	EndInteraction bool `json:"endInteraction,omitempty"`
11133
11134	// Events: Optional. The collection of event names that trigger the
11135	// intent. If the collection of input contexts is not empty, all of the
11136	// contexts must be present in the active user session for an event to
11137	// trigger this intent. Event names are limited to 150 characters.
11138	Events []string `json:"events,omitempty"`
11139
11140	// FollowupIntentInfo: Output only. Read-only. Information about all
11141	// followup intents that have this intent as a direct or indirect
11142	// parent. We populate this field only in the output.
11143	FollowupIntentInfo []*GoogleCloudDialogflowV2IntentFollowupIntentInfo `json:"followupIntentInfo,omitempty"`
11144
11145	// InputContextNames: Optional. The list of context names required for
11146	// this intent to be triggered. Format:
11147	// `projects//agent/sessions/-/contexts/`.
11148	InputContextNames []string `json:"inputContextNames,omitempty"`
11149
11150	// IsFallback: Optional. Indicates whether this is a fallback intent.
11151	IsFallback bool `json:"isFallback,omitempty"`
11152
11153	// LiveAgentHandoff: Optional. Indicates that a live agent should be
11154	// brought in to handle the interaction with the user. In most cases,
11155	// when you set this flag to true, you would also want to set
11156	// end_interaction to true as well. Default is false.
11157	LiveAgentHandoff bool `json:"liveAgentHandoff,omitempty"`
11158
11159	// Messages: Optional. The collection of rich messages corresponding to
11160	// the `Response` field in the Dialogflow console.
11161	Messages []*GoogleCloudDialogflowV2IntentMessage `json:"messages,omitempty"`
11162
11163	// MlDisabled: Optional. Indicates whether Machine Learning is disabled
11164	// for the intent. Note: If `ml_disabled` setting is set to true, then
11165	// this intent is not taken into account during inference in `ML ONLY`
11166	// match mode. Also, auto-markup in the UI is turned off.
11167	MlDisabled bool `json:"mlDisabled,omitempty"`
11168
11169	// Name: Optional. The unique identifier of this intent. Required for
11170	// Intents.UpdateIntent and Intents.BatchUpdateIntents methods. Format:
11171	// `projects//agent/intents/`.
11172	Name string `json:"name,omitempty"`
11173
11174	// OutputContexts: Optional. The collection of contexts that are
11175	// activated when the intent is matched. Context messages in this
11176	// collection should not set the parameters field. Setting the
11177	// `lifespan_count` to 0 will reset the context when the intent is
11178	// matched. Format: `projects//agent/sessions/-/contexts/`.
11179	OutputContexts []*GoogleCloudDialogflowV2Context `json:"outputContexts,omitempty"`
11180
11181	// Parameters: Optional. The collection of parameters associated with
11182	// the intent.
11183	Parameters []*GoogleCloudDialogflowV2IntentParameter `json:"parameters,omitempty"`
11184
11185	// ParentFollowupIntentName: Read-only after creation. The unique
11186	// identifier of the parent intent in the chain of followup intents. You
11187	// can set this field when creating an intent, for example with
11188	// CreateIntent or BatchUpdateIntents, in order to make this intent a
11189	// followup intent. It identifies the parent followup intent. Format:
11190	// `projects//agent/intents/`.
11191	ParentFollowupIntentName string `json:"parentFollowupIntentName,omitempty"`
11192
11193	// Priority: Optional. The priority of this intent. Higher numbers
11194	// represent higher priorities. - If the supplied value is unspecified
11195	// or 0, the service translates the value to 500,000, which corresponds
11196	// to the `Normal` priority in the console. - If the supplied value is
11197	// negative, the intent is ignored in runtime detect intent requests.
11198	Priority int64 `json:"priority,omitempty"`
11199
11200	// ResetContexts: Optional. Indicates whether to delete all contexts in
11201	// the current session when this intent is matched.
11202	ResetContexts bool `json:"resetContexts,omitempty"`
11203
11204	// RootFollowupIntentName: Output only. Read-only. The unique identifier
11205	// of the root intent in the chain of followup intents. It identifies
11206	// the correct followup intents chain for this intent. We populate this
11207	// field only in the output. Format: `projects//agent/intents/`.
11208	RootFollowupIntentName string `json:"rootFollowupIntentName,omitempty"`
11209
11210	// TrainingPhrases: Optional. The collection of examples that the agent
11211	// is trained on.
11212	TrainingPhrases []*GoogleCloudDialogflowV2IntentTrainingPhrase `json:"trainingPhrases,omitempty"`
11213
11214	// WebhookState: Optional. Indicates whether webhooks are enabled for
11215	// the intent.
11216	//
11217	// Possible values:
11218	//   "WEBHOOK_STATE_UNSPECIFIED" - Webhook is disabled in the agent and
11219	// in the intent.
11220	//   "WEBHOOK_STATE_ENABLED" - Webhook is enabled in the agent and in
11221	// the intent.
11222	//   "WEBHOOK_STATE_ENABLED_FOR_SLOT_FILLING" - Webhook is enabled in
11223	// the agent and in the intent. Also, each slot filling prompt is
11224	// forwarded to the webhook.
11225	WebhookState string `json:"webhookState,omitempty"`
11226
11227	// ForceSendFields is a list of field names (e.g. "Action") to
11228	// unconditionally include in API requests. By default, fields with
11229	// empty or default values are omitted from API requests. However, any
11230	// non-pointer, non-interface field appearing in ForceSendFields will be
11231	// sent to the server regardless of whether the field is empty or not.
11232	// This may be used to include empty fields in Patch requests.
11233	ForceSendFields []string `json:"-"`
11234
11235	// NullFields is a list of field names (e.g. "Action") to include in API
11236	// requests with the JSON null value. By default, fields with empty
11237	// values are omitted from API requests. However, any field with an
11238	// empty value appearing in NullFields will be sent to the server as
11239	// null. It is an error if a field in this list has a non-empty value.
11240	// This may be used to include null fields in Patch requests.
11241	NullFields []string `json:"-"`
11242}
11243
11244func (s *GoogleCloudDialogflowV2Intent) MarshalJSON() ([]byte, error) {
11245	type NoMethod GoogleCloudDialogflowV2Intent
11246	raw := NoMethod(*s)
11247	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11248}
11249
11250// GoogleCloudDialogflowV2IntentFollowupIntentInfo: Represents a single
11251// followup intent in the chain.
11252type GoogleCloudDialogflowV2IntentFollowupIntentInfo struct {
11253	// FollowupIntentName: The unique identifier of the followup intent.
11254	// Format: `projects//agent/intents/`.
11255	FollowupIntentName string `json:"followupIntentName,omitempty"`
11256
11257	// ParentFollowupIntentName: The unique identifier of the followup
11258	// intent's parent. Format: `projects//agent/intents/`.
11259	ParentFollowupIntentName string `json:"parentFollowupIntentName,omitempty"`
11260
11261	// ForceSendFields is a list of field names (e.g. "FollowupIntentName")
11262	// to unconditionally include in API requests. By default, fields with
11263	// empty or default values are omitted from API requests. However, any
11264	// non-pointer, non-interface field appearing in ForceSendFields will be
11265	// sent to the server regardless of whether the field is empty or not.
11266	// This may be used to include empty fields in Patch requests.
11267	ForceSendFields []string `json:"-"`
11268
11269	// NullFields is a list of field names (e.g. "FollowupIntentName") to
11270	// include in API requests with the JSON null value. By default, fields
11271	// with empty values are omitted from API requests. However, any field
11272	// with an empty value appearing in NullFields will be sent to the
11273	// server as null. It is an error if a field in this list has a
11274	// non-empty value. This may be used to include null fields in Patch
11275	// requests.
11276	NullFields []string `json:"-"`
11277}
11278
11279func (s *GoogleCloudDialogflowV2IntentFollowupIntentInfo) MarshalJSON() ([]byte, error) {
11280	type NoMethod GoogleCloudDialogflowV2IntentFollowupIntentInfo
11281	raw := NoMethod(*s)
11282	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11283}
11284
11285// GoogleCloudDialogflowV2IntentMessage: A rich response message.
11286// Corresponds to the intent `Response` field in the Dialogflow console.
11287// For more information, see Rich response messages
11288// (https://cloud.google.com/dialogflow/docs/intents-rich-messages).
11289type GoogleCloudDialogflowV2IntentMessage struct {
11290	// BasicCard: The basic card response for Actions on Google.
11291	BasicCard *GoogleCloudDialogflowV2IntentMessageBasicCard `json:"basicCard,omitempty"`
11292
11293	// BrowseCarouselCard: Browse carousel card for Actions on Google.
11294	BrowseCarouselCard *GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard `json:"browseCarouselCard,omitempty"`
11295
11296	// Card: The card response.
11297	Card *GoogleCloudDialogflowV2IntentMessageCard `json:"card,omitempty"`
11298
11299	// CarouselSelect: The carousel card response for Actions on Google.
11300	CarouselSelect *GoogleCloudDialogflowV2IntentMessageCarouselSelect `json:"carouselSelect,omitempty"`
11301
11302	// Image: The image response.
11303	Image *GoogleCloudDialogflowV2IntentMessageImage `json:"image,omitempty"`
11304
11305	// LinkOutSuggestion: The link out suggestion chip for Actions on
11306	// Google.
11307	LinkOutSuggestion *GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion `json:"linkOutSuggestion,omitempty"`
11308
11309	// ListSelect: The list card response for Actions on Google.
11310	ListSelect *GoogleCloudDialogflowV2IntentMessageListSelect `json:"listSelect,omitempty"`
11311
11312	// MediaContent: The media content card for Actions on Google.
11313	MediaContent *GoogleCloudDialogflowV2IntentMessageMediaContent `json:"mediaContent,omitempty"`
11314
11315	// Payload: A custom platform-specific response.
11316	Payload googleapi.RawMessage `json:"payload,omitempty"`
11317
11318	// Platform: Optional. The platform that this message is intended for.
11319	//
11320	// Possible values:
11321	//   "PLATFORM_UNSPECIFIED" - Default platform.
11322	//   "FACEBOOK" - Facebook.
11323	//   "SLACK" - Slack.
11324	//   "TELEGRAM" - Telegram.
11325	//   "KIK" - Kik.
11326	//   "SKYPE" - Skype.
11327	//   "LINE" - Line.
11328	//   "VIBER" - Viber.
11329	//   "ACTIONS_ON_GOOGLE" - Google Assistant See [Dialogflow webhook
11330	// format](https://developers.google.com/assistant/actions/build/json/dia
11331	// logflow-webhook-json)
11332	//   "GOOGLE_HANGOUTS" - Google Hangouts.
11333	Platform string `json:"platform,omitempty"`
11334
11335	// QuickReplies: The quick replies response.
11336	QuickReplies *GoogleCloudDialogflowV2IntentMessageQuickReplies `json:"quickReplies,omitempty"`
11337
11338	// SimpleResponses: The voice and text-only responses for Actions on
11339	// Google.
11340	SimpleResponses *GoogleCloudDialogflowV2IntentMessageSimpleResponses `json:"simpleResponses,omitempty"`
11341
11342	// Suggestions: The suggestion chips for Actions on Google.
11343	Suggestions *GoogleCloudDialogflowV2IntentMessageSuggestions `json:"suggestions,omitempty"`
11344
11345	// TableCard: Table card for Actions on Google.
11346	TableCard *GoogleCloudDialogflowV2IntentMessageTableCard `json:"tableCard,omitempty"`
11347
11348	// Text: The text response.
11349	Text *GoogleCloudDialogflowV2IntentMessageText `json:"text,omitempty"`
11350
11351	// ForceSendFields is a list of field names (e.g. "BasicCard") to
11352	// unconditionally include in API requests. By default, fields with
11353	// empty or default values are omitted from API requests. However, any
11354	// non-pointer, non-interface field appearing in ForceSendFields will be
11355	// sent to the server regardless of whether the field is empty or not.
11356	// This may be used to include empty fields in Patch requests.
11357	ForceSendFields []string `json:"-"`
11358
11359	// NullFields is a list of field names (e.g. "BasicCard") to include in
11360	// API requests with the JSON null value. By default, fields with empty
11361	// values are omitted from API requests. However, any field with an
11362	// empty value appearing in NullFields will be sent to the server as
11363	// null. It is an error if a field in this list has a non-empty value.
11364	// This may be used to include null fields in Patch requests.
11365	NullFields []string `json:"-"`
11366}
11367
11368func (s *GoogleCloudDialogflowV2IntentMessage) MarshalJSON() ([]byte, error) {
11369	type NoMethod GoogleCloudDialogflowV2IntentMessage
11370	raw := NoMethod(*s)
11371	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11372}
11373
11374// GoogleCloudDialogflowV2IntentMessageBasicCard: The basic card
11375// message. Useful for displaying information.
11376type GoogleCloudDialogflowV2IntentMessageBasicCard struct {
11377	// Buttons: Optional. The collection of card buttons.
11378	Buttons []*GoogleCloudDialogflowV2IntentMessageBasicCardButton `json:"buttons,omitempty"`
11379
11380	// FormattedText: Required, unless image is present. The body text of
11381	// the card.
11382	FormattedText string `json:"formattedText,omitempty"`
11383
11384	// Image: Optional. The image for the card.
11385	Image *GoogleCloudDialogflowV2IntentMessageImage `json:"image,omitempty"`
11386
11387	// Subtitle: Optional. The subtitle of the card.
11388	Subtitle string `json:"subtitle,omitempty"`
11389
11390	// Title: Optional. The title of the card.
11391	Title string `json:"title,omitempty"`
11392
11393	// ForceSendFields is a list of field names (e.g. "Buttons") to
11394	// unconditionally include in API requests. By default, fields with
11395	// empty or default values are omitted from API requests. However, any
11396	// non-pointer, non-interface field appearing in ForceSendFields will be
11397	// sent to the server regardless of whether the field is empty or not.
11398	// This may be used to include empty fields in Patch requests.
11399	ForceSendFields []string `json:"-"`
11400
11401	// NullFields is a list of field names (e.g. "Buttons") to include in
11402	// API requests with the JSON null value. By default, fields with empty
11403	// values are omitted from API requests. However, any field with an
11404	// empty value appearing in NullFields will be sent to the server as
11405	// null. It is an error if a field in this list has a non-empty value.
11406	// This may be used to include null fields in Patch requests.
11407	NullFields []string `json:"-"`
11408}
11409
11410func (s *GoogleCloudDialogflowV2IntentMessageBasicCard) MarshalJSON() ([]byte, error) {
11411	type NoMethod GoogleCloudDialogflowV2IntentMessageBasicCard
11412	raw := NoMethod(*s)
11413	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11414}
11415
11416// GoogleCloudDialogflowV2IntentMessageBasicCardButton: The button
11417// object that appears at the bottom of a card.
11418type GoogleCloudDialogflowV2IntentMessageBasicCardButton struct {
11419	// OpenUriAction: Required. Action to take when a user taps on the
11420	// button.
11421	OpenUriAction *GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction `json:"openUriAction,omitempty"`
11422
11423	// Title: Required. The title of the button.
11424	Title string `json:"title,omitempty"`
11425
11426	// ForceSendFields is a list of field names (e.g. "OpenUriAction") to
11427	// unconditionally include in API requests. By default, fields with
11428	// empty or default values are omitted from API requests. However, any
11429	// non-pointer, non-interface field appearing in ForceSendFields will be
11430	// sent to the server regardless of whether the field is empty or not.
11431	// This may be used to include empty fields in Patch requests.
11432	ForceSendFields []string `json:"-"`
11433
11434	// NullFields is a list of field names (e.g. "OpenUriAction") to include
11435	// in API requests with the JSON null value. By default, fields with
11436	// empty values are omitted from API requests. However, any field with
11437	// an empty value appearing in NullFields will be sent to the server as
11438	// null. It is an error if a field in this list has a non-empty value.
11439	// This may be used to include null fields in Patch requests.
11440	NullFields []string `json:"-"`
11441}
11442
11443func (s *GoogleCloudDialogflowV2IntentMessageBasicCardButton) MarshalJSON() ([]byte, error) {
11444	type NoMethod GoogleCloudDialogflowV2IntentMessageBasicCardButton
11445	raw := NoMethod(*s)
11446	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11447}
11448
11449// GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction:
11450// Opens the given URI.
11451type GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction struct {
11452	// Uri: Required. The HTTP or HTTPS scheme URI.
11453	Uri string `json:"uri,omitempty"`
11454
11455	// ForceSendFields is a list of field names (e.g. "Uri") to
11456	// unconditionally include in API requests. By default, fields with
11457	// empty or default values are omitted from API requests. However, any
11458	// non-pointer, non-interface field appearing in ForceSendFields will be
11459	// sent to the server regardless of whether the field is empty or not.
11460	// This may be used to include empty fields in Patch requests.
11461	ForceSendFields []string `json:"-"`
11462
11463	// NullFields is a list of field names (e.g. "Uri") to include in API
11464	// requests with the JSON null value. By default, fields with empty
11465	// values are omitted from API requests. However, any field with an
11466	// empty value appearing in NullFields will be sent to the server as
11467	// null. It is an error if a field in this list has a non-empty value.
11468	// This may be used to include null fields in Patch requests.
11469	NullFields []string `json:"-"`
11470}
11471
11472func (s *GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction) MarshalJSON() ([]byte, error) {
11473	type NoMethod GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction
11474	raw := NoMethod(*s)
11475	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11476}
11477
11478// GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard: Browse
11479// Carousel Card for Actions on Google.
11480// https://developers.google.com/actions/assistant/responses#browsing_carousel
11481type GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard struct {
11482	// ImageDisplayOptions: Optional. Settings for displaying the image.
11483	// Applies to every image in items.
11484	//
11485	// Possible values:
11486	//   "IMAGE_DISPLAY_OPTIONS_UNSPECIFIED" - Fill the gaps between the
11487	// image and the image container with gray bars.
11488	//   "GRAY" - Fill the gaps between the image and the image container
11489	// with gray bars.
11490	//   "WHITE" - Fill the gaps between the image and the image container
11491	// with white bars.
11492	//   "CROPPED" - Image is scaled such that the image width and height
11493	// match or exceed the container dimensions. This may crop the top and
11494	// bottom of the image if the scaled image height is greater than the
11495	// container height, or crop the left and right of the image if the
11496	// scaled image width is greater than the container width. This is
11497	// similar to "Zoom Mode" on a widescreen TV when playing a 4:3 video.
11498	//   "BLURRED_BACKGROUND" - Pad the gaps between image and image frame
11499	// with a blurred copy of the same image.
11500	ImageDisplayOptions string `json:"imageDisplayOptions,omitempty"`
11501
11502	// Items: Required. List of items in the Browse Carousel Card. Minimum
11503	// of two items, maximum of ten.
11504	Items []*GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItem `json:"items,omitempty"`
11505
11506	// ForceSendFields is a list of field names (e.g. "ImageDisplayOptions")
11507	// to unconditionally include in API requests. By default, fields with
11508	// empty or default values are omitted from API requests. However, any
11509	// non-pointer, non-interface field appearing in ForceSendFields will be
11510	// sent to the server regardless of whether the field is empty or not.
11511	// This may be used to include empty fields in Patch requests.
11512	ForceSendFields []string `json:"-"`
11513
11514	// NullFields is a list of field names (e.g. "ImageDisplayOptions") to
11515	// include in API requests with the JSON null value. By default, fields
11516	// with empty values are omitted from API requests. However, any field
11517	// with an empty value appearing in NullFields will be sent to the
11518	// server as null. It is an error if a field in this list has a
11519	// non-empty value. This may be used to include null fields in Patch
11520	// requests.
11521	NullFields []string `json:"-"`
11522}
11523
11524func (s *GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard) MarshalJSON() ([]byte, error) {
11525	type NoMethod GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard
11526	raw := NoMethod(*s)
11527	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11528}
11529
11530// GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCa
11531// rdItem: Browsing carousel tile
11532type GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItem struct {
11533	// Description: Optional. Description of the carousel item. Maximum of
11534	// four lines of text.
11535	Description string `json:"description,omitempty"`
11536
11537	// Footer: Optional. Text that appears at the bottom of the Browse
11538	// Carousel Card. Maximum of one line of text.
11539	Footer string `json:"footer,omitempty"`
11540
11541	// Image: Optional. Hero image for the carousel item.
11542	Image *GoogleCloudDialogflowV2IntentMessageImage `json:"image,omitempty"`
11543
11544	// OpenUriAction: Required. Action to present to the user.
11545	OpenUriAction *GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction `json:"openUriAction,omitempty"`
11546
11547	// Title: Required. Title of the carousel item. Maximum of two lines of
11548	// text.
11549	Title string `json:"title,omitempty"`
11550
11551	// ForceSendFields is a list of field names (e.g. "Description") to
11552	// unconditionally include in API requests. By default, fields with
11553	// empty or default values are omitted from API requests. However, any
11554	// non-pointer, non-interface field appearing in ForceSendFields will be
11555	// sent to the server regardless of whether the field is empty or not.
11556	// This may be used to include empty fields in Patch requests.
11557	ForceSendFields []string `json:"-"`
11558
11559	// NullFields is a list of field names (e.g. "Description") to include
11560	// in API requests with the JSON null value. By default, fields with
11561	// empty values are omitted from API requests. However, any field with
11562	// an empty value appearing in NullFields will be sent to the server as
11563	// null. It is an error if a field in this list has a non-empty value.
11564	// This may be used to include null fields in Patch requests.
11565	NullFields []string `json:"-"`
11566}
11567
11568func (s *GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItem) MarshalJSON() ([]byte, error) {
11569	type NoMethod GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItem
11570	raw := NoMethod(*s)
11571	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11572}
11573
11574// GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCa
11575// rdItemOpenUrlAction: Actions on Google action to open a given url.
11576type GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction struct {
11577	// Url: Required. URL
11578	Url string `json:"url,omitempty"`
11579
11580	// UrlTypeHint: Optional. Specifies the type of viewer that is used when
11581	// opening the URL. Defaults to opening via web browser.
11582	//
11583	// Possible values:
11584	//   "URL_TYPE_HINT_UNSPECIFIED" - Unspecified
11585	//   "AMP_ACTION" - Url would be an amp action
11586	//   "AMP_CONTENT" - URL that points directly to AMP content, or to a
11587	// canonical URL which refers to AMP content via .
11588	UrlTypeHint string `json:"urlTypeHint,omitempty"`
11589
11590	// ForceSendFields is a list of field names (e.g. "Url") to
11591	// unconditionally include in API requests. By default, fields with
11592	// empty or default values are omitted from API requests. However, any
11593	// non-pointer, non-interface field appearing in ForceSendFields will be
11594	// sent to the server regardless of whether the field is empty or not.
11595	// This may be used to include empty fields in Patch requests.
11596	ForceSendFields []string `json:"-"`
11597
11598	// NullFields is a list of field names (e.g. "Url") to include in API
11599	// requests with the JSON null value. By default, fields with empty
11600	// values are omitted from API requests. However, any field with an
11601	// empty value appearing in NullFields will be sent to the server as
11602	// null. It is an error if a field in this list has a non-empty value.
11603	// This may be used to include null fields in Patch requests.
11604	NullFields []string `json:"-"`
11605}
11606
11607func (s *GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction) MarshalJSON() ([]byte, error) {
11608	type NoMethod GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction
11609	raw := NoMethod(*s)
11610	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11611}
11612
11613// GoogleCloudDialogflowV2IntentMessageCard: The card response message.
11614type GoogleCloudDialogflowV2IntentMessageCard struct {
11615	// Buttons: Optional. The collection of card buttons.
11616	Buttons []*GoogleCloudDialogflowV2IntentMessageCardButton `json:"buttons,omitempty"`
11617
11618	// ImageUri: Optional. The public URI to an image file for the card.
11619	ImageUri string `json:"imageUri,omitempty"`
11620
11621	// Subtitle: Optional. The subtitle of the card.
11622	Subtitle string `json:"subtitle,omitempty"`
11623
11624	// Title: Optional. The title of the card.
11625	Title string `json:"title,omitempty"`
11626
11627	// ForceSendFields is a list of field names (e.g. "Buttons") to
11628	// unconditionally include in API requests. By default, fields with
11629	// empty or default values are omitted from API requests. However, any
11630	// non-pointer, non-interface field appearing in ForceSendFields will be
11631	// sent to the server regardless of whether the field is empty or not.
11632	// This may be used to include empty fields in Patch requests.
11633	ForceSendFields []string `json:"-"`
11634
11635	// NullFields is a list of field names (e.g. "Buttons") to include in
11636	// API requests with the JSON null value. By default, fields with empty
11637	// values are omitted from API requests. However, any field with an
11638	// empty value appearing in NullFields will be sent to the server as
11639	// null. It is an error if a field in this list has a non-empty value.
11640	// This may be used to include null fields in Patch requests.
11641	NullFields []string `json:"-"`
11642}
11643
11644func (s *GoogleCloudDialogflowV2IntentMessageCard) MarshalJSON() ([]byte, error) {
11645	type NoMethod GoogleCloudDialogflowV2IntentMessageCard
11646	raw := NoMethod(*s)
11647	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11648}
11649
11650// GoogleCloudDialogflowV2IntentMessageCardButton: Contains information
11651// about a button.
11652type GoogleCloudDialogflowV2IntentMessageCardButton struct {
11653	// Postback: Optional. The text to send back to the Dialogflow API or a
11654	// URI to open.
11655	Postback string `json:"postback,omitempty"`
11656
11657	// Text: Optional. The text to show on the button.
11658	Text string `json:"text,omitempty"`
11659
11660	// ForceSendFields is a list of field names (e.g. "Postback") to
11661	// unconditionally include in API requests. By default, fields with
11662	// empty or default values are omitted from API requests. However, any
11663	// non-pointer, non-interface field appearing in ForceSendFields will be
11664	// sent to the server regardless of whether the field is empty or not.
11665	// This may be used to include empty fields in Patch requests.
11666	ForceSendFields []string `json:"-"`
11667
11668	// NullFields is a list of field names (e.g. "Postback") to include in
11669	// API requests with the JSON null value. By default, fields with empty
11670	// values are omitted from API requests. However, any field with an
11671	// empty value appearing in NullFields will be sent to the server as
11672	// null. It is an error if a field in this list has a non-empty value.
11673	// This may be used to include null fields in Patch requests.
11674	NullFields []string `json:"-"`
11675}
11676
11677func (s *GoogleCloudDialogflowV2IntentMessageCardButton) MarshalJSON() ([]byte, error) {
11678	type NoMethod GoogleCloudDialogflowV2IntentMessageCardButton
11679	raw := NoMethod(*s)
11680	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11681}
11682
11683// GoogleCloudDialogflowV2IntentMessageCarouselSelect: The card for
11684// presenting a carousel of options to select from.
11685type GoogleCloudDialogflowV2IntentMessageCarouselSelect struct {
11686	// Items: Required. Carousel items.
11687	Items []*GoogleCloudDialogflowV2IntentMessageCarouselSelectItem `json:"items,omitempty"`
11688
11689	// ForceSendFields is a list of field names (e.g. "Items") to
11690	// unconditionally include in API requests. By default, fields with
11691	// empty or default values are omitted from API requests. However, any
11692	// non-pointer, non-interface field appearing in ForceSendFields will be
11693	// sent to the server regardless of whether the field is empty or not.
11694	// This may be used to include empty fields in Patch requests.
11695	ForceSendFields []string `json:"-"`
11696
11697	// NullFields is a list of field names (e.g. "Items") to include in API
11698	// requests with the JSON null value. By default, fields with empty
11699	// values are omitted from API requests. However, any field with an
11700	// empty value appearing in NullFields will be sent to the server as
11701	// null. It is an error if a field in this list has a non-empty value.
11702	// This may be used to include null fields in Patch requests.
11703	NullFields []string `json:"-"`
11704}
11705
11706func (s *GoogleCloudDialogflowV2IntentMessageCarouselSelect) MarshalJSON() ([]byte, error) {
11707	type NoMethod GoogleCloudDialogflowV2IntentMessageCarouselSelect
11708	raw := NoMethod(*s)
11709	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11710}
11711
11712// GoogleCloudDialogflowV2IntentMessageCarouselSelectItem: An item in
11713// the carousel.
11714type GoogleCloudDialogflowV2IntentMessageCarouselSelectItem struct {
11715	// Description: Optional. The body text of the card.
11716	Description string `json:"description,omitempty"`
11717
11718	// Image: Optional. The image to display.
11719	Image *GoogleCloudDialogflowV2IntentMessageImage `json:"image,omitempty"`
11720
11721	// Info: Required. Additional info about the option item.
11722	Info *GoogleCloudDialogflowV2IntentMessageSelectItemInfo `json:"info,omitempty"`
11723
11724	// Title: Required. Title of the carousel item.
11725	Title string `json:"title,omitempty"`
11726
11727	// ForceSendFields is a list of field names (e.g. "Description") to
11728	// unconditionally include in API requests. By default, fields with
11729	// empty or default values are omitted from API requests. However, any
11730	// non-pointer, non-interface field appearing in ForceSendFields will be
11731	// sent to the server regardless of whether the field is empty or not.
11732	// This may be used to include empty fields in Patch requests.
11733	ForceSendFields []string `json:"-"`
11734
11735	// NullFields is a list of field names (e.g. "Description") to include
11736	// in API requests with the JSON null value. By default, fields with
11737	// empty values are omitted from API requests. However, any field with
11738	// an empty value appearing in NullFields will be sent to the server as
11739	// null. It is an error if a field in this list has a non-empty value.
11740	// This may be used to include null fields in Patch requests.
11741	NullFields []string `json:"-"`
11742}
11743
11744func (s *GoogleCloudDialogflowV2IntentMessageCarouselSelectItem) MarshalJSON() ([]byte, error) {
11745	type NoMethod GoogleCloudDialogflowV2IntentMessageCarouselSelectItem
11746	raw := NoMethod(*s)
11747	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11748}
11749
11750// GoogleCloudDialogflowV2IntentMessageColumnProperties: Column
11751// properties for TableCard.
11752type GoogleCloudDialogflowV2IntentMessageColumnProperties struct {
11753	// Header: Required. Column heading.
11754	Header string `json:"header,omitempty"`
11755
11756	// HorizontalAlignment: Optional. Defines text alignment for all cells
11757	// in this column.
11758	//
11759	// Possible values:
11760	//   "HORIZONTAL_ALIGNMENT_UNSPECIFIED" - Text is aligned to the leading
11761	// edge of the column.
11762	//   "LEADING" - Text is aligned to the leading edge of the column.
11763	//   "CENTER" - Text is centered in the column.
11764	//   "TRAILING" - Text is aligned to the trailing edge of the column.
11765	HorizontalAlignment string `json:"horizontalAlignment,omitempty"`
11766
11767	// ForceSendFields is a list of field names (e.g. "Header") to
11768	// unconditionally include in API requests. By default, fields with
11769	// empty or default values are omitted from API requests. However, any
11770	// non-pointer, non-interface field appearing in ForceSendFields will be
11771	// sent to the server regardless of whether the field is empty or not.
11772	// This may be used to include empty fields in Patch requests.
11773	ForceSendFields []string `json:"-"`
11774
11775	// NullFields is a list of field names (e.g. "Header") to include in API
11776	// requests with the JSON null value. By default, fields with empty
11777	// values are omitted from API requests. However, any field with an
11778	// empty value appearing in NullFields will be sent to the server as
11779	// null. It is an error if a field in this list has a non-empty value.
11780	// This may be used to include null fields in Patch requests.
11781	NullFields []string `json:"-"`
11782}
11783
11784func (s *GoogleCloudDialogflowV2IntentMessageColumnProperties) MarshalJSON() ([]byte, error) {
11785	type NoMethod GoogleCloudDialogflowV2IntentMessageColumnProperties
11786	raw := NoMethod(*s)
11787	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11788}
11789
11790// GoogleCloudDialogflowV2IntentMessageImage: The image response
11791// message.
11792type GoogleCloudDialogflowV2IntentMessageImage struct {
11793	// AccessibilityText: Optional. A text description of the image to be
11794	// used for accessibility, e.g., screen readers.
11795	AccessibilityText string `json:"accessibilityText,omitempty"`
11796
11797	// ImageUri: Optional. The public URI to an image file.
11798	ImageUri string `json:"imageUri,omitempty"`
11799
11800	// ForceSendFields is a list of field names (e.g. "AccessibilityText")
11801	// to unconditionally include in API requests. By default, fields with
11802	// empty or default values are omitted from API requests. However, any
11803	// non-pointer, non-interface field appearing in ForceSendFields will be
11804	// sent to the server regardless of whether the field is empty or not.
11805	// This may be used to include empty fields in Patch requests.
11806	ForceSendFields []string `json:"-"`
11807
11808	// NullFields is a list of field names (e.g. "AccessibilityText") to
11809	// include in API requests with the JSON null value. By default, fields
11810	// with empty values are omitted from API requests. However, any field
11811	// with an empty value appearing in NullFields will be sent to the
11812	// server as null. It is an error if a field in this list has a
11813	// non-empty value. This may be used to include null fields in Patch
11814	// requests.
11815	NullFields []string `json:"-"`
11816}
11817
11818func (s *GoogleCloudDialogflowV2IntentMessageImage) MarshalJSON() ([]byte, error) {
11819	type NoMethod GoogleCloudDialogflowV2IntentMessageImage
11820	raw := NoMethod(*s)
11821	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11822}
11823
11824// GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion: The suggestion
11825// chip message that allows the user to jump out to the app or website
11826// associated with this agent.
11827type GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion struct {
11828	// DestinationName: Required. The name of the app or site this chip is
11829	// linking to.
11830	DestinationName string `json:"destinationName,omitempty"`
11831
11832	// Uri: Required. The URI of the app or site to open when the user taps
11833	// the suggestion chip.
11834	Uri string `json:"uri,omitempty"`
11835
11836	// ForceSendFields is a list of field names (e.g. "DestinationName") to
11837	// unconditionally include in API requests. By default, fields with
11838	// empty or default values are omitted from API requests. However, any
11839	// non-pointer, non-interface field appearing in ForceSendFields will be
11840	// sent to the server regardless of whether the field is empty or not.
11841	// This may be used to include empty fields in Patch requests.
11842	ForceSendFields []string `json:"-"`
11843
11844	// NullFields is a list of field names (e.g. "DestinationName") to
11845	// include in API requests with the JSON null value. By default, fields
11846	// with empty values are omitted from API requests. However, any field
11847	// with an empty value appearing in NullFields will be sent to the
11848	// server as null. It is an error if a field in this list has a
11849	// non-empty value. This may be used to include null fields in Patch
11850	// requests.
11851	NullFields []string `json:"-"`
11852}
11853
11854func (s *GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion) MarshalJSON() ([]byte, error) {
11855	type NoMethod GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion
11856	raw := NoMethod(*s)
11857	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11858}
11859
11860// GoogleCloudDialogflowV2IntentMessageListSelect: The card for
11861// presenting a list of options to select from.
11862type GoogleCloudDialogflowV2IntentMessageListSelect struct {
11863	// Items: Required. List items.
11864	Items []*GoogleCloudDialogflowV2IntentMessageListSelectItem `json:"items,omitempty"`
11865
11866	// Subtitle: Optional. Subtitle of the list.
11867	Subtitle string `json:"subtitle,omitempty"`
11868
11869	// Title: Optional. The overall title of the list.
11870	Title string `json:"title,omitempty"`
11871
11872	// ForceSendFields is a list of field names (e.g. "Items") to
11873	// unconditionally include in API requests. By default, fields with
11874	// empty or default values are omitted from API requests. However, any
11875	// non-pointer, non-interface field appearing in ForceSendFields will be
11876	// sent to the server regardless of whether the field is empty or not.
11877	// This may be used to include empty fields in Patch requests.
11878	ForceSendFields []string `json:"-"`
11879
11880	// NullFields is a list of field names (e.g. "Items") to include in API
11881	// requests with the JSON null value. By default, fields with empty
11882	// values are omitted from API requests. However, any field with an
11883	// empty value appearing in NullFields will be sent to the server as
11884	// null. It is an error if a field in this list has a non-empty value.
11885	// This may be used to include null fields in Patch requests.
11886	NullFields []string `json:"-"`
11887}
11888
11889func (s *GoogleCloudDialogflowV2IntentMessageListSelect) MarshalJSON() ([]byte, error) {
11890	type NoMethod GoogleCloudDialogflowV2IntentMessageListSelect
11891	raw := NoMethod(*s)
11892	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11893}
11894
11895// GoogleCloudDialogflowV2IntentMessageListSelectItem: An item in the
11896// list.
11897type GoogleCloudDialogflowV2IntentMessageListSelectItem struct {
11898	// Description: Optional. The main text describing the item.
11899	Description string `json:"description,omitempty"`
11900
11901	// Image: Optional. The image to display.
11902	Image *GoogleCloudDialogflowV2IntentMessageImage `json:"image,omitempty"`
11903
11904	// Info: Required. Additional information about this option.
11905	Info *GoogleCloudDialogflowV2IntentMessageSelectItemInfo `json:"info,omitempty"`
11906
11907	// Title: Required. The title of the list item.
11908	Title string `json:"title,omitempty"`
11909
11910	// ForceSendFields is a list of field names (e.g. "Description") to
11911	// unconditionally include in API requests. By default, fields with
11912	// empty or default values are omitted from API requests. However, any
11913	// non-pointer, non-interface field appearing in ForceSendFields will be
11914	// sent to the server regardless of whether the field is empty or not.
11915	// This may be used to include empty fields in Patch requests.
11916	ForceSendFields []string `json:"-"`
11917
11918	// NullFields is a list of field names (e.g. "Description") to include
11919	// in API requests with the JSON null value. By default, fields with
11920	// empty values are omitted from API requests. However, any field with
11921	// an empty value appearing in NullFields will be sent to the server as
11922	// null. It is an error if a field in this list has a non-empty value.
11923	// This may be used to include null fields in Patch requests.
11924	NullFields []string `json:"-"`
11925}
11926
11927func (s *GoogleCloudDialogflowV2IntentMessageListSelectItem) MarshalJSON() ([]byte, error) {
11928	type NoMethod GoogleCloudDialogflowV2IntentMessageListSelectItem
11929	raw := NoMethod(*s)
11930	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11931}
11932
11933// GoogleCloudDialogflowV2IntentMessageMediaContent: The media content
11934// card for Actions on Google.
11935type GoogleCloudDialogflowV2IntentMessageMediaContent struct {
11936	// MediaObjects: Required. List of media objects.
11937	MediaObjects []*GoogleCloudDialogflowV2IntentMessageMediaContentResponseMediaObject `json:"mediaObjects,omitempty"`
11938
11939	// MediaType: Optional. What type of media is the content (ie "audio").
11940	//
11941	// Possible values:
11942	//   "RESPONSE_MEDIA_TYPE_UNSPECIFIED" - Unspecified.
11943	//   "AUDIO" - Response media type is audio.
11944	MediaType string `json:"mediaType,omitempty"`
11945
11946	// ForceSendFields is a list of field names (e.g. "MediaObjects") to
11947	// unconditionally include in API requests. By default, fields with
11948	// empty or default values are omitted from API requests. However, any
11949	// non-pointer, non-interface field appearing in ForceSendFields will be
11950	// sent to the server regardless of whether the field is empty or not.
11951	// This may be used to include empty fields in Patch requests.
11952	ForceSendFields []string `json:"-"`
11953
11954	// NullFields is a list of field names (e.g. "MediaObjects") to include
11955	// in API requests with the JSON null value. By default, fields with
11956	// empty values are omitted from API requests. However, any field with
11957	// an empty value appearing in NullFields will be sent to the server as
11958	// null. It is an error if a field in this list has a non-empty value.
11959	// This may be used to include null fields in Patch requests.
11960	NullFields []string `json:"-"`
11961}
11962
11963func (s *GoogleCloudDialogflowV2IntentMessageMediaContent) MarshalJSON() ([]byte, error) {
11964	type NoMethod GoogleCloudDialogflowV2IntentMessageMediaContent
11965	raw := NoMethod(*s)
11966	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11967}
11968
11969// GoogleCloudDialogflowV2IntentMessageMediaContentResponseMediaObject:
11970// Response media object for media content card.
11971type GoogleCloudDialogflowV2IntentMessageMediaContentResponseMediaObject struct {
11972	// ContentUrl: Required. Url where the media is stored.
11973	ContentUrl string `json:"contentUrl,omitempty"`
11974
11975	// Description: Optional. Description of media card.
11976	Description string `json:"description,omitempty"`
11977
11978	// Icon: Optional. Icon to display above media content.
11979	Icon *GoogleCloudDialogflowV2IntentMessageImage `json:"icon,omitempty"`
11980
11981	// LargeImage: Optional. Image to display above media content.
11982	LargeImage *GoogleCloudDialogflowV2IntentMessageImage `json:"largeImage,omitempty"`
11983
11984	// Name: Required. Name of media card.
11985	Name string `json:"name,omitempty"`
11986
11987	// ForceSendFields is a list of field names (e.g. "ContentUrl") to
11988	// unconditionally include in API requests. By default, fields with
11989	// empty or default values are omitted from API requests. However, any
11990	// non-pointer, non-interface field appearing in ForceSendFields will be
11991	// sent to the server regardless of whether the field is empty or not.
11992	// This may be used to include empty fields in Patch requests.
11993	ForceSendFields []string `json:"-"`
11994
11995	// NullFields is a list of field names (e.g. "ContentUrl") to include in
11996	// API requests with the JSON null value. By default, fields with empty
11997	// values are omitted from API requests. However, any field with an
11998	// empty value appearing in NullFields will be sent to the server as
11999	// null. It is an error if a field in this list has a non-empty value.
12000	// This may be used to include null fields in Patch requests.
12001	NullFields []string `json:"-"`
12002}
12003
12004func (s *GoogleCloudDialogflowV2IntentMessageMediaContentResponseMediaObject) MarshalJSON() ([]byte, error) {
12005	type NoMethod GoogleCloudDialogflowV2IntentMessageMediaContentResponseMediaObject
12006	raw := NoMethod(*s)
12007	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12008}
12009
12010// GoogleCloudDialogflowV2IntentMessageQuickReplies: The quick replies
12011// response message.
12012type GoogleCloudDialogflowV2IntentMessageQuickReplies struct {
12013	// QuickReplies: Optional. The collection of quick replies.
12014	QuickReplies []string `json:"quickReplies,omitempty"`
12015
12016	// Title: Optional. The title of the collection of quick replies.
12017	Title string `json:"title,omitempty"`
12018
12019	// ForceSendFields is a list of field names (e.g. "QuickReplies") to
12020	// unconditionally include in API requests. By default, fields with
12021	// empty or default values are omitted from API requests. However, any
12022	// non-pointer, non-interface field appearing in ForceSendFields will be
12023	// sent to the server regardless of whether the field is empty or not.
12024	// This may be used to include empty fields in Patch requests.
12025	ForceSendFields []string `json:"-"`
12026
12027	// NullFields is a list of field names (e.g. "QuickReplies") to include
12028	// in API requests with the JSON null value. By default, fields with
12029	// empty values are omitted from API requests. However, any field with
12030	// an empty value appearing in NullFields will be sent to the server as
12031	// null. It is an error if a field in this list has a non-empty value.
12032	// This may be used to include null fields in Patch requests.
12033	NullFields []string `json:"-"`
12034}
12035
12036func (s *GoogleCloudDialogflowV2IntentMessageQuickReplies) MarshalJSON() ([]byte, error) {
12037	type NoMethod GoogleCloudDialogflowV2IntentMessageQuickReplies
12038	raw := NoMethod(*s)
12039	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12040}
12041
12042// GoogleCloudDialogflowV2IntentMessageSelectItemInfo: Additional info
12043// about the select item for when it is triggered in a dialog.
12044type GoogleCloudDialogflowV2IntentMessageSelectItemInfo struct {
12045	// Key: Required. A unique key that will be sent back to the agent if
12046	// this response is given.
12047	Key string `json:"key,omitempty"`
12048
12049	// Synonyms: Optional. A list of synonyms that can also be used to
12050	// trigger this item in dialog.
12051	Synonyms []string `json:"synonyms,omitempty"`
12052
12053	// ForceSendFields is a list of field names (e.g. "Key") to
12054	// unconditionally include in API requests. By default, fields with
12055	// empty or default values are omitted from API requests. However, any
12056	// non-pointer, non-interface field appearing in ForceSendFields will be
12057	// sent to the server regardless of whether the field is empty or not.
12058	// This may be used to include empty fields in Patch requests.
12059	ForceSendFields []string `json:"-"`
12060
12061	// NullFields is a list of field names (e.g. "Key") to include in API
12062	// requests with the JSON null value. By default, fields with empty
12063	// values are omitted from API requests. However, any field with an
12064	// empty value appearing in NullFields will be sent to the server as
12065	// null. It is an error if a field in this list has a non-empty value.
12066	// This may be used to include null fields in Patch requests.
12067	NullFields []string `json:"-"`
12068}
12069
12070func (s *GoogleCloudDialogflowV2IntentMessageSelectItemInfo) MarshalJSON() ([]byte, error) {
12071	type NoMethod GoogleCloudDialogflowV2IntentMessageSelectItemInfo
12072	raw := NoMethod(*s)
12073	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12074}
12075
12076// GoogleCloudDialogflowV2IntentMessageSimpleResponse: The simple
12077// response message containing speech or text.
12078type GoogleCloudDialogflowV2IntentMessageSimpleResponse struct {
12079	// DisplayText: Optional. The text to display.
12080	DisplayText string `json:"displayText,omitempty"`
12081
12082	// Ssml: One of text_to_speech or ssml must be provided. Structured
12083	// spoken response to the user in the SSML format. Mutually exclusive
12084	// with text_to_speech.
12085	Ssml string `json:"ssml,omitempty"`
12086
12087	// TextToSpeech: One of text_to_speech or ssml must be provided. The
12088	// plain text of the speech output. Mutually exclusive with ssml.
12089	TextToSpeech string `json:"textToSpeech,omitempty"`
12090
12091	// ForceSendFields is a list of field names (e.g. "DisplayText") to
12092	// unconditionally include in API requests. By default, fields with
12093	// empty or default values are omitted from API requests. However, any
12094	// non-pointer, non-interface field appearing in ForceSendFields will be
12095	// sent to the server regardless of whether the field is empty or not.
12096	// This may be used to include empty fields in Patch requests.
12097	ForceSendFields []string `json:"-"`
12098
12099	// NullFields is a list of field names (e.g. "DisplayText") to include
12100	// in API requests with the JSON null value. By default, fields with
12101	// empty values are omitted from API requests. However, any field with
12102	// an empty value appearing in NullFields will be sent to the server as
12103	// null. It is an error if a field in this list has a non-empty value.
12104	// This may be used to include null fields in Patch requests.
12105	NullFields []string `json:"-"`
12106}
12107
12108func (s *GoogleCloudDialogflowV2IntentMessageSimpleResponse) MarshalJSON() ([]byte, error) {
12109	type NoMethod GoogleCloudDialogflowV2IntentMessageSimpleResponse
12110	raw := NoMethod(*s)
12111	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12112}
12113
12114// GoogleCloudDialogflowV2IntentMessageSimpleResponses: The collection
12115// of simple response candidates. This message in
12116// `QueryResult.fulfillment_messages` and
12117// `WebhookResponse.fulfillment_messages` should contain only one
12118// `SimpleResponse`.
12119type GoogleCloudDialogflowV2IntentMessageSimpleResponses struct {
12120	// SimpleResponses: Required. The list of simple responses.
12121	SimpleResponses []*GoogleCloudDialogflowV2IntentMessageSimpleResponse `json:"simpleResponses,omitempty"`
12122
12123	// ForceSendFields is a list of field names (e.g. "SimpleResponses") to
12124	// unconditionally include in API requests. By default, fields with
12125	// empty or default values are omitted from API requests. However, any
12126	// non-pointer, non-interface field appearing in ForceSendFields will be
12127	// sent to the server regardless of whether the field is empty or not.
12128	// This may be used to include empty fields in Patch requests.
12129	ForceSendFields []string `json:"-"`
12130
12131	// NullFields is a list of field names (e.g. "SimpleResponses") to
12132	// include in API requests with the JSON null value. By default, fields
12133	// with empty values are omitted from API requests. However, any field
12134	// with an empty value appearing in NullFields will be sent to the
12135	// server as null. It is an error if a field in this list has a
12136	// non-empty value. This may be used to include null fields in Patch
12137	// requests.
12138	NullFields []string `json:"-"`
12139}
12140
12141func (s *GoogleCloudDialogflowV2IntentMessageSimpleResponses) MarshalJSON() ([]byte, error) {
12142	type NoMethod GoogleCloudDialogflowV2IntentMessageSimpleResponses
12143	raw := NoMethod(*s)
12144	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12145}
12146
12147// GoogleCloudDialogflowV2IntentMessageSuggestion: The suggestion chip
12148// message that the user can tap to quickly post a reply to the
12149// conversation.
12150type GoogleCloudDialogflowV2IntentMessageSuggestion struct {
12151	// Title: Required. The text shown the in the suggestion chip.
12152	Title string `json:"title,omitempty"`
12153
12154	// ForceSendFields is a list of field names (e.g. "Title") to
12155	// unconditionally include in API requests. By default, fields with
12156	// empty or default values are omitted from API requests. However, any
12157	// non-pointer, non-interface field appearing in ForceSendFields will be
12158	// sent to the server regardless of whether the field is empty or not.
12159	// This may be used to include empty fields in Patch requests.
12160	ForceSendFields []string `json:"-"`
12161
12162	// NullFields is a list of field names (e.g. "Title") to include in API
12163	// requests with the JSON null value. By default, fields with empty
12164	// values are omitted from API requests. However, any field with an
12165	// empty value appearing in NullFields will be sent to the server as
12166	// null. It is an error if a field in this list has a non-empty value.
12167	// This may be used to include null fields in Patch requests.
12168	NullFields []string `json:"-"`
12169}
12170
12171func (s *GoogleCloudDialogflowV2IntentMessageSuggestion) MarshalJSON() ([]byte, error) {
12172	type NoMethod GoogleCloudDialogflowV2IntentMessageSuggestion
12173	raw := NoMethod(*s)
12174	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12175}
12176
12177// GoogleCloudDialogflowV2IntentMessageSuggestions: The collection of
12178// suggestions.
12179type GoogleCloudDialogflowV2IntentMessageSuggestions struct {
12180	// Suggestions: Required. The list of suggested replies.
12181	Suggestions []*GoogleCloudDialogflowV2IntentMessageSuggestion `json:"suggestions,omitempty"`
12182
12183	// ForceSendFields is a list of field names (e.g. "Suggestions") to
12184	// unconditionally include in API requests. By default, fields with
12185	// empty or default values are omitted from API requests. However, any
12186	// non-pointer, non-interface field appearing in ForceSendFields will be
12187	// sent to the server regardless of whether the field is empty or not.
12188	// This may be used to include empty fields in Patch requests.
12189	ForceSendFields []string `json:"-"`
12190
12191	// NullFields is a list of field names (e.g. "Suggestions") to include
12192	// in API requests with the JSON null value. By default, fields with
12193	// empty values are omitted from API requests. However, any field with
12194	// an empty value appearing in NullFields will be sent to the server as
12195	// null. It is an error if a field in this list has a non-empty value.
12196	// This may be used to include null fields in Patch requests.
12197	NullFields []string `json:"-"`
12198}
12199
12200func (s *GoogleCloudDialogflowV2IntentMessageSuggestions) MarshalJSON() ([]byte, error) {
12201	type NoMethod GoogleCloudDialogflowV2IntentMessageSuggestions
12202	raw := NoMethod(*s)
12203	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12204}
12205
12206// GoogleCloudDialogflowV2IntentMessageTableCard: Table card for Actions
12207// on Google.
12208type GoogleCloudDialogflowV2IntentMessageTableCard struct {
12209	// Buttons: Optional. List of buttons for the card.
12210	Buttons []*GoogleCloudDialogflowV2IntentMessageBasicCardButton `json:"buttons,omitempty"`
12211
12212	// ColumnProperties: Optional. Display properties for the columns in
12213	// this table.
12214	ColumnProperties []*GoogleCloudDialogflowV2IntentMessageColumnProperties `json:"columnProperties,omitempty"`
12215
12216	// Image: Optional. Image which should be displayed on the card.
12217	Image *GoogleCloudDialogflowV2IntentMessageImage `json:"image,omitempty"`
12218
12219	// Rows: Optional. Rows in this table of data.
12220	Rows []*GoogleCloudDialogflowV2IntentMessageTableCardRow `json:"rows,omitempty"`
12221
12222	// Subtitle: Optional. Subtitle to the title.
12223	Subtitle string `json:"subtitle,omitempty"`
12224
12225	// Title: Required. Title of the card.
12226	Title string `json:"title,omitempty"`
12227
12228	// ForceSendFields is a list of field names (e.g. "Buttons") to
12229	// unconditionally include in API requests. By default, fields with
12230	// empty or default values are omitted from API requests. However, any
12231	// non-pointer, non-interface field appearing in ForceSendFields will be
12232	// sent to the server regardless of whether the field is empty or not.
12233	// This may be used to include empty fields in Patch requests.
12234	ForceSendFields []string `json:"-"`
12235
12236	// NullFields is a list of field names (e.g. "Buttons") to include in
12237	// API requests with the JSON null value. By default, fields with empty
12238	// values are omitted from API requests. However, any field with an
12239	// empty value appearing in NullFields will be sent to the server as
12240	// null. It is an error if a field in this list has a non-empty value.
12241	// This may be used to include null fields in Patch requests.
12242	NullFields []string `json:"-"`
12243}
12244
12245func (s *GoogleCloudDialogflowV2IntentMessageTableCard) MarshalJSON() ([]byte, error) {
12246	type NoMethod GoogleCloudDialogflowV2IntentMessageTableCard
12247	raw := NoMethod(*s)
12248	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12249}
12250
12251// GoogleCloudDialogflowV2IntentMessageTableCardCell: Cell of
12252// TableCardRow.
12253type GoogleCloudDialogflowV2IntentMessageTableCardCell struct {
12254	// Text: Required. Text in this cell.
12255	Text string `json:"text,omitempty"`
12256
12257	// ForceSendFields is a list of field names (e.g. "Text") to
12258	// unconditionally include in API requests. By default, fields with
12259	// empty or default values are omitted from API requests. However, any
12260	// non-pointer, non-interface field appearing in ForceSendFields will be
12261	// sent to the server regardless of whether the field is empty or not.
12262	// This may be used to include empty fields in Patch requests.
12263	ForceSendFields []string `json:"-"`
12264
12265	// NullFields is a list of field names (e.g. "Text") to include in API
12266	// requests with the JSON null value. By default, fields with empty
12267	// values are omitted from API requests. However, any field with an
12268	// empty value appearing in NullFields will be sent to the server as
12269	// null. It is an error if a field in this list has a non-empty value.
12270	// This may be used to include null fields in Patch requests.
12271	NullFields []string `json:"-"`
12272}
12273
12274func (s *GoogleCloudDialogflowV2IntentMessageTableCardCell) MarshalJSON() ([]byte, error) {
12275	type NoMethod GoogleCloudDialogflowV2IntentMessageTableCardCell
12276	raw := NoMethod(*s)
12277	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12278}
12279
12280// GoogleCloudDialogflowV2IntentMessageTableCardRow: Row of TableCard.
12281type GoogleCloudDialogflowV2IntentMessageTableCardRow struct {
12282	// Cells: Optional. List of cells that make up this row.
12283	Cells []*GoogleCloudDialogflowV2IntentMessageTableCardCell `json:"cells,omitempty"`
12284
12285	// DividerAfter: Optional. Whether to add a visual divider after this
12286	// row.
12287	DividerAfter bool `json:"dividerAfter,omitempty"`
12288
12289	// ForceSendFields is a list of field names (e.g. "Cells") to
12290	// unconditionally include in API requests. By default, fields with
12291	// empty or default values are omitted from API requests. However, any
12292	// non-pointer, non-interface field appearing in ForceSendFields will be
12293	// sent to the server regardless of whether the field is empty or not.
12294	// This may be used to include empty fields in Patch requests.
12295	ForceSendFields []string `json:"-"`
12296
12297	// NullFields is a list of field names (e.g. "Cells") to include in API
12298	// requests with the JSON null value. By default, fields with empty
12299	// values are omitted from API requests. However, any field with an
12300	// empty value appearing in NullFields will be sent to the server as
12301	// null. It is an error if a field in this list has a non-empty value.
12302	// This may be used to include null fields in Patch requests.
12303	NullFields []string `json:"-"`
12304}
12305
12306func (s *GoogleCloudDialogflowV2IntentMessageTableCardRow) MarshalJSON() ([]byte, error) {
12307	type NoMethod GoogleCloudDialogflowV2IntentMessageTableCardRow
12308	raw := NoMethod(*s)
12309	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12310}
12311
12312// GoogleCloudDialogflowV2IntentMessageText: The text response message.
12313type GoogleCloudDialogflowV2IntentMessageText struct {
12314	// Text: Optional. The collection of the agent's responses.
12315	Text []string `json:"text,omitempty"`
12316
12317	// ForceSendFields is a list of field names (e.g. "Text") to
12318	// unconditionally include in API requests. By default, fields with
12319	// empty or default values are omitted from API requests. However, any
12320	// non-pointer, non-interface field appearing in ForceSendFields will be
12321	// sent to the server regardless of whether the field is empty or not.
12322	// This may be used to include empty fields in Patch requests.
12323	ForceSendFields []string `json:"-"`
12324
12325	// NullFields is a list of field names (e.g. "Text") to include in API
12326	// requests with the JSON null value. By default, fields with empty
12327	// values are omitted from API requests. However, any field with an
12328	// empty value appearing in NullFields will be sent to the server as
12329	// null. It is an error if a field in this list has a non-empty value.
12330	// This may be used to include null fields in Patch requests.
12331	NullFields []string `json:"-"`
12332}
12333
12334func (s *GoogleCloudDialogflowV2IntentMessageText) MarshalJSON() ([]byte, error) {
12335	type NoMethod GoogleCloudDialogflowV2IntentMessageText
12336	raw := NoMethod(*s)
12337	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12338}
12339
12340// GoogleCloudDialogflowV2IntentParameter: Represents intent parameters.
12341type GoogleCloudDialogflowV2IntentParameter struct {
12342	// DefaultValue: Optional. The default value to use when the `value`
12343	// yields an empty result. Default values can be extracted from contexts
12344	// by using the following syntax: `#context_name.parameter_name`.
12345	DefaultValue string `json:"defaultValue,omitempty"`
12346
12347	// DisplayName: Required. The name of the parameter.
12348	DisplayName string `json:"displayName,omitempty"`
12349
12350	// EntityTypeDisplayName: Optional. The name of the entity type,
12351	// prefixed with `@`, that describes values of the parameter. If the
12352	// parameter is required, this must be provided.
12353	EntityTypeDisplayName string `json:"entityTypeDisplayName,omitempty"`
12354
12355	// IsList: Optional. Indicates whether the parameter represents a list
12356	// of values.
12357	IsList bool `json:"isList,omitempty"`
12358
12359	// Mandatory: Optional. Indicates whether the parameter is required.
12360	// That is, whether the intent cannot be completed without collecting
12361	// the parameter value.
12362	Mandatory bool `json:"mandatory,omitempty"`
12363
12364	// Name: The unique identifier of this parameter.
12365	Name string `json:"name,omitempty"`
12366
12367	// Prompts: Optional. The collection of prompts that the agent can
12368	// present to the user in order to collect a value for the parameter.
12369	Prompts []string `json:"prompts,omitempty"`
12370
12371	// Value: Optional. The definition of the parameter value. It can be: -
12372	// a constant string, - a parameter value defined as `$parameter_name`,
12373	// - an original parameter value defined as `$parameter_name.original`,
12374	// - a parameter value from some context defined as
12375	// `#context_name.parameter_name`.
12376	Value string `json:"value,omitempty"`
12377
12378	// ForceSendFields is a list of field names (e.g. "DefaultValue") to
12379	// unconditionally include in API requests. By default, fields with
12380	// empty or default values are omitted from API requests. However, any
12381	// non-pointer, non-interface field appearing in ForceSendFields will be
12382	// sent to the server regardless of whether the field is empty or not.
12383	// This may be used to include empty fields in Patch requests.
12384	ForceSendFields []string `json:"-"`
12385
12386	// NullFields is a list of field names (e.g. "DefaultValue") to include
12387	// in API requests with the JSON null value. By default, fields with
12388	// empty values are omitted from API requests. However, any field with
12389	// an empty value appearing in NullFields will be sent to the server as
12390	// null. It is an error if a field in this list has a non-empty value.
12391	// This may be used to include null fields in Patch requests.
12392	NullFields []string `json:"-"`
12393}
12394
12395func (s *GoogleCloudDialogflowV2IntentParameter) MarshalJSON() ([]byte, error) {
12396	type NoMethod GoogleCloudDialogflowV2IntentParameter
12397	raw := NoMethod(*s)
12398	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12399}
12400
12401// GoogleCloudDialogflowV2IntentTrainingPhrase: Represents an example
12402// that the agent is trained on.
12403type GoogleCloudDialogflowV2IntentTrainingPhrase struct {
12404	// Name: Output only. The unique identifier of this training phrase.
12405	Name string `json:"name,omitempty"`
12406
12407	// Parts: Required. The ordered list of training phrase parts. The parts
12408	// are concatenated in order to form the training phrase. Note: The API
12409	// does not automatically annotate training phrases like the Dialogflow
12410	// Console does. Note: Do not forget to include whitespace at part
12411	// boundaries, so the training phrase is well formatted when the parts
12412	// are concatenated. If the training phrase does not need to be
12413	// annotated with parameters, you just need a single part with only the
12414	// Part.text field set. If you want to annotate the training phrase, you
12415	// must create multiple parts, where the fields of each part are
12416	// populated in one of two ways: - `Part.text` is set to a part of the
12417	// phrase that has no parameters. - `Part.text` is set to a part of the
12418	// phrase that you want to annotate, and the `entity_type`, `alias`, and
12419	// `user_defined` fields are all set.
12420	Parts []*GoogleCloudDialogflowV2IntentTrainingPhrasePart `json:"parts,omitempty"`
12421
12422	// TimesAddedCount: Optional. Indicates how many times this example was
12423	// added to the intent. Each time a developer adds an existing sample by
12424	// editing an intent or training, this counter is increased.
12425	TimesAddedCount int64 `json:"timesAddedCount,omitempty"`
12426
12427	// Type: Required. The type of the training phrase.
12428	//
12429	// Possible values:
12430	//   "TYPE_UNSPECIFIED" - Not specified. This value should never be
12431	// used.
12432	//   "EXAMPLE" - Examples do not contain @-prefixed entity type names,
12433	// but example parts can be annotated with entity types.
12434	//   "TEMPLATE" - Templates are not annotated with entity types, but
12435	// they can contain @-prefixed entity type names as substrings. Template
12436	// mode has been deprecated. Example mode is the only supported way to
12437	// create new training phrases. If you have existing training phrases
12438	// that you've created in template mode, those will continue to work.
12439	Type string `json:"type,omitempty"`
12440
12441	// ForceSendFields is a list of field names (e.g. "Name") to
12442	// unconditionally include in API requests. By default, fields with
12443	// empty or default values are omitted from API requests. However, any
12444	// non-pointer, non-interface field appearing in ForceSendFields will be
12445	// sent to the server regardless of whether the field is empty or not.
12446	// This may be used to include empty fields in Patch requests.
12447	ForceSendFields []string `json:"-"`
12448
12449	// NullFields is a list of field names (e.g. "Name") to include in API
12450	// requests with the JSON null value. By default, fields with empty
12451	// values are omitted from API requests. However, any field with an
12452	// empty value appearing in NullFields will be sent to the server as
12453	// null. It is an error if a field in this list has a non-empty value.
12454	// This may be used to include null fields in Patch requests.
12455	NullFields []string `json:"-"`
12456}
12457
12458func (s *GoogleCloudDialogflowV2IntentTrainingPhrase) MarshalJSON() ([]byte, error) {
12459	type NoMethod GoogleCloudDialogflowV2IntentTrainingPhrase
12460	raw := NoMethod(*s)
12461	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12462}
12463
12464// GoogleCloudDialogflowV2IntentTrainingPhrasePart: Represents a part of
12465// a training phrase.
12466type GoogleCloudDialogflowV2IntentTrainingPhrasePart struct {
12467	// Alias: Optional. The parameter name for the value extracted from the
12468	// annotated part of the example. This field is required for annotated
12469	// parts of the training phrase.
12470	Alias string `json:"alias,omitempty"`
12471
12472	// EntityType: Optional. The entity type name prefixed with `@`. This
12473	// field is required for annotated parts of the training phrase.
12474	EntityType string `json:"entityType,omitempty"`
12475
12476	// Text: Required. The text for this part.
12477	Text string `json:"text,omitempty"`
12478
12479	// UserDefined: Optional. Indicates whether the text was manually
12480	// annotated. This field is set to true when the Dialogflow Console is
12481	// used to manually annotate the part. When creating an annotated part
12482	// with the API, you must set this to true.
12483	UserDefined bool `json:"userDefined,omitempty"`
12484
12485	// ForceSendFields is a list of field names (e.g. "Alias") to
12486	// unconditionally include in API requests. By default, fields with
12487	// empty or default values are omitted from API requests. However, any
12488	// non-pointer, non-interface field appearing in ForceSendFields will be
12489	// sent to the server regardless of whether the field is empty or not.
12490	// This may be used to include empty fields in Patch requests.
12491	ForceSendFields []string `json:"-"`
12492
12493	// NullFields is a list of field names (e.g. "Alias") to include in API
12494	// requests with the JSON null value. By default, fields with empty
12495	// values are omitted from API requests. However, any field with an
12496	// empty value appearing in NullFields will be sent to the server as
12497	// null. It is an error if a field in this list has a non-empty value.
12498	// This may be used to include null fields in Patch requests.
12499	NullFields []string `json:"-"`
12500}
12501
12502func (s *GoogleCloudDialogflowV2IntentTrainingPhrasePart) MarshalJSON() ([]byte, error) {
12503	type NoMethod GoogleCloudDialogflowV2IntentTrainingPhrasePart
12504	raw := NoMethod(*s)
12505	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12506}
12507
12508// GoogleCloudDialogflowV2KnowledgeOperationMetadata: Metadata in
12509// google::longrunning::Operation for Knowledge operations.
12510type GoogleCloudDialogflowV2KnowledgeOperationMetadata struct {
12511	// State: Output only. The current state of this operation.
12512	//
12513	// Possible values:
12514	//   "STATE_UNSPECIFIED" - State unspecified.
12515	//   "PENDING" - The operation has been created.
12516	//   "RUNNING" - The operation is currently running.
12517	//   "DONE" - The operation is done, either cancelled or completed.
12518	State string `json:"state,omitempty"`
12519
12520	// ForceSendFields is a list of field names (e.g. "State") to
12521	// unconditionally include in API requests. By default, fields with
12522	// empty or default values are omitted from API requests. However, any
12523	// non-pointer, non-interface field appearing in ForceSendFields will be
12524	// sent to the server regardless of whether the field is empty or not.
12525	// This may be used to include empty fields in Patch requests.
12526	ForceSendFields []string `json:"-"`
12527
12528	// NullFields is a list of field names (e.g. "State") to include in API
12529	// requests with the JSON null value. By default, fields with empty
12530	// values are omitted from API requests. However, any field with an
12531	// empty value appearing in NullFields will be sent to the server as
12532	// null. It is an error if a field in this list has a non-empty value.
12533	// This may be used to include null fields in Patch requests.
12534	NullFields []string `json:"-"`
12535}
12536
12537func (s *GoogleCloudDialogflowV2KnowledgeOperationMetadata) MarshalJSON() ([]byte, error) {
12538	type NoMethod GoogleCloudDialogflowV2KnowledgeOperationMetadata
12539	raw := NoMethod(*s)
12540	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12541}
12542
12543// GoogleCloudDialogflowV2Message: Represents a message posted into a
12544// conversation.
12545type GoogleCloudDialogflowV2Message struct {
12546	// Content: Required. The message content.
12547	Content string `json:"content,omitempty"`
12548
12549	// CreateTime: Output only. The time when the message was created.
12550	CreateTime string `json:"createTime,omitempty"`
12551
12552	// LanguageCode: Optional. The message language. This should be a BCP-47
12553	// (https://www.rfc-editor.org/rfc/bcp/bcp47.txt) language tag. Example:
12554	// "en-US".
12555	LanguageCode string `json:"languageCode,omitempty"`
12556
12557	// MessageAnnotation: Output only. The annotation for the message.
12558	MessageAnnotation *GoogleCloudDialogflowV2MessageAnnotation `json:"messageAnnotation,omitempty"`
12559
12560	// Name: The unique identifier of the message. Format:
12561	// `projects//locations//conversations//messages/`.
12562	Name string `json:"name,omitempty"`
12563
12564	// Participant: Output only. The participant that sends this message.
12565	Participant string `json:"participant,omitempty"`
12566
12567	// ParticipantRole: Output only. The role of the participant.
12568	//
12569	// Possible values:
12570	//   "ROLE_UNSPECIFIED" - Participant role not set.
12571	//   "HUMAN_AGENT" - Participant is a human agent.
12572	//   "AUTOMATED_AGENT" - Participant is an automated agent, such as a
12573	// Dialogflow agent.
12574	//   "END_USER" - Participant is an end user that has called or chatted
12575	// with Dialogflow services.
12576	ParticipantRole string `json:"participantRole,omitempty"`
12577
12578	// ForceSendFields is a list of field names (e.g. "Content") to
12579	// unconditionally include in API requests. By default, fields with
12580	// empty or default values are omitted from API requests. However, any
12581	// non-pointer, non-interface field appearing in ForceSendFields will be
12582	// sent to the server regardless of whether the field is empty or not.
12583	// This may be used to include empty fields in Patch requests.
12584	ForceSendFields []string `json:"-"`
12585
12586	// NullFields is a list of field names (e.g. "Content") to include in
12587	// API requests with the JSON null value. By default, fields with empty
12588	// values are omitted from API requests. However, any field with an
12589	// empty value appearing in NullFields will be sent to the server as
12590	// null. It is an error if a field in this list has a non-empty value.
12591	// This may be used to include null fields in Patch requests.
12592	NullFields []string `json:"-"`
12593}
12594
12595func (s *GoogleCloudDialogflowV2Message) MarshalJSON() ([]byte, error) {
12596	type NoMethod GoogleCloudDialogflowV2Message
12597	raw := NoMethod(*s)
12598	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12599}
12600
12601// GoogleCloudDialogflowV2MessageAnnotation: Represents the result of
12602// annotation for the message.
12603type GoogleCloudDialogflowV2MessageAnnotation struct {
12604	// ContainEntities: Indicates whether the text message contains
12605	// entities.
12606	ContainEntities bool `json:"containEntities,omitempty"`
12607
12608	// Parts: The collection of annotated message parts ordered by their
12609	// position in the message. You can recover the annotated message by
12610	// concatenating [AnnotatedMessagePart.text].
12611	Parts []*GoogleCloudDialogflowV2AnnotatedMessagePart `json:"parts,omitempty"`
12612
12613	// ForceSendFields is a list of field names (e.g. "ContainEntities") to
12614	// unconditionally include in API requests. By default, fields with
12615	// empty or default values are omitted from API requests. However, any
12616	// non-pointer, non-interface field appearing in ForceSendFields will be
12617	// sent to the server regardless of whether the field is empty or not.
12618	// This may be used to include empty fields in Patch requests.
12619	ForceSendFields []string `json:"-"`
12620
12621	// NullFields is a list of field names (e.g. "ContainEntities") to
12622	// include in API requests with the JSON null value. By default, fields
12623	// with empty values are omitted from API requests. However, any field
12624	// with an empty value appearing in NullFields will be sent to the
12625	// server as null. It is an error if a field in this list has a
12626	// non-empty value. This may be used to include null fields in Patch
12627	// requests.
12628	NullFields []string `json:"-"`
12629}
12630
12631func (s *GoogleCloudDialogflowV2MessageAnnotation) MarshalJSON() ([]byte, error) {
12632	type NoMethod GoogleCloudDialogflowV2MessageAnnotation
12633	raw := NoMethod(*s)
12634	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12635}
12636
12637// GoogleCloudDialogflowV2OriginalDetectIntentRequest: Represents the
12638// contents of the original request that was passed to the
12639// `[Streaming]DetectIntent` call.
12640type GoogleCloudDialogflowV2OriginalDetectIntentRequest struct {
12641	// Payload: Optional. This field is set to the value of the
12642	// `QueryParameters.payload` field passed in the request. Some
12643	// integrations that query a Dialogflow agent may provide additional
12644	// information in the payload. In particular, for the Dialogflow Phone
12645	// Gateway integration, this field has the form: { "telephony": {
12646	// "caller_id": "+18558363987" } } Note: The caller ID field
12647	// (`caller_id`) will be redacted for Trial Edition agents and populated
12648	// with the caller ID in E.164 format
12649	// (https://en.wikipedia.org/wiki/E.164) for Essentials Edition agents.
12650	Payload googleapi.RawMessage `json:"payload,omitempty"`
12651
12652	// Source: The source of this request, e.g., `google`, `facebook`,
12653	// `slack`. It is set by Dialogflow-owned servers.
12654	Source string `json:"source,omitempty"`
12655
12656	// Version: Optional. The version of the protocol used for this request.
12657	// This field is AoG-specific.
12658	Version string `json:"version,omitempty"`
12659
12660	// ForceSendFields is a list of field names (e.g. "Payload") to
12661	// unconditionally include in API requests. By default, fields with
12662	// empty or default values are omitted from API requests. However, any
12663	// non-pointer, non-interface field appearing in ForceSendFields will be
12664	// sent to the server regardless of whether the field is empty or not.
12665	// This may be used to include empty fields in Patch requests.
12666	ForceSendFields []string `json:"-"`
12667
12668	// NullFields is a list of field names (e.g. "Payload") to include in
12669	// API requests with the JSON null value. By default, fields with empty
12670	// values are omitted from API requests. However, any field with an
12671	// empty value appearing in NullFields will be sent to the server as
12672	// null. It is an error if a field in this list has a non-empty value.
12673	// This may be used to include null fields in Patch requests.
12674	NullFields []string `json:"-"`
12675}
12676
12677func (s *GoogleCloudDialogflowV2OriginalDetectIntentRequest) MarshalJSON() ([]byte, error) {
12678	type NoMethod GoogleCloudDialogflowV2OriginalDetectIntentRequest
12679	raw := NoMethod(*s)
12680	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12681}
12682
12683// GoogleCloudDialogflowV2QueryResult: Represents the result of
12684// conversational query or event processing.
12685type GoogleCloudDialogflowV2QueryResult struct {
12686	// Action: The action name from the matched intent.
12687	Action string `json:"action,omitempty"`
12688
12689	// AllRequiredParamsPresent: This field is set to: - `false` if the
12690	// matched intent has required parameters and not all of the required
12691	// parameter values have been collected. - `true` if all required
12692	// parameter values have been collected, or if the matched intent
12693	// doesn't contain any required parameters.
12694	AllRequiredParamsPresent bool `json:"allRequiredParamsPresent,omitempty"`
12695
12696	// CancelsSlotFilling: Indicates whether the conversational query
12697	// triggers a cancellation for slot filling.
12698	CancelsSlotFilling bool `json:"cancelsSlotFilling,omitempty"`
12699
12700	// DiagnosticInfo: Free-form diagnostic information for the associated
12701	// detect intent request. The fields of this data can change without
12702	// notice, so you should not write code that depends on its structure.
12703	// The data may contain: - webhook call latency - webhook errors
12704	DiagnosticInfo googleapi.RawMessage `json:"diagnosticInfo,omitempty"`
12705
12706	// FulfillmentMessages: The collection of rich messages to present to
12707	// the user.
12708	FulfillmentMessages []*GoogleCloudDialogflowV2IntentMessage `json:"fulfillmentMessages,omitempty"`
12709
12710	// FulfillmentText: The text to be pronounced to the user or shown on
12711	// the screen. Note: This is a legacy field, `fulfillment_messages`
12712	// should be preferred.
12713	FulfillmentText string `json:"fulfillmentText,omitempty"`
12714
12715	// Intent: The intent that matched the conversational query. Some, not
12716	// all fields are filled in this message, including but not limited to:
12717	// `name`, `display_name`, `end_interaction` and `is_fallback`.
12718	Intent *GoogleCloudDialogflowV2Intent `json:"intent,omitempty"`
12719
12720	// IntentDetectionConfidence: The intent detection confidence. Values
12721	// range from 0.0 (completely uncertain) to 1.0 (completely certain).
12722	// This value is for informational purpose only and is only used to help
12723	// match the best intent within the classification threshold. This value
12724	// may change for the same end-user expression at any time due to a
12725	// model retraining or change in implementation. If there are `multiple
12726	// knowledge_answers` messages, this value is set to the greatest
12727	// `knowledgeAnswers.match_confidence` value in the list.
12728	IntentDetectionConfidence float64 `json:"intentDetectionConfidence,omitempty"`
12729
12730	// LanguageCode: The language that was triggered during intent
12731	// detection. See Language Support
12732	// (https://cloud.google.com/dialogflow/docs/reference/language) for a
12733	// list of the currently supported language codes.
12734	LanguageCode string `json:"languageCode,omitempty"`
12735
12736	// OutputContexts: The collection of output contexts. If applicable,
12737	// `output_contexts.parameters` contains entries with name `.original`
12738	// containing the original parameter values before the query.
12739	OutputContexts []*GoogleCloudDialogflowV2Context `json:"outputContexts,omitempty"`
12740
12741	// Parameters: The collection of extracted parameters. Depending on your
12742	// protocol or client library language, this is a map, associative
12743	// array, symbol table, dictionary, or JSON object composed of a
12744	// collection of (MapKey, MapValue) pairs: - MapKey type: string -
12745	// MapKey value: parameter name - MapValue type: - If parameter's entity
12746	// type is a composite entity: map - Else: depending on parameter value
12747	// type, could be one of string, number, boolean, null, list or map -
12748	// MapValue value: - If parameter's entity type is a composite entity:
12749	// map from composite entity property names to property values - Else:
12750	// parameter value
12751	Parameters googleapi.RawMessage `json:"parameters,omitempty"`
12752
12753	// QueryText: The original conversational query text: - If natural
12754	// language text was provided as input, `query_text` contains a copy of
12755	// the input. - If natural language speech audio was provided as input,
12756	// `query_text` contains the speech recognition result. If speech
12757	// recognizer produced multiple alternatives, a particular one is
12758	// picked. - If automatic spell correction is enabled, `query_text` will
12759	// contain the corrected user input.
12760	QueryText string `json:"queryText,omitempty"`
12761
12762	// SentimentAnalysisResult: The sentiment analysis result, which depends
12763	// on the `sentiment_analysis_request_config` specified in the request.
12764	SentimentAnalysisResult *GoogleCloudDialogflowV2SentimentAnalysisResult `json:"sentimentAnalysisResult,omitempty"`
12765
12766	// SpeechRecognitionConfidence: The Speech recognition confidence
12767	// between 0.0 and 1.0. A higher number indicates an estimated greater
12768	// likelihood that the recognized words are correct. The default of 0.0
12769	// is a sentinel value indicating that confidence was not set. This
12770	// field is not guaranteed to be accurate or set. In particular this
12771	// field isn't set for StreamingDetectIntent since the streaming
12772	// endpoint has separate confidence estimates per portion of the audio
12773	// in StreamingRecognitionResult.
12774	SpeechRecognitionConfidence float64 `json:"speechRecognitionConfidence,omitempty"`
12775
12776	// WebhookPayload: If the query was fulfilled by a webhook call, this
12777	// field is set to the value of the `payload` field returned in the
12778	// webhook response.
12779	WebhookPayload googleapi.RawMessage `json:"webhookPayload,omitempty"`
12780
12781	// WebhookSource: If the query was fulfilled by a webhook call, this
12782	// field is set to the value of the `source` field returned in the
12783	// webhook response.
12784	WebhookSource string `json:"webhookSource,omitempty"`
12785
12786	// ForceSendFields is a list of field names (e.g. "Action") to
12787	// unconditionally include in API requests. By default, fields with
12788	// empty or default values are omitted from API requests. However, any
12789	// non-pointer, non-interface field appearing in ForceSendFields will be
12790	// sent to the server regardless of whether the field is empty or not.
12791	// This may be used to include empty fields in Patch requests.
12792	ForceSendFields []string `json:"-"`
12793
12794	// NullFields is a list of field names (e.g. "Action") to include in API
12795	// requests with the JSON null value. By default, fields with empty
12796	// values are omitted from API requests. However, any field with an
12797	// empty value appearing in NullFields will be sent to the server as
12798	// null. It is an error if a field in this list has a non-empty value.
12799	// This may be used to include null fields in Patch requests.
12800	NullFields []string `json:"-"`
12801}
12802
12803func (s *GoogleCloudDialogflowV2QueryResult) MarshalJSON() ([]byte, error) {
12804	type NoMethod GoogleCloudDialogflowV2QueryResult
12805	raw := NoMethod(*s)
12806	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12807}
12808
12809func (s *GoogleCloudDialogflowV2QueryResult) UnmarshalJSON(data []byte) error {
12810	type NoMethod GoogleCloudDialogflowV2QueryResult
12811	var s1 struct {
12812		IntentDetectionConfidence   gensupport.JSONFloat64 `json:"intentDetectionConfidence"`
12813		SpeechRecognitionConfidence gensupport.JSONFloat64 `json:"speechRecognitionConfidence"`
12814		*NoMethod
12815	}
12816	s1.NoMethod = (*NoMethod)(s)
12817	if err := json.Unmarshal(data, &s1); err != nil {
12818		return err
12819	}
12820	s.IntentDetectionConfidence = float64(s1.IntentDetectionConfidence)
12821	s.SpeechRecognitionConfidence = float64(s1.SpeechRecognitionConfidence)
12822	return nil
12823}
12824
12825// GoogleCloudDialogflowV2Sentiment: The sentiment, such as
12826// positive/negative feeling or association, for a unit of analysis,
12827// such as the query text.
12828type GoogleCloudDialogflowV2Sentiment struct {
12829	// Magnitude: A non-negative number in the [0, +inf) range, which
12830	// represents the absolute magnitude of sentiment, regardless of score
12831	// (positive or negative).
12832	Magnitude float64 `json:"magnitude,omitempty"`
12833
12834	// Score: Sentiment score between -1.0 (negative sentiment) and 1.0
12835	// (positive sentiment).
12836	Score float64 `json:"score,omitempty"`
12837
12838	// ForceSendFields is a list of field names (e.g. "Magnitude") to
12839	// unconditionally include in API requests. By default, fields with
12840	// empty or default values are omitted from API requests. However, any
12841	// non-pointer, non-interface field appearing in ForceSendFields will be
12842	// sent to the server regardless of whether the field is empty or not.
12843	// This may be used to include empty fields in Patch requests.
12844	ForceSendFields []string `json:"-"`
12845
12846	// NullFields is a list of field names (e.g. "Magnitude") to include in
12847	// API requests with the JSON null value. By default, fields with empty
12848	// values are omitted from API requests. However, any field with an
12849	// empty value appearing in NullFields will be sent to the server as
12850	// null. It is an error if a field in this list has a non-empty value.
12851	// This may be used to include null fields in Patch requests.
12852	NullFields []string `json:"-"`
12853}
12854
12855func (s *GoogleCloudDialogflowV2Sentiment) MarshalJSON() ([]byte, error) {
12856	type NoMethod GoogleCloudDialogflowV2Sentiment
12857	raw := NoMethod(*s)
12858	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12859}
12860
12861func (s *GoogleCloudDialogflowV2Sentiment) UnmarshalJSON(data []byte) error {
12862	type NoMethod GoogleCloudDialogflowV2Sentiment
12863	var s1 struct {
12864		Magnitude gensupport.JSONFloat64 `json:"magnitude"`
12865		Score     gensupport.JSONFloat64 `json:"score"`
12866		*NoMethod
12867	}
12868	s1.NoMethod = (*NoMethod)(s)
12869	if err := json.Unmarshal(data, &s1); err != nil {
12870		return err
12871	}
12872	s.Magnitude = float64(s1.Magnitude)
12873	s.Score = float64(s1.Score)
12874	return nil
12875}
12876
12877// GoogleCloudDialogflowV2SentimentAnalysisResult: The result of
12878// sentiment analysis. Sentiment analysis inspects user input and
12879// identifies the prevailing subjective opinion, especially to determine
12880// a user's attitude as positive, negative, or neutral. For
12881// Participants.DetectIntent, it needs to be configured in
12882// DetectIntentRequest.query_params. For
12883// Participants.StreamingDetectIntent, it needs to be configured in
12884// StreamingDetectIntentRequest.query_params. And for
12885// Participants.AnalyzeContent and Participants.StreamingAnalyzeContent,
12886// it needs to be configured in
12887// ConversationProfile.human_agent_assistant_config
12888type GoogleCloudDialogflowV2SentimentAnalysisResult struct {
12889	// QueryTextSentiment: The sentiment analysis result for `query_text`.
12890	QueryTextSentiment *GoogleCloudDialogflowV2Sentiment `json:"queryTextSentiment,omitempty"`
12891
12892	// ForceSendFields is a list of field names (e.g. "QueryTextSentiment")
12893	// to unconditionally include in API requests. By default, fields with
12894	// empty or default values are omitted from API requests. However, any
12895	// non-pointer, non-interface field appearing in ForceSendFields will be
12896	// sent to the server regardless of whether the field is empty or not.
12897	// This may be used to include empty fields in Patch requests.
12898	ForceSendFields []string `json:"-"`
12899
12900	// NullFields is a list of field names (e.g. "QueryTextSentiment") to
12901	// include in API requests with the JSON null value. By default, fields
12902	// with empty values are omitted from API requests. However, any field
12903	// with an empty value appearing in NullFields will be sent to the
12904	// server as null. It is an error if a field in this list has a
12905	// non-empty value. This may be used to include null fields in Patch
12906	// requests.
12907	NullFields []string `json:"-"`
12908}
12909
12910func (s *GoogleCloudDialogflowV2SentimentAnalysisResult) MarshalJSON() ([]byte, error) {
12911	type NoMethod GoogleCloudDialogflowV2SentimentAnalysisResult
12912	raw := NoMethod(*s)
12913	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12914}
12915
12916// GoogleCloudDialogflowV2SessionEntityType: A session represents a
12917// conversation between a Dialogflow agent and an end-user. You can
12918// create special entities, called session entities, during a session.
12919// Session entities can extend or replace custom entity types and only
12920// exist during the session that they were created for. All session
12921// data, including session entities, is stored by Dialogflow for 20
12922// minutes. For more information, see the session entity guide
12923// (https://cloud.google.com/dialogflow/docs/entities-session).
12924type GoogleCloudDialogflowV2SessionEntityType struct {
12925	// Entities: Required. The collection of entities associated with this
12926	// session entity type.
12927	Entities []*GoogleCloudDialogflowV2EntityTypeEntity `json:"entities,omitempty"`
12928
12929	// EntityOverrideMode: Required. Indicates whether the additional data
12930	// should override or supplement the custom entity type definition.
12931	//
12932	// Possible values:
12933	//   "ENTITY_OVERRIDE_MODE_UNSPECIFIED" - Not specified. This value
12934	// should be never used.
12935	//   "ENTITY_OVERRIDE_MODE_OVERRIDE" - The collection of session
12936	// entities overrides the collection of entities in the corresponding
12937	// custom entity type.
12938	//   "ENTITY_OVERRIDE_MODE_SUPPLEMENT" - The collection of session
12939	// entities extends the collection of entities in the corresponding
12940	// custom entity type. Note: Even in this override mode calls to
12941	// `ListSessionEntityTypes`, `GetSessionEntityType`,
12942	// `CreateSessionEntityType` and `UpdateSessionEntityType` only return
12943	// the additional entities added in this session entity type. If you
12944	// want to get the supplemented list, please call
12945	// EntityTypes.GetEntityType on the custom entity type and merge.
12946	EntityOverrideMode string `json:"entityOverrideMode,omitempty"`
12947
12948	// Name: Required. The unique identifier of this session entity type.
12949	// Format: `projects//agent/sessions//entityTypes/`, or
12950	// `projects//agent/environments//users//sessions//entityTypes/`. If
12951	// `Environment ID` is not specified, we assume default 'draft'
12952	// environment. If `User ID` is not specified, we assume default '-'
12953	// user. `` must be the display name of an existing entity type in the
12954	// same agent that will be overridden or supplemented.
12955	Name string `json:"name,omitempty"`
12956
12957	// ForceSendFields is a list of field names (e.g. "Entities") to
12958	// unconditionally include in API requests. By default, fields with
12959	// empty or default values are omitted from API requests. However, any
12960	// non-pointer, non-interface field appearing in ForceSendFields will be
12961	// sent to the server regardless of whether the field is empty or not.
12962	// This may be used to include empty fields in Patch requests.
12963	ForceSendFields []string `json:"-"`
12964
12965	// NullFields is a list of field names (e.g. "Entities") to include in
12966	// API requests with the JSON null value. By default, fields with empty
12967	// values are omitted from API requests. However, any field with an
12968	// empty value appearing in NullFields will be sent to the server as
12969	// null. It is an error if a field in this list has a non-empty value.
12970	// This may be used to include null fields in Patch requests.
12971	NullFields []string `json:"-"`
12972}
12973
12974func (s *GoogleCloudDialogflowV2SessionEntityType) MarshalJSON() ([]byte, error) {
12975	type NoMethod GoogleCloudDialogflowV2SessionEntityType
12976	raw := NoMethod(*s)
12977	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12978}
12979
12980// GoogleCloudDialogflowV2SuggestArticlesResponse: The response message
12981// for Participants.SuggestArticles.
12982type GoogleCloudDialogflowV2SuggestArticlesResponse struct {
12983	// ArticleAnswers: Articles ordered by score in descending order.
12984	ArticleAnswers []*GoogleCloudDialogflowV2ArticleAnswer `json:"articleAnswers,omitempty"`
12985
12986	// ContextSize: Number of messages prior to and including latest_message
12987	// to compile the suggestion. It may be smaller than the
12988	// SuggestArticlesRequest.context_size field in the request if there
12989	// aren't that many messages in the conversation.
12990	ContextSize int64 `json:"contextSize,omitempty"`
12991
12992	// LatestMessage: The name of the latest conversation message used to
12993	// compile suggestion for. Format:
12994	// `projects//locations//conversations//messages/`.
12995	LatestMessage string `json:"latestMessage,omitempty"`
12996
12997	// ForceSendFields is a list of field names (e.g. "ArticleAnswers") to
12998	// unconditionally include in API requests. By default, fields with
12999	// empty or default values are omitted from API requests. However, any
13000	// non-pointer, non-interface field appearing in ForceSendFields will be
13001	// sent to the server regardless of whether the field is empty or not.
13002	// This may be used to include empty fields in Patch requests.
13003	ForceSendFields []string `json:"-"`
13004
13005	// NullFields is a list of field names (e.g. "ArticleAnswers") to
13006	// include in API requests with the JSON null value. By default, fields
13007	// with empty values are omitted from API requests. However, any field
13008	// with an empty value appearing in NullFields will be sent to the
13009	// server as null. It is an error if a field in this list has a
13010	// non-empty value. This may be used to include null fields in Patch
13011	// requests.
13012	NullFields []string `json:"-"`
13013}
13014
13015func (s *GoogleCloudDialogflowV2SuggestArticlesResponse) MarshalJSON() ([]byte, error) {
13016	type NoMethod GoogleCloudDialogflowV2SuggestArticlesResponse
13017	raw := NoMethod(*s)
13018	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13019}
13020
13021// GoogleCloudDialogflowV2SuggestFaqAnswersResponse: The request message
13022// for Participants.SuggestFaqAnswers.
13023type GoogleCloudDialogflowV2SuggestFaqAnswersResponse struct {
13024	// ContextSize: Number of messages prior to and including latest_message
13025	// to compile the suggestion. It may be smaller than the
13026	// SuggestFaqAnswersRequest.context_size field in the request if there
13027	// aren't that many messages in the conversation.
13028	ContextSize int64 `json:"contextSize,omitempty"`
13029
13030	// FaqAnswers: Answers extracted from FAQ documents.
13031	FaqAnswers []*GoogleCloudDialogflowV2FaqAnswer `json:"faqAnswers,omitempty"`
13032
13033	// LatestMessage: The name of the latest conversation message used to
13034	// compile suggestion for. Format:
13035	// `projects//locations//conversations//messages/`.
13036	LatestMessage string `json:"latestMessage,omitempty"`
13037
13038	// ForceSendFields is a list of field names (e.g. "ContextSize") to
13039	// unconditionally include in API requests. By default, fields with
13040	// empty or default values are omitted from API requests. However, any
13041	// non-pointer, non-interface field appearing in ForceSendFields will be
13042	// sent to the server regardless of whether the field is empty or not.
13043	// This may be used to include empty fields in Patch requests.
13044	ForceSendFields []string `json:"-"`
13045
13046	// NullFields is a list of field names (e.g. "ContextSize") to include
13047	// in API requests with the JSON null value. By default, fields with
13048	// empty values are omitted from API requests. However, any field with
13049	// an empty value appearing in NullFields will be sent to the server as
13050	// null. It is an error if a field in this list has a non-empty value.
13051	// This may be used to include null fields in Patch requests.
13052	NullFields []string `json:"-"`
13053}
13054
13055func (s *GoogleCloudDialogflowV2SuggestFaqAnswersResponse) MarshalJSON() ([]byte, error) {
13056	type NoMethod GoogleCloudDialogflowV2SuggestFaqAnswersResponse
13057	raw := NoMethod(*s)
13058	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13059}
13060
13061// GoogleCloudDialogflowV2SuggestionResult: One response of different
13062// type of suggestion response which is used in the response of
13063// Participants.AnalyzeContent and Participants.AnalyzeContent, as well
13064// as HumanAgentAssistantEvent.
13065type GoogleCloudDialogflowV2SuggestionResult struct {
13066	// Error: Error status if the request failed.
13067	Error *GoogleRpcStatus `json:"error,omitempty"`
13068
13069	// SuggestArticlesResponse: SuggestArticlesResponse if request is for
13070	// ARTICLE_SUGGESTION.
13071	SuggestArticlesResponse *GoogleCloudDialogflowV2SuggestArticlesResponse `json:"suggestArticlesResponse,omitempty"`
13072
13073	// SuggestFaqAnswersResponse: SuggestFaqAnswersResponse if request is
13074	// for FAQ_ANSWER.
13075	SuggestFaqAnswersResponse *GoogleCloudDialogflowV2SuggestFaqAnswersResponse `json:"suggestFaqAnswersResponse,omitempty"`
13076
13077	// ForceSendFields is a list of field names (e.g. "Error") to
13078	// unconditionally include in API requests. By default, fields with
13079	// empty or default values are omitted from API requests. However, any
13080	// non-pointer, non-interface field appearing in ForceSendFields will be
13081	// sent to the server regardless of whether the field is empty or not.
13082	// This may be used to include empty fields in Patch requests.
13083	ForceSendFields []string `json:"-"`
13084
13085	// NullFields is a list of field names (e.g. "Error") to include in API
13086	// requests with the JSON null value. By default, fields with empty
13087	// values are omitted from API requests. However, any field with an
13088	// empty value appearing in NullFields will be sent to the server as
13089	// null. It is an error if a field in this list has a non-empty value.
13090	// This may be used to include null fields in Patch requests.
13091	NullFields []string `json:"-"`
13092}
13093
13094func (s *GoogleCloudDialogflowV2SuggestionResult) MarshalJSON() ([]byte, error) {
13095	type NoMethod GoogleCloudDialogflowV2SuggestionResult
13096	raw := NoMethod(*s)
13097	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13098}
13099
13100// GoogleCloudDialogflowV2WebhookRequest: The request message for a
13101// webhook call.
13102type GoogleCloudDialogflowV2WebhookRequest struct {
13103	// OriginalDetectIntentRequest: Optional. The contents of the original
13104	// request that was passed to `[Streaming]DetectIntent` call.
13105	OriginalDetectIntentRequest *GoogleCloudDialogflowV2OriginalDetectIntentRequest `json:"originalDetectIntentRequest,omitempty"`
13106
13107	// QueryResult: The result of the conversational query or event
13108	// processing. Contains the same value as
13109	// `[Streaming]DetectIntentResponse.query_result`.
13110	QueryResult *GoogleCloudDialogflowV2QueryResult `json:"queryResult,omitempty"`
13111
13112	// ResponseId: The unique identifier of the response. Contains the same
13113	// value as `[Streaming]DetectIntentResponse.response_id`.
13114	ResponseId string `json:"responseId,omitempty"`
13115
13116	// Session: The unique identifier of detectIntent request session. Can
13117	// be used to identify end-user inside webhook implementation. Format:
13118	// `projects//agent/sessions/`, or
13119	// `projects//agent/environments//users//sessions/`.
13120	Session string `json:"session,omitempty"`
13121
13122	// ForceSendFields is a list of field names (e.g.
13123	// "OriginalDetectIntentRequest") to unconditionally include in API
13124	// requests. By default, fields with empty or default values are omitted
13125	// from API requests. However, any non-pointer, non-interface field
13126	// appearing in ForceSendFields will be sent to the server regardless of
13127	// whether the field is empty or not. This may be used to include empty
13128	// fields in Patch requests.
13129	ForceSendFields []string `json:"-"`
13130
13131	// NullFields is a list of field names (e.g.
13132	// "OriginalDetectIntentRequest") to include in API requests with the
13133	// JSON null value. By default, fields with empty values are omitted
13134	// from API requests. However, any field with an empty value appearing
13135	// in NullFields will be sent to the server as null. It is an error if a
13136	// field in this list has a non-empty value. This may be used to include
13137	// null fields in Patch requests.
13138	NullFields []string `json:"-"`
13139}
13140
13141func (s *GoogleCloudDialogflowV2WebhookRequest) MarshalJSON() ([]byte, error) {
13142	type NoMethod GoogleCloudDialogflowV2WebhookRequest
13143	raw := NoMethod(*s)
13144	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13145}
13146
13147// GoogleCloudDialogflowV2WebhookResponse: The response message for a
13148// webhook call. This response is validated by the Dialogflow server. If
13149// validation fails, an error will be returned in the
13150// QueryResult.diagnostic_info field. Setting JSON fields to an empty
13151// value with the wrong type is a common error. To avoid this error: -
13152// Use "" for empty strings - Use `{}` or `null` for empty objects -
13153// Use `[]` or `null` for empty arrays For more information, see the
13154// Protocol Buffers Language Guide
13155// (https://developers.google.com/protocol-buffers/docs/proto3#json).
13156type GoogleCloudDialogflowV2WebhookResponse struct {
13157	// FollowupEventInput: Optional. Invokes the supplied events. When this
13158	// field is set, Dialogflow ignores the `fulfillment_text`,
13159	// `fulfillment_messages`, and `payload` fields.
13160	FollowupEventInput *GoogleCloudDialogflowV2EventInput `json:"followupEventInput,omitempty"`
13161
13162	// FulfillmentMessages: Optional. The rich response messages intended
13163	// for the end-user. When provided, Dialogflow uses this field to
13164	// populate QueryResult.fulfillment_messages sent to the integration or
13165	// API caller.
13166	FulfillmentMessages []*GoogleCloudDialogflowV2IntentMessage `json:"fulfillmentMessages,omitempty"`
13167
13168	// FulfillmentText: Optional. The text response message intended for the
13169	// end-user. It is recommended to use
13170	// `fulfillment_messages.text.text[0]` instead. When provided,
13171	// Dialogflow uses this field to populate QueryResult.fulfillment_text
13172	// sent to the integration or API caller.
13173	FulfillmentText string `json:"fulfillmentText,omitempty"`
13174
13175	// OutputContexts: Optional. The collection of output contexts that will
13176	// overwrite currently active contexts for the session and reset their
13177	// lifespans. When provided, Dialogflow uses this field to populate
13178	// QueryResult.output_contexts sent to the integration or API caller.
13179	OutputContexts []*GoogleCloudDialogflowV2Context `json:"outputContexts,omitempty"`
13180
13181	// Payload: Optional. This field can be used to pass custom data from
13182	// your webhook to the integration or API caller. Arbitrary JSON objects
13183	// are supported. When provided, Dialogflow uses this field to populate
13184	// QueryResult.webhook_payload sent to the integration or API caller.
13185	// This field is also used by the Google Assistant integration
13186	// (https://cloud.google.com/dialogflow/docs/integrations/aog) for rich
13187	// response messages. See the format definition at Google Assistant
13188	// Dialogflow webhook format
13189	// (https://developers.google.com/assistant/actions/build/json/dialogflow-webhook-json)
13190	Payload googleapi.RawMessage `json:"payload,omitempty"`
13191
13192	// SessionEntityTypes: Optional. Additional session entity types to
13193	// replace or extend developer entity types with. The entity synonyms
13194	// apply to all languages and persist for the session. Setting this data
13195	// from a webhook overwrites the session entity types that have been set
13196	// using `detectIntent`, `streamingDetectIntent` or SessionEntityType
13197	// management methods.
13198	SessionEntityTypes []*GoogleCloudDialogflowV2SessionEntityType `json:"sessionEntityTypes,omitempty"`
13199
13200	// Source: Optional. A custom field used to identify the webhook source.
13201	// Arbitrary strings are supported. When provided, Dialogflow uses this
13202	// field to populate QueryResult.webhook_source sent to the integration
13203	// or API caller.
13204	Source string `json:"source,omitempty"`
13205
13206	// ForceSendFields is a list of field names (e.g. "FollowupEventInput")
13207	// to unconditionally include in API requests. By default, fields with
13208	// empty or default values are omitted from API requests. However, any
13209	// non-pointer, non-interface field appearing in ForceSendFields will be
13210	// sent to the server regardless of whether the field is empty or not.
13211	// This may be used to include empty fields in Patch requests.
13212	ForceSendFields []string `json:"-"`
13213
13214	// NullFields is a list of field names (e.g. "FollowupEventInput") to
13215	// include in API requests with the JSON null value. By default, fields
13216	// with empty values are omitted from API requests. However, any field
13217	// with an empty value appearing in NullFields will be sent to the
13218	// server as null. It is an error if a field in this list has a
13219	// non-empty value. This may be used to include null fields in Patch
13220	// requests.
13221	NullFields []string `json:"-"`
13222}
13223
13224func (s *GoogleCloudDialogflowV2WebhookResponse) MarshalJSON() ([]byte, error) {
13225	type NoMethod GoogleCloudDialogflowV2WebhookResponse
13226	raw := NoMethod(*s)
13227	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13228}
13229
13230// GoogleCloudDialogflowV2beta1AnnotatedMessagePart: Represents a part
13231// of a message possibly annotated with an entity. The part can be an
13232// entity or purely a part of the message between two entities or
13233// message start/end.
13234type GoogleCloudDialogflowV2beta1AnnotatedMessagePart struct {
13235	// EntityType: Optional. The Dialogflow system entity type
13236	// (https://cloud.google.com/dialogflow/docs/reference/system-entities)
13237	// of this message part. If this is empty, Dialogflow could not annotate
13238	// the phrase part with a system entity.
13239	EntityType string `json:"entityType,omitempty"`
13240
13241	// FormattedValue: Optional. The Dialogflow system entity formatted
13242	// value
13243	// (https://cloud.google.com/dialogflow/docs/reference/system-entities)
13244	// of this message part. For example for a system entity of type
13245	// `@sys.unit-currency`, this may contain: { "amount": 5, "currency":
13246	// "USD" }
13247	FormattedValue interface{} `json:"formattedValue,omitempty"`
13248
13249	// Text: Required. A part of a message possibly annotated with an
13250	// entity.
13251	Text string `json:"text,omitempty"`
13252
13253	// ForceSendFields is a list of field names (e.g. "EntityType") to
13254	// unconditionally include in API requests. By default, fields with
13255	// empty or default values are omitted from API requests. However, any
13256	// non-pointer, non-interface field appearing in ForceSendFields will be
13257	// sent to the server regardless of whether the field is empty or not.
13258	// This may be used to include empty fields in Patch requests.
13259	ForceSendFields []string `json:"-"`
13260
13261	// NullFields is a list of field names (e.g. "EntityType") to include in
13262	// API requests with the JSON null value. By default, fields with empty
13263	// values are omitted from API requests. However, any field with an
13264	// empty value appearing in NullFields will be sent to the server as
13265	// null. It is an error if a field in this list has a non-empty value.
13266	// This may be used to include null fields in Patch requests.
13267	NullFields []string `json:"-"`
13268}
13269
13270func (s *GoogleCloudDialogflowV2beta1AnnotatedMessagePart) MarshalJSON() ([]byte, error) {
13271	type NoMethod GoogleCloudDialogflowV2beta1AnnotatedMessagePart
13272	raw := NoMethod(*s)
13273	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13274}
13275
13276// GoogleCloudDialogflowV2beta1ArticleAnswer: Represents article answer.
13277type GoogleCloudDialogflowV2beta1ArticleAnswer struct {
13278	// AnswerRecord: The name of answer record, in the format of
13279	// "projects//locations//answerRecords/"
13280	AnswerRecord string `json:"answerRecord,omitempty"`
13281
13282	// Metadata: A map that contains metadata about the answer and the
13283	// document from which it originates.
13284	Metadata map[string]string `json:"metadata,omitempty"`
13285
13286	// Snippets: Output only. Article snippets.
13287	Snippets []string `json:"snippets,omitempty"`
13288
13289	// Title: The article title.
13290	Title string `json:"title,omitempty"`
13291
13292	// Uri: The article URI.
13293	Uri string `json:"uri,omitempty"`
13294
13295	// ForceSendFields is a list of field names (e.g. "AnswerRecord") to
13296	// unconditionally include in API requests. By default, fields with
13297	// empty or default values are omitted from API requests. However, any
13298	// non-pointer, non-interface field appearing in ForceSendFields will be
13299	// sent to the server regardless of whether the field is empty or not.
13300	// This may be used to include empty fields in Patch requests.
13301	ForceSendFields []string `json:"-"`
13302
13303	// NullFields is a list of field names (e.g. "AnswerRecord") to include
13304	// in API requests with the JSON null value. By default, fields with
13305	// empty values are omitted from API requests. However, any field with
13306	// an empty value appearing in NullFields will be sent to the server as
13307	// null. It is an error if a field in this list has a non-empty value.
13308	// This may be used to include null fields in Patch requests.
13309	NullFields []string `json:"-"`
13310}
13311
13312func (s *GoogleCloudDialogflowV2beta1ArticleAnswer) MarshalJSON() ([]byte, error) {
13313	type NoMethod GoogleCloudDialogflowV2beta1ArticleAnswer
13314	raw := NoMethod(*s)
13315	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13316}
13317
13318// GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse: The
13319// response message for EntityTypes.BatchUpdateEntityTypes.
13320type GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse struct {
13321	// EntityTypes: The collection of updated or created entity types.
13322	EntityTypes []*GoogleCloudDialogflowV2beta1EntityType `json:"entityTypes,omitempty"`
13323
13324	// ForceSendFields is a list of field names (e.g. "EntityTypes") to
13325	// unconditionally include in API requests. By default, fields with
13326	// empty or default values are omitted from API requests. However, any
13327	// non-pointer, non-interface field appearing in ForceSendFields will be
13328	// sent to the server regardless of whether the field is empty or not.
13329	// This may be used to include empty fields in Patch requests.
13330	ForceSendFields []string `json:"-"`
13331
13332	// NullFields is a list of field names (e.g. "EntityTypes") to include
13333	// in API requests with the JSON null value. By default, fields with
13334	// empty values are omitted from API requests. However, any field with
13335	// an empty value appearing in NullFields will be sent to the server as
13336	// null. It is an error if a field in this list has a non-empty value.
13337	// This may be used to include null fields in Patch requests.
13338	NullFields []string `json:"-"`
13339}
13340
13341func (s *GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse) MarshalJSON() ([]byte, error) {
13342	type NoMethod GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse
13343	raw := NoMethod(*s)
13344	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13345}
13346
13347// GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse: The response
13348// message for Intents.BatchUpdateIntents.
13349type GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse struct {
13350	// Intents: The collection of updated or created intents.
13351	Intents []*GoogleCloudDialogflowV2beta1Intent `json:"intents,omitempty"`
13352
13353	// ForceSendFields is a list of field names (e.g. "Intents") to
13354	// unconditionally include in API requests. By default, fields with
13355	// empty or default values are omitted from API requests. However, any
13356	// non-pointer, non-interface field appearing in ForceSendFields will be
13357	// sent to the server regardless of whether the field is empty or not.
13358	// This may be used to include empty fields in Patch requests.
13359	ForceSendFields []string `json:"-"`
13360
13361	// NullFields is a list of field names (e.g. "Intents") to include in
13362	// API requests with the JSON null value. By default, fields with empty
13363	// values are omitted from API requests. However, any field with an
13364	// empty value appearing in NullFields will be sent to the server as
13365	// null. It is an error if a field in this list has a non-empty value.
13366	// This may be used to include null fields in Patch requests.
13367	NullFields []string `json:"-"`
13368}
13369
13370func (s *GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse) MarshalJSON() ([]byte, error) {
13371	type NoMethod GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse
13372	raw := NoMethod(*s)
13373	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13374}
13375
13376// GoogleCloudDialogflowV2beta1Context: Dialogflow contexts are similar
13377// to natural language context. If a person says to you "they are
13378// orange", you need context in order to understand what "they" is
13379// referring to. Similarly, for Dialogflow to handle an end-user
13380// expression like that, it needs to be provided with context in order
13381// to correctly match an intent. Using contexts, you can control the
13382// flow of a conversation. You can configure contexts for an intent by
13383// setting input and output contexts, which are identified by string
13384// names. When an intent is matched, any configured output contexts for
13385// that intent become active. While any contexts are active, Dialogflow
13386// is more likely to match intents that are configured with input
13387// contexts that correspond to the currently active contexts. For more
13388// information about context, see the Contexts guide
13389// (https://cloud.google.com/dialogflow/docs/contexts-overview).
13390type GoogleCloudDialogflowV2beta1Context struct {
13391	// LifespanCount: Optional. The number of conversational query requests
13392	// after which the context expires. The default is `0`. If set to `0`,
13393	// the context expires immediately. Contexts expire automatically after
13394	// 20 minutes if there are no matching queries.
13395	LifespanCount int64 `json:"lifespanCount,omitempty"`
13396
13397	// Name: Required. The unique identifier of the context. Supported
13398	// formats: - `projects//agent/sessions//contexts/`, -
13399	// `projects//locations//agent/sessions//contexts/`, -
13400	// `projects//agent/environments//users//sessions//contexts/`, -
13401	// `projects//locations//agent/environments//users//sessions//contexts/`,
13402	//  The `Context ID` is always converted to lowercase, may only contain
13403	// characters in a-zA-Z0-9_-% and may be at most 250 bytes long. If
13404	// `Environment ID` is not specified, we assume default 'draft'
13405	// environment. If `User ID` is not specified, we assume default '-'
13406	// user. The following context names are reserved for internal use by
13407	// Dialogflow. You should not use these contexts or create contexts with
13408	// these names: * `__system_counters__` * `*_id_dialog_context` *
13409	// `*_dialog_params_size`
13410	Name string `json:"name,omitempty"`
13411
13412	// Parameters: Optional. The collection of parameters associated with
13413	// this context. Depending on your protocol or client library language,
13414	// this is a map, associative array, symbol table, dictionary, or JSON
13415	// object composed of a collection of (MapKey, MapValue) pairs: - MapKey
13416	// type: string - MapKey value: parameter name - MapValue type: - If
13417	// parameter's entity type is a composite entity: map - Else: depending
13418	// on parameter value type, could be one of string, number, boolean,
13419	// null, list or map - MapValue value: - If parameter's entity type is a
13420	// composite entity: map from composite entity property names to
13421	// property values - Else: parameter value
13422	Parameters googleapi.RawMessage `json:"parameters,omitempty"`
13423
13424	// ForceSendFields is a list of field names (e.g. "LifespanCount") to
13425	// unconditionally include in API requests. By default, fields with
13426	// empty or default values are omitted from API requests. However, any
13427	// non-pointer, non-interface field appearing in ForceSendFields will be
13428	// sent to the server regardless of whether the field is empty or not.
13429	// This may be used to include empty fields in Patch requests.
13430	ForceSendFields []string `json:"-"`
13431
13432	// NullFields is a list of field names (e.g. "LifespanCount") to include
13433	// in API requests with the JSON null value. By default, fields with
13434	// empty values are omitted from API requests. However, any field with
13435	// an empty value appearing in NullFields will be sent to the server as
13436	// null. It is an error if a field in this list has a non-empty value.
13437	// This may be used to include null fields in Patch requests.
13438	NullFields []string `json:"-"`
13439}
13440
13441func (s *GoogleCloudDialogflowV2beta1Context) MarshalJSON() ([]byte, error) {
13442	type NoMethod GoogleCloudDialogflowV2beta1Context
13443	raw := NoMethod(*s)
13444	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13445}
13446
13447// GoogleCloudDialogflowV2beta1ConversationEvent: Represents a
13448// notification sent to Pub/Sub subscribers for conversation lifecycle
13449// events.
13450type GoogleCloudDialogflowV2beta1ConversationEvent struct {
13451	// Conversation: Required. The unique identifier of the conversation
13452	// this notification refers to. Format: `projects//conversations/`.
13453	Conversation string `json:"conversation,omitempty"`
13454
13455	// ErrorStatus: Optional. More detailed information about an error. Only
13456	// set for type UNRECOVERABLE_ERROR_IN_PHONE_CALL.
13457	ErrorStatus *GoogleRpcStatus `json:"errorStatus,omitempty"`
13458
13459	// NewMessagePayload: Payload of NEW_MESSAGE event.
13460	NewMessagePayload *GoogleCloudDialogflowV2beta1Message `json:"newMessagePayload,omitempty"`
13461
13462	// Type: Required. The type of the event that this notification refers
13463	// to.
13464	//
13465	// Possible values:
13466	//   "TYPE_UNSPECIFIED" - Type not set.
13467	//   "CONVERSATION_STARTED" - A new conversation has been opened. This
13468	// is fired when a telephone call is answered, or a conversation is
13469	// created via the API.
13470	//   "CONVERSATION_FINISHED" - An existing conversation has closed. This
13471	// is fired when a telephone call is terminated, or a conversation is
13472	// closed via the API.
13473	//   "NEW_MESSAGE" - An existing conversation has received a new
13474	// message, either from API or telephony. It is configured in
13475	// ConversationProfile.new_message_event_notification_config
13476	//   "UNRECOVERABLE_ERROR" - Unrecoverable error during a telephone
13477	// call. In general non-recoverable errors only occur if something was
13478	// misconfigured in the ConversationProfile corresponding to the call.
13479	// After a non-recoverable error, Dialogflow may stop responding. We
13480	// don't fire this event: * in an API call because we can directly
13481	// return the error, or, * when we can recover from an error.
13482	Type string `json:"type,omitempty"`
13483
13484	// ForceSendFields is a list of field names (e.g. "Conversation") to
13485	// unconditionally include in API requests. By default, fields with
13486	// empty or default values are omitted from API requests. However, any
13487	// non-pointer, non-interface field appearing in ForceSendFields will be
13488	// sent to the server regardless of whether the field is empty or not.
13489	// This may be used to include empty fields in Patch requests.
13490	ForceSendFields []string `json:"-"`
13491
13492	// NullFields is a list of field names (e.g. "Conversation") to include
13493	// in API requests with the JSON null value. By default, fields with
13494	// empty values are omitted from API requests. However, any field with
13495	// an empty value appearing in NullFields will be sent to the server as
13496	// null. It is an error if a field in this list has a non-empty value.
13497	// This may be used to include null fields in Patch requests.
13498	NullFields []string `json:"-"`
13499}
13500
13501func (s *GoogleCloudDialogflowV2beta1ConversationEvent) MarshalJSON() ([]byte, error) {
13502	type NoMethod GoogleCloudDialogflowV2beta1ConversationEvent
13503	raw := NoMethod(*s)
13504	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13505}
13506
13507// GoogleCloudDialogflowV2beta1EntityType: Each intent parameter has a
13508// type, called the entity type, which dictates exactly how data from an
13509// end-user expression is extracted. Dialogflow provides predefined
13510// system entities that can match many common types of data. For
13511// example, there are system entities for matching dates, times, colors,
13512// email addresses, and so on. You can also create your own custom
13513// entities for matching custom data. For example, you could define a
13514// vegetable entity that can match the types of vegetables available for
13515// purchase with a grocery store agent. For more information, see the
13516// Entity guide
13517// (https://cloud.google.com/dialogflow/docs/entities-overview).
13518type GoogleCloudDialogflowV2beta1EntityType struct {
13519	// AutoExpansionMode: Optional. Indicates whether the entity type can be
13520	// automatically expanded.
13521	//
13522	// Possible values:
13523	//   "AUTO_EXPANSION_MODE_UNSPECIFIED" - Auto expansion disabled for the
13524	// entity.
13525	//   "AUTO_EXPANSION_MODE_DEFAULT" - Allows an agent to recognize values
13526	// that have not been explicitly listed in the entity.
13527	AutoExpansionMode string `json:"autoExpansionMode,omitempty"`
13528
13529	// DisplayName: Required. The name of the entity type.
13530	DisplayName string `json:"displayName,omitempty"`
13531
13532	// EnableFuzzyExtraction: Optional. Enables fuzzy entity extraction
13533	// during classification.
13534	EnableFuzzyExtraction bool `json:"enableFuzzyExtraction,omitempty"`
13535
13536	// Entities: Optional. The collection of entity entries associated with
13537	// the entity type.
13538	Entities []*GoogleCloudDialogflowV2beta1EntityTypeEntity `json:"entities,omitempty"`
13539
13540	// Kind: Required. Indicates the kind of entity type.
13541	//
13542	// Possible values:
13543	//   "KIND_UNSPECIFIED" - Not specified. This value should be never
13544	// used.
13545	//   "KIND_MAP" - Map entity types allow mapping of a group of synonyms
13546	// to a reference value.
13547	//   "KIND_LIST" - List entity types contain a set of entries that do
13548	// not map to reference values. However, list entity types can contain
13549	// references to other entity types (with or without aliases).
13550	//   "KIND_REGEXP" - Regexp entity types allow to specify regular
13551	// expressions in entries values.
13552	Kind string `json:"kind,omitempty"`
13553
13554	// Name: The unique identifier of the entity type. Required for
13555	// EntityTypes.UpdateEntityType and EntityTypes.BatchUpdateEntityTypes
13556	// methods. Supported formats: - `projects//agent/entityTypes/` -
13557	// `projects//locations//agent/entityTypes/`
13558	Name string `json:"name,omitempty"`
13559
13560	// ForceSendFields is a list of field names (e.g. "AutoExpansionMode")
13561	// to unconditionally include in API requests. By default, fields with
13562	// empty or default values are omitted from API requests. However, any
13563	// non-pointer, non-interface field appearing in ForceSendFields will be
13564	// sent to the server regardless of whether the field is empty or not.
13565	// This may be used to include empty fields in Patch requests.
13566	ForceSendFields []string `json:"-"`
13567
13568	// NullFields is a list of field names (e.g. "AutoExpansionMode") to
13569	// include in API requests with the JSON null value. By default, fields
13570	// with empty values are omitted from API requests. However, any field
13571	// with an empty value appearing in NullFields will be sent to the
13572	// server as null. It is an error if a field in this list has a
13573	// non-empty value. This may be used to include null fields in Patch
13574	// requests.
13575	NullFields []string `json:"-"`
13576}
13577
13578func (s *GoogleCloudDialogflowV2beta1EntityType) MarshalJSON() ([]byte, error) {
13579	type NoMethod GoogleCloudDialogflowV2beta1EntityType
13580	raw := NoMethod(*s)
13581	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13582}
13583
13584// GoogleCloudDialogflowV2beta1EntityTypeEntity: An **entity entry** for
13585// an associated entity type.
13586type GoogleCloudDialogflowV2beta1EntityTypeEntity struct {
13587	// Synonyms: Required. A collection of value synonyms. For example, if
13588	// the entity type is *vegetable*, and `value` is *scallions*, a synonym
13589	// could be *green onions*. For `KIND_LIST` entity types: * This
13590	// collection must contain exactly one synonym equal to `value`.
13591	Synonyms []string `json:"synonyms,omitempty"`
13592
13593	// Value: Required. The primary value associated with this entity entry.
13594	// For example, if the entity type is *vegetable*, the value could be
13595	// *scallions*. For `KIND_MAP` entity types: * A reference value to be
13596	// used in place of synonyms. For `KIND_LIST` entity types: * A string
13597	// that can contain references to other entity types (with or without
13598	// aliases).
13599	Value string `json:"value,omitempty"`
13600
13601	// ForceSendFields is a list of field names (e.g. "Synonyms") to
13602	// unconditionally include in API requests. By default, fields with
13603	// empty or default values are omitted from API requests. However, any
13604	// non-pointer, non-interface field appearing in ForceSendFields will be
13605	// sent to the server regardless of whether the field is empty or not.
13606	// This may be used to include empty fields in Patch requests.
13607	ForceSendFields []string `json:"-"`
13608
13609	// NullFields is a list of field names (e.g. "Synonyms") to include in
13610	// API requests with the JSON null value. By default, fields with empty
13611	// values are omitted from API requests. However, any field with an
13612	// empty value appearing in NullFields will be sent to the server as
13613	// null. It is an error if a field in this list has a non-empty value.
13614	// This may be used to include null fields in Patch requests.
13615	NullFields []string `json:"-"`
13616}
13617
13618func (s *GoogleCloudDialogflowV2beta1EntityTypeEntity) MarshalJSON() ([]byte, error) {
13619	type NoMethod GoogleCloudDialogflowV2beta1EntityTypeEntity
13620	raw := NoMethod(*s)
13621	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13622}
13623
13624// GoogleCloudDialogflowV2beta1EventInput: Events allow for matching
13625// intents by event name instead of the natural language input. For
13626// instance, input `` can trigger a personalized welcome response. The
13627// parameter `name` may be used by the agent in the response: "Hello
13628// #welcome_event.name! What can I do for you today?".
13629type GoogleCloudDialogflowV2beta1EventInput struct {
13630	// LanguageCode: Required. The language of this query. See Language
13631	// Support (https://cloud.google.com/dialogflow/docs/reference/language)
13632	// for a list of the currently supported language codes. Note that
13633	// queries in the same session do not necessarily need to specify the
13634	// same language.
13635	LanguageCode string `json:"languageCode,omitempty"`
13636
13637	// Name: Required. The unique identifier of the event.
13638	Name string `json:"name,omitempty"`
13639
13640	// Parameters: The collection of parameters associated with the event.
13641	// Depending on your protocol or client library language, this is a map,
13642	// associative array, symbol table, dictionary, or JSON object composed
13643	// of a collection of (MapKey, MapValue) pairs: - MapKey type: string -
13644	// MapKey value: parameter name - MapValue type: - If parameter's entity
13645	// type is a composite entity: map - Else: depending on parameter value
13646	// type, could be one of string, number, boolean, null, list or map -
13647	// MapValue value: - If parameter's entity type is a composite entity:
13648	// map from composite entity property names to property values - Else:
13649	// parameter value
13650	Parameters googleapi.RawMessage `json:"parameters,omitempty"`
13651
13652	// ForceSendFields is a list of field names (e.g. "LanguageCode") to
13653	// unconditionally include in API requests. By default, fields with
13654	// empty or default values are omitted from API requests. However, any
13655	// non-pointer, non-interface field appearing in ForceSendFields will be
13656	// sent to the server regardless of whether the field is empty or not.
13657	// This may be used to include empty fields in Patch requests.
13658	ForceSendFields []string `json:"-"`
13659
13660	// NullFields is a list of field names (e.g. "LanguageCode") to include
13661	// in API requests with the JSON null value. By default, fields with
13662	// empty values are omitted from API requests. However, any field with
13663	// an empty value appearing in NullFields will be sent to the server as
13664	// null. It is an error if a field in this list has a non-empty value.
13665	// This may be used to include null fields in Patch requests.
13666	NullFields []string `json:"-"`
13667}
13668
13669func (s *GoogleCloudDialogflowV2beta1EventInput) MarshalJSON() ([]byte, error) {
13670	type NoMethod GoogleCloudDialogflowV2beta1EventInput
13671	raw := NoMethod(*s)
13672	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13673}
13674
13675// GoogleCloudDialogflowV2beta1ExportAgentResponse: The response message
13676// for Agents.ExportAgent.
13677type GoogleCloudDialogflowV2beta1ExportAgentResponse struct {
13678	// AgentContent: Zip compressed raw byte content for agent.
13679	AgentContent string `json:"agentContent,omitempty"`
13680
13681	// AgentUri: The URI to a file containing the exported agent. This field
13682	// is populated only if `agent_uri` is specified in
13683	// `ExportAgentRequest`.
13684	AgentUri string `json:"agentUri,omitempty"`
13685
13686	// ForceSendFields is a list of field names (e.g. "AgentContent") to
13687	// unconditionally include in API requests. By default, fields with
13688	// empty or default values are omitted from API requests. However, any
13689	// non-pointer, non-interface field appearing in ForceSendFields will be
13690	// sent to the server regardless of whether the field is empty or not.
13691	// This may be used to include empty fields in Patch requests.
13692	ForceSendFields []string `json:"-"`
13693
13694	// NullFields is a list of field names (e.g. "AgentContent") to include
13695	// in API requests with the JSON null value. By default, fields with
13696	// empty values are omitted from API requests. However, any field with
13697	// an empty value appearing in NullFields will be sent to the server as
13698	// null. It is an error if a field in this list has a non-empty value.
13699	// This may be used to include null fields in Patch requests.
13700	NullFields []string `json:"-"`
13701}
13702
13703func (s *GoogleCloudDialogflowV2beta1ExportAgentResponse) MarshalJSON() ([]byte, error) {
13704	type NoMethod GoogleCloudDialogflowV2beta1ExportAgentResponse
13705	raw := NoMethod(*s)
13706	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13707}
13708
13709// GoogleCloudDialogflowV2beta1FaqAnswer: Represents answer from
13710// "frequently asked questions".
13711type GoogleCloudDialogflowV2beta1FaqAnswer struct {
13712	// Answer: The piece of text from the `source` knowledge base document.
13713	Answer string `json:"answer,omitempty"`
13714
13715	// AnswerRecord: The name of answer record, in the format of
13716	// "projects//locations//answerRecords/"
13717	AnswerRecord string `json:"answerRecord,omitempty"`
13718
13719	// Confidence: The system's confidence score that this Knowledge answer
13720	// is a good match for this conversational query, range from 0.0
13721	// (completely uncertain) to 1.0 (completely certain).
13722	Confidence float64 `json:"confidence,omitempty"`
13723
13724	// Metadata: A map that contains metadata about the answer and the
13725	// document from which it originates.
13726	Metadata map[string]string `json:"metadata,omitempty"`
13727
13728	// Question: The corresponding FAQ question.
13729	Question string `json:"question,omitempty"`
13730
13731	// Source: Indicates which Knowledge Document this answer was extracted
13732	// from. Format:
13733	// `projects//locations//agent/knowledgeBases//documents/`.
13734	Source string `json:"source,omitempty"`
13735
13736	// ForceSendFields is a list of field names (e.g. "Answer") to
13737	// unconditionally include in API requests. By default, fields with
13738	// empty or default values are omitted from API requests. However, any
13739	// non-pointer, non-interface field appearing in ForceSendFields will be
13740	// sent to the server regardless of whether the field is empty or not.
13741	// This may be used to include empty fields in Patch requests.
13742	ForceSendFields []string `json:"-"`
13743
13744	// NullFields is a list of field names (e.g. "Answer") to include in API
13745	// requests with the JSON null value. By default, fields with empty
13746	// values are omitted from API requests. However, any field with an
13747	// empty value appearing in NullFields will be sent to the server as
13748	// null. It is an error if a field in this list has a non-empty value.
13749	// This may be used to include null fields in Patch requests.
13750	NullFields []string `json:"-"`
13751}
13752
13753func (s *GoogleCloudDialogflowV2beta1FaqAnswer) MarshalJSON() ([]byte, error) {
13754	type NoMethod GoogleCloudDialogflowV2beta1FaqAnswer
13755	raw := NoMethod(*s)
13756	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13757}
13758
13759func (s *GoogleCloudDialogflowV2beta1FaqAnswer) UnmarshalJSON(data []byte) error {
13760	type NoMethod GoogleCloudDialogflowV2beta1FaqAnswer
13761	var s1 struct {
13762		Confidence gensupport.JSONFloat64 `json:"confidence"`
13763		*NoMethod
13764	}
13765	s1.NoMethod = (*NoMethod)(s)
13766	if err := json.Unmarshal(data, &s1); err != nil {
13767		return err
13768	}
13769	s.Confidence = float64(s1.Confidence)
13770	return nil
13771}
13772
13773// GoogleCloudDialogflowV2beta1HumanAgentAssistantEvent: Output only.
13774// Represents a notification sent to Pub/Sub subscribers for agent
13775// assistant events in a specific conversation.
13776type GoogleCloudDialogflowV2beta1HumanAgentAssistantEvent struct {
13777	// Conversation: The conversation this notification refers to. Format:
13778	// `projects//conversations/`.
13779	Conversation string `json:"conversation,omitempty"`
13780
13781	// Participant: The participant that the suggestion is compiled for. And
13782	// This field is used to call Participants.ListSuggestions API. Format:
13783	// `projects//conversations//participants/`. It will not be set in
13784	// legacy workflow. HumanAgentAssistantConfig.name for more information.
13785	Participant string `json:"participant,omitempty"`
13786
13787	// SuggestionResults: The suggestion results payload that this
13788	// notification refers to. It will only be set when
13789	// HumanAgentAssistantConfig.SuggestionConfig.group_suggestion_responses
13790	// sets to true.
13791	SuggestionResults []*GoogleCloudDialogflowV2beta1SuggestionResult `json:"suggestionResults,omitempty"`
13792
13793	// ForceSendFields is a list of field names (e.g. "Conversation") to
13794	// unconditionally include in API requests. By default, fields with
13795	// empty or default values are omitted from API requests. However, any
13796	// non-pointer, non-interface field appearing in ForceSendFields will be
13797	// sent to the server regardless of whether the field is empty or not.
13798	// This may be used to include empty fields in Patch requests.
13799	ForceSendFields []string `json:"-"`
13800
13801	// NullFields is a list of field names (e.g. "Conversation") to include
13802	// in API requests with the JSON null value. By default, fields with
13803	// empty values are omitted from API requests. However, any field with
13804	// an empty value appearing in NullFields will be sent to the server as
13805	// null. It is an error if a field in this list has a non-empty value.
13806	// This may be used to include null fields in Patch requests.
13807	NullFields []string `json:"-"`
13808}
13809
13810func (s *GoogleCloudDialogflowV2beta1HumanAgentAssistantEvent) MarshalJSON() ([]byte, error) {
13811	type NoMethod GoogleCloudDialogflowV2beta1HumanAgentAssistantEvent
13812	raw := NoMethod(*s)
13813	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13814}
13815
13816// GoogleCloudDialogflowV2beta1ImportDocumentsResponse: Response message
13817// for Documents.ImportDocuments.
13818type GoogleCloudDialogflowV2beta1ImportDocumentsResponse struct {
13819	// Warnings: Includes details about skipped documents or any other
13820	// warnings.
13821	Warnings []*GoogleRpcStatus `json:"warnings,omitempty"`
13822
13823	// ForceSendFields is a list of field names (e.g. "Warnings") to
13824	// unconditionally include in API requests. By default, fields with
13825	// empty or default values are omitted from API requests. However, any
13826	// non-pointer, non-interface field appearing in ForceSendFields will be
13827	// sent to the server regardless of whether the field is empty or not.
13828	// This may be used to include empty fields in Patch requests.
13829	ForceSendFields []string `json:"-"`
13830
13831	// NullFields is a list of field names (e.g. "Warnings") to include in
13832	// API requests with the JSON null value. By default, fields with empty
13833	// values are omitted from API requests. However, any field with an
13834	// empty value appearing in NullFields will be sent to the server as
13835	// null. It is an error if a field in this list has a non-empty value.
13836	// This may be used to include null fields in Patch requests.
13837	NullFields []string `json:"-"`
13838}
13839
13840func (s *GoogleCloudDialogflowV2beta1ImportDocumentsResponse) MarshalJSON() ([]byte, error) {
13841	type NoMethod GoogleCloudDialogflowV2beta1ImportDocumentsResponse
13842	raw := NoMethod(*s)
13843	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13844}
13845
13846// GoogleCloudDialogflowV2beta1Intent: An intent categorizes an
13847// end-user's intention for one conversation turn. For each agent, you
13848// define many intents, where your combined intents can handle a
13849// complete conversation. When an end-user writes or says something,
13850// referred to as an end-user expression or end-user input, Dialogflow
13851// matches the end-user input to the best intent in your agent. Matching
13852// an intent is also known as intent classification. For more
13853// information, see the intent guide
13854// (https://cloud.google.com/dialogflow/docs/intents-overview).
13855type GoogleCloudDialogflowV2beta1Intent struct {
13856	// Action: Optional. The name of the action associated with the intent.
13857	// Note: The action name must not contain whitespaces.
13858	Action string `json:"action,omitempty"`
13859
13860	// DefaultResponsePlatforms: Optional. The list of platforms for which
13861	// the first responses will be copied from the messages in
13862	// PLATFORM_UNSPECIFIED (i.e. default platform).
13863	//
13864	// Possible values:
13865	//   "PLATFORM_UNSPECIFIED" - Not specified.
13866	//   "FACEBOOK" - Facebook.
13867	//   "SLACK" - Slack.
13868	//   "TELEGRAM" - Telegram.
13869	//   "KIK" - Kik.
13870	//   "SKYPE" - Skype.
13871	//   "LINE" - Line.
13872	//   "VIBER" - Viber.
13873	//   "ACTIONS_ON_GOOGLE" - Google Assistant See [Dialogflow webhook
13874	// format](https://developers.google.com/assistant/actions/build/json/dia
13875	// logflow-webhook-json)
13876	//   "TELEPHONY" - Telephony Gateway.
13877	//   "GOOGLE_HANGOUTS" - Google Hangouts.
13878	DefaultResponsePlatforms []string `json:"defaultResponsePlatforms,omitempty"`
13879
13880	// DisplayName: Required. The name of this intent.
13881	DisplayName string `json:"displayName,omitempty"`
13882
13883	// EndInteraction: Optional. Indicates that this intent ends an
13884	// interaction. Some integrations (e.g., Actions on Google or Dialogflow
13885	// phone gateway) use this information to close interaction with an end
13886	// user. Default is false.
13887	EndInteraction bool `json:"endInteraction,omitempty"`
13888
13889	// Events: Optional. The collection of event names that trigger the
13890	// intent. If the collection of input contexts is not empty, all of the
13891	// contexts must be present in the active user session for an event to
13892	// trigger this intent. Event names are limited to 150 characters.
13893	Events []string `json:"events,omitempty"`
13894
13895	// FollowupIntentInfo: Output only. Information about all followup
13896	// intents that have this intent as a direct or indirect parent. We
13897	// populate this field only in the output.
13898	FollowupIntentInfo []*GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo `json:"followupIntentInfo,omitempty"`
13899
13900	// InputContextNames: Optional. The list of context names required for
13901	// this intent to be triggered. Formats: -
13902	// `projects//agent/sessions/-/contexts/` -
13903	// `projects//locations//agent/sessions/-/contexts/`
13904	InputContextNames []string `json:"inputContextNames,omitempty"`
13905
13906	// IsFallback: Optional. Indicates whether this is a fallback intent.
13907	IsFallback bool `json:"isFallback,omitempty"`
13908
13909	// LiveAgentHandoff: Optional. Indicates that a live agent should be
13910	// brought in to handle the interaction with the user. In most cases,
13911	// when you set this flag to true, you would also want to set
13912	// end_interaction to true as well. Default is false.
13913	LiveAgentHandoff bool `json:"liveAgentHandoff,omitempty"`
13914
13915	// Messages: Optional. The collection of rich messages corresponding to
13916	// the `Response` field in the Dialogflow console.
13917	Messages []*GoogleCloudDialogflowV2beta1IntentMessage `json:"messages,omitempty"`
13918
13919	// MlDisabled: Optional. Indicates whether Machine Learning is disabled
13920	// for the intent. Note: If `ml_disabled` setting is set to true, then
13921	// this intent is not taken into account during inference in `ML ONLY`
13922	// match mode. Also, auto-markup in the UI is turned off.
13923	MlDisabled bool `json:"mlDisabled,omitempty"`
13924
13925	// MlEnabled: Optional. Indicates whether Machine Learning is enabled
13926	// for the intent. Note: If `ml_enabled` setting is set to false, then
13927	// this intent is not taken into account during inference in `ML ONLY`
13928	// match mode. Also, auto-markup in the UI is turned off. DEPRECATED!
13929	// Please use `ml_disabled` field instead. NOTE: If both `ml_enabled`
13930	// and `ml_disabled` are either not set or false, then the default value
13931	// is determined as follows: - Before April 15th, 2018 the default is:
13932	// ml_enabled = false / ml_disabled = true. - After April 15th, 2018 the
13933	// default is: ml_enabled = true / ml_disabled = false.
13934	MlEnabled bool `json:"mlEnabled,omitempty"`
13935
13936	// Name: Optional. The unique identifier of this intent. Required for
13937	// Intents.UpdateIntent and Intents.BatchUpdateIntents methods.
13938	// Supported formats: - `projects//agent/intents/` -
13939	// `projects//locations//agent/intents/`
13940	Name string `json:"name,omitempty"`
13941
13942	// OutputContexts: Optional. The collection of contexts that are
13943	// activated when the intent is matched. Context messages in this
13944	// collection should not set the parameters field. Setting the
13945	// `lifespan_count` to 0 will reset the context when the intent is
13946	// matched. Format: `projects//agent/sessions/-/contexts/`.
13947	OutputContexts []*GoogleCloudDialogflowV2beta1Context `json:"outputContexts,omitempty"`
13948
13949	// Parameters: Optional. The collection of parameters associated with
13950	// the intent.
13951	Parameters []*GoogleCloudDialogflowV2beta1IntentParameter `json:"parameters,omitempty"`
13952
13953	// ParentFollowupIntentName: Optional. The unique identifier of the
13954	// parent intent in the chain of followup intents. You can set this
13955	// field when creating an intent, for example with CreateIntent or
13956	// BatchUpdateIntents, in order to make this intent a followup intent.
13957	// It identifies the parent followup intent. Format:
13958	// `projects//agent/intents/`.
13959	ParentFollowupIntentName string `json:"parentFollowupIntentName,omitempty"`
13960
13961	// Priority: Optional. The priority of this intent. Higher numbers
13962	// represent higher priorities. - If the supplied value is unspecified
13963	// or 0, the service translates the value to 500,000, which corresponds
13964	// to the `Normal` priority in the console. - If the supplied value is
13965	// negative, the intent is ignored in runtime detect intent requests.
13966	Priority int64 `json:"priority,omitempty"`
13967
13968	// ResetContexts: Optional. Indicates whether to delete all contexts in
13969	// the current session when this intent is matched.
13970	ResetContexts bool `json:"resetContexts,omitempty"`
13971
13972	// RootFollowupIntentName: Output only. The unique identifier of the
13973	// root intent in the chain of followup intents. It identifies the
13974	// correct followup intents chain for this intent. Format:
13975	// `projects//agent/intents/`.
13976	RootFollowupIntentName string `json:"rootFollowupIntentName,omitempty"`
13977
13978	// TrainingPhrases: Optional. The collection of examples that the agent
13979	// is trained on.
13980	TrainingPhrases []*GoogleCloudDialogflowV2beta1IntentTrainingPhrase `json:"trainingPhrases,omitempty"`
13981
13982	// WebhookState: Optional. Indicates whether webhooks are enabled for
13983	// the intent.
13984	//
13985	// Possible values:
13986	//   "WEBHOOK_STATE_UNSPECIFIED" - Webhook is disabled in the agent and
13987	// in the intent.
13988	//   "WEBHOOK_STATE_ENABLED" - Webhook is enabled in the agent and in
13989	// the intent.
13990	//   "WEBHOOK_STATE_ENABLED_FOR_SLOT_FILLING" - Webhook is enabled in
13991	// the agent and in the intent. Also, each slot filling prompt is
13992	// forwarded to the webhook.
13993	WebhookState string `json:"webhookState,omitempty"`
13994
13995	// ForceSendFields is a list of field names (e.g. "Action") to
13996	// unconditionally include in API requests. By default, fields with
13997	// empty or default values are omitted from API requests. However, any
13998	// non-pointer, non-interface field appearing in ForceSendFields will be
13999	// sent to the server regardless of whether the field is empty or not.
14000	// This may be used to include empty fields in Patch requests.
14001	ForceSendFields []string `json:"-"`
14002
14003	// NullFields is a list of field names (e.g. "Action") to include in API
14004	// requests with the JSON null value. By default, fields with empty
14005	// values are omitted from API requests. However, any field with an
14006	// empty value appearing in NullFields will be sent to the server as
14007	// null. It is an error if a field in this list has a non-empty value.
14008	// This may be used to include null fields in Patch requests.
14009	NullFields []string `json:"-"`
14010}
14011
14012func (s *GoogleCloudDialogflowV2beta1Intent) MarshalJSON() ([]byte, error) {
14013	type NoMethod GoogleCloudDialogflowV2beta1Intent
14014	raw := NoMethod(*s)
14015	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14016}
14017
14018// GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo: Represents a
14019// single followup intent in the chain.
14020type GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo struct {
14021	// FollowupIntentName: The unique identifier of the followup intent.
14022	// Format: `projects//agent/intents/`.
14023	FollowupIntentName string `json:"followupIntentName,omitempty"`
14024
14025	// ParentFollowupIntentName: The unique identifier of the followup
14026	// intent's parent. Format: `projects//agent/intents/`.
14027	ParentFollowupIntentName string `json:"parentFollowupIntentName,omitempty"`
14028
14029	// ForceSendFields is a list of field names (e.g. "FollowupIntentName")
14030	// to unconditionally include in API requests. By default, fields with
14031	// empty or default values are omitted from API requests. However, any
14032	// non-pointer, non-interface field appearing in ForceSendFields will be
14033	// sent to the server regardless of whether the field is empty or not.
14034	// This may be used to include empty fields in Patch requests.
14035	ForceSendFields []string `json:"-"`
14036
14037	// NullFields is a list of field names (e.g. "FollowupIntentName") to
14038	// include in API requests with the JSON null value. By default, fields
14039	// with empty values are omitted from API requests. However, any field
14040	// with an empty value appearing in NullFields will be sent to the
14041	// server as null. It is an error if a field in this list has a
14042	// non-empty value. This may be used to include null fields in Patch
14043	// requests.
14044	NullFields []string `json:"-"`
14045}
14046
14047func (s *GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo) MarshalJSON() ([]byte, error) {
14048	type NoMethod GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo
14049	raw := NoMethod(*s)
14050	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14051}
14052
14053// GoogleCloudDialogflowV2beta1IntentMessage: Corresponds to the
14054// `Response` field in the Dialogflow console.
14055type GoogleCloudDialogflowV2beta1IntentMessage struct {
14056	// BasicCard: Displays a basic card for Actions on Google.
14057	BasicCard *GoogleCloudDialogflowV2beta1IntentMessageBasicCard `json:"basicCard,omitempty"`
14058
14059	// BrowseCarouselCard: Browse carousel card for Actions on Google.
14060	BrowseCarouselCard *GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard `json:"browseCarouselCard,omitempty"`
14061
14062	// Card: Displays a card.
14063	Card *GoogleCloudDialogflowV2beta1IntentMessageCard `json:"card,omitempty"`
14064
14065	// CarouselSelect: Displays a carousel card for Actions on Google.
14066	CarouselSelect *GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect `json:"carouselSelect,omitempty"`
14067
14068	// Image: Displays an image.
14069	Image *GoogleCloudDialogflowV2beta1IntentMessageImage `json:"image,omitempty"`
14070
14071	// LinkOutSuggestion: Displays a link out suggestion chip for Actions on
14072	// Google.
14073	LinkOutSuggestion *GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion `json:"linkOutSuggestion,omitempty"`
14074
14075	// ListSelect: Displays a list card for Actions on Google.
14076	ListSelect *GoogleCloudDialogflowV2beta1IntentMessageListSelect `json:"listSelect,omitempty"`
14077
14078	// MediaContent: The media content card for Actions on Google.
14079	MediaContent *GoogleCloudDialogflowV2beta1IntentMessageMediaContent `json:"mediaContent,omitempty"`
14080
14081	// Payload: A custom platform-specific response.
14082	Payload googleapi.RawMessage `json:"payload,omitempty"`
14083
14084	// Platform: Optional. The platform that this message is intended for.
14085	//
14086	// Possible values:
14087	//   "PLATFORM_UNSPECIFIED" - Not specified.
14088	//   "FACEBOOK" - Facebook.
14089	//   "SLACK" - Slack.
14090	//   "TELEGRAM" - Telegram.
14091	//   "KIK" - Kik.
14092	//   "SKYPE" - Skype.
14093	//   "LINE" - Line.
14094	//   "VIBER" - Viber.
14095	//   "ACTIONS_ON_GOOGLE" - Google Assistant See [Dialogflow webhook
14096	// format](https://developers.google.com/assistant/actions/build/json/dia
14097	// logflow-webhook-json)
14098	//   "TELEPHONY" - Telephony Gateway.
14099	//   "GOOGLE_HANGOUTS" - Google Hangouts.
14100	Platform string `json:"platform,omitempty"`
14101
14102	// QuickReplies: Displays quick replies.
14103	QuickReplies *GoogleCloudDialogflowV2beta1IntentMessageQuickReplies `json:"quickReplies,omitempty"`
14104
14105	// RbmCarouselRichCard: Rich Business Messaging (RBM) carousel rich card
14106	// response.
14107	RbmCarouselRichCard *GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard `json:"rbmCarouselRichCard,omitempty"`
14108
14109	// RbmStandaloneRichCard: Standalone Rich Business Messaging (RBM) rich
14110	// card response.
14111	RbmStandaloneRichCard *GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard `json:"rbmStandaloneRichCard,omitempty"`
14112
14113	// RbmText: Rich Business Messaging (RBM) text response. RBM allows
14114	// businesses to send enriched and branded versions of SMS. See
14115	// https://jibe.google.com/business-messaging.
14116	RbmText *GoogleCloudDialogflowV2beta1IntentMessageRbmText `json:"rbmText,omitempty"`
14117
14118	// SimpleResponses: Returns a voice or text-only response for Actions on
14119	// Google.
14120	SimpleResponses *GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses `json:"simpleResponses,omitempty"`
14121
14122	// Suggestions: Displays suggestion chips for Actions on Google.
14123	Suggestions *GoogleCloudDialogflowV2beta1IntentMessageSuggestions `json:"suggestions,omitempty"`
14124
14125	// TableCard: Table card for Actions on Google.
14126	TableCard *GoogleCloudDialogflowV2beta1IntentMessageTableCard `json:"tableCard,omitempty"`
14127
14128	// TelephonyPlayAudio: Plays audio from a file in Telephony Gateway.
14129	TelephonyPlayAudio *GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio `json:"telephonyPlayAudio,omitempty"`
14130
14131	// TelephonySynthesizeSpeech: Synthesizes speech in Telephony Gateway.
14132	TelephonySynthesizeSpeech *GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech `json:"telephonySynthesizeSpeech,omitempty"`
14133
14134	// TelephonyTransferCall: Transfers the call in Telephony Gateway.
14135	TelephonyTransferCall *GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall `json:"telephonyTransferCall,omitempty"`
14136
14137	// Text: Returns a text response.
14138	Text *GoogleCloudDialogflowV2beta1IntentMessageText `json:"text,omitempty"`
14139
14140	// ForceSendFields is a list of field names (e.g. "BasicCard") to
14141	// unconditionally include in API requests. By default, fields with
14142	// empty or default values are omitted from API requests. However, any
14143	// non-pointer, non-interface field appearing in ForceSendFields will be
14144	// sent to the server regardless of whether the field is empty or not.
14145	// This may be used to include empty fields in Patch requests.
14146	ForceSendFields []string `json:"-"`
14147
14148	// NullFields is a list of field names (e.g. "BasicCard") to include in
14149	// API requests with the JSON null value. By default, fields with empty
14150	// values are omitted from API requests. However, any field with an
14151	// empty value appearing in NullFields will be sent to the server as
14152	// null. It is an error if a field in this list has a non-empty value.
14153	// This may be used to include null fields in Patch requests.
14154	NullFields []string `json:"-"`
14155}
14156
14157func (s *GoogleCloudDialogflowV2beta1IntentMessage) MarshalJSON() ([]byte, error) {
14158	type NoMethod GoogleCloudDialogflowV2beta1IntentMessage
14159	raw := NoMethod(*s)
14160	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14161}
14162
14163// GoogleCloudDialogflowV2beta1IntentMessageBasicCard: The basic card
14164// message. Useful for displaying information.
14165type GoogleCloudDialogflowV2beta1IntentMessageBasicCard struct {
14166	// Buttons: Optional. The collection of card buttons.
14167	Buttons []*GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton `json:"buttons,omitempty"`
14168
14169	// FormattedText: Required, unless image is present. The body text of
14170	// the card.
14171	FormattedText string `json:"formattedText,omitempty"`
14172
14173	// Image: Optional. The image for the card.
14174	Image *GoogleCloudDialogflowV2beta1IntentMessageImage `json:"image,omitempty"`
14175
14176	// Subtitle: Optional. The subtitle of the card.
14177	Subtitle string `json:"subtitle,omitempty"`
14178
14179	// Title: Optional. The title of the card.
14180	Title string `json:"title,omitempty"`
14181
14182	// ForceSendFields is a list of field names (e.g. "Buttons") to
14183	// unconditionally include in API requests. By default, fields with
14184	// empty or default values are omitted from API requests. However, any
14185	// non-pointer, non-interface field appearing in ForceSendFields will be
14186	// sent to the server regardless of whether the field is empty or not.
14187	// This may be used to include empty fields in Patch requests.
14188	ForceSendFields []string `json:"-"`
14189
14190	// NullFields is a list of field names (e.g. "Buttons") to include in
14191	// API requests with the JSON null value. By default, fields with empty
14192	// values are omitted from API requests. However, any field with an
14193	// empty value appearing in NullFields will be sent to the server as
14194	// null. It is an error if a field in this list has a non-empty value.
14195	// This may be used to include null fields in Patch requests.
14196	NullFields []string `json:"-"`
14197}
14198
14199func (s *GoogleCloudDialogflowV2beta1IntentMessageBasicCard) MarshalJSON() ([]byte, error) {
14200	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageBasicCard
14201	raw := NoMethod(*s)
14202	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14203}
14204
14205// GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton: The button
14206// object that appears at the bottom of a card.
14207type GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton struct {
14208	// OpenUriAction: Required. Action to take when a user taps on the
14209	// button.
14210	OpenUriAction *GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction `json:"openUriAction,omitempty"`
14211
14212	// Title: Required. The title of the button.
14213	Title string `json:"title,omitempty"`
14214
14215	// ForceSendFields is a list of field names (e.g. "OpenUriAction") to
14216	// unconditionally include in API requests. By default, fields with
14217	// empty or default values are omitted from API requests. However, any
14218	// non-pointer, non-interface field appearing in ForceSendFields will be
14219	// sent to the server regardless of whether the field is empty or not.
14220	// This may be used to include empty fields in Patch requests.
14221	ForceSendFields []string `json:"-"`
14222
14223	// NullFields is a list of field names (e.g. "OpenUriAction") to include
14224	// in API requests with the JSON null value. By default, fields with
14225	// empty values are omitted from API requests. However, any field with
14226	// an empty value appearing in NullFields will be sent to the server as
14227	// null. It is an error if a field in this list has a non-empty value.
14228	// This may be used to include null fields in Patch requests.
14229	NullFields []string `json:"-"`
14230}
14231
14232func (s *GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton) MarshalJSON() ([]byte, error) {
14233	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton
14234	raw := NoMethod(*s)
14235	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14236}
14237
14238// GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction:
14239//  Opens the given URI.
14240type GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction struct {
14241	// Uri: Required. The HTTP or HTTPS scheme URI.
14242	Uri string `json:"uri,omitempty"`
14243
14244	// ForceSendFields is a list of field names (e.g. "Uri") to
14245	// unconditionally include in API requests. By default, fields with
14246	// empty or default values are omitted from API requests. However, any
14247	// non-pointer, non-interface field appearing in ForceSendFields will be
14248	// sent to the server regardless of whether the field is empty or not.
14249	// This may be used to include empty fields in Patch requests.
14250	ForceSendFields []string `json:"-"`
14251
14252	// NullFields is a list of field names (e.g. "Uri") to include in API
14253	// requests with the JSON null value. By default, fields with empty
14254	// values are omitted from API requests. However, any field with an
14255	// empty value appearing in NullFields will be sent to the server as
14256	// null. It is an error if a field in this list has a non-empty value.
14257	// This may be used to include null fields in Patch requests.
14258	NullFields []string `json:"-"`
14259}
14260
14261func (s *GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction) MarshalJSON() ([]byte, error) {
14262	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction
14263	raw := NoMethod(*s)
14264	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14265}
14266
14267// GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard: Browse
14268// Carousel Card for Actions on Google.
14269// https://developers.google.com/actions/assistant/responses#browsing_carousel
14270type GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard struct {
14271	// ImageDisplayOptions: Optional. Settings for displaying the image.
14272	// Applies to every image in items.
14273	//
14274	// Possible values:
14275	//   "IMAGE_DISPLAY_OPTIONS_UNSPECIFIED" - Fill the gaps between the
14276	// image and the image container with gray bars.
14277	//   "GRAY" - Fill the gaps between the image and the image container
14278	// with gray bars.
14279	//   "WHITE" - Fill the gaps between the image and the image container
14280	// with white bars.
14281	//   "CROPPED" - Image is scaled such that the image width and height
14282	// match or exceed the container dimensions. This may crop the top and
14283	// bottom of the image if the scaled image height is greater than the
14284	// container height, or crop the left and right of the image if the
14285	// scaled image width is greater than the container width. This is
14286	// similar to "Zoom Mode" on a widescreen TV when playing a 4:3 video.
14287	//   "BLURRED_BACKGROUND" - Pad the gaps between image and image frame
14288	// with a blurred copy of the same image.
14289	ImageDisplayOptions string `json:"imageDisplayOptions,omitempty"`
14290
14291	// Items: Required. List of items in the Browse Carousel Card. Minimum
14292	// of two items, maximum of ten.
14293	Items []*GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItem `json:"items,omitempty"`
14294
14295	// ForceSendFields is a list of field names (e.g. "ImageDisplayOptions")
14296	// to unconditionally include in API requests. By default, fields with
14297	// empty or default values are omitted from API requests. However, any
14298	// non-pointer, non-interface field appearing in ForceSendFields will be
14299	// sent to the server regardless of whether the field is empty or not.
14300	// This may be used to include empty fields in Patch requests.
14301	ForceSendFields []string `json:"-"`
14302
14303	// NullFields is a list of field names (e.g. "ImageDisplayOptions") to
14304	// include in API requests with the JSON null value. By default, fields
14305	// with empty values are omitted from API requests. However, any field
14306	// with an empty value appearing in NullFields will be sent to the
14307	// server as null. It is an error if a field in this list has a
14308	// non-empty value. This may be used to include null fields in Patch
14309	// requests.
14310	NullFields []string `json:"-"`
14311}
14312
14313func (s *GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard) MarshalJSON() ([]byte, error) {
14314	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard
14315	raw := NoMethod(*s)
14316	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14317}
14318
14319// GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarou
14320// selCardItem: Browsing carousel tile
14321type GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItem struct {
14322	// Description: Optional. Description of the carousel item. Maximum of
14323	// four lines of text.
14324	Description string `json:"description,omitempty"`
14325
14326	// Footer: Optional. Text that appears at the bottom of the Browse
14327	// Carousel Card. Maximum of one line of text.
14328	Footer string `json:"footer,omitempty"`
14329
14330	// Image: Optional. Hero image for the carousel item.
14331	Image *GoogleCloudDialogflowV2beta1IntentMessageImage `json:"image,omitempty"`
14332
14333	// OpenUriAction: Required. Action to present to the user.
14334	OpenUriAction *GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction `json:"openUriAction,omitempty"`
14335
14336	// Title: Required. Title of the carousel item. Maximum of two lines of
14337	// text.
14338	Title string `json:"title,omitempty"`
14339
14340	// ForceSendFields is a list of field names (e.g. "Description") to
14341	// unconditionally include in API requests. By default, fields with
14342	// empty or default values are omitted from API requests. However, any
14343	// non-pointer, non-interface field appearing in ForceSendFields will be
14344	// sent to the server regardless of whether the field is empty or not.
14345	// This may be used to include empty fields in Patch requests.
14346	ForceSendFields []string `json:"-"`
14347
14348	// NullFields is a list of field names (e.g. "Description") to include
14349	// in API requests with the JSON null value. By default, fields with
14350	// empty values are omitted from API requests. However, any field with
14351	// an empty value appearing in NullFields will be sent to the server as
14352	// null. It is an error if a field in this list has a non-empty value.
14353	// This may be used to include null fields in Patch requests.
14354	NullFields []string `json:"-"`
14355}
14356
14357func (s *GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItem) MarshalJSON() ([]byte, error) {
14358	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItem
14359	raw := NoMethod(*s)
14360	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14361}
14362
14363// GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarou
14364// selCardItemOpenUrlAction: Actions on Google action to open a given
14365// url.
14366type GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction struct {
14367	// Url: Required. URL
14368	Url string `json:"url,omitempty"`
14369
14370	// UrlTypeHint: Optional. Specifies the type of viewer that is used when
14371	// opening the URL. Defaults to opening via web browser.
14372	//
14373	// Possible values:
14374	//   "URL_TYPE_HINT_UNSPECIFIED" - Unspecified
14375	//   "AMP_ACTION" - Url would be an amp action
14376	//   "AMP_CONTENT" - URL that points directly to AMP content, or to a
14377	// canonical URL which refers to AMP content via .
14378	UrlTypeHint string `json:"urlTypeHint,omitempty"`
14379
14380	// ForceSendFields is a list of field names (e.g. "Url") to
14381	// unconditionally include in API requests. By default, fields with
14382	// empty or default values are omitted from API requests. However, any
14383	// non-pointer, non-interface field appearing in ForceSendFields will be
14384	// sent to the server regardless of whether the field is empty or not.
14385	// This may be used to include empty fields in Patch requests.
14386	ForceSendFields []string `json:"-"`
14387
14388	// NullFields is a list of field names (e.g. "Url") to include in API
14389	// requests with the JSON null value. By default, fields with empty
14390	// values are omitted from API requests. However, any field with an
14391	// empty value appearing in NullFields will be sent to the server as
14392	// null. It is an error if a field in this list has a non-empty value.
14393	// This may be used to include null fields in Patch requests.
14394	NullFields []string `json:"-"`
14395}
14396
14397func (s *GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction) MarshalJSON() ([]byte, error) {
14398	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction
14399	raw := NoMethod(*s)
14400	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14401}
14402
14403// GoogleCloudDialogflowV2beta1IntentMessageCard: The card response
14404// message.
14405type GoogleCloudDialogflowV2beta1IntentMessageCard struct {
14406	// Buttons: Optional. The collection of card buttons.
14407	Buttons []*GoogleCloudDialogflowV2beta1IntentMessageCardButton `json:"buttons,omitempty"`
14408
14409	// ImageUri: Optional. The public URI to an image file for the card.
14410	ImageUri string `json:"imageUri,omitempty"`
14411
14412	// Subtitle: Optional. The subtitle of the card.
14413	Subtitle string `json:"subtitle,omitempty"`
14414
14415	// Title: Optional. The title of the card.
14416	Title string `json:"title,omitempty"`
14417
14418	// ForceSendFields is a list of field names (e.g. "Buttons") to
14419	// unconditionally include in API requests. By default, fields with
14420	// empty or default values are omitted from API requests. However, any
14421	// non-pointer, non-interface field appearing in ForceSendFields will be
14422	// sent to the server regardless of whether the field is empty or not.
14423	// This may be used to include empty fields in Patch requests.
14424	ForceSendFields []string `json:"-"`
14425
14426	// NullFields is a list of field names (e.g. "Buttons") to include in
14427	// API requests with the JSON null value. By default, fields with empty
14428	// values are omitted from API requests. However, any field with an
14429	// empty value appearing in NullFields will be sent to the server as
14430	// null. It is an error if a field in this list has a non-empty value.
14431	// This may be used to include null fields in Patch requests.
14432	NullFields []string `json:"-"`
14433}
14434
14435func (s *GoogleCloudDialogflowV2beta1IntentMessageCard) MarshalJSON() ([]byte, error) {
14436	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageCard
14437	raw := NoMethod(*s)
14438	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14439}
14440
14441// GoogleCloudDialogflowV2beta1IntentMessageCardButton: Optional.
14442// Contains information about a button.
14443type GoogleCloudDialogflowV2beta1IntentMessageCardButton struct {
14444	// Postback: Optional. The text to send back to the Dialogflow API or a
14445	// URI to open.
14446	Postback string `json:"postback,omitempty"`
14447
14448	// Text: Optional. The text to show on the button.
14449	Text string `json:"text,omitempty"`
14450
14451	// ForceSendFields is a list of field names (e.g. "Postback") to
14452	// unconditionally include in API requests. By default, fields with
14453	// empty or default values are omitted from API requests. However, any
14454	// non-pointer, non-interface field appearing in ForceSendFields will be
14455	// sent to the server regardless of whether the field is empty or not.
14456	// This may be used to include empty fields in Patch requests.
14457	ForceSendFields []string `json:"-"`
14458
14459	// NullFields is a list of field names (e.g. "Postback") to include in
14460	// API requests with the JSON null value. By default, fields with empty
14461	// values are omitted from API requests. However, any field with an
14462	// empty value appearing in NullFields will be sent to the server as
14463	// null. It is an error if a field in this list has a non-empty value.
14464	// This may be used to include null fields in Patch requests.
14465	NullFields []string `json:"-"`
14466}
14467
14468func (s *GoogleCloudDialogflowV2beta1IntentMessageCardButton) MarshalJSON() ([]byte, error) {
14469	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageCardButton
14470	raw := NoMethod(*s)
14471	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14472}
14473
14474// GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect: The card for
14475// presenting a carousel of options to select from.
14476type GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect struct {
14477	// Items: Required. Carousel items.
14478	Items []*GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem `json:"items,omitempty"`
14479
14480	// ForceSendFields is a list of field names (e.g. "Items") to
14481	// unconditionally include in API requests. By default, fields with
14482	// empty or default values are omitted from API requests. However, any
14483	// non-pointer, non-interface field appearing in ForceSendFields will be
14484	// sent to the server regardless of whether the field is empty or not.
14485	// This may be used to include empty fields in Patch requests.
14486	ForceSendFields []string `json:"-"`
14487
14488	// NullFields is a list of field names (e.g. "Items") to include in API
14489	// requests with the JSON null value. By default, fields with empty
14490	// values are omitted from API requests. However, any field with an
14491	// empty value appearing in NullFields will be sent to the server as
14492	// null. It is an error if a field in this list has a non-empty value.
14493	// This may be used to include null fields in Patch requests.
14494	NullFields []string `json:"-"`
14495}
14496
14497func (s *GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect) MarshalJSON() ([]byte, error) {
14498	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect
14499	raw := NoMethod(*s)
14500	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14501}
14502
14503// GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem: An item
14504// in the carousel.
14505type GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem struct {
14506	// Description: Optional. The body text of the card.
14507	Description string `json:"description,omitempty"`
14508
14509	// Image: Optional. The image to display.
14510	Image *GoogleCloudDialogflowV2beta1IntentMessageImage `json:"image,omitempty"`
14511
14512	// Info: Required. Additional info about the option item.
14513	Info *GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo `json:"info,omitempty"`
14514
14515	// Title: Required. Title of the carousel item.
14516	Title string `json:"title,omitempty"`
14517
14518	// ForceSendFields is a list of field names (e.g. "Description") to
14519	// unconditionally include in API requests. By default, fields with
14520	// empty or default values are omitted from API requests. However, any
14521	// non-pointer, non-interface field appearing in ForceSendFields will be
14522	// sent to the server regardless of whether the field is empty or not.
14523	// This may be used to include empty fields in Patch requests.
14524	ForceSendFields []string `json:"-"`
14525
14526	// NullFields is a list of field names (e.g. "Description") to include
14527	// in API requests with the JSON null value. By default, fields with
14528	// empty values are omitted from API requests. However, any field with
14529	// an empty value appearing in NullFields will be sent to the server as
14530	// null. It is an error if a field in this list has a non-empty value.
14531	// This may be used to include null fields in Patch requests.
14532	NullFields []string `json:"-"`
14533}
14534
14535func (s *GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem) MarshalJSON() ([]byte, error) {
14536	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem
14537	raw := NoMethod(*s)
14538	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14539}
14540
14541// GoogleCloudDialogflowV2beta1IntentMessageColumnProperties: Column
14542// properties for TableCard.
14543type GoogleCloudDialogflowV2beta1IntentMessageColumnProperties struct {
14544	// Header: Required. Column heading.
14545	Header string `json:"header,omitempty"`
14546
14547	// HorizontalAlignment: Optional. Defines text alignment for all cells
14548	// in this column.
14549	//
14550	// Possible values:
14551	//   "HORIZONTAL_ALIGNMENT_UNSPECIFIED" - Text is aligned to the leading
14552	// edge of the column.
14553	//   "LEADING" - Text is aligned to the leading edge of the column.
14554	//   "CENTER" - Text is centered in the column.
14555	//   "TRAILING" - Text is aligned to the trailing edge of the column.
14556	HorizontalAlignment string `json:"horizontalAlignment,omitempty"`
14557
14558	// ForceSendFields is a list of field names (e.g. "Header") to
14559	// unconditionally include in API requests. By default, fields with
14560	// empty or default values are omitted from API requests. However, any
14561	// non-pointer, non-interface field appearing in ForceSendFields will be
14562	// sent to the server regardless of whether the field is empty or not.
14563	// This may be used to include empty fields in Patch requests.
14564	ForceSendFields []string `json:"-"`
14565
14566	// NullFields is a list of field names (e.g. "Header") to include in API
14567	// requests with the JSON null value. By default, fields with empty
14568	// values are omitted from API requests. However, any field with an
14569	// empty value appearing in NullFields will be sent to the server as
14570	// null. It is an error if a field in this list has a non-empty value.
14571	// This may be used to include null fields in Patch requests.
14572	NullFields []string `json:"-"`
14573}
14574
14575func (s *GoogleCloudDialogflowV2beta1IntentMessageColumnProperties) MarshalJSON() ([]byte, error) {
14576	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageColumnProperties
14577	raw := NoMethod(*s)
14578	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14579}
14580
14581// GoogleCloudDialogflowV2beta1IntentMessageImage: The image response
14582// message.
14583type GoogleCloudDialogflowV2beta1IntentMessageImage struct {
14584	// AccessibilityText: A text description of the image to be used for
14585	// accessibility, e.g., screen readers. Required if image_uri is set for
14586	// CarouselSelect.
14587	AccessibilityText string `json:"accessibilityText,omitempty"`
14588
14589	// ImageUri: Optional. The public URI to an image file.
14590	ImageUri string `json:"imageUri,omitempty"`
14591
14592	// ForceSendFields is a list of field names (e.g. "AccessibilityText")
14593	// to unconditionally include in API requests. By default, fields with
14594	// empty or default values are omitted from API requests. However, any
14595	// non-pointer, non-interface field appearing in ForceSendFields will be
14596	// sent to the server regardless of whether the field is empty or not.
14597	// This may be used to include empty fields in Patch requests.
14598	ForceSendFields []string `json:"-"`
14599
14600	// NullFields is a list of field names (e.g. "AccessibilityText") to
14601	// include in API requests with the JSON null value. By default, fields
14602	// with empty values are omitted from API requests. However, any field
14603	// with an empty value appearing in NullFields will be sent to the
14604	// server as null. It is an error if a field in this list has a
14605	// non-empty value. This may be used to include null fields in Patch
14606	// requests.
14607	NullFields []string `json:"-"`
14608}
14609
14610func (s *GoogleCloudDialogflowV2beta1IntentMessageImage) MarshalJSON() ([]byte, error) {
14611	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageImage
14612	raw := NoMethod(*s)
14613	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14614}
14615
14616// GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion: The
14617// suggestion chip message that allows the user to jump out to the app
14618// or website associated with this agent.
14619type GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion struct {
14620	// DestinationName: Required. The name of the app or site this chip is
14621	// linking to.
14622	DestinationName string `json:"destinationName,omitempty"`
14623
14624	// Uri: Required. The URI of the app or site to open when the user taps
14625	// the suggestion chip.
14626	Uri string `json:"uri,omitempty"`
14627
14628	// ForceSendFields is a list of field names (e.g. "DestinationName") to
14629	// unconditionally include in API requests. By default, fields with
14630	// empty or default values are omitted from API requests. However, any
14631	// non-pointer, non-interface field appearing in ForceSendFields will be
14632	// sent to the server regardless of whether the field is empty or not.
14633	// This may be used to include empty fields in Patch requests.
14634	ForceSendFields []string `json:"-"`
14635
14636	// NullFields is a list of field names (e.g. "DestinationName") to
14637	// include in API requests with the JSON null value. By default, fields
14638	// with empty values are omitted from API requests. However, any field
14639	// with an empty value appearing in NullFields will be sent to the
14640	// server as null. It is an error if a field in this list has a
14641	// non-empty value. This may be used to include null fields in Patch
14642	// requests.
14643	NullFields []string `json:"-"`
14644}
14645
14646func (s *GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion) MarshalJSON() ([]byte, error) {
14647	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion
14648	raw := NoMethod(*s)
14649	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14650}
14651
14652// GoogleCloudDialogflowV2beta1IntentMessageListSelect: The card for
14653// presenting a list of options to select from.
14654type GoogleCloudDialogflowV2beta1IntentMessageListSelect struct {
14655	// Items: Required. List items.
14656	Items []*GoogleCloudDialogflowV2beta1IntentMessageListSelectItem `json:"items,omitempty"`
14657
14658	// Subtitle: Optional. Subtitle of the list.
14659	Subtitle string `json:"subtitle,omitempty"`
14660
14661	// Title: Optional. The overall title of the list.
14662	Title string `json:"title,omitempty"`
14663
14664	// ForceSendFields is a list of field names (e.g. "Items") to
14665	// unconditionally include in API requests. By default, fields with
14666	// empty or default values are omitted from API requests. However, any
14667	// non-pointer, non-interface field appearing in ForceSendFields will be
14668	// sent to the server regardless of whether the field is empty or not.
14669	// This may be used to include empty fields in Patch requests.
14670	ForceSendFields []string `json:"-"`
14671
14672	// NullFields is a list of field names (e.g. "Items") to include in API
14673	// requests with the JSON null value. By default, fields with empty
14674	// values are omitted from API requests. However, any field with an
14675	// empty value appearing in NullFields will be sent to the server as
14676	// null. It is an error if a field in this list has a non-empty value.
14677	// This may be used to include null fields in Patch requests.
14678	NullFields []string `json:"-"`
14679}
14680
14681func (s *GoogleCloudDialogflowV2beta1IntentMessageListSelect) MarshalJSON() ([]byte, error) {
14682	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageListSelect
14683	raw := NoMethod(*s)
14684	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14685}
14686
14687// GoogleCloudDialogflowV2beta1IntentMessageListSelectItem: An item in
14688// the list.
14689type GoogleCloudDialogflowV2beta1IntentMessageListSelectItem struct {
14690	// Description: Optional. The main text describing the item.
14691	Description string `json:"description,omitempty"`
14692
14693	// Image: Optional. The image to display.
14694	Image *GoogleCloudDialogflowV2beta1IntentMessageImage `json:"image,omitempty"`
14695
14696	// Info: Required. Additional information about this option.
14697	Info *GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo `json:"info,omitempty"`
14698
14699	// Title: Required. The title of the list item.
14700	Title string `json:"title,omitempty"`
14701
14702	// ForceSendFields is a list of field names (e.g. "Description") to
14703	// unconditionally include in API requests. By default, fields with
14704	// empty or default values are omitted from API requests. However, any
14705	// non-pointer, non-interface field appearing in ForceSendFields will be
14706	// sent to the server regardless of whether the field is empty or not.
14707	// This may be used to include empty fields in Patch requests.
14708	ForceSendFields []string `json:"-"`
14709
14710	// NullFields is a list of field names (e.g. "Description") to include
14711	// in API requests with the JSON null value. By default, fields with
14712	// empty values are omitted from API requests. However, any field with
14713	// an empty value appearing in NullFields will be sent to the server as
14714	// null. It is an error if a field in this list has a non-empty value.
14715	// This may be used to include null fields in Patch requests.
14716	NullFields []string `json:"-"`
14717}
14718
14719func (s *GoogleCloudDialogflowV2beta1IntentMessageListSelectItem) MarshalJSON() ([]byte, error) {
14720	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageListSelectItem
14721	raw := NoMethod(*s)
14722	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14723}
14724
14725// GoogleCloudDialogflowV2beta1IntentMessageMediaContent: The media
14726// content card for Actions on Google.
14727type GoogleCloudDialogflowV2beta1IntentMessageMediaContent struct {
14728	// MediaObjects: Required. List of media objects.
14729	MediaObjects []*GoogleCloudDialogflowV2beta1IntentMessageMediaContentResponseMediaObject `json:"mediaObjects,omitempty"`
14730
14731	// MediaType: Optional. What type of media is the content (ie "audio").
14732	//
14733	// Possible values:
14734	//   "RESPONSE_MEDIA_TYPE_UNSPECIFIED" - Unspecified.
14735	//   "AUDIO" - Response media type is audio.
14736	MediaType string `json:"mediaType,omitempty"`
14737
14738	// ForceSendFields is a list of field names (e.g. "MediaObjects") to
14739	// unconditionally include in API requests. By default, fields with
14740	// empty or default values are omitted from API requests. However, any
14741	// non-pointer, non-interface field appearing in ForceSendFields will be
14742	// sent to the server regardless of whether the field is empty or not.
14743	// This may be used to include empty fields in Patch requests.
14744	ForceSendFields []string `json:"-"`
14745
14746	// NullFields is a list of field names (e.g. "MediaObjects") to include
14747	// in API requests with the JSON null value. By default, fields with
14748	// empty values are omitted from API requests. However, any field with
14749	// an empty value appearing in NullFields will be sent to the server as
14750	// null. It is an error if a field in this list has a non-empty value.
14751	// This may be used to include null fields in Patch requests.
14752	NullFields []string `json:"-"`
14753}
14754
14755func (s *GoogleCloudDialogflowV2beta1IntentMessageMediaContent) MarshalJSON() ([]byte, error) {
14756	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageMediaContent
14757	raw := NoMethod(*s)
14758	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14759}
14760
14761// GoogleCloudDialogflowV2beta1IntentMessageMediaContentResponseMediaObje
14762// ct: Response media object for media content card.
14763type GoogleCloudDialogflowV2beta1IntentMessageMediaContentResponseMediaObject struct {
14764	// ContentUrl: Required. Url where the media is stored.
14765	ContentUrl string `json:"contentUrl,omitempty"`
14766
14767	// Description: Optional. Description of media card.
14768	Description string `json:"description,omitempty"`
14769
14770	// Icon: Optional. Icon to display above media content.
14771	Icon *GoogleCloudDialogflowV2beta1IntentMessageImage `json:"icon,omitempty"`
14772
14773	// LargeImage: Optional. Image to display above media content.
14774	LargeImage *GoogleCloudDialogflowV2beta1IntentMessageImage `json:"largeImage,omitempty"`
14775
14776	// Name: Required. Name of media card.
14777	Name string `json:"name,omitempty"`
14778
14779	// ForceSendFields is a list of field names (e.g. "ContentUrl") to
14780	// unconditionally include in API requests. By default, fields with
14781	// empty or default values are omitted from API requests. However, any
14782	// non-pointer, non-interface field appearing in ForceSendFields will be
14783	// sent to the server regardless of whether the field is empty or not.
14784	// This may be used to include empty fields in Patch requests.
14785	ForceSendFields []string `json:"-"`
14786
14787	// NullFields is a list of field names (e.g. "ContentUrl") to include in
14788	// API requests with the JSON null value. By default, fields with empty
14789	// values are omitted from API requests. However, any field with an
14790	// empty value appearing in NullFields will be sent to the server as
14791	// null. It is an error if a field in this list has a non-empty value.
14792	// This may be used to include null fields in Patch requests.
14793	NullFields []string `json:"-"`
14794}
14795
14796func (s *GoogleCloudDialogflowV2beta1IntentMessageMediaContentResponseMediaObject) MarshalJSON() ([]byte, error) {
14797	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageMediaContentResponseMediaObject
14798	raw := NoMethod(*s)
14799	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14800}
14801
14802// GoogleCloudDialogflowV2beta1IntentMessageQuickReplies: The quick
14803// replies response message.
14804type GoogleCloudDialogflowV2beta1IntentMessageQuickReplies struct {
14805	// QuickReplies: Optional. The collection of quick replies.
14806	QuickReplies []string `json:"quickReplies,omitempty"`
14807
14808	// Title: Optional. The title of the collection of quick replies.
14809	Title string `json:"title,omitempty"`
14810
14811	// ForceSendFields is a list of field names (e.g. "QuickReplies") to
14812	// unconditionally include in API requests. By default, fields with
14813	// empty or default values are omitted from API requests. However, any
14814	// non-pointer, non-interface field appearing in ForceSendFields will be
14815	// sent to the server regardless of whether the field is empty or not.
14816	// This may be used to include empty fields in Patch requests.
14817	ForceSendFields []string `json:"-"`
14818
14819	// NullFields is a list of field names (e.g. "QuickReplies") to include
14820	// in API requests with the JSON null value. By default, fields with
14821	// empty values are omitted from API requests. However, any field with
14822	// an empty value appearing in NullFields will be sent to the server as
14823	// null. It is an error if a field in this list has a non-empty value.
14824	// This may be used to include null fields in Patch requests.
14825	NullFields []string `json:"-"`
14826}
14827
14828func (s *GoogleCloudDialogflowV2beta1IntentMessageQuickReplies) MarshalJSON() ([]byte, error) {
14829	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageQuickReplies
14830	raw := NoMethod(*s)
14831	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14832}
14833
14834// GoogleCloudDialogflowV2beta1IntentMessageRbmCardContent: Rich
14835// Business Messaging (RBM) Card content
14836type GoogleCloudDialogflowV2beta1IntentMessageRbmCardContent struct {
14837	// Description: Optional. Description of the card (at most 2000 bytes).
14838	// At least one of the title, description or media must be set.
14839	Description string `json:"description,omitempty"`
14840
14841	// Media: Optional. However at least one of the title, description or
14842	// media must be set. Media (image, GIF or a video) to include in the
14843	// card.
14844	Media *GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia `json:"media,omitempty"`
14845
14846	// Suggestions: Optional. List of suggestions to include in the card.
14847	Suggestions []*GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion `json:"suggestions,omitempty"`
14848
14849	// Title: Optional. Title of the card (at most 200 bytes). At least one
14850	// of the title, description or media must be set.
14851	Title string `json:"title,omitempty"`
14852
14853	// ForceSendFields is a list of field names (e.g. "Description") to
14854	// unconditionally include in API requests. By default, fields with
14855	// empty or default values are omitted from API requests. However, any
14856	// non-pointer, non-interface field appearing in ForceSendFields will be
14857	// sent to the server regardless of whether the field is empty or not.
14858	// This may be used to include empty fields in Patch requests.
14859	ForceSendFields []string `json:"-"`
14860
14861	// NullFields is a list of field names (e.g. "Description") to include
14862	// in API requests with the JSON null value. By default, fields with
14863	// empty values are omitted from API requests. However, any field with
14864	// an empty value appearing in NullFields will be sent to the server as
14865	// null. It is an error if a field in this list has a non-empty value.
14866	// This may be used to include null fields in Patch requests.
14867	NullFields []string `json:"-"`
14868}
14869
14870func (s *GoogleCloudDialogflowV2beta1IntentMessageRbmCardContent) MarshalJSON() ([]byte, error) {
14871	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageRbmCardContent
14872	raw := NoMethod(*s)
14873	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14874}
14875
14876// GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia: Rich
14877// Business Messaging (RBM) Media displayed in Cards The following
14878// media-types are currently supported: Image Types * image/jpeg *
14879// image/jpg' * image/gif * image/png Video Types * video/h263 *
14880// video/m4v * video/mp4 * video/mpeg * video/mpeg4 * video/webm
14881type GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia struct {
14882	// FileUri: Required. Publicly reachable URI of the file. The RBM
14883	// platform determines the MIME type of the file from the content-type
14884	// field in the HTTP headers when the platform fetches the file. The
14885	// content-type field must be present and accurate in the HTTP response
14886	// from the URL.
14887	FileUri string `json:"fileUri,omitempty"`
14888
14889	// Height: Required for cards with vertical orientation. The height of
14890	// the media within a rich card with a vertical layout. For a standalone
14891	// card with horizontal layout, height is not customizable, and this
14892	// field is ignored.
14893	//
14894	// Possible values:
14895	//   "HEIGHT_UNSPECIFIED" - Not specified.
14896	//   "SHORT" - 112 DP.
14897	//   "MEDIUM" - 168 DP.
14898	//   "TALL" - 264 DP. Not available for rich card carousels when the
14899	// card width is set to small.
14900	Height string `json:"height,omitempty"`
14901
14902	// ThumbnailUri: Optional. Publicly reachable URI of the thumbnail.If
14903	// you don't provide a thumbnail URI, the RBM platform displays a blank
14904	// placeholder thumbnail until the user's device downloads the file.
14905	// Depending on the user's setting, the file may not download
14906	// automatically and may require the user to tap a download button.
14907	ThumbnailUri string `json:"thumbnailUri,omitempty"`
14908
14909	// ForceSendFields is a list of field names (e.g. "FileUri") to
14910	// unconditionally include in API requests. By default, fields with
14911	// empty or default values are omitted from API requests. However, any
14912	// non-pointer, non-interface field appearing in ForceSendFields will be
14913	// sent to the server regardless of whether the field is empty or not.
14914	// This may be used to include empty fields in Patch requests.
14915	ForceSendFields []string `json:"-"`
14916
14917	// NullFields is a list of field names (e.g. "FileUri") to include in
14918	// API requests with the JSON null value. By default, fields with empty
14919	// values are omitted from API requests. However, any field with an
14920	// empty value appearing in NullFields will be sent to the server as
14921	// null. It is an error if a field in this list has a non-empty value.
14922	// This may be used to include null fields in Patch requests.
14923	NullFields []string `json:"-"`
14924}
14925
14926func (s *GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia) MarshalJSON() ([]byte, error) {
14927	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia
14928	raw := NoMethod(*s)
14929	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14930}
14931
14932// GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard: Carousel
14933// Rich Business Messaging (RBM) rich card. Rich cards allow you to
14934// respond to users with more vivid content, e.g. with media and
14935// suggestions. If you want to show a single card with more control over
14936// the layout, please use RbmStandaloneCard instead.
14937type GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard struct {
14938	// CardContents: Required. The cards in the carousel. A carousel must
14939	// have at least 2 cards and at most 10.
14940	CardContents []*GoogleCloudDialogflowV2beta1IntentMessageRbmCardContent `json:"cardContents,omitempty"`
14941
14942	// CardWidth: Required. The width of the cards in the carousel.
14943	//
14944	// Possible values:
14945	//   "CARD_WIDTH_UNSPECIFIED" - Not specified.
14946	//   "SMALL" - 120 DP. Note that tall media cannot be used.
14947	//   "MEDIUM" - 232 DP.
14948	CardWidth string `json:"cardWidth,omitempty"`
14949
14950	// ForceSendFields is a list of field names (e.g. "CardContents") to
14951	// unconditionally include in API requests. By default, fields with
14952	// empty or default values are omitted from API requests. However, any
14953	// non-pointer, non-interface field appearing in ForceSendFields will be
14954	// sent to the server regardless of whether the field is empty or not.
14955	// This may be used to include empty fields in Patch requests.
14956	ForceSendFields []string `json:"-"`
14957
14958	// NullFields is a list of field names (e.g. "CardContents") to include
14959	// in API requests with the JSON null value. By default, fields with
14960	// empty values are omitted from API requests. However, any field with
14961	// an empty value appearing in NullFields will be sent to the server as
14962	// null. It is an error if a field in this list has a non-empty value.
14963	// This may be used to include null fields in Patch requests.
14964	NullFields []string `json:"-"`
14965}
14966
14967func (s *GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard) MarshalJSON() ([]byte, error) {
14968	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard
14969	raw := NoMethod(*s)
14970	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14971}
14972
14973// GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard:
14974// Standalone Rich Business Messaging (RBM) rich card. Rich cards allow
14975// you to respond to users with more vivid content, e.g. with media and
14976// suggestions. You can group multiple rich cards into one using
14977// RbmCarouselCard but carousel cards will give you less control over
14978// the card layout.
14979type GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard struct {
14980	// CardContent: Required. Card content.
14981	CardContent *GoogleCloudDialogflowV2beta1IntentMessageRbmCardContent `json:"cardContent,omitempty"`
14982
14983	// CardOrientation: Required. Orientation of the card.
14984	//
14985	// Possible values:
14986	//   "CARD_ORIENTATION_UNSPECIFIED" - Not specified.
14987	//   "HORIZONTAL" - Horizontal layout.
14988	//   "VERTICAL" - Vertical layout.
14989	CardOrientation string `json:"cardOrientation,omitempty"`
14990
14991	// ThumbnailImageAlignment: Required if orientation is horizontal. Image
14992	// preview alignment for standalone cards with horizontal layout.
14993	//
14994	// Possible values:
14995	//   "THUMBNAIL_IMAGE_ALIGNMENT_UNSPECIFIED" - Not specified.
14996	//   "LEFT" - Thumbnail preview is left-aligned.
14997	//   "RIGHT" - Thumbnail preview is right-aligned.
14998	ThumbnailImageAlignment string `json:"thumbnailImageAlignment,omitempty"`
14999
15000	// ForceSendFields is a list of field names (e.g. "CardContent") to
15001	// unconditionally include in API requests. By default, fields with
15002	// empty or default values are omitted from API requests. However, any
15003	// non-pointer, non-interface field appearing in ForceSendFields will be
15004	// sent to the server regardless of whether the field is empty or not.
15005	// This may be used to include empty fields in Patch requests.
15006	ForceSendFields []string `json:"-"`
15007
15008	// NullFields is a list of field names (e.g. "CardContent") to include
15009	// in API requests with the JSON null value. By default, fields with
15010	// empty values are omitted from API requests. However, any field with
15011	// an empty value appearing in NullFields will be sent to the server as
15012	// null. It is an error if a field in this list has a non-empty value.
15013	// This may be used to include null fields in Patch requests.
15014	NullFields []string `json:"-"`
15015}
15016
15017func (s *GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard) MarshalJSON() ([]byte, error) {
15018	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard
15019	raw := NoMethod(*s)
15020	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15021}
15022
15023// GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedAction: Rich
15024// Business Messaging (RBM) suggested client-side action that the user
15025// can choose from the card.
15026type GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedAction struct {
15027	// Dial: Suggested client side action: Dial a phone number
15028	Dial *GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionDial `json:"dial,omitempty"`
15029
15030	// OpenUrl: Suggested client side action: Open a URI on device
15031	OpenUrl *GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionOpenUri `json:"openUrl,omitempty"`
15032
15033	// PostbackData: Opaque payload that the Dialogflow receives in a user
15034	// event when the user taps the suggested action. This data will be also
15035	// forwarded to webhook to allow performing custom business logic.
15036	PostbackData string `json:"postbackData,omitempty"`
15037
15038	// ShareLocation: Suggested client side action: Share user location
15039	ShareLocation *GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionShareLocation `json:"shareLocation,omitempty"`
15040
15041	// Text: Text to display alongside the action.
15042	Text string `json:"text,omitempty"`
15043
15044	// ForceSendFields is a list of field names (e.g. "Dial") to
15045	// unconditionally include in API requests. By default, fields with
15046	// empty or default values are omitted from API requests. However, any
15047	// non-pointer, non-interface field appearing in ForceSendFields will be
15048	// sent to the server regardless of whether the field is empty or not.
15049	// This may be used to include empty fields in Patch requests.
15050	ForceSendFields []string `json:"-"`
15051
15052	// NullFields is a list of field names (e.g. "Dial") to include in API
15053	// requests with the JSON null value. By default, fields with empty
15054	// values are omitted from API requests. However, any field with an
15055	// empty value appearing in NullFields will be sent to the server as
15056	// null. It is an error if a field in this list has a non-empty value.
15057	// This may be used to include null fields in Patch requests.
15058	NullFields []string `json:"-"`
15059}
15060
15061func (s *GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedAction) MarshalJSON() ([]byte, error) {
15062	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedAction
15063	raw := NoMethod(*s)
15064	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15065}
15066
15067// GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggeste
15068// dActionDial: Opens the user's default dialer app with the specified
15069// phone number but does not dial automatically.
15070type GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionDial struct {
15071	// PhoneNumber: Required. The phone number to fill in the default dialer
15072	// app. This field should be in E.164
15073	// (https://en.wikipedia.org/wiki/E.164) format. An example of a
15074	// correctly formatted phone number: +15556767888.
15075	PhoneNumber string `json:"phoneNumber,omitempty"`
15076
15077	// ForceSendFields is a list of field names (e.g. "PhoneNumber") to
15078	// unconditionally include in API requests. By default, fields with
15079	// empty or default values are omitted from API requests. However, any
15080	// non-pointer, non-interface field appearing in ForceSendFields will be
15081	// sent to the server regardless of whether the field is empty or not.
15082	// This may be used to include empty fields in Patch requests.
15083	ForceSendFields []string `json:"-"`
15084
15085	// NullFields is a list of field names (e.g. "PhoneNumber") to include
15086	// in API requests with the JSON null value. By default, fields with
15087	// empty values are omitted from API requests. However, any field with
15088	// an empty value appearing in NullFields will be sent to the server as
15089	// null. It is an error if a field in this list has a non-empty value.
15090	// This may be used to include null fields in Patch requests.
15091	NullFields []string `json:"-"`
15092}
15093
15094func (s *GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionDial) MarshalJSON() ([]byte, error) {
15095	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionDial
15096	raw := NoMethod(*s)
15097	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15098}
15099
15100// GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggeste
15101// dActionOpenUri: Opens the user's default web browser app to the
15102// specified uri If the user has an app installed that is registered as
15103// the default handler for the URL, then this app will be opened
15104// instead, and its icon will be used in the suggested action UI.
15105type GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionOpenUri struct {
15106	// Uri: Required. The uri to open on the user device
15107	Uri string `json:"uri,omitempty"`
15108
15109	// ForceSendFields is a list of field names (e.g. "Uri") to
15110	// unconditionally include in API requests. By default, fields with
15111	// empty or default values are omitted from API requests. However, any
15112	// non-pointer, non-interface field appearing in ForceSendFields will be
15113	// sent to the server regardless of whether the field is empty or not.
15114	// This may be used to include empty fields in Patch requests.
15115	ForceSendFields []string `json:"-"`
15116
15117	// NullFields is a list of field names (e.g. "Uri") to include in API
15118	// requests with the JSON null value. By default, fields with empty
15119	// values are omitted from API requests. However, any field with an
15120	// empty value appearing in NullFields will be sent to the server as
15121	// null. It is an error if a field in this list has a non-empty value.
15122	// This may be used to include null fields in Patch requests.
15123	NullFields []string `json:"-"`
15124}
15125
15126func (s *GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionOpenUri) MarshalJSON() ([]byte, error) {
15127	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionOpenUri
15128	raw := NoMethod(*s)
15129	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15130}
15131
15132// GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggeste
15133// dActionShareLocation: Opens the device's location chooser so the user
15134// can pick a location to send back to the agent.
15135type GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionShareLocation struct {
15136}
15137
15138// GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedReply: Rich
15139// Business Messaging (RBM) suggested reply that the user can click
15140// instead of typing in their own response.
15141type GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedReply struct {
15142	// PostbackData: Opaque payload that the Dialogflow receives in a user
15143	// event when the user taps the suggested reply. This data will be also
15144	// forwarded to webhook to allow performing custom business logic.
15145	PostbackData string `json:"postbackData,omitempty"`
15146
15147	// Text: Suggested reply text.
15148	Text string `json:"text,omitempty"`
15149
15150	// ForceSendFields is a list of field names (e.g. "PostbackData") to
15151	// unconditionally include in API requests. By default, fields with
15152	// empty or default values are omitted from API requests. However, any
15153	// non-pointer, non-interface field appearing in ForceSendFields will be
15154	// sent to the server regardless of whether the field is empty or not.
15155	// This may be used to include empty fields in Patch requests.
15156	ForceSendFields []string `json:"-"`
15157
15158	// NullFields is a list of field names (e.g. "PostbackData") to include
15159	// in API requests with the JSON null value. By default, fields with
15160	// empty values are omitted from API requests. However, any field with
15161	// an empty value appearing in NullFields will be sent to the server as
15162	// null. It is an error if a field in this list has a non-empty value.
15163	// This may be used to include null fields in Patch requests.
15164	NullFields []string `json:"-"`
15165}
15166
15167func (s *GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedReply) MarshalJSON() ([]byte, error) {
15168	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedReply
15169	raw := NoMethod(*s)
15170	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15171}
15172
15173// GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion: Rich Business
15174// Messaging (RBM) suggestion. Suggestions allow user to easily
15175// select/click a predefined response or perform an action (like opening
15176// a web uri).
15177type GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion struct {
15178	// Action: Predefined client side actions that user can choose
15179	Action *GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedAction `json:"action,omitempty"`
15180
15181	// Reply: Predefined replies for user to select instead of typing
15182	Reply *GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedReply `json:"reply,omitempty"`
15183
15184	// ForceSendFields is a list of field names (e.g. "Action") to
15185	// unconditionally include in API requests. By default, fields with
15186	// empty or default values are omitted from API requests. However, any
15187	// non-pointer, non-interface field appearing in ForceSendFields will be
15188	// sent to the server regardless of whether the field is empty or not.
15189	// This may be used to include empty fields in Patch requests.
15190	ForceSendFields []string `json:"-"`
15191
15192	// NullFields is a list of field names (e.g. "Action") to include in API
15193	// requests with the JSON null value. By default, fields with empty
15194	// values are omitted from API requests. However, any field with an
15195	// empty value appearing in NullFields will be sent to the server as
15196	// null. It is an error if a field in this list has a non-empty value.
15197	// This may be used to include null fields in Patch requests.
15198	NullFields []string `json:"-"`
15199}
15200
15201func (s *GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion) MarshalJSON() ([]byte, error) {
15202	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion
15203	raw := NoMethod(*s)
15204	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15205}
15206
15207// GoogleCloudDialogflowV2beta1IntentMessageRbmText: Rich Business
15208// Messaging (RBM) text response with suggestions.
15209type GoogleCloudDialogflowV2beta1IntentMessageRbmText struct {
15210	// RbmSuggestion: Optional. One or more suggestions to show to the user.
15211	RbmSuggestion []*GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion `json:"rbmSuggestion,omitempty"`
15212
15213	// Text: Required. Text sent and displayed to the user.
15214	Text string `json:"text,omitempty"`
15215
15216	// ForceSendFields is a list of field names (e.g. "RbmSuggestion") to
15217	// unconditionally include in API requests. By default, fields with
15218	// empty or default values are omitted from API requests. However, any
15219	// non-pointer, non-interface field appearing in ForceSendFields will be
15220	// sent to the server regardless of whether the field is empty or not.
15221	// This may be used to include empty fields in Patch requests.
15222	ForceSendFields []string `json:"-"`
15223
15224	// NullFields is a list of field names (e.g. "RbmSuggestion") to include
15225	// in API requests with the JSON null value. By default, fields with
15226	// empty values are omitted from API requests. However, any field with
15227	// an empty value appearing in NullFields will be sent to the server as
15228	// null. It is an error if a field in this list has a non-empty value.
15229	// This may be used to include null fields in Patch requests.
15230	NullFields []string `json:"-"`
15231}
15232
15233func (s *GoogleCloudDialogflowV2beta1IntentMessageRbmText) MarshalJSON() ([]byte, error) {
15234	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageRbmText
15235	raw := NoMethod(*s)
15236	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15237}
15238
15239// GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo: Additional
15240// info about the select item for when it is triggered in a dialog.
15241type GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo struct {
15242	// Key: Required. A unique key that will be sent back to the agent if
15243	// this response is given.
15244	Key string `json:"key,omitempty"`
15245
15246	// Synonyms: Optional. A list of synonyms that can also be used to
15247	// trigger this item in dialog.
15248	Synonyms []string `json:"synonyms,omitempty"`
15249
15250	// ForceSendFields is a list of field names (e.g. "Key") to
15251	// unconditionally include in API requests. By default, fields with
15252	// empty or default values are omitted from API requests. However, any
15253	// non-pointer, non-interface field appearing in ForceSendFields will be
15254	// sent to the server regardless of whether the field is empty or not.
15255	// This may be used to include empty fields in Patch requests.
15256	ForceSendFields []string `json:"-"`
15257
15258	// NullFields is a list of field names (e.g. "Key") to include in API
15259	// requests with the JSON null value. By default, fields with empty
15260	// values are omitted from API requests. However, any field with an
15261	// empty value appearing in NullFields will be sent to the server as
15262	// null. It is an error if a field in this list has a non-empty value.
15263	// This may be used to include null fields in Patch requests.
15264	NullFields []string `json:"-"`
15265}
15266
15267func (s *GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo) MarshalJSON() ([]byte, error) {
15268	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo
15269	raw := NoMethod(*s)
15270	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15271}
15272
15273// GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse: The simple
15274// response message containing speech or text.
15275type GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse struct {
15276	// DisplayText: Optional. The text to display.
15277	DisplayText string `json:"displayText,omitempty"`
15278
15279	// Ssml: One of text_to_speech or ssml must be provided. Structured
15280	// spoken response to the user in the SSML format. Mutually exclusive
15281	// with text_to_speech.
15282	Ssml string `json:"ssml,omitempty"`
15283
15284	// TextToSpeech: One of text_to_speech or ssml must be provided. The
15285	// plain text of the speech output. Mutually exclusive with ssml.
15286	TextToSpeech string `json:"textToSpeech,omitempty"`
15287
15288	// ForceSendFields is a list of field names (e.g. "DisplayText") to
15289	// unconditionally include in API requests. By default, fields with
15290	// empty or default values are omitted from API requests. However, any
15291	// non-pointer, non-interface field appearing in ForceSendFields will be
15292	// sent to the server regardless of whether the field is empty or not.
15293	// This may be used to include empty fields in Patch requests.
15294	ForceSendFields []string `json:"-"`
15295
15296	// NullFields is a list of field names (e.g. "DisplayText") to include
15297	// in API requests with the JSON null value. By default, fields with
15298	// empty values are omitted from API requests. However, any field with
15299	// an empty value appearing in NullFields will be sent to the server as
15300	// null. It is an error if a field in this list has a non-empty value.
15301	// This may be used to include null fields in Patch requests.
15302	NullFields []string `json:"-"`
15303}
15304
15305func (s *GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse) MarshalJSON() ([]byte, error) {
15306	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse
15307	raw := NoMethod(*s)
15308	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15309}
15310
15311// GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses: The
15312// collection of simple response candidates. This message in
15313// `QueryResult.fulfillment_messages` and
15314// `WebhookResponse.fulfillment_messages` should contain only one
15315// `SimpleResponse`.
15316type GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses struct {
15317	// SimpleResponses: Required. The list of simple responses.
15318	SimpleResponses []*GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse `json:"simpleResponses,omitempty"`
15319
15320	// ForceSendFields is a list of field names (e.g. "SimpleResponses") to
15321	// unconditionally include in API requests. By default, fields with
15322	// empty or default values are omitted from API requests. However, any
15323	// non-pointer, non-interface field appearing in ForceSendFields will be
15324	// sent to the server regardless of whether the field is empty or not.
15325	// This may be used to include empty fields in Patch requests.
15326	ForceSendFields []string `json:"-"`
15327
15328	// NullFields is a list of field names (e.g. "SimpleResponses") to
15329	// include in API requests with the JSON null value. By default, fields
15330	// with empty values are omitted from API requests. However, any field
15331	// with an empty value appearing in NullFields will be sent to the
15332	// server as null. It is an error if a field in this list has a
15333	// non-empty value. This may be used to include null fields in Patch
15334	// requests.
15335	NullFields []string `json:"-"`
15336}
15337
15338func (s *GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses) MarshalJSON() ([]byte, error) {
15339	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses
15340	raw := NoMethod(*s)
15341	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15342}
15343
15344// GoogleCloudDialogflowV2beta1IntentMessageSuggestion: The suggestion
15345// chip message that the user can tap to quickly post a reply to the
15346// conversation.
15347type GoogleCloudDialogflowV2beta1IntentMessageSuggestion struct {
15348	// Title: Required. The text shown the in the suggestion chip.
15349	Title string `json:"title,omitempty"`
15350
15351	// ForceSendFields is a list of field names (e.g. "Title") to
15352	// unconditionally include in API requests. By default, fields with
15353	// empty or default values are omitted from API requests. However, any
15354	// non-pointer, non-interface field appearing in ForceSendFields will be
15355	// sent to the server regardless of whether the field is empty or not.
15356	// This may be used to include empty fields in Patch requests.
15357	ForceSendFields []string `json:"-"`
15358
15359	// NullFields is a list of field names (e.g. "Title") to include in API
15360	// requests with the JSON null value. By default, fields with empty
15361	// values are omitted from API requests. However, any field with an
15362	// empty value appearing in NullFields will be sent to the server as
15363	// null. It is an error if a field in this list has a non-empty value.
15364	// This may be used to include null fields in Patch requests.
15365	NullFields []string `json:"-"`
15366}
15367
15368func (s *GoogleCloudDialogflowV2beta1IntentMessageSuggestion) MarshalJSON() ([]byte, error) {
15369	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageSuggestion
15370	raw := NoMethod(*s)
15371	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15372}
15373
15374// GoogleCloudDialogflowV2beta1IntentMessageSuggestions: The collection
15375// of suggestions.
15376type GoogleCloudDialogflowV2beta1IntentMessageSuggestions struct {
15377	// Suggestions: Required. The list of suggested replies.
15378	Suggestions []*GoogleCloudDialogflowV2beta1IntentMessageSuggestion `json:"suggestions,omitempty"`
15379
15380	// ForceSendFields is a list of field names (e.g. "Suggestions") to
15381	// unconditionally include in API requests. By default, fields with
15382	// empty or default values are omitted from API requests. However, any
15383	// non-pointer, non-interface field appearing in ForceSendFields will be
15384	// sent to the server regardless of whether the field is empty or not.
15385	// This may be used to include empty fields in Patch requests.
15386	ForceSendFields []string `json:"-"`
15387
15388	// NullFields is a list of field names (e.g. "Suggestions") to include
15389	// in API requests with the JSON null value. By default, fields with
15390	// empty values are omitted from API requests. However, any field with
15391	// an empty value appearing in NullFields will be sent to the server as
15392	// null. It is an error if a field in this list has a non-empty value.
15393	// This may be used to include null fields in Patch requests.
15394	NullFields []string `json:"-"`
15395}
15396
15397func (s *GoogleCloudDialogflowV2beta1IntentMessageSuggestions) MarshalJSON() ([]byte, error) {
15398	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageSuggestions
15399	raw := NoMethod(*s)
15400	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15401}
15402
15403// GoogleCloudDialogflowV2beta1IntentMessageTableCard: Table card for
15404// Actions on Google.
15405type GoogleCloudDialogflowV2beta1IntentMessageTableCard struct {
15406	// Buttons: Optional. List of buttons for the card.
15407	Buttons []*GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton `json:"buttons,omitempty"`
15408
15409	// ColumnProperties: Optional. Display properties for the columns in
15410	// this table.
15411	ColumnProperties []*GoogleCloudDialogflowV2beta1IntentMessageColumnProperties `json:"columnProperties,omitempty"`
15412
15413	// Image: Optional. Image which should be displayed on the card.
15414	Image *GoogleCloudDialogflowV2beta1IntentMessageImage `json:"image,omitempty"`
15415
15416	// Rows: Optional. Rows in this table of data.
15417	Rows []*GoogleCloudDialogflowV2beta1IntentMessageTableCardRow `json:"rows,omitempty"`
15418
15419	// Subtitle: Optional. Subtitle to the title.
15420	Subtitle string `json:"subtitle,omitempty"`
15421
15422	// Title: Required. Title of the card.
15423	Title string `json:"title,omitempty"`
15424
15425	// ForceSendFields is a list of field names (e.g. "Buttons") to
15426	// unconditionally include in API requests. By default, fields with
15427	// empty or default values are omitted from API requests. However, any
15428	// non-pointer, non-interface field appearing in ForceSendFields will be
15429	// sent to the server regardless of whether the field is empty or not.
15430	// This may be used to include empty fields in Patch requests.
15431	ForceSendFields []string `json:"-"`
15432
15433	// NullFields is a list of field names (e.g. "Buttons") to include in
15434	// API requests with the JSON null value. By default, fields with empty
15435	// values are omitted from API requests. However, any field with an
15436	// empty value appearing in NullFields will be sent to the server as
15437	// null. It is an error if a field in this list has a non-empty value.
15438	// This may be used to include null fields in Patch requests.
15439	NullFields []string `json:"-"`
15440}
15441
15442func (s *GoogleCloudDialogflowV2beta1IntentMessageTableCard) MarshalJSON() ([]byte, error) {
15443	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageTableCard
15444	raw := NoMethod(*s)
15445	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15446}
15447
15448// GoogleCloudDialogflowV2beta1IntentMessageTableCardCell: Cell of
15449// TableCardRow.
15450type GoogleCloudDialogflowV2beta1IntentMessageTableCardCell struct {
15451	// Text: Required. Text in this cell.
15452	Text string `json:"text,omitempty"`
15453
15454	// ForceSendFields is a list of field names (e.g. "Text") to
15455	// unconditionally include in API requests. By default, fields with
15456	// empty or default values are omitted from API requests. However, any
15457	// non-pointer, non-interface field appearing in ForceSendFields will be
15458	// sent to the server regardless of whether the field is empty or not.
15459	// This may be used to include empty fields in Patch requests.
15460	ForceSendFields []string `json:"-"`
15461
15462	// NullFields is a list of field names (e.g. "Text") to include in API
15463	// requests with the JSON null value. By default, fields with empty
15464	// values are omitted from API requests. However, any field with an
15465	// empty value appearing in NullFields will be sent to the server as
15466	// null. It is an error if a field in this list has a non-empty value.
15467	// This may be used to include null fields in Patch requests.
15468	NullFields []string `json:"-"`
15469}
15470
15471func (s *GoogleCloudDialogflowV2beta1IntentMessageTableCardCell) MarshalJSON() ([]byte, error) {
15472	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageTableCardCell
15473	raw := NoMethod(*s)
15474	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15475}
15476
15477// GoogleCloudDialogflowV2beta1IntentMessageTableCardRow: Row of
15478// TableCard.
15479type GoogleCloudDialogflowV2beta1IntentMessageTableCardRow struct {
15480	// Cells: Optional. List of cells that make up this row.
15481	Cells []*GoogleCloudDialogflowV2beta1IntentMessageTableCardCell `json:"cells,omitempty"`
15482
15483	// DividerAfter: Optional. Whether to add a visual divider after this
15484	// row.
15485	DividerAfter bool `json:"dividerAfter,omitempty"`
15486
15487	// ForceSendFields is a list of field names (e.g. "Cells") to
15488	// unconditionally include in API requests. By default, fields with
15489	// empty or default values are omitted from API requests. However, any
15490	// non-pointer, non-interface field appearing in ForceSendFields will be
15491	// sent to the server regardless of whether the field is empty or not.
15492	// This may be used to include empty fields in Patch requests.
15493	ForceSendFields []string `json:"-"`
15494
15495	// NullFields is a list of field names (e.g. "Cells") to include in API
15496	// requests with the JSON null value. By default, fields with empty
15497	// values are omitted from API requests. However, any field with an
15498	// empty value appearing in NullFields will be sent to the server as
15499	// null. It is an error if a field in this list has a non-empty value.
15500	// This may be used to include null fields in Patch requests.
15501	NullFields []string `json:"-"`
15502}
15503
15504func (s *GoogleCloudDialogflowV2beta1IntentMessageTableCardRow) MarshalJSON() ([]byte, error) {
15505	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageTableCardRow
15506	raw := NoMethod(*s)
15507	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15508}
15509
15510// GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio: Plays
15511// audio from a file in Telephony Gateway.
15512type GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio struct {
15513	// AudioUri: Required. URI to a Google Cloud Storage object containing
15514	// the audio to play, e.g., "gs://bucket/object". The object must
15515	// contain a single channel (mono) of linear PCM audio (2 bytes /
15516	// sample) at 8kHz. This object must be readable by the
15517	// `service-@gcp-sa-dialogflow.iam.gserviceaccount.com` service account
15518	// where is the number of the Telephony Gateway project (usually the
15519	// same as the Dialogflow agent project). If the Google Cloud Storage
15520	// bucket is in the Telephony Gateway project, this permission is added
15521	// by default when enabling the Dialogflow V2 API. For audio from other
15522	// sources, consider using the `TelephonySynthesizeSpeech` message with
15523	// SSML.
15524	AudioUri string `json:"audioUri,omitempty"`
15525
15526	// ForceSendFields is a list of field names (e.g. "AudioUri") to
15527	// unconditionally include in API requests. By default, fields with
15528	// empty or default values are omitted from API requests. However, any
15529	// non-pointer, non-interface field appearing in ForceSendFields will be
15530	// sent to the server regardless of whether the field is empty or not.
15531	// This may be used to include empty fields in Patch requests.
15532	ForceSendFields []string `json:"-"`
15533
15534	// NullFields is a list of field names (e.g. "AudioUri") to include in
15535	// API requests with the JSON null value. By default, fields with empty
15536	// values are omitted from API requests. However, any field with an
15537	// empty value appearing in NullFields will be sent to the server as
15538	// null. It is an error if a field in this list has a non-empty value.
15539	// This may be used to include null fields in Patch requests.
15540	NullFields []string `json:"-"`
15541}
15542
15543func (s *GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio) MarshalJSON() ([]byte, error) {
15544	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio
15545	raw := NoMethod(*s)
15546	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15547}
15548
15549// GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech:
15550// Synthesizes speech and plays back the synthesized audio to the caller
15551// in Telephony Gateway. Telephony Gateway takes the synthesizer
15552// settings from `DetectIntentResponse.output_audio_config` which can
15553// either be set at request-level or can come from the agent-level
15554// synthesizer config.
15555type GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech struct {
15556	// Ssml: The SSML to be synthesized. For more information, see SSML
15557	// (https://developers.google.com/actions/reference/ssml).
15558	Ssml string `json:"ssml,omitempty"`
15559
15560	// Text: The raw text to be synthesized.
15561	Text string `json:"text,omitempty"`
15562
15563	// ForceSendFields is a list of field names (e.g. "Ssml") to
15564	// unconditionally include in API requests. By default, fields with
15565	// empty or default values are omitted from API requests. However, any
15566	// non-pointer, non-interface field appearing in ForceSendFields will be
15567	// sent to the server regardless of whether the field is empty or not.
15568	// This may be used to include empty fields in Patch requests.
15569	ForceSendFields []string `json:"-"`
15570
15571	// NullFields is a list of field names (e.g. "Ssml") to include in API
15572	// requests with the JSON null value. By default, fields with empty
15573	// values are omitted from API requests. However, any field with an
15574	// empty value appearing in NullFields will be sent to the server as
15575	// null. It is an error if a field in this list has a non-empty value.
15576	// This may be used to include null fields in Patch requests.
15577	NullFields []string `json:"-"`
15578}
15579
15580func (s *GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech) MarshalJSON() ([]byte, error) {
15581	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech
15582	raw := NoMethod(*s)
15583	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15584}
15585
15586// GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall:
15587// Transfers the call in Telephony Gateway.
15588type GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall struct {
15589	// PhoneNumber: Required. The phone number to transfer the call to in
15590	// E.164 format (https://en.wikipedia.org/wiki/E.164). We currently only
15591	// allow transferring to US numbers (+1xxxyyyzzzz).
15592	PhoneNumber string `json:"phoneNumber,omitempty"`
15593
15594	// ForceSendFields is a list of field names (e.g. "PhoneNumber") to
15595	// unconditionally include in API requests. By default, fields with
15596	// empty or default values are omitted from API requests. However, any
15597	// non-pointer, non-interface field appearing in ForceSendFields will be
15598	// sent to the server regardless of whether the field is empty or not.
15599	// This may be used to include empty fields in Patch requests.
15600	ForceSendFields []string `json:"-"`
15601
15602	// NullFields is a list of field names (e.g. "PhoneNumber") to include
15603	// in API requests with the JSON null value. By default, fields with
15604	// empty values are omitted from API requests. However, any field with
15605	// an empty value appearing in NullFields will be sent to the server as
15606	// null. It is an error if a field in this list has a non-empty value.
15607	// This may be used to include null fields in Patch requests.
15608	NullFields []string `json:"-"`
15609}
15610
15611func (s *GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall) MarshalJSON() ([]byte, error) {
15612	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall
15613	raw := NoMethod(*s)
15614	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15615}
15616
15617// GoogleCloudDialogflowV2beta1IntentMessageText: The text response
15618// message.
15619type GoogleCloudDialogflowV2beta1IntentMessageText struct {
15620	// Text: Optional. The collection of the agent's responses.
15621	Text []string `json:"text,omitempty"`
15622
15623	// ForceSendFields is a list of field names (e.g. "Text") to
15624	// unconditionally include in API requests. By default, fields with
15625	// empty or default values are omitted from API requests. However, any
15626	// non-pointer, non-interface field appearing in ForceSendFields will be
15627	// sent to the server regardless of whether the field is empty or not.
15628	// This may be used to include empty fields in Patch requests.
15629	ForceSendFields []string `json:"-"`
15630
15631	// NullFields is a list of field names (e.g. "Text") to include in API
15632	// requests with the JSON null value. By default, fields with empty
15633	// values are omitted from API requests. However, any field with an
15634	// empty value appearing in NullFields will be sent to the server as
15635	// null. It is an error if a field in this list has a non-empty value.
15636	// This may be used to include null fields in Patch requests.
15637	NullFields []string `json:"-"`
15638}
15639
15640func (s *GoogleCloudDialogflowV2beta1IntentMessageText) MarshalJSON() ([]byte, error) {
15641	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageText
15642	raw := NoMethod(*s)
15643	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15644}
15645
15646// GoogleCloudDialogflowV2beta1IntentParameter: Represents intent
15647// parameters.
15648type GoogleCloudDialogflowV2beta1IntentParameter struct {
15649	// DefaultValue: Optional. The default value to use when the `value`
15650	// yields an empty result. Default values can be extracted from contexts
15651	// by using the following syntax: `#context_name.parameter_name`.
15652	DefaultValue string `json:"defaultValue,omitempty"`
15653
15654	// DisplayName: Required. The name of the parameter.
15655	DisplayName string `json:"displayName,omitempty"`
15656
15657	// EntityTypeDisplayName: Optional. The name of the entity type,
15658	// prefixed with `@`, that describes values of the parameter. If the
15659	// parameter is required, this must be provided.
15660	EntityTypeDisplayName string `json:"entityTypeDisplayName,omitempty"`
15661
15662	// IsList: Optional. Indicates whether the parameter represents a list
15663	// of values.
15664	IsList bool `json:"isList,omitempty"`
15665
15666	// Mandatory: Optional. Indicates whether the parameter is required.
15667	// That is, whether the intent cannot be completed without collecting
15668	// the parameter value.
15669	Mandatory bool `json:"mandatory,omitempty"`
15670
15671	// Name: The unique identifier of this parameter.
15672	Name string `json:"name,omitempty"`
15673
15674	// Prompts: Optional. The collection of prompts that the agent can
15675	// present to the user in order to collect a value for the parameter.
15676	Prompts []string `json:"prompts,omitempty"`
15677
15678	// Value: Optional. The definition of the parameter value. It can be: -
15679	// a constant string, - a parameter value defined as `$parameter_name`,
15680	// - an original parameter value defined as `$parameter_name.original`,
15681	// - a parameter value from some context defined as
15682	// `#context_name.parameter_name`.
15683	Value string `json:"value,omitempty"`
15684
15685	// ForceSendFields is a list of field names (e.g. "DefaultValue") to
15686	// unconditionally include in API requests. By default, fields with
15687	// empty or default values are omitted from API requests. However, any
15688	// non-pointer, non-interface field appearing in ForceSendFields will be
15689	// sent to the server regardless of whether the field is empty or not.
15690	// This may be used to include empty fields in Patch requests.
15691	ForceSendFields []string `json:"-"`
15692
15693	// NullFields is a list of field names (e.g. "DefaultValue") to include
15694	// in API requests with the JSON null value. By default, fields with
15695	// empty values are omitted from API requests. However, any field with
15696	// an empty value appearing in NullFields will be sent to the server as
15697	// null. It is an error if a field in this list has a non-empty value.
15698	// This may be used to include null fields in Patch requests.
15699	NullFields []string `json:"-"`
15700}
15701
15702func (s *GoogleCloudDialogflowV2beta1IntentParameter) MarshalJSON() ([]byte, error) {
15703	type NoMethod GoogleCloudDialogflowV2beta1IntentParameter
15704	raw := NoMethod(*s)
15705	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15706}
15707
15708// GoogleCloudDialogflowV2beta1IntentTrainingPhrase: Represents an
15709// example that the agent is trained on.
15710type GoogleCloudDialogflowV2beta1IntentTrainingPhrase struct {
15711	// Name: Output only. The unique identifier of this training phrase.
15712	Name string `json:"name,omitempty"`
15713
15714	// Parts: Required. The ordered list of training phrase parts. The parts
15715	// are concatenated in order to form the training phrase. Note: The API
15716	// does not automatically annotate training phrases like the Dialogflow
15717	// Console does. Note: Do not forget to include whitespace at part
15718	// boundaries, so the training phrase is well formatted when the parts
15719	// are concatenated. If the training phrase does not need to be
15720	// annotated with parameters, you just need a single part with only the
15721	// Part.text field set. If you want to annotate the training phrase, you
15722	// must create multiple parts, where the fields of each part are
15723	// populated in one of two ways: - `Part.text` is set to a part of the
15724	// phrase that has no parameters. - `Part.text` is set to a part of the
15725	// phrase that you want to annotate, and the `entity_type`, `alias`, and
15726	// `user_defined` fields are all set.
15727	Parts []*GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart `json:"parts,omitempty"`
15728
15729	// TimesAddedCount: Optional. Indicates how many times this example was
15730	// added to the intent. Each time a developer adds an existing sample by
15731	// editing an intent or training, this counter is increased.
15732	TimesAddedCount int64 `json:"timesAddedCount,omitempty"`
15733
15734	// Type: Required. The type of the training phrase.
15735	//
15736	// Possible values:
15737	//   "TYPE_UNSPECIFIED" - Not specified. This value should never be
15738	// used.
15739	//   "EXAMPLE" - Examples do not contain @-prefixed entity type names,
15740	// but example parts can be annotated with entity types.
15741	//   "TEMPLATE" - Templates are not annotated with entity types, but
15742	// they can contain @-prefixed entity type names as substrings. Template
15743	// mode has been deprecated. Example mode is the only supported way to
15744	// create new training phrases. If you have existing training phrases
15745	// that you've created in template mode, those will continue to work.
15746	Type string `json:"type,omitempty"`
15747
15748	// ForceSendFields is a list of field names (e.g. "Name") to
15749	// unconditionally include in API requests. By default, fields with
15750	// empty or default values are omitted from API requests. However, any
15751	// non-pointer, non-interface field appearing in ForceSendFields will be
15752	// sent to the server regardless of whether the field is empty or not.
15753	// This may be used to include empty fields in Patch requests.
15754	ForceSendFields []string `json:"-"`
15755
15756	// NullFields is a list of field names (e.g. "Name") to include in API
15757	// requests with the JSON null value. By default, fields with empty
15758	// values are omitted from API requests. However, any field with an
15759	// empty value appearing in NullFields will be sent to the server as
15760	// null. It is an error if a field in this list has a non-empty value.
15761	// This may be used to include null fields in Patch requests.
15762	NullFields []string `json:"-"`
15763}
15764
15765func (s *GoogleCloudDialogflowV2beta1IntentTrainingPhrase) MarshalJSON() ([]byte, error) {
15766	type NoMethod GoogleCloudDialogflowV2beta1IntentTrainingPhrase
15767	raw := NoMethod(*s)
15768	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15769}
15770
15771// GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart: Represents a
15772// part of a training phrase.
15773type GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart struct {
15774	// Alias: Optional. The parameter name for the value extracted from the
15775	// annotated part of the example. This field is required for annotated
15776	// parts of the training phrase.
15777	Alias string `json:"alias,omitempty"`
15778
15779	// EntityType: Optional. The entity type name prefixed with `@`. This
15780	// field is required for annotated parts of the training phrase.
15781	EntityType string `json:"entityType,omitempty"`
15782
15783	// Text: Required. The text for this part.
15784	Text string `json:"text,omitempty"`
15785
15786	// UserDefined: Optional. Indicates whether the text was manually
15787	// annotated. This field is set to true when the Dialogflow Console is
15788	// used to manually annotate the part. When creating an annotated part
15789	// with the API, you must set this to true.
15790	UserDefined bool `json:"userDefined,omitempty"`
15791
15792	// ForceSendFields is a list of field names (e.g. "Alias") to
15793	// unconditionally include in API requests. By default, fields with
15794	// empty or default values are omitted from API requests. However, any
15795	// non-pointer, non-interface field appearing in ForceSendFields will be
15796	// sent to the server regardless of whether the field is empty or not.
15797	// This may be used to include empty fields in Patch requests.
15798	ForceSendFields []string `json:"-"`
15799
15800	// NullFields is a list of field names (e.g. "Alias") to include in API
15801	// requests with the JSON null value. By default, fields with empty
15802	// values are omitted from API requests. However, any field with an
15803	// empty value appearing in NullFields will be sent to the server as
15804	// null. It is an error if a field in this list has a non-empty value.
15805	// This may be used to include null fields in Patch requests.
15806	NullFields []string `json:"-"`
15807}
15808
15809func (s *GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart) MarshalJSON() ([]byte, error) {
15810	type NoMethod GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart
15811	raw := NoMethod(*s)
15812	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15813}
15814
15815// GoogleCloudDialogflowV2beta1KnowledgeAnswers: Represents the result
15816// of querying a Knowledge base.
15817type GoogleCloudDialogflowV2beta1KnowledgeAnswers struct {
15818	// Answers: A list of answers from Knowledge Connector.
15819	Answers []*GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer `json:"answers,omitempty"`
15820
15821	// ForceSendFields is a list of field names (e.g. "Answers") to
15822	// unconditionally include in API requests. By default, fields with
15823	// empty or default values are omitted from API requests. However, any
15824	// non-pointer, non-interface field appearing in ForceSendFields will be
15825	// sent to the server regardless of whether the field is empty or not.
15826	// This may be used to include empty fields in Patch requests.
15827	ForceSendFields []string `json:"-"`
15828
15829	// NullFields is a list of field names (e.g. "Answers") to include in
15830	// API requests with the JSON null value. By default, fields with empty
15831	// values are omitted from API requests. However, any field with an
15832	// empty value appearing in NullFields will be sent to the server as
15833	// null. It is an error if a field in this list has a non-empty value.
15834	// This may be used to include null fields in Patch requests.
15835	NullFields []string `json:"-"`
15836}
15837
15838func (s *GoogleCloudDialogflowV2beta1KnowledgeAnswers) MarshalJSON() ([]byte, error) {
15839	type NoMethod GoogleCloudDialogflowV2beta1KnowledgeAnswers
15840	raw := NoMethod(*s)
15841	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15842}
15843
15844// GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer: An answer from
15845// Knowledge Connector.
15846type GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer struct {
15847	// Answer: The piece of text from the `source` knowledge base document
15848	// that answers this conversational query.
15849	Answer string `json:"answer,omitempty"`
15850
15851	// FaqQuestion: The corresponding FAQ question if the answer was
15852	// extracted from a FAQ Document, empty otherwise.
15853	FaqQuestion string `json:"faqQuestion,omitempty"`
15854
15855	// MatchConfidence: The system's confidence score that this Knowledge
15856	// answer is a good match for this conversational query. The range is
15857	// from 0.0 (completely uncertain) to 1.0 (completely certain). Note:
15858	// The confidence score is likely to vary somewhat (possibly even for
15859	// identical requests), as the underlying model is under constant
15860	// improvement. It may be deprecated in the future. We recommend using
15861	// `match_confidence_level` which should be generally more stable.
15862	MatchConfidence float64 `json:"matchConfidence,omitempty"`
15863
15864	// MatchConfidenceLevel: The system's confidence level that this
15865	// knowledge answer is a good match for this conversational query. NOTE:
15866	// The confidence level for a given `` pair may change without notice,
15867	// as it depends on models that are constantly being improved. However,
15868	// it will change less frequently than the confidence score below, and
15869	// should be preferred for referencing the quality of an answer.
15870	//
15871	// Possible values:
15872	//   "MATCH_CONFIDENCE_LEVEL_UNSPECIFIED" - Not specified.
15873	//   "LOW" - Indicates that the confidence is low.
15874	//   "MEDIUM" - Indicates our confidence is medium.
15875	//   "HIGH" - Indicates our confidence is high.
15876	MatchConfidenceLevel string `json:"matchConfidenceLevel,omitempty"`
15877
15878	// Source: Indicates which Knowledge Document this answer was extracted
15879	// from. Format: `projects//knowledgeBases//documents/`.
15880	Source string `json:"source,omitempty"`
15881
15882	// ForceSendFields is a list of field names (e.g. "Answer") to
15883	// unconditionally include in API requests. By default, fields with
15884	// empty or default values are omitted from API requests. However, any
15885	// non-pointer, non-interface field appearing in ForceSendFields will be
15886	// sent to the server regardless of whether the field is empty or not.
15887	// This may be used to include empty fields in Patch requests.
15888	ForceSendFields []string `json:"-"`
15889
15890	// NullFields is a list of field names (e.g. "Answer") to include in API
15891	// requests with the JSON null value. By default, fields with empty
15892	// values are omitted from API requests. However, any field with an
15893	// empty value appearing in NullFields will be sent to the server as
15894	// null. It is an error if a field in this list has a non-empty value.
15895	// This may be used to include null fields in Patch requests.
15896	NullFields []string `json:"-"`
15897}
15898
15899func (s *GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer) MarshalJSON() ([]byte, error) {
15900	type NoMethod GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer
15901	raw := NoMethod(*s)
15902	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15903}
15904
15905func (s *GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer) UnmarshalJSON(data []byte) error {
15906	type NoMethod GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer
15907	var s1 struct {
15908		MatchConfidence gensupport.JSONFloat64 `json:"matchConfidence"`
15909		*NoMethod
15910	}
15911	s1.NoMethod = (*NoMethod)(s)
15912	if err := json.Unmarshal(data, &s1); err != nil {
15913		return err
15914	}
15915	s.MatchConfidence = float64(s1.MatchConfidence)
15916	return nil
15917}
15918
15919// GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata: Metadata in
15920// google::longrunning::Operation for Knowledge operations.
15921type GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata struct {
15922	// State: Required. Output only. The current state of this operation.
15923	//
15924	// Possible values:
15925	//   "STATE_UNSPECIFIED" - State unspecified.
15926	//   "PENDING" - The operation has been created.
15927	//   "RUNNING" - The operation is currently running.
15928	//   "DONE" - The operation is done, either cancelled or completed.
15929	State string `json:"state,omitempty"`
15930
15931	// ForceSendFields is a list of field names (e.g. "State") to
15932	// unconditionally include in API requests. By default, fields with
15933	// empty or default values are omitted from API requests. However, any
15934	// non-pointer, non-interface field appearing in ForceSendFields will be
15935	// sent to the server regardless of whether the field is empty or not.
15936	// This may be used to include empty fields in Patch requests.
15937	ForceSendFields []string `json:"-"`
15938
15939	// NullFields is a list of field names (e.g. "State") to include in API
15940	// requests with the JSON null value. By default, fields with empty
15941	// values are omitted from API requests. However, any field with an
15942	// empty value appearing in NullFields will be sent to the server as
15943	// null. It is an error if a field in this list has a non-empty value.
15944	// This may be used to include null fields in Patch requests.
15945	NullFields []string `json:"-"`
15946}
15947
15948func (s *GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata) MarshalJSON() ([]byte, error) {
15949	type NoMethod GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata
15950	raw := NoMethod(*s)
15951	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15952}
15953
15954// GoogleCloudDialogflowV2beta1Message: Represents a message posted into
15955// a conversation.
15956type GoogleCloudDialogflowV2beta1Message struct {
15957	// Content: Required. The message content.
15958	Content string `json:"content,omitempty"`
15959
15960	// CreateTime: Output only. The time when the message was created in
15961	// Contact Center AI.
15962	CreateTime string `json:"createTime,omitempty"`
15963
15964	// LanguageCode: Optional. The message language. This should be a BCP-47
15965	// (https://www.rfc-editor.org/rfc/bcp/bcp47.txt) language tag. Example:
15966	// "en-US".
15967	LanguageCode string `json:"languageCode,omitempty"`
15968
15969	// MessageAnnotation: Output only. The annotation for the message.
15970	MessageAnnotation *GoogleCloudDialogflowV2beta1MessageAnnotation `json:"messageAnnotation,omitempty"`
15971
15972	// Name: Optional. The unique identifier of the message. Format:
15973	// `projects//locations//conversations//messages/`.
15974	Name string `json:"name,omitempty"`
15975
15976	// Participant: Output only. The participant that sends this message.
15977	Participant string `json:"participant,omitempty"`
15978
15979	// ParticipantRole: Output only. The role of the participant.
15980	//
15981	// Possible values:
15982	//   "ROLE_UNSPECIFIED" - Participant role not set.
15983	//   "HUMAN_AGENT" - Participant is a human agent.
15984	//   "AUTOMATED_AGENT" - Participant is an automated agent, such as a
15985	// Dialogflow agent.
15986	//   "END_USER" - Participant is an end user that has called or chatted
15987	// with Dialogflow services.
15988	ParticipantRole string `json:"participantRole,omitempty"`
15989
15990	// SendTime: Optional. The time when the message was sent.
15991	SendTime string `json:"sendTime,omitempty"`
15992
15993	// SentimentAnalysis: Output only. The sentiment analysis result for the
15994	// message.
15995	SentimentAnalysis *GoogleCloudDialogflowV2beta1SentimentAnalysisResult `json:"sentimentAnalysis,omitempty"`
15996
15997	// ForceSendFields is a list of field names (e.g. "Content") to
15998	// unconditionally include in API requests. By default, fields with
15999	// empty or default values are omitted from API requests. However, any
16000	// non-pointer, non-interface field appearing in ForceSendFields will be
16001	// sent to the server regardless of whether the field is empty or not.
16002	// This may be used to include empty fields in Patch requests.
16003	ForceSendFields []string `json:"-"`
16004
16005	// NullFields is a list of field names (e.g. "Content") to include in
16006	// API requests with the JSON null value. By default, fields with empty
16007	// values are omitted from API requests. However, any field with an
16008	// empty value appearing in NullFields will be sent to the server as
16009	// null. It is an error if a field in this list has a non-empty value.
16010	// This may be used to include null fields in Patch requests.
16011	NullFields []string `json:"-"`
16012}
16013
16014func (s *GoogleCloudDialogflowV2beta1Message) MarshalJSON() ([]byte, error) {
16015	type NoMethod GoogleCloudDialogflowV2beta1Message
16016	raw := NoMethod(*s)
16017	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16018}
16019
16020// GoogleCloudDialogflowV2beta1MessageAnnotation: Represents the result
16021// of annotation for the message.
16022type GoogleCloudDialogflowV2beta1MessageAnnotation struct {
16023	// ContainEntities: Required. Indicates whether the text message
16024	// contains entities.
16025	ContainEntities bool `json:"containEntities,omitempty"`
16026
16027	// Parts: Optional. The collection of annotated message parts ordered by
16028	// their position in the message. You can recover the annotated message
16029	// by concatenating [AnnotatedMessagePart.text].
16030	Parts []*GoogleCloudDialogflowV2beta1AnnotatedMessagePart `json:"parts,omitempty"`
16031
16032	// ForceSendFields is a list of field names (e.g. "ContainEntities") to
16033	// unconditionally include in API requests. By default, fields with
16034	// empty or default values are omitted from API requests. However, any
16035	// non-pointer, non-interface field appearing in ForceSendFields will be
16036	// sent to the server regardless of whether the field is empty or not.
16037	// This may be used to include empty fields in Patch requests.
16038	ForceSendFields []string `json:"-"`
16039
16040	// NullFields is a list of field names (e.g. "ContainEntities") to
16041	// include in API requests with the JSON null value. By default, fields
16042	// with empty values are omitted from API requests. However, any field
16043	// with an empty value appearing in NullFields will be sent to the
16044	// server as null. It is an error if a field in this list has a
16045	// non-empty value. This may be used to include null fields in Patch
16046	// requests.
16047	NullFields []string `json:"-"`
16048}
16049
16050func (s *GoogleCloudDialogflowV2beta1MessageAnnotation) MarshalJSON() ([]byte, error) {
16051	type NoMethod GoogleCloudDialogflowV2beta1MessageAnnotation
16052	raw := NoMethod(*s)
16053	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16054}
16055
16056// GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest: Represents
16057// the contents of the original request that was passed to the
16058// `[Streaming]DetectIntent` call.
16059type GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest struct {
16060	// Payload: Optional. This field is set to the value of the
16061	// `QueryParameters.payload` field passed in the request. Some
16062	// integrations that query a Dialogflow agent may provide additional
16063	// information in the payload. In particular, for the Dialogflow Phone
16064	// Gateway integration, this field has the form: { "telephony": {
16065	// "caller_id": "+18558363987" } } Note: The caller ID field
16066	// (`caller_id`) will be redacted for Trial Edition agents and populated
16067	// with the caller ID in E.164 format
16068	// (https://en.wikipedia.org/wiki/E.164) for Essentials Edition agents.
16069	Payload googleapi.RawMessage `json:"payload,omitempty"`
16070
16071	// Source: The source of this request, e.g., `google`, `facebook`,
16072	// `slack`. It is set by Dialogflow-owned servers.
16073	Source string `json:"source,omitempty"`
16074
16075	// Version: Optional. The version of the protocol used for this request.
16076	// This field is AoG-specific.
16077	Version string `json:"version,omitempty"`
16078
16079	// ForceSendFields is a list of field names (e.g. "Payload") to
16080	// unconditionally include in API requests. By default, fields with
16081	// empty or default values are omitted from API requests. However, any
16082	// non-pointer, non-interface field appearing in ForceSendFields will be
16083	// sent to the server regardless of whether the field is empty or not.
16084	// This may be used to include empty fields in Patch requests.
16085	ForceSendFields []string `json:"-"`
16086
16087	// NullFields is a list of field names (e.g. "Payload") to include in
16088	// API requests with the JSON null value. By default, fields with empty
16089	// values are omitted from API requests. However, any field with an
16090	// empty value appearing in NullFields will be sent to the server as
16091	// null. It is an error if a field in this list has a non-empty value.
16092	// This may be used to include null fields in Patch requests.
16093	NullFields []string `json:"-"`
16094}
16095
16096func (s *GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest) MarshalJSON() ([]byte, error) {
16097	type NoMethod GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest
16098	raw := NoMethod(*s)
16099	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16100}
16101
16102// GoogleCloudDialogflowV2beta1QueryResult: Represents the result of
16103// conversational query or event processing.
16104type GoogleCloudDialogflowV2beta1QueryResult struct {
16105	// Action: The action name from the matched intent.
16106	Action string `json:"action,omitempty"`
16107
16108	// AllRequiredParamsPresent: This field is set to: - `false` if the
16109	// matched intent has required parameters and not all of the required
16110	// parameter values have been collected. - `true` if all required
16111	// parameter values have been collected, or if the matched intent
16112	// doesn't contain any required parameters.
16113	AllRequiredParamsPresent bool `json:"allRequiredParamsPresent,omitempty"`
16114
16115	// CancelsSlotFilling: Indicates whether the conversational query
16116	// triggers a cancellation for slot filling.
16117	CancelsSlotFilling bool `json:"cancelsSlotFilling,omitempty"`
16118
16119	// DiagnosticInfo: Free-form diagnostic information for the associated
16120	// detect intent request. The fields of this data can change without
16121	// notice, so you should not write code that depends on its structure.
16122	// The data may contain: - webhook call latency - webhook errors
16123	DiagnosticInfo googleapi.RawMessage `json:"diagnosticInfo,omitempty"`
16124
16125	// FulfillmentMessages: The collection of rich messages to present to
16126	// the user.
16127	FulfillmentMessages []*GoogleCloudDialogflowV2beta1IntentMessage `json:"fulfillmentMessages,omitempty"`
16128
16129	// FulfillmentText: The text to be pronounced to the user or shown on
16130	// the screen. Note: This is a legacy field, `fulfillment_messages`
16131	// should be preferred.
16132	FulfillmentText string `json:"fulfillmentText,omitempty"`
16133
16134	// Intent: The intent that matched the conversational query. Some, not
16135	// all fields are filled in this message, including but not limited to:
16136	// `name`, `display_name`, `end_interaction` and `is_fallback`.
16137	Intent *GoogleCloudDialogflowV2beta1Intent `json:"intent,omitempty"`
16138
16139	// IntentDetectionConfidence: The intent detection confidence. Values
16140	// range from 0.0 (completely uncertain) to 1.0 (completely certain).
16141	// This value is for informational purpose only and is only used to help
16142	// match the best intent within the classification threshold. This value
16143	// may change for the same end-user expression at any time due to a
16144	// model retraining or change in implementation. If there are `multiple
16145	// knowledge_answers` messages, this value is set to the greatest
16146	// `knowledgeAnswers.match_confidence` value in the list.
16147	IntentDetectionConfidence float64 `json:"intentDetectionConfidence,omitempty"`
16148
16149	// KnowledgeAnswers: The result from Knowledge Connector (if any),
16150	// ordered by decreasing `KnowledgeAnswers.match_confidence`.
16151	KnowledgeAnswers *GoogleCloudDialogflowV2beta1KnowledgeAnswers `json:"knowledgeAnswers,omitempty"`
16152
16153	// LanguageCode: The language that was triggered during intent
16154	// detection. See Language Support
16155	// (https://cloud.google.com/dialogflow/docs/reference/language) for a
16156	// list of the currently supported language codes.
16157	LanguageCode string `json:"languageCode,omitempty"`
16158
16159	// OutputContexts: The collection of output contexts. If applicable,
16160	// `output_contexts.parameters` contains entries with name `.original`
16161	// containing the original parameter values before the query.
16162	OutputContexts []*GoogleCloudDialogflowV2beta1Context `json:"outputContexts,omitempty"`
16163
16164	// Parameters: The collection of extracted parameters. Depending on your
16165	// protocol or client library language, this is a map, associative
16166	// array, symbol table, dictionary, or JSON object composed of a
16167	// collection of (MapKey, MapValue) pairs: - MapKey type: string -
16168	// MapKey value: parameter name - MapValue type: - If parameter's entity
16169	// type is a composite entity: map - Else: depending on parameter value
16170	// type, could be one of string, number, boolean, null, list or map -
16171	// MapValue value: - If parameter's entity type is a composite entity:
16172	// map from composite entity property names to property values - Else:
16173	// parameter value
16174	Parameters googleapi.RawMessage `json:"parameters,omitempty"`
16175
16176	// QueryText: The original conversational query text: - If natural
16177	// language text was provided as input, `query_text` contains a copy of
16178	// the input. - If natural language speech audio was provided as input,
16179	// `query_text` contains the speech recognition result. If speech
16180	// recognizer produced multiple alternatives, a particular one is
16181	// picked. - If automatic spell correction is enabled, `query_text` will
16182	// contain the corrected user input.
16183	QueryText string `json:"queryText,omitempty"`
16184
16185	// SentimentAnalysisResult: The sentiment analysis result, which depends
16186	// on the `sentiment_analysis_request_config` specified in the request.
16187	SentimentAnalysisResult *GoogleCloudDialogflowV2beta1SentimentAnalysisResult `json:"sentimentAnalysisResult,omitempty"`
16188
16189	// SpeechRecognitionConfidence: The Speech recognition confidence
16190	// between 0.0 and 1.0. A higher number indicates an estimated greater
16191	// likelihood that the recognized words are correct. The default of 0.0
16192	// is a sentinel value indicating that confidence was not set. This
16193	// field is not guaranteed to be accurate or set. In particular this
16194	// field isn't set for StreamingDetectIntent since the streaming
16195	// endpoint has separate confidence estimates per portion of the audio
16196	// in StreamingRecognitionResult.
16197	SpeechRecognitionConfidence float64 `json:"speechRecognitionConfidence,omitempty"`
16198
16199	// WebhookPayload: If the query was fulfilled by a webhook call, this
16200	// field is set to the value of the `payload` field returned in the
16201	// webhook response.
16202	WebhookPayload googleapi.RawMessage `json:"webhookPayload,omitempty"`
16203
16204	// WebhookSource: If the query was fulfilled by a webhook call, this
16205	// field is set to the value of the `source` field returned in the
16206	// webhook response.
16207	WebhookSource string `json:"webhookSource,omitempty"`
16208
16209	// ForceSendFields is a list of field names (e.g. "Action") to
16210	// unconditionally include in API requests. By default, fields with
16211	// empty or default values are omitted from API requests. However, any
16212	// non-pointer, non-interface field appearing in ForceSendFields will be
16213	// sent to the server regardless of whether the field is empty or not.
16214	// This may be used to include empty fields in Patch requests.
16215	ForceSendFields []string `json:"-"`
16216
16217	// NullFields is a list of field names (e.g. "Action") to include in API
16218	// requests with the JSON null value. By default, fields with empty
16219	// values are omitted from API requests. However, any field with an
16220	// empty value appearing in NullFields will be sent to the server as
16221	// null. It is an error if a field in this list has a non-empty value.
16222	// This may be used to include null fields in Patch requests.
16223	NullFields []string `json:"-"`
16224}
16225
16226func (s *GoogleCloudDialogflowV2beta1QueryResult) MarshalJSON() ([]byte, error) {
16227	type NoMethod GoogleCloudDialogflowV2beta1QueryResult
16228	raw := NoMethod(*s)
16229	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16230}
16231
16232func (s *GoogleCloudDialogflowV2beta1QueryResult) UnmarshalJSON(data []byte) error {
16233	type NoMethod GoogleCloudDialogflowV2beta1QueryResult
16234	var s1 struct {
16235		IntentDetectionConfidence   gensupport.JSONFloat64 `json:"intentDetectionConfidence"`
16236		SpeechRecognitionConfidence gensupport.JSONFloat64 `json:"speechRecognitionConfidence"`
16237		*NoMethod
16238	}
16239	s1.NoMethod = (*NoMethod)(s)
16240	if err := json.Unmarshal(data, &s1); err != nil {
16241		return err
16242	}
16243	s.IntentDetectionConfidence = float64(s1.IntentDetectionConfidence)
16244	s.SpeechRecognitionConfidence = float64(s1.SpeechRecognitionConfidence)
16245	return nil
16246}
16247
16248// GoogleCloudDialogflowV2beta1Sentiment: The sentiment, such as
16249// positive/negative feeling or association, for a unit of analysis,
16250// such as the query text.
16251type GoogleCloudDialogflowV2beta1Sentiment struct {
16252	// Magnitude: A non-negative number in the [0, +inf) range, which
16253	// represents the absolute magnitude of sentiment, regardless of score
16254	// (positive or negative).
16255	Magnitude float64 `json:"magnitude,omitempty"`
16256
16257	// Score: Sentiment score between -1.0 (negative sentiment) and 1.0
16258	// (positive sentiment).
16259	Score float64 `json:"score,omitempty"`
16260
16261	// ForceSendFields is a list of field names (e.g. "Magnitude") to
16262	// unconditionally include in API requests. By default, fields with
16263	// empty or default values are omitted from API requests. However, any
16264	// non-pointer, non-interface field appearing in ForceSendFields will be
16265	// sent to the server regardless of whether the field is empty or not.
16266	// This may be used to include empty fields in Patch requests.
16267	ForceSendFields []string `json:"-"`
16268
16269	// NullFields is a list of field names (e.g. "Magnitude") to include in
16270	// API requests with the JSON null value. By default, fields with empty
16271	// values are omitted from API requests. However, any field with an
16272	// empty value appearing in NullFields will be sent to the server as
16273	// null. It is an error if a field in this list has a non-empty value.
16274	// This may be used to include null fields in Patch requests.
16275	NullFields []string `json:"-"`
16276}
16277
16278func (s *GoogleCloudDialogflowV2beta1Sentiment) MarshalJSON() ([]byte, error) {
16279	type NoMethod GoogleCloudDialogflowV2beta1Sentiment
16280	raw := NoMethod(*s)
16281	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16282}
16283
16284func (s *GoogleCloudDialogflowV2beta1Sentiment) UnmarshalJSON(data []byte) error {
16285	type NoMethod GoogleCloudDialogflowV2beta1Sentiment
16286	var s1 struct {
16287		Magnitude gensupport.JSONFloat64 `json:"magnitude"`
16288		Score     gensupport.JSONFloat64 `json:"score"`
16289		*NoMethod
16290	}
16291	s1.NoMethod = (*NoMethod)(s)
16292	if err := json.Unmarshal(data, &s1); err != nil {
16293		return err
16294	}
16295	s.Magnitude = float64(s1.Magnitude)
16296	s.Score = float64(s1.Score)
16297	return nil
16298}
16299
16300// GoogleCloudDialogflowV2beta1SentimentAnalysisResult: The result of
16301// sentiment analysis. Sentiment analysis inspects user input and
16302// identifies the prevailing subjective opinion, especially to determine
16303// a user's attitude as positive, negative, or neutral. For
16304// Participants.DetectIntent, it needs to be configured in
16305// DetectIntentRequest.query_params. For
16306// Participants.StreamingDetectIntent, it needs to be configured in
16307// StreamingDetectIntentRequest.query_params. And for
16308// Participants.AnalyzeContent and Participants.StreamingAnalyzeContent,
16309// it needs to be configured in
16310// ConversationProfile.human_agent_assistant_config
16311type GoogleCloudDialogflowV2beta1SentimentAnalysisResult struct {
16312	// QueryTextSentiment: The sentiment analysis result for `query_text`.
16313	QueryTextSentiment *GoogleCloudDialogflowV2beta1Sentiment `json:"queryTextSentiment,omitempty"`
16314
16315	// ForceSendFields is a list of field names (e.g. "QueryTextSentiment")
16316	// to unconditionally include in API requests. By default, fields with
16317	// empty or default values are omitted from API requests. However, any
16318	// non-pointer, non-interface field appearing in ForceSendFields will be
16319	// sent to the server regardless of whether the field is empty or not.
16320	// This may be used to include empty fields in Patch requests.
16321	ForceSendFields []string `json:"-"`
16322
16323	// NullFields is a list of field names (e.g. "QueryTextSentiment") to
16324	// include in API requests with the JSON null value. By default, fields
16325	// with empty values are omitted from API requests. However, any field
16326	// with an empty value appearing in NullFields will be sent to the
16327	// server as null. It is an error if a field in this list has a
16328	// non-empty value. This may be used to include null fields in Patch
16329	// requests.
16330	NullFields []string `json:"-"`
16331}
16332
16333func (s *GoogleCloudDialogflowV2beta1SentimentAnalysisResult) MarshalJSON() ([]byte, error) {
16334	type NoMethod GoogleCloudDialogflowV2beta1SentimentAnalysisResult
16335	raw := NoMethod(*s)
16336	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16337}
16338
16339// GoogleCloudDialogflowV2beta1SessionEntityType: A session represents a
16340// conversation between a Dialogflow agent and an end-user. You can
16341// create special entities, called session entities, during a session.
16342// Session entities can extend or replace custom entity types and only
16343// exist during the session that they were created for. All session
16344// data, including session entities, is stored by Dialogflow for 20
16345// minutes. For more information, see the session entity guide
16346// (https://cloud.google.com/dialogflow/docs/entities-session).
16347type GoogleCloudDialogflowV2beta1SessionEntityType struct {
16348	// Entities: Required. The collection of entities associated with this
16349	// session entity type.
16350	Entities []*GoogleCloudDialogflowV2beta1EntityTypeEntity `json:"entities,omitempty"`
16351
16352	// EntityOverrideMode: Required. Indicates whether the additional data
16353	// should override or supplement the custom entity type definition.
16354	//
16355	// Possible values:
16356	//   "ENTITY_OVERRIDE_MODE_UNSPECIFIED" - Not specified. This value
16357	// should be never used.
16358	//   "ENTITY_OVERRIDE_MODE_OVERRIDE" - The collection of session
16359	// entities overrides the collection of entities in the corresponding
16360	// custom entity type.
16361	//   "ENTITY_OVERRIDE_MODE_SUPPLEMENT" - The collection of session
16362	// entities extends the collection of entities in the corresponding
16363	// custom entity type. Note: Even in this override mode calls to
16364	// `ListSessionEntityTypes`, `GetSessionEntityType`,
16365	// `CreateSessionEntityType` and `UpdateSessionEntityType` only return
16366	// the additional entities added in this session entity type. If you
16367	// want to get the supplemented list, please call
16368	// EntityTypes.GetEntityType on the custom entity type and merge.
16369	EntityOverrideMode string `json:"entityOverrideMode,omitempty"`
16370
16371	// Name: Required. The unique identifier of this session entity type.
16372	// Supported formats: - `projects//agent/sessions//entityTypes/` -
16373	// `projects//locations//agent/sessions//entityTypes/` -
16374	// `projects//agent/environments//users//sessions//entityTypes/` -
16375	// `projects//locations//agent/environments/
16376	// /users//sessions//entityTypes/` If `Location ID` is not specified we
16377	// assume default 'us' location. If `Environment ID` is not specified,
16378	// we assume default 'draft' environment. If `User ID` is not specified,
16379	// we assume default '-' user. `` must be the display name of an
16380	// existing entity type in the same agent that will be overridden or
16381	// supplemented.
16382	Name string `json:"name,omitempty"`
16383
16384	// ForceSendFields is a list of field names (e.g. "Entities") to
16385	// unconditionally include in API requests. By default, fields with
16386	// empty or default values are omitted from API requests. However, any
16387	// non-pointer, non-interface field appearing in ForceSendFields will be
16388	// sent to the server regardless of whether the field is empty or not.
16389	// This may be used to include empty fields in Patch requests.
16390	ForceSendFields []string `json:"-"`
16391
16392	// NullFields is a list of field names (e.g. "Entities") to include in
16393	// API requests with the JSON null value. By default, fields with empty
16394	// values are omitted from API requests. However, any field with an
16395	// empty value appearing in NullFields will be sent to the server as
16396	// null. It is an error if a field in this list has a non-empty value.
16397	// This may be used to include null fields in Patch requests.
16398	NullFields []string `json:"-"`
16399}
16400
16401func (s *GoogleCloudDialogflowV2beta1SessionEntityType) MarshalJSON() ([]byte, error) {
16402	type NoMethod GoogleCloudDialogflowV2beta1SessionEntityType
16403	raw := NoMethod(*s)
16404	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16405}
16406
16407// GoogleCloudDialogflowV2beta1SmartReplyAnswer: Represents a smart
16408// reply answer.
16409type GoogleCloudDialogflowV2beta1SmartReplyAnswer struct {
16410	// AnswerRecord: The name of answer record, in the format of
16411	// "projects//locations//answerRecords/"
16412	AnswerRecord string `json:"answerRecord,omitempty"`
16413
16414	// Confidence: Smart reply confidence. The system's confidence score
16415	// that this reply is a good match for this conversation, as a value
16416	// from 0.0 (completely uncertain) to 1.0 (completely certain).
16417	Confidence float64 `json:"confidence,omitempty"`
16418
16419	// Reply: The content of the reply.
16420	Reply string `json:"reply,omitempty"`
16421
16422	// ForceSendFields is a list of field names (e.g. "AnswerRecord") to
16423	// unconditionally include in API requests. By default, fields with
16424	// empty or default values are omitted from API requests. However, any
16425	// non-pointer, non-interface field appearing in ForceSendFields will be
16426	// sent to the server regardless of whether the field is empty or not.
16427	// This may be used to include empty fields in Patch requests.
16428	ForceSendFields []string `json:"-"`
16429
16430	// NullFields is a list of field names (e.g. "AnswerRecord") to include
16431	// in API requests with the JSON null value. By default, fields with
16432	// empty values are omitted from API requests. However, any field with
16433	// an empty value appearing in NullFields will be sent to the server as
16434	// null. It is an error if a field in this list has a non-empty value.
16435	// This may be used to include null fields in Patch requests.
16436	NullFields []string `json:"-"`
16437}
16438
16439func (s *GoogleCloudDialogflowV2beta1SmartReplyAnswer) MarshalJSON() ([]byte, error) {
16440	type NoMethod GoogleCloudDialogflowV2beta1SmartReplyAnswer
16441	raw := NoMethod(*s)
16442	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16443}
16444
16445func (s *GoogleCloudDialogflowV2beta1SmartReplyAnswer) UnmarshalJSON(data []byte) error {
16446	type NoMethod GoogleCloudDialogflowV2beta1SmartReplyAnswer
16447	var s1 struct {
16448		Confidence gensupport.JSONFloat64 `json:"confidence"`
16449		*NoMethod
16450	}
16451	s1.NoMethod = (*NoMethod)(s)
16452	if err := json.Unmarshal(data, &s1); err != nil {
16453		return err
16454	}
16455	s.Confidence = float64(s1.Confidence)
16456	return nil
16457}
16458
16459// GoogleCloudDialogflowV2beta1SuggestArticlesResponse: The response
16460// message for Participants.SuggestArticles.
16461type GoogleCloudDialogflowV2beta1SuggestArticlesResponse struct {
16462	// ArticleAnswers: Output only. Articles ordered by score in descending
16463	// order.
16464	ArticleAnswers []*GoogleCloudDialogflowV2beta1ArticleAnswer `json:"articleAnswers,omitempty"`
16465
16466	// ContextSize: Number of messages prior to and including latest_message
16467	// to compile the suggestion. It may be smaller than the
16468	// SuggestArticlesResponse.context_size field in the request if there
16469	// aren't that many messages in the conversation.
16470	ContextSize int64 `json:"contextSize,omitempty"`
16471
16472	// LatestMessage: The name of the latest conversation message used to
16473	// compile suggestion for. Format:
16474	// `projects//locations//conversations//messages/`.
16475	LatestMessage string `json:"latestMessage,omitempty"`
16476
16477	// ForceSendFields is a list of field names (e.g. "ArticleAnswers") to
16478	// unconditionally include in API requests. By default, fields with
16479	// empty or default values are omitted from API requests. However, any
16480	// non-pointer, non-interface field appearing in ForceSendFields will be
16481	// sent to the server regardless of whether the field is empty or not.
16482	// This may be used to include empty fields in Patch requests.
16483	ForceSendFields []string `json:"-"`
16484
16485	// NullFields is a list of field names (e.g. "ArticleAnswers") to
16486	// include in API requests with the JSON null value. By default, fields
16487	// with empty values are omitted from API requests. However, any field
16488	// with an empty value appearing in NullFields will be sent to the
16489	// server as null. It is an error if a field in this list has a
16490	// non-empty value. This may be used to include null fields in Patch
16491	// requests.
16492	NullFields []string `json:"-"`
16493}
16494
16495func (s *GoogleCloudDialogflowV2beta1SuggestArticlesResponse) MarshalJSON() ([]byte, error) {
16496	type NoMethod GoogleCloudDialogflowV2beta1SuggestArticlesResponse
16497	raw := NoMethod(*s)
16498	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16499}
16500
16501// GoogleCloudDialogflowV2beta1SuggestFaqAnswersResponse: The request
16502// message for Participants.SuggestFaqAnswers.
16503type GoogleCloudDialogflowV2beta1SuggestFaqAnswersResponse struct {
16504	// ContextSize: Number of messages prior to and including latest_message
16505	// to compile the suggestion. It may be smaller than the
16506	// SuggestFaqAnswersRequest.context_size field in the request if there
16507	// aren't that many messages in the conversation.
16508	ContextSize int64 `json:"contextSize,omitempty"`
16509
16510	// FaqAnswers: Output only. Answers extracted from FAQ documents.
16511	FaqAnswers []*GoogleCloudDialogflowV2beta1FaqAnswer `json:"faqAnswers,omitempty"`
16512
16513	// LatestMessage: The name of the latest conversation message used to
16514	// compile suggestion for. Format:
16515	// `projects//locations//conversations//messages/`.
16516	LatestMessage string `json:"latestMessage,omitempty"`
16517
16518	// ForceSendFields is a list of field names (e.g. "ContextSize") to
16519	// unconditionally include in API requests. By default, fields with
16520	// empty or default values are omitted from API requests. However, any
16521	// non-pointer, non-interface field appearing in ForceSendFields will be
16522	// sent to the server regardless of whether the field is empty or not.
16523	// This may be used to include empty fields in Patch requests.
16524	ForceSendFields []string `json:"-"`
16525
16526	// NullFields is a list of field names (e.g. "ContextSize") to include
16527	// in API requests with the JSON null value. By default, fields with
16528	// empty values are omitted from API requests. However, any field with
16529	// an empty value appearing in NullFields will be sent to the server as
16530	// null. It is an error if a field in this list has a non-empty value.
16531	// This may be used to include null fields in Patch requests.
16532	NullFields []string `json:"-"`
16533}
16534
16535func (s *GoogleCloudDialogflowV2beta1SuggestFaqAnswersResponse) MarshalJSON() ([]byte, error) {
16536	type NoMethod GoogleCloudDialogflowV2beta1SuggestFaqAnswersResponse
16537	raw := NoMethod(*s)
16538	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16539}
16540
16541// GoogleCloudDialogflowV2beta1SuggestSmartRepliesResponse: The response
16542// message for Participants.SuggestSmartReplies.
16543type GoogleCloudDialogflowV2beta1SuggestSmartRepliesResponse struct {
16544	// ContextSize: Number of messages prior to and including latest_message
16545	// to compile the suggestion. It may be smaller than the
16546	// SuggestSmartRepliesRequest.context_size field in the request if there
16547	// aren't that many messages in the conversation.
16548	ContextSize int64 `json:"contextSize,omitempty"`
16549
16550	// LatestMessage: The name of the latest conversation message used to
16551	// compile suggestion for. Format:
16552	// `projects//locations//conversations//messages/`.
16553	LatestMessage string `json:"latestMessage,omitempty"`
16554
16555	// SmartReplyAnswers: Output only. Multiple reply options provided by
16556	// smart reply service. The order is based on the rank of the model
16557	// prediction. The maximum number of the returned replies is set in
16558	// SmartReplyConfig.
16559	SmartReplyAnswers []*GoogleCloudDialogflowV2beta1SmartReplyAnswer `json:"smartReplyAnswers,omitempty"`
16560
16561	// ForceSendFields is a list of field names (e.g. "ContextSize") to
16562	// unconditionally include in API requests. By default, fields with
16563	// empty or default values are omitted from API requests. However, any
16564	// non-pointer, non-interface field appearing in ForceSendFields will be
16565	// sent to the server regardless of whether the field is empty or not.
16566	// This may be used to include empty fields in Patch requests.
16567	ForceSendFields []string `json:"-"`
16568
16569	// NullFields is a list of field names (e.g. "ContextSize") to include
16570	// in API requests with the JSON null value. By default, fields with
16571	// empty values are omitted from API requests. However, any field with
16572	// an empty value appearing in NullFields will be sent to the server as
16573	// null. It is an error if a field in this list has a non-empty value.
16574	// This may be used to include null fields in Patch requests.
16575	NullFields []string `json:"-"`
16576}
16577
16578func (s *GoogleCloudDialogflowV2beta1SuggestSmartRepliesResponse) MarshalJSON() ([]byte, error) {
16579	type NoMethod GoogleCloudDialogflowV2beta1SuggestSmartRepliesResponse
16580	raw := NoMethod(*s)
16581	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16582}
16583
16584// GoogleCloudDialogflowV2beta1SuggestionResult: One response of
16585// different type of suggestion response which is used in the response
16586// of Participants.AnalyzeContent and Participants.AnalyzeContent, as
16587// well as HumanAgentAssistantEvent.
16588type GoogleCloudDialogflowV2beta1SuggestionResult struct {
16589	// Error: Error status if the request failed.
16590	Error *GoogleRpcStatus `json:"error,omitempty"`
16591
16592	// SuggestArticlesResponse: SuggestArticlesResponse if request is for
16593	// ARTICLE_SUGGESTION.
16594	SuggestArticlesResponse *GoogleCloudDialogflowV2beta1SuggestArticlesResponse `json:"suggestArticlesResponse,omitempty"`
16595
16596	// SuggestFaqAnswersResponse: SuggestFaqAnswersResponse if request is
16597	// for FAQ_ANSWER.
16598	SuggestFaqAnswersResponse *GoogleCloudDialogflowV2beta1SuggestFaqAnswersResponse `json:"suggestFaqAnswersResponse,omitempty"`
16599
16600	// SuggestSmartRepliesResponse: SuggestSmartRepliesResponse if request
16601	// is for SMART_REPLY.
16602	SuggestSmartRepliesResponse *GoogleCloudDialogflowV2beta1SuggestSmartRepliesResponse `json:"suggestSmartRepliesResponse,omitempty"`
16603
16604	// ForceSendFields is a list of field names (e.g. "Error") to
16605	// unconditionally include in API requests. By default, fields with
16606	// empty or default values are omitted from API requests. However, any
16607	// non-pointer, non-interface field appearing in ForceSendFields will be
16608	// sent to the server regardless of whether the field is empty or not.
16609	// This may be used to include empty fields in Patch requests.
16610	ForceSendFields []string `json:"-"`
16611
16612	// NullFields is a list of field names (e.g. "Error") to include in API
16613	// requests with the JSON null value. By default, fields with empty
16614	// values are omitted from API requests. However, any field with an
16615	// empty value appearing in NullFields will be sent to the server as
16616	// null. It is an error if a field in this list has a non-empty value.
16617	// This may be used to include null fields in Patch requests.
16618	NullFields []string `json:"-"`
16619}
16620
16621func (s *GoogleCloudDialogflowV2beta1SuggestionResult) MarshalJSON() ([]byte, error) {
16622	type NoMethod GoogleCloudDialogflowV2beta1SuggestionResult
16623	raw := NoMethod(*s)
16624	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16625}
16626
16627// GoogleCloudDialogflowV2beta1WebhookRequest: The request message for a
16628// webhook call.
16629type GoogleCloudDialogflowV2beta1WebhookRequest struct {
16630	// AlternativeQueryResults: Alternative query results from
16631	// KnowledgeService.
16632	AlternativeQueryResults []*GoogleCloudDialogflowV2beta1QueryResult `json:"alternativeQueryResults,omitempty"`
16633
16634	// OriginalDetectIntentRequest: Optional. The contents of the original
16635	// request that was passed to `[Streaming]DetectIntent` call.
16636	OriginalDetectIntentRequest *GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest `json:"originalDetectIntentRequest,omitempty"`
16637
16638	// QueryResult: The result of the conversational query or event
16639	// processing. Contains the same value as
16640	// `[Streaming]DetectIntentResponse.query_result`.
16641	QueryResult *GoogleCloudDialogflowV2beta1QueryResult `json:"queryResult,omitempty"`
16642
16643	// ResponseId: The unique identifier of the response. Contains the same
16644	// value as `[Streaming]DetectIntentResponse.response_id`.
16645	ResponseId string `json:"responseId,omitempty"`
16646
16647	// Session: The unique identifier of detectIntent request session. Can
16648	// be used to identify end-user inside webhook implementation. Supported
16649	// formats: - `projects//agent/sessions/, -
16650	// `projects//locations//agent/sessions/`, -
16651	// `projects//agent/environments//users//sessions/`, -
16652	// `projects//locations//agent/environments//users//sessions/`,
16653	Session string `json:"session,omitempty"`
16654
16655	// ForceSendFields is a list of field names (e.g.
16656	// "AlternativeQueryResults") to unconditionally include in API
16657	// requests. By default, fields with empty or default values are omitted
16658	// from API requests. However, any non-pointer, non-interface field
16659	// appearing in ForceSendFields will be sent to the server regardless of
16660	// whether the field is empty or not. This may be used to include empty
16661	// fields in Patch requests.
16662	ForceSendFields []string `json:"-"`
16663
16664	// NullFields is a list of field names (e.g. "AlternativeQueryResults")
16665	// to include in API requests with the JSON null value. By default,
16666	// fields with empty values are omitted from API requests. However, any
16667	// field with an empty value appearing in NullFields will be sent to the
16668	// server as null. It is an error if a field in this list has a
16669	// non-empty value. This may be used to include null fields in Patch
16670	// requests.
16671	NullFields []string `json:"-"`
16672}
16673
16674func (s *GoogleCloudDialogflowV2beta1WebhookRequest) MarshalJSON() ([]byte, error) {
16675	type NoMethod GoogleCloudDialogflowV2beta1WebhookRequest
16676	raw := NoMethod(*s)
16677	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16678}
16679
16680// GoogleCloudDialogflowV2beta1WebhookResponse: The response message for
16681// a webhook call. This response is validated by the Dialogflow server.
16682// If validation fails, an error will be returned in the
16683// QueryResult.diagnostic_info field. Setting JSON fields to an empty
16684// value with the wrong type is a common error. To avoid this error: -
16685// Use "" for empty strings - Use `{}` or `null` for empty objects -
16686// Use `[]` or `null` for empty arrays For more information, see the
16687// Protocol Buffers Language Guide
16688// (https://developers.google.com/protocol-buffers/docs/proto3#json).
16689type GoogleCloudDialogflowV2beta1WebhookResponse struct {
16690	// EndInteraction: Optional. Indicates that this intent ends an
16691	// interaction. Some integrations (e.g., Actions on Google or Dialogflow
16692	// phone gateway) use this information to close interaction with an end
16693	// user. Default is false.
16694	EndInteraction bool `json:"endInteraction,omitempty"`
16695
16696	// FollowupEventInput: Optional. Invokes the supplied events. When this
16697	// field is set, Dialogflow ignores the `fulfillment_text`,
16698	// `fulfillment_messages`, and `payload` fields.
16699	FollowupEventInput *GoogleCloudDialogflowV2beta1EventInput `json:"followupEventInput,omitempty"`
16700
16701	// FulfillmentMessages: Optional. The rich response messages intended
16702	// for the end-user. When provided, Dialogflow uses this field to
16703	// populate QueryResult.fulfillment_messages sent to the integration or
16704	// API caller.
16705	FulfillmentMessages []*GoogleCloudDialogflowV2beta1IntentMessage `json:"fulfillmentMessages,omitempty"`
16706
16707	// FulfillmentText: Optional. The text response message intended for the
16708	// end-user. It is recommended to use
16709	// `fulfillment_messages.text.text[0]` instead. When provided,
16710	// Dialogflow uses this field to populate QueryResult.fulfillment_text
16711	// sent to the integration or API caller.
16712	FulfillmentText string `json:"fulfillmentText,omitempty"`
16713
16714	// LiveAgentHandoff: Indicates that a live agent should be brought in to
16715	// handle the interaction with the user. In most cases, when you set
16716	// this flag to true, you would also want to set end_interaction to true
16717	// as well. Default is false.
16718	LiveAgentHandoff bool `json:"liveAgentHandoff,omitempty"`
16719
16720	// OutputContexts: Optional. The collection of output contexts that will
16721	// overwrite currently active contexts for the session and reset their
16722	// lifespans. When provided, Dialogflow uses this field to populate
16723	// QueryResult.output_contexts sent to the integration or API caller.
16724	OutputContexts []*GoogleCloudDialogflowV2beta1Context `json:"outputContexts,omitempty"`
16725
16726	// Payload: Optional. This field can be used to pass custom data from
16727	// your webhook to the integration or API caller. Arbitrary JSON objects
16728	// are supported. When provided, Dialogflow uses this field to populate
16729	// QueryResult.webhook_payload sent to the integration or API caller.
16730	// This field is also used by the Google Assistant integration
16731	// (https://cloud.google.com/dialogflow/docs/integrations/aog) for rich
16732	// response messages. See the format definition at Google Assistant
16733	// Dialogflow webhook format
16734	// (https://developers.google.com/assistant/actions/build/json/dialogflow-webhook-json)
16735	Payload googleapi.RawMessage `json:"payload,omitempty"`
16736
16737	// SessionEntityTypes: Optional. Additional session entity types to
16738	// replace or extend developer entity types with. The entity synonyms
16739	// apply to all languages and persist for the session. Setting this data
16740	// from a webhook overwrites the session entity types that have been set
16741	// using `detectIntent`, `streamingDetectIntent` or SessionEntityType
16742	// management methods.
16743	SessionEntityTypes []*GoogleCloudDialogflowV2beta1SessionEntityType `json:"sessionEntityTypes,omitempty"`
16744
16745	// Source: Optional. A custom field used to identify the webhook source.
16746	// Arbitrary strings are supported. When provided, Dialogflow uses this
16747	// field to populate QueryResult.webhook_source sent to the integration
16748	// or API caller.
16749	Source string `json:"source,omitempty"`
16750
16751	// ForceSendFields is a list of field names (e.g. "EndInteraction") to
16752	// unconditionally include in API requests. By default, fields with
16753	// empty or default values are omitted from API requests. However, any
16754	// non-pointer, non-interface field appearing in ForceSendFields will be
16755	// sent to the server regardless of whether the field is empty or not.
16756	// This may be used to include empty fields in Patch requests.
16757	ForceSendFields []string `json:"-"`
16758
16759	// NullFields is a list of field names (e.g. "EndInteraction") to
16760	// include in API requests with the JSON null value. By default, fields
16761	// with empty values are omitted from API requests. However, any field
16762	// with an empty value appearing in NullFields will be sent to the
16763	// server as null. It is an error if a field in this list has a
16764	// non-empty value. This may be used to include null fields in Patch
16765	// requests.
16766	NullFields []string `json:"-"`
16767}
16768
16769func (s *GoogleCloudDialogflowV2beta1WebhookResponse) MarshalJSON() ([]byte, error) {
16770	type NoMethod GoogleCloudDialogflowV2beta1WebhookResponse
16771	raw := NoMethod(*s)
16772	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16773}
16774
16775// GoogleCloudDialogflowV3alpha1CreateDocumentOperationMetadata:
16776// Metadata for CreateDocument operation.
16777type GoogleCloudDialogflowV3alpha1CreateDocumentOperationMetadata struct {
16778	// GenericMetadata: The generic information of the operation.
16779	GenericMetadata *GoogleCloudDialogflowV3alpha1GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
16780
16781	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
16782	// unconditionally include in API requests. By default, fields with
16783	// empty or default values are omitted from API requests. However, any
16784	// non-pointer, non-interface field appearing in ForceSendFields will be
16785	// sent to the server regardless of whether the field is empty or not.
16786	// This may be used to include empty fields in Patch requests.
16787	ForceSendFields []string `json:"-"`
16788
16789	// NullFields is a list of field names (e.g. "GenericMetadata") to
16790	// include in API requests with the JSON null value. By default, fields
16791	// with empty values are omitted from API requests. However, any field
16792	// with an empty value appearing in NullFields will be sent to the
16793	// server as null. It is an error if a field in this list has a
16794	// non-empty value. This may be used to include null fields in Patch
16795	// requests.
16796	NullFields []string `json:"-"`
16797}
16798
16799func (s *GoogleCloudDialogflowV3alpha1CreateDocumentOperationMetadata) MarshalJSON() ([]byte, error) {
16800	type NoMethod GoogleCloudDialogflowV3alpha1CreateDocumentOperationMetadata
16801	raw := NoMethod(*s)
16802	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16803}
16804
16805// GoogleCloudDialogflowV3alpha1DeleteDocumentOperationMetadata:
16806// Metadata for DeleteDocument operation.
16807type GoogleCloudDialogflowV3alpha1DeleteDocumentOperationMetadata struct {
16808	// GenericMetadata: The generic information of the operation.
16809	GenericMetadata *GoogleCloudDialogflowV3alpha1GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
16810
16811	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
16812	// unconditionally include in API requests. By default, fields with
16813	// empty or default values are omitted from API requests. However, any
16814	// non-pointer, non-interface field appearing in ForceSendFields will be
16815	// sent to the server regardless of whether the field is empty or not.
16816	// This may be used to include empty fields in Patch requests.
16817	ForceSendFields []string `json:"-"`
16818
16819	// NullFields is a list of field names (e.g. "GenericMetadata") to
16820	// include in API requests with the JSON null value. By default, fields
16821	// with empty values are omitted from API requests. However, any field
16822	// with an empty value appearing in NullFields will be sent to the
16823	// server as null. It is an error if a field in this list has a
16824	// non-empty value. This may be used to include null fields in Patch
16825	// requests.
16826	NullFields []string `json:"-"`
16827}
16828
16829func (s *GoogleCloudDialogflowV3alpha1DeleteDocumentOperationMetadata) MarshalJSON() ([]byte, error) {
16830	type NoMethod GoogleCloudDialogflowV3alpha1DeleteDocumentOperationMetadata
16831	raw := NoMethod(*s)
16832	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16833}
16834
16835// GoogleCloudDialogflowV3alpha1GenericKnowledgeOperationMetadata:
16836// Metadata in google::longrunning::Operation for Knowledge operations.
16837type GoogleCloudDialogflowV3alpha1GenericKnowledgeOperationMetadata struct {
16838	// State: Required. Output only. The current state of this operation.
16839	//
16840	// Possible values:
16841	//   "STATE_UNSPECIFIED" - State unspecified.
16842	//   "PENDING" - The operation has been created.
16843	//   "RUNNING" - The operation is currently running.
16844	//   "DONE" - The operation is done, either cancelled or completed.
16845	State string `json:"state,omitempty"`
16846
16847	// ForceSendFields is a list of field names (e.g. "State") to
16848	// unconditionally include in API requests. By default, fields with
16849	// empty or default values are omitted from API requests. However, any
16850	// non-pointer, non-interface field appearing in ForceSendFields will be
16851	// sent to the server regardless of whether the field is empty or not.
16852	// This may be used to include empty fields in Patch requests.
16853	ForceSendFields []string `json:"-"`
16854
16855	// NullFields is a list of field names (e.g. "State") to include in API
16856	// requests with the JSON null value. By default, fields with empty
16857	// values are omitted from API requests. However, any field with an
16858	// empty value appearing in NullFields will be sent to the server as
16859	// null. It is an error if a field in this list has a non-empty value.
16860	// This may be used to include null fields in Patch requests.
16861	NullFields []string `json:"-"`
16862}
16863
16864func (s *GoogleCloudDialogflowV3alpha1GenericKnowledgeOperationMetadata) MarshalJSON() ([]byte, error) {
16865	type NoMethod GoogleCloudDialogflowV3alpha1GenericKnowledgeOperationMetadata
16866	raw := NoMethod(*s)
16867	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16868}
16869
16870// GoogleCloudDialogflowV3alpha1ImportDocumentsOperationMetadata:
16871// Metadata for ImportDocuments operation.
16872type GoogleCloudDialogflowV3alpha1ImportDocumentsOperationMetadata struct {
16873	// GenericMetadata: The generic information of the operation.
16874	GenericMetadata *GoogleCloudDialogflowV3alpha1GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
16875
16876	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
16877	// unconditionally include in API requests. By default, fields with
16878	// empty or default values are omitted from API requests. However, any
16879	// non-pointer, non-interface field appearing in ForceSendFields will be
16880	// sent to the server regardless of whether the field is empty or not.
16881	// This may be used to include empty fields in Patch requests.
16882	ForceSendFields []string `json:"-"`
16883
16884	// NullFields is a list of field names (e.g. "GenericMetadata") to
16885	// include in API requests with the JSON null value. By default, fields
16886	// with empty values are omitted from API requests. However, any field
16887	// with an empty value appearing in NullFields will be sent to the
16888	// server as null. It is an error if a field in this list has a
16889	// non-empty value. This may be used to include null fields in Patch
16890	// requests.
16891	NullFields []string `json:"-"`
16892}
16893
16894func (s *GoogleCloudDialogflowV3alpha1ImportDocumentsOperationMetadata) MarshalJSON() ([]byte, error) {
16895	type NoMethod GoogleCloudDialogflowV3alpha1ImportDocumentsOperationMetadata
16896	raw := NoMethod(*s)
16897	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16898}
16899
16900// GoogleCloudDialogflowV3alpha1ImportDocumentsResponse: Response
16901// message for Documents.ImportDocuments.
16902type GoogleCloudDialogflowV3alpha1ImportDocumentsResponse struct {
16903	// Warnings: Includes details about skipped documents or any other
16904	// warnings.
16905	Warnings []*GoogleRpcStatus `json:"warnings,omitempty"`
16906
16907	// ForceSendFields is a list of field names (e.g. "Warnings") to
16908	// unconditionally include in API requests. By default, fields with
16909	// empty or default values are omitted from API requests. However, any
16910	// non-pointer, non-interface field appearing in ForceSendFields will be
16911	// sent to the server regardless of whether the field is empty or not.
16912	// This may be used to include empty fields in Patch requests.
16913	ForceSendFields []string `json:"-"`
16914
16915	// NullFields is a list of field names (e.g. "Warnings") to include in
16916	// API requests with the JSON null value. By default, fields with empty
16917	// values are omitted from API requests. However, any field with an
16918	// empty value appearing in NullFields will be sent to the server as
16919	// null. It is an error if a field in this list has a non-empty value.
16920	// This may be used to include null fields in Patch requests.
16921	NullFields []string `json:"-"`
16922}
16923
16924func (s *GoogleCloudDialogflowV3alpha1ImportDocumentsResponse) MarshalJSON() ([]byte, error) {
16925	type NoMethod GoogleCloudDialogflowV3alpha1ImportDocumentsResponse
16926	raw := NoMethod(*s)
16927	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16928}
16929
16930// GoogleCloudDialogflowV3alpha1ReloadDocumentOperationMetadata:
16931// Metadata for ReloadDocument operation.
16932type GoogleCloudDialogflowV3alpha1ReloadDocumentOperationMetadata struct {
16933	// GenericMetadata: The generic information of the operation.
16934	GenericMetadata *GoogleCloudDialogflowV3alpha1GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
16935
16936	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
16937	// unconditionally include in API requests. By default, fields with
16938	// empty or default values are omitted from API requests. However, any
16939	// non-pointer, non-interface field appearing in ForceSendFields will be
16940	// sent to the server regardless of whether the field is empty or not.
16941	// This may be used to include empty fields in Patch requests.
16942	ForceSendFields []string `json:"-"`
16943
16944	// NullFields is a list of field names (e.g. "GenericMetadata") to
16945	// include in API requests with the JSON null value. By default, fields
16946	// with empty values are omitted from API requests. However, any field
16947	// with an empty value appearing in NullFields will be sent to the
16948	// server as null. It is an error if a field in this list has a
16949	// non-empty value. This may be used to include null fields in Patch
16950	// requests.
16951	NullFields []string `json:"-"`
16952}
16953
16954func (s *GoogleCloudDialogflowV3alpha1ReloadDocumentOperationMetadata) MarshalJSON() ([]byte, error) {
16955	type NoMethod GoogleCloudDialogflowV3alpha1ReloadDocumentOperationMetadata
16956	raw := NoMethod(*s)
16957	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16958}
16959
16960// GoogleCloudDialogflowV3alpha1UpdateDocumentOperationMetadata:
16961// Metadata for UpdateDocument operation.
16962type GoogleCloudDialogflowV3alpha1UpdateDocumentOperationMetadata struct {
16963	// GenericMetadata: The generic information of the operation.
16964	GenericMetadata *GoogleCloudDialogflowV3alpha1GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
16965
16966	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
16967	// unconditionally include in API requests. By default, fields with
16968	// empty or default values are omitted from API requests. However, any
16969	// non-pointer, non-interface field appearing in ForceSendFields will be
16970	// sent to the server regardless of whether the field is empty or not.
16971	// This may be used to include empty fields in Patch requests.
16972	ForceSendFields []string `json:"-"`
16973
16974	// NullFields is a list of field names (e.g. "GenericMetadata") to
16975	// include in API requests with the JSON null value. By default, fields
16976	// with empty values are omitted from API requests. However, any field
16977	// with an empty value appearing in NullFields will be sent to the
16978	// server as null. It is an error if a field in this list has a
16979	// non-empty value. This may be used to include null fields in Patch
16980	// requests.
16981	NullFields []string `json:"-"`
16982}
16983
16984func (s *GoogleCloudDialogflowV3alpha1UpdateDocumentOperationMetadata) MarshalJSON() ([]byte, error) {
16985	type NoMethod GoogleCloudDialogflowV3alpha1UpdateDocumentOperationMetadata
16986	raw := NoMethod(*s)
16987	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16988}
16989
16990// GoogleCloudLocationListLocationsResponse: The response message for
16991// Locations.ListLocations.
16992type GoogleCloudLocationListLocationsResponse struct {
16993	// Locations: A list of locations that matches the specified filter in
16994	// the request.
16995	Locations []*GoogleCloudLocationLocation `json:"locations,omitempty"`
16996
16997	// NextPageToken: The standard List next-page token.
16998	NextPageToken string `json:"nextPageToken,omitempty"`
16999
17000	// ServerResponse contains the HTTP response code and headers from the
17001	// server.
17002	googleapi.ServerResponse `json:"-"`
17003
17004	// ForceSendFields is a list of field names (e.g. "Locations") to
17005	// unconditionally include in API requests. By default, fields with
17006	// empty or default values are omitted from API requests. However, any
17007	// non-pointer, non-interface field appearing in ForceSendFields will be
17008	// sent to the server regardless of whether the field is empty or not.
17009	// This may be used to include empty fields in Patch requests.
17010	ForceSendFields []string `json:"-"`
17011
17012	// NullFields is a list of field names (e.g. "Locations") to include in
17013	// API requests with the JSON null value. By default, fields with empty
17014	// values are omitted from API requests. However, any field with an
17015	// empty value appearing in NullFields will be sent to the server as
17016	// null. It is an error if a field in this list has a non-empty value.
17017	// This may be used to include null fields in Patch requests.
17018	NullFields []string `json:"-"`
17019}
17020
17021func (s *GoogleCloudLocationListLocationsResponse) MarshalJSON() ([]byte, error) {
17022	type NoMethod GoogleCloudLocationListLocationsResponse
17023	raw := NoMethod(*s)
17024	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
17025}
17026
17027// GoogleCloudLocationLocation: A resource that represents Google Cloud
17028// Platform location.
17029type GoogleCloudLocationLocation struct {
17030	// DisplayName: The friendly name for this location, typically a nearby
17031	// city name. For example, "Tokyo".
17032	DisplayName string `json:"displayName,omitempty"`
17033
17034	// Labels: Cross-service attributes for the location. For example
17035	// {"cloud.googleapis.com/region": "us-east1"}
17036	Labels map[string]string `json:"labels,omitempty"`
17037
17038	// LocationId: The canonical id for this location. For example:
17039	// "us-east1".
17040	LocationId string `json:"locationId,omitempty"`
17041
17042	// Metadata: Service-specific metadata. For example the available
17043	// capacity at the given location.
17044	Metadata googleapi.RawMessage `json:"metadata,omitempty"`
17045
17046	// Name: Resource name for the location, which may vary between
17047	// implementations. For example:
17048	// "projects/example-project/locations/us-east1"
17049	Name string `json:"name,omitempty"`
17050
17051	// ServerResponse contains the HTTP response code and headers from the
17052	// server.
17053	googleapi.ServerResponse `json:"-"`
17054
17055	// ForceSendFields is a list of field names (e.g. "DisplayName") to
17056	// unconditionally include in API requests. By default, fields with
17057	// empty or default values are omitted from API requests. However, any
17058	// non-pointer, non-interface field appearing in ForceSendFields will be
17059	// sent to the server regardless of whether the field is empty or not.
17060	// This may be used to include empty fields in Patch requests.
17061	ForceSendFields []string `json:"-"`
17062
17063	// NullFields is a list of field names (e.g. "DisplayName") to include
17064	// in API requests with the JSON null value. By default, fields with
17065	// empty values are omitted from API requests. However, any field with
17066	// an empty value appearing in NullFields will be sent to the server as
17067	// null. It is an error if a field in this list has a non-empty value.
17068	// This may be used to include null fields in Patch requests.
17069	NullFields []string `json:"-"`
17070}
17071
17072func (s *GoogleCloudLocationLocation) MarshalJSON() ([]byte, error) {
17073	type NoMethod GoogleCloudLocationLocation
17074	raw := NoMethod(*s)
17075	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
17076}
17077
17078// GoogleLongrunningListOperationsResponse: The response message for
17079// Operations.ListOperations.
17080type GoogleLongrunningListOperationsResponse struct {
17081	// NextPageToken: The standard List next-page token.
17082	NextPageToken string `json:"nextPageToken,omitempty"`
17083
17084	// Operations: A list of operations that matches the specified filter in
17085	// the request.
17086	Operations []*GoogleLongrunningOperation `json:"operations,omitempty"`
17087
17088	// ServerResponse contains the HTTP response code and headers from the
17089	// server.
17090	googleapi.ServerResponse `json:"-"`
17091
17092	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
17093	// unconditionally include in API requests. By default, fields with
17094	// empty or default values are omitted from API requests. However, any
17095	// non-pointer, non-interface field appearing in ForceSendFields will be
17096	// sent to the server regardless of whether the field is empty or not.
17097	// This may be used to include empty fields in Patch requests.
17098	ForceSendFields []string `json:"-"`
17099
17100	// NullFields is a list of field names (e.g. "NextPageToken") to include
17101	// in API requests with the JSON null value. By default, fields with
17102	// empty values are omitted from API requests. However, any field with
17103	// an empty value appearing in NullFields will be sent to the server as
17104	// null. It is an error if a field in this list has a non-empty value.
17105	// This may be used to include null fields in Patch requests.
17106	NullFields []string `json:"-"`
17107}
17108
17109func (s *GoogleLongrunningListOperationsResponse) MarshalJSON() ([]byte, error) {
17110	type NoMethod GoogleLongrunningListOperationsResponse
17111	raw := NoMethod(*s)
17112	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
17113}
17114
17115// GoogleLongrunningOperation: This resource represents a long-running
17116// operation that is the result of a network API call.
17117type GoogleLongrunningOperation struct {
17118	// Done: If the value is `false`, it means the operation is still in
17119	// progress. If `true`, the operation is completed, and either `error`
17120	// or `response` is available.
17121	Done bool `json:"done,omitempty"`
17122
17123	// Error: The error result of the operation in case of failure or
17124	// cancellation.
17125	Error *GoogleRpcStatus `json:"error,omitempty"`
17126
17127	// Metadata: Service-specific metadata associated with the operation. It
17128	// typically contains progress information and common metadata such as
17129	// create time. Some services might not provide such metadata. Any
17130	// method that returns a long-running operation should document the
17131	// metadata type, if any.
17132	Metadata googleapi.RawMessage `json:"metadata,omitempty"`
17133
17134	// Name: The server-assigned name, which is only unique within the same
17135	// service that originally returns it. If you use the default HTTP
17136	// mapping, the `name` should be a resource name ending with
17137	// `operations/{unique_id}`.
17138	Name string `json:"name,omitempty"`
17139
17140	// Response: The normal response of the operation in case of success. If
17141	// the original method returns no data on success, such as `Delete`, the
17142	// response is `google.protobuf.Empty`. If the original method is
17143	// standard `Get`/`Create`/`Update`, the response should be the
17144	// resource. For other methods, the response should have the type
17145	// `XxxResponse`, where `Xxx` is the original method name. For example,
17146	// if the original method name is `TakeSnapshot()`, the inferred
17147	// response type is `TakeSnapshotResponse`.
17148	Response googleapi.RawMessage `json:"response,omitempty"`
17149
17150	// ServerResponse contains the HTTP response code and headers from the
17151	// server.
17152	googleapi.ServerResponse `json:"-"`
17153
17154	// ForceSendFields is a list of field names (e.g. "Done") to
17155	// unconditionally include in API requests. By default, fields with
17156	// empty or default values are omitted from API requests. However, any
17157	// non-pointer, non-interface field appearing in ForceSendFields will be
17158	// sent to the server regardless of whether the field is empty or not.
17159	// This may be used to include empty fields in Patch requests.
17160	ForceSendFields []string `json:"-"`
17161
17162	// NullFields is a list of field names (e.g. "Done") to include in API
17163	// requests with the JSON null value. By default, fields with empty
17164	// values are omitted from API requests. However, any field with an
17165	// empty value appearing in NullFields will be sent to the server as
17166	// null. It is an error if a field in this list has a non-empty value.
17167	// This may be used to include null fields in Patch requests.
17168	NullFields []string `json:"-"`
17169}
17170
17171func (s *GoogleLongrunningOperation) MarshalJSON() ([]byte, error) {
17172	type NoMethod GoogleLongrunningOperation
17173	raw := NoMethod(*s)
17174	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
17175}
17176
17177// GoogleProtobufEmpty: A generic empty message that you can re-use to
17178// avoid defining duplicated empty messages in your APIs. A typical
17179// example is to use it as the request or the response type of an API
17180// method. For instance: service Foo { rpc Bar(google.protobuf.Empty)
17181// returns (google.protobuf.Empty); } The JSON representation for
17182// `Empty` is empty JSON object `{}`.
17183type GoogleProtobufEmpty struct {
17184	// ServerResponse contains the HTTP response code and headers from the
17185	// server.
17186	googleapi.ServerResponse `json:"-"`
17187}
17188
17189// GoogleRpcStatus: The `Status` type defines a logical error model that
17190// is suitable for different programming environments, including REST
17191// APIs and RPC APIs. It is used by gRPC (https://github.com/grpc). Each
17192// `Status` message contains three pieces of data: error code, error
17193// message, and error details. You can find out more about this error
17194// model and how to work with it in the API Design Guide
17195// (https://cloud.google.com/apis/design/errors).
17196type GoogleRpcStatus struct {
17197	// Code: The status code, which should be an enum value of
17198	// google.rpc.Code.
17199	Code int64 `json:"code,omitempty"`
17200
17201	// Details: A list of messages that carry the error details. There is a
17202	// common set of message types for APIs to use.
17203	Details []googleapi.RawMessage `json:"details,omitempty"`
17204
17205	// Message: A developer-facing error message, which should be in
17206	// English. Any user-facing error message should be localized and sent
17207	// in the google.rpc.Status.details field, or localized by the client.
17208	Message string `json:"message,omitempty"`
17209
17210	// ForceSendFields is a list of field names (e.g. "Code") to
17211	// unconditionally include in API requests. By default, fields with
17212	// empty or default values are omitted from API requests. However, any
17213	// non-pointer, non-interface field appearing in ForceSendFields will be
17214	// sent to the server regardless of whether the field is empty or not.
17215	// This may be used to include empty fields in Patch requests.
17216	ForceSendFields []string `json:"-"`
17217
17218	// NullFields is a list of field names (e.g. "Code") to include in API
17219	// requests with the JSON null value. By default, fields with empty
17220	// values are omitted from API requests. However, any field with an
17221	// empty value appearing in NullFields will be sent to the server as
17222	// null. It is an error if a field in this list has a non-empty value.
17223	// This may be used to include null fields in Patch requests.
17224	NullFields []string `json:"-"`
17225}
17226
17227func (s *GoogleRpcStatus) MarshalJSON() ([]byte, error) {
17228	type NoMethod GoogleRpcStatus
17229	raw := NoMethod(*s)
17230	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
17231}
17232
17233// GoogleTypeLatLng: An object that represents a latitude/longitude
17234// pair. This is expressed as a pair of doubles to represent degrees
17235// latitude and degrees longitude. Unless specified otherwise, this
17236// object must conform to the WGS84 standard. Values must be within
17237// normalized ranges.
17238type GoogleTypeLatLng struct {
17239	// Latitude: The latitude in degrees. It must be in the range [-90.0,
17240	// +90.0].
17241	Latitude float64 `json:"latitude,omitempty"`
17242
17243	// Longitude: The longitude in degrees. It must be in the range [-180.0,
17244	// +180.0].
17245	Longitude float64 `json:"longitude,omitempty"`
17246
17247	// ForceSendFields is a list of field names (e.g. "Latitude") to
17248	// unconditionally include in API requests. By default, fields with
17249	// empty or default values are omitted from API requests. However, any
17250	// non-pointer, non-interface field appearing in ForceSendFields will be
17251	// sent to the server regardless of whether the field is empty or not.
17252	// This may be used to include empty fields in Patch requests.
17253	ForceSendFields []string `json:"-"`
17254
17255	// NullFields is a list of field names (e.g. "Latitude") to include in
17256	// API requests with the JSON null value. By default, fields with empty
17257	// values are omitted from API requests. However, any field with an
17258	// empty value appearing in NullFields will be sent to the server as
17259	// null. It is an error if a field in this list has a non-empty value.
17260	// This may be used to include null fields in Patch requests.
17261	NullFields []string `json:"-"`
17262}
17263
17264func (s *GoogleTypeLatLng) MarshalJSON() ([]byte, error) {
17265	type NoMethod GoogleTypeLatLng
17266	raw := NoMethod(*s)
17267	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
17268}
17269
17270func (s *GoogleTypeLatLng) UnmarshalJSON(data []byte) error {
17271	type NoMethod GoogleTypeLatLng
17272	var s1 struct {
17273		Latitude  gensupport.JSONFloat64 `json:"latitude"`
17274		Longitude gensupport.JSONFloat64 `json:"longitude"`
17275		*NoMethod
17276	}
17277	s1.NoMethod = (*NoMethod)(s)
17278	if err := json.Unmarshal(data, &s1); err != nil {
17279		return err
17280	}
17281	s.Latitude = float64(s1.Latitude)
17282	s.Longitude = float64(s1.Longitude)
17283	return nil
17284}
17285
17286// method id "dialogflow.projects.locations.get":
17287
17288type ProjectsLocationsGetCall struct {
17289	s            *Service
17290	name         string
17291	urlParams_   gensupport.URLParams
17292	ifNoneMatch_ string
17293	ctx_         context.Context
17294	header_      http.Header
17295}
17296
17297// Get: Gets information about a location.
17298//
17299// - name: Resource name for the location.
17300func (r *ProjectsLocationsService) Get(name string) *ProjectsLocationsGetCall {
17301	c := &ProjectsLocationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17302	c.name = name
17303	return c
17304}
17305
17306// Fields allows partial responses to be retrieved. See
17307// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17308// for more information.
17309func (c *ProjectsLocationsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsGetCall {
17310	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17311	return c
17312}
17313
17314// IfNoneMatch sets the optional parameter which makes the operation
17315// fail if the object's ETag matches the given value. This is useful for
17316// getting updates only after the object has changed since the last
17317// request. Use googleapi.IsNotModified to check whether the response
17318// error from Do is the result of In-None-Match.
17319func (c *ProjectsLocationsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsGetCall {
17320	c.ifNoneMatch_ = entityTag
17321	return c
17322}
17323
17324// Context sets the context to be used in this call's Do method. Any
17325// pending HTTP request will be aborted if the provided context is
17326// canceled.
17327func (c *ProjectsLocationsGetCall) Context(ctx context.Context) *ProjectsLocationsGetCall {
17328	c.ctx_ = ctx
17329	return c
17330}
17331
17332// Header returns an http.Header that can be modified by the caller to
17333// add HTTP headers to the request.
17334func (c *ProjectsLocationsGetCall) Header() http.Header {
17335	if c.header_ == nil {
17336		c.header_ = make(http.Header)
17337	}
17338	return c.header_
17339}
17340
17341func (c *ProjectsLocationsGetCall) doRequest(alt string) (*http.Response, error) {
17342	reqHeaders := make(http.Header)
17343	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
17344	for k, v := range c.header_ {
17345		reqHeaders[k] = v
17346	}
17347	reqHeaders.Set("User-Agent", c.s.userAgent())
17348	if c.ifNoneMatch_ != "" {
17349		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
17350	}
17351	var body io.Reader = nil
17352	c.urlParams_.Set("alt", alt)
17353	c.urlParams_.Set("prettyPrint", "false")
17354	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
17355	urls += "?" + c.urlParams_.Encode()
17356	req, err := http.NewRequest("GET", urls, body)
17357	if err != nil {
17358		return nil, err
17359	}
17360	req.Header = reqHeaders
17361	googleapi.Expand(req.URL, map[string]string{
17362		"name": c.name,
17363	})
17364	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17365}
17366
17367// Do executes the "dialogflow.projects.locations.get" call.
17368// Exactly one of *GoogleCloudLocationLocation or error will be non-nil.
17369// Any non-2xx status code is an error. Response headers are in either
17370// *GoogleCloudLocationLocation.ServerResponse.Header or (if a response
17371// was returned at all) in error.(*googleapi.Error).Header. Use
17372// googleapi.IsNotModified to check whether the returned error was
17373// because http.StatusNotModified was returned.
17374func (c *ProjectsLocationsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudLocationLocation, error) {
17375	gensupport.SetOptions(c.urlParams_, opts...)
17376	res, err := c.doRequest("json")
17377	if res != nil && res.StatusCode == http.StatusNotModified {
17378		if res.Body != nil {
17379			res.Body.Close()
17380		}
17381		return nil, &googleapi.Error{
17382			Code:   res.StatusCode,
17383			Header: res.Header,
17384		}
17385	}
17386	if err != nil {
17387		return nil, err
17388	}
17389	defer googleapi.CloseBody(res)
17390	if err := googleapi.CheckResponse(res); err != nil {
17391		return nil, err
17392	}
17393	ret := &GoogleCloudLocationLocation{
17394		ServerResponse: googleapi.ServerResponse{
17395			Header:         res.Header,
17396			HTTPStatusCode: res.StatusCode,
17397		},
17398	}
17399	target := &ret
17400	if err := gensupport.DecodeResponse(target, res); err != nil {
17401		return nil, err
17402	}
17403	return ret, nil
17404	// {
17405	//   "description": "Gets information about a location.",
17406	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}",
17407	//   "httpMethod": "GET",
17408	//   "id": "dialogflow.projects.locations.get",
17409	//   "parameterOrder": [
17410	//     "name"
17411	//   ],
17412	//   "parameters": {
17413	//     "name": {
17414	//       "description": "Resource name for the location.",
17415	//       "location": "path",
17416	//       "pattern": "^projects/[^/]+/locations/[^/]+$",
17417	//       "required": true,
17418	//       "type": "string"
17419	//     }
17420	//   },
17421	//   "path": "v3/{+name}",
17422	//   "response": {
17423	//     "$ref": "GoogleCloudLocationLocation"
17424	//   },
17425	//   "scopes": [
17426	//     "https://www.googleapis.com/auth/cloud-platform",
17427	//     "https://www.googleapis.com/auth/dialogflow"
17428	//   ]
17429	// }
17430
17431}
17432
17433// method id "dialogflow.projects.locations.list":
17434
17435type ProjectsLocationsListCall struct {
17436	s            *Service
17437	name         string
17438	urlParams_   gensupport.URLParams
17439	ifNoneMatch_ string
17440	ctx_         context.Context
17441	header_      http.Header
17442}
17443
17444// List: Lists information about the supported locations for this
17445// service.
17446//
17447// - name: The resource that owns the locations collection, if
17448//   applicable.
17449func (r *ProjectsLocationsService) List(name string) *ProjectsLocationsListCall {
17450	c := &ProjectsLocationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17451	c.name = name
17452	return c
17453}
17454
17455// Filter sets the optional parameter "filter": A filter to narrow down
17456// results to a preferred subset. The filtering language accepts strings
17457// like "displayName=tokyo", and is documented in more detail in AIP-160
17458// (https://google.aip.dev/160).
17459func (c *ProjectsLocationsListCall) Filter(filter string) *ProjectsLocationsListCall {
17460	c.urlParams_.Set("filter", filter)
17461	return c
17462}
17463
17464// PageSize sets the optional parameter "pageSize": The maximum number
17465// of results to return. If not set, the service selects a default.
17466func (c *ProjectsLocationsListCall) PageSize(pageSize int64) *ProjectsLocationsListCall {
17467	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
17468	return c
17469}
17470
17471// PageToken sets the optional parameter "pageToken": A page token
17472// received from the `next_page_token` field in the response. Send that
17473// page token to receive the subsequent page.
17474func (c *ProjectsLocationsListCall) PageToken(pageToken string) *ProjectsLocationsListCall {
17475	c.urlParams_.Set("pageToken", pageToken)
17476	return c
17477}
17478
17479// Fields allows partial responses to be retrieved. See
17480// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17481// for more information.
17482func (c *ProjectsLocationsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsListCall {
17483	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17484	return c
17485}
17486
17487// IfNoneMatch sets the optional parameter which makes the operation
17488// fail if the object's ETag matches the given value. This is useful for
17489// getting updates only after the object has changed since the last
17490// request. Use googleapi.IsNotModified to check whether the response
17491// error from Do is the result of In-None-Match.
17492func (c *ProjectsLocationsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsListCall {
17493	c.ifNoneMatch_ = entityTag
17494	return c
17495}
17496
17497// Context sets the context to be used in this call's Do method. Any
17498// pending HTTP request will be aborted if the provided context is
17499// canceled.
17500func (c *ProjectsLocationsListCall) Context(ctx context.Context) *ProjectsLocationsListCall {
17501	c.ctx_ = ctx
17502	return c
17503}
17504
17505// Header returns an http.Header that can be modified by the caller to
17506// add HTTP headers to the request.
17507func (c *ProjectsLocationsListCall) Header() http.Header {
17508	if c.header_ == nil {
17509		c.header_ = make(http.Header)
17510	}
17511	return c.header_
17512}
17513
17514func (c *ProjectsLocationsListCall) doRequest(alt string) (*http.Response, error) {
17515	reqHeaders := make(http.Header)
17516	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
17517	for k, v := range c.header_ {
17518		reqHeaders[k] = v
17519	}
17520	reqHeaders.Set("User-Agent", c.s.userAgent())
17521	if c.ifNoneMatch_ != "" {
17522		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
17523	}
17524	var body io.Reader = nil
17525	c.urlParams_.Set("alt", alt)
17526	c.urlParams_.Set("prettyPrint", "false")
17527	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}/locations")
17528	urls += "?" + c.urlParams_.Encode()
17529	req, err := http.NewRequest("GET", urls, body)
17530	if err != nil {
17531		return nil, err
17532	}
17533	req.Header = reqHeaders
17534	googleapi.Expand(req.URL, map[string]string{
17535		"name": c.name,
17536	})
17537	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17538}
17539
17540// Do executes the "dialogflow.projects.locations.list" call.
17541// Exactly one of *GoogleCloudLocationListLocationsResponse or error
17542// will be non-nil. Any non-2xx status code is an error. Response
17543// headers are in either
17544// *GoogleCloudLocationListLocationsResponse.ServerResponse.Header or
17545// (if a response was returned at all) in
17546// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
17547// whether the returned error was because http.StatusNotModified was
17548// returned.
17549func (c *ProjectsLocationsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudLocationListLocationsResponse, error) {
17550	gensupport.SetOptions(c.urlParams_, opts...)
17551	res, err := c.doRequest("json")
17552	if res != nil && res.StatusCode == http.StatusNotModified {
17553		if res.Body != nil {
17554			res.Body.Close()
17555		}
17556		return nil, &googleapi.Error{
17557			Code:   res.StatusCode,
17558			Header: res.Header,
17559		}
17560	}
17561	if err != nil {
17562		return nil, err
17563	}
17564	defer googleapi.CloseBody(res)
17565	if err := googleapi.CheckResponse(res); err != nil {
17566		return nil, err
17567	}
17568	ret := &GoogleCloudLocationListLocationsResponse{
17569		ServerResponse: googleapi.ServerResponse{
17570			Header:         res.Header,
17571			HTTPStatusCode: res.StatusCode,
17572		},
17573	}
17574	target := &ret
17575	if err := gensupport.DecodeResponse(target, res); err != nil {
17576		return nil, err
17577	}
17578	return ret, nil
17579	// {
17580	//   "description": "Lists information about the supported locations for this service.",
17581	//   "flatPath": "v3/projects/{projectsId}/locations",
17582	//   "httpMethod": "GET",
17583	//   "id": "dialogflow.projects.locations.list",
17584	//   "parameterOrder": [
17585	//     "name"
17586	//   ],
17587	//   "parameters": {
17588	//     "filter": {
17589	//       "description": "A filter to narrow down results to a preferred subset. The filtering language accepts strings like \"displayName=tokyo\", and is documented in more detail in [AIP-160](https://google.aip.dev/160).",
17590	//       "location": "query",
17591	//       "type": "string"
17592	//     },
17593	//     "name": {
17594	//       "description": "The resource that owns the locations collection, if applicable.",
17595	//       "location": "path",
17596	//       "pattern": "^projects/[^/]+$",
17597	//       "required": true,
17598	//       "type": "string"
17599	//     },
17600	//     "pageSize": {
17601	//       "description": "The maximum number of results to return. If not set, the service selects a default.",
17602	//       "format": "int32",
17603	//       "location": "query",
17604	//       "type": "integer"
17605	//     },
17606	//     "pageToken": {
17607	//       "description": "A page token received from the `next_page_token` field in the response. Send that page token to receive the subsequent page.",
17608	//       "location": "query",
17609	//       "type": "string"
17610	//     }
17611	//   },
17612	//   "path": "v3/{+name}/locations",
17613	//   "response": {
17614	//     "$ref": "GoogleCloudLocationListLocationsResponse"
17615	//   },
17616	//   "scopes": [
17617	//     "https://www.googleapis.com/auth/cloud-platform",
17618	//     "https://www.googleapis.com/auth/dialogflow"
17619	//   ]
17620	// }
17621
17622}
17623
17624// Pages invokes f for each page of results.
17625// A non-nil error returned from f will halt the iteration.
17626// The provided context supersedes any context provided to the Context method.
17627func (c *ProjectsLocationsListCall) Pages(ctx context.Context, f func(*GoogleCloudLocationListLocationsResponse) error) error {
17628	c.ctx_ = ctx
17629	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
17630	for {
17631		x, err := c.Do()
17632		if err != nil {
17633			return err
17634		}
17635		if err := f(x); err != nil {
17636			return err
17637		}
17638		if x.NextPageToken == "" {
17639			return nil
17640		}
17641		c.PageToken(x.NextPageToken)
17642	}
17643}
17644
17645// method id "dialogflow.projects.locations.agents.create":
17646
17647type ProjectsLocationsAgentsCreateCall struct {
17648	s                              *Service
17649	parent                         string
17650	googleclouddialogflowcxv3agent *GoogleCloudDialogflowCxV3Agent
17651	urlParams_                     gensupport.URLParams
17652	ctx_                           context.Context
17653	header_                        http.Header
17654}
17655
17656// Create: Creates an agent in the specified location. Note: You should
17657// always train flows prior to sending them queries. See the training
17658// documentation
17659// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
17660//
17661// - parent: The location to create a agent for. Format:
17662//   `projects//locations/`.
17663func (r *ProjectsLocationsAgentsService) Create(parent string, googleclouddialogflowcxv3agent *GoogleCloudDialogflowCxV3Agent) *ProjectsLocationsAgentsCreateCall {
17664	c := &ProjectsLocationsAgentsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17665	c.parent = parent
17666	c.googleclouddialogflowcxv3agent = googleclouddialogflowcxv3agent
17667	return c
17668}
17669
17670// Fields allows partial responses to be retrieved. See
17671// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17672// for more information.
17673func (c *ProjectsLocationsAgentsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsCreateCall {
17674	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17675	return c
17676}
17677
17678// Context sets the context to be used in this call's Do method. Any
17679// pending HTTP request will be aborted if the provided context is
17680// canceled.
17681func (c *ProjectsLocationsAgentsCreateCall) Context(ctx context.Context) *ProjectsLocationsAgentsCreateCall {
17682	c.ctx_ = ctx
17683	return c
17684}
17685
17686// Header returns an http.Header that can be modified by the caller to
17687// add HTTP headers to the request.
17688func (c *ProjectsLocationsAgentsCreateCall) Header() http.Header {
17689	if c.header_ == nil {
17690		c.header_ = make(http.Header)
17691	}
17692	return c.header_
17693}
17694
17695func (c *ProjectsLocationsAgentsCreateCall) doRequest(alt string) (*http.Response, error) {
17696	reqHeaders := make(http.Header)
17697	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
17698	for k, v := range c.header_ {
17699		reqHeaders[k] = v
17700	}
17701	reqHeaders.Set("User-Agent", c.s.userAgent())
17702	var body io.Reader = nil
17703	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3agent)
17704	if err != nil {
17705		return nil, err
17706	}
17707	reqHeaders.Set("Content-Type", "application/json")
17708	c.urlParams_.Set("alt", alt)
17709	c.urlParams_.Set("prettyPrint", "false")
17710	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/agents")
17711	urls += "?" + c.urlParams_.Encode()
17712	req, err := http.NewRequest("POST", urls, body)
17713	if err != nil {
17714		return nil, err
17715	}
17716	req.Header = reqHeaders
17717	googleapi.Expand(req.URL, map[string]string{
17718		"parent": c.parent,
17719	})
17720	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17721}
17722
17723// Do executes the "dialogflow.projects.locations.agents.create" call.
17724// Exactly one of *GoogleCloudDialogflowCxV3Agent or error will be
17725// non-nil. Any non-2xx status code is an error. Response headers are in
17726// either *GoogleCloudDialogflowCxV3Agent.ServerResponse.Header or (if a
17727// response was returned at all) in error.(*googleapi.Error).Header. Use
17728// googleapi.IsNotModified to check whether the returned error was
17729// because http.StatusNotModified was returned.
17730func (c *ProjectsLocationsAgentsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3Agent, error) {
17731	gensupport.SetOptions(c.urlParams_, opts...)
17732	res, err := c.doRequest("json")
17733	if res != nil && res.StatusCode == http.StatusNotModified {
17734		if res.Body != nil {
17735			res.Body.Close()
17736		}
17737		return nil, &googleapi.Error{
17738			Code:   res.StatusCode,
17739			Header: res.Header,
17740		}
17741	}
17742	if err != nil {
17743		return nil, err
17744	}
17745	defer googleapi.CloseBody(res)
17746	if err := googleapi.CheckResponse(res); err != nil {
17747		return nil, err
17748	}
17749	ret := &GoogleCloudDialogflowCxV3Agent{
17750		ServerResponse: googleapi.ServerResponse{
17751			Header:         res.Header,
17752			HTTPStatusCode: res.StatusCode,
17753		},
17754	}
17755	target := &ret
17756	if err := gensupport.DecodeResponse(target, res); err != nil {
17757		return nil, err
17758	}
17759	return ret, nil
17760	// {
17761	//   "description": "Creates an agent in the specified location. Note: You should always train flows prior to sending them queries. See the [training documentation](https://cloud.google.com/dialogflow/cx/docs/concept/training).",
17762	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents",
17763	//   "httpMethod": "POST",
17764	//   "id": "dialogflow.projects.locations.agents.create",
17765	//   "parameterOrder": [
17766	//     "parent"
17767	//   ],
17768	//   "parameters": {
17769	//     "parent": {
17770	//       "description": "Required. The location to create a agent for. Format: `projects//locations/`.",
17771	//       "location": "path",
17772	//       "pattern": "^projects/[^/]+/locations/[^/]+$",
17773	//       "required": true,
17774	//       "type": "string"
17775	//     }
17776	//   },
17777	//   "path": "v3/{+parent}/agents",
17778	//   "request": {
17779	//     "$ref": "GoogleCloudDialogflowCxV3Agent"
17780	//   },
17781	//   "response": {
17782	//     "$ref": "GoogleCloudDialogflowCxV3Agent"
17783	//   },
17784	//   "scopes": [
17785	//     "https://www.googleapis.com/auth/cloud-platform",
17786	//     "https://www.googleapis.com/auth/dialogflow"
17787	//   ]
17788	// }
17789
17790}
17791
17792// method id "dialogflow.projects.locations.agents.delete":
17793
17794type ProjectsLocationsAgentsDeleteCall struct {
17795	s          *Service
17796	name       string
17797	urlParams_ gensupport.URLParams
17798	ctx_       context.Context
17799	header_    http.Header
17800}
17801
17802// Delete: Deletes the specified agent.
17803//
17804// - name: The name of the agent to delete. Format:
17805//   `projects//locations//agents/`.
17806func (r *ProjectsLocationsAgentsService) Delete(name string) *ProjectsLocationsAgentsDeleteCall {
17807	c := &ProjectsLocationsAgentsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17808	c.name = name
17809	return c
17810}
17811
17812// Fields allows partial responses to be retrieved. See
17813// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17814// for more information.
17815func (c *ProjectsLocationsAgentsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsDeleteCall {
17816	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17817	return c
17818}
17819
17820// Context sets the context to be used in this call's Do method. Any
17821// pending HTTP request will be aborted if the provided context is
17822// canceled.
17823func (c *ProjectsLocationsAgentsDeleteCall) Context(ctx context.Context) *ProjectsLocationsAgentsDeleteCall {
17824	c.ctx_ = ctx
17825	return c
17826}
17827
17828// Header returns an http.Header that can be modified by the caller to
17829// add HTTP headers to the request.
17830func (c *ProjectsLocationsAgentsDeleteCall) Header() http.Header {
17831	if c.header_ == nil {
17832		c.header_ = make(http.Header)
17833	}
17834	return c.header_
17835}
17836
17837func (c *ProjectsLocationsAgentsDeleteCall) doRequest(alt string) (*http.Response, error) {
17838	reqHeaders := make(http.Header)
17839	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
17840	for k, v := range c.header_ {
17841		reqHeaders[k] = v
17842	}
17843	reqHeaders.Set("User-Agent", c.s.userAgent())
17844	var body io.Reader = nil
17845	c.urlParams_.Set("alt", alt)
17846	c.urlParams_.Set("prettyPrint", "false")
17847	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
17848	urls += "?" + c.urlParams_.Encode()
17849	req, err := http.NewRequest("DELETE", urls, body)
17850	if err != nil {
17851		return nil, err
17852	}
17853	req.Header = reqHeaders
17854	googleapi.Expand(req.URL, map[string]string{
17855		"name": c.name,
17856	})
17857	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17858}
17859
17860// Do executes the "dialogflow.projects.locations.agents.delete" call.
17861// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
17862// non-2xx status code is an error. Response headers are in either
17863// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
17864// returned at all) in error.(*googleapi.Error).Header. Use
17865// googleapi.IsNotModified to check whether the returned error was
17866// because http.StatusNotModified was returned.
17867func (c *ProjectsLocationsAgentsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
17868	gensupport.SetOptions(c.urlParams_, opts...)
17869	res, err := c.doRequest("json")
17870	if res != nil && res.StatusCode == http.StatusNotModified {
17871		if res.Body != nil {
17872			res.Body.Close()
17873		}
17874		return nil, &googleapi.Error{
17875			Code:   res.StatusCode,
17876			Header: res.Header,
17877		}
17878	}
17879	if err != nil {
17880		return nil, err
17881	}
17882	defer googleapi.CloseBody(res)
17883	if err := googleapi.CheckResponse(res); err != nil {
17884		return nil, err
17885	}
17886	ret := &GoogleProtobufEmpty{
17887		ServerResponse: googleapi.ServerResponse{
17888			Header:         res.Header,
17889			HTTPStatusCode: res.StatusCode,
17890		},
17891	}
17892	target := &ret
17893	if err := gensupport.DecodeResponse(target, res); err != nil {
17894		return nil, err
17895	}
17896	return ret, nil
17897	// {
17898	//   "description": "Deletes the specified agent.",
17899	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}",
17900	//   "httpMethod": "DELETE",
17901	//   "id": "dialogflow.projects.locations.agents.delete",
17902	//   "parameterOrder": [
17903	//     "name"
17904	//   ],
17905	//   "parameters": {
17906	//     "name": {
17907	//       "description": "Required. The name of the agent to delete. Format: `projects//locations//agents/`.",
17908	//       "location": "path",
17909	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
17910	//       "required": true,
17911	//       "type": "string"
17912	//     }
17913	//   },
17914	//   "path": "v3/{+name}",
17915	//   "response": {
17916	//     "$ref": "GoogleProtobufEmpty"
17917	//   },
17918	//   "scopes": [
17919	//     "https://www.googleapis.com/auth/cloud-platform",
17920	//     "https://www.googleapis.com/auth/dialogflow"
17921	//   ]
17922	// }
17923
17924}
17925
17926// method id "dialogflow.projects.locations.agents.export":
17927
17928type ProjectsLocationsAgentsExportCall struct {
17929	s                                           *Service
17930	name                                        string
17931	googleclouddialogflowcxv3exportagentrequest *GoogleCloudDialogflowCxV3ExportAgentRequest
17932	urlParams_                                  gensupport.URLParams
17933	ctx_                                        context.Context
17934	header_                                     http.Header
17935}
17936
17937// Export: Exports the specified agent to a binary file.
17938//
17939// - name: The name of the agent to export. Format:
17940//   `projects//locations//agents/`.
17941func (r *ProjectsLocationsAgentsService) Export(name string, googleclouddialogflowcxv3exportagentrequest *GoogleCloudDialogflowCxV3ExportAgentRequest) *ProjectsLocationsAgentsExportCall {
17942	c := &ProjectsLocationsAgentsExportCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17943	c.name = name
17944	c.googleclouddialogflowcxv3exportagentrequest = googleclouddialogflowcxv3exportagentrequest
17945	return c
17946}
17947
17948// Fields allows partial responses to be retrieved. See
17949// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17950// for more information.
17951func (c *ProjectsLocationsAgentsExportCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsExportCall {
17952	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17953	return c
17954}
17955
17956// Context sets the context to be used in this call's Do method. Any
17957// pending HTTP request will be aborted if the provided context is
17958// canceled.
17959func (c *ProjectsLocationsAgentsExportCall) Context(ctx context.Context) *ProjectsLocationsAgentsExportCall {
17960	c.ctx_ = ctx
17961	return c
17962}
17963
17964// Header returns an http.Header that can be modified by the caller to
17965// add HTTP headers to the request.
17966func (c *ProjectsLocationsAgentsExportCall) Header() http.Header {
17967	if c.header_ == nil {
17968		c.header_ = make(http.Header)
17969	}
17970	return c.header_
17971}
17972
17973func (c *ProjectsLocationsAgentsExportCall) doRequest(alt string) (*http.Response, error) {
17974	reqHeaders := make(http.Header)
17975	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
17976	for k, v := range c.header_ {
17977		reqHeaders[k] = v
17978	}
17979	reqHeaders.Set("User-Agent", c.s.userAgent())
17980	var body io.Reader = nil
17981	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3exportagentrequest)
17982	if err != nil {
17983		return nil, err
17984	}
17985	reqHeaders.Set("Content-Type", "application/json")
17986	c.urlParams_.Set("alt", alt)
17987	c.urlParams_.Set("prettyPrint", "false")
17988	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}:export")
17989	urls += "?" + c.urlParams_.Encode()
17990	req, err := http.NewRequest("POST", urls, body)
17991	if err != nil {
17992		return nil, err
17993	}
17994	req.Header = reqHeaders
17995	googleapi.Expand(req.URL, map[string]string{
17996		"name": c.name,
17997	})
17998	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17999}
18000
18001// Do executes the "dialogflow.projects.locations.agents.export" call.
18002// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
18003// Any non-2xx status code is an error. Response headers are in either
18004// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
18005// was returned at all) in error.(*googleapi.Error).Header. Use
18006// googleapi.IsNotModified to check whether the returned error was
18007// because http.StatusNotModified was returned.
18008func (c *ProjectsLocationsAgentsExportCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
18009	gensupport.SetOptions(c.urlParams_, opts...)
18010	res, err := c.doRequest("json")
18011	if res != nil && res.StatusCode == http.StatusNotModified {
18012		if res.Body != nil {
18013			res.Body.Close()
18014		}
18015		return nil, &googleapi.Error{
18016			Code:   res.StatusCode,
18017			Header: res.Header,
18018		}
18019	}
18020	if err != nil {
18021		return nil, err
18022	}
18023	defer googleapi.CloseBody(res)
18024	if err := googleapi.CheckResponse(res); err != nil {
18025		return nil, err
18026	}
18027	ret := &GoogleLongrunningOperation{
18028		ServerResponse: googleapi.ServerResponse{
18029			Header:         res.Header,
18030			HTTPStatusCode: res.StatusCode,
18031		},
18032	}
18033	target := &ret
18034	if err := gensupport.DecodeResponse(target, res); err != nil {
18035		return nil, err
18036	}
18037	return ret, nil
18038	// {
18039	//   "description": "Exports the specified agent to a binary file.",
18040	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}:export",
18041	//   "httpMethod": "POST",
18042	//   "id": "dialogflow.projects.locations.agents.export",
18043	//   "parameterOrder": [
18044	//     "name"
18045	//   ],
18046	//   "parameters": {
18047	//     "name": {
18048	//       "description": "Required. The name of the agent to export. Format: `projects//locations//agents/`.",
18049	//       "location": "path",
18050	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
18051	//       "required": true,
18052	//       "type": "string"
18053	//     }
18054	//   },
18055	//   "path": "v3/{+name}:export",
18056	//   "request": {
18057	//     "$ref": "GoogleCloudDialogflowCxV3ExportAgentRequest"
18058	//   },
18059	//   "response": {
18060	//     "$ref": "GoogleLongrunningOperation"
18061	//   },
18062	//   "scopes": [
18063	//     "https://www.googleapis.com/auth/cloud-platform",
18064	//     "https://www.googleapis.com/auth/dialogflow"
18065	//   ]
18066	// }
18067
18068}
18069
18070// method id "dialogflow.projects.locations.agents.get":
18071
18072type ProjectsLocationsAgentsGetCall struct {
18073	s            *Service
18074	name         string
18075	urlParams_   gensupport.URLParams
18076	ifNoneMatch_ string
18077	ctx_         context.Context
18078	header_      http.Header
18079}
18080
18081// Get: Retrieves the specified agent.
18082//
18083// - name: The name of the agent. Format:
18084//   `projects//locations//agents/`.
18085func (r *ProjectsLocationsAgentsService) Get(name string) *ProjectsLocationsAgentsGetCall {
18086	c := &ProjectsLocationsAgentsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18087	c.name = name
18088	return c
18089}
18090
18091// Fields allows partial responses to be retrieved. See
18092// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18093// for more information.
18094func (c *ProjectsLocationsAgentsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsGetCall {
18095	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18096	return c
18097}
18098
18099// IfNoneMatch sets the optional parameter which makes the operation
18100// fail if the object's ETag matches the given value. This is useful for
18101// getting updates only after the object has changed since the last
18102// request. Use googleapi.IsNotModified to check whether the response
18103// error from Do is the result of In-None-Match.
18104func (c *ProjectsLocationsAgentsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsGetCall {
18105	c.ifNoneMatch_ = entityTag
18106	return c
18107}
18108
18109// Context sets the context to be used in this call's Do method. Any
18110// pending HTTP request will be aborted if the provided context is
18111// canceled.
18112func (c *ProjectsLocationsAgentsGetCall) Context(ctx context.Context) *ProjectsLocationsAgentsGetCall {
18113	c.ctx_ = ctx
18114	return c
18115}
18116
18117// Header returns an http.Header that can be modified by the caller to
18118// add HTTP headers to the request.
18119func (c *ProjectsLocationsAgentsGetCall) Header() http.Header {
18120	if c.header_ == nil {
18121		c.header_ = make(http.Header)
18122	}
18123	return c.header_
18124}
18125
18126func (c *ProjectsLocationsAgentsGetCall) doRequest(alt string) (*http.Response, error) {
18127	reqHeaders := make(http.Header)
18128	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
18129	for k, v := range c.header_ {
18130		reqHeaders[k] = v
18131	}
18132	reqHeaders.Set("User-Agent", c.s.userAgent())
18133	if c.ifNoneMatch_ != "" {
18134		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
18135	}
18136	var body io.Reader = nil
18137	c.urlParams_.Set("alt", alt)
18138	c.urlParams_.Set("prettyPrint", "false")
18139	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
18140	urls += "?" + c.urlParams_.Encode()
18141	req, err := http.NewRequest("GET", urls, body)
18142	if err != nil {
18143		return nil, err
18144	}
18145	req.Header = reqHeaders
18146	googleapi.Expand(req.URL, map[string]string{
18147		"name": c.name,
18148	})
18149	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18150}
18151
18152// Do executes the "dialogflow.projects.locations.agents.get" call.
18153// Exactly one of *GoogleCloudDialogflowCxV3Agent or error will be
18154// non-nil. Any non-2xx status code is an error. Response headers are in
18155// either *GoogleCloudDialogflowCxV3Agent.ServerResponse.Header or (if a
18156// response was returned at all) in error.(*googleapi.Error).Header. Use
18157// googleapi.IsNotModified to check whether the returned error was
18158// because http.StatusNotModified was returned.
18159func (c *ProjectsLocationsAgentsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3Agent, error) {
18160	gensupport.SetOptions(c.urlParams_, opts...)
18161	res, err := c.doRequest("json")
18162	if res != nil && res.StatusCode == http.StatusNotModified {
18163		if res.Body != nil {
18164			res.Body.Close()
18165		}
18166		return nil, &googleapi.Error{
18167			Code:   res.StatusCode,
18168			Header: res.Header,
18169		}
18170	}
18171	if err != nil {
18172		return nil, err
18173	}
18174	defer googleapi.CloseBody(res)
18175	if err := googleapi.CheckResponse(res); err != nil {
18176		return nil, err
18177	}
18178	ret := &GoogleCloudDialogflowCxV3Agent{
18179		ServerResponse: googleapi.ServerResponse{
18180			Header:         res.Header,
18181			HTTPStatusCode: res.StatusCode,
18182		},
18183	}
18184	target := &ret
18185	if err := gensupport.DecodeResponse(target, res); err != nil {
18186		return nil, err
18187	}
18188	return ret, nil
18189	// {
18190	//   "description": "Retrieves the specified agent.",
18191	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}",
18192	//   "httpMethod": "GET",
18193	//   "id": "dialogflow.projects.locations.agents.get",
18194	//   "parameterOrder": [
18195	//     "name"
18196	//   ],
18197	//   "parameters": {
18198	//     "name": {
18199	//       "description": "Required. The name of the agent. Format: `projects//locations//agents/`.",
18200	//       "location": "path",
18201	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
18202	//       "required": true,
18203	//       "type": "string"
18204	//     }
18205	//   },
18206	//   "path": "v3/{+name}",
18207	//   "response": {
18208	//     "$ref": "GoogleCloudDialogflowCxV3Agent"
18209	//   },
18210	//   "scopes": [
18211	//     "https://www.googleapis.com/auth/cloud-platform",
18212	//     "https://www.googleapis.com/auth/dialogflow"
18213	//   ]
18214	// }
18215
18216}
18217
18218// method id "dialogflow.projects.locations.agents.getValidationResult":
18219
18220type ProjectsLocationsAgentsGetValidationResultCall struct {
18221	s            *Service
18222	name         string
18223	urlParams_   gensupport.URLParams
18224	ifNoneMatch_ string
18225	ctx_         context.Context
18226	header_      http.Header
18227}
18228
18229// GetValidationResult: Gets the latest agent validation result. Agent
18230// validation is performed when ValidateAgent is called.
18231//
18232// - name: The agent name. Format:
18233//   `projects//locations//agents//validationResult`.
18234func (r *ProjectsLocationsAgentsService) GetValidationResult(name string) *ProjectsLocationsAgentsGetValidationResultCall {
18235	c := &ProjectsLocationsAgentsGetValidationResultCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18236	c.name = name
18237	return c
18238}
18239
18240// LanguageCode sets the optional parameter "languageCode": If not
18241// specified, the agent's default language is used.
18242func (c *ProjectsLocationsAgentsGetValidationResultCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsGetValidationResultCall {
18243	c.urlParams_.Set("languageCode", languageCode)
18244	return c
18245}
18246
18247// Fields allows partial responses to be retrieved. See
18248// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18249// for more information.
18250func (c *ProjectsLocationsAgentsGetValidationResultCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsGetValidationResultCall {
18251	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18252	return c
18253}
18254
18255// IfNoneMatch sets the optional parameter which makes the operation
18256// fail if the object's ETag matches the given value. This is useful for
18257// getting updates only after the object has changed since the last
18258// request. Use googleapi.IsNotModified to check whether the response
18259// error from Do is the result of In-None-Match.
18260func (c *ProjectsLocationsAgentsGetValidationResultCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsGetValidationResultCall {
18261	c.ifNoneMatch_ = entityTag
18262	return c
18263}
18264
18265// Context sets the context to be used in this call's Do method. Any
18266// pending HTTP request will be aborted if the provided context is
18267// canceled.
18268func (c *ProjectsLocationsAgentsGetValidationResultCall) Context(ctx context.Context) *ProjectsLocationsAgentsGetValidationResultCall {
18269	c.ctx_ = ctx
18270	return c
18271}
18272
18273// Header returns an http.Header that can be modified by the caller to
18274// add HTTP headers to the request.
18275func (c *ProjectsLocationsAgentsGetValidationResultCall) Header() http.Header {
18276	if c.header_ == nil {
18277		c.header_ = make(http.Header)
18278	}
18279	return c.header_
18280}
18281
18282func (c *ProjectsLocationsAgentsGetValidationResultCall) doRequest(alt string) (*http.Response, error) {
18283	reqHeaders := make(http.Header)
18284	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
18285	for k, v := range c.header_ {
18286		reqHeaders[k] = v
18287	}
18288	reqHeaders.Set("User-Agent", c.s.userAgent())
18289	if c.ifNoneMatch_ != "" {
18290		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
18291	}
18292	var body io.Reader = nil
18293	c.urlParams_.Set("alt", alt)
18294	c.urlParams_.Set("prettyPrint", "false")
18295	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
18296	urls += "?" + c.urlParams_.Encode()
18297	req, err := http.NewRequest("GET", urls, body)
18298	if err != nil {
18299		return nil, err
18300	}
18301	req.Header = reqHeaders
18302	googleapi.Expand(req.URL, map[string]string{
18303		"name": c.name,
18304	})
18305	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18306}
18307
18308// Do executes the "dialogflow.projects.locations.agents.getValidationResult" call.
18309// Exactly one of *GoogleCloudDialogflowCxV3AgentValidationResult or
18310// error will be non-nil. Any non-2xx status code is an error. Response
18311// headers are in either
18312// *GoogleCloudDialogflowCxV3AgentValidationResult.ServerResponse.Header
18313// or (if a response was returned at all) in
18314// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
18315// whether the returned error was because http.StatusNotModified was
18316// returned.
18317func (c *ProjectsLocationsAgentsGetValidationResultCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3AgentValidationResult, error) {
18318	gensupport.SetOptions(c.urlParams_, opts...)
18319	res, err := c.doRequest("json")
18320	if res != nil && res.StatusCode == http.StatusNotModified {
18321		if res.Body != nil {
18322			res.Body.Close()
18323		}
18324		return nil, &googleapi.Error{
18325			Code:   res.StatusCode,
18326			Header: res.Header,
18327		}
18328	}
18329	if err != nil {
18330		return nil, err
18331	}
18332	defer googleapi.CloseBody(res)
18333	if err := googleapi.CheckResponse(res); err != nil {
18334		return nil, err
18335	}
18336	ret := &GoogleCloudDialogflowCxV3AgentValidationResult{
18337		ServerResponse: googleapi.ServerResponse{
18338			Header:         res.Header,
18339			HTTPStatusCode: res.StatusCode,
18340		},
18341	}
18342	target := &ret
18343	if err := gensupport.DecodeResponse(target, res); err != nil {
18344		return nil, err
18345	}
18346	return ret, nil
18347	// {
18348	//   "description": "Gets the latest agent validation result. Agent validation is performed when ValidateAgent is called.",
18349	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/validationResult",
18350	//   "httpMethod": "GET",
18351	//   "id": "dialogflow.projects.locations.agents.getValidationResult",
18352	//   "parameterOrder": [
18353	//     "name"
18354	//   ],
18355	//   "parameters": {
18356	//     "languageCode": {
18357	//       "description": "If not specified, the agent's default language is used.",
18358	//       "location": "query",
18359	//       "type": "string"
18360	//     },
18361	//     "name": {
18362	//       "description": "Required. The agent name. Format: `projects//locations//agents//validationResult`.",
18363	//       "location": "path",
18364	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/validationResult$",
18365	//       "required": true,
18366	//       "type": "string"
18367	//     }
18368	//   },
18369	//   "path": "v3/{+name}",
18370	//   "response": {
18371	//     "$ref": "GoogleCloudDialogflowCxV3AgentValidationResult"
18372	//   },
18373	//   "scopes": [
18374	//     "https://www.googleapis.com/auth/cloud-platform",
18375	//     "https://www.googleapis.com/auth/dialogflow"
18376	//   ]
18377	// }
18378
18379}
18380
18381// method id "dialogflow.projects.locations.agents.list":
18382
18383type ProjectsLocationsAgentsListCall struct {
18384	s            *Service
18385	parent       string
18386	urlParams_   gensupport.URLParams
18387	ifNoneMatch_ string
18388	ctx_         context.Context
18389	header_      http.Header
18390}
18391
18392// List: Returns the list of all agents in the specified location.
18393//
18394// - parent: The location to list all agents for. Format:
18395//   `projects//locations/`.
18396func (r *ProjectsLocationsAgentsService) List(parent string) *ProjectsLocationsAgentsListCall {
18397	c := &ProjectsLocationsAgentsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18398	c.parent = parent
18399	return c
18400}
18401
18402// PageSize sets the optional parameter "pageSize": The maximum number
18403// of items to return in a single page. By default 100 and at most 1000.
18404func (c *ProjectsLocationsAgentsListCall) PageSize(pageSize int64) *ProjectsLocationsAgentsListCall {
18405	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
18406	return c
18407}
18408
18409// PageToken sets the optional parameter "pageToken": The
18410// next_page_token value returned from a previous list request.
18411func (c *ProjectsLocationsAgentsListCall) PageToken(pageToken string) *ProjectsLocationsAgentsListCall {
18412	c.urlParams_.Set("pageToken", pageToken)
18413	return c
18414}
18415
18416// Fields allows partial responses to be retrieved. See
18417// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18418// for more information.
18419func (c *ProjectsLocationsAgentsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsListCall {
18420	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18421	return c
18422}
18423
18424// IfNoneMatch sets the optional parameter which makes the operation
18425// fail if the object's ETag matches the given value. This is useful for
18426// getting updates only after the object has changed since the last
18427// request. Use googleapi.IsNotModified to check whether the response
18428// error from Do is the result of In-None-Match.
18429func (c *ProjectsLocationsAgentsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsListCall {
18430	c.ifNoneMatch_ = entityTag
18431	return c
18432}
18433
18434// Context sets the context to be used in this call's Do method. Any
18435// pending HTTP request will be aborted if the provided context is
18436// canceled.
18437func (c *ProjectsLocationsAgentsListCall) Context(ctx context.Context) *ProjectsLocationsAgentsListCall {
18438	c.ctx_ = ctx
18439	return c
18440}
18441
18442// Header returns an http.Header that can be modified by the caller to
18443// add HTTP headers to the request.
18444func (c *ProjectsLocationsAgentsListCall) Header() http.Header {
18445	if c.header_ == nil {
18446		c.header_ = make(http.Header)
18447	}
18448	return c.header_
18449}
18450
18451func (c *ProjectsLocationsAgentsListCall) doRequest(alt string) (*http.Response, error) {
18452	reqHeaders := make(http.Header)
18453	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
18454	for k, v := range c.header_ {
18455		reqHeaders[k] = v
18456	}
18457	reqHeaders.Set("User-Agent", c.s.userAgent())
18458	if c.ifNoneMatch_ != "" {
18459		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
18460	}
18461	var body io.Reader = nil
18462	c.urlParams_.Set("alt", alt)
18463	c.urlParams_.Set("prettyPrint", "false")
18464	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/agents")
18465	urls += "?" + c.urlParams_.Encode()
18466	req, err := http.NewRequest("GET", urls, body)
18467	if err != nil {
18468		return nil, err
18469	}
18470	req.Header = reqHeaders
18471	googleapi.Expand(req.URL, map[string]string{
18472		"parent": c.parent,
18473	})
18474	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18475}
18476
18477// Do executes the "dialogflow.projects.locations.agents.list" call.
18478// Exactly one of *GoogleCloudDialogflowCxV3ListAgentsResponse or error
18479// will be non-nil. Any non-2xx status code is an error. Response
18480// headers are in either
18481// *GoogleCloudDialogflowCxV3ListAgentsResponse.ServerResponse.Header or
18482// (if a response was returned at all) in
18483// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
18484// whether the returned error was because http.StatusNotModified was
18485// returned.
18486func (c *ProjectsLocationsAgentsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3ListAgentsResponse, error) {
18487	gensupport.SetOptions(c.urlParams_, opts...)
18488	res, err := c.doRequest("json")
18489	if res != nil && res.StatusCode == http.StatusNotModified {
18490		if res.Body != nil {
18491			res.Body.Close()
18492		}
18493		return nil, &googleapi.Error{
18494			Code:   res.StatusCode,
18495			Header: res.Header,
18496		}
18497	}
18498	if err != nil {
18499		return nil, err
18500	}
18501	defer googleapi.CloseBody(res)
18502	if err := googleapi.CheckResponse(res); err != nil {
18503		return nil, err
18504	}
18505	ret := &GoogleCloudDialogflowCxV3ListAgentsResponse{
18506		ServerResponse: googleapi.ServerResponse{
18507			Header:         res.Header,
18508			HTTPStatusCode: res.StatusCode,
18509		},
18510	}
18511	target := &ret
18512	if err := gensupport.DecodeResponse(target, res); err != nil {
18513		return nil, err
18514	}
18515	return ret, nil
18516	// {
18517	//   "description": "Returns the list of all agents in the specified location.",
18518	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents",
18519	//   "httpMethod": "GET",
18520	//   "id": "dialogflow.projects.locations.agents.list",
18521	//   "parameterOrder": [
18522	//     "parent"
18523	//   ],
18524	//   "parameters": {
18525	//     "pageSize": {
18526	//       "description": "The maximum number of items to return in a single page. By default 100 and at most 1000.",
18527	//       "format": "int32",
18528	//       "location": "query",
18529	//       "type": "integer"
18530	//     },
18531	//     "pageToken": {
18532	//       "description": "The next_page_token value returned from a previous list request.",
18533	//       "location": "query",
18534	//       "type": "string"
18535	//     },
18536	//     "parent": {
18537	//       "description": "Required. The location to list all agents for. Format: `projects//locations/`.",
18538	//       "location": "path",
18539	//       "pattern": "^projects/[^/]+/locations/[^/]+$",
18540	//       "required": true,
18541	//       "type": "string"
18542	//     }
18543	//   },
18544	//   "path": "v3/{+parent}/agents",
18545	//   "response": {
18546	//     "$ref": "GoogleCloudDialogflowCxV3ListAgentsResponse"
18547	//   },
18548	//   "scopes": [
18549	//     "https://www.googleapis.com/auth/cloud-platform",
18550	//     "https://www.googleapis.com/auth/dialogflow"
18551	//   ]
18552	// }
18553
18554}
18555
18556// Pages invokes f for each page of results.
18557// A non-nil error returned from f will halt the iteration.
18558// The provided context supersedes any context provided to the Context method.
18559func (c *ProjectsLocationsAgentsListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3ListAgentsResponse) error) error {
18560	c.ctx_ = ctx
18561	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
18562	for {
18563		x, err := c.Do()
18564		if err != nil {
18565			return err
18566		}
18567		if err := f(x); err != nil {
18568			return err
18569		}
18570		if x.NextPageToken == "" {
18571			return nil
18572		}
18573		c.PageToken(x.NextPageToken)
18574	}
18575}
18576
18577// method id "dialogflow.projects.locations.agents.patch":
18578
18579type ProjectsLocationsAgentsPatchCall struct {
18580	s                              *Service
18581	nameid                         string
18582	googleclouddialogflowcxv3agent *GoogleCloudDialogflowCxV3Agent
18583	urlParams_                     gensupport.URLParams
18584	ctx_                           context.Context
18585	header_                        http.Header
18586}
18587
18588// Patch: Updates the specified agent. Note: You should always train
18589// flows prior to sending them queries. See the training documentation
18590// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
18591//
18592// - name: The unique identifier of the agent. Required for the
18593//   Agents.UpdateAgent method. Agents.CreateAgent populates the name
18594//   automatically. Format: `projects//locations//agents/`.
18595func (r *ProjectsLocationsAgentsService) Patch(nameid string, googleclouddialogflowcxv3agent *GoogleCloudDialogflowCxV3Agent) *ProjectsLocationsAgentsPatchCall {
18596	c := &ProjectsLocationsAgentsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18597	c.nameid = nameid
18598	c.googleclouddialogflowcxv3agent = googleclouddialogflowcxv3agent
18599	return c
18600}
18601
18602// UpdateMask sets the optional parameter "updateMask": The mask to
18603// control which fields get updated. If the mask is not present, all
18604// fields will be updated.
18605func (c *ProjectsLocationsAgentsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsAgentsPatchCall {
18606	c.urlParams_.Set("updateMask", updateMask)
18607	return c
18608}
18609
18610// Fields allows partial responses to be retrieved. See
18611// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18612// for more information.
18613func (c *ProjectsLocationsAgentsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsPatchCall {
18614	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18615	return c
18616}
18617
18618// Context sets the context to be used in this call's Do method. Any
18619// pending HTTP request will be aborted if the provided context is
18620// canceled.
18621func (c *ProjectsLocationsAgentsPatchCall) Context(ctx context.Context) *ProjectsLocationsAgentsPatchCall {
18622	c.ctx_ = ctx
18623	return c
18624}
18625
18626// Header returns an http.Header that can be modified by the caller to
18627// add HTTP headers to the request.
18628func (c *ProjectsLocationsAgentsPatchCall) Header() http.Header {
18629	if c.header_ == nil {
18630		c.header_ = make(http.Header)
18631	}
18632	return c.header_
18633}
18634
18635func (c *ProjectsLocationsAgentsPatchCall) doRequest(alt string) (*http.Response, error) {
18636	reqHeaders := make(http.Header)
18637	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
18638	for k, v := range c.header_ {
18639		reqHeaders[k] = v
18640	}
18641	reqHeaders.Set("User-Agent", c.s.userAgent())
18642	var body io.Reader = nil
18643	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3agent)
18644	if err != nil {
18645		return nil, err
18646	}
18647	reqHeaders.Set("Content-Type", "application/json")
18648	c.urlParams_.Set("alt", alt)
18649	c.urlParams_.Set("prettyPrint", "false")
18650	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
18651	urls += "?" + c.urlParams_.Encode()
18652	req, err := http.NewRequest("PATCH", urls, body)
18653	if err != nil {
18654		return nil, err
18655	}
18656	req.Header = reqHeaders
18657	googleapi.Expand(req.URL, map[string]string{
18658		"name": c.nameid,
18659	})
18660	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18661}
18662
18663// Do executes the "dialogflow.projects.locations.agents.patch" call.
18664// Exactly one of *GoogleCloudDialogflowCxV3Agent or error will be
18665// non-nil. Any non-2xx status code is an error. Response headers are in
18666// either *GoogleCloudDialogflowCxV3Agent.ServerResponse.Header or (if a
18667// response was returned at all) in error.(*googleapi.Error).Header. Use
18668// googleapi.IsNotModified to check whether the returned error was
18669// because http.StatusNotModified was returned.
18670func (c *ProjectsLocationsAgentsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3Agent, error) {
18671	gensupport.SetOptions(c.urlParams_, opts...)
18672	res, err := c.doRequest("json")
18673	if res != nil && res.StatusCode == http.StatusNotModified {
18674		if res.Body != nil {
18675			res.Body.Close()
18676		}
18677		return nil, &googleapi.Error{
18678			Code:   res.StatusCode,
18679			Header: res.Header,
18680		}
18681	}
18682	if err != nil {
18683		return nil, err
18684	}
18685	defer googleapi.CloseBody(res)
18686	if err := googleapi.CheckResponse(res); err != nil {
18687		return nil, err
18688	}
18689	ret := &GoogleCloudDialogflowCxV3Agent{
18690		ServerResponse: googleapi.ServerResponse{
18691			Header:         res.Header,
18692			HTTPStatusCode: res.StatusCode,
18693		},
18694	}
18695	target := &ret
18696	if err := gensupport.DecodeResponse(target, res); err != nil {
18697		return nil, err
18698	}
18699	return ret, nil
18700	// {
18701	//   "description": "Updates the specified agent. Note: You should always train flows prior to sending them queries. See the [training documentation](https://cloud.google.com/dialogflow/cx/docs/concept/training).",
18702	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}",
18703	//   "httpMethod": "PATCH",
18704	//   "id": "dialogflow.projects.locations.agents.patch",
18705	//   "parameterOrder": [
18706	//     "name"
18707	//   ],
18708	//   "parameters": {
18709	//     "name": {
18710	//       "description": "The unique identifier of the agent. Required for the Agents.UpdateAgent method. Agents.CreateAgent populates the name automatically. Format: `projects//locations//agents/`.",
18711	//       "location": "path",
18712	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
18713	//       "required": true,
18714	//       "type": "string"
18715	//     },
18716	//     "updateMask": {
18717	//       "description": "The mask to control which fields get updated. If the mask is not present, all fields will be updated.",
18718	//       "format": "google-fieldmask",
18719	//       "location": "query",
18720	//       "type": "string"
18721	//     }
18722	//   },
18723	//   "path": "v3/{+name}",
18724	//   "request": {
18725	//     "$ref": "GoogleCloudDialogflowCxV3Agent"
18726	//   },
18727	//   "response": {
18728	//     "$ref": "GoogleCloudDialogflowCxV3Agent"
18729	//   },
18730	//   "scopes": [
18731	//     "https://www.googleapis.com/auth/cloud-platform",
18732	//     "https://www.googleapis.com/auth/dialogflow"
18733	//   ]
18734	// }
18735
18736}
18737
18738// method id "dialogflow.projects.locations.agents.restore":
18739
18740type ProjectsLocationsAgentsRestoreCall struct {
18741	s                                            *Service
18742	name                                         string
18743	googleclouddialogflowcxv3restoreagentrequest *GoogleCloudDialogflowCxV3RestoreAgentRequest
18744	urlParams_                                   gensupport.URLParams
18745	ctx_                                         context.Context
18746	header_                                      http.Header
18747}
18748
18749// Restore: Restores the specified agent from a binary file. Replaces
18750// the current agent with a new one. Note that all existing resources in
18751// agent (e.g. intents, entity types, flows) will be removed. Note: You
18752// should always train flows prior to sending them queries. See the
18753// training documentation
18754// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
18755//
18756// - name: The name of the agent to restore into. Format:
18757//   `projects//locations//agents/`.
18758func (r *ProjectsLocationsAgentsService) Restore(name string, googleclouddialogflowcxv3restoreagentrequest *GoogleCloudDialogflowCxV3RestoreAgentRequest) *ProjectsLocationsAgentsRestoreCall {
18759	c := &ProjectsLocationsAgentsRestoreCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18760	c.name = name
18761	c.googleclouddialogflowcxv3restoreagentrequest = googleclouddialogflowcxv3restoreagentrequest
18762	return c
18763}
18764
18765// Fields allows partial responses to be retrieved. See
18766// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18767// for more information.
18768func (c *ProjectsLocationsAgentsRestoreCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsRestoreCall {
18769	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18770	return c
18771}
18772
18773// Context sets the context to be used in this call's Do method. Any
18774// pending HTTP request will be aborted if the provided context is
18775// canceled.
18776func (c *ProjectsLocationsAgentsRestoreCall) Context(ctx context.Context) *ProjectsLocationsAgentsRestoreCall {
18777	c.ctx_ = ctx
18778	return c
18779}
18780
18781// Header returns an http.Header that can be modified by the caller to
18782// add HTTP headers to the request.
18783func (c *ProjectsLocationsAgentsRestoreCall) Header() http.Header {
18784	if c.header_ == nil {
18785		c.header_ = make(http.Header)
18786	}
18787	return c.header_
18788}
18789
18790func (c *ProjectsLocationsAgentsRestoreCall) doRequest(alt string) (*http.Response, error) {
18791	reqHeaders := make(http.Header)
18792	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
18793	for k, v := range c.header_ {
18794		reqHeaders[k] = v
18795	}
18796	reqHeaders.Set("User-Agent", c.s.userAgent())
18797	var body io.Reader = nil
18798	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3restoreagentrequest)
18799	if err != nil {
18800		return nil, err
18801	}
18802	reqHeaders.Set("Content-Type", "application/json")
18803	c.urlParams_.Set("alt", alt)
18804	c.urlParams_.Set("prettyPrint", "false")
18805	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}:restore")
18806	urls += "?" + c.urlParams_.Encode()
18807	req, err := http.NewRequest("POST", urls, body)
18808	if err != nil {
18809		return nil, err
18810	}
18811	req.Header = reqHeaders
18812	googleapi.Expand(req.URL, map[string]string{
18813		"name": c.name,
18814	})
18815	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18816}
18817
18818// Do executes the "dialogflow.projects.locations.agents.restore" call.
18819// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
18820// Any non-2xx status code is an error. Response headers are in either
18821// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
18822// was returned at all) in error.(*googleapi.Error).Header. Use
18823// googleapi.IsNotModified to check whether the returned error was
18824// because http.StatusNotModified was returned.
18825func (c *ProjectsLocationsAgentsRestoreCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
18826	gensupport.SetOptions(c.urlParams_, opts...)
18827	res, err := c.doRequest("json")
18828	if res != nil && res.StatusCode == http.StatusNotModified {
18829		if res.Body != nil {
18830			res.Body.Close()
18831		}
18832		return nil, &googleapi.Error{
18833			Code:   res.StatusCode,
18834			Header: res.Header,
18835		}
18836	}
18837	if err != nil {
18838		return nil, err
18839	}
18840	defer googleapi.CloseBody(res)
18841	if err := googleapi.CheckResponse(res); err != nil {
18842		return nil, err
18843	}
18844	ret := &GoogleLongrunningOperation{
18845		ServerResponse: googleapi.ServerResponse{
18846			Header:         res.Header,
18847			HTTPStatusCode: res.StatusCode,
18848		},
18849	}
18850	target := &ret
18851	if err := gensupport.DecodeResponse(target, res); err != nil {
18852		return nil, err
18853	}
18854	return ret, nil
18855	// {
18856	//   "description": "Restores the specified agent from a binary file. Replaces the current agent with a new one. Note that all existing resources in agent (e.g. intents, entity types, flows) will be removed. Note: You should always train flows prior to sending them queries. See the [training documentation](https://cloud.google.com/dialogflow/cx/docs/concept/training).",
18857	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}:restore",
18858	//   "httpMethod": "POST",
18859	//   "id": "dialogflow.projects.locations.agents.restore",
18860	//   "parameterOrder": [
18861	//     "name"
18862	//   ],
18863	//   "parameters": {
18864	//     "name": {
18865	//       "description": "Required. The name of the agent to restore into. Format: `projects//locations//agents/`.",
18866	//       "location": "path",
18867	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
18868	//       "required": true,
18869	//       "type": "string"
18870	//     }
18871	//   },
18872	//   "path": "v3/{+name}:restore",
18873	//   "request": {
18874	//     "$ref": "GoogleCloudDialogflowCxV3RestoreAgentRequest"
18875	//   },
18876	//   "response": {
18877	//     "$ref": "GoogleLongrunningOperation"
18878	//   },
18879	//   "scopes": [
18880	//     "https://www.googleapis.com/auth/cloud-platform",
18881	//     "https://www.googleapis.com/auth/dialogflow"
18882	//   ]
18883	// }
18884
18885}
18886
18887// method id "dialogflow.projects.locations.agents.validate":
18888
18889type ProjectsLocationsAgentsValidateCall struct {
18890	s                                             *Service
18891	name                                          string
18892	googleclouddialogflowcxv3validateagentrequest *GoogleCloudDialogflowCxV3ValidateAgentRequest
18893	urlParams_                                    gensupport.URLParams
18894	ctx_                                          context.Context
18895	header_                                       http.Header
18896}
18897
18898// Validate: Validates the specified agent and creates or updates
18899// validation results. The agent in draft version is validated. Please
18900// call this API after the training is completed to get the complete
18901// validation results.
18902//
18903// - name: The agent to validate. Format:
18904//   `projects//locations//agents/`.
18905func (r *ProjectsLocationsAgentsService) Validate(name string, googleclouddialogflowcxv3validateagentrequest *GoogleCloudDialogflowCxV3ValidateAgentRequest) *ProjectsLocationsAgentsValidateCall {
18906	c := &ProjectsLocationsAgentsValidateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18907	c.name = name
18908	c.googleclouddialogflowcxv3validateagentrequest = googleclouddialogflowcxv3validateagentrequest
18909	return c
18910}
18911
18912// Fields allows partial responses to be retrieved. See
18913// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18914// for more information.
18915func (c *ProjectsLocationsAgentsValidateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsValidateCall {
18916	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18917	return c
18918}
18919
18920// Context sets the context to be used in this call's Do method. Any
18921// pending HTTP request will be aborted if the provided context is
18922// canceled.
18923func (c *ProjectsLocationsAgentsValidateCall) Context(ctx context.Context) *ProjectsLocationsAgentsValidateCall {
18924	c.ctx_ = ctx
18925	return c
18926}
18927
18928// Header returns an http.Header that can be modified by the caller to
18929// add HTTP headers to the request.
18930func (c *ProjectsLocationsAgentsValidateCall) Header() http.Header {
18931	if c.header_ == nil {
18932		c.header_ = make(http.Header)
18933	}
18934	return c.header_
18935}
18936
18937func (c *ProjectsLocationsAgentsValidateCall) doRequest(alt string) (*http.Response, error) {
18938	reqHeaders := make(http.Header)
18939	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
18940	for k, v := range c.header_ {
18941		reqHeaders[k] = v
18942	}
18943	reqHeaders.Set("User-Agent", c.s.userAgent())
18944	var body io.Reader = nil
18945	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3validateagentrequest)
18946	if err != nil {
18947		return nil, err
18948	}
18949	reqHeaders.Set("Content-Type", "application/json")
18950	c.urlParams_.Set("alt", alt)
18951	c.urlParams_.Set("prettyPrint", "false")
18952	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}:validate")
18953	urls += "?" + c.urlParams_.Encode()
18954	req, err := http.NewRequest("POST", urls, body)
18955	if err != nil {
18956		return nil, err
18957	}
18958	req.Header = reqHeaders
18959	googleapi.Expand(req.URL, map[string]string{
18960		"name": c.name,
18961	})
18962	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18963}
18964
18965// Do executes the "dialogflow.projects.locations.agents.validate" call.
18966// Exactly one of *GoogleCloudDialogflowCxV3AgentValidationResult or
18967// error will be non-nil. Any non-2xx status code is an error. Response
18968// headers are in either
18969// *GoogleCloudDialogflowCxV3AgentValidationResult.ServerResponse.Header
18970// or (if a response was returned at all) in
18971// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
18972// whether the returned error was because http.StatusNotModified was
18973// returned.
18974func (c *ProjectsLocationsAgentsValidateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3AgentValidationResult, error) {
18975	gensupport.SetOptions(c.urlParams_, opts...)
18976	res, err := c.doRequest("json")
18977	if res != nil && res.StatusCode == http.StatusNotModified {
18978		if res.Body != nil {
18979			res.Body.Close()
18980		}
18981		return nil, &googleapi.Error{
18982			Code:   res.StatusCode,
18983			Header: res.Header,
18984		}
18985	}
18986	if err != nil {
18987		return nil, err
18988	}
18989	defer googleapi.CloseBody(res)
18990	if err := googleapi.CheckResponse(res); err != nil {
18991		return nil, err
18992	}
18993	ret := &GoogleCloudDialogflowCxV3AgentValidationResult{
18994		ServerResponse: googleapi.ServerResponse{
18995			Header:         res.Header,
18996			HTTPStatusCode: res.StatusCode,
18997		},
18998	}
18999	target := &ret
19000	if err := gensupport.DecodeResponse(target, res); err != nil {
19001		return nil, err
19002	}
19003	return ret, nil
19004	// {
19005	//   "description": "Validates the specified agent and creates or updates validation results. The agent in draft version is validated. Please call this API after the training is completed to get the complete validation results.",
19006	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}:validate",
19007	//   "httpMethod": "POST",
19008	//   "id": "dialogflow.projects.locations.agents.validate",
19009	//   "parameterOrder": [
19010	//     "name"
19011	//   ],
19012	//   "parameters": {
19013	//     "name": {
19014	//       "description": "Required. The agent to validate. Format: `projects//locations//agents/`.",
19015	//       "location": "path",
19016	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
19017	//       "required": true,
19018	//       "type": "string"
19019	//     }
19020	//   },
19021	//   "path": "v3/{+name}:validate",
19022	//   "request": {
19023	//     "$ref": "GoogleCloudDialogflowCxV3ValidateAgentRequest"
19024	//   },
19025	//   "response": {
19026	//     "$ref": "GoogleCloudDialogflowCxV3AgentValidationResult"
19027	//   },
19028	//   "scopes": [
19029	//     "https://www.googleapis.com/auth/cloud-platform",
19030	//     "https://www.googleapis.com/auth/dialogflow"
19031	//   ]
19032	// }
19033
19034}
19035
19036// method id "dialogflow.projects.locations.agents.entityTypes.create":
19037
19038type ProjectsLocationsAgentsEntityTypesCreateCall struct {
19039	s                                   *Service
19040	parent                              string
19041	googleclouddialogflowcxv3entitytype *GoogleCloudDialogflowCxV3EntityType
19042	urlParams_                          gensupport.URLParams
19043	ctx_                                context.Context
19044	header_                             http.Header
19045}
19046
19047// Create: Creates an entity type in the specified agent. Note: You
19048// should always train a flow prior to sending it queries. See the
19049// training documentation
19050// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
19051//
19052// - parent: The agent to create a entity type for. Format:
19053//   `projects//locations//agents/`.
19054func (r *ProjectsLocationsAgentsEntityTypesService) Create(parent string, googleclouddialogflowcxv3entitytype *GoogleCloudDialogflowCxV3EntityType) *ProjectsLocationsAgentsEntityTypesCreateCall {
19055	c := &ProjectsLocationsAgentsEntityTypesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19056	c.parent = parent
19057	c.googleclouddialogflowcxv3entitytype = googleclouddialogflowcxv3entitytype
19058	return c
19059}
19060
19061// LanguageCode sets the optional parameter "languageCode": The language
19062// of the following fields in `entity_type`: *
19063// `EntityType.entities.value` * `EntityType.entities.synonyms` *
19064// `EntityType.excluded_phrases.value` If not specified, the agent's
19065// default language is used. Many languages
19066// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
19067// supported. Note: languages must be enabled in the agent before they
19068// can be used.
19069func (c *ProjectsLocationsAgentsEntityTypesCreateCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsEntityTypesCreateCall {
19070	c.urlParams_.Set("languageCode", languageCode)
19071	return c
19072}
19073
19074// Fields allows partial responses to be retrieved. See
19075// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19076// for more information.
19077func (c *ProjectsLocationsAgentsEntityTypesCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEntityTypesCreateCall {
19078	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19079	return c
19080}
19081
19082// Context sets the context to be used in this call's Do method. Any
19083// pending HTTP request will be aborted if the provided context is
19084// canceled.
19085func (c *ProjectsLocationsAgentsEntityTypesCreateCall) Context(ctx context.Context) *ProjectsLocationsAgentsEntityTypesCreateCall {
19086	c.ctx_ = ctx
19087	return c
19088}
19089
19090// Header returns an http.Header that can be modified by the caller to
19091// add HTTP headers to the request.
19092func (c *ProjectsLocationsAgentsEntityTypesCreateCall) Header() http.Header {
19093	if c.header_ == nil {
19094		c.header_ = make(http.Header)
19095	}
19096	return c.header_
19097}
19098
19099func (c *ProjectsLocationsAgentsEntityTypesCreateCall) doRequest(alt string) (*http.Response, error) {
19100	reqHeaders := make(http.Header)
19101	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
19102	for k, v := range c.header_ {
19103		reqHeaders[k] = v
19104	}
19105	reqHeaders.Set("User-Agent", c.s.userAgent())
19106	var body io.Reader = nil
19107	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3entitytype)
19108	if err != nil {
19109		return nil, err
19110	}
19111	reqHeaders.Set("Content-Type", "application/json")
19112	c.urlParams_.Set("alt", alt)
19113	c.urlParams_.Set("prettyPrint", "false")
19114	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/entityTypes")
19115	urls += "?" + c.urlParams_.Encode()
19116	req, err := http.NewRequest("POST", urls, body)
19117	if err != nil {
19118		return nil, err
19119	}
19120	req.Header = reqHeaders
19121	googleapi.Expand(req.URL, map[string]string{
19122		"parent": c.parent,
19123	})
19124	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19125}
19126
19127// Do executes the "dialogflow.projects.locations.agents.entityTypes.create" call.
19128// Exactly one of *GoogleCloudDialogflowCxV3EntityType or error will be
19129// non-nil. Any non-2xx status code is an error. Response headers are in
19130// either *GoogleCloudDialogflowCxV3EntityType.ServerResponse.Header or
19131// (if a response was returned at all) in
19132// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
19133// whether the returned error was because http.StatusNotModified was
19134// returned.
19135func (c *ProjectsLocationsAgentsEntityTypesCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3EntityType, error) {
19136	gensupport.SetOptions(c.urlParams_, opts...)
19137	res, err := c.doRequest("json")
19138	if res != nil && res.StatusCode == http.StatusNotModified {
19139		if res.Body != nil {
19140			res.Body.Close()
19141		}
19142		return nil, &googleapi.Error{
19143			Code:   res.StatusCode,
19144			Header: res.Header,
19145		}
19146	}
19147	if err != nil {
19148		return nil, err
19149	}
19150	defer googleapi.CloseBody(res)
19151	if err := googleapi.CheckResponse(res); err != nil {
19152		return nil, err
19153	}
19154	ret := &GoogleCloudDialogflowCxV3EntityType{
19155		ServerResponse: googleapi.ServerResponse{
19156			Header:         res.Header,
19157			HTTPStatusCode: res.StatusCode,
19158		},
19159	}
19160	target := &ret
19161	if err := gensupport.DecodeResponse(target, res); err != nil {
19162		return nil, err
19163	}
19164	return ret, nil
19165	// {
19166	//   "description": "Creates an entity type in the specified agent. Note: You should always train a flow prior to sending it queries. See the [training documentation](https://cloud.google.com/dialogflow/cx/docs/concept/training).",
19167	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/entityTypes",
19168	//   "httpMethod": "POST",
19169	//   "id": "dialogflow.projects.locations.agents.entityTypes.create",
19170	//   "parameterOrder": [
19171	//     "parent"
19172	//   ],
19173	//   "parameters": {
19174	//     "languageCode": {
19175	//       "description": "The language of the following fields in `entity_type`: * `EntityType.entities.value` * `EntityType.entities.synonyms` * `EntityType.excluded_phrases.value` If not specified, the agent's default language is used. [Many languages](https://cloud.google.com/dialogflow/cx/docs/reference/language) are supported. Note: languages must be enabled in the agent before they can be used.",
19176	//       "location": "query",
19177	//       "type": "string"
19178	//     },
19179	//     "parent": {
19180	//       "description": "Required. The agent to create a entity type for. Format: `projects//locations//agents/`.",
19181	//       "location": "path",
19182	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
19183	//       "required": true,
19184	//       "type": "string"
19185	//     }
19186	//   },
19187	//   "path": "v3/{+parent}/entityTypes",
19188	//   "request": {
19189	//     "$ref": "GoogleCloudDialogflowCxV3EntityType"
19190	//   },
19191	//   "response": {
19192	//     "$ref": "GoogleCloudDialogflowCxV3EntityType"
19193	//   },
19194	//   "scopes": [
19195	//     "https://www.googleapis.com/auth/cloud-platform",
19196	//     "https://www.googleapis.com/auth/dialogflow"
19197	//   ]
19198	// }
19199
19200}
19201
19202// method id "dialogflow.projects.locations.agents.entityTypes.delete":
19203
19204type ProjectsLocationsAgentsEntityTypesDeleteCall struct {
19205	s          *Service
19206	name       string
19207	urlParams_ gensupport.URLParams
19208	ctx_       context.Context
19209	header_    http.Header
19210}
19211
19212// Delete: Deletes the specified entity type. Note: You should always
19213// train a flow prior to sending it queries. See the training
19214// documentation
19215// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
19216//
19217// - name: The name of the entity type to delete. Format:
19218//   `projects//locations//agents//entityTypes/`.
19219func (r *ProjectsLocationsAgentsEntityTypesService) Delete(name string) *ProjectsLocationsAgentsEntityTypesDeleteCall {
19220	c := &ProjectsLocationsAgentsEntityTypesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19221	c.name = name
19222	return c
19223}
19224
19225// Force sets the optional parameter "force": This field has no effect
19226// for entity type not being used. For entity types that are used by
19227// intents or pages: * If `force` is set to false, an error will be
19228// returned with message indicating the referencing resources. * If
19229// `force` is set to true, Dialogflow will remove the entity type, as
19230// well as any references to the entity type (i.e. Page parameter of the
19231// entity type will be changed to '@sys.any' and intent parameter of the
19232// entity type will be removed).
19233func (c *ProjectsLocationsAgentsEntityTypesDeleteCall) Force(force bool) *ProjectsLocationsAgentsEntityTypesDeleteCall {
19234	c.urlParams_.Set("force", fmt.Sprint(force))
19235	return c
19236}
19237
19238// Fields allows partial responses to be retrieved. See
19239// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19240// for more information.
19241func (c *ProjectsLocationsAgentsEntityTypesDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEntityTypesDeleteCall {
19242	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19243	return c
19244}
19245
19246// Context sets the context to be used in this call's Do method. Any
19247// pending HTTP request will be aborted if the provided context is
19248// canceled.
19249func (c *ProjectsLocationsAgentsEntityTypesDeleteCall) Context(ctx context.Context) *ProjectsLocationsAgentsEntityTypesDeleteCall {
19250	c.ctx_ = ctx
19251	return c
19252}
19253
19254// Header returns an http.Header that can be modified by the caller to
19255// add HTTP headers to the request.
19256func (c *ProjectsLocationsAgentsEntityTypesDeleteCall) Header() http.Header {
19257	if c.header_ == nil {
19258		c.header_ = make(http.Header)
19259	}
19260	return c.header_
19261}
19262
19263func (c *ProjectsLocationsAgentsEntityTypesDeleteCall) doRequest(alt string) (*http.Response, error) {
19264	reqHeaders := make(http.Header)
19265	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
19266	for k, v := range c.header_ {
19267		reqHeaders[k] = v
19268	}
19269	reqHeaders.Set("User-Agent", c.s.userAgent())
19270	var body io.Reader = nil
19271	c.urlParams_.Set("alt", alt)
19272	c.urlParams_.Set("prettyPrint", "false")
19273	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
19274	urls += "?" + c.urlParams_.Encode()
19275	req, err := http.NewRequest("DELETE", urls, body)
19276	if err != nil {
19277		return nil, err
19278	}
19279	req.Header = reqHeaders
19280	googleapi.Expand(req.URL, map[string]string{
19281		"name": c.name,
19282	})
19283	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19284}
19285
19286// Do executes the "dialogflow.projects.locations.agents.entityTypes.delete" call.
19287// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
19288// non-2xx status code is an error. Response headers are in either
19289// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
19290// returned at all) in error.(*googleapi.Error).Header. Use
19291// googleapi.IsNotModified to check whether the returned error was
19292// because http.StatusNotModified was returned.
19293func (c *ProjectsLocationsAgentsEntityTypesDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
19294	gensupport.SetOptions(c.urlParams_, opts...)
19295	res, err := c.doRequest("json")
19296	if res != nil && res.StatusCode == http.StatusNotModified {
19297		if res.Body != nil {
19298			res.Body.Close()
19299		}
19300		return nil, &googleapi.Error{
19301			Code:   res.StatusCode,
19302			Header: res.Header,
19303		}
19304	}
19305	if err != nil {
19306		return nil, err
19307	}
19308	defer googleapi.CloseBody(res)
19309	if err := googleapi.CheckResponse(res); err != nil {
19310		return nil, err
19311	}
19312	ret := &GoogleProtobufEmpty{
19313		ServerResponse: googleapi.ServerResponse{
19314			Header:         res.Header,
19315			HTTPStatusCode: res.StatusCode,
19316		},
19317	}
19318	target := &ret
19319	if err := gensupport.DecodeResponse(target, res); err != nil {
19320		return nil, err
19321	}
19322	return ret, nil
19323	// {
19324	//   "description": "Deletes the specified entity type. Note: You should always train a flow prior to sending it queries. See the [training documentation](https://cloud.google.com/dialogflow/cx/docs/concept/training).",
19325	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/entityTypes/{entityTypesId}",
19326	//   "httpMethod": "DELETE",
19327	//   "id": "dialogflow.projects.locations.agents.entityTypes.delete",
19328	//   "parameterOrder": [
19329	//     "name"
19330	//   ],
19331	//   "parameters": {
19332	//     "force": {
19333	//       "description": "This field has no effect for entity type not being used. For entity types that are used by intents or pages: * If `force` is set to false, an error will be returned with message indicating the referencing resources. * If `force` is set to true, Dialogflow will remove the entity type, as well as any references to the entity type (i.e. Page parameter of the entity type will be changed to '@sys.any' and intent parameter of the entity type will be removed).",
19334	//       "location": "query",
19335	//       "type": "boolean"
19336	//     },
19337	//     "name": {
19338	//       "description": "Required. The name of the entity type to delete. Format: `projects//locations//agents//entityTypes/`.",
19339	//       "location": "path",
19340	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/entityTypes/[^/]+$",
19341	//       "required": true,
19342	//       "type": "string"
19343	//     }
19344	//   },
19345	//   "path": "v3/{+name}",
19346	//   "response": {
19347	//     "$ref": "GoogleProtobufEmpty"
19348	//   },
19349	//   "scopes": [
19350	//     "https://www.googleapis.com/auth/cloud-platform",
19351	//     "https://www.googleapis.com/auth/dialogflow"
19352	//   ]
19353	// }
19354
19355}
19356
19357// method id "dialogflow.projects.locations.agents.entityTypes.get":
19358
19359type ProjectsLocationsAgentsEntityTypesGetCall struct {
19360	s            *Service
19361	name         string
19362	urlParams_   gensupport.URLParams
19363	ifNoneMatch_ string
19364	ctx_         context.Context
19365	header_      http.Header
19366}
19367
19368// Get: Retrieves the specified entity type.
19369//
19370// - name: The name of the entity type. Format:
19371//   `projects//locations//agents//entityTypes/`.
19372func (r *ProjectsLocationsAgentsEntityTypesService) Get(name string) *ProjectsLocationsAgentsEntityTypesGetCall {
19373	c := &ProjectsLocationsAgentsEntityTypesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19374	c.name = name
19375	return c
19376}
19377
19378// LanguageCode sets the optional parameter "languageCode": The language
19379// to retrieve the entity type for. The following fields are language
19380// dependent: * `EntityType.entities.value` *
19381// `EntityType.entities.synonyms` * `EntityType.excluded_phrases.value`
19382// If not specified, the agent's default language is used. Many
19383// languages
19384// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
19385// supported. Note: languages must be enabled in the agent before they
19386// can be used.
19387func (c *ProjectsLocationsAgentsEntityTypesGetCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsEntityTypesGetCall {
19388	c.urlParams_.Set("languageCode", languageCode)
19389	return c
19390}
19391
19392// Fields allows partial responses to be retrieved. See
19393// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19394// for more information.
19395func (c *ProjectsLocationsAgentsEntityTypesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEntityTypesGetCall {
19396	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19397	return c
19398}
19399
19400// IfNoneMatch sets the optional parameter which makes the operation
19401// fail if the object's ETag matches the given value. This is useful for
19402// getting updates only after the object has changed since the last
19403// request. Use googleapi.IsNotModified to check whether the response
19404// error from Do is the result of In-None-Match.
19405func (c *ProjectsLocationsAgentsEntityTypesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsEntityTypesGetCall {
19406	c.ifNoneMatch_ = entityTag
19407	return c
19408}
19409
19410// Context sets the context to be used in this call's Do method. Any
19411// pending HTTP request will be aborted if the provided context is
19412// canceled.
19413func (c *ProjectsLocationsAgentsEntityTypesGetCall) Context(ctx context.Context) *ProjectsLocationsAgentsEntityTypesGetCall {
19414	c.ctx_ = ctx
19415	return c
19416}
19417
19418// Header returns an http.Header that can be modified by the caller to
19419// add HTTP headers to the request.
19420func (c *ProjectsLocationsAgentsEntityTypesGetCall) Header() http.Header {
19421	if c.header_ == nil {
19422		c.header_ = make(http.Header)
19423	}
19424	return c.header_
19425}
19426
19427func (c *ProjectsLocationsAgentsEntityTypesGetCall) doRequest(alt string) (*http.Response, error) {
19428	reqHeaders := make(http.Header)
19429	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
19430	for k, v := range c.header_ {
19431		reqHeaders[k] = v
19432	}
19433	reqHeaders.Set("User-Agent", c.s.userAgent())
19434	if c.ifNoneMatch_ != "" {
19435		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
19436	}
19437	var body io.Reader = nil
19438	c.urlParams_.Set("alt", alt)
19439	c.urlParams_.Set("prettyPrint", "false")
19440	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
19441	urls += "?" + c.urlParams_.Encode()
19442	req, err := http.NewRequest("GET", urls, body)
19443	if err != nil {
19444		return nil, err
19445	}
19446	req.Header = reqHeaders
19447	googleapi.Expand(req.URL, map[string]string{
19448		"name": c.name,
19449	})
19450	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19451}
19452
19453// Do executes the "dialogflow.projects.locations.agents.entityTypes.get" call.
19454// Exactly one of *GoogleCloudDialogflowCxV3EntityType or error will be
19455// non-nil. Any non-2xx status code is an error. Response headers are in
19456// either *GoogleCloudDialogflowCxV3EntityType.ServerResponse.Header or
19457// (if a response was returned at all) in
19458// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
19459// whether the returned error was because http.StatusNotModified was
19460// returned.
19461func (c *ProjectsLocationsAgentsEntityTypesGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3EntityType, error) {
19462	gensupport.SetOptions(c.urlParams_, opts...)
19463	res, err := c.doRequest("json")
19464	if res != nil && res.StatusCode == http.StatusNotModified {
19465		if res.Body != nil {
19466			res.Body.Close()
19467		}
19468		return nil, &googleapi.Error{
19469			Code:   res.StatusCode,
19470			Header: res.Header,
19471		}
19472	}
19473	if err != nil {
19474		return nil, err
19475	}
19476	defer googleapi.CloseBody(res)
19477	if err := googleapi.CheckResponse(res); err != nil {
19478		return nil, err
19479	}
19480	ret := &GoogleCloudDialogflowCxV3EntityType{
19481		ServerResponse: googleapi.ServerResponse{
19482			Header:         res.Header,
19483			HTTPStatusCode: res.StatusCode,
19484		},
19485	}
19486	target := &ret
19487	if err := gensupport.DecodeResponse(target, res); err != nil {
19488		return nil, err
19489	}
19490	return ret, nil
19491	// {
19492	//   "description": "Retrieves the specified entity type.",
19493	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/entityTypes/{entityTypesId}",
19494	//   "httpMethod": "GET",
19495	//   "id": "dialogflow.projects.locations.agents.entityTypes.get",
19496	//   "parameterOrder": [
19497	//     "name"
19498	//   ],
19499	//   "parameters": {
19500	//     "languageCode": {
19501	//       "description": "The language to retrieve the entity type for. The following fields are language dependent: * `EntityType.entities.value` * `EntityType.entities.synonyms` * `EntityType.excluded_phrases.value` If not specified, the agent's default language is used. [Many languages](https://cloud.google.com/dialogflow/cx/docs/reference/language) are supported. Note: languages must be enabled in the agent before they can be used.",
19502	//       "location": "query",
19503	//       "type": "string"
19504	//     },
19505	//     "name": {
19506	//       "description": "Required. The name of the entity type. Format: `projects//locations//agents//entityTypes/`.",
19507	//       "location": "path",
19508	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/entityTypes/[^/]+$",
19509	//       "required": true,
19510	//       "type": "string"
19511	//     }
19512	//   },
19513	//   "path": "v3/{+name}",
19514	//   "response": {
19515	//     "$ref": "GoogleCloudDialogflowCxV3EntityType"
19516	//   },
19517	//   "scopes": [
19518	//     "https://www.googleapis.com/auth/cloud-platform",
19519	//     "https://www.googleapis.com/auth/dialogflow"
19520	//   ]
19521	// }
19522
19523}
19524
19525// method id "dialogflow.projects.locations.agents.entityTypes.list":
19526
19527type ProjectsLocationsAgentsEntityTypesListCall struct {
19528	s            *Service
19529	parent       string
19530	urlParams_   gensupport.URLParams
19531	ifNoneMatch_ string
19532	ctx_         context.Context
19533	header_      http.Header
19534}
19535
19536// List: Returns the list of all entity types in the specified agent.
19537//
19538// - parent: The agent to list all entity types for. Format:
19539//   `projects//locations//agents/`.
19540func (r *ProjectsLocationsAgentsEntityTypesService) List(parent string) *ProjectsLocationsAgentsEntityTypesListCall {
19541	c := &ProjectsLocationsAgentsEntityTypesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19542	c.parent = parent
19543	return c
19544}
19545
19546// LanguageCode sets the optional parameter "languageCode": The language
19547// to list entity types for. The following fields are language
19548// dependent: * `EntityType.entities.value` *
19549// `EntityType.entities.synonyms` * `EntityType.excluded_phrases.value`
19550// If not specified, the agent's default language is used. Many
19551// languages
19552// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
19553// supported. Note: languages must be enabled in the agent before they
19554// can be used.
19555func (c *ProjectsLocationsAgentsEntityTypesListCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsEntityTypesListCall {
19556	c.urlParams_.Set("languageCode", languageCode)
19557	return c
19558}
19559
19560// PageSize sets the optional parameter "pageSize": The maximum number
19561// of items to return in a single page. By default 100 and at most 1000.
19562func (c *ProjectsLocationsAgentsEntityTypesListCall) PageSize(pageSize int64) *ProjectsLocationsAgentsEntityTypesListCall {
19563	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
19564	return c
19565}
19566
19567// PageToken sets the optional parameter "pageToken": The
19568// next_page_token value returned from a previous list request.
19569func (c *ProjectsLocationsAgentsEntityTypesListCall) PageToken(pageToken string) *ProjectsLocationsAgentsEntityTypesListCall {
19570	c.urlParams_.Set("pageToken", pageToken)
19571	return c
19572}
19573
19574// Fields allows partial responses to be retrieved. See
19575// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19576// for more information.
19577func (c *ProjectsLocationsAgentsEntityTypesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEntityTypesListCall {
19578	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19579	return c
19580}
19581
19582// IfNoneMatch sets the optional parameter which makes the operation
19583// fail if the object's ETag matches the given value. This is useful for
19584// getting updates only after the object has changed since the last
19585// request. Use googleapi.IsNotModified to check whether the response
19586// error from Do is the result of In-None-Match.
19587func (c *ProjectsLocationsAgentsEntityTypesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsEntityTypesListCall {
19588	c.ifNoneMatch_ = entityTag
19589	return c
19590}
19591
19592// Context sets the context to be used in this call's Do method. Any
19593// pending HTTP request will be aborted if the provided context is
19594// canceled.
19595func (c *ProjectsLocationsAgentsEntityTypesListCall) Context(ctx context.Context) *ProjectsLocationsAgentsEntityTypesListCall {
19596	c.ctx_ = ctx
19597	return c
19598}
19599
19600// Header returns an http.Header that can be modified by the caller to
19601// add HTTP headers to the request.
19602func (c *ProjectsLocationsAgentsEntityTypesListCall) Header() http.Header {
19603	if c.header_ == nil {
19604		c.header_ = make(http.Header)
19605	}
19606	return c.header_
19607}
19608
19609func (c *ProjectsLocationsAgentsEntityTypesListCall) doRequest(alt string) (*http.Response, error) {
19610	reqHeaders := make(http.Header)
19611	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
19612	for k, v := range c.header_ {
19613		reqHeaders[k] = v
19614	}
19615	reqHeaders.Set("User-Agent", c.s.userAgent())
19616	if c.ifNoneMatch_ != "" {
19617		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
19618	}
19619	var body io.Reader = nil
19620	c.urlParams_.Set("alt", alt)
19621	c.urlParams_.Set("prettyPrint", "false")
19622	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/entityTypes")
19623	urls += "?" + c.urlParams_.Encode()
19624	req, err := http.NewRequest("GET", urls, body)
19625	if err != nil {
19626		return nil, err
19627	}
19628	req.Header = reqHeaders
19629	googleapi.Expand(req.URL, map[string]string{
19630		"parent": c.parent,
19631	})
19632	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19633}
19634
19635// Do executes the "dialogflow.projects.locations.agents.entityTypes.list" call.
19636// Exactly one of *GoogleCloudDialogflowCxV3ListEntityTypesResponse or
19637// error will be non-nil. Any non-2xx status code is an error. Response
19638// headers are in either
19639// *GoogleCloudDialogflowCxV3ListEntityTypesResponse.ServerResponse.Heade
19640// r or (if a response was returned at all) in
19641// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
19642// whether the returned error was because http.StatusNotModified was
19643// returned.
19644func (c *ProjectsLocationsAgentsEntityTypesListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3ListEntityTypesResponse, error) {
19645	gensupport.SetOptions(c.urlParams_, opts...)
19646	res, err := c.doRequest("json")
19647	if res != nil && res.StatusCode == http.StatusNotModified {
19648		if res.Body != nil {
19649			res.Body.Close()
19650		}
19651		return nil, &googleapi.Error{
19652			Code:   res.StatusCode,
19653			Header: res.Header,
19654		}
19655	}
19656	if err != nil {
19657		return nil, err
19658	}
19659	defer googleapi.CloseBody(res)
19660	if err := googleapi.CheckResponse(res); err != nil {
19661		return nil, err
19662	}
19663	ret := &GoogleCloudDialogflowCxV3ListEntityTypesResponse{
19664		ServerResponse: googleapi.ServerResponse{
19665			Header:         res.Header,
19666			HTTPStatusCode: res.StatusCode,
19667		},
19668	}
19669	target := &ret
19670	if err := gensupport.DecodeResponse(target, res); err != nil {
19671		return nil, err
19672	}
19673	return ret, nil
19674	// {
19675	//   "description": "Returns the list of all entity types in the specified agent.",
19676	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/entityTypes",
19677	//   "httpMethod": "GET",
19678	//   "id": "dialogflow.projects.locations.agents.entityTypes.list",
19679	//   "parameterOrder": [
19680	//     "parent"
19681	//   ],
19682	//   "parameters": {
19683	//     "languageCode": {
19684	//       "description": "The language to list entity types for. The following fields are language dependent: * `EntityType.entities.value` * `EntityType.entities.synonyms` * `EntityType.excluded_phrases.value` If not specified, the agent's default language is used. [Many languages](https://cloud.google.com/dialogflow/cx/docs/reference/language) are supported. Note: languages must be enabled in the agent before they can be used.",
19685	//       "location": "query",
19686	//       "type": "string"
19687	//     },
19688	//     "pageSize": {
19689	//       "description": "The maximum number of items to return in a single page. By default 100 and at most 1000.",
19690	//       "format": "int32",
19691	//       "location": "query",
19692	//       "type": "integer"
19693	//     },
19694	//     "pageToken": {
19695	//       "description": "The next_page_token value returned from a previous list request.",
19696	//       "location": "query",
19697	//       "type": "string"
19698	//     },
19699	//     "parent": {
19700	//       "description": "Required. The agent to list all entity types for. Format: `projects//locations//agents/`.",
19701	//       "location": "path",
19702	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
19703	//       "required": true,
19704	//       "type": "string"
19705	//     }
19706	//   },
19707	//   "path": "v3/{+parent}/entityTypes",
19708	//   "response": {
19709	//     "$ref": "GoogleCloudDialogflowCxV3ListEntityTypesResponse"
19710	//   },
19711	//   "scopes": [
19712	//     "https://www.googleapis.com/auth/cloud-platform",
19713	//     "https://www.googleapis.com/auth/dialogflow"
19714	//   ]
19715	// }
19716
19717}
19718
19719// Pages invokes f for each page of results.
19720// A non-nil error returned from f will halt the iteration.
19721// The provided context supersedes any context provided to the Context method.
19722func (c *ProjectsLocationsAgentsEntityTypesListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3ListEntityTypesResponse) error) error {
19723	c.ctx_ = ctx
19724	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
19725	for {
19726		x, err := c.Do()
19727		if err != nil {
19728			return err
19729		}
19730		if err := f(x); err != nil {
19731			return err
19732		}
19733		if x.NextPageToken == "" {
19734			return nil
19735		}
19736		c.PageToken(x.NextPageToken)
19737	}
19738}
19739
19740// method id "dialogflow.projects.locations.agents.entityTypes.patch":
19741
19742type ProjectsLocationsAgentsEntityTypesPatchCall struct {
19743	s                                   *Service
19744	nameid                              string
19745	googleclouddialogflowcxv3entitytype *GoogleCloudDialogflowCxV3EntityType
19746	urlParams_                          gensupport.URLParams
19747	ctx_                                context.Context
19748	header_                             http.Header
19749}
19750
19751// Patch: Updates the specified entity type. Note: You should always
19752// train a flow prior to sending it queries. See the training
19753// documentation
19754// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
19755//
19756// - name: The unique identifier of the entity type. Required for
19757//   EntityTypes.UpdateEntityType. Format:
19758//   `projects//locations//agents//entityTypes/`.
19759func (r *ProjectsLocationsAgentsEntityTypesService) Patch(nameid string, googleclouddialogflowcxv3entitytype *GoogleCloudDialogflowCxV3EntityType) *ProjectsLocationsAgentsEntityTypesPatchCall {
19760	c := &ProjectsLocationsAgentsEntityTypesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19761	c.nameid = nameid
19762	c.googleclouddialogflowcxv3entitytype = googleclouddialogflowcxv3entitytype
19763	return c
19764}
19765
19766// LanguageCode sets the optional parameter "languageCode": The language
19767// of the following fields in `entity_type`: *
19768// `EntityType.entities.value` * `EntityType.entities.synonyms` *
19769// `EntityType.excluded_phrases.value` If not specified, the agent's
19770// default language is used. Many languages
19771// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
19772// supported. Note: languages must be enabled in the agent before they
19773// can be used.
19774func (c *ProjectsLocationsAgentsEntityTypesPatchCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsEntityTypesPatchCall {
19775	c.urlParams_.Set("languageCode", languageCode)
19776	return c
19777}
19778
19779// UpdateMask sets the optional parameter "updateMask": The mask to
19780// control which fields get updated.
19781func (c *ProjectsLocationsAgentsEntityTypesPatchCall) UpdateMask(updateMask string) *ProjectsLocationsAgentsEntityTypesPatchCall {
19782	c.urlParams_.Set("updateMask", updateMask)
19783	return c
19784}
19785
19786// Fields allows partial responses to be retrieved. See
19787// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19788// for more information.
19789func (c *ProjectsLocationsAgentsEntityTypesPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEntityTypesPatchCall {
19790	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19791	return c
19792}
19793
19794// Context sets the context to be used in this call's Do method. Any
19795// pending HTTP request will be aborted if the provided context is
19796// canceled.
19797func (c *ProjectsLocationsAgentsEntityTypesPatchCall) Context(ctx context.Context) *ProjectsLocationsAgentsEntityTypesPatchCall {
19798	c.ctx_ = ctx
19799	return c
19800}
19801
19802// Header returns an http.Header that can be modified by the caller to
19803// add HTTP headers to the request.
19804func (c *ProjectsLocationsAgentsEntityTypesPatchCall) Header() http.Header {
19805	if c.header_ == nil {
19806		c.header_ = make(http.Header)
19807	}
19808	return c.header_
19809}
19810
19811func (c *ProjectsLocationsAgentsEntityTypesPatchCall) doRequest(alt string) (*http.Response, error) {
19812	reqHeaders := make(http.Header)
19813	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
19814	for k, v := range c.header_ {
19815		reqHeaders[k] = v
19816	}
19817	reqHeaders.Set("User-Agent", c.s.userAgent())
19818	var body io.Reader = nil
19819	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3entitytype)
19820	if err != nil {
19821		return nil, err
19822	}
19823	reqHeaders.Set("Content-Type", "application/json")
19824	c.urlParams_.Set("alt", alt)
19825	c.urlParams_.Set("prettyPrint", "false")
19826	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
19827	urls += "?" + c.urlParams_.Encode()
19828	req, err := http.NewRequest("PATCH", urls, body)
19829	if err != nil {
19830		return nil, err
19831	}
19832	req.Header = reqHeaders
19833	googleapi.Expand(req.URL, map[string]string{
19834		"name": c.nameid,
19835	})
19836	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19837}
19838
19839// Do executes the "dialogflow.projects.locations.agents.entityTypes.patch" call.
19840// Exactly one of *GoogleCloudDialogflowCxV3EntityType or error will be
19841// non-nil. Any non-2xx status code is an error. Response headers are in
19842// either *GoogleCloudDialogflowCxV3EntityType.ServerResponse.Header or
19843// (if a response was returned at all) in
19844// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
19845// whether the returned error was because http.StatusNotModified was
19846// returned.
19847func (c *ProjectsLocationsAgentsEntityTypesPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3EntityType, error) {
19848	gensupport.SetOptions(c.urlParams_, opts...)
19849	res, err := c.doRequest("json")
19850	if res != nil && res.StatusCode == http.StatusNotModified {
19851		if res.Body != nil {
19852			res.Body.Close()
19853		}
19854		return nil, &googleapi.Error{
19855			Code:   res.StatusCode,
19856			Header: res.Header,
19857		}
19858	}
19859	if err != nil {
19860		return nil, err
19861	}
19862	defer googleapi.CloseBody(res)
19863	if err := googleapi.CheckResponse(res); err != nil {
19864		return nil, err
19865	}
19866	ret := &GoogleCloudDialogflowCxV3EntityType{
19867		ServerResponse: googleapi.ServerResponse{
19868			Header:         res.Header,
19869			HTTPStatusCode: res.StatusCode,
19870		},
19871	}
19872	target := &ret
19873	if err := gensupport.DecodeResponse(target, res); err != nil {
19874		return nil, err
19875	}
19876	return ret, nil
19877	// {
19878	//   "description": "Updates the specified entity type. Note: You should always train a flow prior to sending it queries. See the [training documentation](https://cloud.google.com/dialogflow/cx/docs/concept/training).",
19879	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/entityTypes/{entityTypesId}",
19880	//   "httpMethod": "PATCH",
19881	//   "id": "dialogflow.projects.locations.agents.entityTypes.patch",
19882	//   "parameterOrder": [
19883	//     "name"
19884	//   ],
19885	//   "parameters": {
19886	//     "languageCode": {
19887	//       "description": "The language of the following fields in `entity_type`: * `EntityType.entities.value` * `EntityType.entities.synonyms` * `EntityType.excluded_phrases.value` If not specified, the agent's default language is used. [Many languages](https://cloud.google.com/dialogflow/cx/docs/reference/language) are supported. Note: languages must be enabled in the agent before they can be used.",
19888	//       "location": "query",
19889	//       "type": "string"
19890	//     },
19891	//     "name": {
19892	//       "description": "The unique identifier of the entity type. Required for EntityTypes.UpdateEntityType. Format: `projects//locations//agents//entityTypes/`.",
19893	//       "location": "path",
19894	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/entityTypes/[^/]+$",
19895	//       "required": true,
19896	//       "type": "string"
19897	//     },
19898	//     "updateMask": {
19899	//       "description": "The mask to control which fields get updated.",
19900	//       "format": "google-fieldmask",
19901	//       "location": "query",
19902	//       "type": "string"
19903	//     }
19904	//   },
19905	//   "path": "v3/{+name}",
19906	//   "request": {
19907	//     "$ref": "GoogleCloudDialogflowCxV3EntityType"
19908	//   },
19909	//   "response": {
19910	//     "$ref": "GoogleCloudDialogflowCxV3EntityType"
19911	//   },
19912	//   "scopes": [
19913	//     "https://www.googleapis.com/auth/cloud-platform",
19914	//     "https://www.googleapis.com/auth/dialogflow"
19915	//   ]
19916	// }
19917
19918}
19919
19920// method id "dialogflow.projects.locations.agents.environments.create":
19921
19922type ProjectsLocationsAgentsEnvironmentsCreateCall struct {
19923	s                                    *Service
19924	parent                               string
19925	googleclouddialogflowcxv3environment *GoogleCloudDialogflowCxV3Environment
19926	urlParams_                           gensupport.URLParams
19927	ctx_                                 context.Context
19928	header_                              http.Header
19929}
19930
19931// Create: Creates an Environment in the specified Agent.
19932//
19933// - parent: The Agent to create an Environment for. Format:
19934//   `projects//locations//agents/`.
19935func (r *ProjectsLocationsAgentsEnvironmentsService) Create(parent string, googleclouddialogflowcxv3environment *GoogleCloudDialogflowCxV3Environment) *ProjectsLocationsAgentsEnvironmentsCreateCall {
19936	c := &ProjectsLocationsAgentsEnvironmentsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19937	c.parent = parent
19938	c.googleclouddialogflowcxv3environment = googleclouddialogflowcxv3environment
19939	return c
19940}
19941
19942// Fields allows partial responses to be retrieved. See
19943// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19944// for more information.
19945func (c *ProjectsLocationsAgentsEnvironmentsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsCreateCall {
19946	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19947	return c
19948}
19949
19950// Context sets the context to be used in this call's Do method. Any
19951// pending HTTP request will be aborted if the provided context is
19952// canceled.
19953func (c *ProjectsLocationsAgentsEnvironmentsCreateCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsCreateCall {
19954	c.ctx_ = ctx
19955	return c
19956}
19957
19958// Header returns an http.Header that can be modified by the caller to
19959// add HTTP headers to the request.
19960func (c *ProjectsLocationsAgentsEnvironmentsCreateCall) Header() http.Header {
19961	if c.header_ == nil {
19962		c.header_ = make(http.Header)
19963	}
19964	return c.header_
19965}
19966
19967func (c *ProjectsLocationsAgentsEnvironmentsCreateCall) doRequest(alt string) (*http.Response, error) {
19968	reqHeaders := make(http.Header)
19969	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
19970	for k, v := range c.header_ {
19971		reqHeaders[k] = v
19972	}
19973	reqHeaders.Set("User-Agent", c.s.userAgent())
19974	var body io.Reader = nil
19975	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3environment)
19976	if err != nil {
19977		return nil, err
19978	}
19979	reqHeaders.Set("Content-Type", "application/json")
19980	c.urlParams_.Set("alt", alt)
19981	c.urlParams_.Set("prettyPrint", "false")
19982	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/environments")
19983	urls += "?" + c.urlParams_.Encode()
19984	req, err := http.NewRequest("POST", urls, body)
19985	if err != nil {
19986		return nil, err
19987	}
19988	req.Header = reqHeaders
19989	googleapi.Expand(req.URL, map[string]string{
19990		"parent": c.parent,
19991	})
19992	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19993}
19994
19995// Do executes the "dialogflow.projects.locations.agents.environments.create" call.
19996// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
19997// Any non-2xx status code is an error. Response headers are in either
19998// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
19999// was returned at all) in error.(*googleapi.Error).Header. Use
20000// googleapi.IsNotModified to check whether the returned error was
20001// because http.StatusNotModified was returned.
20002func (c *ProjectsLocationsAgentsEnvironmentsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
20003	gensupport.SetOptions(c.urlParams_, opts...)
20004	res, err := c.doRequest("json")
20005	if res != nil && res.StatusCode == http.StatusNotModified {
20006		if res.Body != nil {
20007			res.Body.Close()
20008		}
20009		return nil, &googleapi.Error{
20010			Code:   res.StatusCode,
20011			Header: res.Header,
20012		}
20013	}
20014	if err != nil {
20015		return nil, err
20016	}
20017	defer googleapi.CloseBody(res)
20018	if err := googleapi.CheckResponse(res); err != nil {
20019		return nil, err
20020	}
20021	ret := &GoogleLongrunningOperation{
20022		ServerResponse: googleapi.ServerResponse{
20023			Header:         res.Header,
20024			HTTPStatusCode: res.StatusCode,
20025		},
20026	}
20027	target := &ret
20028	if err := gensupport.DecodeResponse(target, res); err != nil {
20029		return nil, err
20030	}
20031	return ret, nil
20032	// {
20033	//   "description": "Creates an Environment in the specified Agent.",
20034	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments",
20035	//   "httpMethod": "POST",
20036	//   "id": "dialogflow.projects.locations.agents.environments.create",
20037	//   "parameterOrder": [
20038	//     "parent"
20039	//   ],
20040	//   "parameters": {
20041	//     "parent": {
20042	//       "description": "Required. The Agent to create an Environment for. Format: `projects//locations//agents/`.",
20043	//       "location": "path",
20044	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
20045	//       "required": true,
20046	//       "type": "string"
20047	//     }
20048	//   },
20049	//   "path": "v3/{+parent}/environments",
20050	//   "request": {
20051	//     "$ref": "GoogleCloudDialogflowCxV3Environment"
20052	//   },
20053	//   "response": {
20054	//     "$ref": "GoogleLongrunningOperation"
20055	//   },
20056	//   "scopes": [
20057	//     "https://www.googleapis.com/auth/cloud-platform",
20058	//     "https://www.googleapis.com/auth/dialogflow"
20059	//   ]
20060	// }
20061
20062}
20063
20064// method id "dialogflow.projects.locations.agents.environments.delete":
20065
20066type ProjectsLocationsAgentsEnvironmentsDeleteCall struct {
20067	s          *Service
20068	name       string
20069	urlParams_ gensupport.URLParams
20070	ctx_       context.Context
20071	header_    http.Header
20072}
20073
20074// Delete: Deletes the specified Environment.
20075//
20076// - name: The name of the Environment to delete. Format:
20077//   `projects//locations//agents//environments/`.
20078func (r *ProjectsLocationsAgentsEnvironmentsService) Delete(name string) *ProjectsLocationsAgentsEnvironmentsDeleteCall {
20079	c := &ProjectsLocationsAgentsEnvironmentsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20080	c.name = name
20081	return c
20082}
20083
20084// Fields allows partial responses to be retrieved. See
20085// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20086// for more information.
20087func (c *ProjectsLocationsAgentsEnvironmentsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsDeleteCall {
20088	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20089	return c
20090}
20091
20092// Context sets the context to be used in this call's Do method. Any
20093// pending HTTP request will be aborted if the provided context is
20094// canceled.
20095func (c *ProjectsLocationsAgentsEnvironmentsDeleteCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsDeleteCall {
20096	c.ctx_ = ctx
20097	return c
20098}
20099
20100// Header returns an http.Header that can be modified by the caller to
20101// add HTTP headers to the request.
20102func (c *ProjectsLocationsAgentsEnvironmentsDeleteCall) Header() http.Header {
20103	if c.header_ == nil {
20104		c.header_ = make(http.Header)
20105	}
20106	return c.header_
20107}
20108
20109func (c *ProjectsLocationsAgentsEnvironmentsDeleteCall) doRequest(alt string) (*http.Response, error) {
20110	reqHeaders := make(http.Header)
20111	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
20112	for k, v := range c.header_ {
20113		reqHeaders[k] = v
20114	}
20115	reqHeaders.Set("User-Agent", c.s.userAgent())
20116	var body io.Reader = nil
20117	c.urlParams_.Set("alt", alt)
20118	c.urlParams_.Set("prettyPrint", "false")
20119	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
20120	urls += "?" + c.urlParams_.Encode()
20121	req, err := http.NewRequest("DELETE", urls, body)
20122	if err != nil {
20123		return nil, err
20124	}
20125	req.Header = reqHeaders
20126	googleapi.Expand(req.URL, map[string]string{
20127		"name": c.name,
20128	})
20129	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20130}
20131
20132// Do executes the "dialogflow.projects.locations.agents.environments.delete" call.
20133// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
20134// non-2xx status code is an error. Response headers are in either
20135// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
20136// returned at all) in error.(*googleapi.Error).Header. Use
20137// googleapi.IsNotModified to check whether the returned error was
20138// because http.StatusNotModified was returned.
20139func (c *ProjectsLocationsAgentsEnvironmentsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
20140	gensupport.SetOptions(c.urlParams_, opts...)
20141	res, err := c.doRequest("json")
20142	if res != nil && res.StatusCode == http.StatusNotModified {
20143		if res.Body != nil {
20144			res.Body.Close()
20145		}
20146		return nil, &googleapi.Error{
20147			Code:   res.StatusCode,
20148			Header: res.Header,
20149		}
20150	}
20151	if err != nil {
20152		return nil, err
20153	}
20154	defer googleapi.CloseBody(res)
20155	if err := googleapi.CheckResponse(res); err != nil {
20156		return nil, err
20157	}
20158	ret := &GoogleProtobufEmpty{
20159		ServerResponse: googleapi.ServerResponse{
20160			Header:         res.Header,
20161			HTTPStatusCode: res.StatusCode,
20162		},
20163	}
20164	target := &ret
20165	if err := gensupport.DecodeResponse(target, res); err != nil {
20166		return nil, err
20167	}
20168	return ret, nil
20169	// {
20170	//   "description": "Deletes the specified Environment.",
20171	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}",
20172	//   "httpMethod": "DELETE",
20173	//   "id": "dialogflow.projects.locations.agents.environments.delete",
20174	//   "parameterOrder": [
20175	//     "name"
20176	//   ],
20177	//   "parameters": {
20178	//     "name": {
20179	//       "description": "Required. The name of the Environment to delete. Format: `projects//locations//agents//environments/`.",
20180	//       "location": "path",
20181	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+$",
20182	//       "required": true,
20183	//       "type": "string"
20184	//     }
20185	//   },
20186	//   "path": "v3/{+name}",
20187	//   "response": {
20188	//     "$ref": "GoogleProtobufEmpty"
20189	//   },
20190	//   "scopes": [
20191	//     "https://www.googleapis.com/auth/cloud-platform",
20192	//     "https://www.googleapis.com/auth/dialogflow"
20193	//   ]
20194	// }
20195
20196}
20197
20198// method id "dialogflow.projects.locations.agents.environments.get":
20199
20200type ProjectsLocationsAgentsEnvironmentsGetCall struct {
20201	s            *Service
20202	name         string
20203	urlParams_   gensupport.URLParams
20204	ifNoneMatch_ string
20205	ctx_         context.Context
20206	header_      http.Header
20207}
20208
20209// Get: Retrieves the specified Environment.
20210//
20211// - name: The name of the Environment. Format:
20212//   `projects//locations//agents//environments/`.
20213func (r *ProjectsLocationsAgentsEnvironmentsService) Get(name string) *ProjectsLocationsAgentsEnvironmentsGetCall {
20214	c := &ProjectsLocationsAgentsEnvironmentsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20215	c.name = name
20216	return c
20217}
20218
20219// Fields allows partial responses to be retrieved. See
20220// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20221// for more information.
20222func (c *ProjectsLocationsAgentsEnvironmentsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsGetCall {
20223	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20224	return c
20225}
20226
20227// IfNoneMatch sets the optional parameter which makes the operation
20228// fail if the object's ETag matches the given value. This is useful for
20229// getting updates only after the object has changed since the last
20230// request. Use googleapi.IsNotModified to check whether the response
20231// error from Do is the result of In-None-Match.
20232func (c *ProjectsLocationsAgentsEnvironmentsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsEnvironmentsGetCall {
20233	c.ifNoneMatch_ = entityTag
20234	return c
20235}
20236
20237// Context sets the context to be used in this call's Do method. Any
20238// pending HTTP request will be aborted if the provided context is
20239// canceled.
20240func (c *ProjectsLocationsAgentsEnvironmentsGetCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsGetCall {
20241	c.ctx_ = ctx
20242	return c
20243}
20244
20245// Header returns an http.Header that can be modified by the caller to
20246// add HTTP headers to the request.
20247func (c *ProjectsLocationsAgentsEnvironmentsGetCall) Header() http.Header {
20248	if c.header_ == nil {
20249		c.header_ = make(http.Header)
20250	}
20251	return c.header_
20252}
20253
20254func (c *ProjectsLocationsAgentsEnvironmentsGetCall) doRequest(alt string) (*http.Response, error) {
20255	reqHeaders := make(http.Header)
20256	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
20257	for k, v := range c.header_ {
20258		reqHeaders[k] = v
20259	}
20260	reqHeaders.Set("User-Agent", c.s.userAgent())
20261	if c.ifNoneMatch_ != "" {
20262		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
20263	}
20264	var body io.Reader = nil
20265	c.urlParams_.Set("alt", alt)
20266	c.urlParams_.Set("prettyPrint", "false")
20267	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
20268	urls += "?" + c.urlParams_.Encode()
20269	req, err := http.NewRequest("GET", urls, body)
20270	if err != nil {
20271		return nil, err
20272	}
20273	req.Header = reqHeaders
20274	googleapi.Expand(req.URL, map[string]string{
20275		"name": c.name,
20276	})
20277	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20278}
20279
20280// Do executes the "dialogflow.projects.locations.agents.environments.get" call.
20281// Exactly one of *GoogleCloudDialogflowCxV3Environment or error will be
20282// non-nil. Any non-2xx status code is an error. Response headers are in
20283// either *GoogleCloudDialogflowCxV3Environment.ServerResponse.Header or
20284// (if a response was returned at all) in
20285// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
20286// whether the returned error was because http.StatusNotModified was
20287// returned.
20288func (c *ProjectsLocationsAgentsEnvironmentsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3Environment, error) {
20289	gensupport.SetOptions(c.urlParams_, opts...)
20290	res, err := c.doRequest("json")
20291	if res != nil && res.StatusCode == http.StatusNotModified {
20292		if res.Body != nil {
20293			res.Body.Close()
20294		}
20295		return nil, &googleapi.Error{
20296			Code:   res.StatusCode,
20297			Header: res.Header,
20298		}
20299	}
20300	if err != nil {
20301		return nil, err
20302	}
20303	defer googleapi.CloseBody(res)
20304	if err := googleapi.CheckResponse(res); err != nil {
20305		return nil, err
20306	}
20307	ret := &GoogleCloudDialogflowCxV3Environment{
20308		ServerResponse: googleapi.ServerResponse{
20309			Header:         res.Header,
20310			HTTPStatusCode: res.StatusCode,
20311		},
20312	}
20313	target := &ret
20314	if err := gensupport.DecodeResponse(target, res); err != nil {
20315		return nil, err
20316	}
20317	return ret, nil
20318	// {
20319	//   "description": "Retrieves the specified Environment.",
20320	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}",
20321	//   "httpMethod": "GET",
20322	//   "id": "dialogflow.projects.locations.agents.environments.get",
20323	//   "parameterOrder": [
20324	//     "name"
20325	//   ],
20326	//   "parameters": {
20327	//     "name": {
20328	//       "description": "Required. The name of the Environment. Format: `projects//locations//agents//environments/`.",
20329	//       "location": "path",
20330	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+$",
20331	//       "required": true,
20332	//       "type": "string"
20333	//     }
20334	//   },
20335	//   "path": "v3/{+name}",
20336	//   "response": {
20337	//     "$ref": "GoogleCloudDialogflowCxV3Environment"
20338	//   },
20339	//   "scopes": [
20340	//     "https://www.googleapis.com/auth/cloud-platform",
20341	//     "https://www.googleapis.com/auth/dialogflow"
20342	//   ]
20343	// }
20344
20345}
20346
20347// method id "dialogflow.projects.locations.agents.environments.list":
20348
20349type ProjectsLocationsAgentsEnvironmentsListCall struct {
20350	s            *Service
20351	parent       string
20352	urlParams_   gensupport.URLParams
20353	ifNoneMatch_ string
20354	ctx_         context.Context
20355	header_      http.Header
20356}
20357
20358// List: Returns the list of all environments in the specified Agent.
20359//
20360// - parent: The Agent to list all environments for. Format:
20361//   `projects//locations//agents/`.
20362func (r *ProjectsLocationsAgentsEnvironmentsService) List(parent string) *ProjectsLocationsAgentsEnvironmentsListCall {
20363	c := &ProjectsLocationsAgentsEnvironmentsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20364	c.parent = parent
20365	return c
20366}
20367
20368// PageSize sets the optional parameter "pageSize": The maximum number
20369// of items to return in a single page. By default 20 and at most 100.
20370func (c *ProjectsLocationsAgentsEnvironmentsListCall) PageSize(pageSize int64) *ProjectsLocationsAgentsEnvironmentsListCall {
20371	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
20372	return c
20373}
20374
20375// PageToken sets the optional parameter "pageToken": The
20376// next_page_token value returned from a previous list request.
20377func (c *ProjectsLocationsAgentsEnvironmentsListCall) PageToken(pageToken string) *ProjectsLocationsAgentsEnvironmentsListCall {
20378	c.urlParams_.Set("pageToken", pageToken)
20379	return c
20380}
20381
20382// Fields allows partial responses to be retrieved. See
20383// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20384// for more information.
20385func (c *ProjectsLocationsAgentsEnvironmentsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsListCall {
20386	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20387	return c
20388}
20389
20390// IfNoneMatch sets the optional parameter which makes the operation
20391// fail if the object's ETag matches the given value. This is useful for
20392// getting updates only after the object has changed since the last
20393// request. Use googleapi.IsNotModified to check whether the response
20394// error from Do is the result of In-None-Match.
20395func (c *ProjectsLocationsAgentsEnvironmentsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsEnvironmentsListCall {
20396	c.ifNoneMatch_ = entityTag
20397	return c
20398}
20399
20400// Context sets the context to be used in this call's Do method. Any
20401// pending HTTP request will be aborted if the provided context is
20402// canceled.
20403func (c *ProjectsLocationsAgentsEnvironmentsListCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsListCall {
20404	c.ctx_ = ctx
20405	return c
20406}
20407
20408// Header returns an http.Header that can be modified by the caller to
20409// add HTTP headers to the request.
20410func (c *ProjectsLocationsAgentsEnvironmentsListCall) Header() http.Header {
20411	if c.header_ == nil {
20412		c.header_ = make(http.Header)
20413	}
20414	return c.header_
20415}
20416
20417func (c *ProjectsLocationsAgentsEnvironmentsListCall) doRequest(alt string) (*http.Response, error) {
20418	reqHeaders := make(http.Header)
20419	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
20420	for k, v := range c.header_ {
20421		reqHeaders[k] = v
20422	}
20423	reqHeaders.Set("User-Agent", c.s.userAgent())
20424	if c.ifNoneMatch_ != "" {
20425		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
20426	}
20427	var body io.Reader = nil
20428	c.urlParams_.Set("alt", alt)
20429	c.urlParams_.Set("prettyPrint", "false")
20430	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/environments")
20431	urls += "?" + c.urlParams_.Encode()
20432	req, err := http.NewRequest("GET", urls, body)
20433	if err != nil {
20434		return nil, err
20435	}
20436	req.Header = reqHeaders
20437	googleapi.Expand(req.URL, map[string]string{
20438		"parent": c.parent,
20439	})
20440	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20441}
20442
20443// Do executes the "dialogflow.projects.locations.agents.environments.list" call.
20444// Exactly one of *GoogleCloudDialogflowCxV3ListEnvironmentsResponse or
20445// error will be non-nil. Any non-2xx status code is an error. Response
20446// headers are in either
20447// *GoogleCloudDialogflowCxV3ListEnvironmentsResponse.ServerResponse.Head
20448// er or (if a response was returned at all) in
20449// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
20450// whether the returned error was because http.StatusNotModified was
20451// returned.
20452func (c *ProjectsLocationsAgentsEnvironmentsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3ListEnvironmentsResponse, error) {
20453	gensupport.SetOptions(c.urlParams_, opts...)
20454	res, err := c.doRequest("json")
20455	if res != nil && res.StatusCode == http.StatusNotModified {
20456		if res.Body != nil {
20457			res.Body.Close()
20458		}
20459		return nil, &googleapi.Error{
20460			Code:   res.StatusCode,
20461			Header: res.Header,
20462		}
20463	}
20464	if err != nil {
20465		return nil, err
20466	}
20467	defer googleapi.CloseBody(res)
20468	if err := googleapi.CheckResponse(res); err != nil {
20469		return nil, err
20470	}
20471	ret := &GoogleCloudDialogflowCxV3ListEnvironmentsResponse{
20472		ServerResponse: googleapi.ServerResponse{
20473			Header:         res.Header,
20474			HTTPStatusCode: res.StatusCode,
20475		},
20476	}
20477	target := &ret
20478	if err := gensupport.DecodeResponse(target, res); err != nil {
20479		return nil, err
20480	}
20481	return ret, nil
20482	// {
20483	//   "description": "Returns the list of all environments in the specified Agent.",
20484	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments",
20485	//   "httpMethod": "GET",
20486	//   "id": "dialogflow.projects.locations.agents.environments.list",
20487	//   "parameterOrder": [
20488	//     "parent"
20489	//   ],
20490	//   "parameters": {
20491	//     "pageSize": {
20492	//       "description": "The maximum number of items to return in a single page. By default 20 and at most 100.",
20493	//       "format": "int32",
20494	//       "location": "query",
20495	//       "type": "integer"
20496	//     },
20497	//     "pageToken": {
20498	//       "description": "The next_page_token value returned from a previous list request.",
20499	//       "location": "query",
20500	//       "type": "string"
20501	//     },
20502	//     "parent": {
20503	//       "description": "Required. The Agent to list all environments for. Format: `projects//locations//agents/`.",
20504	//       "location": "path",
20505	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
20506	//       "required": true,
20507	//       "type": "string"
20508	//     }
20509	//   },
20510	//   "path": "v3/{+parent}/environments",
20511	//   "response": {
20512	//     "$ref": "GoogleCloudDialogflowCxV3ListEnvironmentsResponse"
20513	//   },
20514	//   "scopes": [
20515	//     "https://www.googleapis.com/auth/cloud-platform",
20516	//     "https://www.googleapis.com/auth/dialogflow"
20517	//   ]
20518	// }
20519
20520}
20521
20522// Pages invokes f for each page of results.
20523// A non-nil error returned from f will halt the iteration.
20524// The provided context supersedes any context provided to the Context method.
20525func (c *ProjectsLocationsAgentsEnvironmentsListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3ListEnvironmentsResponse) error) error {
20526	c.ctx_ = ctx
20527	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
20528	for {
20529		x, err := c.Do()
20530		if err != nil {
20531			return err
20532		}
20533		if err := f(x); err != nil {
20534			return err
20535		}
20536		if x.NextPageToken == "" {
20537			return nil
20538		}
20539		c.PageToken(x.NextPageToken)
20540	}
20541}
20542
20543// method id "dialogflow.projects.locations.agents.environments.lookupEnvironmentHistory":
20544
20545type ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall struct {
20546	s            *Service
20547	name         string
20548	urlParams_   gensupport.URLParams
20549	ifNoneMatch_ string
20550	ctx_         context.Context
20551	header_      http.Header
20552}
20553
20554// LookupEnvironmentHistory: Looks up the history of the specified
20555// Environment.
20556//
20557// - name: Resource name of the environment to look up the history for.
20558//   Format: `projects//locations//agents//environments/`.
20559func (r *ProjectsLocationsAgentsEnvironmentsService) LookupEnvironmentHistory(name string) *ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall {
20560	c := &ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20561	c.name = name
20562	return c
20563}
20564
20565// PageSize sets the optional parameter "pageSize": The maximum number
20566// of items to return in a single page. By default 100 and at most 1000.
20567func (c *ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall) PageSize(pageSize int64) *ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall {
20568	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
20569	return c
20570}
20571
20572// PageToken sets the optional parameter "pageToken": The
20573// next_page_token value returned from a previous list request.
20574func (c *ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall) PageToken(pageToken string) *ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall {
20575	c.urlParams_.Set("pageToken", pageToken)
20576	return c
20577}
20578
20579// Fields allows partial responses to be retrieved. See
20580// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20581// for more information.
20582func (c *ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall {
20583	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20584	return c
20585}
20586
20587// IfNoneMatch sets the optional parameter which makes the operation
20588// fail if the object's ETag matches the given value. This is useful for
20589// getting updates only after the object has changed since the last
20590// request. Use googleapi.IsNotModified to check whether the response
20591// error from Do is the result of In-None-Match.
20592func (c *ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall {
20593	c.ifNoneMatch_ = entityTag
20594	return c
20595}
20596
20597// Context sets the context to be used in this call's Do method. Any
20598// pending HTTP request will be aborted if the provided context is
20599// canceled.
20600func (c *ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall {
20601	c.ctx_ = ctx
20602	return c
20603}
20604
20605// Header returns an http.Header that can be modified by the caller to
20606// add HTTP headers to the request.
20607func (c *ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall) Header() http.Header {
20608	if c.header_ == nil {
20609		c.header_ = make(http.Header)
20610	}
20611	return c.header_
20612}
20613
20614func (c *ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall) doRequest(alt string) (*http.Response, error) {
20615	reqHeaders := make(http.Header)
20616	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
20617	for k, v := range c.header_ {
20618		reqHeaders[k] = v
20619	}
20620	reqHeaders.Set("User-Agent", c.s.userAgent())
20621	if c.ifNoneMatch_ != "" {
20622		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
20623	}
20624	var body io.Reader = nil
20625	c.urlParams_.Set("alt", alt)
20626	c.urlParams_.Set("prettyPrint", "false")
20627	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}:lookupEnvironmentHistory")
20628	urls += "?" + c.urlParams_.Encode()
20629	req, err := http.NewRequest("GET", urls, body)
20630	if err != nil {
20631		return nil, err
20632	}
20633	req.Header = reqHeaders
20634	googleapi.Expand(req.URL, map[string]string{
20635		"name": c.name,
20636	})
20637	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20638}
20639
20640// Do executes the "dialogflow.projects.locations.agents.environments.lookupEnvironmentHistory" call.
20641// Exactly one of
20642// *GoogleCloudDialogflowCxV3LookupEnvironmentHistoryResponse or error
20643// will be non-nil. Any non-2xx status code is an error. Response
20644// headers are in either
20645// *GoogleCloudDialogflowCxV3LookupEnvironmentHistoryResponse.ServerRespo
20646// nse.Header or (if a response was returned at all) in
20647// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
20648// whether the returned error was because http.StatusNotModified was
20649// returned.
20650func (c *ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3LookupEnvironmentHistoryResponse, error) {
20651	gensupport.SetOptions(c.urlParams_, opts...)
20652	res, err := c.doRequest("json")
20653	if res != nil && res.StatusCode == http.StatusNotModified {
20654		if res.Body != nil {
20655			res.Body.Close()
20656		}
20657		return nil, &googleapi.Error{
20658			Code:   res.StatusCode,
20659			Header: res.Header,
20660		}
20661	}
20662	if err != nil {
20663		return nil, err
20664	}
20665	defer googleapi.CloseBody(res)
20666	if err := googleapi.CheckResponse(res); err != nil {
20667		return nil, err
20668	}
20669	ret := &GoogleCloudDialogflowCxV3LookupEnvironmentHistoryResponse{
20670		ServerResponse: googleapi.ServerResponse{
20671			Header:         res.Header,
20672			HTTPStatusCode: res.StatusCode,
20673		},
20674	}
20675	target := &ret
20676	if err := gensupport.DecodeResponse(target, res); err != nil {
20677		return nil, err
20678	}
20679	return ret, nil
20680	// {
20681	//   "description": "Looks up the history of the specified Environment.",
20682	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}:lookupEnvironmentHistory",
20683	//   "httpMethod": "GET",
20684	//   "id": "dialogflow.projects.locations.agents.environments.lookupEnvironmentHistory",
20685	//   "parameterOrder": [
20686	//     "name"
20687	//   ],
20688	//   "parameters": {
20689	//     "name": {
20690	//       "description": "Required. Resource name of the environment to look up the history for. Format: `projects//locations//agents//environments/`.",
20691	//       "location": "path",
20692	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+$",
20693	//       "required": true,
20694	//       "type": "string"
20695	//     },
20696	//     "pageSize": {
20697	//       "description": "The maximum number of items to return in a single page. By default 100 and at most 1000.",
20698	//       "format": "int32",
20699	//       "location": "query",
20700	//       "type": "integer"
20701	//     },
20702	//     "pageToken": {
20703	//       "description": "The next_page_token value returned from a previous list request.",
20704	//       "location": "query",
20705	//       "type": "string"
20706	//     }
20707	//   },
20708	//   "path": "v3/{+name}:lookupEnvironmentHistory",
20709	//   "response": {
20710	//     "$ref": "GoogleCloudDialogflowCxV3LookupEnvironmentHistoryResponse"
20711	//   },
20712	//   "scopes": [
20713	//     "https://www.googleapis.com/auth/cloud-platform",
20714	//     "https://www.googleapis.com/auth/dialogflow"
20715	//   ]
20716	// }
20717
20718}
20719
20720// Pages invokes f for each page of results.
20721// A non-nil error returned from f will halt the iteration.
20722// The provided context supersedes any context provided to the Context method.
20723func (c *ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3LookupEnvironmentHistoryResponse) error) error {
20724	c.ctx_ = ctx
20725	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
20726	for {
20727		x, err := c.Do()
20728		if err != nil {
20729			return err
20730		}
20731		if err := f(x); err != nil {
20732			return err
20733		}
20734		if x.NextPageToken == "" {
20735			return nil
20736		}
20737		c.PageToken(x.NextPageToken)
20738	}
20739}
20740
20741// method id "dialogflow.projects.locations.agents.environments.patch":
20742
20743type ProjectsLocationsAgentsEnvironmentsPatchCall struct {
20744	s                                    *Service
20745	name                                 string
20746	googleclouddialogflowcxv3environment *GoogleCloudDialogflowCxV3Environment
20747	urlParams_                           gensupport.URLParams
20748	ctx_                                 context.Context
20749	header_                              http.Header
20750}
20751
20752// Patch: Updates the specified Environment.
20753//
20754// - name: The name of the environment. Format:
20755//   `projects//locations//agents//environments/`.
20756func (r *ProjectsLocationsAgentsEnvironmentsService) Patch(name string, googleclouddialogflowcxv3environment *GoogleCloudDialogflowCxV3Environment) *ProjectsLocationsAgentsEnvironmentsPatchCall {
20757	c := &ProjectsLocationsAgentsEnvironmentsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20758	c.name = name
20759	c.googleclouddialogflowcxv3environment = googleclouddialogflowcxv3environment
20760	return c
20761}
20762
20763// UpdateMask sets the optional parameter "updateMask": Required. The
20764// mask to control which fields get updated.
20765func (c *ProjectsLocationsAgentsEnvironmentsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsAgentsEnvironmentsPatchCall {
20766	c.urlParams_.Set("updateMask", updateMask)
20767	return c
20768}
20769
20770// Fields allows partial responses to be retrieved. See
20771// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20772// for more information.
20773func (c *ProjectsLocationsAgentsEnvironmentsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsPatchCall {
20774	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20775	return c
20776}
20777
20778// Context sets the context to be used in this call's Do method. Any
20779// pending HTTP request will be aborted if the provided context is
20780// canceled.
20781func (c *ProjectsLocationsAgentsEnvironmentsPatchCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsPatchCall {
20782	c.ctx_ = ctx
20783	return c
20784}
20785
20786// Header returns an http.Header that can be modified by the caller to
20787// add HTTP headers to the request.
20788func (c *ProjectsLocationsAgentsEnvironmentsPatchCall) Header() http.Header {
20789	if c.header_ == nil {
20790		c.header_ = make(http.Header)
20791	}
20792	return c.header_
20793}
20794
20795func (c *ProjectsLocationsAgentsEnvironmentsPatchCall) doRequest(alt string) (*http.Response, error) {
20796	reqHeaders := make(http.Header)
20797	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
20798	for k, v := range c.header_ {
20799		reqHeaders[k] = v
20800	}
20801	reqHeaders.Set("User-Agent", c.s.userAgent())
20802	var body io.Reader = nil
20803	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3environment)
20804	if err != nil {
20805		return nil, err
20806	}
20807	reqHeaders.Set("Content-Type", "application/json")
20808	c.urlParams_.Set("alt", alt)
20809	c.urlParams_.Set("prettyPrint", "false")
20810	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
20811	urls += "?" + c.urlParams_.Encode()
20812	req, err := http.NewRequest("PATCH", urls, body)
20813	if err != nil {
20814		return nil, err
20815	}
20816	req.Header = reqHeaders
20817	googleapi.Expand(req.URL, map[string]string{
20818		"name": c.name,
20819	})
20820	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20821}
20822
20823// Do executes the "dialogflow.projects.locations.agents.environments.patch" call.
20824// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
20825// Any non-2xx status code is an error. Response headers are in either
20826// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
20827// was returned at all) in error.(*googleapi.Error).Header. Use
20828// googleapi.IsNotModified to check whether the returned error was
20829// because http.StatusNotModified was returned.
20830func (c *ProjectsLocationsAgentsEnvironmentsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
20831	gensupport.SetOptions(c.urlParams_, opts...)
20832	res, err := c.doRequest("json")
20833	if res != nil && res.StatusCode == http.StatusNotModified {
20834		if res.Body != nil {
20835			res.Body.Close()
20836		}
20837		return nil, &googleapi.Error{
20838			Code:   res.StatusCode,
20839			Header: res.Header,
20840		}
20841	}
20842	if err != nil {
20843		return nil, err
20844	}
20845	defer googleapi.CloseBody(res)
20846	if err := googleapi.CheckResponse(res); err != nil {
20847		return nil, err
20848	}
20849	ret := &GoogleLongrunningOperation{
20850		ServerResponse: googleapi.ServerResponse{
20851			Header:         res.Header,
20852			HTTPStatusCode: res.StatusCode,
20853		},
20854	}
20855	target := &ret
20856	if err := gensupport.DecodeResponse(target, res); err != nil {
20857		return nil, err
20858	}
20859	return ret, nil
20860	// {
20861	//   "description": "Updates the specified Environment.",
20862	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}",
20863	//   "httpMethod": "PATCH",
20864	//   "id": "dialogflow.projects.locations.agents.environments.patch",
20865	//   "parameterOrder": [
20866	//     "name"
20867	//   ],
20868	//   "parameters": {
20869	//     "name": {
20870	//       "description": "The name of the environment. Format: `projects//locations//agents//environments/`.",
20871	//       "location": "path",
20872	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+$",
20873	//       "required": true,
20874	//       "type": "string"
20875	//     },
20876	//     "updateMask": {
20877	//       "description": "Required. The mask to control which fields get updated.",
20878	//       "format": "google-fieldmask",
20879	//       "location": "query",
20880	//       "type": "string"
20881	//     }
20882	//   },
20883	//   "path": "v3/{+name}",
20884	//   "request": {
20885	//     "$ref": "GoogleCloudDialogflowCxV3Environment"
20886	//   },
20887	//   "response": {
20888	//     "$ref": "GoogleLongrunningOperation"
20889	//   },
20890	//   "scopes": [
20891	//     "https://www.googleapis.com/auth/cloud-platform",
20892	//     "https://www.googleapis.com/auth/dialogflow"
20893	//   ]
20894	// }
20895
20896}
20897
20898// method id "dialogflow.projects.locations.agents.environments.runContinuousTest":
20899
20900type ProjectsLocationsAgentsEnvironmentsRunContinuousTestCall struct {
20901	s                                                 *Service
20902	environment                                       string
20903	googleclouddialogflowcxv3runcontinuoustestrequest *GoogleCloudDialogflowCxV3RunContinuousTestRequest
20904	urlParams_                                        gensupport.URLParams
20905	ctx_                                              context.Context
20906	header_                                           http.Header
20907}
20908
20909// RunContinuousTest: Kicks off a continuous test under the specified
20910// Environment.
20911//
20912// - environment: Format: `projects//locations//agents//environments/`.
20913func (r *ProjectsLocationsAgentsEnvironmentsService) RunContinuousTest(environment string, googleclouddialogflowcxv3runcontinuoustestrequest *GoogleCloudDialogflowCxV3RunContinuousTestRequest) *ProjectsLocationsAgentsEnvironmentsRunContinuousTestCall {
20914	c := &ProjectsLocationsAgentsEnvironmentsRunContinuousTestCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20915	c.environment = environment
20916	c.googleclouddialogflowcxv3runcontinuoustestrequest = googleclouddialogflowcxv3runcontinuoustestrequest
20917	return c
20918}
20919
20920// Fields allows partial responses to be retrieved. See
20921// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20922// for more information.
20923func (c *ProjectsLocationsAgentsEnvironmentsRunContinuousTestCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsRunContinuousTestCall {
20924	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20925	return c
20926}
20927
20928// Context sets the context to be used in this call's Do method. Any
20929// pending HTTP request will be aborted if the provided context is
20930// canceled.
20931func (c *ProjectsLocationsAgentsEnvironmentsRunContinuousTestCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsRunContinuousTestCall {
20932	c.ctx_ = ctx
20933	return c
20934}
20935
20936// Header returns an http.Header that can be modified by the caller to
20937// add HTTP headers to the request.
20938func (c *ProjectsLocationsAgentsEnvironmentsRunContinuousTestCall) Header() http.Header {
20939	if c.header_ == nil {
20940		c.header_ = make(http.Header)
20941	}
20942	return c.header_
20943}
20944
20945func (c *ProjectsLocationsAgentsEnvironmentsRunContinuousTestCall) doRequest(alt string) (*http.Response, error) {
20946	reqHeaders := make(http.Header)
20947	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
20948	for k, v := range c.header_ {
20949		reqHeaders[k] = v
20950	}
20951	reqHeaders.Set("User-Agent", c.s.userAgent())
20952	var body io.Reader = nil
20953	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3runcontinuoustestrequest)
20954	if err != nil {
20955		return nil, err
20956	}
20957	reqHeaders.Set("Content-Type", "application/json")
20958	c.urlParams_.Set("alt", alt)
20959	c.urlParams_.Set("prettyPrint", "false")
20960	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+environment}:runContinuousTest")
20961	urls += "?" + c.urlParams_.Encode()
20962	req, err := http.NewRequest("POST", urls, body)
20963	if err != nil {
20964		return nil, err
20965	}
20966	req.Header = reqHeaders
20967	googleapi.Expand(req.URL, map[string]string{
20968		"environment": c.environment,
20969	})
20970	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20971}
20972
20973// Do executes the "dialogflow.projects.locations.agents.environments.runContinuousTest" call.
20974// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
20975// Any non-2xx status code is an error. Response headers are in either
20976// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
20977// was returned at all) in error.(*googleapi.Error).Header. Use
20978// googleapi.IsNotModified to check whether the returned error was
20979// because http.StatusNotModified was returned.
20980func (c *ProjectsLocationsAgentsEnvironmentsRunContinuousTestCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
20981	gensupport.SetOptions(c.urlParams_, opts...)
20982	res, err := c.doRequest("json")
20983	if res != nil && res.StatusCode == http.StatusNotModified {
20984		if res.Body != nil {
20985			res.Body.Close()
20986		}
20987		return nil, &googleapi.Error{
20988			Code:   res.StatusCode,
20989			Header: res.Header,
20990		}
20991	}
20992	if err != nil {
20993		return nil, err
20994	}
20995	defer googleapi.CloseBody(res)
20996	if err := googleapi.CheckResponse(res); err != nil {
20997		return nil, err
20998	}
20999	ret := &GoogleLongrunningOperation{
21000		ServerResponse: googleapi.ServerResponse{
21001			Header:         res.Header,
21002			HTTPStatusCode: res.StatusCode,
21003		},
21004	}
21005	target := &ret
21006	if err := gensupport.DecodeResponse(target, res); err != nil {
21007		return nil, err
21008	}
21009	return ret, nil
21010	// {
21011	//   "description": "Kicks off a continuous test under the specified Environment.",
21012	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}:runContinuousTest",
21013	//   "httpMethod": "POST",
21014	//   "id": "dialogflow.projects.locations.agents.environments.runContinuousTest",
21015	//   "parameterOrder": [
21016	//     "environment"
21017	//   ],
21018	//   "parameters": {
21019	//     "environment": {
21020	//       "description": "Required. Format: `projects//locations//agents//environments/`.",
21021	//       "location": "path",
21022	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+$",
21023	//       "required": true,
21024	//       "type": "string"
21025	//     }
21026	//   },
21027	//   "path": "v3/{+environment}:runContinuousTest",
21028	//   "request": {
21029	//     "$ref": "GoogleCloudDialogflowCxV3RunContinuousTestRequest"
21030	//   },
21031	//   "response": {
21032	//     "$ref": "GoogleLongrunningOperation"
21033	//   },
21034	//   "scopes": [
21035	//     "https://www.googleapis.com/auth/cloud-platform",
21036	//     "https://www.googleapis.com/auth/dialogflow"
21037	//   ]
21038	// }
21039
21040}
21041
21042// method id "dialogflow.projects.locations.agents.environments.continuousTestResults.list":
21043
21044type ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall struct {
21045	s            *Service
21046	parent       string
21047	urlParams_   gensupport.URLParams
21048	ifNoneMatch_ string
21049	ctx_         context.Context
21050	header_      http.Header
21051}
21052
21053// List: Fetches a list of continuous test results for a given
21054// environment.
21055//
21056// - parent: The environment to list results for. Format:
21057//   `projects//locations//agents// environments/`.
21058func (r *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsService) List(parent string) *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall {
21059	c := &ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21060	c.parent = parent
21061	return c
21062}
21063
21064// PageSize sets the optional parameter "pageSize": The maximum number
21065// of items to return in a single page. By default 100 and at most 1000.
21066func (c *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall) PageSize(pageSize int64) *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall {
21067	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
21068	return c
21069}
21070
21071// PageToken sets the optional parameter "pageToken": The
21072// next_page_token value returned from a previous list request.
21073func (c *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall) PageToken(pageToken string) *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall {
21074	c.urlParams_.Set("pageToken", pageToken)
21075	return c
21076}
21077
21078// Fields allows partial responses to be retrieved. See
21079// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21080// for more information.
21081func (c *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall {
21082	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21083	return c
21084}
21085
21086// IfNoneMatch sets the optional parameter which makes the operation
21087// fail if the object's ETag matches the given value. This is useful for
21088// getting updates only after the object has changed since the last
21089// request. Use googleapi.IsNotModified to check whether the response
21090// error from Do is the result of In-None-Match.
21091func (c *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall {
21092	c.ifNoneMatch_ = entityTag
21093	return c
21094}
21095
21096// Context sets the context to be used in this call's Do method. Any
21097// pending HTTP request will be aborted if the provided context is
21098// canceled.
21099func (c *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall {
21100	c.ctx_ = ctx
21101	return c
21102}
21103
21104// Header returns an http.Header that can be modified by the caller to
21105// add HTTP headers to the request.
21106func (c *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall) Header() http.Header {
21107	if c.header_ == nil {
21108		c.header_ = make(http.Header)
21109	}
21110	return c.header_
21111}
21112
21113func (c *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall) doRequest(alt string) (*http.Response, error) {
21114	reqHeaders := make(http.Header)
21115	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
21116	for k, v := range c.header_ {
21117		reqHeaders[k] = v
21118	}
21119	reqHeaders.Set("User-Agent", c.s.userAgent())
21120	if c.ifNoneMatch_ != "" {
21121		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
21122	}
21123	var body io.Reader = nil
21124	c.urlParams_.Set("alt", alt)
21125	c.urlParams_.Set("prettyPrint", "false")
21126	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/continuousTestResults")
21127	urls += "?" + c.urlParams_.Encode()
21128	req, err := http.NewRequest("GET", urls, body)
21129	if err != nil {
21130		return nil, err
21131	}
21132	req.Header = reqHeaders
21133	googleapi.Expand(req.URL, map[string]string{
21134		"parent": c.parent,
21135	})
21136	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21137}
21138
21139// Do executes the "dialogflow.projects.locations.agents.environments.continuousTestResults.list" call.
21140// Exactly one of
21141// *GoogleCloudDialogflowCxV3ListContinuousTestResultsResponse or error
21142// will be non-nil. Any non-2xx status code is an error. Response
21143// headers are in either
21144// *GoogleCloudDialogflowCxV3ListContinuousTestResultsResponse.ServerResp
21145// onse.Header or (if a response was returned at all) in
21146// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
21147// whether the returned error was because http.StatusNotModified was
21148// returned.
21149func (c *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3ListContinuousTestResultsResponse, error) {
21150	gensupport.SetOptions(c.urlParams_, opts...)
21151	res, err := c.doRequest("json")
21152	if res != nil && res.StatusCode == http.StatusNotModified {
21153		if res.Body != nil {
21154			res.Body.Close()
21155		}
21156		return nil, &googleapi.Error{
21157			Code:   res.StatusCode,
21158			Header: res.Header,
21159		}
21160	}
21161	if err != nil {
21162		return nil, err
21163	}
21164	defer googleapi.CloseBody(res)
21165	if err := googleapi.CheckResponse(res); err != nil {
21166		return nil, err
21167	}
21168	ret := &GoogleCloudDialogflowCxV3ListContinuousTestResultsResponse{
21169		ServerResponse: googleapi.ServerResponse{
21170			Header:         res.Header,
21171			HTTPStatusCode: res.StatusCode,
21172		},
21173	}
21174	target := &ret
21175	if err := gensupport.DecodeResponse(target, res); err != nil {
21176		return nil, err
21177	}
21178	return ret, nil
21179	// {
21180	//   "description": "Fetches a list of continuous test results for a given environment.",
21181	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/continuousTestResults",
21182	//   "httpMethod": "GET",
21183	//   "id": "dialogflow.projects.locations.agents.environments.continuousTestResults.list",
21184	//   "parameterOrder": [
21185	//     "parent"
21186	//   ],
21187	//   "parameters": {
21188	//     "pageSize": {
21189	//       "description": "The maximum number of items to return in a single page. By default 100 and at most 1000.",
21190	//       "format": "int32",
21191	//       "location": "query",
21192	//       "type": "integer"
21193	//     },
21194	//     "pageToken": {
21195	//       "description": "The next_page_token value returned from a previous list request.",
21196	//       "location": "query",
21197	//       "type": "string"
21198	//     },
21199	//     "parent": {
21200	//       "description": "Required. The environment to list results for. Format: `projects//locations//agents// environments/`.",
21201	//       "location": "path",
21202	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+$",
21203	//       "required": true,
21204	//       "type": "string"
21205	//     }
21206	//   },
21207	//   "path": "v3/{+parent}/continuousTestResults",
21208	//   "response": {
21209	//     "$ref": "GoogleCloudDialogflowCxV3ListContinuousTestResultsResponse"
21210	//   },
21211	//   "scopes": [
21212	//     "https://www.googleapis.com/auth/cloud-platform",
21213	//     "https://www.googleapis.com/auth/dialogflow"
21214	//   ]
21215	// }
21216
21217}
21218
21219// Pages invokes f for each page of results.
21220// A non-nil error returned from f will halt the iteration.
21221// The provided context supersedes any context provided to the Context method.
21222func (c *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3ListContinuousTestResultsResponse) error) error {
21223	c.ctx_ = ctx
21224	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
21225	for {
21226		x, err := c.Do()
21227		if err != nil {
21228			return err
21229		}
21230		if err := f(x); err != nil {
21231			return err
21232		}
21233		if x.NextPageToken == "" {
21234			return nil
21235		}
21236		c.PageToken(x.NextPageToken)
21237	}
21238}
21239
21240// method id "dialogflow.projects.locations.agents.environments.experiments.create":
21241
21242type ProjectsLocationsAgentsEnvironmentsExperimentsCreateCall struct {
21243	s                                   *Service
21244	parent                              string
21245	googleclouddialogflowcxv3experiment *GoogleCloudDialogflowCxV3Experiment
21246	urlParams_                          gensupport.URLParams
21247	ctx_                                context.Context
21248	header_                             http.Header
21249}
21250
21251// Create: Creates an Experiment in the specified Environment.
21252//
21253// - parent: The Agent to create an Environment for. Format:
21254//   `projects//locations//agents//environments/`.
21255func (r *ProjectsLocationsAgentsEnvironmentsExperimentsService) Create(parent string, googleclouddialogflowcxv3experiment *GoogleCloudDialogflowCxV3Experiment) *ProjectsLocationsAgentsEnvironmentsExperimentsCreateCall {
21256	c := &ProjectsLocationsAgentsEnvironmentsExperimentsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21257	c.parent = parent
21258	c.googleclouddialogflowcxv3experiment = googleclouddialogflowcxv3experiment
21259	return c
21260}
21261
21262// Fields allows partial responses to be retrieved. See
21263// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21264// for more information.
21265func (c *ProjectsLocationsAgentsEnvironmentsExperimentsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsExperimentsCreateCall {
21266	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21267	return c
21268}
21269
21270// Context sets the context to be used in this call's Do method. Any
21271// pending HTTP request will be aborted if the provided context is
21272// canceled.
21273func (c *ProjectsLocationsAgentsEnvironmentsExperimentsCreateCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsExperimentsCreateCall {
21274	c.ctx_ = ctx
21275	return c
21276}
21277
21278// Header returns an http.Header that can be modified by the caller to
21279// add HTTP headers to the request.
21280func (c *ProjectsLocationsAgentsEnvironmentsExperimentsCreateCall) Header() http.Header {
21281	if c.header_ == nil {
21282		c.header_ = make(http.Header)
21283	}
21284	return c.header_
21285}
21286
21287func (c *ProjectsLocationsAgentsEnvironmentsExperimentsCreateCall) doRequest(alt string) (*http.Response, error) {
21288	reqHeaders := make(http.Header)
21289	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
21290	for k, v := range c.header_ {
21291		reqHeaders[k] = v
21292	}
21293	reqHeaders.Set("User-Agent", c.s.userAgent())
21294	var body io.Reader = nil
21295	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3experiment)
21296	if err != nil {
21297		return nil, err
21298	}
21299	reqHeaders.Set("Content-Type", "application/json")
21300	c.urlParams_.Set("alt", alt)
21301	c.urlParams_.Set("prettyPrint", "false")
21302	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/experiments")
21303	urls += "?" + c.urlParams_.Encode()
21304	req, err := http.NewRequest("POST", urls, body)
21305	if err != nil {
21306		return nil, err
21307	}
21308	req.Header = reqHeaders
21309	googleapi.Expand(req.URL, map[string]string{
21310		"parent": c.parent,
21311	})
21312	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21313}
21314
21315// Do executes the "dialogflow.projects.locations.agents.environments.experiments.create" call.
21316// Exactly one of *GoogleCloudDialogflowCxV3Experiment or error will be
21317// non-nil. Any non-2xx status code is an error. Response headers are in
21318// either *GoogleCloudDialogflowCxV3Experiment.ServerResponse.Header or
21319// (if a response was returned at all) in
21320// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
21321// whether the returned error was because http.StatusNotModified was
21322// returned.
21323func (c *ProjectsLocationsAgentsEnvironmentsExperimentsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3Experiment, error) {
21324	gensupport.SetOptions(c.urlParams_, opts...)
21325	res, err := c.doRequest("json")
21326	if res != nil && res.StatusCode == http.StatusNotModified {
21327		if res.Body != nil {
21328			res.Body.Close()
21329		}
21330		return nil, &googleapi.Error{
21331			Code:   res.StatusCode,
21332			Header: res.Header,
21333		}
21334	}
21335	if err != nil {
21336		return nil, err
21337	}
21338	defer googleapi.CloseBody(res)
21339	if err := googleapi.CheckResponse(res); err != nil {
21340		return nil, err
21341	}
21342	ret := &GoogleCloudDialogflowCxV3Experiment{
21343		ServerResponse: googleapi.ServerResponse{
21344			Header:         res.Header,
21345			HTTPStatusCode: res.StatusCode,
21346		},
21347	}
21348	target := &ret
21349	if err := gensupport.DecodeResponse(target, res); err != nil {
21350		return nil, err
21351	}
21352	return ret, nil
21353	// {
21354	//   "description": "Creates an Experiment in the specified Environment.",
21355	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/experiments",
21356	//   "httpMethod": "POST",
21357	//   "id": "dialogflow.projects.locations.agents.environments.experiments.create",
21358	//   "parameterOrder": [
21359	//     "parent"
21360	//   ],
21361	//   "parameters": {
21362	//     "parent": {
21363	//       "description": "Required. The Agent to create an Environment for. Format: `projects//locations//agents//environments/`.",
21364	//       "location": "path",
21365	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+$",
21366	//       "required": true,
21367	//       "type": "string"
21368	//     }
21369	//   },
21370	//   "path": "v3/{+parent}/experiments",
21371	//   "request": {
21372	//     "$ref": "GoogleCloudDialogflowCxV3Experiment"
21373	//   },
21374	//   "response": {
21375	//     "$ref": "GoogleCloudDialogflowCxV3Experiment"
21376	//   },
21377	//   "scopes": [
21378	//     "https://www.googleapis.com/auth/cloud-platform",
21379	//     "https://www.googleapis.com/auth/dialogflow"
21380	//   ]
21381	// }
21382
21383}
21384
21385// method id "dialogflow.projects.locations.agents.environments.experiments.delete":
21386
21387type ProjectsLocationsAgentsEnvironmentsExperimentsDeleteCall struct {
21388	s          *Service
21389	name       string
21390	urlParams_ gensupport.URLParams
21391	ctx_       context.Context
21392	header_    http.Header
21393}
21394
21395// Delete: Deletes the specified Experiment.
21396//
21397// - name: The name of the Environment to delete. Format:
21398//   `projects//locations//agents//environments//experiments/`.
21399func (r *ProjectsLocationsAgentsEnvironmentsExperimentsService) Delete(name string) *ProjectsLocationsAgentsEnvironmentsExperimentsDeleteCall {
21400	c := &ProjectsLocationsAgentsEnvironmentsExperimentsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21401	c.name = name
21402	return c
21403}
21404
21405// Fields allows partial responses to be retrieved. See
21406// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21407// for more information.
21408func (c *ProjectsLocationsAgentsEnvironmentsExperimentsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsExperimentsDeleteCall {
21409	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21410	return c
21411}
21412
21413// Context sets the context to be used in this call's Do method. Any
21414// pending HTTP request will be aborted if the provided context is
21415// canceled.
21416func (c *ProjectsLocationsAgentsEnvironmentsExperimentsDeleteCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsExperimentsDeleteCall {
21417	c.ctx_ = ctx
21418	return c
21419}
21420
21421// Header returns an http.Header that can be modified by the caller to
21422// add HTTP headers to the request.
21423func (c *ProjectsLocationsAgentsEnvironmentsExperimentsDeleteCall) Header() http.Header {
21424	if c.header_ == nil {
21425		c.header_ = make(http.Header)
21426	}
21427	return c.header_
21428}
21429
21430func (c *ProjectsLocationsAgentsEnvironmentsExperimentsDeleteCall) doRequest(alt string) (*http.Response, error) {
21431	reqHeaders := make(http.Header)
21432	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
21433	for k, v := range c.header_ {
21434		reqHeaders[k] = v
21435	}
21436	reqHeaders.Set("User-Agent", c.s.userAgent())
21437	var body io.Reader = nil
21438	c.urlParams_.Set("alt", alt)
21439	c.urlParams_.Set("prettyPrint", "false")
21440	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
21441	urls += "?" + c.urlParams_.Encode()
21442	req, err := http.NewRequest("DELETE", urls, body)
21443	if err != nil {
21444		return nil, err
21445	}
21446	req.Header = reqHeaders
21447	googleapi.Expand(req.URL, map[string]string{
21448		"name": c.name,
21449	})
21450	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21451}
21452
21453// Do executes the "dialogflow.projects.locations.agents.environments.experiments.delete" call.
21454// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
21455// non-2xx status code is an error. Response headers are in either
21456// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
21457// returned at all) in error.(*googleapi.Error).Header. Use
21458// googleapi.IsNotModified to check whether the returned error was
21459// because http.StatusNotModified was returned.
21460func (c *ProjectsLocationsAgentsEnvironmentsExperimentsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
21461	gensupport.SetOptions(c.urlParams_, opts...)
21462	res, err := c.doRequest("json")
21463	if res != nil && res.StatusCode == http.StatusNotModified {
21464		if res.Body != nil {
21465			res.Body.Close()
21466		}
21467		return nil, &googleapi.Error{
21468			Code:   res.StatusCode,
21469			Header: res.Header,
21470		}
21471	}
21472	if err != nil {
21473		return nil, err
21474	}
21475	defer googleapi.CloseBody(res)
21476	if err := googleapi.CheckResponse(res); err != nil {
21477		return nil, err
21478	}
21479	ret := &GoogleProtobufEmpty{
21480		ServerResponse: googleapi.ServerResponse{
21481			Header:         res.Header,
21482			HTTPStatusCode: res.StatusCode,
21483		},
21484	}
21485	target := &ret
21486	if err := gensupport.DecodeResponse(target, res); err != nil {
21487		return nil, err
21488	}
21489	return ret, nil
21490	// {
21491	//   "description": "Deletes the specified Experiment.",
21492	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/experiments/{experimentsId}",
21493	//   "httpMethod": "DELETE",
21494	//   "id": "dialogflow.projects.locations.agents.environments.experiments.delete",
21495	//   "parameterOrder": [
21496	//     "name"
21497	//   ],
21498	//   "parameters": {
21499	//     "name": {
21500	//       "description": "Required. The name of the Environment to delete. Format: `projects//locations//agents//environments//experiments/`.",
21501	//       "location": "path",
21502	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+/experiments/[^/]+$",
21503	//       "required": true,
21504	//       "type": "string"
21505	//     }
21506	//   },
21507	//   "path": "v3/{+name}",
21508	//   "response": {
21509	//     "$ref": "GoogleProtobufEmpty"
21510	//   },
21511	//   "scopes": [
21512	//     "https://www.googleapis.com/auth/cloud-platform",
21513	//     "https://www.googleapis.com/auth/dialogflow"
21514	//   ]
21515	// }
21516
21517}
21518
21519// method id "dialogflow.projects.locations.agents.environments.experiments.get":
21520
21521type ProjectsLocationsAgentsEnvironmentsExperimentsGetCall struct {
21522	s            *Service
21523	name         string
21524	urlParams_   gensupport.URLParams
21525	ifNoneMatch_ string
21526	ctx_         context.Context
21527	header_      http.Header
21528}
21529
21530// Get: Retrieves the specified Experiment.
21531//
21532// - name: The name of the Environment. Format:
21533//   `projects//locations//agents//environments//experiments/`.
21534func (r *ProjectsLocationsAgentsEnvironmentsExperimentsService) Get(name string) *ProjectsLocationsAgentsEnvironmentsExperimentsGetCall {
21535	c := &ProjectsLocationsAgentsEnvironmentsExperimentsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21536	c.name = name
21537	return c
21538}
21539
21540// Fields allows partial responses to be retrieved. See
21541// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21542// for more information.
21543func (c *ProjectsLocationsAgentsEnvironmentsExperimentsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsExperimentsGetCall {
21544	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21545	return c
21546}
21547
21548// IfNoneMatch sets the optional parameter which makes the operation
21549// fail if the object's ETag matches the given value. This is useful for
21550// getting updates only after the object has changed since the last
21551// request. Use googleapi.IsNotModified to check whether the response
21552// error from Do is the result of In-None-Match.
21553func (c *ProjectsLocationsAgentsEnvironmentsExperimentsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsEnvironmentsExperimentsGetCall {
21554	c.ifNoneMatch_ = entityTag
21555	return c
21556}
21557
21558// Context sets the context to be used in this call's Do method. Any
21559// pending HTTP request will be aborted if the provided context is
21560// canceled.
21561func (c *ProjectsLocationsAgentsEnvironmentsExperimentsGetCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsExperimentsGetCall {
21562	c.ctx_ = ctx
21563	return c
21564}
21565
21566// Header returns an http.Header that can be modified by the caller to
21567// add HTTP headers to the request.
21568func (c *ProjectsLocationsAgentsEnvironmentsExperimentsGetCall) Header() http.Header {
21569	if c.header_ == nil {
21570		c.header_ = make(http.Header)
21571	}
21572	return c.header_
21573}
21574
21575func (c *ProjectsLocationsAgentsEnvironmentsExperimentsGetCall) doRequest(alt string) (*http.Response, error) {
21576	reqHeaders := make(http.Header)
21577	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
21578	for k, v := range c.header_ {
21579		reqHeaders[k] = v
21580	}
21581	reqHeaders.Set("User-Agent", c.s.userAgent())
21582	if c.ifNoneMatch_ != "" {
21583		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
21584	}
21585	var body io.Reader = nil
21586	c.urlParams_.Set("alt", alt)
21587	c.urlParams_.Set("prettyPrint", "false")
21588	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
21589	urls += "?" + c.urlParams_.Encode()
21590	req, err := http.NewRequest("GET", urls, body)
21591	if err != nil {
21592		return nil, err
21593	}
21594	req.Header = reqHeaders
21595	googleapi.Expand(req.URL, map[string]string{
21596		"name": c.name,
21597	})
21598	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21599}
21600
21601// Do executes the "dialogflow.projects.locations.agents.environments.experiments.get" call.
21602// Exactly one of *GoogleCloudDialogflowCxV3Experiment or error will be
21603// non-nil. Any non-2xx status code is an error. Response headers are in
21604// either *GoogleCloudDialogflowCxV3Experiment.ServerResponse.Header or
21605// (if a response was returned at all) in
21606// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
21607// whether the returned error was because http.StatusNotModified was
21608// returned.
21609func (c *ProjectsLocationsAgentsEnvironmentsExperimentsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3Experiment, error) {
21610	gensupport.SetOptions(c.urlParams_, opts...)
21611	res, err := c.doRequest("json")
21612	if res != nil && res.StatusCode == http.StatusNotModified {
21613		if res.Body != nil {
21614			res.Body.Close()
21615		}
21616		return nil, &googleapi.Error{
21617			Code:   res.StatusCode,
21618			Header: res.Header,
21619		}
21620	}
21621	if err != nil {
21622		return nil, err
21623	}
21624	defer googleapi.CloseBody(res)
21625	if err := googleapi.CheckResponse(res); err != nil {
21626		return nil, err
21627	}
21628	ret := &GoogleCloudDialogflowCxV3Experiment{
21629		ServerResponse: googleapi.ServerResponse{
21630			Header:         res.Header,
21631			HTTPStatusCode: res.StatusCode,
21632		},
21633	}
21634	target := &ret
21635	if err := gensupport.DecodeResponse(target, res); err != nil {
21636		return nil, err
21637	}
21638	return ret, nil
21639	// {
21640	//   "description": "Retrieves the specified Experiment.",
21641	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/experiments/{experimentsId}",
21642	//   "httpMethod": "GET",
21643	//   "id": "dialogflow.projects.locations.agents.environments.experiments.get",
21644	//   "parameterOrder": [
21645	//     "name"
21646	//   ],
21647	//   "parameters": {
21648	//     "name": {
21649	//       "description": "Required. The name of the Environment. Format: `projects//locations//agents//environments//experiments/`.",
21650	//       "location": "path",
21651	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+/experiments/[^/]+$",
21652	//       "required": true,
21653	//       "type": "string"
21654	//     }
21655	//   },
21656	//   "path": "v3/{+name}",
21657	//   "response": {
21658	//     "$ref": "GoogleCloudDialogflowCxV3Experiment"
21659	//   },
21660	//   "scopes": [
21661	//     "https://www.googleapis.com/auth/cloud-platform",
21662	//     "https://www.googleapis.com/auth/dialogflow"
21663	//   ]
21664	// }
21665
21666}
21667
21668// method id "dialogflow.projects.locations.agents.environments.experiments.list":
21669
21670type ProjectsLocationsAgentsEnvironmentsExperimentsListCall struct {
21671	s            *Service
21672	parent       string
21673	urlParams_   gensupport.URLParams
21674	ifNoneMatch_ string
21675	ctx_         context.Context
21676	header_      http.Header
21677}
21678
21679// List: Returns the list of all experiments in the specified
21680// Environment.
21681//
21682// - parent: The Environment to list all environments for. Format:
21683//   `projects//locations//agents//environments/`.
21684func (r *ProjectsLocationsAgentsEnvironmentsExperimentsService) List(parent string) *ProjectsLocationsAgentsEnvironmentsExperimentsListCall {
21685	c := &ProjectsLocationsAgentsEnvironmentsExperimentsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21686	c.parent = parent
21687	return c
21688}
21689
21690// PageSize sets the optional parameter "pageSize": The maximum number
21691// of items to return in a single page. By default 20 and at most 100.
21692func (c *ProjectsLocationsAgentsEnvironmentsExperimentsListCall) PageSize(pageSize int64) *ProjectsLocationsAgentsEnvironmentsExperimentsListCall {
21693	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
21694	return c
21695}
21696
21697// PageToken sets the optional parameter "pageToken": The
21698// next_page_token value returned from a previous list request.
21699func (c *ProjectsLocationsAgentsEnvironmentsExperimentsListCall) PageToken(pageToken string) *ProjectsLocationsAgentsEnvironmentsExperimentsListCall {
21700	c.urlParams_.Set("pageToken", pageToken)
21701	return c
21702}
21703
21704// Fields allows partial responses to be retrieved. See
21705// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21706// for more information.
21707func (c *ProjectsLocationsAgentsEnvironmentsExperimentsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsExperimentsListCall {
21708	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21709	return c
21710}
21711
21712// IfNoneMatch sets the optional parameter which makes the operation
21713// fail if the object's ETag matches the given value. This is useful for
21714// getting updates only after the object has changed since the last
21715// request. Use googleapi.IsNotModified to check whether the response
21716// error from Do is the result of In-None-Match.
21717func (c *ProjectsLocationsAgentsEnvironmentsExperimentsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsEnvironmentsExperimentsListCall {
21718	c.ifNoneMatch_ = entityTag
21719	return c
21720}
21721
21722// Context sets the context to be used in this call's Do method. Any
21723// pending HTTP request will be aborted if the provided context is
21724// canceled.
21725func (c *ProjectsLocationsAgentsEnvironmentsExperimentsListCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsExperimentsListCall {
21726	c.ctx_ = ctx
21727	return c
21728}
21729
21730// Header returns an http.Header that can be modified by the caller to
21731// add HTTP headers to the request.
21732func (c *ProjectsLocationsAgentsEnvironmentsExperimentsListCall) Header() http.Header {
21733	if c.header_ == nil {
21734		c.header_ = make(http.Header)
21735	}
21736	return c.header_
21737}
21738
21739func (c *ProjectsLocationsAgentsEnvironmentsExperimentsListCall) doRequest(alt string) (*http.Response, error) {
21740	reqHeaders := make(http.Header)
21741	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
21742	for k, v := range c.header_ {
21743		reqHeaders[k] = v
21744	}
21745	reqHeaders.Set("User-Agent", c.s.userAgent())
21746	if c.ifNoneMatch_ != "" {
21747		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
21748	}
21749	var body io.Reader = nil
21750	c.urlParams_.Set("alt", alt)
21751	c.urlParams_.Set("prettyPrint", "false")
21752	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/experiments")
21753	urls += "?" + c.urlParams_.Encode()
21754	req, err := http.NewRequest("GET", urls, body)
21755	if err != nil {
21756		return nil, err
21757	}
21758	req.Header = reqHeaders
21759	googleapi.Expand(req.URL, map[string]string{
21760		"parent": c.parent,
21761	})
21762	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21763}
21764
21765// Do executes the "dialogflow.projects.locations.agents.environments.experiments.list" call.
21766// Exactly one of *GoogleCloudDialogflowCxV3ListExperimentsResponse or
21767// error will be non-nil. Any non-2xx status code is an error. Response
21768// headers are in either
21769// *GoogleCloudDialogflowCxV3ListExperimentsResponse.ServerResponse.Heade
21770// r or (if a response was returned at all) in
21771// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
21772// whether the returned error was because http.StatusNotModified was
21773// returned.
21774func (c *ProjectsLocationsAgentsEnvironmentsExperimentsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3ListExperimentsResponse, error) {
21775	gensupport.SetOptions(c.urlParams_, opts...)
21776	res, err := c.doRequest("json")
21777	if res != nil && res.StatusCode == http.StatusNotModified {
21778		if res.Body != nil {
21779			res.Body.Close()
21780		}
21781		return nil, &googleapi.Error{
21782			Code:   res.StatusCode,
21783			Header: res.Header,
21784		}
21785	}
21786	if err != nil {
21787		return nil, err
21788	}
21789	defer googleapi.CloseBody(res)
21790	if err := googleapi.CheckResponse(res); err != nil {
21791		return nil, err
21792	}
21793	ret := &GoogleCloudDialogflowCxV3ListExperimentsResponse{
21794		ServerResponse: googleapi.ServerResponse{
21795			Header:         res.Header,
21796			HTTPStatusCode: res.StatusCode,
21797		},
21798	}
21799	target := &ret
21800	if err := gensupport.DecodeResponse(target, res); err != nil {
21801		return nil, err
21802	}
21803	return ret, nil
21804	// {
21805	//   "description": "Returns the list of all experiments in the specified Environment.",
21806	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/experiments",
21807	//   "httpMethod": "GET",
21808	//   "id": "dialogflow.projects.locations.agents.environments.experiments.list",
21809	//   "parameterOrder": [
21810	//     "parent"
21811	//   ],
21812	//   "parameters": {
21813	//     "pageSize": {
21814	//       "description": "The maximum number of items to return in a single page. By default 20 and at most 100.",
21815	//       "format": "int32",
21816	//       "location": "query",
21817	//       "type": "integer"
21818	//     },
21819	//     "pageToken": {
21820	//       "description": "The next_page_token value returned from a previous list request.",
21821	//       "location": "query",
21822	//       "type": "string"
21823	//     },
21824	//     "parent": {
21825	//       "description": "Required. The Environment to list all environments for. Format: `projects//locations//agents//environments/`.",
21826	//       "location": "path",
21827	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+$",
21828	//       "required": true,
21829	//       "type": "string"
21830	//     }
21831	//   },
21832	//   "path": "v3/{+parent}/experiments",
21833	//   "response": {
21834	//     "$ref": "GoogleCloudDialogflowCxV3ListExperimentsResponse"
21835	//   },
21836	//   "scopes": [
21837	//     "https://www.googleapis.com/auth/cloud-platform",
21838	//     "https://www.googleapis.com/auth/dialogflow"
21839	//   ]
21840	// }
21841
21842}
21843
21844// Pages invokes f for each page of results.
21845// A non-nil error returned from f will halt the iteration.
21846// The provided context supersedes any context provided to the Context method.
21847func (c *ProjectsLocationsAgentsEnvironmentsExperimentsListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3ListExperimentsResponse) error) error {
21848	c.ctx_ = ctx
21849	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
21850	for {
21851		x, err := c.Do()
21852		if err != nil {
21853			return err
21854		}
21855		if err := f(x); err != nil {
21856			return err
21857		}
21858		if x.NextPageToken == "" {
21859			return nil
21860		}
21861		c.PageToken(x.NextPageToken)
21862	}
21863}
21864
21865// method id "dialogflow.projects.locations.agents.environments.experiments.patch":
21866
21867type ProjectsLocationsAgentsEnvironmentsExperimentsPatchCall struct {
21868	s                                   *Service
21869	name                                string
21870	googleclouddialogflowcxv3experiment *GoogleCloudDialogflowCxV3Experiment
21871	urlParams_                          gensupport.URLParams
21872	ctx_                                context.Context
21873	header_                             http.Header
21874}
21875
21876// Patch: Updates the specified Experiment.
21877//
21878// - name: The name of the experiment. Format:
21879//   projects//locations//agents//environments//experiments/..
21880func (r *ProjectsLocationsAgentsEnvironmentsExperimentsService) Patch(name string, googleclouddialogflowcxv3experiment *GoogleCloudDialogflowCxV3Experiment) *ProjectsLocationsAgentsEnvironmentsExperimentsPatchCall {
21881	c := &ProjectsLocationsAgentsEnvironmentsExperimentsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21882	c.name = name
21883	c.googleclouddialogflowcxv3experiment = googleclouddialogflowcxv3experiment
21884	return c
21885}
21886
21887// UpdateMask sets the optional parameter "updateMask": Required. The
21888// mask to control which fields get updated.
21889func (c *ProjectsLocationsAgentsEnvironmentsExperimentsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsAgentsEnvironmentsExperimentsPatchCall {
21890	c.urlParams_.Set("updateMask", updateMask)
21891	return c
21892}
21893
21894// Fields allows partial responses to be retrieved. See
21895// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21896// for more information.
21897func (c *ProjectsLocationsAgentsEnvironmentsExperimentsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsExperimentsPatchCall {
21898	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21899	return c
21900}
21901
21902// Context sets the context to be used in this call's Do method. Any
21903// pending HTTP request will be aborted if the provided context is
21904// canceled.
21905func (c *ProjectsLocationsAgentsEnvironmentsExperimentsPatchCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsExperimentsPatchCall {
21906	c.ctx_ = ctx
21907	return c
21908}
21909
21910// Header returns an http.Header that can be modified by the caller to
21911// add HTTP headers to the request.
21912func (c *ProjectsLocationsAgentsEnvironmentsExperimentsPatchCall) Header() http.Header {
21913	if c.header_ == nil {
21914		c.header_ = make(http.Header)
21915	}
21916	return c.header_
21917}
21918
21919func (c *ProjectsLocationsAgentsEnvironmentsExperimentsPatchCall) doRequest(alt string) (*http.Response, error) {
21920	reqHeaders := make(http.Header)
21921	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
21922	for k, v := range c.header_ {
21923		reqHeaders[k] = v
21924	}
21925	reqHeaders.Set("User-Agent", c.s.userAgent())
21926	var body io.Reader = nil
21927	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3experiment)
21928	if err != nil {
21929		return nil, err
21930	}
21931	reqHeaders.Set("Content-Type", "application/json")
21932	c.urlParams_.Set("alt", alt)
21933	c.urlParams_.Set("prettyPrint", "false")
21934	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
21935	urls += "?" + c.urlParams_.Encode()
21936	req, err := http.NewRequest("PATCH", urls, body)
21937	if err != nil {
21938		return nil, err
21939	}
21940	req.Header = reqHeaders
21941	googleapi.Expand(req.URL, map[string]string{
21942		"name": c.name,
21943	})
21944	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21945}
21946
21947// Do executes the "dialogflow.projects.locations.agents.environments.experiments.patch" call.
21948// Exactly one of *GoogleCloudDialogflowCxV3Experiment or error will be
21949// non-nil. Any non-2xx status code is an error. Response headers are in
21950// either *GoogleCloudDialogflowCxV3Experiment.ServerResponse.Header or
21951// (if a response was returned at all) in
21952// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
21953// whether the returned error was because http.StatusNotModified was
21954// returned.
21955func (c *ProjectsLocationsAgentsEnvironmentsExperimentsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3Experiment, error) {
21956	gensupport.SetOptions(c.urlParams_, opts...)
21957	res, err := c.doRequest("json")
21958	if res != nil && res.StatusCode == http.StatusNotModified {
21959		if res.Body != nil {
21960			res.Body.Close()
21961		}
21962		return nil, &googleapi.Error{
21963			Code:   res.StatusCode,
21964			Header: res.Header,
21965		}
21966	}
21967	if err != nil {
21968		return nil, err
21969	}
21970	defer googleapi.CloseBody(res)
21971	if err := googleapi.CheckResponse(res); err != nil {
21972		return nil, err
21973	}
21974	ret := &GoogleCloudDialogflowCxV3Experiment{
21975		ServerResponse: googleapi.ServerResponse{
21976			Header:         res.Header,
21977			HTTPStatusCode: res.StatusCode,
21978		},
21979	}
21980	target := &ret
21981	if err := gensupport.DecodeResponse(target, res); err != nil {
21982		return nil, err
21983	}
21984	return ret, nil
21985	// {
21986	//   "description": "Updates the specified Experiment.",
21987	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/experiments/{experimentsId}",
21988	//   "httpMethod": "PATCH",
21989	//   "id": "dialogflow.projects.locations.agents.environments.experiments.patch",
21990	//   "parameterOrder": [
21991	//     "name"
21992	//   ],
21993	//   "parameters": {
21994	//     "name": {
21995	//       "description": "The name of the experiment. Format: projects//locations//agents//environments//experiments/..",
21996	//       "location": "path",
21997	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+/experiments/[^/]+$",
21998	//       "required": true,
21999	//       "type": "string"
22000	//     },
22001	//     "updateMask": {
22002	//       "description": "Required. The mask to control which fields get updated.",
22003	//       "format": "google-fieldmask",
22004	//       "location": "query",
22005	//       "type": "string"
22006	//     }
22007	//   },
22008	//   "path": "v3/{+name}",
22009	//   "request": {
22010	//     "$ref": "GoogleCloudDialogflowCxV3Experiment"
22011	//   },
22012	//   "response": {
22013	//     "$ref": "GoogleCloudDialogflowCxV3Experiment"
22014	//   },
22015	//   "scopes": [
22016	//     "https://www.googleapis.com/auth/cloud-platform",
22017	//     "https://www.googleapis.com/auth/dialogflow"
22018	//   ]
22019	// }
22020
22021}
22022
22023// method id "dialogflow.projects.locations.agents.environments.experiments.start":
22024
22025type ProjectsLocationsAgentsEnvironmentsExperimentsStartCall struct {
22026	s                                               *Service
22027	name                                            string
22028	googleclouddialogflowcxv3startexperimentrequest *GoogleCloudDialogflowCxV3StartExperimentRequest
22029	urlParams_                                      gensupport.URLParams
22030	ctx_                                            context.Context
22031	header_                                         http.Header
22032}
22033
22034// Start: Starts the specified Experiment. This rpc only changes the
22035// state of experiment from PENDING to RUNNING.
22036//
22037// - name: Resource name of the experiment to start. Format:
22038//   `projects//locations//agents//environments//experiments/`.
22039func (r *ProjectsLocationsAgentsEnvironmentsExperimentsService) Start(name string, googleclouddialogflowcxv3startexperimentrequest *GoogleCloudDialogflowCxV3StartExperimentRequest) *ProjectsLocationsAgentsEnvironmentsExperimentsStartCall {
22040	c := &ProjectsLocationsAgentsEnvironmentsExperimentsStartCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22041	c.name = name
22042	c.googleclouddialogflowcxv3startexperimentrequest = googleclouddialogflowcxv3startexperimentrequest
22043	return c
22044}
22045
22046// Fields allows partial responses to be retrieved. See
22047// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22048// for more information.
22049func (c *ProjectsLocationsAgentsEnvironmentsExperimentsStartCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsExperimentsStartCall {
22050	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22051	return c
22052}
22053
22054// Context sets the context to be used in this call's Do method. Any
22055// pending HTTP request will be aborted if the provided context is
22056// canceled.
22057func (c *ProjectsLocationsAgentsEnvironmentsExperimentsStartCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsExperimentsStartCall {
22058	c.ctx_ = ctx
22059	return c
22060}
22061
22062// Header returns an http.Header that can be modified by the caller to
22063// add HTTP headers to the request.
22064func (c *ProjectsLocationsAgentsEnvironmentsExperimentsStartCall) Header() http.Header {
22065	if c.header_ == nil {
22066		c.header_ = make(http.Header)
22067	}
22068	return c.header_
22069}
22070
22071func (c *ProjectsLocationsAgentsEnvironmentsExperimentsStartCall) doRequest(alt string) (*http.Response, error) {
22072	reqHeaders := make(http.Header)
22073	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
22074	for k, v := range c.header_ {
22075		reqHeaders[k] = v
22076	}
22077	reqHeaders.Set("User-Agent", c.s.userAgent())
22078	var body io.Reader = nil
22079	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3startexperimentrequest)
22080	if err != nil {
22081		return nil, err
22082	}
22083	reqHeaders.Set("Content-Type", "application/json")
22084	c.urlParams_.Set("alt", alt)
22085	c.urlParams_.Set("prettyPrint", "false")
22086	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}:start")
22087	urls += "?" + c.urlParams_.Encode()
22088	req, err := http.NewRequest("POST", urls, body)
22089	if err != nil {
22090		return nil, err
22091	}
22092	req.Header = reqHeaders
22093	googleapi.Expand(req.URL, map[string]string{
22094		"name": c.name,
22095	})
22096	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22097}
22098
22099// Do executes the "dialogflow.projects.locations.agents.environments.experiments.start" call.
22100// Exactly one of *GoogleCloudDialogflowCxV3Experiment or error will be
22101// non-nil. Any non-2xx status code is an error. Response headers are in
22102// either *GoogleCloudDialogflowCxV3Experiment.ServerResponse.Header or
22103// (if a response was returned at all) in
22104// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
22105// whether the returned error was because http.StatusNotModified was
22106// returned.
22107func (c *ProjectsLocationsAgentsEnvironmentsExperimentsStartCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3Experiment, error) {
22108	gensupport.SetOptions(c.urlParams_, opts...)
22109	res, err := c.doRequest("json")
22110	if res != nil && res.StatusCode == http.StatusNotModified {
22111		if res.Body != nil {
22112			res.Body.Close()
22113		}
22114		return nil, &googleapi.Error{
22115			Code:   res.StatusCode,
22116			Header: res.Header,
22117		}
22118	}
22119	if err != nil {
22120		return nil, err
22121	}
22122	defer googleapi.CloseBody(res)
22123	if err := googleapi.CheckResponse(res); err != nil {
22124		return nil, err
22125	}
22126	ret := &GoogleCloudDialogflowCxV3Experiment{
22127		ServerResponse: googleapi.ServerResponse{
22128			Header:         res.Header,
22129			HTTPStatusCode: res.StatusCode,
22130		},
22131	}
22132	target := &ret
22133	if err := gensupport.DecodeResponse(target, res); err != nil {
22134		return nil, err
22135	}
22136	return ret, nil
22137	// {
22138	//   "description": "Starts the specified Experiment. This rpc only changes the state of experiment from PENDING to RUNNING.",
22139	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/experiments/{experimentsId}:start",
22140	//   "httpMethod": "POST",
22141	//   "id": "dialogflow.projects.locations.agents.environments.experiments.start",
22142	//   "parameterOrder": [
22143	//     "name"
22144	//   ],
22145	//   "parameters": {
22146	//     "name": {
22147	//       "description": "Required. Resource name of the experiment to start. Format: `projects//locations//agents//environments//experiments/`.",
22148	//       "location": "path",
22149	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+/experiments/[^/]+$",
22150	//       "required": true,
22151	//       "type": "string"
22152	//     }
22153	//   },
22154	//   "path": "v3/{+name}:start",
22155	//   "request": {
22156	//     "$ref": "GoogleCloudDialogflowCxV3StartExperimentRequest"
22157	//   },
22158	//   "response": {
22159	//     "$ref": "GoogleCloudDialogflowCxV3Experiment"
22160	//   },
22161	//   "scopes": [
22162	//     "https://www.googleapis.com/auth/cloud-platform",
22163	//     "https://www.googleapis.com/auth/dialogflow"
22164	//   ]
22165	// }
22166
22167}
22168
22169// method id "dialogflow.projects.locations.agents.environments.experiments.stop":
22170
22171type ProjectsLocationsAgentsEnvironmentsExperimentsStopCall struct {
22172	s                                              *Service
22173	name                                           string
22174	googleclouddialogflowcxv3stopexperimentrequest *GoogleCloudDialogflowCxV3StopExperimentRequest
22175	urlParams_                                     gensupport.URLParams
22176	ctx_                                           context.Context
22177	header_                                        http.Header
22178}
22179
22180// Stop: Stops the specified Experiment. This rpc only changes the state
22181// of experiment from RUNNING to DONE.
22182//
22183// - name: Resource name of the experiment to stop. Format:
22184//   `projects//locations//agents//environments//experiments/`.
22185func (r *ProjectsLocationsAgentsEnvironmentsExperimentsService) Stop(name string, googleclouddialogflowcxv3stopexperimentrequest *GoogleCloudDialogflowCxV3StopExperimentRequest) *ProjectsLocationsAgentsEnvironmentsExperimentsStopCall {
22186	c := &ProjectsLocationsAgentsEnvironmentsExperimentsStopCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22187	c.name = name
22188	c.googleclouddialogflowcxv3stopexperimentrequest = googleclouddialogflowcxv3stopexperimentrequest
22189	return c
22190}
22191
22192// Fields allows partial responses to be retrieved. See
22193// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22194// for more information.
22195func (c *ProjectsLocationsAgentsEnvironmentsExperimentsStopCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsExperimentsStopCall {
22196	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22197	return c
22198}
22199
22200// Context sets the context to be used in this call's Do method. Any
22201// pending HTTP request will be aborted if the provided context is
22202// canceled.
22203func (c *ProjectsLocationsAgentsEnvironmentsExperimentsStopCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsExperimentsStopCall {
22204	c.ctx_ = ctx
22205	return c
22206}
22207
22208// Header returns an http.Header that can be modified by the caller to
22209// add HTTP headers to the request.
22210func (c *ProjectsLocationsAgentsEnvironmentsExperimentsStopCall) Header() http.Header {
22211	if c.header_ == nil {
22212		c.header_ = make(http.Header)
22213	}
22214	return c.header_
22215}
22216
22217func (c *ProjectsLocationsAgentsEnvironmentsExperimentsStopCall) doRequest(alt string) (*http.Response, error) {
22218	reqHeaders := make(http.Header)
22219	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
22220	for k, v := range c.header_ {
22221		reqHeaders[k] = v
22222	}
22223	reqHeaders.Set("User-Agent", c.s.userAgent())
22224	var body io.Reader = nil
22225	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3stopexperimentrequest)
22226	if err != nil {
22227		return nil, err
22228	}
22229	reqHeaders.Set("Content-Type", "application/json")
22230	c.urlParams_.Set("alt", alt)
22231	c.urlParams_.Set("prettyPrint", "false")
22232	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}:stop")
22233	urls += "?" + c.urlParams_.Encode()
22234	req, err := http.NewRequest("POST", urls, body)
22235	if err != nil {
22236		return nil, err
22237	}
22238	req.Header = reqHeaders
22239	googleapi.Expand(req.URL, map[string]string{
22240		"name": c.name,
22241	})
22242	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22243}
22244
22245// Do executes the "dialogflow.projects.locations.agents.environments.experiments.stop" call.
22246// Exactly one of *GoogleCloudDialogflowCxV3Experiment or error will be
22247// non-nil. Any non-2xx status code is an error. Response headers are in
22248// either *GoogleCloudDialogflowCxV3Experiment.ServerResponse.Header or
22249// (if a response was returned at all) in
22250// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
22251// whether the returned error was because http.StatusNotModified was
22252// returned.
22253func (c *ProjectsLocationsAgentsEnvironmentsExperimentsStopCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3Experiment, error) {
22254	gensupport.SetOptions(c.urlParams_, opts...)
22255	res, err := c.doRequest("json")
22256	if res != nil && res.StatusCode == http.StatusNotModified {
22257		if res.Body != nil {
22258			res.Body.Close()
22259		}
22260		return nil, &googleapi.Error{
22261			Code:   res.StatusCode,
22262			Header: res.Header,
22263		}
22264	}
22265	if err != nil {
22266		return nil, err
22267	}
22268	defer googleapi.CloseBody(res)
22269	if err := googleapi.CheckResponse(res); err != nil {
22270		return nil, err
22271	}
22272	ret := &GoogleCloudDialogflowCxV3Experiment{
22273		ServerResponse: googleapi.ServerResponse{
22274			Header:         res.Header,
22275			HTTPStatusCode: res.StatusCode,
22276		},
22277	}
22278	target := &ret
22279	if err := gensupport.DecodeResponse(target, res); err != nil {
22280		return nil, err
22281	}
22282	return ret, nil
22283	// {
22284	//   "description": "Stops the specified Experiment. This rpc only changes the state of experiment from RUNNING to DONE.",
22285	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/experiments/{experimentsId}:stop",
22286	//   "httpMethod": "POST",
22287	//   "id": "dialogflow.projects.locations.agents.environments.experiments.stop",
22288	//   "parameterOrder": [
22289	//     "name"
22290	//   ],
22291	//   "parameters": {
22292	//     "name": {
22293	//       "description": "Required. Resource name of the experiment to stop. Format: `projects//locations//agents//environments//experiments/`.",
22294	//       "location": "path",
22295	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+/experiments/[^/]+$",
22296	//       "required": true,
22297	//       "type": "string"
22298	//     }
22299	//   },
22300	//   "path": "v3/{+name}:stop",
22301	//   "request": {
22302	//     "$ref": "GoogleCloudDialogflowCxV3StopExperimentRequest"
22303	//   },
22304	//   "response": {
22305	//     "$ref": "GoogleCloudDialogflowCxV3Experiment"
22306	//   },
22307	//   "scopes": [
22308	//     "https://www.googleapis.com/auth/cloud-platform",
22309	//     "https://www.googleapis.com/auth/dialogflow"
22310	//   ]
22311	// }
22312
22313}
22314
22315// method id "dialogflow.projects.locations.agents.environments.sessions.detectIntent":
22316
22317type ProjectsLocationsAgentsEnvironmentsSessionsDetectIntentCall struct {
22318	s                                            *Service
22319	sessionid                                    string
22320	googleclouddialogflowcxv3detectintentrequest *GoogleCloudDialogflowCxV3DetectIntentRequest
22321	urlParams_                                   gensupport.URLParams
22322	ctx_                                         context.Context
22323	header_                                      http.Header
22324}
22325
22326// DetectIntent: Processes a natural language query and returns
22327// structured, actionable data as a result. This method is not
22328// idempotent, because it may cause session entity types to be updated,
22329// which in turn might affect results of future queries. Note: Always
22330// use agent versions for production traffic. See Versions and
22331// environments
22332// (https://cloud.google.com/dialogflow/cx/docs/concept/version).
22333//
22334// - session: The name of the session this query is sent to. Format:
22335//   `projects//locations//agents//sessions/` or
22336//   `projects//locations//agents//environments//sessions/`. If
22337//   `Environment ID` is not specified, we assume default 'draft'
22338//   environment. It's up to the API caller to choose an appropriate
22339//   `Session ID`. It can be a random number or some type of session
22340//   identifiers (preferably hashed). The length of the `Session ID`
22341//   must not exceed 36 characters. For more information, see the
22342//   sessions guide
22343//   (https://cloud.google.com/dialogflow/cx/docs/concept/session).
22344//   Note: Always use agent versions for production traffic. See
22345//   Versions and environments
22346//   (https://cloud.google.com/dialogflow/cx/docs/concept/version).
22347func (r *ProjectsLocationsAgentsEnvironmentsSessionsService) DetectIntent(sessionid string, googleclouddialogflowcxv3detectintentrequest *GoogleCloudDialogflowCxV3DetectIntentRequest) *ProjectsLocationsAgentsEnvironmentsSessionsDetectIntentCall {
22348	c := &ProjectsLocationsAgentsEnvironmentsSessionsDetectIntentCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22349	c.sessionid = sessionid
22350	c.googleclouddialogflowcxv3detectintentrequest = googleclouddialogflowcxv3detectintentrequest
22351	return c
22352}
22353
22354// Fields allows partial responses to be retrieved. See
22355// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22356// for more information.
22357func (c *ProjectsLocationsAgentsEnvironmentsSessionsDetectIntentCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsSessionsDetectIntentCall {
22358	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22359	return c
22360}
22361
22362// Context sets the context to be used in this call's Do method. Any
22363// pending HTTP request will be aborted if the provided context is
22364// canceled.
22365func (c *ProjectsLocationsAgentsEnvironmentsSessionsDetectIntentCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsSessionsDetectIntentCall {
22366	c.ctx_ = ctx
22367	return c
22368}
22369
22370// Header returns an http.Header that can be modified by the caller to
22371// add HTTP headers to the request.
22372func (c *ProjectsLocationsAgentsEnvironmentsSessionsDetectIntentCall) Header() http.Header {
22373	if c.header_ == nil {
22374		c.header_ = make(http.Header)
22375	}
22376	return c.header_
22377}
22378
22379func (c *ProjectsLocationsAgentsEnvironmentsSessionsDetectIntentCall) doRequest(alt string) (*http.Response, error) {
22380	reqHeaders := make(http.Header)
22381	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
22382	for k, v := range c.header_ {
22383		reqHeaders[k] = v
22384	}
22385	reqHeaders.Set("User-Agent", c.s.userAgent())
22386	var body io.Reader = nil
22387	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3detectintentrequest)
22388	if err != nil {
22389		return nil, err
22390	}
22391	reqHeaders.Set("Content-Type", "application/json")
22392	c.urlParams_.Set("alt", alt)
22393	c.urlParams_.Set("prettyPrint", "false")
22394	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+session}:detectIntent")
22395	urls += "?" + c.urlParams_.Encode()
22396	req, err := http.NewRequest("POST", urls, body)
22397	if err != nil {
22398		return nil, err
22399	}
22400	req.Header = reqHeaders
22401	googleapi.Expand(req.URL, map[string]string{
22402		"session": c.sessionid,
22403	})
22404	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22405}
22406
22407// Do executes the "dialogflow.projects.locations.agents.environments.sessions.detectIntent" call.
22408// Exactly one of *GoogleCloudDialogflowCxV3DetectIntentResponse or
22409// error will be non-nil. Any non-2xx status code is an error. Response
22410// headers are in either
22411// *GoogleCloudDialogflowCxV3DetectIntentResponse.ServerResponse.Header
22412// or (if a response was returned at all) in
22413// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
22414// whether the returned error was because http.StatusNotModified was
22415// returned.
22416func (c *ProjectsLocationsAgentsEnvironmentsSessionsDetectIntentCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3DetectIntentResponse, error) {
22417	gensupport.SetOptions(c.urlParams_, opts...)
22418	res, err := c.doRequest("json")
22419	if res != nil && res.StatusCode == http.StatusNotModified {
22420		if res.Body != nil {
22421			res.Body.Close()
22422		}
22423		return nil, &googleapi.Error{
22424			Code:   res.StatusCode,
22425			Header: res.Header,
22426		}
22427	}
22428	if err != nil {
22429		return nil, err
22430	}
22431	defer googleapi.CloseBody(res)
22432	if err := googleapi.CheckResponse(res); err != nil {
22433		return nil, err
22434	}
22435	ret := &GoogleCloudDialogflowCxV3DetectIntentResponse{
22436		ServerResponse: googleapi.ServerResponse{
22437			Header:         res.Header,
22438			HTTPStatusCode: res.StatusCode,
22439		},
22440	}
22441	target := &ret
22442	if err := gensupport.DecodeResponse(target, res); err != nil {
22443		return nil, err
22444	}
22445	return ret, nil
22446	// {
22447	//   "description": "Processes a natural language query and returns structured, actionable data as a result. This method is not idempotent, because it may cause session entity types to be updated, which in turn might affect results of future queries. Note: Always use agent versions for production traffic. See [Versions and environments](https://cloud.google.com/dialogflow/cx/docs/concept/version).",
22448	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/sessions/{sessionsId}:detectIntent",
22449	//   "httpMethod": "POST",
22450	//   "id": "dialogflow.projects.locations.agents.environments.sessions.detectIntent",
22451	//   "parameterOrder": [
22452	//     "session"
22453	//   ],
22454	//   "parameters": {
22455	//     "session": {
22456	//       "description": "Required. The name of the session this query is sent to. Format: `projects//locations//agents//sessions/` or `projects//locations//agents//environments//sessions/`. If `Environment ID` is not specified, we assume default 'draft' environment. It's up to the API caller to choose an appropriate `Session ID`. It can be a random number or some type of session identifiers (preferably hashed). The length of the `Session ID` must not exceed 36 characters. For more information, see the [sessions guide](https://cloud.google.com/dialogflow/cx/docs/concept/session). Note: Always use agent versions for production traffic. See [Versions and environments](https://cloud.google.com/dialogflow/cx/docs/concept/version).",
22457	//       "location": "path",
22458	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+/sessions/[^/]+$",
22459	//       "required": true,
22460	//       "type": "string"
22461	//     }
22462	//   },
22463	//   "path": "v3/{+session}:detectIntent",
22464	//   "request": {
22465	//     "$ref": "GoogleCloudDialogflowCxV3DetectIntentRequest"
22466	//   },
22467	//   "response": {
22468	//     "$ref": "GoogleCloudDialogflowCxV3DetectIntentResponse"
22469	//   },
22470	//   "scopes": [
22471	//     "https://www.googleapis.com/auth/cloud-platform",
22472	//     "https://www.googleapis.com/auth/dialogflow"
22473	//   ]
22474	// }
22475
22476}
22477
22478// method id "dialogflow.projects.locations.agents.environments.sessions.fulfillIntent":
22479
22480type ProjectsLocationsAgentsEnvironmentsSessionsFulfillIntentCall struct {
22481	s                                             *Service
22482	sessionid                                     string
22483	googleclouddialogflowcxv3fulfillintentrequest *GoogleCloudDialogflowCxV3FulfillIntentRequest
22484	urlParams_                                    gensupport.URLParams
22485	ctx_                                          context.Context
22486	header_                                       http.Header
22487}
22488
22489// FulfillIntent: Fulfills a matched intent returned by MatchIntent.
22490// Must be called after MatchIntent, with input from
22491// MatchIntentResponse. Otherwise, the behavior is undefined.
22492//
22493// - session: The name of the session this query is sent to. Format:
22494//   `projects//locations//agents//sessions/` or
22495//   `projects//locations//agents//environments//sessions/`. If
22496//   `Environment ID` is not specified, we assume default 'draft'
22497//   environment. It's up to the API caller to choose an appropriate
22498//   `Session ID`. It can be a random number or some type of session
22499//   identifiers (preferably hashed). The length of the `Session ID`
22500//   must not exceed 36 characters. For more information, see the
22501//   sessions guide
22502//   (https://cloud.google.com/dialogflow/cx/docs/concept/session).
22503func (r *ProjectsLocationsAgentsEnvironmentsSessionsService) FulfillIntent(sessionid string, googleclouddialogflowcxv3fulfillintentrequest *GoogleCloudDialogflowCxV3FulfillIntentRequest) *ProjectsLocationsAgentsEnvironmentsSessionsFulfillIntentCall {
22504	c := &ProjectsLocationsAgentsEnvironmentsSessionsFulfillIntentCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22505	c.sessionid = sessionid
22506	c.googleclouddialogflowcxv3fulfillintentrequest = googleclouddialogflowcxv3fulfillintentrequest
22507	return c
22508}
22509
22510// Fields allows partial responses to be retrieved. See
22511// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22512// for more information.
22513func (c *ProjectsLocationsAgentsEnvironmentsSessionsFulfillIntentCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsSessionsFulfillIntentCall {
22514	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22515	return c
22516}
22517
22518// Context sets the context to be used in this call's Do method. Any
22519// pending HTTP request will be aborted if the provided context is
22520// canceled.
22521func (c *ProjectsLocationsAgentsEnvironmentsSessionsFulfillIntentCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsSessionsFulfillIntentCall {
22522	c.ctx_ = ctx
22523	return c
22524}
22525
22526// Header returns an http.Header that can be modified by the caller to
22527// add HTTP headers to the request.
22528func (c *ProjectsLocationsAgentsEnvironmentsSessionsFulfillIntentCall) Header() http.Header {
22529	if c.header_ == nil {
22530		c.header_ = make(http.Header)
22531	}
22532	return c.header_
22533}
22534
22535func (c *ProjectsLocationsAgentsEnvironmentsSessionsFulfillIntentCall) doRequest(alt string) (*http.Response, error) {
22536	reqHeaders := make(http.Header)
22537	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
22538	for k, v := range c.header_ {
22539		reqHeaders[k] = v
22540	}
22541	reqHeaders.Set("User-Agent", c.s.userAgent())
22542	var body io.Reader = nil
22543	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3fulfillintentrequest)
22544	if err != nil {
22545		return nil, err
22546	}
22547	reqHeaders.Set("Content-Type", "application/json")
22548	c.urlParams_.Set("alt", alt)
22549	c.urlParams_.Set("prettyPrint", "false")
22550	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+session}:fulfillIntent")
22551	urls += "?" + c.urlParams_.Encode()
22552	req, err := http.NewRequest("POST", urls, body)
22553	if err != nil {
22554		return nil, err
22555	}
22556	req.Header = reqHeaders
22557	googleapi.Expand(req.URL, map[string]string{
22558		"session": c.sessionid,
22559	})
22560	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22561}
22562
22563// Do executes the "dialogflow.projects.locations.agents.environments.sessions.fulfillIntent" call.
22564// Exactly one of *GoogleCloudDialogflowCxV3FulfillIntentResponse or
22565// error will be non-nil. Any non-2xx status code is an error. Response
22566// headers are in either
22567// *GoogleCloudDialogflowCxV3FulfillIntentResponse.ServerResponse.Header
22568// or (if a response was returned at all) in
22569// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
22570// whether the returned error was because http.StatusNotModified was
22571// returned.
22572func (c *ProjectsLocationsAgentsEnvironmentsSessionsFulfillIntentCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3FulfillIntentResponse, error) {
22573	gensupport.SetOptions(c.urlParams_, opts...)
22574	res, err := c.doRequest("json")
22575	if res != nil && res.StatusCode == http.StatusNotModified {
22576		if res.Body != nil {
22577			res.Body.Close()
22578		}
22579		return nil, &googleapi.Error{
22580			Code:   res.StatusCode,
22581			Header: res.Header,
22582		}
22583	}
22584	if err != nil {
22585		return nil, err
22586	}
22587	defer googleapi.CloseBody(res)
22588	if err := googleapi.CheckResponse(res); err != nil {
22589		return nil, err
22590	}
22591	ret := &GoogleCloudDialogflowCxV3FulfillIntentResponse{
22592		ServerResponse: googleapi.ServerResponse{
22593			Header:         res.Header,
22594			HTTPStatusCode: res.StatusCode,
22595		},
22596	}
22597	target := &ret
22598	if err := gensupport.DecodeResponse(target, res); err != nil {
22599		return nil, err
22600	}
22601	return ret, nil
22602	// {
22603	//   "description": "Fulfills a matched intent returned by MatchIntent. Must be called after MatchIntent, with input from MatchIntentResponse. Otherwise, the behavior is undefined.",
22604	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/sessions/{sessionsId}:fulfillIntent",
22605	//   "httpMethod": "POST",
22606	//   "id": "dialogflow.projects.locations.agents.environments.sessions.fulfillIntent",
22607	//   "parameterOrder": [
22608	//     "session"
22609	//   ],
22610	//   "parameters": {
22611	//     "session": {
22612	//       "description": "Required. The name of the session this query is sent to. Format: `projects//locations//agents//sessions/` or `projects//locations//agents//environments//sessions/`. If `Environment ID` is not specified, we assume default 'draft' environment. It's up to the API caller to choose an appropriate `Session ID`. It can be a random number or some type of session identifiers (preferably hashed). The length of the `Session ID` must not exceed 36 characters. For more information, see the [sessions guide](https://cloud.google.com/dialogflow/cx/docs/concept/session).",
22613	//       "location": "path",
22614	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+/sessions/[^/]+$",
22615	//       "required": true,
22616	//       "type": "string"
22617	//     }
22618	//   },
22619	//   "path": "v3/{+session}:fulfillIntent",
22620	//   "request": {
22621	//     "$ref": "GoogleCloudDialogflowCxV3FulfillIntentRequest"
22622	//   },
22623	//   "response": {
22624	//     "$ref": "GoogleCloudDialogflowCxV3FulfillIntentResponse"
22625	//   },
22626	//   "scopes": [
22627	//     "https://www.googleapis.com/auth/cloud-platform",
22628	//     "https://www.googleapis.com/auth/dialogflow"
22629	//   ]
22630	// }
22631
22632}
22633
22634// method id "dialogflow.projects.locations.agents.environments.sessions.matchIntent":
22635
22636type ProjectsLocationsAgentsEnvironmentsSessionsMatchIntentCall struct {
22637	s                                           *Service
22638	sessionid                                   string
22639	googleclouddialogflowcxv3matchintentrequest *GoogleCloudDialogflowCxV3MatchIntentRequest
22640	urlParams_                                  gensupport.URLParams
22641	ctx_                                        context.Context
22642	header_                                     http.Header
22643}
22644
22645// MatchIntent: Returns preliminary intent match results, doesn't change
22646// the session status.
22647//
22648// - session: The name of the session this query is sent to. Format:
22649//   `projects//locations//agents//sessions/` or
22650//   `projects//locations//agents//environments//sessions/`. If
22651//   `Environment ID` is not specified, we assume default 'draft'
22652//   environment. It's up to the API caller to choose an appropriate
22653//   `Session ID`. It can be a random number or some type of session
22654//   identifiers (preferably hashed). The length of the `Session ID`
22655//   must not exceed 36 characters. For more information, see the
22656//   sessions guide
22657//   (https://cloud.google.com/dialogflow/cx/docs/concept/session).
22658func (r *ProjectsLocationsAgentsEnvironmentsSessionsService) MatchIntent(sessionid string, googleclouddialogflowcxv3matchintentrequest *GoogleCloudDialogflowCxV3MatchIntentRequest) *ProjectsLocationsAgentsEnvironmentsSessionsMatchIntentCall {
22659	c := &ProjectsLocationsAgentsEnvironmentsSessionsMatchIntentCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22660	c.sessionid = sessionid
22661	c.googleclouddialogflowcxv3matchintentrequest = googleclouddialogflowcxv3matchintentrequest
22662	return c
22663}
22664
22665// Fields allows partial responses to be retrieved. See
22666// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22667// for more information.
22668func (c *ProjectsLocationsAgentsEnvironmentsSessionsMatchIntentCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsSessionsMatchIntentCall {
22669	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22670	return c
22671}
22672
22673// Context sets the context to be used in this call's Do method. Any
22674// pending HTTP request will be aborted if the provided context is
22675// canceled.
22676func (c *ProjectsLocationsAgentsEnvironmentsSessionsMatchIntentCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsSessionsMatchIntentCall {
22677	c.ctx_ = ctx
22678	return c
22679}
22680
22681// Header returns an http.Header that can be modified by the caller to
22682// add HTTP headers to the request.
22683func (c *ProjectsLocationsAgentsEnvironmentsSessionsMatchIntentCall) Header() http.Header {
22684	if c.header_ == nil {
22685		c.header_ = make(http.Header)
22686	}
22687	return c.header_
22688}
22689
22690func (c *ProjectsLocationsAgentsEnvironmentsSessionsMatchIntentCall) doRequest(alt string) (*http.Response, error) {
22691	reqHeaders := make(http.Header)
22692	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
22693	for k, v := range c.header_ {
22694		reqHeaders[k] = v
22695	}
22696	reqHeaders.Set("User-Agent", c.s.userAgent())
22697	var body io.Reader = nil
22698	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3matchintentrequest)
22699	if err != nil {
22700		return nil, err
22701	}
22702	reqHeaders.Set("Content-Type", "application/json")
22703	c.urlParams_.Set("alt", alt)
22704	c.urlParams_.Set("prettyPrint", "false")
22705	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+session}:matchIntent")
22706	urls += "?" + c.urlParams_.Encode()
22707	req, err := http.NewRequest("POST", urls, body)
22708	if err != nil {
22709		return nil, err
22710	}
22711	req.Header = reqHeaders
22712	googleapi.Expand(req.URL, map[string]string{
22713		"session": c.sessionid,
22714	})
22715	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22716}
22717
22718// Do executes the "dialogflow.projects.locations.agents.environments.sessions.matchIntent" call.
22719// Exactly one of *GoogleCloudDialogflowCxV3MatchIntentResponse or error
22720// will be non-nil. Any non-2xx status code is an error. Response
22721// headers are in either
22722// *GoogleCloudDialogflowCxV3MatchIntentResponse.ServerResponse.Header
22723// or (if a response was returned at all) in
22724// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
22725// whether the returned error was because http.StatusNotModified was
22726// returned.
22727func (c *ProjectsLocationsAgentsEnvironmentsSessionsMatchIntentCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3MatchIntentResponse, error) {
22728	gensupport.SetOptions(c.urlParams_, opts...)
22729	res, err := c.doRequest("json")
22730	if res != nil && res.StatusCode == http.StatusNotModified {
22731		if res.Body != nil {
22732			res.Body.Close()
22733		}
22734		return nil, &googleapi.Error{
22735			Code:   res.StatusCode,
22736			Header: res.Header,
22737		}
22738	}
22739	if err != nil {
22740		return nil, err
22741	}
22742	defer googleapi.CloseBody(res)
22743	if err := googleapi.CheckResponse(res); err != nil {
22744		return nil, err
22745	}
22746	ret := &GoogleCloudDialogflowCxV3MatchIntentResponse{
22747		ServerResponse: googleapi.ServerResponse{
22748			Header:         res.Header,
22749			HTTPStatusCode: res.StatusCode,
22750		},
22751	}
22752	target := &ret
22753	if err := gensupport.DecodeResponse(target, res); err != nil {
22754		return nil, err
22755	}
22756	return ret, nil
22757	// {
22758	//   "description": "Returns preliminary intent match results, doesn't change the session status.",
22759	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/sessions/{sessionsId}:matchIntent",
22760	//   "httpMethod": "POST",
22761	//   "id": "dialogflow.projects.locations.agents.environments.sessions.matchIntent",
22762	//   "parameterOrder": [
22763	//     "session"
22764	//   ],
22765	//   "parameters": {
22766	//     "session": {
22767	//       "description": "Required. The name of the session this query is sent to. Format: `projects//locations//agents//sessions/` or `projects//locations//agents//environments//sessions/`. If `Environment ID` is not specified, we assume default 'draft' environment. It's up to the API caller to choose an appropriate `Session ID`. It can be a random number or some type of session identifiers (preferably hashed). The length of the `Session ID` must not exceed 36 characters. For more information, see the [sessions guide](https://cloud.google.com/dialogflow/cx/docs/concept/session).",
22768	//       "location": "path",
22769	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+/sessions/[^/]+$",
22770	//       "required": true,
22771	//       "type": "string"
22772	//     }
22773	//   },
22774	//   "path": "v3/{+session}:matchIntent",
22775	//   "request": {
22776	//     "$ref": "GoogleCloudDialogflowCxV3MatchIntentRequest"
22777	//   },
22778	//   "response": {
22779	//     "$ref": "GoogleCloudDialogflowCxV3MatchIntentResponse"
22780	//   },
22781	//   "scopes": [
22782	//     "https://www.googleapis.com/auth/cloud-platform",
22783	//     "https://www.googleapis.com/auth/dialogflow"
22784	//   ]
22785	// }
22786
22787}
22788
22789// method id "dialogflow.projects.locations.agents.environments.sessions.entityTypes.create":
22790
22791type ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreateCall struct {
22792	s                                          *Service
22793	parent                                     string
22794	googleclouddialogflowcxv3sessionentitytype *GoogleCloudDialogflowCxV3SessionEntityType
22795	urlParams_                                 gensupport.URLParams
22796	ctx_                                       context.Context
22797	header_                                    http.Header
22798}
22799
22800// Create: Creates a session entity type.
22801//
22802// - parent: The session to create a session entity type for. Format:
22803//   `projects//locations//agents//sessions/` or
22804//   `projects//locations//agents//environments//sessions/`. If
22805//   `Environment ID` is not specified, we assume default 'draft'
22806//   environment.
22807func (r *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesService) Create(parent string, googleclouddialogflowcxv3sessionentitytype *GoogleCloudDialogflowCxV3SessionEntityType) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreateCall {
22808	c := &ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22809	c.parent = parent
22810	c.googleclouddialogflowcxv3sessionentitytype = googleclouddialogflowcxv3sessionentitytype
22811	return c
22812}
22813
22814// Fields allows partial responses to be retrieved. See
22815// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22816// for more information.
22817func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreateCall {
22818	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22819	return c
22820}
22821
22822// Context sets the context to be used in this call's Do method. Any
22823// pending HTTP request will be aborted if the provided context is
22824// canceled.
22825func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreateCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreateCall {
22826	c.ctx_ = ctx
22827	return c
22828}
22829
22830// Header returns an http.Header that can be modified by the caller to
22831// add HTTP headers to the request.
22832func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreateCall) Header() http.Header {
22833	if c.header_ == nil {
22834		c.header_ = make(http.Header)
22835	}
22836	return c.header_
22837}
22838
22839func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreateCall) doRequest(alt string) (*http.Response, error) {
22840	reqHeaders := make(http.Header)
22841	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
22842	for k, v := range c.header_ {
22843		reqHeaders[k] = v
22844	}
22845	reqHeaders.Set("User-Agent", c.s.userAgent())
22846	var body io.Reader = nil
22847	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3sessionentitytype)
22848	if err != nil {
22849		return nil, err
22850	}
22851	reqHeaders.Set("Content-Type", "application/json")
22852	c.urlParams_.Set("alt", alt)
22853	c.urlParams_.Set("prettyPrint", "false")
22854	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/entityTypes")
22855	urls += "?" + c.urlParams_.Encode()
22856	req, err := http.NewRequest("POST", urls, body)
22857	if err != nil {
22858		return nil, err
22859	}
22860	req.Header = reqHeaders
22861	googleapi.Expand(req.URL, map[string]string{
22862		"parent": c.parent,
22863	})
22864	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22865}
22866
22867// Do executes the "dialogflow.projects.locations.agents.environments.sessions.entityTypes.create" call.
22868// Exactly one of *GoogleCloudDialogflowCxV3SessionEntityType or error
22869// will be non-nil. Any non-2xx status code is an error. Response
22870// headers are in either
22871// *GoogleCloudDialogflowCxV3SessionEntityType.ServerResponse.Header or
22872// (if a response was returned at all) in
22873// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
22874// whether the returned error was because http.StatusNotModified was
22875// returned.
22876func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3SessionEntityType, error) {
22877	gensupport.SetOptions(c.urlParams_, opts...)
22878	res, err := c.doRequest("json")
22879	if res != nil && res.StatusCode == http.StatusNotModified {
22880		if res.Body != nil {
22881			res.Body.Close()
22882		}
22883		return nil, &googleapi.Error{
22884			Code:   res.StatusCode,
22885			Header: res.Header,
22886		}
22887	}
22888	if err != nil {
22889		return nil, err
22890	}
22891	defer googleapi.CloseBody(res)
22892	if err := googleapi.CheckResponse(res); err != nil {
22893		return nil, err
22894	}
22895	ret := &GoogleCloudDialogflowCxV3SessionEntityType{
22896		ServerResponse: googleapi.ServerResponse{
22897			Header:         res.Header,
22898			HTTPStatusCode: res.StatusCode,
22899		},
22900	}
22901	target := &ret
22902	if err := gensupport.DecodeResponse(target, res); err != nil {
22903		return nil, err
22904	}
22905	return ret, nil
22906	// {
22907	//   "description": "Creates a session entity type.",
22908	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/sessions/{sessionsId}/entityTypes",
22909	//   "httpMethod": "POST",
22910	//   "id": "dialogflow.projects.locations.agents.environments.sessions.entityTypes.create",
22911	//   "parameterOrder": [
22912	//     "parent"
22913	//   ],
22914	//   "parameters": {
22915	//     "parent": {
22916	//       "description": "Required. The session to create a session entity type for. Format: `projects//locations//agents//sessions/` or `projects//locations//agents//environments//sessions/`. If `Environment ID` is not specified, we assume default 'draft' environment.",
22917	//       "location": "path",
22918	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+/sessions/[^/]+$",
22919	//       "required": true,
22920	//       "type": "string"
22921	//     }
22922	//   },
22923	//   "path": "v3/{+parent}/entityTypes",
22924	//   "request": {
22925	//     "$ref": "GoogleCloudDialogflowCxV3SessionEntityType"
22926	//   },
22927	//   "response": {
22928	//     "$ref": "GoogleCloudDialogflowCxV3SessionEntityType"
22929	//   },
22930	//   "scopes": [
22931	//     "https://www.googleapis.com/auth/cloud-platform",
22932	//     "https://www.googleapis.com/auth/dialogflow"
22933	//   ]
22934	// }
22935
22936}
22937
22938// method id "dialogflow.projects.locations.agents.environments.sessions.entityTypes.delete":
22939
22940type ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDeleteCall struct {
22941	s          *Service
22942	name       string
22943	urlParams_ gensupport.URLParams
22944	ctx_       context.Context
22945	header_    http.Header
22946}
22947
22948// Delete: Deletes the specified session entity type.
22949//
22950// - name: The name of the session entity type to delete. Format:
22951//   `projects//locations//agents//sessions//entityTypes/` or
22952//   `projects//locations//agents//environments//sessions//entityTypes/`.
22953//    If `Environment ID` is not specified, we assume default 'draft'
22954//   environment.
22955func (r *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesService) Delete(name string) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDeleteCall {
22956	c := &ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22957	c.name = name
22958	return c
22959}
22960
22961// Fields allows partial responses to be retrieved. See
22962// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22963// for more information.
22964func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDeleteCall {
22965	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22966	return c
22967}
22968
22969// Context sets the context to be used in this call's Do method. Any
22970// pending HTTP request will be aborted if the provided context is
22971// canceled.
22972func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDeleteCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDeleteCall {
22973	c.ctx_ = ctx
22974	return c
22975}
22976
22977// Header returns an http.Header that can be modified by the caller to
22978// add HTTP headers to the request.
22979func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDeleteCall) Header() http.Header {
22980	if c.header_ == nil {
22981		c.header_ = make(http.Header)
22982	}
22983	return c.header_
22984}
22985
22986func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDeleteCall) doRequest(alt string) (*http.Response, error) {
22987	reqHeaders := make(http.Header)
22988	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
22989	for k, v := range c.header_ {
22990		reqHeaders[k] = v
22991	}
22992	reqHeaders.Set("User-Agent", c.s.userAgent())
22993	var body io.Reader = nil
22994	c.urlParams_.Set("alt", alt)
22995	c.urlParams_.Set("prettyPrint", "false")
22996	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
22997	urls += "?" + c.urlParams_.Encode()
22998	req, err := http.NewRequest("DELETE", urls, body)
22999	if err != nil {
23000		return nil, err
23001	}
23002	req.Header = reqHeaders
23003	googleapi.Expand(req.URL, map[string]string{
23004		"name": c.name,
23005	})
23006	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23007}
23008
23009// Do executes the "dialogflow.projects.locations.agents.environments.sessions.entityTypes.delete" call.
23010// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
23011// non-2xx status code is an error. Response headers are in either
23012// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
23013// returned at all) in error.(*googleapi.Error).Header. Use
23014// googleapi.IsNotModified to check whether the returned error was
23015// because http.StatusNotModified was returned.
23016func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
23017	gensupport.SetOptions(c.urlParams_, opts...)
23018	res, err := c.doRequest("json")
23019	if res != nil && res.StatusCode == http.StatusNotModified {
23020		if res.Body != nil {
23021			res.Body.Close()
23022		}
23023		return nil, &googleapi.Error{
23024			Code:   res.StatusCode,
23025			Header: res.Header,
23026		}
23027	}
23028	if err != nil {
23029		return nil, err
23030	}
23031	defer googleapi.CloseBody(res)
23032	if err := googleapi.CheckResponse(res); err != nil {
23033		return nil, err
23034	}
23035	ret := &GoogleProtobufEmpty{
23036		ServerResponse: googleapi.ServerResponse{
23037			Header:         res.Header,
23038			HTTPStatusCode: res.StatusCode,
23039		},
23040	}
23041	target := &ret
23042	if err := gensupport.DecodeResponse(target, res); err != nil {
23043		return nil, err
23044	}
23045	return ret, nil
23046	// {
23047	//   "description": "Deletes the specified session entity type.",
23048	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/sessions/{sessionsId}/entityTypes/{entityTypesId}",
23049	//   "httpMethod": "DELETE",
23050	//   "id": "dialogflow.projects.locations.agents.environments.sessions.entityTypes.delete",
23051	//   "parameterOrder": [
23052	//     "name"
23053	//   ],
23054	//   "parameters": {
23055	//     "name": {
23056	//       "description": "Required. The name of the session entity type to delete. Format: `projects//locations//agents//sessions//entityTypes/` or `projects//locations//agents//environments//sessions//entityTypes/`. If `Environment ID` is not specified, we assume default 'draft' environment.",
23057	//       "location": "path",
23058	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+/sessions/[^/]+/entityTypes/[^/]+$",
23059	//       "required": true,
23060	//       "type": "string"
23061	//     }
23062	//   },
23063	//   "path": "v3/{+name}",
23064	//   "response": {
23065	//     "$ref": "GoogleProtobufEmpty"
23066	//   },
23067	//   "scopes": [
23068	//     "https://www.googleapis.com/auth/cloud-platform",
23069	//     "https://www.googleapis.com/auth/dialogflow"
23070	//   ]
23071	// }
23072
23073}
23074
23075// method id "dialogflow.projects.locations.agents.environments.sessions.entityTypes.get":
23076
23077type ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGetCall struct {
23078	s            *Service
23079	name         string
23080	urlParams_   gensupport.URLParams
23081	ifNoneMatch_ string
23082	ctx_         context.Context
23083	header_      http.Header
23084}
23085
23086// Get: Retrieves the specified session entity type.
23087//
23088// - name: The name of the session entity type. Format:
23089//   `projects//locations//agents//sessions//entityTypes/` or
23090//   `projects//locations//agents//environments//sessions//entityTypes/`.
23091//    If `Environment ID` is not specified, we assume default 'draft'
23092//   environment.
23093func (r *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesService) Get(name string) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGetCall {
23094	c := &ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23095	c.name = name
23096	return c
23097}
23098
23099// Fields allows partial responses to be retrieved. See
23100// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23101// for more information.
23102func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGetCall {
23103	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23104	return c
23105}
23106
23107// IfNoneMatch sets the optional parameter which makes the operation
23108// fail if the object's ETag matches the given value. This is useful for
23109// getting updates only after the object has changed since the last
23110// request. Use googleapi.IsNotModified to check whether the response
23111// error from Do is the result of In-None-Match.
23112func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGetCall {
23113	c.ifNoneMatch_ = entityTag
23114	return c
23115}
23116
23117// Context sets the context to be used in this call's Do method. Any
23118// pending HTTP request will be aborted if the provided context is
23119// canceled.
23120func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGetCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGetCall {
23121	c.ctx_ = ctx
23122	return c
23123}
23124
23125// Header returns an http.Header that can be modified by the caller to
23126// add HTTP headers to the request.
23127func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGetCall) Header() http.Header {
23128	if c.header_ == nil {
23129		c.header_ = make(http.Header)
23130	}
23131	return c.header_
23132}
23133
23134func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGetCall) doRequest(alt string) (*http.Response, error) {
23135	reqHeaders := make(http.Header)
23136	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
23137	for k, v := range c.header_ {
23138		reqHeaders[k] = v
23139	}
23140	reqHeaders.Set("User-Agent", c.s.userAgent())
23141	if c.ifNoneMatch_ != "" {
23142		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
23143	}
23144	var body io.Reader = nil
23145	c.urlParams_.Set("alt", alt)
23146	c.urlParams_.Set("prettyPrint", "false")
23147	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
23148	urls += "?" + c.urlParams_.Encode()
23149	req, err := http.NewRequest("GET", urls, body)
23150	if err != nil {
23151		return nil, err
23152	}
23153	req.Header = reqHeaders
23154	googleapi.Expand(req.URL, map[string]string{
23155		"name": c.name,
23156	})
23157	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23158}
23159
23160// Do executes the "dialogflow.projects.locations.agents.environments.sessions.entityTypes.get" call.
23161// Exactly one of *GoogleCloudDialogflowCxV3SessionEntityType or error
23162// will be non-nil. Any non-2xx status code is an error. Response
23163// headers are in either
23164// *GoogleCloudDialogflowCxV3SessionEntityType.ServerResponse.Header or
23165// (if a response was returned at all) in
23166// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
23167// whether the returned error was because http.StatusNotModified was
23168// returned.
23169func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3SessionEntityType, error) {
23170	gensupport.SetOptions(c.urlParams_, opts...)
23171	res, err := c.doRequest("json")
23172	if res != nil && res.StatusCode == http.StatusNotModified {
23173		if res.Body != nil {
23174			res.Body.Close()
23175		}
23176		return nil, &googleapi.Error{
23177			Code:   res.StatusCode,
23178			Header: res.Header,
23179		}
23180	}
23181	if err != nil {
23182		return nil, err
23183	}
23184	defer googleapi.CloseBody(res)
23185	if err := googleapi.CheckResponse(res); err != nil {
23186		return nil, err
23187	}
23188	ret := &GoogleCloudDialogflowCxV3SessionEntityType{
23189		ServerResponse: googleapi.ServerResponse{
23190			Header:         res.Header,
23191			HTTPStatusCode: res.StatusCode,
23192		},
23193	}
23194	target := &ret
23195	if err := gensupport.DecodeResponse(target, res); err != nil {
23196		return nil, err
23197	}
23198	return ret, nil
23199	// {
23200	//   "description": "Retrieves the specified session entity type.",
23201	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/sessions/{sessionsId}/entityTypes/{entityTypesId}",
23202	//   "httpMethod": "GET",
23203	//   "id": "dialogflow.projects.locations.agents.environments.sessions.entityTypes.get",
23204	//   "parameterOrder": [
23205	//     "name"
23206	//   ],
23207	//   "parameters": {
23208	//     "name": {
23209	//       "description": "Required. The name of the session entity type. Format: `projects//locations//agents//sessions//entityTypes/` or `projects//locations//agents//environments//sessions//entityTypes/`. If `Environment ID` is not specified, we assume default 'draft' environment.",
23210	//       "location": "path",
23211	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+/sessions/[^/]+/entityTypes/[^/]+$",
23212	//       "required": true,
23213	//       "type": "string"
23214	//     }
23215	//   },
23216	//   "path": "v3/{+name}",
23217	//   "response": {
23218	//     "$ref": "GoogleCloudDialogflowCxV3SessionEntityType"
23219	//   },
23220	//   "scopes": [
23221	//     "https://www.googleapis.com/auth/cloud-platform",
23222	//     "https://www.googleapis.com/auth/dialogflow"
23223	//   ]
23224	// }
23225
23226}
23227
23228// method id "dialogflow.projects.locations.agents.environments.sessions.entityTypes.list":
23229
23230type ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall struct {
23231	s            *Service
23232	parent       string
23233	urlParams_   gensupport.URLParams
23234	ifNoneMatch_ string
23235	ctx_         context.Context
23236	header_      http.Header
23237}
23238
23239// List: Returns the list of all session entity types in the specified
23240// session.
23241//
23242// - parent: The session to list all session entity types from. Format:
23243//   `projects//locations//agents//sessions/` or
23244//   `projects//locations//agents//environments//sessions/`. If
23245//   `Environment ID` is not specified, we assume default 'draft'
23246//   environment.
23247func (r *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesService) List(parent string) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall {
23248	c := &ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23249	c.parent = parent
23250	return c
23251}
23252
23253// PageSize sets the optional parameter "pageSize": The maximum number
23254// of items to return in a single page. By default 100 and at most 1000.
23255func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall) PageSize(pageSize int64) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall {
23256	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
23257	return c
23258}
23259
23260// PageToken sets the optional parameter "pageToken": The
23261// next_page_token value returned from a previous list request.
23262func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall) PageToken(pageToken string) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall {
23263	c.urlParams_.Set("pageToken", pageToken)
23264	return c
23265}
23266
23267// Fields allows partial responses to be retrieved. See
23268// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23269// for more information.
23270func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall {
23271	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23272	return c
23273}
23274
23275// IfNoneMatch sets the optional parameter which makes the operation
23276// fail if the object's ETag matches the given value. This is useful for
23277// getting updates only after the object has changed since the last
23278// request. Use googleapi.IsNotModified to check whether the response
23279// error from Do is the result of In-None-Match.
23280func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall {
23281	c.ifNoneMatch_ = entityTag
23282	return c
23283}
23284
23285// Context sets the context to be used in this call's Do method. Any
23286// pending HTTP request will be aborted if the provided context is
23287// canceled.
23288func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall {
23289	c.ctx_ = ctx
23290	return c
23291}
23292
23293// Header returns an http.Header that can be modified by the caller to
23294// add HTTP headers to the request.
23295func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall) Header() http.Header {
23296	if c.header_ == nil {
23297		c.header_ = make(http.Header)
23298	}
23299	return c.header_
23300}
23301
23302func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall) doRequest(alt string) (*http.Response, error) {
23303	reqHeaders := make(http.Header)
23304	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
23305	for k, v := range c.header_ {
23306		reqHeaders[k] = v
23307	}
23308	reqHeaders.Set("User-Agent", c.s.userAgent())
23309	if c.ifNoneMatch_ != "" {
23310		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
23311	}
23312	var body io.Reader = nil
23313	c.urlParams_.Set("alt", alt)
23314	c.urlParams_.Set("prettyPrint", "false")
23315	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/entityTypes")
23316	urls += "?" + c.urlParams_.Encode()
23317	req, err := http.NewRequest("GET", urls, body)
23318	if err != nil {
23319		return nil, err
23320	}
23321	req.Header = reqHeaders
23322	googleapi.Expand(req.URL, map[string]string{
23323		"parent": c.parent,
23324	})
23325	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23326}
23327
23328// Do executes the "dialogflow.projects.locations.agents.environments.sessions.entityTypes.list" call.
23329// Exactly one of
23330// *GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse or error
23331// will be non-nil. Any non-2xx status code is an error. Response
23332// headers are in either
23333// *GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse.ServerRespons
23334// e.Header or (if a response was returned at all) in
23335// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
23336// whether the returned error was because http.StatusNotModified was
23337// returned.
23338func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse, error) {
23339	gensupport.SetOptions(c.urlParams_, opts...)
23340	res, err := c.doRequest("json")
23341	if res != nil && res.StatusCode == http.StatusNotModified {
23342		if res.Body != nil {
23343			res.Body.Close()
23344		}
23345		return nil, &googleapi.Error{
23346			Code:   res.StatusCode,
23347			Header: res.Header,
23348		}
23349	}
23350	if err != nil {
23351		return nil, err
23352	}
23353	defer googleapi.CloseBody(res)
23354	if err := googleapi.CheckResponse(res); err != nil {
23355		return nil, err
23356	}
23357	ret := &GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse{
23358		ServerResponse: googleapi.ServerResponse{
23359			Header:         res.Header,
23360			HTTPStatusCode: res.StatusCode,
23361		},
23362	}
23363	target := &ret
23364	if err := gensupport.DecodeResponse(target, res); err != nil {
23365		return nil, err
23366	}
23367	return ret, nil
23368	// {
23369	//   "description": "Returns the list of all session entity types in the specified session.",
23370	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/sessions/{sessionsId}/entityTypes",
23371	//   "httpMethod": "GET",
23372	//   "id": "dialogflow.projects.locations.agents.environments.sessions.entityTypes.list",
23373	//   "parameterOrder": [
23374	//     "parent"
23375	//   ],
23376	//   "parameters": {
23377	//     "pageSize": {
23378	//       "description": "The maximum number of items to return in a single page. By default 100 and at most 1000.",
23379	//       "format": "int32",
23380	//       "location": "query",
23381	//       "type": "integer"
23382	//     },
23383	//     "pageToken": {
23384	//       "description": "The next_page_token value returned from a previous list request.",
23385	//       "location": "query",
23386	//       "type": "string"
23387	//     },
23388	//     "parent": {
23389	//       "description": "Required. The session to list all session entity types from. Format: `projects//locations//agents//sessions/` or `projects//locations//agents//environments//sessions/`. If `Environment ID` is not specified, we assume default 'draft' environment.",
23390	//       "location": "path",
23391	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+/sessions/[^/]+$",
23392	//       "required": true,
23393	//       "type": "string"
23394	//     }
23395	//   },
23396	//   "path": "v3/{+parent}/entityTypes",
23397	//   "response": {
23398	//     "$ref": "GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse"
23399	//   },
23400	//   "scopes": [
23401	//     "https://www.googleapis.com/auth/cloud-platform",
23402	//     "https://www.googleapis.com/auth/dialogflow"
23403	//   ]
23404	// }
23405
23406}
23407
23408// Pages invokes f for each page of results.
23409// A non-nil error returned from f will halt the iteration.
23410// The provided context supersedes any context provided to the Context method.
23411func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse) error) error {
23412	c.ctx_ = ctx
23413	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
23414	for {
23415		x, err := c.Do()
23416		if err != nil {
23417			return err
23418		}
23419		if err := f(x); err != nil {
23420			return err
23421		}
23422		if x.NextPageToken == "" {
23423			return nil
23424		}
23425		c.PageToken(x.NextPageToken)
23426	}
23427}
23428
23429// method id "dialogflow.projects.locations.agents.environments.sessions.entityTypes.patch":
23430
23431type ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatchCall struct {
23432	s                                          *Service
23433	nameid                                     string
23434	googleclouddialogflowcxv3sessionentitytype *GoogleCloudDialogflowCxV3SessionEntityType
23435	urlParams_                                 gensupport.URLParams
23436	ctx_                                       context.Context
23437	header_                                    http.Header
23438}
23439
23440// Patch: Updates the specified session entity type.
23441//
23442// - name: The unique identifier of the session entity type. Format:
23443//   `projects//locations//agents//sessions//entityTypes/` or
23444//   `projects//locations//agents//environments//sessions//entityTypes/`.
23445//    If `Environment ID` is not specified, we assume default 'draft'
23446//   environment.
23447func (r *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesService) Patch(nameid string, googleclouddialogflowcxv3sessionentitytype *GoogleCloudDialogflowCxV3SessionEntityType) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatchCall {
23448	c := &ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23449	c.nameid = nameid
23450	c.googleclouddialogflowcxv3sessionentitytype = googleclouddialogflowcxv3sessionentitytype
23451	return c
23452}
23453
23454// UpdateMask sets the optional parameter "updateMask": The mask to
23455// control which fields get updated.
23456func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatchCall) UpdateMask(updateMask string) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatchCall {
23457	c.urlParams_.Set("updateMask", updateMask)
23458	return c
23459}
23460
23461// Fields allows partial responses to be retrieved. See
23462// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23463// for more information.
23464func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatchCall {
23465	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23466	return c
23467}
23468
23469// Context sets the context to be used in this call's Do method. Any
23470// pending HTTP request will be aborted if the provided context is
23471// canceled.
23472func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatchCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatchCall {
23473	c.ctx_ = ctx
23474	return c
23475}
23476
23477// Header returns an http.Header that can be modified by the caller to
23478// add HTTP headers to the request.
23479func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatchCall) Header() http.Header {
23480	if c.header_ == nil {
23481		c.header_ = make(http.Header)
23482	}
23483	return c.header_
23484}
23485
23486func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatchCall) doRequest(alt string) (*http.Response, error) {
23487	reqHeaders := make(http.Header)
23488	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
23489	for k, v := range c.header_ {
23490		reqHeaders[k] = v
23491	}
23492	reqHeaders.Set("User-Agent", c.s.userAgent())
23493	var body io.Reader = nil
23494	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3sessionentitytype)
23495	if err != nil {
23496		return nil, err
23497	}
23498	reqHeaders.Set("Content-Type", "application/json")
23499	c.urlParams_.Set("alt", alt)
23500	c.urlParams_.Set("prettyPrint", "false")
23501	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
23502	urls += "?" + c.urlParams_.Encode()
23503	req, err := http.NewRequest("PATCH", urls, body)
23504	if err != nil {
23505		return nil, err
23506	}
23507	req.Header = reqHeaders
23508	googleapi.Expand(req.URL, map[string]string{
23509		"name": c.nameid,
23510	})
23511	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23512}
23513
23514// Do executes the "dialogflow.projects.locations.agents.environments.sessions.entityTypes.patch" call.
23515// Exactly one of *GoogleCloudDialogflowCxV3SessionEntityType or error
23516// will be non-nil. Any non-2xx status code is an error. Response
23517// headers are in either
23518// *GoogleCloudDialogflowCxV3SessionEntityType.ServerResponse.Header or
23519// (if a response was returned at all) in
23520// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
23521// whether the returned error was because http.StatusNotModified was
23522// returned.
23523func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3SessionEntityType, error) {
23524	gensupport.SetOptions(c.urlParams_, opts...)
23525	res, err := c.doRequest("json")
23526	if res != nil && res.StatusCode == http.StatusNotModified {
23527		if res.Body != nil {
23528			res.Body.Close()
23529		}
23530		return nil, &googleapi.Error{
23531			Code:   res.StatusCode,
23532			Header: res.Header,
23533		}
23534	}
23535	if err != nil {
23536		return nil, err
23537	}
23538	defer googleapi.CloseBody(res)
23539	if err := googleapi.CheckResponse(res); err != nil {
23540		return nil, err
23541	}
23542	ret := &GoogleCloudDialogflowCxV3SessionEntityType{
23543		ServerResponse: googleapi.ServerResponse{
23544			Header:         res.Header,
23545			HTTPStatusCode: res.StatusCode,
23546		},
23547	}
23548	target := &ret
23549	if err := gensupport.DecodeResponse(target, res); err != nil {
23550		return nil, err
23551	}
23552	return ret, nil
23553	// {
23554	//   "description": "Updates the specified session entity type.",
23555	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/sessions/{sessionsId}/entityTypes/{entityTypesId}",
23556	//   "httpMethod": "PATCH",
23557	//   "id": "dialogflow.projects.locations.agents.environments.sessions.entityTypes.patch",
23558	//   "parameterOrder": [
23559	//     "name"
23560	//   ],
23561	//   "parameters": {
23562	//     "name": {
23563	//       "description": "Required. The unique identifier of the session entity type. Format: `projects//locations//agents//sessions//entityTypes/` or `projects//locations//agents//environments//sessions//entityTypes/`. If `Environment ID` is not specified, we assume default 'draft' environment.",
23564	//       "location": "path",
23565	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+/sessions/[^/]+/entityTypes/[^/]+$",
23566	//       "required": true,
23567	//       "type": "string"
23568	//     },
23569	//     "updateMask": {
23570	//       "description": "The mask to control which fields get updated.",
23571	//       "format": "google-fieldmask",
23572	//       "location": "query",
23573	//       "type": "string"
23574	//     }
23575	//   },
23576	//   "path": "v3/{+name}",
23577	//   "request": {
23578	//     "$ref": "GoogleCloudDialogflowCxV3SessionEntityType"
23579	//   },
23580	//   "response": {
23581	//     "$ref": "GoogleCloudDialogflowCxV3SessionEntityType"
23582	//   },
23583	//   "scopes": [
23584	//     "https://www.googleapis.com/auth/cloud-platform",
23585	//     "https://www.googleapis.com/auth/dialogflow"
23586	//   ]
23587	// }
23588
23589}
23590
23591// method id "dialogflow.projects.locations.agents.flows.create":
23592
23593type ProjectsLocationsAgentsFlowsCreateCall struct {
23594	s                             *Service
23595	parent                        string
23596	googleclouddialogflowcxv3flow *GoogleCloudDialogflowCxV3Flow
23597	urlParams_                    gensupport.URLParams
23598	ctx_                          context.Context
23599	header_                       http.Header
23600}
23601
23602// Create: Creates a flow in the specified agent. Note: You should
23603// always train a flow prior to sending it queries. See the training
23604// documentation
23605// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
23606//
23607// - parent: The agent to create a flow for. Format:
23608//   `projects//locations//agents/`.
23609func (r *ProjectsLocationsAgentsFlowsService) Create(parent string, googleclouddialogflowcxv3flow *GoogleCloudDialogflowCxV3Flow) *ProjectsLocationsAgentsFlowsCreateCall {
23610	c := &ProjectsLocationsAgentsFlowsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23611	c.parent = parent
23612	c.googleclouddialogflowcxv3flow = googleclouddialogflowcxv3flow
23613	return c
23614}
23615
23616// LanguageCode sets the optional parameter "languageCode": The language
23617// of the following fields in `flow`: *
23618// `Flow.event_handlers.trigger_fulfillment.messages` *
23619// `Flow.event_handlers.trigger_fulfillment.conditional_cases` *
23620// `Flow.transition_routes.trigger_fulfillment.messages` *
23621// `Flow.transition_routes.trigger_fulfillment.conditional_cases` If not
23622// specified, the agent's default language is used. Many languages
23623// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
23624// supported. Note: languages must be enabled in the agent before they
23625// can be used.
23626func (c *ProjectsLocationsAgentsFlowsCreateCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsFlowsCreateCall {
23627	c.urlParams_.Set("languageCode", languageCode)
23628	return c
23629}
23630
23631// Fields allows partial responses to be retrieved. See
23632// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23633// for more information.
23634func (c *ProjectsLocationsAgentsFlowsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsCreateCall {
23635	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23636	return c
23637}
23638
23639// Context sets the context to be used in this call's Do method. Any
23640// pending HTTP request will be aborted if the provided context is
23641// canceled.
23642func (c *ProjectsLocationsAgentsFlowsCreateCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsCreateCall {
23643	c.ctx_ = ctx
23644	return c
23645}
23646
23647// Header returns an http.Header that can be modified by the caller to
23648// add HTTP headers to the request.
23649func (c *ProjectsLocationsAgentsFlowsCreateCall) Header() http.Header {
23650	if c.header_ == nil {
23651		c.header_ = make(http.Header)
23652	}
23653	return c.header_
23654}
23655
23656func (c *ProjectsLocationsAgentsFlowsCreateCall) doRequest(alt string) (*http.Response, error) {
23657	reqHeaders := make(http.Header)
23658	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
23659	for k, v := range c.header_ {
23660		reqHeaders[k] = v
23661	}
23662	reqHeaders.Set("User-Agent", c.s.userAgent())
23663	var body io.Reader = nil
23664	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3flow)
23665	if err != nil {
23666		return nil, err
23667	}
23668	reqHeaders.Set("Content-Type", "application/json")
23669	c.urlParams_.Set("alt", alt)
23670	c.urlParams_.Set("prettyPrint", "false")
23671	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/flows")
23672	urls += "?" + c.urlParams_.Encode()
23673	req, err := http.NewRequest("POST", urls, body)
23674	if err != nil {
23675		return nil, err
23676	}
23677	req.Header = reqHeaders
23678	googleapi.Expand(req.URL, map[string]string{
23679		"parent": c.parent,
23680	})
23681	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23682}
23683
23684// Do executes the "dialogflow.projects.locations.agents.flows.create" call.
23685// Exactly one of *GoogleCloudDialogflowCxV3Flow or error will be
23686// non-nil. Any non-2xx status code is an error. Response headers are in
23687// either *GoogleCloudDialogflowCxV3Flow.ServerResponse.Header or (if a
23688// response was returned at all) in error.(*googleapi.Error).Header. Use
23689// googleapi.IsNotModified to check whether the returned error was
23690// because http.StatusNotModified was returned.
23691func (c *ProjectsLocationsAgentsFlowsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3Flow, error) {
23692	gensupport.SetOptions(c.urlParams_, opts...)
23693	res, err := c.doRequest("json")
23694	if res != nil && res.StatusCode == http.StatusNotModified {
23695		if res.Body != nil {
23696			res.Body.Close()
23697		}
23698		return nil, &googleapi.Error{
23699			Code:   res.StatusCode,
23700			Header: res.Header,
23701		}
23702	}
23703	if err != nil {
23704		return nil, err
23705	}
23706	defer googleapi.CloseBody(res)
23707	if err := googleapi.CheckResponse(res); err != nil {
23708		return nil, err
23709	}
23710	ret := &GoogleCloudDialogflowCxV3Flow{
23711		ServerResponse: googleapi.ServerResponse{
23712			Header:         res.Header,
23713			HTTPStatusCode: res.StatusCode,
23714		},
23715	}
23716	target := &ret
23717	if err := gensupport.DecodeResponse(target, res); err != nil {
23718		return nil, err
23719	}
23720	return ret, nil
23721	// {
23722	//   "description": "Creates a flow in the specified agent. Note: You should always train a flow prior to sending it queries. See the [training documentation](https://cloud.google.com/dialogflow/cx/docs/concept/training).",
23723	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows",
23724	//   "httpMethod": "POST",
23725	//   "id": "dialogflow.projects.locations.agents.flows.create",
23726	//   "parameterOrder": [
23727	//     "parent"
23728	//   ],
23729	//   "parameters": {
23730	//     "languageCode": {
23731	//       "description": "The language of the following fields in `flow`: * `Flow.event_handlers.trigger_fulfillment.messages` * `Flow.event_handlers.trigger_fulfillment.conditional_cases` * `Flow.transition_routes.trigger_fulfillment.messages` * `Flow.transition_routes.trigger_fulfillment.conditional_cases` If not specified, the agent's default language is used. [Many languages](https://cloud.google.com/dialogflow/cx/docs/reference/language) are supported. Note: languages must be enabled in the agent before they can be used.",
23732	//       "location": "query",
23733	//       "type": "string"
23734	//     },
23735	//     "parent": {
23736	//       "description": "Required. The agent to create a flow for. Format: `projects//locations//agents/`.",
23737	//       "location": "path",
23738	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
23739	//       "required": true,
23740	//       "type": "string"
23741	//     }
23742	//   },
23743	//   "path": "v3/{+parent}/flows",
23744	//   "request": {
23745	//     "$ref": "GoogleCloudDialogflowCxV3Flow"
23746	//   },
23747	//   "response": {
23748	//     "$ref": "GoogleCloudDialogflowCxV3Flow"
23749	//   },
23750	//   "scopes": [
23751	//     "https://www.googleapis.com/auth/cloud-platform",
23752	//     "https://www.googleapis.com/auth/dialogflow"
23753	//   ]
23754	// }
23755
23756}
23757
23758// method id "dialogflow.projects.locations.agents.flows.delete":
23759
23760type ProjectsLocationsAgentsFlowsDeleteCall struct {
23761	s          *Service
23762	name       string
23763	urlParams_ gensupport.URLParams
23764	ctx_       context.Context
23765	header_    http.Header
23766}
23767
23768// Delete: Deletes a specified flow.
23769//
23770// - name: The name of the flow to delete. Format:
23771//   `projects//locations//agents//flows/`.
23772func (r *ProjectsLocationsAgentsFlowsService) Delete(name string) *ProjectsLocationsAgentsFlowsDeleteCall {
23773	c := &ProjectsLocationsAgentsFlowsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23774	c.name = name
23775	return c
23776}
23777
23778// Force sets the optional parameter "force": This field has no effect
23779// for flows with no incoming transitions. For flows with incoming
23780// transitions: * If `force` is set to false, an error will be returned
23781// with message indicating the incoming transitions. * If `force` is set
23782// to true, Dialogflow will remove the flow, as well as any transitions
23783// to the flow (i.e. Target flow in event handlers or Target flow in
23784// transition routes that point to this flow will be cleared).
23785func (c *ProjectsLocationsAgentsFlowsDeleteCall) Force(force bool) *ProjectsLocationsAgentsFlowsDeleteCall {
23786	c.urlParams_.Set("force", fmt.Sprint(force))
23787	return c
23788}
23789
23790// Fields allows partial responses to be retrieved. See
23791// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23792// for more information.
23793func (c *ProjectsLocationsAgentsFlowsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsDeleteCall {
23794	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23795	return c
23796}
23797
23798// Context sets the context to be used in this call's Do method. Any
23799// pending HTTP request will be aborted if the provided context is
23800// canceled.
23801func (c *ProjectsLocationsAgentsFlowsDeleteCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsDeleteCall {
23802	c.ctx_ = ctx
23803	return c
23804}
23805
23806// Header returns an http.Header that can be modified by the caller to
23807// add HTTP headers to the request.
23808func (c *ProjectsLocationsAgentsFlowsDeleteCall) Header() http.Header {
23809	if c.header_ == nil {
23810		c.header_ = make(http.Header)
23811	}
23812	return c.header_
23813}
23814
23815func (c *ProjectsLocationsAgentsFlowsDeleteCall) doRequest(alt string) (*http.Response, error) {
23816	reqHeaders := make(http.Header)
23817	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
23818	for k, v := range c.header_ {
23819		reqHeaders[k] = v
23820	}
23821	reqHeaders.Set("User-Agent", c.s.userAgent())
23822	var body io.Reader = nil
23823	c.urlParams_.Set("alt", alt)
23824	c.urlParams_.Set("prettyPrint", "false")
23825	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
23826	urls += "?" + c.urlParams_.Encode()
23827	req, err := http.NewRequest("DELETE", urls, body)
23828	if err != nil {
23829		return nil, err
23830	}
23831	req.Header = reqHeaders
23832	googleapi.Expand(req.URL, map[string]string{
23833		"name": c.name,
23834	})
23835	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23836}
23837
23838// Do executes the "dialogflow.projects.locations.agents.flows.delete" call.
23839// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
23840// non-2xx status code is an error. Response headers are in either
23841// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
23842// returned at all) in error.(*googleapi.Error).Header. Use
23843// googleapi.IsNotModified to check whether the returned error was
23844// because http.StatusNotModified was returned.
23845func (c *ProjectsLocationsAgentsFlowsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
23846	gensupport.SetOptions(c.urlParams_, opts...)
23847	res, err := c.doRequest("json")
23848	if res != nil && res.StatusCode == http.StatusNotModified {
23849		if res.Body != nil {
23850			res.Body.Close()
23851		}
23852		return nil, &googleapi.Error{
23853			Code:   res.StatusCode,
23854			Header: res.Header,
23855		}
23856	}
23857	if err != nil {
23858		return nil, err
23859	}
23860	defer googleapi.CloseBody(res)
23861	if err := googleapi.CheckResponse(res); err != nil {
23862		return nil, err
23863	}
23864	ret := &GoogleProtobufEmpty{
23865		ServerResponse: googleapi.ServerResponse{
23866			Header:         res.Header,
23867			HTTPStatusCode: res.StatusCode,
23868		},
23869	}
23870	target := &ret
23871	if err := gensupport.DecodeResponse(target, res); err != nil {
23872		return nil, err
23873	}
23874	return ret, nil
23875	// {
23876	//   "description": "Deletes a specified flow.",
23877	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}",
23878	//   "httpMethod": "DELETE",
23879	//   "id": "dialogflow.projects.locations.agents.flows.delete",
23880	//   "parameterOrder": [
23881	//     "name"
23882	//   ],
23883	//   "parameters": {
23884	//     "force": {
23885	//       "description": "This field has no effect for flows with no incoming transitions. For flows with incoming transitions: * If `force` is set to false, an error will be returned with message indicating the incoming transitions. * If `force` is set to true, Dialogflow will remove the flow, as well as any transitions to the flow (i.e. Target flow in event handlers or Target flow in transition routes that point to this flow will be cleared).",
23886	//       "location": "query",
23887	//       "type": "boolean"
23888	//     },
23889	//     "name": {
23890	//       "description": "Required. The name of the flow to delete. Format: `projects//locations//agents//flows/`.",
23891	//       "location": "path",
23892	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+$",
23893	//       "required": true,
23894	//       "type": "string"
23895	//     }
23896	//   },
23897	//   "path": "v3/{+name}",
23898	//   "response": {
23899	//     "$ref": "GoogleProtobufEmpty"
23900	//   },
23901	//   "scopes": [
23902	//     "https://www.googleapis.com/auth/cloud-platform",
23903	//     "https://www.googleapis.com/auth/dialogflow"
23904	//   ]
23905	// }
23906
23907}
23908
23909// method id "dialogflow.projects.locations.agents.flows.export":
23910
23911type ProjectsLocationsAgentsFlowsExportCall struct {
23912	s                                          *Service
23913	name                                       string
23914	googleclouddialogflowcxv3exportflowrequest *GoogleCloudDialogflowCxV3ExportFlowRequest
23915	urlParams_                                 gensupport.URLParams
23916	ctx_                                       context.Context
23917	header_                                    http.Header
23918}
23919
23920// Export: Exports the specified flow to a binary file. Note that
23921// resources (e.g. intents, entities, webhooks) that the flow references
23922// will also be exported.
23923//
23924// - name: The name of the flow to export. Format:
23925//   `projects//locations//agents//flows/`.
23926func (r *ProjectsLocationsAgentsFlowsService) Export(name string, googleclouddialogflowcxv3exportflowrequest *GoogleCloudDialogflowCxV3ExportFlowRequest) *ProjectsLocationsAgentsFlowsExportCall {
23927	c := &ProjectsLocationsAgentsFlowsExportCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23928	c.name = name
23929	c.googleclouddialogflowcxv3exportflowrequest = googleclouddialogflowcxv3exportflowrequest
23930	return c
23931}
23932
23933// Fields allows partial responses to be retrieved. See
23934// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23935// for more information.
23936func (c *ProjectsLocationsAgentsFlowsExportCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsExportCall {
23937	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23938	return c
23939}
23940
23941// Context sets the context to be used in this call's Do method. Any
23942// pending HTTP request will be aborted if the provided context is
23943// canceled.
23944func (c *ProjectsLocationsAgentsFlowsExportCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsExportCall {
23945	c.ctx_ = ctx
23946	return c
23947}
23948
23949// Header returns an http.Header that can be modified by the caller to
23950// add HTTP headers to the request.
23951func (c *ProjectsLocationsAgentsFlowsExportCall) Header() http.Header {
23952	if c.header_ == nil {
23953		c.header_ = make(http.Header)
23954	}
23955	return c.header_
23956}
23957
23958func (c *ProjectsLocationsAgentsFlowsExportCall) doRequest(alt string) (*http.Response, error) {
23959	reqHeaders := make(http.Header)
23960	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
23961	for k, v := range c.header_ {
23962		reqHeaders[k] = v
23963	}
23964	reqHeaders.Set("User-Agent", c.s.userAgent())
23965	var body io.Reader = nil
23966	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3exportflowrequest)
23967	if err != nil {
23968		return nil, err
23969	}
23970	reqHeaders.Set("Content-Type", "application/json")
23971	c.urlParams_.Set("alt", alt)
23972	c.urlParams_.Set("prettyPrint", "false")
23973	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}:export")
23974	urls += "?" + c.urlParams_.Encode()
23975	req, err := http.NewRequest("POST", urls, body)
23976	if err != nil {
23977		return nil, err
23978	}
23979	req.Header = reqHeaders
23980	googleapi.Expand(req.URL, map[string]string{
23981		"name": c.name,
23982	})
23983	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23984}
23985
23986// Do executes the "dialogflow.projects.locations.agents.flows.export" call.
23987// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
23988// Any non-2xx status code is an error. Response headers are in either
23989// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
23990// was returned at all) in error.(*googleapi.Error).Header. Use
23991// googleapi.IsNotModified to check whether the returned error was
23992// because http.StatusNotModified was returned.
23993func (c *ProjectsLocationsAgentsFlowsExportCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
23994	gensupport.SetOptions(c.urlParams_, opts...)
23995	res, err := c.doRequest("json")
23996	if res != nil && res.StatusCode == http.StatusNotModified {
23997		if res.Body != nil {
23998			res.Body.Close()
23999		}
24000		return nil, &googleapi.Error{
24001			Code:   res.StatusCode,
24002			Header: res.Header,
24003		}
24004	}
24005	if err != nil {
24006		return nil, err
24007	}
24008	defer googleapi.CloseBody(res)
24009	if err := googleapi.CheckResponse(res); err != nil {
24010		return nil, err
24011	}
24012	ret := &GoogleLongrunningOperation{
24013		ServerResponse: googleapi.ServerResponse{
24014			Header:         res.Header,
24015			HTTPStatusCode: res.StatusCode,
24016		},
24017	}
24018	target := &ret
24019	if err := gensupport.DecodeResponse(target, res); err != nil {
24020		return nil, err
24021	}
24022	return ret, nil
24023	// {
24024	//   "description": "Exports the specified flow to a binary file. Note that resources (e.g. intents, entities, webhooks) that the flow references will also be exported.",
24025	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}:export",
24026	//   "httpMethod": "POST",
24027	//   "id": "dialogflow.projects.locations.agents.flows.export",
24028	//   "parameterOrder": [
24029	//     "name"
24030	//   ],
24031	//   "parameters": {
24032	//     "name": {
24033	//       "description": "Required. The name of the flow to export. Format: `projects//locations//agents//flows/`.",
24034	//       "location": "path",
24035	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+$",
24036	//       "required": true,
24037	//       "type": "string"
24038	//     }
24039	//   },
24040	//   "path": "v3/{+name}:export",
24041	//   "request": {
24042	//     "$ref": "GoogleCloudDialogflowCxV3ExportFlowRequest"
24043	//   },
24044	//   "response": {
24045	//     "$ref": "GoogleLongrunningOperation"
24046	//   },
24047	//   "scopes": [
24048	//     "https://www.googleapis.com/auth/cloud-platform",
24049	//     "https://www.googleapis.com/auth/dialogflow"
24050	//   ]
24051	// }
24052
24053}
24054
24055// method id "dialogflow.projects.locations.agents.flows.get":
24056
24057type ProjectsLocationsAgentsFlowsGetCall struct {
24058	s            *Service
24059	name         string
24060	urlParams_   gensupport.URLParams
24061	ifNoneMatch_ string
24062	ctx_         context.Context
24063	header_      http.Header
24064}
24065
24066// Get: Retrieves the specified flow.
24067//
24068// - name: The name of the flow to get. Format:
24069//   `projects//locations//agents//flows/`.
24070func (r *ProjectsLocationsAgentsFlowsService) Get(name string) *ProjectsLocationsAgentsFlowsGetCall {
24071	c := &ProjectsLocationsAgentsFlowsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24072	c.name = name
24073	return c
24074}
24075
24076// LanguageCode sets the optional parameter "languageCode": The language
24077// to retrieve the flow for. The following fields are language
24078// dependent: * `Flow.event_handlers.trigger_fulfillment.messages` *
24079// `Flow.event_handlers.trigger_fulfillment.conditional_cases` *
24080// `Flow.transition_routes.trigger_fulfillment.messages` *
24081// `Flow.transition_routes.trigger_fulfillment.conditional_cases` If not
24082// specified, the agent's default language is used. Many languages
24083// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
24084// supported. Note: languages must be enabled in the agent before they
24085// can be used.
24086func (c *ProjectsLocationsAgentsFlowsGetCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsFlowsGetCall {
24087	c.urlParams_.Set("languageCode", languageCode)
24088	return c
24089}
24090
24091// Fields allows partial responses to be retrieved. See
24092// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24093// for more information.
24094func (c *ProjectsLocationsAgentsFlowsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsGetCall {
24095	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24096	return c
24097}
24098
24099// IfNoneMatch sets the optional parameter which makes the operation
24100// fail if the object's ETag matches the given value. This is useful for
24101// getting updates only after the object has changed since the last
24102// request. Use googleapi.IsNotModified to check whether the response
24103// error from Do is the result of In-None-Match.
24104func (c *ProjectsLocationsAgentsFlowsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsFlowsGetCall {
24105	c.ifNoneMatch_ = entityTag
24106	return c
24107}
24108
24109// Context sets the context to be used in this call's Do method. Any
24110// pending HTTP request will be aborted if the provided context is
24111// canceled.
24112func (c *ProjectsLocationsAgentsFlowsGetCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsGetCall {
24113	c.ctx_ = ctx
24114	return c
24115}
24116
24117// Header returns an http.Header that can be modified by the caller to
24118// add HTTP headers to the request.
24119func (c *ProjectsLocationsAgentsFlowsGetCall) Header() http.Header {
24120	if c.header_ == nil {
24121		c.header_ = make(http.Header)
24122	}
24123	return c.header_
24124}
24125
24126func (c *ProjectsLocationsAgentsFlowsGetCall) doRequest(alt string) (*http.Response, error) {
24127	reqHeaders := make(http.Header)
24128	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
24129	for k, v := range c.header_ {
24130		reqHeaders[k] = v
24131	}
24132	reqHeaders.Set("User-Agent", c.s.userAgent())
24133	if c.ifNoneMatch_ != "" {
24134		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
24135	}
24136	var body io.Reader = nil
24137	c.urlParams_.Set("alt", alt)
24138	c.urlParams_.Set("prettyPrint", "false")
24139	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
24140	urls += "?" + c.urlParams_.Encode()
24141	req, err := http.NewRequest("GET", urls, body)
24142	if err != nil {
24143		return nil, err
24144	}
24145	req.Header = reqHeaders
24146	googleapi.Expand(req.URL, map[string]string{
24147		"name": c.name,
24148	})
24149	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24150}
24151
24152// Do executes the "dialogflow.projects.locations.agents.flows.get" call.
24153// Exactly one of *GoogleCloudDialogflowCxV3Flow or error will be
24154// non-nil. Any non-2xx status code is an error. Response headers are in
24155// either *GoogleCloudDialogflowCxV3Flow.ServerResponse.Header or (if a
24156// response was returned at all) in error.(*googleapi.Error).Header. Use
24157// googleapi.IsNotModified to check whether the returned error was
24158// because http.StatusNotModified was returned.
24159func (c *ProjectsLocationsAgentsFlowsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3Flow, error) {
24160	gensupport.SetOptions(c.urlParams_, opts...)
24161	res, err := c.doRequest("json")
24162	if res != nil && res.StatusCode == http.StatusNotModified {
24163		if res.Body != nil {
24164			res.Body.Close()
24165		}
24166		return nil, &googleapi.Error{
24167			Code:   res.StatusCode,
24168			Header: res.Header,
24169		}
24170	}
24171	if err != nil {
24172		return nil, err
24173	}
24174	defer googleapi.CloseBody(res)
24175	if err := googleapi.CheckResponse(res); err != nil {
24176		return nil, err
24177	}
24178	ret := &GoogleCloudDialogflowCxV3Flow{
24179		ServerResponse: googleapi.ServerResponse{
24180			Header:         res.Header,
24181			HTTPStatusCode: res.StatusCode,
24182		},
24183	}
24184	target := &ret
24185	if err := gensupport.DecodeResponse(target, res); err != nil {
24186		return nil, err
24187	}
24188	return ret, nil
24189	// {
24190	//   "description": "Retrieves the specified flow.",
24191	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}",
24192	//   "httpMethod": "GET",
24193	//   "id": "dialogflow.projects.locations.agents.flows.get",
24194	//   "parameterOrder": [
24195	//     "name"
24196	//   ],
24197	//   "parameters": {
24198	//     "languageCode": {
24199	//       "description": "The language to retrieve the flow for. The following fields are language dependent: * `Flow.event_handlers.trigger_fulfillment.messages` * `Flow.event_handlers.trigger_fulfillment.conditional_cases` * `Flow.transition_routes.trigger_fulfillment.messages` * `Flow.transition_routes.trigger_fulfillment.conditional_cases` If not specified, the agent's default language is used. [Many languages](https://cloud.google.com/dialogflow/cx/docs/reference/language) are supported. Note: languages must be enabled in the agent before they can be used.",
24200	//       "location": "query",
24201	//       "type": "string"
24202	//     },
24203	//     "name": {
24204	//       "description": "Required. The name of the flow to get. Format: `projects//locations//agents//flows/`.",
24205	//       "location": "path",
24206	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+$",
24207	//       "required": true,
24208	//       "type": "string"
24209	//     }
24210	//   },
24211	//   "path": "v3/{+name}",
24212	//   "response": {
24213	//     "$ref": "GoogleCloudDialogflowCxV3Flow"
24214	//   },
24215	//   "scopes": [
24216	//     "https://www.googleapis.com/auth/cloud-platform",
24217	//     "https://www.googleapis.com/auth/dialogflow"
24218	//   ]
24219	// }
24220
24221}
24222
24223// method id "dialogflow.projects.locations.agents.flows.getValidationResult":
24224
24225type ProjectsLocationsAgentsFlowsGetValidationResultCall struct {
24226	s            *Service
24227	name         string
24228	urlParams_   gensupport.URLParams
24229	ifNoneMatch_ string
24230	ctx_         context.Context
24231	header_      http.Header
24232}
24233
24234// GetValidationResult: Gets the latest flow validation result. Flow
24235// validation is performed when ValidateFlow is called.
24236//
24237// - name: The flow name. Format:
24238//   `projects//locations//agents//flows//validationResult`.
24239func (r *ProjectsLocationsAgentsFlowsService) GetValidationResult(name string) *ProjectsLocationsAgentsFlowsGetValidationResultCall {
24240	c := &ProjectsLocationsAgentsFlowsGetValidationResultCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24241	c.name = name
24242	return c
24243}
24244
24245// LanguageCode sets the optional parameter "languageCode": If not
24246// specified, the agent's default language is used.
24247func (c *ProjectsLocationsAgentsFlowsGetValidationResultCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsFlowsGetValidationResultCall {
24248	c.urlParams_.Set("languageCode", languageCode)
24249	return c
24250}
24251
24252// Fields allows partial responses to be retrieved. See
24253// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24254// for more information.
24255func (c *ProjectsLocationsAgentsFlowsGetValidationResultCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsGetValidationResultCall {
24256	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24257	return c
24258}
24259
24260// IfNoneMatch sets the optional parameter which makes the operation
24261// fail if the object's ETag matches the given value. This is useful for
24262// getting updates only after the object has changed since the last
24263// request. Use googleapi.IsNotModified to check whether the response
24264// error from Do is the result of In-None-Match.
24265func (c *ProjectsLocationsAgentsFlowsGetValidationResultCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsFlowsGetValidationResultCall {
24266	c.ifNoneMatch_ = entityTag
24267	return c
24268}
24269
24270// Context sets the context to be used in this call's Do method. Any
24271// pending HTTP request will be aborted if the provided context is
24272// canceled.
24273func (c *ProjectsLocationsAgentsFlowsGetValidationResultCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsGetValidationResultCall {
24274	c.ctx_ = ctx
24275	return c
24276}
24277
24278// Header returns an http.Header that can be modified by the caller to
24279// add HTTP headers to the request.
24280func (c *ProjectsLocationsAgentsFlowsGetValidationResultCall) Header() http.Header {
24281	if c.header_ == nil {
24282		c.header_ = make(http.Header)
24283	}
24284	return c.header_
24285}
24286
24287func (c *ProjectsLocationsAgentsFlowsGetValidationResultCall) doRequest(alt string) (*http.Response, error) {
24288	reqHeaders := make(http.Header)
24289	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
24290	for k, v := range c.header_ {
24291		reqHeaders[k] = v
24292	}
24293	reqHeaders.Set("User-Agent", c.s.userAgent())
24294	if c.ifNoneMatch_ != "" {
24295		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
24296	}
24297	var body io.Reader = nil
24298	c.urlParams_.Set("alt", alt)
24299	c.urlParams_.Set("prettyPrint", "false")
24300	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
24301	urls += "?" + c.urlParams_.Encode()
24302	req, err := http.NewRequest("GET", urls, body)
24303	if err != nil {
24304		return nil, err
24305	}
24306	req.Header = reqHeaders
24307	googleapi.Expand(req.URL, map[string]string{
24308		"name": c.name,
24309	})
24310	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24311}
24312
24313// Do executes the "dialogflow.projects.locations.agents.flows.getValidationResult" call.
24314// Exactly one of *GoogleCloudDialogflowCxV3FlowValidationResult or
24315// error will be non-nil. Any non-2xx status code is an error. Response
24316// headers are in either
24317// *GoogleCloudDialogflowCxV3FlowValidationResult.ServerResponse.Header
24318// or (if a response was returned at all) in
24319// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
24320// whether the returned error was because http.StatusNotModified was
24321// returned.
24322func (c *ProjectsLocationsAgentsFlowsGetValidationResultCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3FlowValidationResult, error) {
24323	gensupport.SetOptions(c.urlParams_, opts...)
24324	res, err := c.doRequest("json")
24325	if res != nil && res.StatusCode == http.StatusNotModified {
24326		if res.Body != nil {
24327			res.Body.Close()
24328		}
24329		return nil, &googleapi.Error{
24330			Code:   res.StatusCode,
24331			Header: res.Header,
24332		}
24333	}
24334	if err != nil {
24335		return nil, err
24336	}
24337	defer googleapi.CloseBody(res)
24338	if err := googleapi.CheckResponse(res); err != nil {
24339		return nil, err
24340	}
24341	ret := &GoogleCloudDialogflowCxV3FlowValidationResult{
24342		ServerResponse: googleapi.ServerResponse{
24343			Header:         res.Header,
24344			HTTPStatusCode: res.StatusCode,
24345		},
24346	}
24347	target := &ret
24348	if err := gensupport.DecodeResponse(target, res); err != nil {
24349		return nil, err
24350	}
24351	return ret, nil
24352	// {
24353	//   "description": "Gets the latest flow validation result. Flow validation is performed when ValidateFlow is called.",
24354	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/validationResult",
24355	//   "httpMethod": "GET",
24356	//   "id": "dialogflow.projects.locations.agents.flows.getValidationResult",
24357	//   "parameterOrder": [
24358	//     "name"
24359	//   ],
24360	//   "parameters": {
24361	//     "languageCode": {
24362	//       "description": "If not specified, the agent's default language is used.",
24363	//       "location": "query",
24364	//       "type": "string"
24365	//     },
24366	//     "name": {
24367	//       "description": "Required. The flow name. Format: `projects//locations//agents//flows//validationResult`.",
24368	//       "location": "path",
24369	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+/validationResult$",
24370	//       "required": true,
24371	//       "type": "string"
24372	//     }
24373	//   },
24374	//   "path": "v3/{+name}",
24375	//   "response": {
24376	//     "$ref": "GoogleCloudDialogflowCxV3FlowValidationResult"
24377	//   },
24378	//   "scopes": [
24379	//     "https://www.googleapis.com/auth/cloud-platform",
24380	//     "https://www.googleapis.com/auth/dialogflow"
24381	//   ]
24382	// }
24383
24384}
24385
24386// method id "dialogflow.projects.locations.agents.flows.import":
24387
24388type ProjectsLocationsAgentsFlowsImportCall struct {
24389	s                                          *Service
24390	parent                                     string
24391	googleclouddialogflowcxv3importflowrequest *GoogleCloudDialogflowCxV3ImportFlowRequest
24392	urlParams_                                 gensupport.URLParams
24393	ctx_                                       context.Context
24394	header_                                    http.Header
24395}
24396
24397// Import: Imports the specified flow to the specified agent from a
24398// binary file. Note: You should always train a flow prior to sending it
24399// queries. See the training documentation
24400// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
24401//
24402// - parent: The agent to import the flow into. Format:
24403//   `projects//locations//agents/`.
24404func (r *ProjectsLocationsAgentsFlowsService) Import(parent string, googleclouddialogflowcxv3importflowrequest *GoogleCloudDialogflowCxV3ImportFlowRequest) *ProjectsLocationsAgentsFlowsImportCall {
24405	c := &ProjectsLocationsAgentsFlowsImportCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24406	c.parent = parent
24407	c.googleclouddialogflowcxv3importflowrequest = googleclouddialogflowcxv3importflowrequest
24408	return c
24409}
24410
24411// Fields allows partial responses to be retrieved. See
24412// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24413// for more information.
24414func (c *ProjectsLocationsAgentsFlowsImportCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsImportCall {
24415	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24416	return c
24417}
24418
24419// Context sets the context to be used in this call's Do method. Any
24420// pending HTTP request will be aborted if the provided context is
24421// canceled.
24422func (c *ProjectsLocationsAgentsFlowsImportCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsImportCall {
24423	c.ctx_ = ctx
24424	return c
24425}
24426
24427// Header returns an http.Header that can be modified by the caller to
24428// add HTTP headers to the request.
24429func (c *ProjectsLocationsAgentsFlowsImportCall) Header() http.Header {
24430	if c.header_ == nil {
24431		c.header_ = make(http.Header)
24432	}
24433	return c.header_
24434}
24435
24436func (c *ProjectsLocationsAgentsFlowsImportCall) doRequest(alt string) (*http.Response, error) {
24437	reqHeaders := make(http.Header)
24438	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
24439	for k, v := range c.header_ {
24440		reqHeaders[k] = v
24441	}
24442	reqHeaders.Set("User-Agent", c.s.userAgent())
24443	var body io.Reader = nil
24444	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3importflowrequest)
24445	if err != nil {
24446		return nil, err
24447	}
24448	reqHeaders.Set("Content-Type", "application/json")
24449	c.urlParams_.Set("alt", alt)
24450	c.urlParams_.Set("prettyPrint", "false")
24451	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/flows:import")
24452	urls += "?" + c.urlParams_.Encode()
24453	req, err := http.NewRequest("POST", urls, body)
24454	if err != nil {
24455		return nil, err
24456	}
24457	req.Header = reqHeaders
24458	googleapi.Expand(req.URL, map[string]string{
24459		"parent": c.parent,
24460	})
24461	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24462}
24463
24464// Do executes the "dialogflow.projects.locations.agents.flows.import" call.
24465// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
24466// Any non-2xx status code is an error. Response headers are in either
24467// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
24468// was returned at all) in error.(*googleapi.Error).Header. Use
24469// googleapi.IsNotModified to check whether the returned error was
24470// because http.StatusNotModified was returned.
24471func (c *ProjectsLocationsAgentsFlowsImportCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
24472	gensupport.SetOptions(c.urlParams_, opts...)
24473	res, err := c.doRequest("json")
24474	if res != nil && res.StatusCode == http.StatusNotModified {
24475		if res.Body != nil {
24476			res.Body.Close()
24477		}
24478		return nil, &googleapi.Error{
24479			Code:   res.StatusCode,
24480			Header: res.Header,
24481		}
24482	}
24483	if err != nil {
24484		return nil, err
24485	}
24486	defer googleapi.CloseBody(res)
24487	if err := googleapi.CheckResponse(res); err != nil {
24488		return nil, err
24489	}
24490	ret := &GoogleLongrunningOperation{
24491		ServerResponse: googleapi.ServerResponse{
24492			Header:         res.Header,
24493			HTTPStatusCode: res.StatusCode,
24494		},
24495	}
24496	target := &ret
24497	if err := gensupport.DecodeResponse(target, res); err != nil {
24498		return nil, err
24499	}
24500	return ret, nil
24501	// {
24502	//   "description": "Imports the specified flow to the specified agent from a binary file. Note: You should always train a flow prior to sending it queries. See the [training documentation](https://cloud.google.com/dialogflow/cx/docs/concept/training).",
24503	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows:import",
24504	//   "httpMethod": "POST",
24505	//   "id": "dialogflow.projects.locations.agents.flows.import",
24506	//   "parameterOrder": [
24507	//     "parent"
24508	//   ],
24509	//   "parameters": {
24510	//     "parent": {
24511	//       "description": "Required. The agent to import the flow into. Format: `projects//locations//agents/`.",
24512	//       "location": "path",
24513	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
24514	//       "required": true,
24515	//       "type": "string"
24516	//     }
24517	//   },
24518	//   "path": "v3/{+parent}/flows:import",
24519	//   "request": {
24520	//     "$ref": "GoogleCloudDialogflowCxV3ImportFlowRequest"
24521	//   },
24522	//   "response": {
24523	//     "$ref": "GoogleLongrunningOperation"
24524	//   },
24525	//   "scopes": [
24526	//     "https://www.googleapis.com/auth/cloud-platform",
24527	//     "https://www.googleapis.com/auth/dialogflow"
24528	//   ]
24529	// }
24530
24531}
24532
24533// method id "dialogflow.projects.locations.agents.flows.list":
24534
24535type ProjectsLocationsAgentsFlowsListCall struct {
24536	s            *Service
24537	parent       string
24538	urlParams_   gensupport.URLParams
24539	ifNoneMatch_ string
24540	ctx_         context.Context
24541	header_      http.Header
24542}
24543
24544// List: Returns the list of all flows in the specified agent.
24545//
24546// - parent: The agent containing the flows. Format:
24547//   `projects//locations//agents/`.
24548func (r *ProjectsLocationsAgentsFlowsService) List(parent string) *ProjectsLocationsAgentsFlowsListCall {
24549	c := &ProjectsLocationsAgentsFlowsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24550	c.parent = parent
24551	return c
24552}
24553
24554// LanguageCode sets the optional parameter "languageCode": The language
24555// to list flows for. The following fields are language dependent: *
24556// `Flow.event_handlers.trigger_fulfillment.messages` *
24557// `Flow.event_handlers.trigger_fulfillment.conditional_cases` *
24558// `Flow.transition_routes.trigger_fulfillment.messages` *
24559// `Flow.transition_routes.trigger_fulfillment.conditional_cases` If not
24560// specified, the agent's default language is used. Many languages
24561// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
24562// supported. Note: languages must be enabled in the agent before they
24563// can be used.
24564func (c *ProjectsLocationsAgentsFlowsListCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsFlowsListCall {
24565	c.urlParams_.Set("languageCode", languageCode)
24566	return c
24567}
24568
24569// PageSize sets the optional parameter "pageSize": The maximum number
24570// of items to return in a single page. By default 100 and at most 1000.
24571func (c *ProjectsLocationsAgentsFlowsListCall) PageSize(pageSize int64) *ProjectsLocationsAgentsFlowsListCall {
24572	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
24573	return c
24574}
24575
24576// PageToken sets the optional parameter "pageToken": The
24577// next_page_token value returned from a previous list request.
24578func (c *ProjectsLocationsAgentsFlowsListCall) PageToken(pageToken string) *ProjectsLocationsAgentsFlowsListCall {
24579	c.urlParams_.Set("pageToken", pageToken)
24580	return c
24581}
24582
24583// Fields allows partial responses to be retrieved. See
24584// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24585// for more information.
24586func (c *ProjectsLocationsAgentsFlowsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsListCall {
24587	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24588	return c
24589}
24590
24591// IfNoneMatch sets the optional parameter which makes the operation
24592// fail if the object's ETag matches the given value. This is useful for
24593// getting updates only after the object has changed since the last
24594// request. Use googleapi.IsNotModified to check whether the response
24595// error from Do is the result of In-None-Match.
24596func (c *ProjectsLocationsAgentsFlowsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsFlowsListCall {
24597	c.ifNoneMatch_ = entityTag
24598	return c
24599}
24600
24601// Context sets the context to be used in this call's Do method. Any
24602// pending HTTP request will be aborted if the provided context is
24603// canceled.
24604func (c *ProjectsLocationsAgentsFlowsListCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsListCall {
24605	c.ctx_ = ctx
24606	return c
24607}
24608
24609// Header returns an http.Header that can be modified by the caller to
24610// add HTTP headers to the request.
24611func (c *ProjectsLocationsAgentsFlowsListCall) Header() http.Header {
24612	if c.header_ == nil {
24613		c.header_ = make(http.Header)
24614	}
24615	return c.header_
24616}
24617
24618func (c *ProjectsLocationsAgentsFlowsListCall) doRequest(alt string) (*http.Response, error) {
24619	reqHeaders := make(http.Header)
24620	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
24621	for k, v := range c.header_ {
24622		reqHeaders[k] = v
24623	}
24624	reqHeaders.Set("User-Agent", c.s.userAgent())
24625	if c.ifNoneMatch_ != "" {
24626		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
24627	}
24628	var body io.Reader = nil
24629	c.urlParams_.Set("alt", alt)
24630	c.urlParams_.Set("prettyPrint", "false")
24631	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/flows")
24632	urls += "?" + c.urlParams_.Encode()
24633	req, err := http.NewRequest("GET", urls, body)
24634	if err != nil {
24635		return nil, err
24636	}
24637	req.Header = reqHeaders
24638	googleapi.Expand(req.URL, map[string]string{
24639		"parent": c.parent,
24640	})
24641	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24642}
24643
24644// Do executes the "dialogflow.projects.locations.agents.flows.list" call.
24645// Exactly one of *GoogleCloudDialogflowCxV3ListFlowsResponse or error
24646// will be non-nil. Any non-2xx status code is an error. Response
24647// headers are in either
24648// *GoogleCloudDialogflowCxV3ListFlowsResponse.ServerResponse.Header or
24649// (if a response was returned at all) in
24650// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
24651// whether the returned error was because http.StatusNotModified was
24652// returned.
24653func (c *ProjectsLocationsAgentsFlowsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3ListFlowsResponse, error) {
24654	gensupport.SetOptions(c.urlParams_, opts...)
24655	res, err := c.doRequest("json")
24656	if res != nil && res.StatusCode == http.StatusNotModified {
24657		if res.Body != nil {
24658			res.Body.Close()
24659		}
24660		return nil, &googleapi.Error{
24661			Code:   res.StatusCode,
24662			Header: res.Header,
24663		}
24664	}
24665	if err != nil {
24666		return nil, err
24667	}
24668	defer googleapi.CloseBody(res)
24669	if err := googleapi.CheckResponse(res); err != nil {
24670		return nil, err
24671	}
24672	ret := &GoogleCloudDialogflowCxV3ListFlowsResponse{
24673		ServerResponse: googleapi.ServerResponse{
24674			Header:         res.Header,
24675			HTTPStatusCode: res.StatusCode,
24676		},
24677	}
24678	target := &ret
24679	if err := gensupport.DecodeResponse(target, res); err != nil {
24680		return nil, err
24681	}
24682	return ret, nil
24683	// {
24684	//   "description": "Returns the list of all flows in the specified agent.",
24685	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows",
24686	//   "httpMethod": "GET",
24687	//   "id": "dialogflow.projects.locations.agents.flows.list",
24688	//   "parameterOrder": [
24689	//     "parent"
24690	//   ],
24691	//   "parameters": {
24692	//     "languageCode": {
24693	//       "description": "The language to list flows for. The following fields are language dependent: * `Flow.event_handlers.trigger_fulfillment.messages` * `Flow.event_handlers.trigger_fulfillment.conditional_cases` * `Flow.transition_routes.trigger_fulfillment.messages` * `Flow.transition_routes.trigger_fulfillment.conditional_cases` If not specified, the agent's default language is used. [Many languages](https://cloud.google.com/dialogflow/cx/docs/reference/language) are supported. Note: languages must be enabled in the agent before they can be used.",
24694	//       "location": "query",
24695	//       "type": "string"
24696	//     },
24697	//     "pageSize": {
24698	//       "description": "The maximum number of items to return in a single page. By default 100 and at most 1000.",
24699	//       "format": "int32",
24700	//       "location": "query",
24701	//       "type": "integer"
24702	//     },
24703	//     "pageToken": {
24704	//       "description": "The next_page_token value returned from a previous list request.",
24705	//       "location": "query",
24706	//       "type": "string"
24707	//     },
24708	//     "parent": {
24709	//       "description": "Required. The agent containing the flows. Format: `projects//locations//agents/`.",
24710	//       "location": "path",
24711	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
24712	//       "required": true,
24713	//       "type": "string"
24714	//     }
24715	//   },
24716	//   "path": "v3/{+parent}/flows",
24717	//   "response": {
24718	//     "$ref": "GoogleCloudDialogflowCxV3ListFlowsResponse"
24719	//   },
24720	//   "scopes": [
24721	//     "https://www.googleapis.com/auth/cloud-platform",
24722	//     "https://www.googleapis.com/auth/dialogflow"
24723	//   ]
24724	// }
24725
24726}
24727
24728// Pages invokes f for each page of results.
24729// A non-nil error returned from f will halt the iteration.
24730// The provided context supersedes any context provided to the Context method.
24731func (c *ProjectsLocationsAgentsFlowsListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3ListFlowsResponse) error) error {
24732	c.ctx_ = ctx
24733	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
24734	for {
24735		x, err := c.Do()
24736		if err != nil {
24737			return err
24738		}
24739		if err := f(x); err != nil {
24740			return err
24741		}
24742		if x.NextPageToken == "" {
24743			return nil
24744		}
24745		c.PageToken(x.NextPageToken)
24746	}
24747}
24748
24749// method id "dialogflow.projects.locations.agents.flows.patch":
24750
24751type ProjectsLocationsAgentsFlowsPatchCall struct {
24752	s                             *Service
24753	nameid                        string
24754	googleclouddialogflowcxv3flow *GoogleCloudDialogflowCxV3Flow
24755	urlParams_                    gensupport.URLParams
24756	ctx_                          context.Context
24757	header_                       http.Header
24758}
24759
24760// Patch: Updates the specified flow. Note: You should always train a
24761// flow prior to sending it queries. See the training documentation
24762// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
24763//
24764// - name: The unique identifier of the flow. Format:
24765//   `projects//locations//agents//flows/`.
24766func (r *ProjectsLocationsAgentsFlowsService) Patch(nameid string, googleclouddialogflowcxv3flow *GoogleCloudDialogflowCxV3Flow) *ProjectsLocationsAgentsFlowsPatchCall {
24767	c := &ProjectsLocationsAgentsFlowsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24768	c.nameid = nameid
24769	c.googleclouddialogflowcxv3flow = googleclouddialogflowcxv3flow
24770	return c
24771}
24772
24773// LanguageCode sets the optional parameter "languageCode": The language
24774// of the following fields in `flow`: *
24775// `Flow.event_handlers.trigger_fulfillment.messages` *
24776// `Flow.event_handlers.trigger_fulfillment.conditional_cases` *
24777// `Flow.transition_routes.trigger_fulfillment.messages` *
24778// `Flow.transition_routes.trigger_fulfillment.conditional_cases` If not
24779// specified, the agent's default language is used. Many languages
24780// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
24781// supported. Note: languages must be enabled in the agent before they
24782// can be used.
24783func (c *ProjectsLocationsAgentsFlowsPatchCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsFlowsPatchCall {
24784	c.urlParams_.Set("languageCode", languageCode)
24785	return c
24786}
24787
24788// UpdateMask sets the optional parameter "updateMask": The mask to
24789// control which fields get updated. If the mask is not present, all
24790// fields will be updated.
24791func (c *ProjectsLocationsAgentsFlowsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsAgentsFlowsPatchCall {
24792	c.urlParams_.Set("updateMask", updateMask)
24793	return c
24794}
24795
24796// Fields allows partial responses to be retrieved. See
24797// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24798// for more information.
24799func (c *ProjectsLocationsAgentsFlowsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsPatchCall {
24800	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24801	return c
24802}
24803
24804// Context sets the context to be used in this call's Do method. Any
24805// pending HTTP request will be aborted if the provided context is
24806// canceled.
24807func (c *ProjectsLocationsAgentsFlowsPatchCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsPatchCall {
24808	c.ctx_ = ctx
24809	return c
24810}
24811
24812// Header returns an http.Header that can be modified by the caller to
24813// add HTTP headers to the request.
24814func (c *ProjectsLocationsAgentsFlowsPatchCall) Header() http.Header {
24815	if c.header_ == nil {
24816		c.header_ = make(http.Header)
24817	}
24818	return c.header_
24819}
24820
24821func (c *ProjectsLocationsAgentsFlowsPatchCall) doRequest(alt string) (*http.Response, error) {
24822	reqHeaders := make(http.Header)
24823	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
24824	for k, v := range c.header_ {
24825		reqHeaders[k] = v
24826	}
24827	reqHeaders.Set("User-Agent", c.s.userAgent())
24828	var body io.Reader = nil
24829	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3flow)
24830	if err != nil {
24831		return nil, err
24832	}
24833	reqHeaders.Set("Content-Type", "application/json")
24834	c.urlParams_.Set("alt", alt)
24835	c.urlParams_.Set("prettyPrint", "false")
24836	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
24837	urls += "?" + c.urlParams_.Encode()
24838	req, err := http.NewRequest("PATCH", urls, body)
24839	if err != nil {
24840		return nil, err
24841	}
24842	req.Header = reqHeaders
24843	googleapi.Expand(req.URL, map[string]string{
24844		"name": c.nameid,
24845	})
24846	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24847}
24848
24849// Do executes the "dialogflow.projects.locations.agents.flows.patch" call.
24850// Exactly one of *GoogleCloudDialogflowCxV3Flow or error will be
24851// non-nil. Any non-2xx status code is an error. Response headers are in
24852// either *GoogleCloudDialogflowCxV3Flow.ServerResponse.Header or (if a
24853// response was returned at all) in error.(*googleapi.Error).Header. Use
24854// googleapi.IsNotModified to check whether the returned error was
24855// because http.StatusNotModified was returned.
24856func (c *ProjectsLocationsAgentsFlowsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3Flow, error) {
24857	gensupport.SetOptions(c.urlParams_, opts...)
24858	res, err := c.doRequest("json")
24859	if res != nil && res.StatusCode == http.StatusNotModified {
24860		if res.Body != nil {
24861			res.Body.Close()
24862		}
24863		return nil, &googleapi.Error{
24864			Code:   res.StatusCode,
24865			Header: res.Header,
24866		}
24867	}
24868	if err != nil {
24869		return nil, err
24870	}
24871	defer googleapi.CloseBody(res)
24872	if err := googleapi.CheckResponse(res); err != nil {
24873		return nil, err
24874	}
24875	ret := &GoogleCloudDialogflowCxV3Flow{
24876		ServerResponse: googleapi.ServerResponse{
24877			Header:         res.Header,
24878			HTTPStatusCode: res.StatusCode,
24879		},
24880	}
24881	target := &ret
24882	if err := gensupport.DecodeResponse(target, res); err != nil {
24883		return nil, err
24884	}
24885	return ret, nil
24886	// {
24887	//   "description": "Updates the specified flow. Note: You should always train a flow prior to sending it queries. See the [training documentation](https://cloud.google.com/dialogflow/cx/docs/concept/training).",
24888	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}",
24889	//   "httpMethod": "PATCH",
24890	//   "id": "dialogflow.projects.locations.agents.flows.patch",
24891	//   "parameterOrder": [
24892	//     "name"
24893	//   ],
24894	//   "parameters": {
24895	//     "languageCode": {
24896	//       "description": "The language of the following fields in `flow`: * `Flow.event_handlers.trigger_fulfillment.messages` * `Flow.event_handlers.trigger_fulfillment.conditional_cases` * `Flow.transition_routes.trigger_fulfillment.messages` * `Flow.transition_routes.trigger_fulfillment.conditional_cases` If not specified, the agent's default language is used. [Many languages](https://cloud.google.com/dialogflow/cx/docs/reference/language) are supported. Note: languages must be enabled in the agent before they can be used.",
24897	//       "location": "query",
24898	//       "type": "string"
24899	//     },
24900	//     "name": {
24901	//       "description": "The unique identifier of the flow. Format: `projects//locations//agents//flows/`.",
24902	//       "location": "path",
24903	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+$",
24904	//       "required": true,
24905	//       "type": "string"
24906	//     },
24907	//     "updateMask": {
24908	//       "description": "The mask to control which fields get updated. If the mask is not present, all fields will be updated.",
24909	//       "format": "google-fieldmask",
24910	//       "location": "query",
24911	//       "type": "string"
24912	//     }
24913	//   },
24914	//   "path": "v3/{+name}",
24915	//   "request": {
24916	//     "$ref": "GoogleCloudDialogflowCxV3Flow"
24917	//   },
24918	//   "response": {
24919	//     "$ref": "GoogleCloudDialogflowCxV3Flow"
24920	//   },
24921	//   "scopes": [
24922	//     "https://www.googleapis.com/auth/cloud-platform",
24923	//     "https://www.googleapis.com/auth/dialogflow"
24924	//   ]
24925	// }
24926
24927}
24928
24929// method id "dialogflow.projects.locations.agents.flows.train":
24930
24931type ProjectsLocationsAgentsFlowsTrainCall struct {
24932	s                                         *Service
24933	name                                      string
24934	googleclouddialogflowcxv3trainflowrequest *GoogleCloudDialogflowCxV3TrainFlowRequest
24935	urlParams_                                gensupport.URLParams
24936	ctx_                                      context.Context
24937	header_                                   http.Header
24938}
24939
24940// Train: Trains the specified flow. Note that only the flow in 'draft'
24941// environment is trained. Note: You should always train a flow prior to
24942// sending it queries. See the training documentation
24943// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
24944//
24945// - name: The flow to train. Format:
24946//   `projects//locations//agents//flows/`.
24947func (r *ProjectsLocationsAgentsFlowsService) Train(name string, googleclouddialogflowcxv3trainflowrequest *GoogleCloudDialogflowCxV3TrainFlowRequest) *ProjectsLocationsAgentsFlowsTrainCall {
24948	c := &ProjectsLocationsAgentsFlowsTrainCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24949	c.name = name
24950	c.googleclouddialogflowcxv3trainflowrequest = googleclouddialogflowcxv3trainflowrequest
24951	return c
24952}
24953
24954// Fields allows partial responses to be retrieved. See
24955// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24956// for more information.
24957func (c *ProjectsLocationsAgentsFlowsTrainCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsTrainCall {
24958	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24959	return c
24960}
24961
24962// Context sets the context to be used in this call's Do method. Any
24963// pending HTTP request will be aborted if the provided context is
24964// canceled.
24965func (c *ProjectsLocationsAgentsFlowsTrainCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsTrainCall {
24966	c.ctx_ = ctx
24967	return c
24968}
24969
24970// Header returns an http.Header that can be modified by the caller to
24971// add HTTP headers to the request.
24972func (c *ProjectsLocationsAgentsFlowsTrainCall) Header() http.Header {
24973	if c.header_ == nil {
24974		c.header_ = make(http.Header)
24975	}
24976	return c.header_
24977}
24978
24979func (c *ProjectsLocationsAgentsFlowsTrainCall) doRequest(alt string) (*http.Response, error) {
24980	reqHeaders := make(http.Header)
24981	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
24982	for k, v := range c.header_ {
24983		reqHeaders[k] = v
24984	}
24985	reqHeaders.Set("User-Agent", c.s.userAgent())
24986	var body io.Reader = nil
24987	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3trainflowrequest)
24988	if err != nil {
24989		return nil, err
24990	}
24991	reqHeaders.Set("Content-Type", "application/json")
24992	c.urlParams_.Set("alt", alt)
24993	c.urlParams_.Set("prettyPrint", "false")
24994	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}:train")
24995	urls += "?" + c.urlParams_.Encode()
24996	req, err := http.NewRequest("POST", urls, body)
24997	if err != nil {
24998		return nil, err
24999	}
25000	req.Header = reqHeaders
25001	googleapi.Expand(req.URL, map[string]string{
25002		"name": c.name,
25003	})
25004	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25005}
25006
25007// Do executes the "dialogflow.projects.locations.agents.flows.train" call.
25008// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
25009// Any non-2xx status code is an error. Response headers are in either
25010// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
25011// was returned at all) in error.(*googleapi.Error).Header. Use
25012// googleapi.IsNotModified to check whether the returned error was
25013// because http.StatusNotModified was returned.
25014func (c *ProjectsLocationsAgentsFlowsTrainCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
25015	gensupport.SetOptions(c.urlParams_, opts...)
25016	res, err := c.doRequest("json")
25017	if res != nil && res.StatusCode == http.StatusNotModified {
25018		if res.Body != nil {
25019			res.Body.Close()
25020		}
25021		return nil, &googleapi.Error{
25022			Code:   res.StatusCode,
25023			Header: res.Header,
25024		}
25025	}
25026	if err != nil {
25027		return nil, err
25028	}
25029	defer googleapi.CloseBody(res)
25030	if err := googleapi.CheckResponse(res); err != nil {
25031		return nil, err
25032	}
25033	ret := &GoogleLongrunningOperation{
25034		ServerResponse: googleapi.ServerResponse{
25035			Header:         res.Header,
25036			HTTPStatusCode: res.StatusCode,
25037		},
25038	}
25039	target := &ret
25040	if err := gensupport.DecodeResponse(target, res); err != nil {
25041		return nil, err
25042	}
25043	return ret, nil
25044	// {
25045	//   "description": "Trains the specified flow. Note that only the flow in 'draft' environment is trained. Note: You should always train a flow prior to sending it queries. See the [training documentation](https://cloud.google.com/dialogflow/cx/docs/concept/training).",
25046	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}:train",
25047	//   "httpMethod": "POST",
25048	//   "id": "dialogflow.projects.locations.agents.flows.train",
25049	//   "parameterOrder": [
25050	//     "name"
25051	//   ],
25052	//   "parameters": {
25053	//     "name": {
25054	//       "description": "Required. The flow to train. Format: `projects//locations//agents//flows/`.",
25055	//       "location": "path",
25056	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+$",
25057	//       "required": true,
25058	//       "type": "string"
25059	//     }
25060	//   },
25061	//   "path": "v3/{+name}:train",
25062	//   "request": {
25063	//     "$ref": "GoogleCloudDialogflowCxV3TrainFlowRequest"
25064	//   },
25065	//   "response": {
25066	//     "$ref": "GoogleLongrunningOperation"
25067	//   },
25068	//   "scopes": [
25069	//     "https://www.googleapis.com/auth/cloud-platform",
25070	//     "https://www.googleapis.com/auth/dialogflow"
25071	//   ]
25072	// }
25073
25074}
25075
25076// method id "dialogflow.projects.locations.agents.flows.validate":
25077
25078type ProjectsLocationsAgentsFlowsValidateCall struct {
25079	s                                            *Service
25080	name                                         string
25081	googleclouddialogflowcxv3validateflowrequest *GoogleCloudDialogflowCxV3ValidateFlowRequest
25082	urlParams_                                   gensupport.URLParams
25083	ctx_                                         context.Context
25084	header_                                      http.Header
25085}
25086
25087// Validate: Validates the specified flow and creates or updates
25088// validation results. Please call this API after the training is
25089// completed to get the complete validation results.
25090//
25091// - name: The flow to validate. Format:
25092//   `projects//locations//agents//flows/`.
25093func (r *ProjectsLocationsAgentsFlowsService) Validate(name string, googleclouddialogflowcxv3validateflowrequest *GoogleCloudDialogflowCxV3ValidateFlowRequest) *ProjectsLocationsAgentsFlowsValidateCall {
25094	c := &ProjectsLocationsAgentsFlowsValidateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25095	c.name = name
25096	c.googleclouddialogflowcxv3validateflowrequest = googleclouddialogflowcxv3validateflowrequest
25097	return c
25098}
25099
25100// Fields allows partial responses to be retrieved. See
25101// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25102// for more information.
25103func (c *ProjectsLocationsAgentsFlowsValidateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsValidateCall {
25104	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25105	return c
25106}
25107
25108// Context sets the context to be used in this call's Do method. Any
25109// pending HTTP request will be aborted if the provided context is
25110// canceled.
25111func (c *ProjectsLocationsAgentsFlowsValidateCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsValidateCall {
25112	c.ctx_ = ctx
25113	return c
25114}
25115
25116// Header returns an http.Header that can be modified by the caller to
25117// add HTTP headers to the request.
25118func (c *ProjectsLocationsAgentsFlowsValidateCall) Header() http.Header {
25119	if c.header_ == nil {
25120		c.header_ = make(http.Header)
25121	}
25122	return c.header_
25123}
25124
25125func (c *ProjectsLocationsAgentsFlowsValidateCall) doRequest(alt string) (*http.Response, error) {
25126	reqHeaders := make(http.Header)
25127	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
25128	for k, v := range c.header_ {
25129		reqHeaders[k] = v
25130	}
25131	reqHeaders.Set("User-Agent", c.s.userAgent())
25132	var body io.Reader = nil
25133	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3validateflowrequest)
25134	if err != nil {
25135		return nil, err
25136	}
25137	reqHeaders.Set("Content-Type", "application/json")
25138	c.urlParams_.Set("alt", alt)
25139	c.urlParams_.Set("prettyPrint", "false")
25140	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}:validate")
25141	urls += "?" + c.urlParams_.Encode()
25142	req, err := http.NewRequest("POST", urls, body)
25143	if err != nil {
25144		return nil, err
25145	}
25146	req.Header = reqHeaders
25147	googleapi.Expand(req.URL, map[string]string{
25148		"name": c.name,
25149	})
25150	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25151}
25152
25153// Do executes the "dialogflow.projects.locations.agents.flows.validate" call.
25154// Exactly one of *GoogleCloudDialogflowCxV3FlowValidationResult or
25155// error will be non-nil. Any non-2xx status code is an error. Response
25156// headers are in either
25157// *GoogleCloudDialogflowCxV3FlowValidationResult.ServerResponse.Header
25158// or (if a response was returned at all) in
25159// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
25160// whether the returned error was because http.StatusNotModified was
25161// returned.
25162func (c *ProjectsLocationsAgentsFlowsValidateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3FlowValidationResult, error) {
25163	gensupport.SetOptions(c.urlParams_, opts...)
25164	res, err := c.doRequest("json")
25165	if res != nil && res.StatusCode == http.StatusNotModified {
25166		if res.Body != nil {
25167			res.Body.Close()
25168		}
25169		return nil, &googleapi.Error{
25170			Code:   res.StatusCode,
25171			Header: res.Header,
25172		}
25173	}
25174	if err != nil {
25175		return nil, err
25176	}
25177	defer googleapi.CloseBody(res)
25178	if err := googleapi.CheckResponse(res); err != nil {
25179		return nil, err
25180	}
25181	ret := &GoogleCloudDialogflowCxV3FlowValidationResult{
25182		ServerResponse: googleapi.ServerResponse{
25183			Header:         res.Header,
25184			HTTPStatusCode: res.StatusCode,
25185		},
25186	}
25187	target := &ret
25188	if err := gensupport.DecodeResponse(target, res); err != nil {
25189		return nil, err
25190	}
25191	return ret, nil
25192	// {
25193	//   "description": "Validates the specified flow and creates or updates validation results. Please call this API after the training is completed to get the complete validation results.",
25194	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}:validate",
25195	//   "httpMethod": "POST",
25196	//   "id": "dialogflow.projects.locations.agents.flows.validate",
25197	//   "parameterOrder": [
25198	//     "name"
25199	//   ],
25200	//   "parameters": {
25201	//     "name": {
25202	//       "description": "Required. The flow to validate. Format: `projects//locations//agents//flows/`.",
25203	//       "location": "path",
25204	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+$",
25205	//       "required": true,
25206	//       "type": "string"
25207	//     }
25208	//   },
25209	//   "path": "v3/{+name}:validate",
25210	//   "request": {
25211	//     "$ref": "GoogleCloudDialogflowCxV3ValidateFlowRequest"
25212	//   },
25213	//   "response": {
25214	//     "$ref": "GoogleCloudDialogflowCxV3FlowValidationResult"
25215	//   },
25216	//   "scopes": [
25217	//     "https://www.googleapis.com/auth/cloud-platform",
25218	//     "https://www.googleapis.com/auth/dialogflow"
25219	//   ]
25220	// }
25221
25222}
25223
25224// method id "dialogflow.projects.locations.agents.flows.pages.create":
25225
25226type ProjectsLocationsAgentsFlowsPagesCreateCall struct {
25227	s                             *Service
25228	parent                        string
25229	googleclouddialogflowcxv3page *GoogleCloudDialogflowCxV3Page
25230	urlParams_                    gensupport.URLParams
25231	ctx_                          context.Context
25232	header_                       http.Header
25233}
25234
25235// Create: Creates a page in the specified flow. Note: You should always
25236// train a flow prior to sending it queries. See the training
25237// documentation
25238// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
25239//
25240// - parent: The flow to create a page for. Format:
25241//   `projects//locations//agents//flows/`.
25242func (r *ProjectsLocationsAgentsFlowsPagesService) Create(parent string, googleclouddialogflowcxv3page *GoogleCloudDialogflowCxV3Page) *ProjectsLocationsAgentsFlowsPagesCreateCall {
25243	c := &ProjectsLocationsAgentsFlowsPagesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25244	c.parent = parent
25245	c.googleclouddialogflowcxv3page = googleclouddialogflowcxv3page
25246	return c
25247}
25248
25249// LanguageCode sets the optional parameter "languageCode": The language
25250// of the following fields in `page`: *
25251// `Page.entry_fulfillment.messages` *
25252// `Page.entry_fulfillment.conditional_cases` *
25253// `Page.event_handlers.trigger_fulfillment.messages` *
25254// `Page.event_handlers.trigger_fulfillment.conditional_cases` *
25255// `Page.form.parameters.fill_behavior.initial_prompt_fulfillment.message
25256// s` *
25257// `Page.form.parameters.fill_behavior.initial_prompt_fulfillment.conditi
25258// onal_cases` *
25259// `Page.form.parameters.fill_behavior.reprompt_event_handlers.messages`
25260// *
25261// `Page.form.parameters.fill_behavior.reprompt_event_handlers.conditiona
25262// l_cases` * `Page.transition_routes.trigger_fulfillment.messages` *
25263// `Page.transition_routes.trigger_fulfillment.conditional_cases` If not
25264// specified, the agent's default language is used. Many languages
25265// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
25266// supported. Note: languages must be enabled in the agent before they
25267// can be used.
25268func (c *ProjectsLocationsAgentsFlowsPagesCreateCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsFlowsPagesCreateCall {
25269	c.urlParams_.Set("languageCode", languageCode)
25270	return c
25271}
25272
25273// Fields allows partial responses to be retrieved. See
25274// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25275// for more information.
25276func (c *ProjectsLocationsAgentsFlowsPagesCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsPagesCreateCall {
25277	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25278	return c
25279}
25280
25281// Context sets the context to be used in this call's Do method. Any
25282// pending HTTP request will be aborted if the provided context is
25283// canceled.
25284func (c *ProjectsLocationsAgentsFlowsPagesCreateCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsPagesCreateCall {
25285	c.ctx_ = ctx
25286	return c
25287}
25288
25289// Header returns an http.Header that can be modified by the caller to
25290// add HTTP headers to the request.
25291func (c *ProjectsLocationsAgentsFlowsPagesCreateCall) Header() http.Header {
25292	if c.header_ == nil {
25293		c.header_ = make(http.Header)
25294	}
25295	return c.header_
25296}
25297
25298func (c *ProjectsLocationsAgentsFlowsPagesCreateCall) doRequest(alt string) (*http.Response, error) {
25299	reqHeaders := make(http.Header)
25300	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
25301	for k, v := range c.header_ {
25302		reqHeaders[k] = v
25303	}
25304	reqHeaders.Set("User-Agent", c.s.userAgent())
25305	var body io.Reader = nil
25306	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3page)
25307	if err != nil {
25308		return nil, err
25309	}
25310	reqHeaders.Set("Content-Type", "application/json")
25311	c.urlParams_.Set("alt", alt)
25312	c.urlParams_.Set("prettyPrint", "false")
25313	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/pages")
25314	urls += "?" + c.urlParams_.Encode()
25315	req, err := http.NewRequest("POST", urls, body)
25316	if err != nil {
25317		return nil, err
25318	}
25319	req.Header = reqHeaders
25320	googleapi.Expand(req.URL, map[string]string{
25321		"parent": c.parent,
25322	})
25323	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25324}
25325
25326// Do executes the "dialogflow.projects.locations.agents.flows.pages.create" call.
25327// Exactly one of *GoogleCloudDialogflowCxV3Page or error will be
25328// non-nil. Any non-2xx status code is an error. Response headers are in
25329// either *GoogleCloudDialogflowCxV3Page.ServerResponse.Header or (if a
25330// response was returned at all) in error.(*googleapi.Error).Header. Use
25331// googleapi.IsNotModified to check whether the returned error was
25332// because http.StatusNotModified was returned.
25333func (c *ProjectsLocationsAgentsFlowsPagesCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3Page, error) {
25334	gensupport.SetOptions(c.urlParams_, opts...)
25335	res, err := c.doRequest("json")
25336	if res != nil && res.StatusCode == http.StatusNotModified {
25337		if res.Body != nil {
25338			res.Body.Close()
25339		}
25340		return nil, &googleapi.Error{
25341			Code:   res.StatusCode,
25342			Header: res.Header,
25343		}
25344	}
25345	if err != nil {
25346		return nil, err
25347	}
25348	defer googleapi.CloseBody(res)
25349	if err := googleapi.CheckResponse(res); err != nil {
25350		return nil, err
25351	}
25352	ret := &GoogleCloudDialogflowCxV3Page{
25353		ServerResponse: googleapi.ServerResponse{
25354			Header:         res.Header,
25355			HTTPStatusCode: res.StatusCode,
25356		},
25357	}
25358	target := &ret
25359	if err := gensupport.DecodeResponse(target, res); err != nil {
25360		return nil, err
25361	}
25362	return ret, nil
25363	// {
25364	//   "description": "Creates a page in the specified flow. Note: You should always train a flow prior to sending it queries. See the [training documentation](https://cloud.google.com/dialogflow/cx/docs/concept/training).",
25365	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/pages",
25366	//   "httpMethod": "POST",
25367	//   "id": "dialogflow.projects.locations.agents.flows.pages.create",
25368	//   "parameterOrder": [
25369	//     "parent"
25370	//   ],
25371	//   "parameters": {
25372	//     "languageCode": {
25373	//       "description": "The language of the following fields in `page`: * `Page.entry_fulfillment.messages` * `Page.entry_fulfillment.conditional_cases` * `Page.event_handlers.trigger_fulfillment.messages` * `Page.event_handlers.trigger_fulfillment.conditional_cases` * `Page.form.parameters.fill_behavior.initial_prompt_fulfillment.messages` * `Page.form.parameters.fill_behavior.initial_prompt_fulfillment.conditional_cases` * `Page.form.parameters.fill_behavior.reprompt_event_handlers.messages` * `Page.form.parameters.fill_behavior.reprompt_event_handlers.conditional_cases` * `Page.transition_routes.trigger_fulfillment.messages` * `Page.transition_routes.trigger_fulfillment.conditional_cases` If not specified, the agent's default language is used. [Many languages](https://cloud.google.com/dialogflow/cx/docs/reference/language) are supported. Note: languages must be enabled in the agent before they can be used.",
25374	//       "location": "query",
25375	//       "type": "string"
25376	//     },
25377	//     "parent": {
25378	//       "description": "Required. The flow to create a page for. Format: `projects//locations//agents//flows/`.",
25379	//       "location": "path",
25380	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+$",
25381	//       "required": true,
25382	//       "type": "string"
25383	//     }
25384	//   },
25385	//   "path": "v3/{+parent}/pages",
25386	//   "request": {
25387	//     "$ref": "GoogleCloudDialogflowCxV3Page"
25388	//   },
25389	//   "response": {
25390	//     "$ref": "GoogleCloudDialogflowCxV3Page"
25391	//   },
25392	//   "scopes": [
25393	//     "https://www.googleapis.com/auth/cloud-platform",
25394	//     "https://www.googleapis.com/auth/dialogflow"
25395	//   ]
25396	// }
25397
25398}
25399
25400// method id "dialogflow.projects.locations.agents.flows.pages.delete":
25401
25402type ProjectsLocationsAgentsFlowsPagesDeleteCall struct {
25403	s          *Service
25404	name       string
25405	urlParams_ gensupport.URLParams
25406	ctx_       context.Context
25407	header_    http.Header
25408}
25409
25410// Delete: Deletes the specified page. Note: You should always train a
25411// flow prior to sending it queries. See the training documentation
25412// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
25413//
25414// - name: The name of the page to delete. Format:
25415//   `projects//locations//agents//Flows//pages/`.
25416func (r *ProjectsLocationsAgentsFlowsPagesService) Delete(name string) *ProjectsLocationsAgentsFlowsPagesDeleteCall {
25417	c := &ProjectsLocationsAgentsFlowsPagesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25418	c.name = name
25419	return c
25420}
25421
25422// Force sets the optional parameter "force": This field has no effect
25423// for pages with no incoming transitions. For pages with incoming
25424// transitions: * If `force` is set to false, an error will be returned
25425// with message indicating the incoming transitions. * If `force` is set
25426// to true, Dialogflow will remove the page, as well as any transitions
25427// to the page (i.e. Target page in event handlers or Target page in
25428// transition routes that point to this page will be cleared).
25429func (c *ProjectsLocationsAgentsFlowsPagesDeleteCall) Force(force bool) *ProjectsLocationsAgentsFlowsPagesDeleteCall {
25430	c.urlParams_.Set("force", fmt.Sprint(force))
25431	return c
25432}
25433
25434// Fields allows partial responses to be retrieved. See
25435// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25436// for more information.
25437func (c *ProjectsLocationsAgentsFlowsPagesDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsPagesDeleteCall {
25438	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25439	return c
25440}
25441
25442// Context sets the context to be used in this call's Do method. Any
25443// pending HTTP request will be aborted if the provided context is
25444// canceled.
25445func (c *ProjectsLocationsAgentsFlowsPagesDeleteCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsPagesDeleteCall {
25446	c.ctx_ = ctx
25447	return c
25448}
25449
25450// Header returns an http.Header that can be modified by the caller to
25451// add HTTP headers to the request.
25452func (c *ProjectsLocationsAgentsFlowsPagesDeleteCall) Header() http.Header {
25453	if c.header_ == nil {
25454		c.header_ = make(http.Header)
25455	}
25456	return c.header_
25457}
25458
25459func (c *ProjectsLocationsAgentsFlowsPagesDeleteCall) doRequest(alt string) (*http.Response, error) {
25460	reqHeaders := make(http.Header)
25461	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
25462	for k, v := range c.header_ {
25463		reqHeaders[k] = v
25464	}
25465	reqHeaders.Set("User-Agent", c.s.userAgent())
25466	var body io.Reader = nil
25467	c.urlParams_.Set("alt", alt)
25468	c.urlParams_.Set("prettyPrint", "false")
25469	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
25470	urls += "?" + c.urlParams_.Encode()
25471	req, err := http.NewRequest("DELETE", urls, body)
25472	if err != nil {
25473		return nil, err
25474	}
25475	req.Header = reqHeaders
25476	googleapi.Expand(req.URL, map[string]string{
25477		"name": c.name,
25478	})
25479	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25480}
25481
25482// Do executes the "dialogflow.projects.locations.agents.flows.pages.delete" call.
25483// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
25484// non-2xx status code is an error. Response headers are in either
25485// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
25486// returned at all) in error.(*googleapi.Error).Header. Use
25487// googleapi.IsNotModified to check whether the returned error was
25488// because http.StatusNotModified was returned.
25489func (c *ProjectsLocationsAgentsFlowsPagesDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
25490	gensupport.SetOptions(c.urlParams_, opts...)
25491	res, err := c.doRequest("json")
25492	if res != nil && res.StatusCode == http.StatusNotModified {
25493		if res.Body != nil {
25494			res.Body.Close()
25495		}
25496		return nil, &googleapi.Error{
25497			Code:   res.StatusCode,
25498			Header: res.Header,
25499		}
25500	}
25501	if err != nil {
25502		return nil, err
25503	}
25504	defer googleapi.CloseBody(res)
25505	if err := googleapi.CheckResponse(res); err != nil {
25506		return nil, err
25507	}
25508	ret := &GoogleProtobufEmpty{
25509		ServerResponse: googleapi.ServerResponse{
25510			Header:         res.Header,
25511			HTTPStatusCode: res.StatusCode,
25512		},
25513	}
25514	target := &ret
25515	if err := gensupport.DecodeResponse(target, res); err != nil {
25516		return nil, err
25517	}
25518	return ret, nil
25519	// {
25520	//   "description": "Deletes the specified page. Note: You should always train a flow prior to sending it queries. See the [training documentation](https://cloud.google.com/dialogflow/cx/docs/concept/training).",
25521	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/pages/{pagesId}",
25522	//   "httpMethod": "DELETE",
25523	//   "id": "dialogflow.projects.locations.agents.flows.pages.delete",
25524	//   "parameterOrder": [
25525	//     "name"
25526	//   ],
25527	//   "parameters": {
25528	//     "force": {
25529	//       "description": "This field has no effect for pages with no incoming transitions. For pages with incoming transitions: * If `force` is set to false, an error will be returned with message indicating the incoming transitions. * If `force` is set to true, Dialogflow will remove the page, as well as any transitions to the page (i.e. Target page in event handlers or Target page in transition routes that point to this page will be cleared).",
25530	//       "location": "query",
25531	//       "type": "boolean"
25532	//     },
25533	//     "name": {
25534	//       "description": "Required. The name of the page to delete. Format: `projects//locations//agents//Flows//pages/`.",
25535	//       "location": "path",
25536	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+/pages/[^/]+$",
25537	//       "required": true,
25538	//       "type": "string"
25539	//     }
25540	//   },
25541	//   "path": "v3/{+name}",
25542	//   "response": {
25543	//     "$ref": "GoogleProtobufEmpty"
25544	//   },
25545	//   "scopes": [
25546	//     "https://www.googleapis.com/auth/cloud-platform",
25547	//     "https://www.googleapis.com/auth/dialogflow"
25548	//   ]
25549	// }
25550
25551}
25552
25553// method id "dialogflow.projects.locations.agents.flows.pages.get":
25554
25555type ProjectsLocationsAgentsFlowsPagesGetCall struct {
25556	s            *Service
25557	name         string
25558	urlParams_   gensupport.URLParams
25559	ifNoneMatch_ string
25560	ctx_         context.Context
25561	header_      http.Header
25562}
25563
25564// Get: Retrieves the specified page.
25565//
25566// - name: The name of the page. Format:
25567//   `projects//locations//agents//flows//pages/`.
25568func (r *ProjectsLocationsAgentsFlowsPagesService) Get(name string) *ProjectsLocationsAgentsFlowsPagesGetCall {
25569	c := &ProjectsLocationsAgentsFlowsPagesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25570	c.name = name
25571	return c
25572}
25573
25574// LanguageCode sets the optional parameter "languageCode": The language
25575// to retrieve the page for. The following fields are language
25576// dependent: * `Page.entry_fulfillment.messages` *
25577// `Page.entry_fulfillment.conditional_cases` *
25578// `Page.event_handlers.trigger_fulfillment.messages` *
25579// `Page.event_handlers.trigger_fulfillment.conditional_cases` *
25580// `Page.form.parameters.fill_behavior.initial_prompt_fulfillment.message
25581// s` *
25582// `Page.form.parameters.fill_behavior.initial_prompt_fulfillment.conditi
25583// onal_cases` *
25584// `Page.form.parameters.fill_behavior.reprompt_event_handlers.messages`
25585// *
25586// `Page.form.parameters.fill_behavior.reprompt_event_handlers.conditiona
25587// l_cases` * `Page.transition_routes.trigger_fulfillment.messages` *
25588// `Page.transition_routes.trigger_fulfillment.conditional_cases` If not
25589// specified, the agent's default language is used. Many languages
25590// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
25591// supported. Note: languages must be enabled in the agent before they
25592// can be used.
25593func (c *ProjectsLocationsAgentsFlowsPagesGetCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsFlowsPagesGetCall {
25594	c.urlParams_.Set("languageCode", languageCode)
25595	return c
25596}
25597
25598// Fields allows partial responses to be retrieved. See
25599// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25600// for more information.
25601func (c *ProjectsLocationsAgentsFlowsPagesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsPagesGetCall {
25602	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25603	return c
25604}
25605
25606// IfNoneMatch sets the optional parameter which makes the operation
25607// fail if the object's ETag matches the given value. This is useful for
25608// getting updates only after the object has changed since the last
25609// request. Use googleapi.IsNotModified to check whether the response
25610// error from Do is the result of In-None-Match.
25611func (c *ProjectsLocationsAgentsFlowsPagesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsFlowsPagesGetCall {
25612	c.ifNoneMatch_ = entityTag
25613	return c
25614}
25615
25616// Context sets the context to be used in this call's Do method. Any
25617// pending HTTP request will be aborted if the provided context is
25618// canceled.
25619func (c *ProjectsLocationsAgentsFlowsPagesGetCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsPagesGetCall {
25620	c.ctx_ = ctx
25621	return c
25622}
25623
25624// Header returns an http.Header that can be modified by the caller to
25625// add HTTP headers to the request.
25626func (c *ProjectsLocationsAgentsFlowsPagesGetCall) Header() http.Header {
25627	if c.header_ == nil {
25628		c.header_ = make(http.Header)
25629	}
25630	return c.header_
25631}
25632
25633func (c *ProjectsLocationsAgentsFlowsPagesGetCall) doRequest(alt string) (*http.Response, error) {
25634	reqHeaders := make(http.Header)
25635	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
25636	for k, v := range c.header_ {
25637		reqHeaders[k] = v
25638	}
25639	reqHeaders.Set("User-Agent", c.s.userAgent())
25640	if c.ifNoneMatch_ != "" {
25641		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
25642	}
25643	var body io.Reader = nil
25644	c.urlParams_.Set("alt", alt)
25645	c.urlParams_.Set("prettyPrint", "false")
25646	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
25647	urls += "?" + c.urlParams_.Encode()
25648	req, err := http.NewRequest("GET", urls, body)
25649	if err != nil {
25650		return nil, err
25651	}
25652	req.Header = reqHeaders
25653	googleapi.Expand(req.URL, map[string]string{
25654		"name": c.name,
25655	})
25656	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25657}
25658
25659// Do executes the "dialogflow.projects.locations.agents.flows.pages.get" call.
25660// Exactly one of *GoogleCloudDialogflowCxV3Page or error will be
25661// non-nil. Any non-2xx status code is an error. Response headers are in
25662// either *GoogleCloudDialogflowCxV3Page.ServerResponse.Header or (if a
25663// response was returned at all) in error.(*googleapi.Error).Header. Use
25664// googleapi.IsNotModified to check whether the returned error was
25665// because http.StatusNotModified was returned.
25666func (c *ProjectsLocationsAgentsFlowsPagesGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3Page, error) {
25667	gensupport.SetOptions(c.urlParams_, opts...)
25668	res, err := c.doRequest("json")
25669	if res != nil && res.StatusCode == http.StatusNotModified {
25670		if res.Body != nil {
25671			res.Body.Close()
25672		}
25673		return nil, &googleapi.Error{
25674			Code:   res.StatusCode,
25675			Header: res.Header,
25676		}
25677	}
25678	if err != nil {
25679		return nil, err
25680	}
25681	defer googleapi.CloseBody(res)
25682	if err := googleapi.CheckResponse(res); err != nil {
25683		return nil, err
25684	}
25685	ret := &GoogleCloudDialogflowCxV3Page{
25686		ServerResponse: googleapi.ServerResponse{
25687			Header:         res.Header,
25688			HTTPStatusCode: res.StatusCode,
25689		},
25690	}
25691	target := &ret
25692	if err := gensupport.DecodeResponse(target, res); err != nil {
25693		return nil, err
25694	}
25695	return ret, nil
25696	// {
25697	//   "description": "Retrieves the specified page.",
25698	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/pages/{pagesId}",
25699	//   "httpMethod": "GET",
25700	//   "id": "dialogflow.projects.locations.agents.flows.pages.get",
25701	//   "parameterOrder": [
25702	//     "name"
25703	//   ],
25704	//   "parameters": {
25705	//     "languageCode": {
25706	//       "description": "The language to retrieve the page for. The following fields are language dependent: * `Page.entry_fulfillment.messages` * `Page.entry_fulfillment.conditional_cases` * `Page.event_handlers.trigger_fulfillment.messages` * `Page.event_handlers.trigger_fulfillment.conditional_cases` * `Page.form.parameters.fill_behavior.initial_prompt_fulfillment.messages` * `Page.form.parameters.fill_behavior.initial_prompt_fulfillment.conditional_cases` * `Page.form.parameters.fill_behavior.reprompt_event_handlers.messages` * `Page.form.parameters.fill_behavior.reprompt_event_handlers.conditional_cases` * `Page.transition_routes.trigger_fulfillment.messages` * `Page.transition_routes.trigger_fulfillment.conditional_cases` If not specified, the agent's default language is used. [Many languages](https://cloud.google.com/dialogflow/cx/docs/reference/language) are supported. Note: languages must be enabled in the agent before they can be used.",
25707	//       "location": "query",
25708	//       "type": "string"
25709	//     },
25710	//     "name": {
25711	//       "description": "Required. The name of the page. Format: `projects//locations//agents//flows//pages/`.",
25712	//       "location": "path",
25713	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+/pages/[^/]+$",
25714	//       "required": true,
25715	//       "type": "string"
25716	//     }
25717	//   },
25718	//   "path": "v3/{+name}",
25719	//   "response": {
25720	//     "$ref": "GoogleCloudDialogflowCxV3Page"
25721	//   },
25722	//   "scopes": [
25723	//     "https://www.googleapis.com/auth/cloud-platform",
25724	//     "https://www.googleapis.com/auth/dialogflow"
25725	//   ]
25726	// }
25727
25728}
25729
25730// method id "dialogflow.projects.locations.agents.flows.pages.list":
25731
25732type ProjectsLocationsAgentsFlowsPagesListCall struct {
25733	s            *Service
25734	parent       string
25735	urlParams_   gensupport.URLParams
25736	ifNoneMatch_ string
25737	ctx_         context.Context
25738	header_      http.Header
25739}
25740
25741// List: Returns the list of all pages in the specified flow.
25742//
25743// - parent: The flow to list all pages for. Format:
25744//   `projects//locations//agents//flows/`.
25745func (r *ProjectsLocationsAgentsFlowsPagesService) List(parent string) *ProjectsLocationsAgentsFlowsPagesListCall {
25746	c := &ProjectsLocationsAgentsFlowsPagesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25747	c.parent = parent
25748	return c
25749}
25750
25751// LanguageCode sets the optional parameter "languageCode": The language
25752// to list pages for. The following fields are language dependent: *
25753// `Page.entry_fulfillment.messages` *
25754// `Page.entry_fulfillment.conditional_cases` *
25755// `Page.event_handlers.trigger_fulfillment.messages` *
25756// `Page.event_handlers.trigger_fulfillment.conditional_cases` *
25757// `Page.form.parameters.fill_behavior.initial_prompt_fulfillment.message
25758// s` *
25759// `Page.form.parameters.fill_behavior.initial_prompt_fulfillment.conditi
25760// onal_cases` *
25761// `Page.form.parameters.fill_behavior.reprompt_event_handlers.messages`
25762// *
25763// `Page.form.parameters.fill_behavior.reprompt_event_handlers.conditiona
25764// l_cases` * `Page.transition_routes.trigger_fulfillment.messages` *
25765// `Page.transition_routes.trigger_fulfillment.conditional_cases` If not
25766// specified, the agent's default language is used. Many languages
25767// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
25768// supported. Note: languages must be enabled in the agent before they
25769// can be used.
25770func (c *ProjectsLocationsAgentsFlowsPagesListCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsFlowsPagesListCall {
25771	c.urlParams_.Set("languageCode", languageCode)
25772	return c
25773}
25774
25775// PageSize sets the optional parameter "pageSize": The maximum number
25776// of items to return in a single page. By default 100 and at most 1000.
25777func (c *ProjectsLocationsAgentsFlowsPagesListCall) PageSize(pageSize int64) *ProjectsLocationsAgentsFlowsPagesListCall {
25778	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
25779	return c
25780}
25781
25782// PageToken sets the optional parameter "pageToken": The
25783// next_page_token value returned from a previous list request.
25784func (c *ProjectsLocationsAgentsFlowsPagesListCall) PageToken(pageToken string) *ProjectsLocationsAgentsFlowsPagesListCall {
25785	c.urlParams_.Set("pageToken", pageToken)
25786	return c
25787}
25788
25789// Fields allows partial responses to be retrieved. See
25790// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25791// for more information.
25792func (c *ProjectsLocationsAgentsFlowsPagesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsPagesListCall {
25793	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25794	return c
25795}
25796
25797// IfNoneMatch sets the optional parameter which makes the operation
25798// fail if the object's ETag matches the given value. This is useful for
25799// getting updates only after the object has changed since the last
25800// request. Use googleapi.IsNotModified to check whether the response
25801// error from Do is the result of In-None-Match.
25802func (c *ProjectsLocationsAgentsFlowsPagesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsFlowsPagesListCall {
25803	c.ifNoneMatch_ = entityTag
25804	return c
25805}
25806
25807// Context sets the context to be used in this call's Do method. Any
25808// pending HTTP request will be aborted if the provided context is
25809// canceled.
25810func (c *ProjectsLocationsAgentsFlowsPagesListCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsPagesListCall {
25811	c.ctx_ = ctx
25812	return c
25813}
25814
25815// Header returns an http.Header that can be modified by the caller to
25816// add HTTP headers to the request.
25817func (c *ProjectsLocationsAgentsFlowsPagesListCall) Header() http.Header {
25818	if c.header_ == nil {
25819		c.header_ = make(http.Header)
25820	}
25821	return c.header_
25822}
25823
25824func (c *ProjectsLocationsAgentsFlowsPagesListCall) doRequest(alt string) (*http.Response, error) {
25825	reqHeaders := make(http.Header)
25826	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
25827	for k, v := range c.header_ {
25828		reqHeaders[k] = v
25829	}
25830	reqHeaders.Set("User-Agent", c.s.userAgent())
25831	if c.ifNoneMatch_ != "" {
25832		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
25833	}
25834	var body io.Reader = nil
25835	c.urlParams_.Set("alt", alt)
25836	c.urlParams_.Set("prettyPrint", "false")
25837	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/pages")
25838	urls += "?" + c.urlParams_.Encode()
25839	req, err := http.NewRequest("GET", urls, body)
25840	if err != nil {
25841		return nil, err
25842	}
25843	req.Header = reqHeaders
25844	googleapi.Expand(req.URL, map[string]string{
25845		"parent": c.parent,
25846	})
25847	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25848}
25849
25850// Do executes the "dialogflow.projects.locations.agents.flows.pages.list" call.
25851// Exactly one of *GoogleCloudDialogflowCxV3ListPagesResponse or error
25852// will be non-nil. Any non-2xx status code is an error. Response
25853// headers are in either
25854// *GoogleCloudDialogflowCxV3ListPagesResponse.ServerResponse.Header or
25855// (if a response was returned at all) in
25856// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
25857// whether the returned error was because http.StatusNotModified was
25858// returned.
25859func (c *ProjectsLocationsAgentsFlowsPagesListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3ListPagesResponse, error) {
25860	gensupport.SetOptions(c.urlParams_, opts...)
25861	res, err := c.doRequest("json")
25862	if res != nil && res.StatusCode == http.StatusNotModified {
25863		if res.Body != nil {
25864			res.Body.Close()
25865		}
25866		return nil, &googleapi.Error{
25867			Code:   res.StatusCode,
25868			Header: res.Header,
25869		}
25870	}
25871	if err != nil {
25872		return nil, err
25873	}
25874	defer googleapi.CloseBody(res)
25875	if err := googleapi.CheckResponse(res); err != nil {
25876		return nil, err
25877	}
25878	ret := &GoogleCloudDialogflowCxV3ListPagesResponse{
25879		ServerResponse: googleapi.ServerResponse{
25880			Header:         res.Header,
25881			HTTPStatusCode: res.StatusCode,
25882		},
25883	}
25884	target := &ret
25885	if err := gensupport.DecodeResponse(target, res); err != nil {
25886		return nil, err
25887	}
25888	return ret, nil
25889	// {
25890	//   "description": "Returns the list of all pages in the specified flow.",
25891	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/pages",
25892	//   "httpMethod": "GET",
25893	//   "id": "dialogflow.projects.locations.agents.flows.pages.list",
25894	//   "parameterOrder": [
25895	//     "parent"
25896	//   ],
25897	//   "parameters": {
25898	//     "languageCode": {
25899	//       "description": "The language to list pages for. The following fields are language dependent: * `Page.entry_fulfillment.messages` * `Page.entry_fulfillment.conditional_cases` * `Page.event_handlers.trigger_fulfillment.messages` * `Page.event_handlers.trigger_fulfillment.conditional_cases` * `Page.form.parameters.fill_behavior.initial_prompt_fulfillment.messages` * `Page.form.parameters.fill_behavior.initial_prompt_fulfillment.conditional_cases` * `Page.form.parameters.fill_behavior.reprompt_event_handlers.messages` * `Page.form.parameters.fill_behavior.reprompt_event_handlers.conditional_cases` * `Page.transition_routes.trigger_fulfillment.messages` * `Page.transition_routes.trigger_fulfillment.conditional_cases` If not specified, the agent's default language is used. [Many languages](https://cloud.google.com/dialogflow/cx/docs/reference/language) are supported. Note: languages must be enabled in the agent before they can be used.",
25900	//       "location": "query",
25901	//       "type": "string"
25902	//     },
25903	//     "pageSize": {
25904	//       "description": "The maximum number of items to return in a single page. By default 100 and at most 1000.",
25905	//       "format": "int32",
25906	//       "location": "query",
25907	//       "type": "integer"
25908	//     },
25909	//     "pageToken": {
25910	//       "description": "The next_page_token value returned from a previous list request.",
25911	//       "location": "query",
25912	//       "type": "string"
25913	//     },
25914	//     "parent": {
25915	//       "description": "Required. The flow to list all pages for. Format: `projects//locations//agents//flows/`.",
25916	//       "location": "path",
25917	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+$",
25918	//       "required": true,
25919	//       "type": "string"
25920	//     }
25921	//   },
25922	//   "path": "v3/{+parent}/pages",
25923	//   "response": {
25924	//     "$ref": "GoogleCloudDialogflowCxV3ListPagesResponse"
25925	//   },
25926	//   "scopes": [
25927	//     "https://www.googleapis.com/auth/cloud-platform",
25928	//     "https://www.googleapis.com/auth/dialogflow"
25929	//   ]
25930	// }
25931
25932}
25933
25934// Pages invokes f for each page of results.
25935// A non-nil error returned from f will halt the iteration.
25936// The provided context supersedes any context provided to the Context method.
25937func (c *ProjectsLocationsAgentsFlowsPagesListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3ListPagesResponse) error) error {
25938	c.ctx_ = ctx
25939	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
25940	for {
25941		x, err := c.Do()
25942		if err != nil {
25943			return err
25944		}
25945		if err := f(x); err != nil {
25946			return err
25947		}
25948		if x.NextPageToken == "" {
25949			return nil
25950		}
25951		c.PageToken(x.NextPageToken)
25952	}
25953}
25954
25955// method id "dialogflow.projects.locations.agents.flows.pages.patch":
25956
25957type ProjectsLocationsAgentsFlowsPagesPatchCall struct {
25958	s                             *Service
25959	nameid                        string
25960	googleclouddialogflowcxv3page *GoogleCloudDialogflowCxV3Page
25961	urlParams_                    gensupport.URLParams
25962	ctx_                          context.Context
25963	header_                       http.Header
25964}
25965
25966// Patch: Updates the specified page. Note: You should always train a
25967// flow prior to sending it queries. See the training documentation
25968// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
25969//
25970// - name: The unique identifier of the page. Required for the
25971//   Pages.UpdatePage method. Pages.CreatePage populates the name
25972//   automatically. Format:
25973//   `projects//locations//agents//flows//pages/`.
25974func (r *ProjectsLocationsAgentsFlowsPagesService) Patch(nameid string, googleclouddialogflowcxv3page *GoogleCloudDialogflowCxV3Page) *ProjectsLocationsAgentsFlowsPagesPatchCall {
25975	c := &ProjectsLocationsAgentsFlowsPagesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25976	c.nameid = nameid
25977	c.googleclouddialogflowcxv3page = googleclouddialogflowcxv3page
25978	return c
25979}
25980
25981// LanguageCode sets the optional parameter "languageCode": The language
25982// of the following fields in `page`: *
25983// `Page.entry_fulfillment.messages` *
25984// `Page.entry_fulfillment.conditional_cases` *
25985// `Page.event_handlers.trigger_fulfillment.messages` *
25986// `Page.event_handlers.trigger_fulfillment.conditional_cases` *
25987// `Page.form.parameters.fill_behavior.initial_prompt_fulfillment.message
25988// s` *
25989// `Page.form.parameters.fill_behavior.initial_prompt_fulfillment.conditi
25990// onal_cases` *
25991// `Page.form.parameters.fill_behavior.reprompt_event_handlers.messages`
25992// *
25993// `Page.form.parameters.fill_behavior.reprompt_event_handlers.conditiona
25994// l_cases` * `Page.transition_routes.trigger_fulfillment.messages` *
25995// `Page.transition_routes.trigger_fulfillment.conditional_cases` If not
25996// specified, the agent's default language is used. Many languages
25997// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
25998// supported. Note: languages must be enabled in the agent before they
25999// can be used.
26000func (c *ProjectsLocationsAgentsFlowsPagesPatchCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsFlowsPagesPatchCall {
26001	c.urlParams_.Set("languageCode", languageCode)
26002	return c
26003}
26004
26005// UpdateMask sets the optional parameter "updateMask": The mask to
26006// control which fields get updated. If the mask is not present, all
26007// fields will be updated.
26008func (c *ProjectsLocationsAgentsFlowsPagesPatchCall) UpdateMask(updateMask string) *ProjectsLocationsAgentsFlowsPagesPatchCall {
26009	c.urlParams_.Set("updateMask", updateMask)
26010	return c
26011}
26012
26013// Fields allows partial responses to be retrieved. See
26014// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26015// for more information.
26016func (c *ProjectsLocationsAgentsFlowsPagesPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsPagesPatchCall {
26017	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26018	return c
26019}
26020
26021// Context sets the context to be used in this call's Do method. Any
26022// pending HTTP request will be aborted if the provided context is
26023// canceled.
26024func (c *ProjectsLocationsAgentsFlowsPagesPatchCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsPagesPatchCall {
26025	c.ctx_ = ctx
26026	return c
26027}
26028
26029// Header returns an http.Header that can be modified by the caller to
26030// add HTTP headers to the request.
26031func (c *ProjectsLocationsAgentsFlowsPagesPatchCall) Header() http.Header {
26032	if c.header_ == nil {
26033		c.header_ = make(http.Header)
26034	}
26035	return c.header_
26036}
26037
26038func (c *ProjectsLocationsAgentsFlowsPagesPatchCall) doRequest(alt string) (*http.Response, error) {
26039	reqHeaders := make(http.Header)
26040	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
26041	for k, v := range c.header_ {
26042		reqHeaders[k] = v
26043	}
26044	reqHeaders.Set("User-Agent", c.s.userAgent())
26045	var body io.Reader = nil
26046	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3page)
26047	if err != nil {
26048		return nil, err
26049	}
26050	reqHeaders.Set("Content-Type", "application/json")
26051	c.urlParams_.Set("alt", alt)
26052	c.urlParams_.Set("prettyPrint", "false")
26053	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
26054	urls += "?" + c.urlParams_.Encode()
26055	req, err := http.NewRequest("PATCH", urls, body)
26056	if err != nil {
26057		return nil, err
26058	}
26059	req.Header = reqHeaders
26060	googleapi.Expand(req.URL, map[string]string{
26061		"name": c.nameid,
26062	})
26063	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26064}
26065
26066// Do executes the "dialogflow.projects.locations.agents.flows.pages.patch" call.
26067// Exactly one of *GoogleCloudDialogflowCxV3Page or error will be
26068// non-nil. Any non-2xx status code is an error. Response headers are in
26069// either *GoogleCloudDialogflowCxV3Page.ServerResponse.Header or (if a
26070// response was returned at all) in error.(*googleapi.Error).Header. Use
26071// googleapi.IsNotModified to check whether the returned error was
26072// because http.StatusNotModified was returned.
26073func (c *ProjectsLocationsAgentsFlowsPagesPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3Page, error) {
26074	gensupport.SetOptions(c.urlParams_, opts...)
26075	res, err := c.doRequest("json")
26076	if res != nil && res.StatusCode == http.StatusNotModified {
26077		if res.Body != nil {
26078			res.Body.Close()
26079		}
26080		return nil, &googleapi.Error{
26081			Code:   res.StatusCode,
26082			Header: res.Header,
26083		}
26084	}
26085	if err != nil {
26086		return nil, err
26087	}
26088	defer googleapi.CloseBody(res)
26089	if err := googleapi.CheckResponse(res); err != nil {
26090		return nil, err
26091	}
26092	ret := &GoogleCloudDialogflowCxV3Page{
26093		ServerResponse: googleapi.ServerResponse{
26094			Header:         res.Header,
26095			HTTPStatusCode: res.StatusCode,
26096		},
26097	}
26098	target := &ret
26099	if err := gensupport.DecodeResponse(target, res); err != nil {
26100		return nil, err
26101	}
26102	return ret, nil
26103	// {
26104	//   "description": "Updates the specified page. Note: You should always train a flow prior to sending it queries. See the [training documentation](https://cloud.google.com/dialogflow/cx/docs/concept/training).",
26105	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/pages/{pagesId}",
26106	//   "httpMethod": "PATCH",
26107	//   "id": "dialogflow.projects.locations.agents.flows.pages.patch",
26108	//   "parameterOrder": [
26109	//     "name"
26110	//   ],
26111	//   "parameters": {
26112	//     "languageCode": {
26113	//       "description": "The language of the following fields in `page`: * `Page.entry_fulfillment.messages` * `Page.entry_fulfillment.conditional_cases` * `Page.event_handlers.trigger_fulfillment.messages` * `Page.event_handlers.trigger_fulfillment.conditional_cases` * `Page.form.parameters.fill_behavior.initial_prompt_fulfillment.messages` * `Page.form.parameters.fill_behavior.initial_prompt_fulfillment.conditional_cases` * `Page.form.parameters.fill_behavior.reprompt_event_handlers.messages` * `Page.form.parameters.fill_behavior.reprompt_event_handlers.conditional_cases` * `Page.transition_routes.trigger_fulfillment.messages` * `Page.transition_routes.trigger_fulfillment.conditional_cases` If not specified, the agent's default language is used. [Many languages](https://cloud.google.com/dialogflow/cx/docs/reference/language) are supported. Note: languages must be enabled in the agent before they can be used.",
26114	//       "location": "query",
26115	//       "type": "string"
26116	//     },
26117	//     "name": {
26118	//       "description": "The unique identifier of the page. Required for the Pages.UpdatePage method. Pages.CreatePage populates the name automatically. Format: `projects//locations//agents//flows//pages/`.",
26119	//       "location": "path",
26120	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+/pages/[^/]+$",
26121	//       "required": true,
26122	//       "type": "string"
26123	//     },
26124	//     "updateMask": {
26125	//       "description": "The mask to control which fields get updated. If the mask is not present, all fields will be updated.",
26126	//       "format": "google-fieldmask",
26127	//       "location": "query",
26128	//       "type": "string"
26129	//     }
26130	//   },
26131	//   "path": "v3/{+name}",
26132	//   "request": {
26133	//     "$ref": "GoogleCloudDialogflowCxV3Page"
26134	//   },
26135	//   "response": {
26136	//     "$ref": "GoogleCloudDialogflowCxV3Page"
26137	//   },
26138	//   "scopes": [
26139	//     "https://www.googleapis.com/auth/cloud-platform",
26140	//     "https://www.googleapis.com/auth/dialogflow"
26141	//   ]
26142	// }
26143
26144}
26145
26146// method id "dialogflow.projects.locations.agents.flows.transitionRouteGroups.create":
26147
26148type ProjectsLocationsAgentsFlowsTransitionRouteGroupsCreateCall struct {
26149	s                                             *Service
26150	parent                                        string
26151	googleclouddialogflowcxv3transitionroutegroup *GoogleCloudDialogflowCxV3TransitionRouteGroup
26152	urlParams_                                    gensupport.URLParams
26153	ctx_                                          context.Context
26154	header_                                       http.Header
26155}
26156
26157// Create: Creates an TransitionRouteGroup in the specified flow. Note:
26158// You should always train a flow prior to sending it queries. See the
26159// training documentation
26160// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
26161//
26162// - parent: The flow to create an TransitionRouteGroup for. Format:
26163//   `projects//locations//agents//flows/`.
26164func (r *ProjectsLocationsAgentsFlowsTransitionRouteGroupsService) Create(parent string, googleclouddialogflowcxv3transitionroutegroup *GoogleCloudDialogflowCxV3TransitionRouteGroup) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsCreateCall {
26165	c := &ProjectsLocationsAgentsFlowsTransitionRouteGroupsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26166	c.parent = parent
26167	c.googleclouddialogflowcxv3transitionroutegroup = googleclouddialogflowcxv3transitionroutegroup
26168	return c
26169}
26170
26171// LanguageCode sets the optional parameter "languageCode": The language
26172// of the following fields in `TransitionRouteGroup`: *
26173// `TransitionRouteGroup.transition_routes.trigger_fulfillment.messages`
26174// *
26175// `TransitionRouteGroup.transition_routes.trigger_fulfillment.conditiona
26176// l_cases` If not specified, the agent's default language is used. Many
26177// languages
26178// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
26179// supported. Note: languages must be enabled in the agent before they
26180// can be used.
26181func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsCreateCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsCreateCall {
26182	c.urlParams_.Set("languageCode", languageCode)
26183	return c
26184}
26185
26186// Fields allows partial responses to be retrieved. See
26187// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26188// for more information.
26189func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsCreateCall {
26190	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26191	return c
26192}
26193
26194// Context sets the context to be used in this call's Do method. Any
26195// pending HTTP request will be aborted if the provided context is
26196// canceled.
26197func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsCreateCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsCreateCall {
26198	c.ctx_ = ctx
26199	return c
26200}
26201
26202// Header returns an http.Header that can be modified by the caller to
26203// add HTTP headers to the request.
26204func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsCreateCall) Header() http.Header {
26205	if c.header_ == nil {
26206		c.header_ = make(http.Header)
26207	}
26208	return c.header_
26209}
26210
26211func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsCreateCall) doRequest(alt string) (*http.Response, error) {
26212	reqHeaders := make(http.Header)
26213	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
26214	for k, v := range c.header_ {
26215		reqHeaders[k] = v
26216	}
26217	reqHeaders.Set("User-Agent", c.s.userAgent())
26218	var body io.Reader = nil
26219	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3transitionroutegroup)
26220	if err != nil {
26221		return nil, err
26222	}
26223	reqHeaders.Set("Content-Type", "application/json")
26224	c.urlParams_.Set("alt", alt)
26225	c.urlParams_.Set("prettyPrint", "false")
26226	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/transitionRouteGroups")
26227	urls += "?" + c.urlParams_.Encode()
26228	req, err := http.NewRequest("POST", urls, body)
26229	if err != nil {
26230		return nil, err
26231	}
26232	req.Header = reqHeaders
26233	googleapi.Expand(req.URL, map[string]string{
26234		"parent": c.parent,
26235	})
26236	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26237}
26238
26239// Do executes the "dialogflow.projects.locations.agents.flows.transitionRouteGroups.create" call.
26240// Exactly one of *GoogleCloudDialogflowCxV3TransitionRouteGroup or
26241// error will be non-nil. Any non-2xx status code is an error. Response
26242// headers are in either
26243// *GoogleCloudDialogflowCxV3TransitionRouteGroup.ServerResponse.Header
26244// or (if a response was returned at all) in
26245// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
26246// whether the returned error was because http.StatusNotModified was
26247// returned.
26248func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3TransitionRouteGroup, error) {
26249	gensupport.SetOptions(c.urlParams_, opts...)
26250	res, err := c.doRequest("json")
26251	if res != nil && res.StatusCode == http.StatusNotModified {
26252		if res.Body != nil {
26253			res.Body.Close()
26254		}
26255		return nil, &googleapi.Error{
26256			Code:   res.StatusCode,
26257			Header: res.Header,
26258		}
26259	}
26260	if err != nil {
26261		return nil, err
26262	}
26263	defer googleapi.CloseBody(res)
26264	if err := googleapi.CheckResponse(res); err != nil {
26265		return nil, err
26266	}
26267	ret := &GoogleCloudDialogflowCxV3TransitionRouteGroup{
26268		ServerResponse: googleapi.ServerResponse{
26269			Header:         res.Header,
26270			HTTPStatusCode: res.StatusCode,
26271		},
26272	}
26273	target := &ret
26274	if err := gensupport.DecodeResponse(target, res); err != nil {
26275		return nil, err
26276	}
26277	return ret, nil
26278	// {
26279	//   "description": "Creates an TransitionRouteGroup in the specified flow. Note: You should always train a flow prior to sending it queries. See the [training documentation](https://cloud.google.com/dialogflow/cx/docs/concept/training).",
26280	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/transitionRouteGroups",
26281	//   "httpMethod": "POST",
26282	//   "id": "dialogflow.projects.locations.agents.flows.transitionRouteGroups.create",
26283	//   "parameterOrder": [
26284	//     "parent"
26285	//   ],
26286	//   "parameters": {
26287	//     "languageCode": {
26288	//       "description": "The language of the following fields in `TransitionRouteGroup`: * `TransitionRouteGroup.transition_routes.trigger_fulfillment.messages` * `TransitionRouteGroup.transition_routes.trigger_fulfillment.conditional_cases` If not specified, the agent's default language is used. [Many languages](https://cloud.google.com/dialogflow/cx/docs/reference/language) are supported. Note: languages must be enabled in the agent before they can be used.",
26289	//       "location": "query",
26290	//       "type": "string"
26291	//     },
26292	//     "parent": {
26293	//       "description": "Required. The flow to create an TransitionRouteGroup for. Format: `projects//locations//agents//flows/`.",
26294	//       "location": "path",
26295	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+$",
26296	//       "required": true,
26297	//       "type": "string"
26298	//     }
26299	//   },
26300	//   "path": "v3/{+parent}/transitionRouteGroups",
26301	//   "request": {
26302	//     "$ref": "GoogleCloudDialogflowCxV3TransitionRouteGroup"
26303	//   },
26304	//   "response": {
26305	//     "$ref": "GoogleCloudDialogflowCxV3TransitionRouteGroup"
26306	//   },
26307	//   "scopes": [
26308	//     "https://www.googleapis.com/auth/cloud-platform",
26309	//     "https://www.googleapis.com/auth/dialogflow"
26310	//   ]
26311	// }
26312
26313}
26314
26315// method id "dialogflow.projects.locations.agents.flows.transitionRouteGroups.delete":
26316
26317type ProjectsLocationsAgentsFlowsTransitionRouteGroupsDeleteCall struct {
26318	s          *Service
26319	name       string
26320	urlParams_ gensupport.URLParams
26321	ctx_       context.Context
26322	header_    http.Header
26323}
26324
26325// Delete: Deletes the specified TransitionRouteGroup. Note: You should
26326// always train a flow prior to sending it queries. See the training
26327// documentation
26328// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
26329//
26330// - name: The name of the TransitionRouteGroup to delete. Format:
26331//   `projects//locations//agents//flows//transitionRouteGroups/`.
26332func (r *ProjectsLocationsAgentsFlowsTransitionRouteGroupsService) Delete(name string) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsDeleteCall {
26333	c := &ProjectsLocationsAgentsFlowsTransitionRouteGroupsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26334	c.name = name
26335	return c
26336}
26337
26338// Force sets the optional parameter "force": This field has no effect
26339// for transition route group that no page is using. If the transition
26340// route group is referenced by any page: * If `force` is set to false,
26341// an error will be returned with message indicating pages that
26342// reference the transition route group. * If `force` is set to true,
26343// Dialogflow will remove the transition route group, as well as any
26344// reference to it.
26345func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsDeleteCall) Force(force bool) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsDeleteCall {
26346	c.urlParams_.Set("force", fmt.Sprint(force))
26347	return c
26348}
26349
26350// Fields allows partial responses to be retrieved. See
26351// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26352// for more information.
26353func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsDeleteCall {
26354	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26355	return c
26356}
26357
26358// Context sets the context to be used in this call's Do method. Any
26359// pending HTTP request will be aborted if the provided context is
26360// canceled.
26361func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsDeleteCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsDeleteCall {
26362	c.ctx_ = ctx
26363	return c
26364}
26365
26366// Header returns an http.Header that can be modified by the caller to
26367// add HTTP headers to the request.
26368func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsDeleteCall) Header() http.Header {
26369	if c.header_ == nil {
26370		c.header_ = make(http.Header)
26371	}
26372	return c.header_
26373}
26374
26375func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsDeleteCall) doRequest(alt string) (*http.Response, error) {
26376	reqHeaders := make(http.Header)
26377	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
26378	for k, v := range c.header_ {
26379		reqHeaders[k] = v
26380	}
26381	reqHeaders.Set("User-Agent", c.s.userAgent())
26382	var body io.Reader = nil
26383	c.urlParams_.Set("alt", alt)
26384	c.urlParams_.Set("prettyPrint", "false")
26385	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
26386	urls += "?" + c.urlParams_.Encode()
26387	req, err := http.NewRequest("DELETE", urls, body)
26388	if err != nil {
26389		return nil, err
26390	}
26391	req.Header = reqHeaders
26392	googleapi.Expand(req.URL, map[string]string{
26393		"name": c.name,
26394	})
26395	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26396}
26397
26398// Do executes the "dialogflow.projects.locations.agents.flows.transitionRouteGroups.delete" call.
26399// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
26400// non-2xx status code is an error. Response headers are in either
26401// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
26402// returned at all) in error.(*googleapi.Error).Header. Use
26403// googleapi.IsNotModified to check whether the returned error was
26404// because http.StatusNotModified was returned.
26405func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
26406	gensupport.SetOptions(c.urlParams_, opts...)
26407	res, err := c.doRequest("json")
26408	if res != nil && res.StatusCode == http.StatusNotModified {
26409		if res.Body != nil {
26410			res.Body.Close()
26411		}
26412		return nil, &googleapi.Error{
26413			Code:   res.StatusCode,
26414			Header: res.Header,
26415		}
26416	}
26417	if err != nil {
26418		return nil, err
26419	}
26420	defer googleapi.CloseBody(res)
26421	if err := googleapi.CheckResponse(res); err != nil {
26422		return nil, err
26423	}
26424	ret := &GoogleProtobufEmpty{
26425		ServerResponse: googleapi.ServerResponse{
26426			Header:         res.Header,
26427			HTTPStatusCode: res.StatusCode,
26428		},
26429	}
26430	target := &ret
26431	if err := gensupport.DecodeResponse(target, res); err != nil {
26432		return nil, err
26433	}
26434	return ret, nil
26435	// {
26436	//   "description": "Deletes the specified TransitionRouteGroup. Note: You should always train a flow prior to sending it queries. See the [training documentation](https://cloud.google.com/dialogflow/cx/docs/concept/training).",
26437	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/transitionRouteGroups/{transitionRouteGroupsId}",
26438	//   "httpMethod": "DELETE",
26439	//   "id": "dialogflow.projects.locations.agents.flows.transitionRouteGroups.delete",
26440	//   "parameterOrder": [
26441	//     "name"
26442	//   ],
26443	//   "parameters": {
26444	//     "force": {
26445	//       "description": "This field has no effect for transition route group that no page is using. If the transition route group is referenced by any page: * If `force` is set to false, an error will be returned with message indicating pages that reference the transition route group. * If `force` is set to true, Dialogflow will remove the transition route group, as well as any reference to it.",
26446	//       "location": "query",
26447	//       "type": "boolean"
26448	//     },
26449	//     "name": {
26450	//       "description": "Required. The name of the TransitionRouteGroup to delete. Format: `projects//locations//agents//flows//transitionRouteGroups/`.",
26451	//       "location": "path",
26452	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+/transitionRouteGroups/[^/]+$",
26453	//       "required": true,
26454	//       "type": "string"
26455	//     }
26456	//   },
26457	//   "path": "v3/{+name}",
26458	//   "response": {
26459	//     "$ref": "GoogleProtobufEmpty"
26460	//   },
26461	//   "scopes": [
26462	//     "https://www.googleapis.com/auth/cloud-platform",
26463	//     "https://www.googleapis.com/auth/dialogflow"
26464	//   ]
26465	// }
26466
26467}
26468
26469// method id "dialogflow.projects.locations.agents.flows.transitionRouteGroups.get":
26470
26471type ProjectsLocationsAgentsFlowsTransitionRouteGroupsGetCall struct {
26472	s            *Service
26473	name         string
26474	urlParams_   gensupport.URLParams
26475	ifNoneMatch_ string
26476	ctx_         context.Context
26477	header_      http.Header
26478}
26479
26480// Get: Retrieves the specified TransitionRouteGroup.
26481//
26482// - name: The name of the TransitionRouteGroup. Format:
26483//   `projects//locations//agents//flows//transitionRouteGroups/`.
26484func (r *ProjectsLocationsAgentsFlowsTransitionRouteGroupsService) Get(name string) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsGetCall {
26485	c := &ProjectsLocationsAgentsFlowsTransitionRouteGroupsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26486	c.name = name
26487	return c
26488}
26489
26490// LanguageCode sets the optional parameter "languageCode": The language
26491// to retrieve the transition route group for. The following fields are
26492// language dependent: *
26493// `TransitionRouteGroup.transition_routes.trigger_fulfillment.messages`
26494// *
26495// `TransitionRouteGroup.transition_routes.trigger_fulfillment.conditiona
26496// l_cases` If not specified, the agent's default language is used. Many
26497// languages
26498// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
26499// supported. Note: languages must be enabled in the agent before they
26500// can be used.
26501func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsGetCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsGetCall {
26502	c.urlParams_.Set("languageCode", languageCode)
26503	return c
26504}
26505
26506// Fields allows partial responses to be retrieved. See
26507// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26508// for more information.
26509func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsGetCall {
26510	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26511	return c
26512}
26513
26514// IfNoneMatch sets the optional parameter which makes the operation
26515// fail if the object's ETag matches the given value. This is useful for
26516// getting updates only after the object has changed since the last
26517// request. Use googleapi.IsNotModified to check whether the response
26518// error from Do is the result of In-None-Match.
26519func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsGetCall {
26520	c.ifNoneMatch_ = entityTag
26521	return c
26522}
26523
26524// Context sets the context to be used in this call's Do method. Any
26525// pending HTTP request will be aborted if the provided context is
26526// canceled.
26527func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsGetCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsGetCall {
26528	c.ctx_ = ctx
26529	return c
26530}
26531
26532// Header returns an http.Header that can be modified by the caller to
26533// add HTTP headers to the request.
26534func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsGetCall) Header() http.Header {
26535	if c.header_ == nil {
26536		c.header_ = make(http.Header)
26537	}
26538	return c.header_
26539}
26540
26541func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsGetCall) doRequest(alt string) (*http.Response, error) {
26542	reqHeaders := make(http.Header)
26543	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
26544	for k, v := range c.header_ {
26545		reqHeaders[k] = v
26546	}
26547	reqHeaders.Set("User-Agent", c.s.userAgent())
26548	if c.ifNoneMatch_ != "" {
26549		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
26550	}
26551	var body io.Reader = nil
26552	c.urlParams_.Set("alt", alt)
26553	c.urlParams_.Set("prettyPrint", "false")
26554	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
26555	urls += "?" + c.urlParams_.Encode()
26556	req, err := http.NewRequest("GET", urls, body)
26557	if err != nil {
26558		return nil, err
26559	}
26560	req.Header = reqHeaders
26561	googleapi.Expand(req.URL, map[string]string{
26562		"name": c.name,
26563	})
26564	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26565}
26566
26567// Do executes the "dialogflow.projects.locations.agents.flows.transitionRouteGroups.get" call.
26568// Exactly one of *GoogleCloudDialogflowCxV3TransitionRouteGroup or
26569// error will be non-nil. Any non-2xx status code is an error. Response
26570// headers are in either
26571// *GoogleCloudDialogflowCxV3TransitionRouteGroup.ServerResponse.Header
26572// or (if a response was returned at all) in
26573// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
26574// whether the returned error was because http.StatusNotModified was
26575// returned.
26576func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3TransitionRouteGroup, error) {
26577	gensupport.SetOptions(c.urlParams_, opts...)
26578	res, err := c.doRequest("json")
26579	if res != nil && res.StatusCode == http.StatusNotModified {
26580		if res.Body != nil {
26581			res.Body.Close()
26582		}
26583		return nil, &googleapi.Error{
26584			Code:   res.StatusCode,
26585			Header: res.Header,
26586		}
26587	}
26588	if err != nil {
26589		return nil, err
26590	}
26591	defer googleapi.CloseBody(res)
26592	if err := googleapi.CheckResponse(res); err != nil {
26593		return nil, err
26594	}
26595	ret := &GoogleCloudDialogflowCxV3TransitionRouteGroup{
26596		ServerResponse: googleapi.ServerResponse{
26597			Header:         res.Header,
26598			HTTPStatusCode: res.StatusCode,
26599		},
26600	}
26601	target := &ret
26602	if err := gensupport.DecodeResponse(target, res); err != nil {
26603		return nil, err
26604	}
26605	return ret, nil
26606	// {
26607	//   "description": "Retrieves the specified TransitionRouteGroup.",
26608	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/transitionRouteGroups/{transitionRouteGroupsId}",
26609	//   "httpMethod": "GET",
26610	//   "id": "dialogflow.projects.locations.agents.flows.transitionRouteGroups.get",
26611	//   "parameterOrder": [
26612	//     "name"
26613	//   ],
26614	//   "parameters": {
26615	//     "languageCode": {
26616	//       "description": "The language to retrieve the transition route group for. The following fields are language dependent: * `TransitionRouteGroup.transition_routes.trigger_fulfillment.messages` * `TransitionRouteGroup.transition_routes.trigger_fulfillment.conditional_cases` If not specified, the agent's default language is used. [Many languages](https://cloud.google.com/dialogflow/cx/docs/reference/language) are supported. Note: languages must be enabled in the agent before they can be used.",
26617	//       "location": "query",
26618	//       "type": "string"
26619	//     },
26620	//     "name": {
26621	//       "description": "Required. The name of the TransitionRouteGroup. Format: `projects//locations//agents//flows//transitionRouteGroups/`.",
26622	//       "location": "path",
26623	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+/transitionRouteGroups/[^/]+$",
26624	//       "required": true,
26625	//       "type": "string"
26626	//     }
26627	//   },
26628	//   "path": "v3/{+name}",
26629	//   "response": {
26630	//     "$ref": "GoogleCloudDialogflowCxV3TransitionRouteGroup"
26631	//   },
26632	//   "scopes": [
26633	//     "https://www.googleapis.com/auth/cloud-platform",
26634	//     "https://www.googleapis.com/auth/dialogflow"
26635	//   ]
26636	// }
26637
26638}
26639
26640// method id "dialogflow.projects.locations.agents.flows.transitionRouteGroups.list":
26641
26642type ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall struct {
26643	s            *Service
26644	parent       string
26645	urlParams_   gensupport.URLParams
26646	ifNoneMatch_ string
26647	ctx_         context.Context
26648	header_      http.Header
26649}
26650
26651// List: Returns the list of all transition route groups in the
26652// specified flow.
26653//
26654// - parent: The flow to list all transition route groups for. Format:
26655//   `projects//locations//agents//flows/`.
26656func (r *ProjectsLocationsAgentsFlowsTransitionRouteGroupsService) List(parent string) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall {
26657	c := &ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26658	c.parent = parent
26659	return c
26660}
26661
26662// LanguageCode sets the optional parameter "languageCode": The language
26663// to list transition route groups for. The following fields are
26664// language dependent: *
26665// `TransitionRouteGroup.transition_routes.trigger_fulfillment.messages`
26666// *
26667// `TransitionRouteGroup.transition_routes.trigger_fulfillment.conditiona
26668// l_cases` If not specified, the agent's default language is used. Many
26669// languages
26670// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
26671// supported. Note: languages must be enabled in the agent before they
26672// can be used.
26673func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall {
26674	c.urlParams_.Set("languageCode", languageCode)
26675	return c
26676}
26677
26678// PageSize sets the optional parameter "pageSize": The maximum number
26679// of items to return in a single page. By default 100 and at most 1000.
26680func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall) PageSize(pageSize int64) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall {
26681	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
26682	return c
26683}
26684
26685// PageToken sets the optional parameter "pageToken": The
26686// next_page_token value returned from a previous list request.
26687func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall) PageToken(pageToken string) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall {
26688	c.urlParams_.Set("pageToken", pageToken)
26689	return c
26690}
26691
26692// Fields allows partial responses to be retrieved. See
26693// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26694// for more information.
26695func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall {
26696	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26697	return c
26698}
26699
26700// IfNoneMatch sets the optional parameter which makes the operation
26701// fail if the object's ETag matches the given value. This is useful for
26702// getting updates only after the object has changed since the last
26703// request. Use googleapi.IsNotModified to check whether the response
26704// error from Do is the result of In-None-Match.
26705func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall {
26706	c.ifNoneMatch_ = entityTag
26707	return c
26708}
26709
26710// Context sets the context to be used in this call's Do method. Any
26711// pending HTTP request will be aborted if the provided context is
26712// canceled.
26713func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall {
26714	c.ctx_ = ctx
26715	return c
26716}
26717
26718// Header returns an http.Header that can be modified by the caller to
26719// add HTTP headers to the request.
26720func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall) Header() http.Header {
26721	if c.header_ == nil {
26722		c.header_ = make(http.Header)
26723	}
26724	return c.header_
26725}
26726
26727func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall) doRequest(alt string) (*http.Response, error) {
26728	reqHeaders := make(http.Header)
26729	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
26730	for k, v := range c.header_ {
26731		reqHeaders[k] = v
26732	}
26733	reqHeaders.Set("User-Agent", c.s.userAgent())
26734	if c.ifNoneMatch_ != "" {
26735		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
26736	}
26737	var body io.Reader = nil
26738	c.urlParams_.Set("alt", alt)
26739	c.urlParams_.Set("prettyPrint", "false")
26740	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/transitionRouteGroups")
26741	urls += "?" + c.urlParams_.Encode()
26742	req, err := http.NewRequest("GET", urls, body)
26743	if err != nil {
26744		return nil, err
26745	}
26746	req.Header = reqHeaders
26747	googleapi.Expand(req.URL, map[string]string{
26748		"parent": c.parent,
26749	})
26750	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26751}
26752
26753// Do executes the "dialogflow.projects.locations.agents.flows.transitionRouteGroups.list" call.
26754// Exactly one of
26755// *GoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse or error
26756// will be non-nil. Any non-2xx status code is an error. Response
26757// headers are in either
26758// *GoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse.ServerResp
26759// onse.Header or (if a response was returned at all) in
26760// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
26761// whether the returned error was because http.StatusNotModified was
26762// returned.
26763func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse, error) {
26764	gensupport.SetOptions(c.urlParams_, opts...)
26765	res, err := c.doRequest("json")
26766	if res != nil && res.StatusCode == http.StatusNotModified {
26767		if res.Body != nil {
26768			res.Body.Close()
26769		}
26770		return nil, &googleapi.Error{
26771			Code:   res.StatusCode,
26772			Header: res.Header,
26773		}
26774	}
26775	if err != nil {
26776		return nil, err
26777	}
26778	defer googleapi.CloseBody(res)
26779	if err := googleapi.CheckResponse(res); err != nil {
26780		return nil, err
26781	}
26782	ret := &GoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse{
26783		ServerResponse: googleapi.ServerResponse{
26784			Header:         res.Header,
26785			HTTPStatusCode: res.StatusCode,
26786		},
26787	}
26788	target := &ret
26789	if err := gensupport.DecodeResponse(target, res); err != nil {
26790		return nil, err
26791	}
26792	return ret, nil
26793	// {
26794	//   "description": "Returns the list of all transition route groups in the specified flow.",
26795	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/transitionRouteGroups",
26796	//   "httpMethod": "GET",
26797	//   "id": "dialogflow.projects.locations.agents.flows.transitionRouteGroups.list",
26798	//   "parameterOrder": [
26799	//     "parent"
26800	//   ],
26801	//   "parameters": {
26802	//     "languageCode": {
26803	//       "description": "The language to list transition route groups for. The following fields are language dependent: * `TransitionRouteGroup.transition_routes.trigger_fulfillment.messages` * `TransitionRouteGroup.transition_routes.trigger_fulfillment.conditional_cases` If not specified, the agent's default language is used. [Many languages](https://cloud.google.com/dialogflow/cx/docs/reference/language) are supported. Note: languages must be enabled in the agent before they can be used.",
26804	//       "location": "query",
26805	//       "type": "string"
26806	//     },
26807	//     "pageSize": {
26808	//       "description": "The maximum number of items to return in a single page. By default 100 and at most 1000.",
26809	//       "format": "int32",
26810	//       "location": "query",
26811	//       "type": "integer"
26812	//     },
26813	//     "pageToken": {
26814	//       "description": "The next_page_token value returned from a previous list request.",
26815	//       "location": "query",
26816	//       "type": "string"
26817	//     },
26818	//     "parent": {
26819	//       "description": "Required. The flow to list all transition route groups for. Format: `projects//locations//agents//flows/`.",
26820	//       "location": "path",
26821	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+$",
26822	//       "required": true,
26823	//       "type": "string"
26824	//     }
26825	//   },
26826	//   "path": "v3/{+parent}/transitionRouteGroups",
26827	//   "response": {
26828	//     "$ref": "GoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse"
26829	//   },
26830	//   "scopes": [
26831	//     "https://www.googleapis.com/auth/cloud-platform",
26832	//     "https://www.googleapis.com/auth/dialogflow"
26833	//   ]
26834	// }
26835
26836}
26837
26838// Pages invokes f for each page of results.
26839// A non-nil error returned from f will halt the iteration.
26840// The provided context supersedes any context provided to the Context method.
26841func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse) error) error {
26842	c.ctx_ = ctx
26843	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
26844	for {
26845		x, err := c.Do()
26846		if err != nil {
26847			return err
26848		}
26849		if err := f(x); err != nil {
26850			return err
26851		}
26852		if x.NextPageToken == "" {
26853			return nil
26854		}
26855		c.PageToken(x.NextPageToken)
26856	}
26857}
26858
26859// method id "dialogflow.projects.locations.agents.flows.transitionRouteGroups.patch":
26860
26861type ProjectsLocationsAgentsFlowsTransitionRouteGroupsPatchCall struct {
26862	s                                             *Service
26863	nameid                                        string
26864	googleclouddialogflowcxv3transitionroutegroup *GoogleCloudDialogflowCxV3TransitionRouteGroup
26865	urlParams_                                    gensupport.URLParams
26866	ctx_                                          context.Context
26867	header_                                       http.Header
26868}
26869
26870// Patch: Updates the specified TransitionRouteGroup. Note: You should
26871// always train a flow prior to sending it queries. See the training
26872// documentation
26873// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
26874//
26875// - name: The unique identifier of the transition route group.
26876//   TransitionRouteGroups.CreateTransitionRouteGroup populates the name
26877//   automatically. Format:
26878//   `projects//locations//agents//flows//transitionRouteGroups/`.
26879func (r *ProjectsLocationsAgentsFlowsTransitionRouteGroupsService) Patch(nameid string, googleclouddialogflowcxv3transitionroutegroup *GoogleCloudDialogflowCxV3TransitionRouteGroup) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsPatchCall {
26880	c := &ProjectsLocationsAgentsFlowsTransitionRouteGroupsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26881	c.nameid = nameid
26882	c.googleclouddialogflowcxv3transitionroutegroup = googleclouddialogflowcxv3transitionroutegroup
26883	return c
26884}
26885
26886// LanguageCode sets the optional parameter "languageCode": The language
26887// of the following fields in `TransitionRouteGroup`: *
26888// `TransitionRouteGroup.transition_routes.trigger_fulfillment.messages`
26889// *
26890// `TransitionRouteGroup.transition_routes.trigger_fulfillment.conditiona
26891// l_cases` If not specified, the agent's default language is used. Many
26892// languages
26893// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
26894// supported. Note: languages must be enabled in the agent before they
26895// can be used.
26896func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsPatchCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsPatchCall {
26897	c.urlParams_.Set("languageCode", languageCode)
26898	return c
26899}
26900
26901// UpdateMask sets the optional parameter "updateMask": The mask to
26902// control which fields get updated.
26903func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsPatchCall {
26904	c.urlParams_.Set("updateMask", updateMask)
26905	return c
26906}
26907
26908// Fields allows partial responses to be retrieved. See
26909// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26910// for more information.
26911func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsPatchCall {
26912	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26913	return c
26914}
26915
26916// Context sets the context to be used in this call's Do method. Any
26917// pending HTTP request will be aborted if the provided context is
26918// canceled.
26919func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsPatchCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsPatchCall {
26920	c.ctx_ = ctx
26921	return c
26922}
26923
26924// Header returns an http.Header that can be modified by the caller to
26925// add HTTP headers to the request.
26926func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsPatchCall) Header() http.Header {
26927	if c.header_ == nil {
26928		c.header_ = make(http.Header)
26929	}
26930	return c.header_
26931}
26932
26933func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsPatchCall) doRequest(alt string) (*http.Response, error) {
26934	reqHeaders := make(http.Header)
26935	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
26936	for k, v := range c.header_ {
26937		reqHeaders[k] = v
26938	}
26939	reqHeaders.Set("User-Agent", c.s.userAgent())
26940	var body io.Reader = nil
26941	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3transitionroutegroup)
26942	if err != nil {
26943		return nil, err
26944	}
26945	reqHeaders.Set("Content-Type", "application/json")
26946	c.urlParams_.Set("alt", alt)
26947	c.urlParams_.Set("prettyPrint", "false")
26948	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
26949	urls += "?" + c.urlParams_.Encode()
26950	req, err := http.NewRequest("PATCH", urls, body)
26951	if err != nil {
26952		return nil, err
26953	}
26954	req.Header = reqHeaders
26955	googleapi.Expand(req.URL, map[string]string{
26956		"name": c.nameid,
26957	})
26958	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26959}
26960
26961// Do executes the "dialogflow.projects.locations.agents.flows.transitionRouteGroups.patch" call.
26962// Exactly one of *GoogleCloudDialogflowCxV3TransitionRouteGroup or
26963// error will be non-nil. Any non-2xx status code is an error. Response
26964// headers are in either
26965// *GoogleCloudDialogflowCxV3TransitionRouteGroup.ServerResponse.Header
26966// or (if a response was returned at all) in
26967// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
26968// whether the returned error was because http.StatusNotModified was
26969// returned.
26970func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3TransitionRouteGroup, error) {
26971	gensupport.SetOptions(c.urlParams_, opts...)
26972	res, err := c.doRequest("json")
26973	if res != nil && res.StatusCode == http.StatusNotModified {
26974		if res.Body != nil {
26975			res.Body.Close()
26976		}
26977		return nil, &googleapi.Error{
26978			Code:   res.StatusCode,
26979			Header: res.Header,
26980		}
26981	}
26982	if err != nil {
26983		return nil, err
26984	}
26985	defer googleapi.CloseBody(res)
26986	if err := googleapi.CheckResponse(res); err != nil {
26987		return nil, err
26988	}
26989	ret := &GoogleCloudDialogflowCxV3TransitionRouteGroup{
26990		ServerResponse: googleapi.ServerResponse{
26991			Header:         res.Header,
26992			HTTPStatusCode: res.StatusCode,
26993		},
26994	}
26995	target := &ret
26996	if err := gensupport.DecodeResponse(target, res); err != nil {
26997		return nil, err
26998	}
26999	return ret, nil
27000	// {
27001	//   "description": "Updates the specified TransitionRouteGroup. Note: You should always train a flow prior to sending it queries. See the [training documentation](https://cloud.google.com/dialogflow/cx/docs/concept/training).",
27002	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/transitionRouteGroups/{transitionRouteGroupsId}",
27003	//   "httpMethod": "PATCH",
27004	//   "id": "dialogflow.projects.locations.agents.flows.transitionRouteGroups.patch",
27005	//   "parameterOrder": [
27006	//     "name"
27007	//   ],
27008	//   "parameters": {
27009	//     "languageCode": {
27010	//       "description": "The language of the following fields in `TransitionRouteGroup`: * `TransitionRouteGroup.transition_routes.trigger_fulfillment.messages` * `TransitionRouteGroup.transition_routes.trigger_fulfillment.conditional_cases` If not specified, the agent's default language is used. [Many languages](https://cloud.google.com/dialogflow/cx/docs/reference/language) are supported. Note: languages must be enabled in the agent before they can be used.",
27011	//       "location": "query",
27012	//       "type": "string"
27013	//     },
27014	//     "name": {
27015	//       "description": "The unique identifier of the transition route group. TransitionRouteGroups.CreateTransitionRouteGroup populates the name automatically. Format: `projects//locations//agents//flows//transitionRouteGroups/`.",
27016	//       "location": "path",
27017	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+/transitionRouteGroups/[^/]+$",
27018	//       "required": true,
27019	//       "type": "string"
27020	//     },
27021	//     "updateMask": {
27022	//       "description": "The mask to control which fields get updated.",
27023	//       "format": "google-fieldmask",
27024	//       "location": "query",
27025	//       "type": "string"
27026	//     }
27027	//   },
27028	//   "path": "v3/{+name}",
27029	//   "request": {
27030	//     "$ref": "GoogleCloudDialogflowCxV3TransitionRouteGroup"
27031	//   },
27032	//   "response": {
27033	//     "$ref": "GoogleCloudDialogflowCxV3TransitionRouteGroup"
27034	//   },
27035	//   "scopes": [
27036	//     "https://www.googleapis.com/auth/cloud-platform",
27037	//     "https://www.googleapis.com/auth/dialogflow"
27038	//   ]
27039	// }
27040
27041}
27042
27043// method id "dialogflow.projects.locations.agents.flows.versions.create":
27044
27045type ProjectsLocationsAgentsFlowsVersionsCreateCall struct {
27046	s                                *Service
27047	parent                           string
27048	googleclouddialogflowcxv3version *GoogleCloudDialogflowCxV3Version
27049	urlParams_                       gensupport.URLParams
27050	ctx_                             context.Context
27051	header_                          http.Header
27052}
27053
27054// Create: Creates a Version in the specified Flow.
27055//
27056// - parent: The Flow to create an Version for. Format:
27057//   `projects//locations//agents//flows/`.
27058func (r *ProjectsLocationsAgentsFlowsVersionsService) Create(parent string, googleclouddialogflowcxv3version *GoogleCloudDialogflowCxV3Version) *ProjectsLocationsAgentsFlowsVersionsCreateCall {
27059	c := &ProjectsLocationsAgentsFlowsVersionsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27060	c.parent = parent
27061	c.googleclouddialogflowcxv3version = googleclouddialogflowcxv3version
27062	return c
27063}
27064
27065// Fields allows partial responses to be retrieved. See
27066// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27067// for more information.
27068func (c *ProjectsLocationsAgentsFlowsVersionsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsVersionsCreateCall {
27069	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27070	return c
27071}
27072
27073// Context sets the context to be used in this call's Do method. Any
27074// pending HTTP request will be aborted if the provided context is
27075// canceled.
27076func (c *ProjectsLocationsAgentsFlowsVersionsCreateCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsVersionsCreateCall {
27077	c.ctx_ = ctx
27078	return c
27079}
27080
27081// Header returns an http.Header that can be modified by the caller to
27082// add HTTP headers to the request.
27083func (c *ProjectsLocationsAgentsFlowsVersionsCreateCall) Header() http.Header {
27084	if c.header_ == nil {
27085		c.header_ = make(http.Header)
27086	}
27087	return c.header_
27088}
27089
27090func (c *ProjectsLocationsAgentsFlowsVersionsCreateCall) doRequest(alt string) (*http.Response, error) {
27091	reqHeaders := make(http.Header)
27092	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
27093	for k, v := range c.header_ {
27094		reqHeaders[k] = v
27095	}
27096	reqHeaders.Set("User-Agent", c.s.userAgent())
27097	var body io.Reader = nil
27098	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3version)
27099	if err != nil {
27100		return nil, err
27101	}
27102	reqHeaders.Set("Content-Type", "application/json")
27103	c.urlParams_.Set("alt", alt)
27104	c.urlParams_.Set("prettyPrint", "false")
27105	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/versions")
27106	urls += "?" + c.urlParams_.Encode()
27107	req, err := http.NewRequest("POST", urls, body)
27108	if err != nil {
27109		return nil, err
27110	}
27111	req.Header = reqHeaders
27112	googleapi.Expand(req.URL, map[string]string{
27113		"parent": c.parent,
27114	})
27115	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27116}
27117
27118// Do executes the "dialogflow.projects.locations.agents.flows.versions.create" call.
27119// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
27120// Any non-2xx status code is an error. Response headers are in either
27121// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
27122// was returned at all) in error.(*googleapi.Error).Header. Use
27123// googleapi.IsNotModified to check whether the returned error was
27124// because http.StatusNotModified was returned.
27125func (c *ProjectsLocationsAgentsFlowsVersionsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
27126	gensupport.SetOptions(c.urlParams_, opts...)
27127	res, err := c.doRequest("json")
27128	if res != nil && res.StatusCode == http.StatusNotModified {
27129		if res.Body != nil {
27130			res.Body.Close()
27131		}
27132		return nil, &googleapi.Error{
27133			Code:   res.StatusCode,
27134			Header: res.Header,
27135		}
27136	}
27137	if err != nil {
27138		return nil, err
27139	}
27140	defer googleapi.CloseBody(res)
27141	if err := googleapi.CheckResponse(res); err != nil {
27142		return nil, err
27143	}
27144	ret := &GoogleLongrunningOperation{
27145		ServerResponse: googleapi.ServerResponse{
27146			Header:         res.Header,
27147			HTTPStatusCode: res.StatusCode,
27148		},
27149	}
27150	target := &ret
27151	if err := gensupport.DecodeResponse(target, res); err != nil {
27152		return nil, err
27153	}
27154	return ret, nil
27155	// {
27156	//   "description": "Creates a Version in the specified Flow.",
27157	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/versions",
27158	//   "httpMethod": "POST",
27159	//   "id": "dialogflow.projects.locations.agents.flows.versions.create",
27160	//   "parameterOrder": [
27161	//     "parent"
27162	//   ],
27163	//   "parameters": {
27164	//     "parent": {
27165	//       "description": "Required. The Flow to create an Version for. Format: `projects//locations//agents//flows/`.",
27166	//       "location": "path",
27167	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+$",
27168	//       "required": true,
27169	//       "type": "string"
27170	//     }
27171	//   },
27172	//   "path": "v3/{+parent}/versions",
27173	//   "request": {
27174	//     "$ref": "GoogleCloudDialogflowCxV3Version"
27175	//   },
27176	//   "response": {
27177	//     "$ref": "GoogleLongrunningOperation"
27178	//   },
27179	//   "scopes": [
27180	//     "https://www.googleapis.com/auth/cloud-platform",
27181	//     "https://www.googleapis.com/auth/dialogflow"
27182	//   ]
27183	// }
27184
27185}
27186
27187// method id "dialogflow.projects.locations.agents.flows.versions.delete":
27188
27189type ProjectsLocationsAgentsFlowsVersionsDeleteCall struct {
27190	s          *Service
27191	name       string
27192	urlParams_ gensupport.URLParams
27193	ctx_       context.Context
27194	header_    http.Header
27195}
27196
27197// Delete: Deletes the specified Version.
27198//
27199// - name: The name of the Version to delete. Format:
27200//   `projects//locations//agents//flows//versions/`.
27201func (r *ProjectsLocationsAgentsFlowsVersionsService) Delete(name string) *ProjectsLocationsAgentsFlowsVersionsDeleteCall {
27202	c := &ProjectsLocationsAgentsFlowsVersionsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27203	c.name = name
27204	return c
27205}
27206
27207// Fields allows partial responses to be retrieved. See
27208// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27209// for more information.
27210func (c *ProjectsLocationsAgentsFlowsVersionsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsVersionsDeleteCall {
27211	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27212	return c
27213}
27214
27215// Context sets the context to be used in this call's Do method. Any
27216// pending HTTP request will be aborted if the provided context is
27217// canceled.
27218func (c *ProjectsLocationsAgentsFlowsVersionsDeleteCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsVersionsDeleteCall {
27219	c.ctx_ = ctx
27220	return c
27221}
27222
27223// Header returns an http.Header that can be modified by the caller to
27224// add HTTP headers to the request.
27225func (c *ProjectsLocationsAgentsFlowsVersionsDeleteCall) Header() http.Header {
27226	if c.header_ == nil {
27227		c.header_ = make(http.Header)
27228	}
27229	return c.header_
27230}
27231
27232func (c *ProjectsLocationsAgentsFlowsVersionsDeleteCall) doRequest(alt string) (*http.Response, error) {
27233	reqHeaders := make(http.Header)
27234	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
27235	for k, v := range c.header_ {
27236		reqHeaders[k] = v
27237	}
27238	reqHeaders.Set("User-Agent", c.s.userAgent())
27239	var body io.Reader = nil
27240	c.urlParams_.Set("alt", alt)
27241	c.urlParams_.Set("prettyPrint", "false")
27242	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
27243	urls += "?" + c.urlParams_.Encode()
27244	req, err := http.NewRequest("DELETE", urls, body)
27245	if err != nil {
27246		return nil, err
27247	}
27248	req.Header = reqHeaders
27249	googleapi.Expand(req.URL, map[string]string{
27250		"name": c.name,
27251	})
27252	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27253}
27254
27255// Do executes the "dialogflow.projects.locations.agents.flows.versions.delete" call.
27256// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
27257// non-2xx status code is an error. Response headers are in either
27258// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
27259// returned at all) in error.(*googleapi.Error).Header. Use
27260// googleapi.IsNotModified to check whether the returned error was
27261// because http.StatusNotModified was returned.
27262func (c *ProjectsLocationsAgentsFlowsVersionsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
27263	gensupport.SetOptions(c.urlParams_, opts...)
27264	res, err := c.doRequest("json")
27265	if res != nil && res.StatusCode == http.StatusNotModified {
27266		if res.Body != nil {
27267			res.Body.Close()
27268		}
27269		return nil, &googleapi.Error{
27270			Code:   res.StatusCode,
27271			Header: res.Header,
27272		}
27273	}
27274	if err != nil {
27275		return nil, err
27276	}
27277	defer googleapi.CloseBody(res)
27278	if err := googleapi.CheckResponse(res); err != nil {
27279		return nil, err
27280	}
27281	ret := &GoogleProtobufEmpty{
27282		ServerResponse: googleapi.ServerResponse{
27283			Header:         res.Header,
27284			HTTPStatusCode: res.StatusCode,
27285		},
27286	}
27287	target := &ret
27288	if err := gensupport.DecodeResponse(target, res); err != nil {
27289		return nil, err
27290	}
27291	return ret, nil
27292	// {
27293	//   "description": "Deletes the specified Version.",
27294	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/versions/{versionsId}",
27295	//   "httpMethod": "DELETE",
27296	//   "id": "dialogflow.projects.locations.agents.flows.versions.delete",
27297	//   "parameterOrder": [
27298	//     "name"
27299	//   ],
27300	//   "parameters": {
27301	//     "name": {
27302	//       "description": "Required. The name of the Version to delete. Format: `projects//locations//agents//flows//versions/`.",
27303	//       "location": "path",
27304	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+/versions/[^/]+$",
27305	//       "required": true,
27306	//       "type": "string"
27307	//     }
27308	//   },
27309	//   "path": "v3/{+name}",
27310	//   "response": {
27311	//     "$ref": "GoogleProtobufEmpty"
27312	//   },
27313	//   "scopes": [
27314	//     "https://www.googleapis.com/auth/cloud-platform",
27315	//     "https://www.googleapis.com/auth/dialogflow"
27316	//   ]
27317	// }
27318
27319}
27320
27321// method id "dialogflow.projects.locations.agents.flows.versions.get":
27322
27323type ProjectsLocationsAgentsFlowsVersionsGetCall struct {
27324	s            *Service
27325	name         string
27326	urlParams_   gensupport.URLParams
27327	ifNoneMatch_ string
27328	ctx_         context.Context
27329	header_      http.Header
27330}
27331
27332// Get: Retrieves the specified Version.
27333//
27334// - name: The name of the Version. Format:
27335//   `projects//locations//agents//flows//versions/`.
27336func (r *ProjectsLocationsAgentsFlowsVersionsService) Get(name string) *ProjectsLocationsAgentsFlowsVersionsGetCall {
27337	c := &ProjectsLocationsAgentsFlowsVersionsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27338	c.name = name
27339	return c
27340}
27341
27342// Fields allows partial responses to be retrieved. See
27343// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27344// for more information.
27345func (c *ProjectsLocationsAgentsFlowsVersionsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsVersionsGetCall {
27346	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27347	return c
27348}
27349
27350// IfNoneMatch sets the optional parameter which makes the operation
27351// fail if the object's ETag matches the given value. This is useful for
27352// getting updates only after the object has changed since the last
27353// request. Use googleapi.IsNotModified to check whether the response
27354// error from Do is the result of In-None-Match.
27355func (c *ProjectsLocationsAgentsFlowsVersionsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsFlowsVersionsGetCall {
27356	c.ifNoneMatch_ = entityTag
27357	return c
27358}
27359
27360// Context sets the context to be used in this call's Do method. Any
27361// pending HTTP request will be aborted if the provided context is
27362// canceled.
27363func (c *ProjectsLocationsAgentsFlowsVersionsGetCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsVersionsGetCall {
27364	c.ctx_ = ctx
27365	return c
27366}
27367
27368// Header returns an http.Header that can be modified by the caller to
27369// add HTTP headers to the request.
27370func (c *ProjectsLocationsAgentsFlowsVersionsGetCall) Header() http.Header {
27371	if c.header_ == nil {
27372		c.header_ = make(http.Header)
27373	}
27374	return c.header_
27375}
27376
27377func (c *ProjectsLocationsAgentsFlowsVersionsGetCall) doRequest(alt string) (*http.Response, error) {
27378	reqHeaders := make(http.Header)
27379	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
27380	for k, v := range c.header_ {
27381		reqHeaders[k] = v
27382	}
27383	reqHeaders.Set("User-Agent", c.s.userAgent())
27384	if c.ifNoneMatch_ != "" {
27385		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
27386	}
27387	var body io.Reader = nil
27388	c.urlParams_.Set("alt", alt)
27389	c.urlParams_.Set("prettyPrint", "false")
27390	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
27391	urls += "?" + c.urlParams_.Encode()
27392	req, err := http.NewRequest("GET", urls, body)
27393	if err != nil {
27394		return nil, err
27395	}
27396	req.Header = reqHeaders
27397	googleapi.Expand(req.URL, map[string]string{
27398		"name": c.name,
27399	})
27400	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27401}
27402
27403// Do executes the "dialogflow.projects.locations.agents.flows.versions.get" call.
27404// Exactly one of *GoogleCloudDialogflowCxV3Version or error will be
27405// non-nil. Any non-2xx status code is an error. Response headers are in
27406// either *GoogleCloudDialogflowCxV3Version.ServerResponse.Header or (if
27407// a response was returned at all) in error.(*googleapi.Error).Header.
27408// Use googleapi.IsNotModified to check whether the returned error was
27409// because http.StatusNotModified was returned.
27410func (c *ProjectsLocationsAgentsFlowsVersionsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3Version, error) {
27411	gensupport.SetOptions(c.urlParams_, opts...)
27412	res, err := c.doRequest("json")
27413	if res != nil && res.StatusCode == http.StatusNotModified {
27414		if res.Body != nil {
27415			res.Body.Close()
27416		}
27417		return nil, &googleapi.Error{
27418			Code:   res.StatusCode,
27419			Header: res.Header,
27420		}
27421	}
27422	if err != nil {
27423		return nil, err
27424	}
27425	defer googleapi.CloseBody(res)
27426	if err := googleapi.CheckResponse(res); err != nil {
27427		return nil, err
27428	}
27429	ret := &GoogleCloudDialogflowCxV3Version{
27430		ServerResponse: googleapi.ServerResponse{
27431			Header:         res.Header,
27432			HTTPStatusCode: res.StatusCode,
27433		},
27434	}
27435	target := &ret
27436	if err := gensupport.DecodeResponse(target, res); err != nil {
27437		return nil, err
27438	}
27439	return ret, nil
27440	// {
27441	//   "description": "Retrieves the specified Version.",
27442	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/versions/{versionsId}",
27443	//   "httpMethod": "GET",
27444	//   "id": "dialogflow.projects.locations.agents.flows.versions.get",
27445	//   "parameterOrder": [
27446	//     "name"
27447	//   ],
27448	//   "parameters": {
27449	//     "name": {
27450	//       "description": "Required. The name of the Version. Format: `projects//locations//agents//flows//versions/`.",
27451	//       "location": "path",
27452	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+/versions/[^/]+$",
27453	//       "required": true,
27454	//       "type": "string"
27455	//     }
27456	//   },
27457	//   "path": "v3/{+name}",
27458	//   "response": {
27459	//     "$ref": "GoogleCloudDialogflowCxV3Version"
27460	//   },
27461	//   "scopes": [
27462	//     "https://www.googleapis.com/auth/cloud-platform",
27463	//     "https://www.googleapis.com/auth/dialogflow"
27464	//   ]
27465	// }
27466
27467}
27468
27469// method id "dialogflow.projects.locations.agents.flows.versions.list":
27470
27471type ProjectsLocationsAgentsFlowsVersionsListCall struct {
27472	s            *Service
27473	parent       string
27474	urlParams_   gensupport.URLParams
27475	ifNoneMatch_ string
27476	ctx_         context.Context
27477	header_      http.Header
27478}
27479
27480// List: Returns the list of all versions in the specified Flow.
27481//
27482// - parent: The Flow to list all versions for. Format:
27483//   `projects//locations//agents//flows/`.
27484func (r *ProjectsLocationsAgentsFlowsVersionsService) List(parent string) *ProjectsLocationsAgentsFlowsVersionsListCall {
27485	c := &ProjectsLocationsAgentsFlowsVersionsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27486	c.parent = parent
27487	return c
27488}
27489
27490// PageSize sets the optional parameter "pageSize": The maximum number
27491// of items to return in a single page. By default 20 and at most 100.
27492func (c *ProjectsLocationsAgentsFlowsVersionsListCall) PageSize(pageSize int64) *ProjectsLocationsAgentsFlowsVersionsListCall {
27493	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
27494	return c
27495}
27496
27497// PageToken sets the optional parameter "pageToken": The
27498// next_page_token value returned from a previous list request.
27499func (c *ProjectsLocationsAgentsFlowsVersionsListCall) PageToken(pageToken string) *ProjectsLocationsAgentsFlowsVersionsListCall {
27500	c.urlParams_.Set("pageToken", pageToken)
27501	return c
27502}
27503
27504// Fields allows partial responses to be retrieved. See
27505// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27506// for more information.
27507func (c *ProjectsLocationsAgentsFlowsVersionsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsVersionsListCall {
27508	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27509	return c
27510}
27511
27512// IfNoneMatch sets the optional parameter which makes the operation
27513// fail if the object's ETag matches the given value. This is useful for
27514// getting updates only after the object has changed since the last
27515// request. Use googleapi.IsNotModified to check whether the response
27516// error from Do is the result of In-None-Match.
27517func (c *ProjectsLocationsAgentsFlowsVersionsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsFlowsVersionsListCall {
27518	c.ifNoneMatch_ = entityTag
27519	return c
27520}
27521
27522// Context sets the context to be used in this call's Do method. Any
27523// pending HTTP request will be aborted if the provided context is
27524// canceled.
27525func (c *ProjectsLocationsAgentsFlowsVersionsListCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsVersionsListCall {
27526	c.ctx_ = ctx
27527	return c
27528}
27529
27530// Header returns an http.Header that can be modified by the caller to
27531// add HTTP headers to the request.
27532func (c *ProjectsLocationsAgentsFlowsVersionsListCall) Header() http.Header {
27533	if c.header_ == nil {
27534		c.header_ = make(http.Header)
27535	}
27536	return c.header_
27537}
27538
27539func (c *ProjectsLocationsAgentsFlowsVersionsListCall) doRequest(alt string) (*http.Response, error) {
27540	reqHeaders := make(http.Header)
27541	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
27542	for k, v := range c.header_ {
27543		reqHeaders[k] = v
27544	}
27545	reqHeaders.Set("User-Agent", c.s.userAgent())
27546	if c.ifNoneMatch_ != "" {
27547		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
27548	}
27549	var body io.Reader = nil
27550	c.urlParams_.Set("alt", alt)
27551	c.urlParams_.Set("prettyPrint", "false")
27552	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/versions")
27553	urls += "?" + c.urlParams_.Encode()
27554	req, err := http.NewRequest("GET", urls, body)
27555	if err != nil {
27556		return nil, err
27557	}
27558	req.Header = reqHeaders
27559	googleapi.Expand(req.URL, map[string]string{
27560		"parent": c.parent,
27561	})
27562	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27563}
27564
27565// Do executes the "dialogflow.projects.locations.agents.flows.versions.list" call.
27566// Exactly one of *GoogleCloudDialogflowCxV3ListVersionsResponse or
27567// error will be non-nil. Any non-2xx status code is an error. Response
27568// headers are in either
27569// *GoogleCloudDialogflowCxV3ListVersionsResponse.ServerResponse.Header
27570// or (if a response was returned at all) in
27571// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
27572// whether the returned error was because http.StatusNotModified was
27573// returned.
27574func (c *ProjectsLocationsAgentsFlowsVersionsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3ListVersionsResponse, error) {
27575	gensupport.SetOptions(c.urlParams_, opts...)
27576	res, err := c.doRequest("json")
27577	if res != nil && res.StatusCode == http.StatusNotModified {
27578		if res.Body != nil {
27579			res.Body.Close()
27580		}
27581		return nil, &googleapi.Error{
27582			Code:   res.StatusCode,
27583			Header: res.Header,
27584		}
27585	}
27586	if err != nil {
27587		return nil, err
27588	}
27589	defer googleapi.CloseBody(res)
27590	if err := googleapi.CheckResponse(res); err != nil {
27591		return nil, err
27592	}
27593	ret := &GoogleCloudDialogflowCxV3ListVersionsResponse{
27594		ServerResponse: googleapi.ServerResponse{
27595			Header:         res.Header,
27596			HTTPStatusCode: res.StatusCode,
27597		},
27598	}
27599	target := &ret
27600	if err := gensupport.DecodeResponse(target, res); err != nil {
27601		return nil, err
27602	}
27603	return ret, nil
27604	// {
27605	//   "description": "Returns the list of all versions in the specified Flow.",
27606	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/versions",
27607	//   "httpMethod": "GET",
27608	//   "id": "dialogflow.projects.locations.agents.flows.versions.list",
27609	//   "parameterOrder": [
27610	//     "parent"
27611	//   ],
27612	//   "parameters": {
27613	//     "pageSize": {
27614	//       "description": "The maximum number of items to return in a single page. By default 20 and at most 100.",
27615	//       "format": "int32",
27616	//       "location": "query",
27617	//       "type": "integer"
27618	//     },
27619	//     "pageToken": {
27620	//       "description": "The next_page_token value returned from a previous list request.",
27621	//       "location": "query",
27622	//       "type": "string"
27623	//     },
27624	//     "parent": {
27625	//       "description": "Required. The Flow to list all versions for. Format: `projects//locations//agents//flows/`.",
27626	//       "location": "path",
27627	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+$",
27628	//       "required": true,
27629	//       "type": "string"
27630	//     }
27631	//   },
27632	//   "path": "v3/{+parent}/versions",
27633	//   "response": {
27634	//     "$ref": "GoogleCloudDialogflowCxV3ListVersionsResponse"
27635	//   },
27636	//   "scopes": [
27637	//     "https://www.googleapis.com/auth/cloud-platform",
27638	//     "https://www.googleapis.com/auth/dialogflow"
27639	//   ]
27640	// }
27641
27642}
27643
27644// Pages invokes f for each page of results.
27645// A non-nil error returned from f will halt the iteration.
27646// The provided context supersedes any context provided to the Context method.
27647func (c *ProjectsLocationsAgentsFlowsVersionsListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3ListVersionsResponse) error) error {
27648	c.ctx_ = ctx
27649	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
27650	for {
27651		x, err := c.Do()
27652		if err != nil {
27653			return err
27654		}
27655		if err := f(x); err != nil {
27656			return err
27657		}
27658		if x.NextPageToken == "" {
27659			return nil
27660		}
27661		c.PageToken(x.NextPageToken)
27662	}
27663}
27664
27665// method id "dialogflow.projects.locations.agents.flows.versions.load":
27666
27667type ProjectsLocationsAgentsFlowsVersionsLoadCall struct {
27668	s                                           *Service
27669	name                                        string
27670	googleclouddialogflowcxv3loadversionrequest *GoogleCloudDialogflowCxV3LoadVersionRequest
27671	urlParams_                                  gensupport.URLParams
27672	ctx_                                        context.Context
27673	header_                                     http.Header
27674}
27675
27676// Load: Loads resources in the specified version to the draft flow.
27677//
27678// - name: The Version to be loaded to draft flow. Format:
27679//   `projects//locations//agents//flows//versions/`.
27680func (r *ProjectsLocationsAgentsFlowsVersionsService) Load(name string, googleclouddialogflowcxv3loadversionrequest *GoogleCloudDialogflowCxV3LoadVersionRequest) *ProjectsLocationsAgentsFlowsVersionsLoadCall {
27681	c := &ProjectsLocationsAgentsFlowsVersionsLoadCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27682	c.name = name
27683	c.googleclouddialogflowcxv3loadversionrequest = googleclouddialogflowcxv3loadversionrequest
27684	return c
27685}
27686
27687// Fields allows partial responses to be retrieved. See
27688// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27689// for more information.
27690func (c *ProjectsLocationsAgentsFlowsVersionsLoadCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsVersionsLoadCall {
27691	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27692	return c
27693}
27694
27695// Context sets the context to be used in this call's Do method. Any
27696// pending HTTP request will be aborted if the provided context is
27697// canceled.
27698func (c *ProjectsLocationsAgentsFlowsVersionsLoadCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsVersionsLoadCall {
27699	c.ctx_ = ctx
27700	return c
27701}
27702
27703// Header returns an http.Header that can be modified by the caller to
27704// add HTTP headers to the request.
27705func (c *ProjectsLocationsAgentsFlowsVersionsLoadCall) Header() http.Header {
27706	if c.header_ == nil {
27707		c.header_ = make(http.Header)
27708	}
27709	return c.header_
27710}
27711
27712func (c *ProjectsLocationsAgentsFlowsVersionsLoadCall) doRequest(alt string) (*http.Response, error) {
27713	reqHeaders := make(http.Header)
27714	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
27715	for k, v := range c.header_ {
27716		reqHeaders[k] = v
27717	}
27718	reqHeaders.Set("User-Agent", c.s.userAgent())
27719	var body io.Reader = nil
27720	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3loadversionrequest)
27721	if err != nil {
27722		return nil, err
27723	}
27724	reqHeaders.Set("Content-Type", "application/json")
27725	c.urlParams_.Set("alt", alt)
27726	c.urlParams_.Set("prettyPrint", "false")
27727	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}:load")
27728	urls += "?" + c.urlParams_.Encode()
27729	req, err := http.NewRequest("POST", urls, body)
27730	if err != nil {
27731		return nil, err
27732	}
27733	req.Header = reqHeaders
27734	googleapi.Expand(req.URL, map[string]string{
27735		"name": c.name,
27736	})
27737	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27738}
27739
27740// Do executes the "dialogflow.projects.locations.agents.flows.versions.load" call.
27741// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
27742// Any non-2xx status code is an error. Response headers are in either
27743// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
27744// was returned at all) in error.(*googleapi.Error).Header. Use
27745// googleapi.IsNotModified to check whether the returned error was
27746// because http.StatusNotModified was returned.
27747func (c *ProjectsLocationsAgentsFlowsVersionsLoadCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
27748	gensupport.SetOptions(c.urlParams_, opts...)
27749	res, err := c.doRequest("json")
27750	if res != nil && res.StatusCode == http.StatusNotModified {
27751		if res.Body != nil {
27752			res.Body.Close()
27753		}
27754		return nil, &googleapi.Error{
27755			Code:   res.StatusCode,
27756			Header: res.Header,
27757		}
27758	}
27759	if err != nil {
27760		return nil, err
27761	}
27762	defer googleapi.CloseBody(res)
27763	if err := googleapi.CheckResponse(res); err != nil {
27764		return nil, err
27765	}
27766	ret := &GoogleLongrunningOperation{
27767		ServerResponse: googleapi.ServerResponse{
27768			Header:         res.Header,
27769			HTTPStatusCode: res.StatusCode,
27770		},
27771	}
27772	target := &ret
27773	if err := gensupport.DecodeResponse(target, res); err != nil {
27774		return nil, err
27775	}
27776	return ret, nil
27777	// {
27778	//   "description": "Loads resources in the specified version to the draft flow.",
27779	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/versions/{versionsId}:load",
27780	//   "httpMethod": "POST",
27781	//   "id": "dialogflow.projects.locations.agents.flows.versions.load",
27782	//   "parameterOrder": [
27783	//     "name"
27784	//   ],
27785	//   "parameters": {
27786	//     "name": {
27787	//       "description": "Required. The Version to be loaded to draft flow. Format: `projects//locations//agents//flows//versions/`.",
27788	//       "location": "path",
27789	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+/versions/[^/]+$",
27790	//       "required": true,
27791	//       "type": "string"
27792	//     }
27793	//   },
27794	//   "path": "v3/{+name}:load",
27795	//   "request": {
27796	//     "$ref": "GoogleCloudDialogflowCxV3LoadVersionRequest"
27797	//   },
27798	//   "response": {
27799	//     "$ref": "GoogleLongrunningOperation"
27800	//   },
27801	//   "scopes": [
27802	//     "https://www.googleapis.com/auth/cloud-platform",
27803	//     "https://www.googleapis.com/auth/dialogflow"
27804	//   ]
27805	// }
27806
27807}
27808
27809// method id "dialogflow.projects.locations.agents.flows.versions.patch":
27810
27811type ProjectsLocationsAgentsFlowsVersionsPatchCall struct {
27812	s                                *Service
27813	name                             string
27814	googleclouddialogflowcxv3version *GoogleCloudDialogflowCxV3Version
27815	urlParams_                       gensupport.URLParams
27816	ctx_                             context.Context
27817	header_                          http.Header
27818}
27819
27820// Patch: Updates the specified Version.
27821//
27822// - name: Format: projects//locations//agents//flows//versions/.
27823//   Version ID is a self-increasing number generated by Dialogflow upon
27824//   version creation.
27825func (r *ProjectsLocationsAgentsFlowsVersionsService) Patch(name string, googleclouddialogflowcxv3version *GoogleCloudDialogflowCxV3Version) *ProjectsLocationsAgentsFlowsVersionsPatchCall {
27826	c := &ProjectsLocationsAgentsFlowsVersionsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27827	c.name = name
27828	c.googleclouddialogflowcxv3version = googleclouddialogflowcxv3version
27829	return c
27830}
27831
27832// UpdateMask sets the optional parameter "updateMask": Required. The
27833// mask to control which fields get updated. Currently only
27834// `description` and `display_name` can be updated.
27835func (c *ProjectsLocationsAgentsFlowsVersionsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsAgentsFlowsVersionsPatchCall {
27836	c.urlParams_.Set("updateMask", updateMask)
27837	return c
27838}
27839
27840// Fields allows partial responses to be retrieved. See
27841// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27842// for more information.
27843func (c *ProjectsLocationsAgentsFlowsVersionsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsVersionsPatchCall {
27844	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27845	return c
27846}
27847
27848// Context sets the context to be used in this call's Do method. Any
27849// pending HTTP request will be aborted if the provided context is
27850// canceled.
27851func (c *ProjectsLocationsAgentsFlowsVersionsPatchCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsVersionsPatchCall {
27852	c.ctx_ = ctx
27853	return c
27854}
27855
27856// Header returns an http.Header that can be modified by the caller to
27857// add HTTP headers to the request.
27858func (c *ProjectsLocationsAgentsFlowsVersionsPatchCall) Header() http.Header {
27859	if c.header_ == nil {
27860		c.header_ = make(http.Header)
27861	}
27862	return c.header_
27863}
27864
27865func (c *ProjectsLocationsAgentsFlowsVersionsPatchCall) doRequest(alt string) (*http.Response, error) {
27866	reqHeaders := make(http.Header)
27867	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
27868	for k, v := range c.header_ {
27869		reqHeaders[k] = v
27870	}
27871	reqHeaders.Set("User-Agent", c.s.userAgent())
27872	var body io.Reader = nil
27873	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3version)
27874	if err != nil {
27875		return nil, err
27876	}
27877	reqHeaders.Set("Content-Type", "application/json")
27878	c.urlParams_.Set("alt", alt)
27879	c.urlParams_.Set("prettyPrint", "false")
27880	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
27881	urls += "?" + c.urlParams_.Encode()
27882	req, err := http.NewRequest("PATCH", urls, body)
27883	if err != nil {
27884		return nil, err
27885	}
27886	req.Header = reqHeaders
27887	googleapi.Expand(req.URL, map[string]string{
27888		"name": c.name,
27889	})
27890	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27891}
27892
27893// Do executes the "dialogflow.projects.locations.agents.flows.versions.patch" call.
27894// Exactly one of *GoogleCloudDialogflowCxV3Version or error will be
27895// non-nil. Any non-2xx status code is an error. Response headers are in
27896// either *GoogleCloudDialogflowCxV3Version.ServerResponse.Header or (if
27897// a response was returned at all) in error.(*googleapi.Error).Header.
27898// Use googleapi.IsNotModified to check whether the returned error was
27899// because http.StatusNotModified was returned.
27900func (c *ProjectsLocationsAgentsFlowsVersionsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3Version, error) {
27901	gensupport.SetOptions(c.urlParams_, opts...)
27902	res, err := c.doRequest("json")
27903	if res != nil && res.StatusCode == http.StatusNotModified {
27904		if res.Body != nil {
27905			res.Body.Close()
27906		}
27907		return nil, &googleapi.Error{
27908			Code:   res.StatusCode,
27909			Header: res.Header,
27910		}
27911	}
27912	if err != nil {
27913		return nil, err
27914	}
27915	defer googleapi.CloseBody(res)
27916	if err := googleapi.CheckResponse(res); err != nil {
27917		return nil, err
27918	}
27919	ret := &GoogleCloudDialogflowCxV3Version{
27920		ServerResponse: googleapi.ServerResponse{
27921			Header:         res.Header,
27922			HTTPStatusCode: res.StatusCode,
27923		},
27924	}
27925	target := &ret
27926	if err := gensupport.DecodeResponse(target, res); err != nil {
27927		return nil, err
27928	}
27929	return ret, nil
27930	// {
27931	//   "description": "Updates the specified Version.",
27932	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/versions/{versionsId}",
27933	//   "httpMethod": "PATCH",
27934	//   "id": "dialogflow.projects.locations.agents.flows.versions.patch",
27935	//   "parameterOrder": [
27936	//     "name"
27937	//   ],
27938	//   "parameters": {
27939	//     "name": {
27940	//       "description": "Format: projects//locations//agents//flows//versions/. Version ID is a self-increasing number generated by Dialogflow upon version creation.",
27941	//       "location": "path",
27942	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+/versions/[^/]+$",
27943	//       "required": true,
27944	//       "type": "string"
27945	//     },
27946	//     "updateMask": {
27947	//       "description": "Required. The mask to control which fields get updated. Currently only `description` and `display_name` can be updated.",
27948	//       "format": "google-fieldmask",
27949	//       "location": "query",
27950	//       "type": "string"
27951	//     }
27952	//   },
27953	//   "path": "v3/{+name}",
27954	//   "request": {
27955	//     "$ref": "GoogleCloudDialogflowCxV3Version"
27956	//   },
27957	//   "response": {
27958	//     "$ref": "GoogleCloudDialogflowCxV3Version"
27959	//   },
27960	//   "scopes": [
27961	//     "https://www.googleapis.com/auth/cloud-platform",
27962	//     "https://www.googleapis.com/auth/dialogflow"
27963	//   ]
27964	// }
27965
27966}
27967
27968// method id "dialogflow.projects.locations.agents.intents.create":
27969
27970type ProjectsLocationsAgentsIntentsCreateCall struct {
27971	s                               *Service
27972	parent                          string
27973	googleclouddialogflowcxv3intent *GoogleCloudDialogflowCxV3Intent
27974	urlParams_                      gensupport.URLParams
27975	ctx_                            context.Context
27976	header_                         http.Header
27977}
27978
27979// Create: Creates an intent in the specified agent. Note: You should
27980// always train a flow prior to sending it queries. See the training
27981// documentation
27982// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
27983//
27984// - parent: The agent to create an intent for. Format:
27985//   `projects//locations//agents/`.
27986func (r *ProjectsLocationsAgentsIntentsService) Create(parent string, googleclouddialogflowcxv3intent *GoogleCloudDialogflowCxV3Intent) *ProjectsLocationsAgentsIntentsCreateCall {
27987	c := &ProjectsLocationsAgentsIntentsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27988	c.parent = parent
27989	c.googleclouddialogflowcxv3intent = googleclouddialogflowcxv3intent
27990	return c
27991}
27992
27993// LanguageCode sets the optional parameter "languageCode": The language
27994// of the following fields in `intent`: *
27995// `Intent.training_phrases.parts.text` If not specified, the agent's
27996// default language is used. Many languages
27997// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
27998// supported. Note: languages must be enabled in the agent before they
27999// can be used.
28000func (c *ProjectsLocationsAgentsIntentsCreateCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsIntentsCreateCall {
28001	c.urlParams_.Set("languageCode", languageCode)
28002	return c
28003}
28004
28005// Fields allows partial responses to be retrieved. See
28006// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28007// for more information.
28008func (c *ProjectsLocationsAgentsIntentsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsIntentsCreateCall {
28009	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28010	return c
28011}
28012
28013// Context sets the context to be used in this call's Do method. Any
28014// pending HTTP request will be aborted if the provided context is
28015// canceled.
28016func (c *ProjectsLocationsAgentsIntentsCreateCall) Context(ctx context.Context) *ProjectsLocationsAgentsIntentsCreateCall {
28017	c.ctx_ = ctx
28018	return c
28019}
28020
28021// Header returns an http.Header that can be modified by the caller to
28022// add HTTP headers to the request.
28023func (c *ProjectsLocationsAgentsIntentsCreateCall) Header() http.Header {
28024	if c.header_ == nil {
28025		c.header_ = make(http.Header)
28026	}
28027	return c.header_
28028}
28029
28030func (c *ProjectsLocationsAgentsIntentsCreateCall) doRequest(alt string) (*http.Response, error) {
28031	reqHeaders := make(http.Header)
28032	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
28033	for k, v := range c.header_ {
28034		reqHeaders[k] = v
28035	}
28036	reqHeaders.Set("User-Agent", c.s.userAgent())
28037	var body io.Reader = nil
28038	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3intent)
28039	if err != nil {
28040		return nil, err
28041	}
28042	reqHeaders.Set("Content-Type", "application/json")
28043	c.urlParams_.Set("alt", alt)
28044	c.urlParams_.Set("prettyPrint", "false")
28045	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/intents")
28046	urls += "?" + c.urlParams_.Encode()
28047	req, err := http.NewRequest("POST", urls, body)
28048	if err != nil {
28049		return nil, err
28050	}
28051	req.Header = reqHeaders
28052	googleapi.Expand(req.URL, map[string]string{
28053		"parent": c.parent,
28054	})
28055	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28056}
28057
28058// Do executes the "dialogflow.projects.locations.agents.intents.create" call.
28059// Exactly one of *GoogleCloudDialogflowCxV3Intent or error will be
28060// non-nil. Any non-2xx status code is an error. Response headers are in
28061// either *GoogleCloudDialogflowCxV3Intent.ServerResponse.Header or (if
28062// a response was returned at all) in error.(*googleapi.Error).Header.
28063// Use googleapi.IsNotModified to check whether the returned error was
28064// because http.StatusNotModified was returned.
28065func (c *ProjectsLocationsAgentsIntentsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3Intent, error) {
28066	gensupport.SetOptions(c.urlParams_, opts...)
28067	res, err := c.doRequest("json")
28068	if res != nil && res.StatusCode == http.StatusNotModified {
28069		if res.Body != nil {
28070			res.Body.Close()
28071		}
28072		return nil, &googleapi.Error{
28073			Code:   res.StatusCode,
28074			Header: res.Header,
28075		}
28076	}
28077	if err != nil {
28078		return nil, err
28079	}
28080	defer googleapi.CloseBody(res)
28081	if err := googleapi.CheckResponse(res); err != nil {
28082		return nil, err
28083	}
28084	ret := &GoogleCloudDialogflowCxV3Intent{
28085		ServerResponse: googleapi.ServerResponse{
28086			Header:         res.Header,
28087			HTTPStatusCode: res.StatusCode,
28088		},
28089	}
28090	target := &ret
28091	if err := gensupport.DecodeResponse(target, res); err != nil {
28092		return nil, err
28093	}
28094	return ret, nil
28095	// {
28096	//   "description": "Creates an intent in the specified agent. Note: You should always train a flow prior to sending it queries. See the [training documentation](https://cloud.google.com/dialogflow/cx/docs/concept/training).",
28097	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/intents",
28098	//   "httpMethod": "POST",
28099	//   "id": "dialogflow.projects.locations.agents.intents.create",
28100	//   "parameterOrder": [
28101	//     "parent"
28102	//   ],
28103	//   "parameters": {
28104	//     "languageCode": {
28105	//       "description": "The language of the following fields in `intent`: * `Intent.training_phrases.parts.text` If not specified, the agent's default language is used. [Many languages](https://cloud.google.com/dialogflow/cx/docs/reference/language) are supported. Note: languages must be enabled in the agent before they can be used.",
28106	//       "location": "query",
28107	//       "type": "string"
28108	//     },
28109	//     "parent": {
28110	//       "description": "Required. The agent to create an intent for. Format: `projects//locations//agents/`.",
28111	//       "location": "path",
28112	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
28113	//       "required": true,
28114	//       "type": "string"
28115	//     }
28116	//   },
28117	//   "path": "v3/{+parent}/intents",
28118	//   "request": {
28119	//     "$ref": "GoogleCloudDialogflowCxV3Intent"
28120	//   },
28121	//   "response": {
28122	//     "$ref": "GoogleCloudDialogflowCxV3Intent"
28123	//   },
28124	//   "scopes": [
28125	//     "https://www.googleapis.com/auth/cloud-platform",
28126	//     "https://www.googleapis.com/auth/dialogflow"
28127	//   ]
28128	// }
28129
28130}
28131
28132// method id "dialogflow.projects.locations.agents.intents.delete":
28133
28134type ProjectsLocationsAgentsIntentsDeleteCall struct {
28135	s          *Service
28136	name       string
28137	urlParams_ gensupport.URLParams
28138	ctx_       context.Context
28139	header_    http.Header
28140}
28141
28142// Delete: Deletes the specified intent. Note: You should always train a
28143// flow prior to sending it queries. See the training documentation
28144// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
28145//
28146// - name: The name of the intent to delete. Format:
28147//   `projects//locations//agents//intents/`.
28148func (r *ProjectsLocationsAgentsIntentsService) Delete(name string) *ProjectsLocationsAgentsIntentsDeleteCall {
28149	c := &ProjectsLocationsAgentsIntentsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28150	c.name = name
28151	return c
28152}
28153
28154// Fields allows partial responses to be retrieved. See
28155// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28156// for more information.
28157func (c *ProjectsLocationsAgentsIntentsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsIntentsDeleteCall {
28158	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28159	return c
28160}
28161
28162// Context sets the context to be used in this call's Do method. Any
28163// pending HTTP request will be aborted if the provided context is
28164// canceled.
28165func (c *ProjectsLocationsAgentsIntentsDeleteCall) Context(ctx context.Context) *ProjectsLocationsAgentsIntentsDeleteCall {
28166	c.ctx_ = ctx
28167	return c
28168}
28169
28170// Header returns an http.Header that can be modified by the caller to
28171// add HTTP headers to the request.
28172func (c *ProjectsLocationsAgentsIntentsDeleteCall) Header() http.Header {
28173	if c.header_ == nil {
28174		c.header_ = make(http.Header)
28175	}
28176	return c.header_
28177}
28178
28179func (c *ProjectsLocationsAgentsIntentsDeleteCall) doRequest(alt string) (*http.Response, error) {
28180	reqHeaders := make(http.Header)
28181	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
28182	for k, v := range c.header_ {
28183		reqHeaders[k] = v
28184	}
28185	reqHeaders.Set("User-Agent", c.s.userAgent())
28186	var body io.Reader = nil
28187	c.urlParams_.Set("alt", alt)
28188	c.urlParams_.Set("prettyPrint", "false")
28189	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
28190	urls += "?" + c.urlParams_.Encode()
28191	req, err := http.NewRequest("DELETE", urls, body)
28192	if err != nil {
28193		return nil, err
28194	}
28195	req.Header = reqHeaders
28196	googleapi.Expand(req.URL, map[string]string{
28197		"name": c.name,
28198	})
28199	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28200}
28201
28202// Do executes the "dialogflow.projects.locations.agents.intents.delete" call.
28203// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
28204// non-2xx status code is an error. Response headers are in either
28205// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
28206// returned at all) in error.(*googleapi.Error).Header. Use
28207// googleapi.IsNotModified to check whether the returned error was
28208// because http.StatusNotModified was returned.
28209func (c *ProjectsLocationsAgentsIntentsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
28210	gensupport.SetOptions(c.urlParams_, opts...)
28211	res, err := c.doRequest("json")
28212	if res != nil && res.StatusCode == http.StatusNotModified {
28213		if res.Body != nil {
28214			res.Body.Close()
28215		}
28216		return nil, &googleapi.Error{
28217			Code:   res.StatusCode,
28218			Header: res.Header,
28219		}
28220	}
28221	if err != nil {
28222		return nil, err
28223	}
28224	defer googleapi.CloseBody(res)
28225	if err := googleapi.CheckResponse(res); err != nil {
28226		return nil, err
28227	}
28228	ret := &GoogleProtobufEmpty{
28229		ServerResponse: googleapi.ServerResponse{
28230			Header:         res.Header,
28231			HTTPStatusCode: res.StatusCode,
28232		},
28233	}
28234	target := &ret
28235	if err := gensupport.DecodeResponse(target, res); err != nil {
28236		return nil, err
28237	}
28238	return ret, nil
28239	// {
28240	//   "description": "Deletes the specified intent. Note: You should always train a flow prior to sending it queries. See the [training documentation](https://cloud.google.com/dialogflow/cx/docs/concept/training).",
28241	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/intents/{intentsId}",
28242	//   "httpMethod": "DELETE",
28243	//   "id": "dialogflow.projects.locations.agents.intents.delete",
28244	//   "parameterOrder": [
28245	//     "name"
28246	//   ],
28247	//   "parameters": {
28248	//     "name": {
28249	//       "description": "Required. The name of the intent to delete. Format: `projects//locations//agents//intents/`.",
28250	//       "location": "path",
28251	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/intents/[^/]+$",
28252	//       "required": true,
28253	//       "type": "string"
28254	//     }
28255	//   },
28256	//   "path": "v3/{+name}",
28257	//   "response": {
28258	//     "$ref": "GoogleProtobufEmpty"
28259	//   },
28260	//   "scopes": [
28261	//     "https://www.googleapis.com/auth/cloud-platform",
28262	//     "https://www.googleapis.com/auth/dialogflow"
28263	//   ]
28264	// }
28265
28266}
28267
28268// method id "dialogflow.projects.locations.agents.intents.get":
28269
28270type ProjectsLocationsAgentsIntentsGetCall struct {
28271	s            *Service
28272	name         string
28273	urlParams_   gensupport.URLParams
28274	ifNoneMatch_ string
28275	ctx_         context.Context
28276	header_      http.Header
28277}
28278
28279// Get: Retrieves the specified intent.
28280//
28281// - name: The name of the intent. Format:
28282//   `projects//locations//agents//intents/`.
28283func (r *ProjectsLocationsAgentsIntentsService) Get(name string) *ProjectsLocationsAgentsIntentsGetCall {
28284	c := &ProjectsLocationsAgentsIntentsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28285	c.name = name
28286	return c
28287}
28288
28289// LanguageCode sets the optional parameter "languageCode": The language
28290// to retrieve the intent for. The following fields are language
28291// dependent: * `Intent.training_phrases.parts.text` If not specified,
28292// the agent's default language is used. Many languages
28293// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
28294// supported. Note: languages must be enabled in the agent before they
28295// can be used.
28296func (c *ProjectsLocationsAgentsIntentsGetCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsIntentsGetCall {
28297	c.urlParams_.Set("languageCode", languageCode)
28298	return c
28299}
28300
28301// Fields allows partial responses to be retrieved. See
28302// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28303// for more information.
28304func (c *ProjectsLocationsAgentsIntentsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsIntentsGetCall {
28305	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28306	return c
28307}
28308
28309// IfNoneMatch sets the optional parameter which makes the operation
28310// fail if the object's ETag matches the given value. This is useful for
28311// getting updates only after the object has changed since the last
28312// request. Use googleapi.IsNotModified to check whether the response
28313// error from Do is the result of In-None-Match.
28314func (c *ProjectsLocationsAgentsIntentsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsIntentsGetCall {
28315	c.ifNoneMatch_ = entityTag
28316	return c
28317}
28318
28319// Context sets the context to be used in this call's Do method. Any
28320// pending HTTP request will be aborted if the provided context is
28321// canceled.
28322func (c *ProjectsLocationsAgentsIntentsGetCall) Context(ctx context.Context) *ProjectsLocationsAgentsIntentsGetCall {
28323	c.ctx_ = ctx
28324	return c
28325}
28326
28327// Header returns an http.Header that can be modified by the caller to
28328// add HTTP headers to the request.
28329func (c *ProjectsLocationsAgentsIntentsGetCall) Header() http.Header {
28330	if c.header_ == nil {
28331		c.header_ = make(http.Header)
28332	}
28333	return c.header_
28334}
28335
28336func (c *ProjectsLocationsAgentsIntentsGetCall) doRequest(alt string) (*http.Response, error) {
28337	reqHeaders := make(http.Header)
28338	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
28339	for k, v := range c.header_ {
28340		reqHeaders[k] = v
28341	}
28342	reqHeaders.Set("User-Agent", c.s.userAgent())
28343	if c.ifNoneMatch_ != "" {
28344		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
28345	}
28346	var body io.Reader = nil
28347	c.urlParams_.Set("alt", alt)
28348	c.urlParams_.Set("prettyPrint", "false")
28349	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
28350	urls += "?" + c.urlParams_.Encode()
28351	req, err := http.NewRequest("GET", urls, body)
28352	if err != nil {
28353		return nil, err
28354	}
28355	req.Header = reqHeaders
28356	googleapi.Expand(req.URL, map[string]string{
28357		"name": c.name,
28358	})
28359	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28360}
28361
28362// Do executes the "dialogflow.projects.locations.agents.intents.get" call.
28363// Exactly one of *GoogleCloudDialogflowCxV3Intent or error will be
28364// non-nil. Any non-2xx status code is an error. Response headers are in
28365// either *GoogleCloudDialogflowCxV3Intent.ServerResponse.Header or (if
28366// a response was returned at all) in error.(*googleapi.Error).Header.
28367// Use googleapi.IsNotModified to check whether the returned error was
28368// because http.StatusNotModified was returned.
28369func (c *ProjectsLocationsAgentsIntentsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3Intent, error) {
28370	gensupport.SetOptions(c.urlParams_, opts...)
28371	res, err := c.doRequest("json")
28372	if res != nil && res.StatusCode == http.StatusNotModified {
28373		if res.Body != nil {
28374			res.Body.Close()
28375		}
28376		return nil, &googleapi.Error{
28377			Code:   res.StatusCode,
28378			Header: res.Header,
28379		}
28380	}
28381	if err != nil {
28382		return nil, err
28383	}
28384	defer googleapi.CloseBody(res)
28385	if err := googleapi.CheckResponse(res); err != nil {
28386		return nil, err
28387	}
28388	ret := &GoogleCloudDialogflowCxV3Intent{
28389		ServerResponse: googleapi.ServerResponse{
28390			Header:         res.Header,
28391			HTTPStatusCode: res.StatusCode,
28392		},
28393	}
28394	target := &ret
28395	if err := gensupport.DecodeResponse(target, res); err != nil {
28396		return nil, err
28397	}
28398	return ret, nil
28399	// {
28400	//   "description": "Retrieves the specified intent.",
28401	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/intents/{intentsId}",
28402	//   "httpMethod": "GET",
28403	//   "id": "dialogflow.projects.locations.agents.intents.get",
28404	//   "parameterOrder": [
28405	//     "name"
28406	//   ],
28407	//   "parameters": {
28408	//     "languageCode": {
28409	//       "description": "The language to retrieve the intent for. The following fields are language dependent: * `Intent.training_phrases.parts.text` If not specified, the agent's default language is used. [Many languages](https://cloud.google.com/dialogflow/cx/docs/reference/language) are supported. Note: languages must be enabled in the agent before they can be used.",
28410	//       "location": "query",
28411	//       "type": "string"
28412	//     },
28413	//     "name": {
28414	//       "description": "Required. The name of the intent. Format: `projects//locations//agents//intents/`.",
28415	//       "location": "path",
28416	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/intents/[^/]+$",
28417	//       "required": true,
28418	//       "type": "string"
28419	//     }
28420	//   },
28421	//   "path": "v3/{+name}",
28422	//   "response": {
28423	//     "$ref": "GoogleCloudDialogflowCxV3Intent"
28424	//   },
28425	//   "scopes": [
28426	//     "https://www.googleapis.com/auth/cloud-platform",
28427	//     "https://www.googleapis.com/auth/dialogflow"
28428	//   ]
28429	// }
28430
28431}
28432
28433// method id "dialogflow.projects.locations.agents.intents.list":
28434
28435type ProjectsLocationsAgentsIntentsListCall struct {
28436	s            *Service
28437	parent       string
28438	urlParams_   gensupport.URLParams
28439	ifNoneMatch_ string
28440	ctx_         context.Context
28441	header_      http.Header
28442}
28443
28444// List: Returns the list of all intents in the specified agent.
28445//
28446// - parent: The agent to list all intents for. Format:
28447//   `projects//locations//agents/`.
28448func (r *ProjectsLocationsAgentsIntentsService) List(parent string) *ProjectsLocationsAgentsIntentsListCall {
28449	c := &ProjectsLocationsAgentsIntentsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28450	c.parent = parent
28451	return c
28452}
28453
28454// IntentView sets the optional parameter "intentView": The resource
28455// view to apply to the returned intent.
28456//
28457// Possible values:
28458//   "INTENT_VIEW_UNSPECIFIED" - Not specified. Treated as
28459// INTENT_VIEW_FULL.
28460//   "INTENT_VIEW_PARTIAL" - Training phrases field is not populated in
28461// the response.
28462//   "INTENT_VIEW_FULL" - All fields are populated.
28463func (c *ProjectsLocationsAgentsIntentsListCall) IntentView(intentView string) *ProjectsLocationsAgentsIntentsListCall {
28464	c.urlParams_.Set("intentView", intentView)
28465	return c
28466}
28467
28468// LanguageCode sets the optional parameter "languageCode": The language
28469// to list intents for. The following fields are language dependent: *
28470// `Intent.training_phrases.parts.text` If not specified, the agent's
28471// default language is used. Many languages
28472// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
28473// supported. Note: languages must be enabled in the agent before they
28474// can be used.
28475func (c *ProjectsLocationsAgentsIntentsListCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsIntentsListCall {
28476	c.urlParams_.Set("languageCode", languageCode)
28477	return c
28478}
28479
28480// PageSize sets the optional parameter "pageSize": The maximum number
28481// of items to return in a single page. By default 100 and at most 1000.
28482func (c *ProjectsLocationsAgentsIntentsListCall) PageSize(pageSize int64) *ProjectsLocationsAgentsIntentsListCall {
28483	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
28484	return c
28485}
28486
28487// PageToken sets the optional parameter "pageToken": The
28488// next_page_token value returned from a previous list request.
28489func (c *ProjectsLocationsAgentsIntentsListCall) PageToken(pageToken string) *ProjectsLocationsAgentsIntentsListCall {
28490	c.urlParams_.Set("pageToken", pageToken)
28491	return c
28492}
28493
28494// Fields allows partial responses to be retrieved. See
28495// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28496// for more information.
28497func (c *ProjectsLocationsAgentsIntentsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsIntentsListCall {
28498	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28499	return c
28500}
28501
28502// IfNoneMatch sets the optional parameter which makes the operation
28503// fail if the object's ETag matches the given value. This is useful for
28504// getting updates only after the object has changed since the last
28505// request. Use googleapi.IsNotModified to check whether the response
28506// error from Do is the result of In-None-Match.
28507func (c *ProjectsLocationsAgentsIntentsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsIntentsListCall {
28508	c.ifNoneMatch_ = entityTag
28509	return c
28510}
28511
28512// Context sets the context to be used in this call's Do method. Any
28513// pending HTTP request will be aborted if the provided context is
28514// canceled.
28515func (c *ProjectsLocationsAgentsIntentsListCall) Context(ctx context.Context) *ProjectsLocationsAgentsIntentsListCall {
28516	c.ctx_ = ctx
28517	return c
28518}
28519
28520// Header returns an http.Header that can be modified by the caller to
28521// add HTTP headers to the request.
28522func (c *ProjectsLocationsAgentsIntentsListCall) Header() http.Header {
28523	if c.header_ == nil {
28524		c.header_ = make(http.Header)
28525	}
28526	return c.header_
28527}
28528
28529func (c *ProjectsLocationsAgentsIntentsListCall) doRequest(alt string) (*http.Response, error) {
28530	reqHeaders := make(http.Header)
28531	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
28532	for k, v := range c.header_ {
28533		reqHeaders[k] = v
28534	}
28535	reqHeaders.Set("User-Agent", c.s.userAgent())
28536	if c.ifNoneMatch_ != "" {
28537		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
28538	}
28539	var body io.Reader = nil
28540	c.urlParams_.Set("alt", alt)
28541	c.urlParams_.Set("prettyPrint", "false")
28542	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/intents")
28543	urls += "?" + c.urlParams_.Encode()
28544	req, err := http.NewRequest("GET", urls, body)
28545	if err != nil {
28546		return nil, err
28547	}
28548	req.Header = reqHeaders
28549	googleapi.Expand(req.URL, map[string]string{
28550		"parent": c.parent,
28551	})
28552	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28553}
28554
28555// Do executes the "dialogflow.projects.locations.agents.intents.list" call.
28556// Exactly one of *GoogleCloudDialogflowCxV3ListIntentsResponse or error
28557// will be non-nil. Any non-2xx status code is an error. Response
28558// headers are in either
28559// *GoogleCloudDialogflowCxV3ListIntentsResponse.ServerResponse.Header
28560// or (if a response was returned at all) in
28561// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
28562// whether the returned error was because http.StatusNotModified was
28563// returned.
28564func (c *ProjectsLocationsAgentsIntentsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3ListIntentsResponse, error) {
28565	gensupport.SetOptions(c.urlParams_, opts...)
28566	res, err := c.doRequest("json")
28567	if res != nil && res.StatusCode == http.StatusNotModified {
28568		if res.Body != nil {
28569			res.Body.Close()
28570		}
28571		return nil, &googleapi.Error{
28572			Code:   res.StatusCode,
28573			Header: res.Header,
28574		}
28575	}
28576	if err != nil {
28577		return nil, err
28578	}
28579	defer googleapi.CloseBody(res)
28580	if err := googleapi.CheckResponse(res); err != nil {
28581		return nil, err
28582	}
28583	ret := &GoogleCloudDialogflowCxV3ListIntentsResponse{
28584		ServerResponse: googleapi.ServerResponse{
28585			Header:         res.Header,
28586			HTTPStatusCode: res.StatusCode,
28587		},
28588	}
28589	target := &ret
28590	if err := gensupport.DecodeResponse(target, res); err != nil {
28591		return nil, err
28592	}
28593	return ret, nil
28594	// {
28595	//   "description": "Returns the list of all intents in the specified agent.",
28596	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/intents",
28597	//   "httpMethod": "GET",
28598	//   "id": "dialogflow.projects.locations.agents.intents.list",
28599	//   "parameterOrder": [
28600	//     "parent"
28601	//   ],
28602	//   "parameters": {
28603	//     "intentView": {
28604	//       "description": "The resource view to apply to the returned intent.",
28605	//       "enum": [
28606	//         "INTENT_VIEW_UNSPECIFIED",
28607	//         "INTENT_VIEW_PARTIAL",
28608	//         "INTENT_VIEW_FULL"
28609	//       ],
28610	//       "enumDescriptions": [
28611	//         "Not specified. Treated as INTENT_VIEW_FULL.",
28612	//         "Training phrases field is not populated in the response.",
28613	//         "All fields are populated."
28614	//       ],
28615	//       "location": "query",
28616	//       "type": "string"
28617	//     },
28618	//     "languageCode": {
28619	//       "description": "The language to list intents for. The following fields are language dependent: * `Intent.training_phrases.parts.text` If not specified, the agent's default language is used. [Many languages](https://cloud.google.com/dialogflow/cx/docs/reference/language) are supported. Note: languages must be enabled in the agent before they can be used.",
28620	//       "location": "query",
28621	//       "type": "string"
28622	//     },
28623	//     "pageSize": {
28624	//       "description": "The maximum number of items to return in a single page. By default 100 and at most 1000.",
28625	//       "format": "int32",
28626	//       "location": "query",
28627	//       "type": "integer"
28628	//     },
28629	//     "pageToken": {
28630	//       "description": "The next_page_token value returned from a previous list request.",
28631	//       "location": "query",
28632	//       "type": "string"
28633	//     },
28634	//     "parent": {
28635	//       "description": "Required. The agent to list all intents for. Format: `projects//locations//agents/`.",
28636	//       "location": "path",
28637	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
28638	//       "required": true,
28639	//       "type": "string"
28640	//     }
28641	//   },
28642	//   "path": "v3/{+parent}/intents",
28643	//   "response": {
28644	//     "$ref": "GoogleCloudDialogflowCxV3ListIntentsResponse"
28645	//   },
28646	//   "scopes": [
28647	//     "https://www.googleapis.com/auth/cloud-platform",
28648	//     "https://www.googleapis.com/auth/dialogflow"
28649	//   ]
28650	// }
28651
28652}
28653
28654// Pages invokes f for each page of results.
28655// A non-nil error returned from f will halt the iteration.
28656// The provided context supersedes any context provided to the Context method.
28657func (c *ProjectsLocationsAgentsIntentsListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3ListIntentsResponse) error) error {
28658	c.ctx_ = ctx
28659	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
28660	for {
28661		x, err := c.Do()
28662		if err != nil {
28663			return err
28664		}
28665		if err := f(x); err != nil {
28666			return err
28667		}
28668		if x.NextPageToken == "" {
28669			return nil
28670		}
28671		c.PageToken(x.NextPageToken)
28672	}
28673}
28674
28675// method id "dialogflow.projects.locations.agents.intents.patch":
28676
28677type ProjectsLocationsAgentsIntentsPatchCall struct {
28678	s                               *Service
28679	nameid                          string
28680	googleclouddialogflowcxv3intent *GoogleCloudDialogflowCxV3Intent
28681	urlParams_                      gensupport.URLParams
28682	ctx_                            context.Context
28683	header_                         http.Header
28684}
28685
28686// Patch: Updates the specified intent. Note: You should always train a
28687// flow prior to sending it queries. See the training documentation
28688// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
28689//
28690// - name: The unique identifier of the intent. Required for the
28691//   Intents.UpdateIntent method. Intents.CreateIntent populates the
28692//   name automatically. Format:
28693//   `projects//locations//agents//intents/`.
28694func (r *ProjectsLocationsAgentsIntentsService) Patch(nameid string, googleclouddialogflowcxv3intent *GoogleCloudDialogflowCxV3Intent) *ProjectsLocationsAgentsIntentsPatchCall {
28695	c := &ProjectsLocationsAgentsIntentsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28696	c.nameid = nameid
28697	c.googleclouddialogflowcxv3intent = googleclouddialogflowcxv3intent
28698	return c
28699}
28700
28701// LanguageCode sets the optional parameter "languageCode": The language
28702// of the following fields in `intent`: *
28703// `Intent.training_phrases.parts.text` If not specified, the agent's
28704// default language is used. Many languages
28705// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
28706// supported. Note: languages must be enabled in the agent before they
28707// can be used.
28708func (c *ProjectsLocationsAgentsIntentsPatchCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsIntentsPatchCall {
28709	c.urlParams_.Set("languageCode", languageCode)
28710	return c
28711}
28712
28713// UpdateMask sets the optional parameter "updateMask": The mask to
28714// control which fields get updated. If the mask is not present, all
28715// fields will be updated.
28716func (c *ProjectsLocationsAgentsIntentsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsAgentsIntentsPatchCall {
28717	c.urlParams_.Set("updateMask", updateMask)
28718	return c
28719}
28720
28721// Fields allows partial responses to be retrieved. See
28722// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28723// for more information.
28724func (c *ProjectsLocationsAgentsIntentsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsIntentsPatchCall {
28725	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28726	return c
28727}
28728
28729// Context sets the context to be used in this call's Do method. Any
28730// pending HTTP request will be aborted if the provided context is
28731// canceled.
28732func (c *ProjectsLocationsAgentsIntentsPatchCall) Context(ctx context.Context) *ProjectsLocationsAgentsIntentsPatchCall {
28733	c.ctx_ = ctx
28734	return c
28735}
28736
28737// Header returns an http.Header that can be modified by the caller to
28738// add HTTP headers to the request.
28739func (c *ProjectsLocationsAgentsIntentsPatchCall) Header() http.Header {
28740	if c.header_ == nil {
28741		c.header_ = make(http.Header)
28742	}
28743	return c.header_
28744}
28745
28746func (c *ProjectsLocationsAgentsIntentsPatchCall) doRequest(alt string) (*http.Response, error) {
28747	reqHeaders := make(http.Header)
28748	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
28749	for k, v := range c.header_ {
28750		reqHeaders[k] = v
28751	}
28752	reqHeaders.Set("User-Agent", c.s.userAgent())
28753	var body io.Reader = nil
28754	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3intent)
28755	if err != nil {
28756		return nil, err
28757	}
28758	reqHeaders.Set("Content-Type", "application/json")
28759	c.urlParams_.Set("alt", alt)
28760	c.urlParams_.Set("prettyPrint", "false")
28761	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
28762	urls += "?" + c.urlParams_.Encode()
28763	req, err := http.NewRequest("PATCH", urls, body)
28764	if err != nil {
28765		return nil, err
28766	}
28767	req.Header = reqHeaders
28768	googleapi.Expand(req.URL, map[string]string{
28769		"name": c.nameid,
28770	})
28771	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28772}
28773
28774// Do executes the "dialogflow.projects.locations.agents.intents.patch" call.
28775// Exactly one of *GoogleCloudDialogflowCxV3Intent or error will be
28776// non-nil. Any non-2xx status code is an error. Response headers are in
28777// either *GoogleCloudDialogflowCxV3Intent.ServerResponse.Header or (if
28778// a response was returned at all) in error.(*googleapi.Error).Header.
28779// Use googleapi.IsNotModified to check whether the returned error was
28780// because http.StatusNotModified was returned.
28781func (c *ProjectsLocationsAgentsIntentsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3Intent, error) {
28782	gensupport.SetOptions(c.urlParams_, opts...)
28783	res, err := c.doRequest("json")
28784	if res != nil && res.StatusCode == http.StatusNotModified {
28785		if res.Body != nil {
28786			res.Body.Close()
28787		}
28788		return nil, &googleapi.Error{
28789			Code:   res.StatusCode,
28790			Header: res.Header,
28791		}
28792	}
28793	if err != nil {
28794		return nil, err
28795	}
28796	defer googleapi.CloseBody(res)
28797	if err := googleapi.CheckResponse(res); err != nil {
28798		return nil, err
28799	}
28800	ret := &GoogleCloudDialogflowCxV3Intent{
28801		ServerResponse: googleapi.ServerResponse{
28802			Header:         res.Header,
28803			HTTPStatusCode: res.StatusCode,
28804		},
28805	}
28806	target := &ret
28807	if err := gensupport.DecodeResponse(target, res); err != nil {
28808		return nil, err
28809	}
28810	return ret, nil
28811	// {
28812	//   "description": "Updates the specified intent. Note: You should always train a flow prior to sending it queries. See the [training documentation](https://cloud.google.com/dialogflow/cx/docs/concept/training).",
28813	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/intents/{intentsId}",
28814	//   "httpMethod": "PATCH",
28815	//   "id": "dialogflow.projects.locations.agents.intents.patch",
28816	//   "parameterOrder": [
28817	//     "name"
28818	//   ],
28819	//   "parameters": {
28820	//     "languageCode": {
28821	//       "description": "The language of the following fields in `intent`: * `Intent.training_phrases.parts.text` If not specified, the agent's default language is used. [Many languages](https://cloud.google.com/dialogflow/cx/docs/reference/language) are supported. Note: languages must be enabled in the agent before they can be used.",
28822	//       "location": "query",
28823	//       "type": "string"
28824	//     },
28825	//     "name": {
28826	//       "description": "The unique identifier of the intent. Required for the Intents.UpdateIntent method. Intents.CreateIntent populates the name automatically. Format: `projects//locations//agents//intents/`.",
28827	//       "location": "path",
28828	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/intents/[^/]+$",
28829	//       "required": true,
28830	//       "type": "string"
28831	//     },
28832	//     "updateMask": {
28833	//       "description": "The mask to control which fields get updated. If the mask is not present, all fields will be updated.",
28834	//       "format": "google-fieldmask",
28835	//       "location": "query",
28836	//       "type": "string"
28837	//     }
28838	//   },
28839	//   "path": "v3/{+name}",
28840	//   "request": {
28841	//     "$ref": "GoogleCloudDialogflowCxV3Intent"
28842	//   },
28843	//   "response": {
28844	//     "$ref": "GoogleCloudDialogflowCxV3Intent"
28845	//   },
28846	//   "scopes": [
28847	//     "https://www.googleapis.com/auth/cloud-platform",
28848	//     "https://www.googleapis.com/auth/dialogflow"
28849	//   ]
28850	// }
28851
28852}
28853
28854// method id "dialogflow.projects.locations.agents.sessions.detectIntent":
28855
28856type ProjectsLocationsAgentsSessionsDetectIntentCall struct {
28857	s                                            *Service
28858	sessionid                                    string
28859	googleclouddialogflowcxv3detectintentrequest *GoogleCloudDialogflowCxV3DetectIntentRequest
28860	urlParams_                                   gensupport.URLParams
28861	ctx_                                         context.Context
28862	header_                                      http.Header
28863}
28864
28865// DetectIntent: Processes a natural language query and returns
28866// structured, actionable data as a result. This method is not
28867// idempotent, because it may cause session entity types to be updated,
28868// which in turn might affect results of future queries. Note: Always
28869// use agent versions for production traffic. See Versions and
28870// environments
28871// (https://cloud.google.com/dialogflow/cx/docs/concept/version).
28872//
28873// - session: The name of the session this query is sent to. Format:
28874//   `projects//locations//agents//sessions/` or
28875//   `projects//locations//agents//environments//sessions/`. If
28876//   `Environment ID` is not specified, we assume default 'draft'
28877//   environment. It's up to the API caller to choose an appropriate
28878//   `Session ID`. It can be a random number or some type of session
28879//   identifiers (preferably hashed). The length of the `Session ID`
28880//   must not exceed 36 characters. For more information, see the
28881//   sessions guide
28882//   (https://cloud.google.com/dialogflow/cx/docs/concept/session).
28883//   Note: Always use agent versions for production traffic. See
28884//   Versions and environments
28885//   (https://cloud.google.com/dialogflow/cx/docs/concept/version).
28886func (r *ProjectsLocationsAgentsSessionsService) DetectIntent(sessionid string, googleclouddialogflowcxv3detectintentrequest *GoogleCloudDialogflowCxV3DetectIntentRequest) *ProjectsLocationsAgentsSessionsDetectIntentCall {
28887	c := &ProjectsLocationsAgentsSessionsDetectIntentCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28888	c.sessionid = sessionid
28889	c.googleclouddialogflowcxv3detectintentrequest = googleclouddialogflowcxv3detectintentrequest
28890	return c
28891}
28892
28893// Fields allows partial responses to be retrieved. See
28894// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28895// for more information.
28896func (c *ProjectsLocationsAgentsSessionsDetectIntentCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsSessionsDetectIntentCall {
28897	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28898	return c
28899}
28900
28901// Context sets the context to be used in this call's Do method. Any
28902// pending HTTP request will be aborted if the provided context is
28903// canceled.
28904func (c *ProjectsLocationsAgentsSessionsDetectIntentCall) Context(ctx context.Context) *ProjectsLocationsAgentsSessionsDetectIntentCall {
28905	c.ctx_ = ctx
28906	return c
28907}
28908
28909// Header returns an http.Header that can be modified by the caller to
28910// add HTTP headers to the request.
28911func (c *ProjectsLocationsAgentsSessionsDetectIntentCall) Header() http.Header {
28912	if c.header_ == nil {
28913		c.header_ = make(http.Header)
28914	}
28915	return c.header_
28916}
28917
28918func (c *ProjectsLocationsAgentsSessionsDetectIntentCall) doRequest(alt string) (*http.Response, error) {
28919	reqHeaders := make(http.Header)
28920	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
28921	for k, v := range c.header_ {
28922		reqHeaders[k] = v
28923	}
28924	reqHeaders.Set("User-Agent", c.s.userAgent())
28925	var body io.Reader = nil
28926	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3detectintentrequest)
28927	if err != nil {
28928		return nil, err
28929	}
28930	reqHeaders.Set("Content-Type", "application/json")
28931	c.urlParams_.Set("alt", alt)
28932	c.urlParams_.Set("prettyPrint", "false")
28933	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+session}:detectIntent")
28934	urls += "?" + c.urlParams_.Encode()
28935	req, err := http.NewRequest("POST", urls, body)
28936	if err != nil {
28937		return nil, err
28938	}
28939	req.Header = reqHeaders
28940	googleapi.Expand(req.URL, map[string]string{
28941		"session": c.sessionid,
28942	})
28943	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28944}
28945
28946// Do executes the "dialogflow.projects.locations.agents.sessions.detectIntent" call.
28947// Exactly one of *GoogleCloudDialogflowCxV3DetectIntentResponse or
28948// error will be non-nil. Any non-2xx status code is an error. Response
28949// headers are in either
28950// *GoogleCloudDialogflowCxV3DetectIntentResponse.ServerResponse.Header
28951// or (if a response was returned at all) in
28952// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
28953// whether the returned error was because http.StatusNotModified was
28954// returned.
28955func (c *ProjectsLocationsAgentsSessionsDetectIntentCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3DetectIntentResponse, error) {
28956	gensupport.SetOptions(c.urlParams_, opts...)
28957	res, err := c.doRequest("json")
28958	if res != nil && res.StatusCode == http.StatusNotModified {
28959		if res.Body != nil {
28960			res.Body.Close()
28961		}
28962		return nil, &googleapi.Error{
28963			Code:   res.StatusCode,
28964			Header: res.Header,
28965		}
28966	}
28967	if err != nil {
28968		return nil, err
28969	}
28970	defer googleapi.CloseBody(res)
28971	if err := googleapi.CheckResponse(res); err != nil {
28972		return nil, err
28973	}
28974	ret := &GoogleCloudDialogflowCxV3DetectIntentResponse{
28975		ServerResponse: googleapi.ServerResponse{
28976			Header:         res.Header,
28977			HTTPStatusCode: res.StatusCode,
28978		},
28979	}
28980	target := &ret
28981	if err := gensupport.DecodeResponse(target, res); err != nil {
28982		return nil, err
28983	}
28984	return ret, nil
28985	// {
28986	//   "description": "Processes a natural language query and returns structured, actionable data as a result. This method is not idempotent, because it may cause session entity types to be updated, which in turn might affect results of future queries. Note: Always use agent versions for production traffic. See [Versions and environments](https://cloud.google.com/dialogflow/cx/docs/concept/version).",
28987	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/sessions/{sessionsId}:detectIntent",
28988	//   "httpMethod": "POST",
28989	//   "id": "dialogflow.projects.locations.agents.sessions.detectIntent",
28990	//   "parameterOrder": [
28991	//     "session"
28992	//   ],
28993	//   "parameters": {
28994	//     "session": {
28995	//       "description": "Required. The name of the session this query is sent to. Format: `projects//locations//agents//sessions/` or `projects//locations//agents//environments//sessions/`. If `Environment ID` is not specified, we assume default 'draft' environment. It's up to the API caller to choose an appropriate `Session ID`. It can be a random number or some type of session identifiers (preferably hashed). The length of the `Session ID` must not exceed 36 characters. For more information, see the [sessions guide](https://cloud.google.com/dialogflow/cx/docs/concept/session). Note: Always use agent versions for production traffic. See [Versions and environments](https://cloud.google.com/dialogflow/cx/docs/concept/version).",
28996	//       "location": "path",
28997	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/sessions/[^/]+$",
28998	//       "required": true,
28999	//       "type": "string"
29000	//     }
29001	//   },
29002	//   "path": "v3/{+session}:detectIntent",
29003	//   "request": {
29004	//     "$ref": "GoogleCloudDialogflowCxV3DetectIntentRequest"
29005	//   },
29006	//   "response": {
29007	//     "$ref": "GoogleCloudDialogflowCxV3DetectIntentResponse"
29008	//   },
29009	//   "scopes": [
29010	//     "https://www.googleapis.com/auth/cloud-platform",
29011	//     "https://www.googleapis.com/auth/dialogflow"
29012	//   ]
29013	// }
29014
29015}
29016
29017// method id "dialogflow.projects.locations.agents.sessions.fulfillIntent":
29018
29019type ProjectsLocationsAgentsSessionsFulfillIntentCall struct {
29020	s                                             *Service
29021	sessionid                                     string
29022	googleclouddialogflowcxv3fulfillintentrequest *GoogleCloudDialogflowCxV3FulfillIntentRequest
29023	urlParams_                                    gensupport.URLParams
29024	ctx_                                          context.Context
29025	header_                                       http.Header
29026}
29027
29028// FulfillIntent: Fulfills a matched intent returned by MatchIntent.
29029// Must be called after MatchIntent, with input from
29030// MatchIntentResponse. Otherwise, the behavior is undefined.
29031//
29032// - session: The name of the session this query is sent to. Format:
29033//   `projects//locations//agents//sessions/` or
29034//   `projects//locations//agents//environments//sessions/`. If
29035//   `Environment ID` is not specified, we assume default 'draft'
29036//   environment. It's up to the API caller to choose an appropriate
29037//   `Session ID`. It can be a random number or some type of session
29038//   identifiers (preferably hashed). The length of the `Session ID`
29039//   must not exceed 36 characters. For more information, see the
29040//   sessions guide
29041//   (https://cloud.google.com/dialogflow/cx/docs/concept/session).
29042func (r *ProjectsLocationsAgentsSessionsService) FulfillIntent(sessionid string, googleclouddialogflowcxv3fulfillintentrequest *GoogleCloudDialogflowCxV3FulfillIntentRequest) *ProjectsLocationsAgentsSessionsFulfillIntentCall {
29043	c := &ProjectsLocationsAgentsSessionsFulfillIntentCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29044	c.sessionid = sessionid
29045	c.googleclouddialogflowcxv3fulfillintentrequest = googleclouddialogflowcxv3fulfillintentrequest
29046	return c
29047}
29048
29049// Fields allows partial responses to be retrieved. See
29050// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29051// for more information.
29052func (c *ProjectsLocationsAgentsSessionsFulfillIntentCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsSessionsFulfillIntentCall {
29053	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29054	return c
29055}
29056
29057// Context sets the context to be used in this call's Do method. Any
29058// pending HTTP request will be aborted if the provided context is
29059// canceled.
29060func (c *ProjectsLocationsAgentsSessionsFulfillIntentCall) Context(ctx context.Context) *ProjectsLocationsAgentsSessionsFulfillIntentCall {
29061	c.ctx_ = ctx
29062	return c
29063}
29064
29065// Header returns an http.Header that can be modified by the caller to
29066// add HTTP headers to the request.
29067func (c *ProjectsLocationsAgentsSessionsFulfillIntentCall) Header() http.Header {
29068	if c.header_ == nil {
29069		c.header_ = make(http.Header)
29070	}
29071	return c.header_
29072}
29073
29074func (c *ProjectsLocationsAgentsSessionsFulfillIntentCall) doRequest(alt string) (*http.Response, error) {
29075	reqHeaders := make(http.Header)
29076	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
29077	for k, v := range c.header_ {
29078		reqHeaders[k] = v
29079	}
29080	reqHeaders.Set("User-Agent", c.s.userAgent())
29081	var body io.Reader = nil
29082	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3fulfillintentrequest)
29083	if err != nil {
29084		return nil, err
29085	}
29086	reqHeaders.Set("Content-Type", "application/json")
29087	c.urlParams_.Set("alt", alt)
29088	c.urlParams_.Set("prettyPrint", "false")
29089	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+session}:fulfillIntent")
29090	urls += "?" + c.urlParams_.Encode()
29091	req, err := http.NewRequest("POST", urls, body)
29092	if err != nil {
29093		return nil, err
29094	}
29095	req.Header = reqHeaders
29096	googleapi.Expand(req.URL, map[string]string{
29097		"session": c.sessionid,
29098	})
29099	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29100}
29101
29102// Do executes the "dialogflow.projects.locations.agents.sessions.fulfillIntent" call.
29103// Exactly one of *GoogleCloudDialogflowCxV3FulfillIntentResponse or
29104// error will be non-nil. Any non-2xx status code is an error. Response
29105// headers are in either
29106// *GoogleCloudDialogflowCxV3FulfillIntentResponse.ServerResponse.Header
29107// or (if a response was returned at all) in
29108// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
29109// whether the returned error was because http.StatusNotModified was
29110// returned.
29111func (c *ProjectsLocationsAgentsSessionsFulfillIntentCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3FulfillIntentResponse, error) {
29112	gensupport.SetOptions(c.urlParams_, opts...)
29113	res, err := c.doRequest("json")
29114	if res != nil && res.StatusCode == http.StatusNotModified {
29115		if res.Body != nil {
29116			res.Body.Close()
29117		}
29118		return nil, &googleapi.Error{
29119			Code:   res.StatusCode,
29120			Header: res.Header,
29121		}
29122	}
29123	if err != nil {
29124		return nil, err
29125	}
29126	defer googleapi.CloseBody(res)
29127	if err := googleapi.CheckResponse(res); err != nil {
29128		return nil, err
29129	}
29130	ret := &GoogleCloudDialogflowCxV3FulfillIntentResponse{
29131		ServerResponse: googleapi.ServerResponse{
29132			Header:         res.Header,
29133			HTTPStatusCode: res.StatusCode,
29134		},
29135	}
29136	target := &ret
29137	if err := gensupport.DecodeResponse(target, res); err != nil {
29138		return nil, err
29139	}
29140	return ret, nil
29141	// {
29142	//   "description": "Fulfills a matched intent returned by MatchIntent. Must be called after MatchIntent, with input from MatchIntentResponse. Otherwise, the behavior is undefined.",
29143	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/sessions/{sessionsId}:fulfillIntent",
29144	//   "httpMethod": "POST",
29145	//   "id": "dialogflow.projects.locations.agents.sessions.fulfillIntent",
29146	//   "parameterOrder": [
29147	//     "session"
29148	//   ],
29149	//   "parameters": {
29150	//     "session": {
29151	//       "description": "Required. The name of the session this query is sent to. Format: `projects//locations//agents//sessions/` or `projects//locations//agents//environments//sessions/`. If `Environment ID` is not specified, we assume default 'draft' environment. It's up to the API caller to choose an appropriate `Session ID`. It can be a random number or some type of session identifiers (preferably hashed). The length of the `Session ID` must not exceed 36 characters. For more information, see the [sessions guide](https://cloud.google.com/dialogflow/cx/docs/concept/session).",
29152	//       "location": "path",
29153	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/sessions/[^/]+$",
29154	//       "required": true,
29155	//       "type": "string"
29156	//     }
29157	//   },
29158	//   "path": "v3/{+session}:fulfillIntent",
29159	//   "request": {
29160	//     "$ref": "GoogleCloudDialogflowCxV3FulfillIntentRequest"
29161	//   },
29162	//   "response": {
29163	//     "$ref": "GoogleCloudDialogflowCxV3FulfillIntentResponse"
29164	//   },
29165	//   "scopes": [
29166	//     "https://www.googleapis.com/auth/cloud-platform",
29167	//     "https://www.googleapis.com/auth/dialogflow"
29168	//   ]
29169	// }
29170
29171}
29172
29173// method id "dialogflow.projects.locations.agents.sessions.matchIntent":
29174
29175type ProjectsLocationsAgentsSessionsMatchIntentCall struct {
29176	s                                           *Service
29177	sessionid                                   string
29178	googleclouddialogflowcxv3matchintentrequest *GoogleCloudDialogflowCxV3MatchIntentRequest
29179	urlParams_                                  gensupport.URLParams
29180	ctx_                                        context.Context
29181	header_                                     http.Header
29182}
29183
29184// MatchIntent: Returns preliminary intent match results, doesn't change
29185// the session status.
29186//
29187// - session: The name of the session this query is sent to. Format:
29188//   `projects//locations//agents//sessions/` or
29189//   `projects//locations//agents//environments//sessions/`. If
29190//   `Environment ID` is not specified, we assume default 'draft'
29191//   environment. It's up to the API caller to choose an appropriate
29192//   `Session ID`. It can be a random number or some type of session
29193//   identifiers (preferably hashed). The length of the `Session ID`
29194//   must not exceed 36 characters. For more information, see the
29195//   sessions guide
29196//   (https://cloud.google.com/dialogflow/cx/docs/concept/session).
29197func (r *ProjectsLocationsAgentsSessionsService) MatchIntent(sessionid string, googleclouddialogflowcxv3matchintentrequest *GoogleCloudDialogflowCxV3MatchIntentRequest) *ProjectsLocationsAgentsSessionsMatchIntentCall {
29198	c := &ProjectsLocationsAgentsSessionsMatchIntentCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29199	c.sessionid = sessionid
29200	c.googleclouddialogflowcxv3matchintentrequest = googleclouddialogflowcxv3matchintentrequest
29201	return c
29202}
29203
29204// Fields allows partial responses to be retrieved. See
29205// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29206// for more information.
29207func (c *ProjectsLocationsAgentsSessionsMatchIntentCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsSessionsMatchIntentCall {
29208	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29209	return c
29210}
29211
29212// Context sets the context to be used in this call's Do method. Any
29213// pending HTTP request will be aborted if the provided context is
29214// canceled.
29215func (c *ProjectsLocationsAgentsSessionsMatchIntentCall) Context(ctx context.Context) *ProjectsLocationsAgentsSessionsMatchIntentCall {
29216	c.ctx_ = ctx
29217	return c
29218}
29219
29220// Header returns an http.Header that can be modified by the caller to
29221// add HTTP headers to the request.
29222func (c *ProjectsLocationsAgentsSessionsMatchIntentCall) Header() http.Header {
29223	if c.header_ == nil {
29224		c.header_ = make(http.Header)
29225	}
29226	return c.header_
29227}
29228
29229func (c *ProjectsLocationsAgentsSessionsMatchIntentCall) doRequest(alt string) (*http.Response, error) {
29230	reqHeaders := make(http.Header)
29231	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
29232	for k, v := range c.header_ {
29233		reqHeaders[k] = v
29234	}
29235	reqHeaders.Set("User-Agent", c.s.userAgent())
29236	var body io.Reader = nil
29237	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3matchintentrequest)
29238	if err != nil {
29239		return nil, err
29240	}
29241	reqHeaders.Set("Content-Type", "application/json")
29242	c.urlParams_.Set("alt", alt)
29243	c.urlParams_.Set("prettyPrint", "false")
29244	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+session}:matchIntent")
29245	urls += "?" + c.urlParams_.Encode()
29246	req, err := http.NewRequest("POST", urls, body)
29247	if err != nil {
29248		return nil, err
29249	}
29250	req.Header = reqHeaders
29251	googleapi.Expand(req.URL, map[string]string{
29252		"session": c.sessionid,
29253	})
29254	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29255}
29256
29257// Do executes the "dialogflow.projects.locations.agents.sessions.matchIntent" call.
29258// Exactly one of *GoogleCloudDialogflowCxV3MatchIntentResponse or error
29259// will be non-nil. Any non-2xx status code is an error. Response
29260// headers are in either
29261// *GoogleCloudDialogflowCxV3MatchIntentResponse.ServerResponse.Header
29262// or (if a response was returned at all) in
29263// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
29264// whether the returned error was because http.StatusNotModified was
29265// returned.
29266func (c *ProjectsLocationsAgentsSessionsMatchIntentCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3MatchIntentResponse, error) {
29267	gensupport.SetOptions(c.urlParams_, opts...)
29268	res, err := c.doRequest("json")
29269	if res != nil && res.StatusCode == http.StatusNotModified {
29270		if res.Body != nil {
29271			res.Body.Close()
29272		}
29273		return nil, &googleapi.Error{
29274			Code:   res.StatusCode,
29275			Header: res.Header,
29276		}
29277	}
29278	if err != nil {
29279		return nil, err
29280	}
29281	defer googleapi.CloseBody(res)
29282	if err := googleapi.CheckResponse(res); err != nil {
29283		return nil, err
29284	}
29285	ret := &GoogleCloudDialogflowCxV3MatchIntentResponse{
29286		ServerResponse: googleapi.ServerResponse{
29287			Header:         res.Header,
29288			HTTPStatusCode: res.StatusCode,
29289		},
29290	}
29291	target := &ret
29292	if err := gensupport.DecodeResponse(target, res); err != nil {
29293		return nil, err
29294	}
29295	return ret, nil
29296	// {
29297	//   "description": "Returns preliminary intent match results, doesn't change the session status.",
29298	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/sessions/{sessionsId}:matchIntent",
29299	//   "httpMethod": "POST",
29300	//   "id": "dialogflow.projects.locations.agents.sessions.matchIntent",
29301	//   "parameterOrder": [
29302	//     "session"
29303	//   ],
29304	//   "parameters": {
29305	//     "session": {
29306	//       "description": "Required. The name of the session this query is sent to. Format: `projects//locations//agents//sessions/` or `projects//locations//agents//environments//sessions/`. If `Environment ID` is not specified, we assume default 'draft' environment. It's up to the API caller to choose an appropriate `Session ID`. It can be a random number or some type of session identifiers (preferably hashed). The length of the `Session ID` must not exceed 36 characters. For more information, see the [sessions guide](https://cloud.google.com/dialogflow/cx/docs/concept/session).",
29307	//       "location": "path",
29308	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/sessions/[^/]+$",
29309	//       "required": true,
29310	//       "type": "string"
29311	//     }
29312	//   },
29313	//   "path": "v3/{+session}:matchIntent",
29314	//   "request": {
29315	//     "$ref": "GoogleCloudDialogflowCxV3MatchIntentRequest"
29316	//   },
29317	//   "response": {
29318	//     "$ref": "GoogleCloudDialogflowCxV3MatchIntentResponse"
29319	//   },
29320	//   "scopes": [
29321	//     "https://www.googleapis.com/auth/cloud-platform",
29322	//     "https://www.googleapis.com/auth/dialogflow"
29323	//   ]
29324	// }
29325
29326}
29327
29328// method id "dialogflow.projects.locations.agents.sessions.entityTypes.create":
29329
29330type ProjectsLocationsAgentsSessionsEntityTypesCreateCall struct {
29331	s                                          *Service
29332	parent                                     string
29333	googleclouddialogflowcxv3sessionentitytype *GoogleCloudDialogflowCxV3SessionEntityType
29334	urlParams_                                 gensupport.URLParams
29335	ctx_                                       context.Context
29336	header_                                    http.Header
29337}
29338
29339// Create: Creates a session entity type.
29340//
29341// - parent: The session to create a session entity type for. Format:
29342//   `projects//locations//agents//sessions/` or
29343//   `projects//locations//agents//environments//sessions/`. If
29344//   `Environment ID` is not specified, we assume default 'draft'
29345//   environment.
29346func (r *ProjectsLocationsAgentsSessionsEntityTypesService) Create(parent string, googleclouddialogflowcxv3sessionentitytype *GoogleCloudDialogflowCxV3SessionEntityType) *ProjectsLocationsAgentsSessionsEntityTypesCreateCall {
29347	c := &ProjectsLocationsAgentsSessionsEntityTypesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29348	c.parent = parent
29349	c.googleclouddialogflowcxv3sessionentitytype = googleclouddialogflowcxv3sessionentitytype
29350	return c
29351}
29352
29353// Fields allows partial responses to be retrieved. See
29354// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29355// for more information.
29356func (c *ProjectsLocationsAgentsSessionsEntityTypesCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsSessionsEntityTypesCreateCall {
29357	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29358	return c
29359}
29360
29361// Context sets the context to be used in this call's Do method. Any
29362// pending HTTP request will be aborted if the provided context is
29363// canceled.
29364func (c *ProjectsLocationsAgentsSessionsEntityTypesCreateCall) Context(ctx context.Context) *ProjectsLocationsAgentsSessionsEntityTypesCreateCall {
29365	c.ctx_ = ctx
29366	return c
29367}
29368
29369// Header returns an http.Header that can be modified by the caller to
29370// add HTTP headers to the request.
29371func (c *ProjectsLocationsAgentsSessionsEntityTypesCreateCall) Header() http.Header {
29372	if c.header_ == nil {
29373		c.header_ = make(http.Header)
29374	}
29375	return c.header_
29376}
29377
29378func (c *ProjectsLocationsAgentsSessionsEntityTypesCreateCall) doRequest(alt string) (*http.Response, error) {
29379	reqHeaders := make(http.Header)
29380	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
29381	for k, v := range c.header_ {
29382		reqHeaders[k] = v
29383	}
29384	reqHeaders.Set("User-Agent", c.s.userAgent())
29385	var body io.Reader = nil
29386	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3sessionentitytype)
29387	if err != nil {
29388		return nil, err
29389	}
29390	reqHeaders.Set("Content-Type", "application/json")
29391	c.urlParams_.Set("alt", alt)
29392	c.urlParams_.Set("prettyPrint", "false")
29393	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/entityTypes")
29394	urls += "?" + c.urlParams_.Encode()
29395	req, err := http.NewRequest("POST", urls, body)
29396	if err != nil {
29397		return nil, err
29398	}
29399	req.Header = reqHeaders
29400	googleapi.Expand(req.URL, map[string]string{
29401		"parent": c.parent,
29402	})
29403	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29404}
29405
29406// Do executes the "dialogflow.projects.locations.agents.sessions.entityTypes.create" call.
29407// Exactly one of *GoogleCloudDialogflowCxV3SessionEntityType or error
29408// will be non-nil. Any non-2xx status code is an error. Response
29409// headers are in either
29410// *GoogleCloudDialogflowCxV3SessionEntityType.ServerResponse.Header or
29411// (if a response was returned at all) in
29412// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
29413// whether the returned error was because http.StatusNotModified was
29414// returned.
29415func (c *ProjectsLocationsAgentsSessionsEntityTypesCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3SessionEntityType, error) {
29416	gensupport.SetOptions(c.urlParams_, opts...)
29417	res, err := c.doRequest("json")
29418	if res != nil && res.StatusCode == http.StatusNotModified {
29419		if res.Body != nil {
29420			res.Body.Close()
29421		}
29422		return nil, &googleapi.Error{
29423			Code:   res.StatusCode,
29424			Header: res.Header,
29425		}
29426	}
29427	if err != nil {
29428		return nil, err
29429	}
29430	defer googleapi.CloseBody(res)
29431	if err := googleapi.CheckResponse(res); err != nil {
29432		return nil, err
29433	}
29434	ret := &GoogleCloudDialogflowCxV3SessionEntityType{
29435		ServerResponse: googleapi.ServerResponse{
29436			Header:         res.Header,
29437			HTTPStatusCode: res.StatusCode,
29438		},
29439	}
29440	target := &ret
29441	if err := gensupport.DecodeResponse(target, res); err != nil {
29442		return nil, err
29443	}
29444	return ret, nil
29445	// {
29446	//   "description": "Creates a session entity type.",
29447	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/sessions/{sessionsId}/entityTypes",
29448	//   "httpMethod": "POST",
29449	//   "id": "dialogflow.projects.locations.agents.sessions.entityTypes.create",
29450	//   "parameterOrder": [
29451	//     "parent"
29452	//   ],
29453	//   "parameters": {
29454	//     "parent": {
29455	//       "description": "Required. The session to create a session entity type for. Format: `projects//locations//agents//sessions/` or `projects//locations//agents//environments//sessions/`. If `Environment ID` is not specified, we assume default 'draft' environment.",
29456	//       "location": "path",
29457	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/sessions/[^/]+$",
29458	//       "required": true,
29459	//       "type": "string"
29460	//     }
29461	//   },
29462	//   "path": "v3/{+parent}/entityTypes",
29463	//   "request": {
29464	//     "$ref": "GoogleCloudDialogflowCxV3SessionEntityType"
29465	//   },
29466	//   "response": {
29467	//     "$ref": "GoogleCloudDialogflowCxV3SessionEntityType"
29468	//   },
29469	//   "scopes": [
29470	//     "https://www.googleapis.com/auth/cloud-platform",
29471	//     "https://www.googleapis.com/auth/dialogflow"
29472	//   ]
29473	// }
29474
29475}
29476
29477// method id "dialogflow.projects.locations.agents.sessions.entityTypes.delete":
29478
29479type ProjectsLocationsAgentsSessionsEntityTypesDeleteCall struct {
29480	s          *Service
29481	name       string
29482	urlParams_ gensupport.URLParams
29483	ctx_       context.Context
29484	header_    http.Header
29485}
29486
29487// Delete: Deletes the specified session entity type.
29488//
29489// - name: The name of the session entity type to delete. Format:
29490//   `projects//locations//agents//sessions//entityTypes/` or
29491//   `projects//locations//agents//environments//sessions//entityTypes/`.
29492//    If `Environment ID` is not specified, we assume default 'draft'
29493//   environment.
29494func (r *ProjectsLocationsAgentsSessionsEntityTypesService) Delete(name string) *ProjectsLocationsAgentsSessionsEntityTypesDeleteCall {
29495	c := &ProjectsLocationsAgentsSessionsEntityTypesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29496	c.name = name
29497	return c
29498}
29499
29500// Fields allows partial responses to be retrieved. See
29501// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29502// for more information.
29503func (c *ProjectsLocationsAgentsSessionsEntityTypesDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsSessionsEntityTypesDeleteCall {
29504	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29505	return c
29506}
29507
29508// Context sets the context to be used in this call's Do method. Any
29509// pending HTTP request will be aborted if the provided context is
29510// canceled.
29511func (c *ProjectsLocationsAgentsSessionsEntityTypesDeleteCall) Context(ctx context.Context) *ProjectsLocationsAgentsSessionsEntityTypesDeleteCall {
29512	c.ctx_ = ctx
29513	return c
29514}
29515
29516// Header returns an http.Header that can be modified by the caller to
29517// add HTTP headers to the request.
29518func (c *ProjectsLocationsAgentsSessionsEntityTypesDeleteCall) Header() http.Header {
29519	if c.header_ == nil {
29520		c.header_ = make(http.Header)
29521	}
29522	return c.header_
29523}
29524
29525func (c *ProjectsLocationsAgentsSessionsEntityTypesDeleteCall) doRequest(alt string) (*http.Response, error) {
29526	reqHeaders := make(http.Header)
29527	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
29528	for k, v := range c.header_ {
29529		reqHeaders[k] = v
29530	}
29531	reqHeaders.Set("User-Agent", c.s.userAgent())
29532	var body io.Reader = nil
29533	c.urlParams_.Set("alt", alt)
29534	c.urlParams_.Set("prettyPrint", "false")
29535	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
29536	urls += "?" + c.urlParams_.Encode()
29537	req, err := http.NewRequest("DELETE", urls, body)
29538	if err != nil {
29539		return nil, err
29540	}
29541	req.Header = reqHeaders
29542	googleapi.Expand(req.URL, map[string]string{
29543		"name": c.name,
29544	})
29545	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29546}
29547
29548// Do executes the "dialogflow.projects.locations.agents.sessions.entityTypes.delete" call.
29549// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
29550// non-2xx status code is an error. Response headers are in either
29551// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
29552// returned at all) in error.(*googleapi.Error).Header. Use
29553// googleapi.IsNotModified to check whether the returned error was
29554// because http.StatusNotModified was returned.
29555func (c *ProjectsLocationsAgentsSessionsEntityTypesDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
29556	gensupport.SetOptions(c.urlParams_, opts...)
29557	res, err := c.doRequest("json")
29558	if res != nil && res.StatusCode == http.StatusNotModified {
29559		if res.Body != nil {
29560			res.Body.Close()
29561		}
29562		return nil, &googleapi.Error{
29563			Code:   res.StatusCode,
29564			Header: res.Header,
29565		}
29566	}
29567	if err != nil {
29568		return nil, err
29569	}
29570	defer googleapi.CloseBody(res)
29571	if err := googleapi.CheckResponse(res); err != nil {
29572		return nil, err
29573	}
29574	ret := &GoogleProtobufEmpty{
29575		ServerResponse: googleapi.ServerResponse{
29576			Header:         res.Header,
29577			HTTPStatusCode: res.StatusCode,
29578		},
29579	}
29580	target := &ret
29581	if err := gensupport.DecodeResponse(target, res); err != nil {
29582		return nil, err
29583	}
29584	return ret, nil
29585	// {
29586	//   "description": "Deletes the specified session entity type.",
29587	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/sessions/{sessionsId}/entityTypes/{entityTypesId}",
29588	//   "httpMethod": "DELETE",
29589	//   "id": "dialogflow.projects.locations.agents.sessions.entityTypes.delete",
29590	//   "parameterOrder": [
29591	//     "name"
29592	//   ],
29593	//   "parameters": {
29594	//     "name": {
29595	//       "description": "Required. The name of the session entity type to delete. Format: `projects//locations//agents//sessions//entityTypes/` or `projects//locations//agents//environments//sessions//entityTypes/`. If `Environment ID` is not specified, we assume default 'draft' environment.",
29596	//       "location": "path",
29597	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/sessions/[^/]+/entityTypes/[^/]+$",
29598	//       "required": true,
29599	//       "type": "string"
29600	//     }
29601	//   },
29602	//   "path": "v3/{+name}",
29603	//   "response": {
29604	//     "$ref": "GoogleProtobufEmpty"
29605	//   },
29606	//   "scopes": [
29607	//     "https://www.googleapis.com/auth/cloud-platform",
29608	//     "https://www.googleapis.com/auth/dialogflow"
29609	//   ]
29610	// }
29611
29612}
29613
29614// method id "dialogflow.projects.locations.agents.sessions.entityTypes.get":
29615
29616type ProjectsLocationsAgentsSessionsEntityTypesGetCall struct {
29617	s            *Service
29618	name         string
29619	urlParams_   gensupport.URLParams
29620	ifNoneMatch_ string
29621	ctx_         context.Context
29622	header_      http.Header
29623}
29624
29625// Get: Retrieves the specified session entity type.
29626//
29627// - name: The name of the session entity type. Format:
29628//   `projects//locations//agents//sessions//entityTypes/` or
29629//   `projects//locations//agents//environments//sessions//entityTypes/`.
29630//    If `Environment ID` is not specified, we assume default 'draft'
29631//   environment.
29632func (r *ProjectsLocationsAgentsSessionsEntityTypesService) Get(name string) *ProjectsLocationsAgentsSessionsEntityTypesGetCall {
29633	c := &ProjectsLocationsAgentsSessionsEntityTypesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29634	c.name = name
29635	return c
29636}
29637
29638// Fields allows partial responses to be retrieved. See
29639// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29640// for more information.
29641func (c *ProjectsLocationsAgentsSessionsEntityTypesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsSessionsEntityTypesGetCall {
29642	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29643	return c
29644}
29645
29646// IfNoneMatch sets the optional parameter which makes the operation
29647// fail if the object's ETag matches the given value. This is useful for
29648// getting updates only after the object has changed since the last
29649// request. Use googleapi.IsNotModified to check whether the response
29650// error from Do is the result of In-None-Match.
29651func (c *ProjectsLocationsAgentsSessionsEntityTypesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsSessionsEntityTypesGetCall {
29652	c.ifNoneMatch_ = entityTag
29653	return c
29654}
29655
29656// Context sets the context to be used in this call's Do method. Any
29657// pending HTTP request will be aborted if the provided context is
29658// canceled.
29659func (c *ProjectsLocationsAgentsSessionsEntityTypesGetCall) Context(ctx context.Context) *ProjectsLocationsAgentsSessionsEntityTypesGetCall {
29660	c.ctx_ = ctx
29661	return c
29662}
29663
29664// Header returns an http.Header that can be modified by the caller to
29665// add HTTP headers to the request.
29666func (c *ProjectsLocationsAgentsSessionsEntityTypesGetCall) Header() http.Header {
29667	if c.header_ == nil {
29668		c.header_ = make(http.Header)
29669	}
29670	return c.header_
29671}
29672
29673func (c *ProjectsLocationsAgentsSessionsEntityTypesGetCall) doRequest(alt string) (*http.Response, error) {
29674	reqHeaders := make(http.Header)
29675	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
29676	for k, v := range c.header_ {
29677		reqHeaders[k] = v
29678	}
29679	reqHeaders.Set("User-Agent", c.s.userAgent())
29680	if c.ifNoneMatch_ != "" {
29681		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
29682	}
29683	var body io.Reader = nil
29684	c.urlParams_.Set("alt", alt)
29685	c.urlParams_.Set("prettyPrint", "false")
29686	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
29687	urls += "?" + c.urlParams_.Encode()
29688	req, err := http.NewRequest("GET", urls, body)
29689	if err != nil {
29690		return nil, err
29691	}
29692	req.Header = reqHeaders
29693	googleapi.Expand(req.URL, map[string]string{
29694		"name": c.name,
29695	})
29696	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29697}
29698
29699// Do executes the "dialogflow.projects.locations.agents.sessions.entityTypes.get" call.
29700// Exactly one of *GoogleCloudDialogflowCxV3SessionEntityType or error
29701// will be non-nil. Any non-2xx status code is an error. Response
29702// headers are in either
29703// *GoogleCloudDialogflowCxV3SessionEntityType.ServerResponse.Header or
29704// (if a response was returned at all) in
29705// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
29706// whether the returned error was because http.StatusNotModified was
29707// returned.
29708func (c *ProjectsLocationsAgentsSessionsEntityTypesGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3SessionEntityType, error) {
29709	gensupport.SetOptions(c.urlParams_, opts...)
29710	res, err := c.doRequest("json")
29711	if res != nil && res.StatusCode == http.StatusNotModified {
29712		if res.Body != nil {
29713			res.Body.Close()
29714		}
29715		return nil, &googleapi.Error{
29716			Code:   res.StatusCode,
29717			Header: res.Header,
29718		}
29719	}
29720	if err != nil {
29721		return nil, err
29722	}
29723	defer googleapi.CloseBody(res)
29724	if err := googleapi.CheckResponse(res); err != nil {
29725		return nil, err
29726	}
29727	ret := &GoogleCloudDialogflowCxV3SessionEntityType{
29728		ServerResponse: googleapi.ServerResponse{
29729			Header:         res.Header,
29730			HTTPStatusCode: res.StatusCode,
29731		},
29732	}
29733	target := &ret
29734	if err := gensupport.DecodeResponse(target, res); err != nil {
29735		return nil, err
29736	}
29737	return ret, nil
29738	// {
29739	//   "description": "Retrieves the specified session entity type.",
29740	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/sessions/{sessionsId}/entityTypes/{entityTypesId}",
29741	//   "httpMethod": "GET",
29742	//   "id": "dialogflow.projects.locations.agents.sessions.entityTypes.get",
29743	//   "parameterOrder": [
29744	//     "name"
29745	//   ],
29746	//   "parameters": {
29747	//     "name": {
29748	//       "description": "Required. The name of the session entity type. Format: `projects//locations//agents//sessions//entityTypes/` or `projects//locations//agents//environments//sessions//entityTypes/`. If `Environment ID` is not specified, we assume default 'draft' environment.",
29749	//       "location": "path",
29750	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/sessions/[^/]+/entityTypes/[^/]+$",
29751	//       "required": true,
29752	//       "type": "string"
29753	//     }
29754	//   },
29755	//   "path": "v3/{+name}",
29756	//   "response": {
29757	//     "$ref": "GoogleCloudDialogflowCxV3SessionEntityType"
29758	//   },
29759	//   "scopes": [
29760	//     "https://www.googleapis.com/auth/cloud-platform",
29761	//     "https://www.googleapis.com/auth/dialogflow"
29762	//   ]
29763	// }
29764
29765}
29766
29767// method id "dialogflow.projects.locations.agents.sessions.entityTypes.list":
29768
29769type ProjectsLocationsAgentsSessionsEntityTypesListCall struct {
29770	s            *Service
29771	parent       string
29772	urlParams_   gensupport.URLParams
29773	ifNoneMatch_ string
29774	ctx_         context.Context
29775	header_      http.Header
29776}
29777
29778// List: Returns the list of all session entity types in the specified
29779// session.
29780//
29781// - parent: The session to list all session entity types from. Format:
29782//   `projects//locations//agents//sessions/` or
29783//   `projects//locations//agents//environments//sessions/`. If
29784//   `Environment ID` is not specified, we assume default 'draft'
29785//   environment.
29786func (r *ProjectsLocationsAgentsSessionsEntityTypesService) List(parent string) *ProjectsLocationsAgentsSessionsEntityTypesListCall {
29787	c := &ProjectsLocationsAgentsSessionsEntityTypesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29788	c.parent = parent
29789	return c
29790}
29791
29792// PageSize sets the optional parameter "pageSize": The maximum number
29793// of items to return in a single page. By default 100 and at most 1000.
29794func (c *ProjectsLocationsAgentsSessionsEntityTypesListCall) PageSize(pageSize int64) *ProjectsLocationsAgentsSessionsEntityTypesListCall {
29795	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
29796	return c
29797}
29798
29799// PageToken sets the optional parameter "pageToken": The
29800// next_page_token value returned from a previous list request.
29801func (c *ProjectsLocationsAgentsSessionsEntityTypesListCall) PageToken(pageToken string) *ProjectsLocationsAgentsSessionsEntityTypesListCall {
29802	c.urlParams_.Set("pageToken", pageToken)
29803	return c
29804}
29805
29806// Fields allows partial responses to be retrieved. See
29807// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29808// for more information.
29809func (c *ProjectsLocationsAgentsSessionsEntityTypesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsSessionsEntityTypesListCall {
29810	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29811	return c
29812}
29813
29814// IfNoneMatch sets the optional parameter which makes the operation
29815// fail if the object's ETag matches the given value. This is useful for
29816// getting updates only after the object has changed since the last
29817// request. Use googleapi.IsNotModified to check whether the response
29818// error from Do is the result of In-None-Match.
29819func (c *ProjectsLocationsAgentsSessionsEntityTypesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsSessionsEntityTypesListCall {
29820	c.ifNoneMatch_ = entityTag
29821	return c
29822}
29823
29824// Context sets the context to be used in this call's Do method. Any
29825// pending HTTP request will be aborted if the provided context is
29826// canceled.
29827func (c *ProjectsLocationsAgentsSessionsEntityTypesListCall) Context(ctx context.Context) *ProjectsLocationsAgentsSessionsEntityTypesListCall {
29828	c.ctx_ = ctx
29829	return c
29830}
29831
29832// Header returns an http.Header that can be modified by the caller to
29833// add HTTP headers to the request.
29834func (c *ProjectsLocationsAgentsSessionsEntityTypesListCall) Header() http.Header {
29835	if c.header_ == nil {
29836		c.header_ = make(http.Header)
29837	}
29838	return c.header_
29839}
29840
29841func (c *ProjectsLocationsAgentsSessionsEntityTypesListCall) doRequest(alt string) (*http.Response, error) {
29842	reqHeaders := make(http.Header)
29843	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
29844	for k, v := range c.header_ {
29845		reqHeaders[k] = v
29846	}
29847	reqHeaders.Set("User-Agent", c.s.userAgent())
29848	if c.ifNoneMatch_ != "" {
29849		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
29850	}
29851	var body io.Reader = nil
29852	c.urlParams_.Set("alt", alt)
29853	c.urlParams_.Set("prettyPrint", "false")
29854	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/entityTypes")
29855	urls += "?" + c.urlParams_.Encode()
29856	req, err := http.NewRequest("GET", urls, body)
29857	if err != nil {
29858		return nil, err
29859	}
29860	req.Header = reqHeaders
29861	googleapi.Expand(req.URL, map[string]string{
29862		"parent": c.parent,
29863	})
29864	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29865}
29866
29867// Do executes the "dialogflow.projects.locations.agents.sessions.entityTypes.list" call.
29868// Exactly one of
29869// *GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse or error
29870// will be non-nil. Any non-2xx status code is an error. Response
29871// headers are in either
29872// *GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse.ServerRespons
29873// e.Header or (if a response was returned at all) in
29874// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
29875// whether the returned error was because http.StatusNotModified was
29876// returned.
29877func (c *ProjectsLocationsAgentsSessionsEntityTypesListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse, error) {
29878	gensupport.SetOptions(c.urlParams_, opts...)
29879	res, err := c.doRequest("json")
29880	if res != nil && res.StatusCode == http.StatusNotModified {
29881		if res.Body != nil {
29882			res.Body.Close()
29883		}
29884		return nil, &googleapi.Error{
29885			Code:   res.StatusCode,
29886			Header: res.Header,
29887		}
29888	}
29889	if err != nil {
29890		return nil, err
29891	}
29892	defer googleapi.CloseBody(res)
29893	if err := googleapi.CheckResponse(res); err != nil {
29894		return nil, err
29895	}
29896	ret := &GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse{
29897		ServerResponse: googleapi.ServerResponse{
29898			Header:         res.Header,
29899			HTTPStatusCode: res.StatusCode,
29900		},
29901	}
29902	target := &ret
29903	if err := gensupport.DecodeResponse(target, res); err != nil {
29904		return nil, err
29905	}
29906	return ret, nil
29907	// {
29908	//   "description": "Returns the list of all session entity types in the specified session.",
29909	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/sessions/{sessionsId}/entityTypes",
29910	//   "httpMethod": "GET",
29911	//   "id": "dialogflow.projects.locations.agents.sessions.entityTypes.list",
29912	//   "parameterOrder": [
29913	//     "parent"
29914	//   ],
29915	//   "parameters": {
29916	//     "pageSize": {
29917	//       "description": "The maximum number of items to return in a single page. By default 100 and at most 1000.",
29918	//       "format": "int32",
29919	//       "location": "query",
29920	//       "type": "integer"
29921	//     },
29922	//     "pageToken": {
29923	//       "description": "The next_page_token value returned from a previous list request.",
29924	//       "location": "query",
29925	//       "type": "string"
29926	//     },
29927	//     "parent": {
29928	//       "description": "Required. The session to list all session entity types from. Format: `projects//locations//agents//sessions/` or `projects//locations//agents//environments//sessions/`. If `Environment ID` is not specified, we assume default 'draft' environment.",
29929	//       "location": "path",
29930	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/sessions/[^/]+$",
29931	//       "required": true,
29932	//       "type": "string"
29933	//     }
29934	//   },
29935	//   "path": "v3/{+parent}/entityTypes",
29936	//   "response": {
29937	//     "$ref": "GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse"
29938	//   },
29939	//   "scopes": [
29940	//     "https://www.googleapis.com/auth/cloud-platform",
29941	//     "https://www.googleapis.com/auth/dialogflow"
29942	//   ]
29943	// }
29944
29945}
29946
29947// Pages invokes f for each page of results.
29948// A non-nil error returned from f will halt the iteration.
29949// The provided context supersedes any context provided to the Context method.
29950func (c *ProjectsLocationsAgentsSessionsEntityTypesListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse) error) error {
29951	c.ctx_ = ctx
29952	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
29953	for {
29954		x, err := c.Do()
29955		if err != nil {
29956			return err
29957		}
29958		if err := f(x); err != nil {
29959			return err
29960		}
29961		if x.NextPageToken == "" {
29962			return nil
29963		}
29964		c.PageToken(x.NextPageToken)
29965	}
29966}
29967
29968// method id "dialogflow.projects.locations.agents.sessions.entityTypes.patch":
29969
29970type ProjectsLocationsAgentsSessionsEntityTypesPatchCall struct {
29971	s                                          *Service
29972	nameid                                     string
29973	googleclouddialogflowcxv3sessionentitytype *GoogleCloudDialogflowCxV3SessionEntityType
29974	urlParams_                                 gensupport.URLParams
29975	ctx_                                       context.Context
29976	header_                                    http.Header
29977}
29978
29979// Patch: Updates the specified session entity type.
29980//
29981// - name: The unique identifier of the session entity type. Format:
29982//   `projects//locations//agents//sessions//entityTypes/` or
29983//   `projects//locations//agents//environments//sessions//entityTypes/`.
29984//    If `Environment ID` is not specified, we assume default 'draft'
29985//   environment.
29986func (r *ProjectsLocationsAgentsSessionsEntityTypesService) Patch(nameid string, googleclouddialogflowcxv3sessionentitytype *GoogleCloudDialogflowCxV3SessionEntityType) *ProjectsLocationsAgentsSessionsEntityTypesPatchCall {
29987	c := &ProjectsLocationsAgentsSessionsEntityTypesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29988	c.nameid = nameid
29989	c.googleclouddialogflowcxv3sessionentitytype = googleclouddialogflowcxv3sessionentitytype
29990	return c
29991}
29992
29993// UpdateMask sets the optional parameter "updateMask": The mask to
29994// control which fields get updated.
29995func (c *ProjectsLocationsAgentsSessionsEntityTypesPatchCall) UpdateMask(updateMask string) *ProjectsLocationsAgentsSessionsEntityTypesPatchCall {
29996	c.urlParams_.Set("updateMask", updateMask)
29997	return c
29998}
29999
30000// Fields allows partial responses to be retrieved. See
30001// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30002// for more information.
30003func (c *ProjectsLocationsAgentsSessionsEntityTypesPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsSessionsEntityTypesPatchCall {
30004	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30005	return c
30006}
30007
30008// Context sets the context to be used in this call's Do method. Any
30009// pending HTTP request will be aborted if the provided context is
30010// canceled.
30011func (c *ProjectsLocationsAgentsSessionsEntityTypesPatchCall) Context(ctx context.Context) *ProjectsLocationsAgentsSessionsEntityTypesPatchCall {
30012	c.ctx_ = ctx
30013	return c
30014}
30015
30016// Header returns an http.Header that can be modified by the caller to
30017// add HTTP headers to the request.
30018func (c *ProjectsLocationsAgentsSessionsEntityTypesPatchCall) Header() http.Header {
30019	if c.header_ == nil {
30020		c.header_ = make(http.Header)
30021	}
30022	return c.header_
30023}
30024
30025func (c *ProjectsLocationsAgentsSessionsEntityTypesPatchCall) doRequest(alt string) (*http.Response, error) {
30026	reqHeaders := make(http.Header)
30027	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
30028	for k, v := range c.header_ {
30029		reqHeaders[k] = v
30030	}
30031	reqHeaders.Set("User-Agent", c.s.userAgent())
30032	var body io.Reader = nil
30033	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3sessionentitytype)
30034	if err != nil {
30035		return nil, err
30036	}
30037	reqHeaders.Set("Content-Type", "application/json")
30038	c.urlParams_.Set("alt", alt)
30039	c.urlParams_.Set("prettyPrint", "false")
30040	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
30041	urls += "?" + c.urlParams_.Encode()
30042	req, err := http.NewRequest("PATCH", urls, body)
30043	if err != nil {
30044		return nil, err
30045	}
30046	req.Header = reqHeaders
30047	googleapi.Expand(req.URL, map[string]string{
30048		"name": c.nameid,
30049	})
30050	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30051}
30052
30053// Do executes the "dialogflow.projects.locations.agents.sessions.entityTypes.patch" call.
30054// Exactly one of *GoogleCloudDialogflowCxV3SessionEntityType or error
30055// will be non-nil. Any non-2xx status code is an error. Response
30056// headers are in either
30057// *GoogleCloudDialogflowCxV3SessionEntityType.ServerResponse.Header or
30058// (if a response was returned at all) in
30059// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
30060// whether the returned error was because http.StatusNotModified was
30061// returned.
30062func (c *ProjectsLocationsAgentsSessionsEntityTypesPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3SessionEntityType, error) {
30063	gensupport.SetOptions(c.urlParams_, opts...)
30064	res, err := c.doRequest("json")
30065	if res != nil && res.StatusCode == http.StatusNotModified {
30066		if res.Body != nil {
30067			res.Body.Close()
30068		}
30069		return nil, &googleapi.Error{
30070			Code:   res.StatusCode,
30071			Header: res.Header,
30072		}
30073	}
30074	if err != nil {
30075		return nil, err
30076	}
30077	defer googleapi.CloseBody(res)
30078	if err := googleapi.CheckResponse(res); err != nil {
30079		return nil, err
30080	}
30081	ret := &GoogleCloudDialogflowCxV3SessionEntityType{
30082		ServerResponse: googleapi.ServerResponse{
30083			Header:         res.Header,
30084			HTTPStatusCode: res.StatusCode,
30085		},
30086	}
30087	target := &ret
30088	if err := gensupport.DecodeResponse(target, res); err != nil {
30089		return nil, err
30090	}
30091	return ret, nil
30092	// {
30093	//   "description": "Updates the specified session entity type.",
30094	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/sessions/{sessionsId}/entityTypes/{entityTypesId}",
30095	//   "httpMethod": "PATCH",
30096	//   "id": "dialogflow.projects.locations.agents.sessions.entityTypes.patch",
30097	//   "parameterOrder": [
30098	//     "name"
30099	//   ],
30100	//   "parameters": {
30101	//     "name": {
30102	//       "description": "Required. The unique identifier of the session entity type. Format: `projects//locations//agents//sessions//entityTypes/` or `projects//locations//agents//environments//sessions//entityTypes/`. If `Environment ID` is not specified, we assume default 'draft' environment.",
30103	//       "location": "path",
30104	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/sessions/[^/]+/entityTypes/[^/]+$",
30105	//       "required": true,
30106	//       "type": "string"
30107	//     },
30108	//     "updateMask": {
30109	//       "description": "The mask to control which fields get updated.",
30110	//       "format": "google-fieldmask",
30111	//       "location": "query",
30112	//       "type": "string"
30113	//     }
30114	//   },
30115	//   "path": "v3/{+name}",
30116	//   "request": {
30117	//     "$ref": "GoogleCloudDialogflowCxV3SessionEntityType"
30118	//   },
30119	//   "response": {
30120	//     "$ref": "GoogleCloudDialogflowCxV3SessionEntityType"
30121	//   },
30122	//   "scopes": [
30123	//     "https://www.googleapis.com/auth/cloud-platform",
30124	//     "https://www.googleapis.com/auth/dialogflow"
30125	//   ]
30126	// }
30127
30128}
30129
30130// method id "dialogflow.projects.locations.agents.testCases.batchDelete":
30131
30132type ProjectsLocationsAgentsTestCasesBatchDeleteCall struct {
30133	s                                                    *Service
30134	parent                                               string
30135	googleclouddialogflowcxv3batchdeletetestcasesrequest *GoogleCloudDialogflowCxV3BatchDeleteTestCasesRequest
30136	urlParams_                                           gensupport.URLParams
30137	ctx_                                                 context.Context
30138	header_                                              http.Header
30139}
30140
30141// BatchDelete: Batch deletes test cases.
30142//
30143// - parent: The agent to delete test cases from. Format:
30144//   `projects//locations//agents/`.
30145func (r *ProjectsLocationsAgentsTestCasesService) BatchDelete(parent string, googleclouddialogflowcxv3batchdeletetestcasesrequest *GoogleCloudDialogflowCxV3BatchDeleteTestCasesRequest) *ProjectsLocationsAgentsTestCasesBatchDeleteCall {
30146	c := &ProjectsLocationsAgentsTestCasesBatchDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30147	c.parent = parent
30148	c.googleclouddialogflowcxv3batchdeletetestcasesrequest = googleclouddialogflowcxv3batchdeletetestcasesrequest
30149	return c
30150}
30151
30152// Fields allows partial responses to be retrieved. See
30153// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30154// for more information.
30155func (c *ProjectsLocationsAgentsTestCasesBatchDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsTestCasesBatchDeleteCall {
30156	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30157	return c
30158}
30159
30160// Context sets the context to be used in this call's Do method. Any
30161// pending HTTP request will be aborted if the provided context is
30162// canceled.
30163func (c *ProjectsLocationsAgentsTestCasesBatchDeleteCall) Context(ctx context.Context) *ProjectsLocationsAgentsTestCasesBatchDeleteCall {
30164	c.ctx_ = ctx
30165	return c
30166}
30167
30168// Header returns an http.Header that can be modified by the caller to
30169// add HTTP headers to the request.
30170func (c *ProjectsLocationsAgentsTestCasesBatchDeleteCall) Header() http.Header {
30171	if c.header_ == nil {
30172		c.header_ = make(http.Header)
30173	}
30174	return c.header_
30175}
30176
30177func (c *ProjectsLocationsAgentsTestCasesBatchDeleteCall) doRequest(alt string) (*http.Response, error) {
30178	reqHeaders := make(http.Header)
30179	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
30180	for k, v := range c.header_ {
30181		reqHeaders[k] = v
30182	}
30183	reqHeaders.Set("User-Agent", c.s.userAgent())
30184	var body io.Reader = nil
30185	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3batchdeletetestcasesrequest)
30186	if err != nil {
30187		return nil, err
30188	}
30189	reqHeaders.Set("Content-Type", "application/json")
30190	c.urlParams_.Set("alt", alt)
30191	c.urlParams_.Set("prettyPrint", "false")
30192	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/testCases:batchDelete")
30193	urls += "?" + c.urlParams_.Encode()
30194	req, err := http.NewRequest("POST", urls, body)
30195	if err != nil {
30196		return nil, err
30197	}
30198	req.Header = reqHeaders
30199	googleapi.Expand(req.URL, map[string]string{
30200		"parent": c.parent,
30201	})
30202	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30203}
30204
30205// Do executes the "dialogflow.projects.locations.agents.testCases.batchDelete" call.
30206// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
30207// non-2xx status code is an error. Response headers are in either
30208// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
30209// returned at all) in error.(*googleapi.Error).Header. Use
30210// googleapi.IsNotModified to check whether the returned error was
30211// because http.StatusNotModified was returned.
30212func (c *ProjectsLocationsAgentsTestCasesBatchDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
30213	gensupport.SetOptions(c.urlParams_, opts...)
30214	res, err := c.doRequest("json")
30215	if res != nil && res.StatusCode == http.StatusNotModified {
30216		if res.Body != nil {
30217			res.Body.Close()
30218		}
30219		return nil, &googleapi.Error{
30220			Code:   res.StatusCode,
30221			Header: res.Header,
30222		}
30223	}
30224	if err != nil {
30225		return nil, err
30226	}
30227	defer googleapi.CloseBody(res)
30228	if err := googleapi.CheckResponse(res); err != nil {
30229		return nil, err
30230	}
30231	ret := &GoogleProtobufEmpty{
30232		ServerResponse: googleapi.ServerResponse{
30233			Header:         res.Header,
30234			HTTPStatusCode: res.StatusCode,
30235		},
30236	}
30237	target := &ret
30238	if err := gensupport.DecodeResponse(target, res); err != nil {
30239		return nil, err
30240	}
30241	return ret, nil
30242	// {
30243	//   "description": "Batch deletes test cases.",
30244	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/testCases:batchDelete",
30245	//   "httpMethod": "POST",
30246	//   "id": "dialogflow.projects.locations.agents.testCases.batchDelete",
30247	//   "parameterOrder": [
30248	//     "parent"
30249	//   ],
30250	//   "parameters": {
30251	//     "parent": {
30252	//       "description": "Required. The agent to delete test cases from. Format: `projects//locations//agents/`.",
30253	//       "location": "path",
30254	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
30255	//       "required": true,
30256	//       "type": "string"
30257	//     }
30258	//   },
30259	//   "path": "v3/{+parent}/testCases:batchDelete",
30260	//   "request": {
30261	//     "$ref": "GoogleCloudDialogflowCxV3BatchDeleteTestCasesRequest"
30262	//   },
30263	//   "response": {
30264	//     "$ref": "GoogleProtobufEmpty"
30265	//   },
30266	//   "scopes": [
30267	//     "https://www.googleapis.com/auth/cloud-platform",
30268	//     "https://www.googleapis.com/auth/dialogflow"
30269	//   ]
30270	// }
30271
30272}
30273
30274// method id "dialogflow.projects.locations.agents.testCases.batchRun":
30275
30276type ProjectsLocationsAgentsTestCasesBatchRunCall struct {
30277	s                                                 *Service
30278	parent                                            string
30279	googleclouddialogflowcxv3batchruntestcasesrequest *GoogleCloudDialogflowCxV3BatchRunTestCasesRequest
30280	urlParams_                                        gensupport.URLParams
30281	ctx_                                              context.Context
30282	header_                                           http.Header
30283}
30284
30285// BatchRun: Kicks off a batch run of test cases.
30286//
30287// - parent: Agent name. Format: `projects//locations//agents/ `.
30288func (r *ProjectsLocationsAgentsTestCasesService) BatchRun(parent string, googleclouddialogflowcxv3batchruntestcasesrequest *GoogleCloudDialogflowCxV3BatchRunTestCasesRequest) *ProjectsLocationsAgentsTestCasesBatchRunCall {
30289	c := &ProjectsLocationsAgentsTestCasesBatchRunCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30290	c.parent = parent
30291	c.googleclouddialogflowcxv3batchruntestcasesrequest = googleclouddialogflowcxv3batchruntestcasesrequest
30292	return c
30293}
30294
30295// Fields allows partial responses to be retrieved. See
30296// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30297// for more information.
30298func (c *ProjectsLocationsAgentsTestCasesBatchRunCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsTestCasesBatchRunCall {
30299	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30300	return c
30301}
30302
30303// Context sets the context to be used in this call's Do method. Any
30304// pending HTTP request will be aborted if the provided context is
30305// canceled.
30306func (c *ProjectsLocationsAgentsTestCasesBatchRunCall) Context(ctx context.Context) *ProjectsLocationsAgentsTestCasesBatchRunCall {
30307	c.ctx_ = ctx
30308	return c
30309}
30310
30311// Header returns an http.Header that can be modified by the caller to
30312// add HTTP headers to the request.
30313func (c *ProjectsLocationsAgentsTestCasesBatchRunCall) Header() http.Header {
30314	if c.header_ == nil {
30315		c.header_ = make(http.Header)
30316	}
30317	return c.header_
30318}
30319
30320func (c *ProjectsLocationsAgentsTestCasesBatchRunCall) doRequest(alt string) (*http.Response, error) {
30321	reqHeaders := make(http.Header)
30322	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
30323	for k, v := range c.header_ {
30324		reqHeaders[k] = v
30325	}
30326	reqHeaders.Set("User-Agent", c.s.userAgent())
30327	var body io.Reader = nil
30328	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3batchruntestcasesrequest)
30329	if err != nil {
30330		return nil, err
30331	}
30332	reqHeaders.Set("Content-Type", "application/json")
30333	c.urlParams_.Set("alt", alt)
30334	c.urlParams_.Set("prettyPrint", "false")
30335	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/testCases:batchRun")
30336	urls += "?" + c.urlParams_.Encode()
30337	req, err := http.NewRequest("POST", urls, body)
30338	if err != nil {
30339		return nil, err
30340	}
30341	req.Header = reqHeaders
30342	googleapi.Expand(req.URL, map[string]string{
30343		"parent": c.parent,
30344	})
30345	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30346}
30347
30348// Do executes the "dialogflow.projects.locations.agents.testCases.batchRun" call.
30349// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
30350// Any non-2xx status code is an error. Response headers are in either
30351// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
30352// was returned at all) in error.(*googleapi.Error).Header. Use
30353// googleapi.IsNotModified to check whether the returned error was
30354// because http.StatusNotModified was returned.
30355func (c *ProjectsLocationsAgentsTestCasesBatchRunCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
30356	gensupport.SetOptions(c.urlParams_, opts...)
30357	res, err := c.doRequest("json")
30358	if res != nil && res.StatusCode == http.StatusNotModified {
30359		if res.Body != nil {
30360			res.Body.Close()
30361		}
30362		return nil, &googleapi.Error{
30363			Code:   res.StatusCode,
30364			Header: res.Header,
30365		}
30366	}
30367	if err != nil {
30368		return nil, err
30369	}
30370	defer googleapi.CloseBody(res)
30371	if err := googleapi.CheckResponse(res); err != nil {
30372		return nil, err
30373	}
30374	ret := &GoogleLongrunningOperation{
30375		ServerResponse: googleapi.ServerResponse{
30376			Header:         res.Header,
30377			HTTPStatusCode: res.StatusCode,
30378		},
30379	}
30380	target := &ret
30381	if err := gensupport.DecodeResponse(target, res); err != nil {
30382		return nil, err
30383	}
30384	return ret, nil
30385	// {
30386	//   "description": "Kicks off a batch run of test cases.",
30387	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/testCases:batchRun",
30388	//   "httpMethod": "POST",
30389	//   "id": "dialogflow.projects.locations.agents.testCases.batchRun",
30390	//   "parameterOrder": [
30391	//     "parent"
30392	//   ],
30393	//   "parameters": {
30394	//     "parent": {
30395	//       "description": "Required. Agent name. Format: `projects//locations//agents/ `.",
30396	//       "location": "path",
30397	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
30398	//       "required": true,
30399	//       "type": "string"
30400	//     }
30401	//   },
30402	//   "path": "v3/{+parent}/testCases:batchRun",
30403	//   "request": {
30404	//     "$ref": "GoogleCloudDialogflowCxV3BatchRunTestCasesRequest"
30405	//   },
30406	//   "response": {
30407	//     "$ref": "GoogleLongrunningOperation"
30408	//   },
30409	//   "scopes": [
30410	//     "https://www.googleapis.com/auth/cloud-platform",
30411	//     "https://www.googleapis.com/auth/dialogflow"
30412	//   ]
30413	// }
30414
30415}
30416
30417// method id "dialogflow.projects.locations.agents.testCases.calculateCoverage":
30418
30419type ProjectsLocationsAgentsTestCasesCalculateCoverageCall struct {
30420	s            *Service
30421	agent        string
30422	urlParams_   gensupport.URLParams
30423	ifNoneMatch_ string
30424	ctx_         context.Context
30425	header_      http.Header
30426}
30427
30428// CalculateCoverage: Calculates the test coverage for an agent.
30429//
30430// - agent: The agent to calculate coverage for. Format:
30431//   `projects//locations//agents/`.
30432func (r *ProjectsLocationsAgentsTestCasesService) CalculateCoverage(agent string) *ProjectsLocationsAgentsTestCasesCalculateCoverageCall {
30433	c := &ProjectsLocationsAgentsTestCasesCalculateCoverageCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30434	c.agent = agent
30435	return c
30436}
30437
30438// Type sets the optional parameter "type": Required. The type of
30439// coverage requested.
30440//
30441// Possible values:
30442//   "COVERAGE_TYPE_UNSPECIFIED" - Should never be used.
30443//   "INTENT" - Intent coverage.
30444//   "PAGE_TRANSITION" - Page transition coverage.
30445//   "TRANSITION_ROUTE_GROUP" - Transition route group coverage.
30446func (c *ProjectsLocationsAgentsTestCasesCalculateCoverageCall) Type(type_ string) *ProjectsLocationsAgentsTestCasesCalculateCoverageCall {
30447	c.urlParams_.Set("type", type_)
30448	return c
30449}
30450
30451// Fields allows partial responses to be retrieved. See
30452// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30453// for more information.
30454func (c *ProjectsLocationsAgentsTestCasesCalculateCoverageCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsTestCasesCalculateCoverageCall {
30455	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30456	return c
30457}
30458
30459// IfNoneMatch sets the optional parameter which makes the operation
30460// fail if the object's ETag matches the given value. This is useful for
30461// getting updates only after the object has changed since the last
30462// request. Use googleapi.IsNotModified to check whether the response
30463// error from Do is the result of In-None-Match.
30464func (c *ProjectsLocationsAgentsTestCasesCalculateCoverageCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsTestCasesCalculateCoverageCall {
30465	c.ifNoneMatch_ = entityTag
30466	return c
30467}
30468
30469// Context sets the context to be used in this call's Do method. Any
30470// pending HTTP request will be aborted if the provided context is
30471// canceled.
30472func (c *ProjectsLocationsAgentsTestCasesCalculateCoverageCall) Context(ctx context.Context) *ProjectsLocationsAgentsTestCasesCalculateCoverageCall {
30473	c.ctx_ = ctx
30474	return c
30475}
30476
30477// Header returns an http.Header that can be modified by the caller to
30478// add HTTP headers to the request.
30479func (c *ProjectsLocationsAgentsTestCasesCalculateCoverageCall) Header() http.Header {
30480	if c.header_ == nil {
30481		c.header_ = make(http.Header)
30482	}
30483	return c.header_
30484}
30485
30486func (c *ProjectsLocationsAgentsTestCasesCalculateCoverageCall) doRequest(alt string) (*http.Response, error) {
30487	reqHeaders := make(http.Header)
30488	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
30489	for k, v := range c.header_ {
30490		reqHeaders[k] = v
30491	}
30492	reqHeaders.Set("User-Agent", c.s.userAgent())
30493	if c.ifNoneMatch_ != "" {
30494		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
30495	}
30496	var body io.Reader = nil
30497	c.urlParams_.Set("alt", alt)
30498	c.urlParams_.Set("prettyPrint", "false")
30499	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+agent}/testCases:calculateCoverage")
30500	urls += "?" + c.urlParams_.Encode()
30501	req, err := http.NewRequest("GET", urls, body)
30502	if err != nil {
30503		return nil, err
30504	}
30505	req.Header = reqHeaders
30506	googleapi.Expand(req.URL, map[string]string{
30507		"agent": c.agent,
30508	})
30509	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30510}
30511
30512// Do executes the "dialogflow.projects.locations.agents.testCases.calculateCoverage" call.
30513// Exactly one of *GoogleCloudDialogflowCxV3CalculateCoverageResponse or
30514// error will be non-nil. Any non-2xx status code is an error. Response
30515// headers are in either
30516// *GoogleCloudDialogflowCxV3CalculateCoverageResponse.ServerResponse.Hea
30517// der or (if a response was returned at all) in
30518// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
30519// whether the returned error was because http.StatusNotModified was
30520// returned.
30521func (c *ProjectsLocationsAgentsTestCasesCalculateCoverageCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3CalculateCoverageResponse, error) {
30522	gensupport.SetOptions(c.urlParams_, opts...)
30523	res, err := c.doRequest("json")
30524	if res != nil && res.StatusCode == http.StatusNotModified {
30525		if res.Body != nil {
30526			res.Body.Close()
30527		}
30528		return nil, &googleapi.Error{
30529			Code:   res.StatusCode,
30530			Header: res.Header,
30531		}
30532	}
30533	if err != nil {
30534		return nil, err
30535	}
30536	defer googleapi.CloseBody(res)
30537	if err := googleapi.CheckResponse(res); err != nil {
30538		return nil, err
30539	}
30540	ret := &GoogleCloudDialogflowCxV3CalculateCoverageResponse{
30541		ServerResponse: googleapi.ServerResponse{
30542			Header:         res.Header,
30543			HTTPStatusCode: res.StatusCode,
30544		},
30545	}
30546	target := &ret
30547	if err := gensupport.DecodeResponse(target, res); err != nil {
30548		return nil, err
30549	}
30550	return ret, nil
30551	// {
30552	//   "description": "Calculates the test coverage for an agent.",
30553	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/testCases:calculateCoverage",
30554	//   "httpMethod": "GET",
30555	//   "id": "dialogflow.projects.locations.agents.testCases.calculateCoverage",
30556	//   "parameterOrder": [
30557	//     "agent"
30558	//   ],
30559	//   "parameters": {
30560	//     "agent": {
30561	//       "description": "Required. The agent to calculate coverage for. Format: `projects//locations//agents/`.",
30562	//       "location": "path",
30563	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
30564	//       "required": true,
30565	//       "type": "string"
30566	//     },
30567	//     "type": {
30568	//       "description": "Required. The type of coverage requested.",
30569	//       "enum": [
30570	//         "COVERAGE_TYPE_UNSPECIFIED",
30571	//         "INTENT",
30572	//         "PAGE_TRANSITION",
30573	//         "TRANSITION_ROUTE_GROUP"
30574	//       ],
30575	//       "enumDescriptions": [
30576	//         "Should never be used.",
30577	//         "Intent coverage.",
30578	//         "Page transition coverage.",
30579	//         "Transition route group coverage."
30580	//       ],
30581	//       "location": "query",
30582	//       "type": "string"
30583	//     }
30584	//   },
30585	//   "path": "v3/{+agent}/testCases:calculateCoverage",
30586	//   "response": {
30587	//     "$ref": "GoogleCloudDialogflowCxV3CalculateCoverageResponse"
30588	//   },
30589	//   "scopes": [
30590	//     "https://www.googleapis.com/auth/cloud-platform",
30591	//     "https://www.googleapis.com/auth/dialogflow"
30592	//   ]
30593	// }
30594
30595}
30596
30597// method id "dialogflow.projects.locations.agents.testCases.create":
30598
30599type ProjectsLocationsAgentsTestCasesCreateCall struct {
30600	s                                 *Service
30601	parent                            string
30602	googleclouddialogflowcxv3testcase *GoogleCloudDialogflowCxV3TestCase
30603	urlParams_                        gensupport.URLParams
30604	ctx_                              context.Context
30605	header_                           http.Header
30606}
30607
30608// Create: Creates a test case for the given agent.
30609//
30610// - parent: The agent to create the test case for. Format:
30611//   `projects//locations//agents/`.
30612func (r *ProjectsLocationsAgentsTestCasesService) Create(parent string, googleclouddialogflowcxv3testcase *GoogleCloudDialogflowCxV3TestCase) *ProjectsLocationsAgentsTestCasesCreateCall {
30613	c := &ProjectsLocationsAgentsTestCasesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30614	c.parent = parent
30615	c.googleclouddialogflowcxv3testcase = googleclouddialogflowcxv3testcase
30616	return c
30617}
30618
30619// Fields allows partial responses to be retrieved. See
30620// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30621// for more information.
30622func (c *ProjectsLocationsAgentsTestCasesCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsTestCasesCreateCall {
30623	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30624	return c
30625}
30626
30627// Context sets the context to be used in this call's Do method. Any
30628// pending HTTP request will be aborted if the provided context is
30629// canceled.
30630func (c *ProjectsLocationsAgentsTestCasesCreateCall) Context(ctx context.Context) *ProjectsLocationsAgentsTestCasesCreateCall {
30631	c.ctx_ = ctx
30632	return c
30633}
30634
30635// Header returns an http.Header that can be modified by the caller to
30636// add HTTP headers to the request.
30637func (c *ProjectsLocationsAgentsTestCasesCreateCall) Header() http.Header {
30638	if c.header_ == nil {
30639		c.header_ = make(http.Header)
30640	}
30641	return c.header_
30642}
30643
30644func (c *ProjectsLocationsAgentsTestCasesCreateCall) doRequest(alt string) (*http.Response, error) {
30645	reqHeaders := make(http.Header)
30646	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
30647	for k, v := range c.header_ {
30648		reqHeaders[k] = v
30649	}
30650	reqHeaders.Set("User-Agent", c.s.userAgent())
30651	var body io.Reader = nil
30652	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3testcase)
30653	if err != nil {
30654		return nil, err
30655	}
30656	reqHeaders.Set("Content-Type", "application/json")
30657	c.urlParams_.Set("alt", alt)
30658	c.urlParams_.Set("prettyPrint", "false")
30659	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/testCases")
30660	urls += "?" + c.urlParams_.Encode()
30661	req, err := http.NewRequest("POST", urls, body)
30662	if err != nil {
30663		return nil, err
30664	}
30665	req.Header = reqHeaders
30666	googleapi.Expand(req.URL, map[string]string{
30667		"parent": c.parent,
30668	})
30669	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30670}
30671
30672// Do executes the "dialogflow.projects.locations.agents.testCases.create" call.
30673// Exactly one of *GoogleCloudDialogflowCxV3TestCase or error will be
30674// non-nil. Any non-2xx status code is an error. Response headers are in
30675// either *GoogleCloudDialogflowCxV3TestCase.ServerResponse.Header or
30676// (if a response was returned at all) in
30677// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
30678// whether the returned error was because http.StatusNotModified was
30679// returned.
30680func (c *ProjectsLocationsAgentsTestCasesCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3TestCase, error) {
30681	gensupport.SetOptions(c.urlParams_, opts...)
30682	res, err := c.doRequest("json")
30683	if res != nil && res.StatusCode == http.StatusNotModified {
30684		if res.Body != nil {
30685			res.Body.Close()
30686		}
30687		return nil, &googleapi.Error{
30688			Code:   res.StatusCode,
30689			Header: res.Header,
30690		}
30691	}
30692	if err != nil {
30693		return nil, err
30694	}
30695	defer googleapi.CloseBody(res)
30696	if err := googleapi.CheckResponse(res); err != nil {
30697		return nil, err
30698	}
30699	ret := &GoogleCloudDialogflowCxV3TestCase{
30700		ServerResponse: googleapi.ServerResponse{
30701			Header:         res.Header,
30702			HTTPStatusCode: res.StatusCode,
30703		},
30704	}
30705	target := &ret
30706	if err := gensupport.DecodeResponse(target, res); err != nil {
30707		return nil, err
30708	}
30709	return ret, nil
30710	// {
30711	//   "description": "Creates a test case for the given agent.",
30712	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/testCases",
30713	//   "httpMethod": "POST",
30714	//   "id": "dialogflow.projects.locations.agents.testCases.create",
30715	//   "parameterOrder": [
30716	//     "parent"
30717	//   ],
30718	//   "parameters": {
30719	//     "parent": {
30720	//       "description": "Required. The agent to create the test case for. Format: `projects//locations//agents/`.",
30721	//       "location": "path",
30722	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
30723	//       "required": true,
30724	//       "type": "string"
30725	//     }
30726	//   },
30727	//   "path": "v3/{+parent}/testCases",
30728	//   "request": {
30729	//     "$ref": "GoogleCloudDialogflowCxV3TestCase"
30730	//   },
30731	//   "response": {
30732	//     "$ref": "GoogleCloudDialogflowCxV3TestCase"
30733	//   },
30734	//   "scopes": [
30735	//     "https://www.googleapis.com/auth/cloud-platform",
30736	//     "https://www.googleapis.com/auth/dialogflow"
30737	//   ]
30738	// }
30739
30740}
30741
30742// method id "dialogflow.projects.locations.agents.testCases.export":
30743
30744type ProjectsLocationsAgentsTestCasesExportCall struct {
30745	s                                               *Service
30746	parent                                          string
30747	googleclouddialogflowcxv3exporttestcasesrequest *GoogleCloudDialogflowCxV3ExportTestCasesRequest
30748	urlParams_                                      gensupport.URLParams
30749	ctx_                                            context.Context
30750	header_                                         http.Header
30751}
30752
30753// Export: Exports the test cases under the agent to a Cloud Storage
30754// bucket or a local file. Filter can be applied to export a subset of
30755// test cases.
30756//
30757// - parent: The agent where to export test cases from. Format:
30758//   `projects//locations//agents/`.
30759func (r *ProjectsLocationsAgentsTestCasesService) Export(parent string, googleclouddialogflowcxv3exporttestcasesrequest *GoogleCloudDialogflowCxV3ExportTestCasesRequest) *ProjectsLocationsAgentsTestCasesExportCall {
30760	c := &ProjectsLocationsAgentsTestCasesExportCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30761	c.parent = parent
30762	c.googleclouddialogflowcxv3exporttestcasesrequest = googleclouddialogflowcxv3exporttestcasesrequest
30763	return c
30764}
30765
30766// Fields allows partial responses to be retrieved. See
30767// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30768// for more information.
30769func (c *ProjectsLocationsAgentsTestCasesExportCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsTestCasesExportCall {
30770	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30771	return c
30772}
30773
30774// Context sets the context to be used in this call's Do method. Any
30775// pending HTTP request will be aborted if the provided context is
30776// canceled.
30777func (c *ProjectsLocationsAgentsTestCasesExportCall) Context(ctx context.Context) *ProjectsLocationsAgentsTestCasesExportCall {
30778	c.ctx_ = ctx
30779	return c
30780}
30781
30782// Header returns an http.Header that can be modified by the caller to
30783// add HTTP headers to the request.
30784func (c *ProjectsLocationsAgentsTestCasesExportCall) Header() http.Header {
30785	if c.header_ == nil {
30786		c.header_ = make(http.Header)
30787	}
30788	return c.header_
30789}
30790
30791func (c *ProjectsLocationsAgentsTestCasesExportCall) doRequest(alt string) (*http.Response, error) {
30792	reqHeaders := make(http.Header)
30793	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
30794	for k, v := range c.header_ {
30795		reqHeaders[k] = v
30796	}
30797	reqHeaders.Set("User-Agent", c.s.userAgent())
30798	var body io.Reader = nil
30799	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3exporttestcasesrequest)
30800	if err != nil {
30801		return nil, err
30802	}
30803	reqHeaders.Set("Content-Type", "application/json")
30804	c.urlParams_.Set("alt", alt)
30805	c.urlParams_.Set("prettyPrint", "false")
30806	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/testCases:export")
30807	urls += "?" + c.urlParams_.Encode()
30808	req, err := http.NewRequest("POST", urls, body)
30809	if err != nil {
30810		return nil, err
30811	}
30812	req.Header = reqHeaders
30813	googleapi.Expand(req.URL, map[string]string{
30814		"parent": c.parent,
30815	})
30816	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30817}
30818
30819// Do executes the "dialogflow.projects.locations.agents.testCases.export" call.
30820// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
30821// Any non-2xx status code is an error. Response headers are in either
30822// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
30823// was returned at all) in error.(*googleapi.Error).Header. Use
30824// googleapi.IsNotModified to check whether the returned error was
30825// because http.StatusNotModified was returned.
30826func (c *ProjectsLocationsAgentsTestCasesExportCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
30827	gensupport.SetOptions(c.urlParams_, opts...)
30828	res, err := c.doRequest("json")
30829	if res != nil && res.StatusCode == http.StatusNotModified {
30830		if res.Body != nil {
30831			res.Body.Close()
30832		}
30833		return nil, &googleapi.Error{
30834			Code:   res.StatusCode,
30835			Header: res.Header,
30836		}
30837	}
30838	if err != nil {
30839		return nil, err
30840	}
30841	defer googleapi.CloseBody(res)
30842	if err := googleapi.CheckResponse(res); err != nil {
30843		return nil, err
30844	}
30845	ret := &GoogleLongrunningOperation{
30846		ServerResponse: googleapi.ServerResponse{
30847			Header:         res.Header,
30848			HTTPStatusCode: res.StatusCode,
30849		},
30850	}
30851	target := &ret
30852	if err := gensupport.DecodeResponse(target, res); err != nil {
30853		return nil, err
30854	}
30855	return ret, nil
30856	// {
30857	//   "description": "Exports the test cases under the agent to a Cloud Storage bucket or a local file. Filter can be applied to export a subset of test cases.",
30858	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/testCases:export",
30859	//   "httpMethod": "POST",
30860	//   "id": "dialogflow.projects.locations.agents.testCases.export",
30861	//   "parameterOrder": [
30862	//     "parent"
30863	//   ],
30864	//   "parameters": {
30865	//     "parent": {
30866	//       "description": "Required. The agent where to export test cases from. Format: `projects//locations//agents/`.",
30867	//       "location": "path",
30868	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
30869	//       "required": true,
30870	//       "type": "string"
30871	//     }
30872	//   },
30873	//   "path": "v3/{+parent}/testCases:export",
30874	//   "request": {
30875	//     "$ref": "GoogleCloudDialogflowCxV3ExportTestCasesRequest"
30876	//   },
30877	//   "response": {
30878	//     "$ref": "GoogleLongrunningOperation"
30879	//   },
30880	//   "scopes": [
30881	//     "https://www.googleapis.com/auth/cloud-platform",
30882	//     "https://www.googleapis.com/auth/dialogflow"
30883	//   ]
30884	// }
30885
30886}
30887
30888// method id "dialogflow.projects.locations.agents.testCases.get":
30889
30890type ProjectsLocationsAgentsTestCasesGetCall struct {
30891	s            *Service
30892	name         string
30893	urlParams_   gensupport.URLParams
30894	ifNoneMatch_ string
30895	ctx_         context.Context
30896	header_      http.Header
30897}
30898
30899// Get: Gets a test case.
30900//
30901// - name: The name of the testcase. Format:
30902//   `projects//locations//agents//testCases/`.
30903func (r *ProjectsLocationsAgentsTestCasesService) Get(name string) *ProjectsLocationsAgentsTestCasesGetCall {
30904	c := &ProjectsLocationsAgentsTestCasesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30905	c.name = name
30906	return c
30907}
30908
30909// Fields allows partial responses to be retrieved. See
30910// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30911// for more information.
30912func (c *ProjectsLocationsAgentsTestCasesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsTestCasesGetCall {
30913	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30914	return c
30915}
30916
30917// IfNoneMatch sets the optional parameter which makes the operation
30918// fail if the object's ETag matches the given value. This is useful for
30919// getting updates only after the object has changed since the last
30920// request. Use googleapi.IsNotModified to check whether the response
30921// error from Do is the result of In-None-Match.
30922func (c *ProjectsLocationsAgentsTestCasesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsTestCasesGetCall {
30923	c.ifNoneMatch_ = entityTag
30924	return c
30925}
30926
30927// Context sets the context to be used in this call's Do method. Any
30928// pending HTTP request will be aborted if the provided context is
30929// canceled.
30930func (c *ProjectsLocationsAgentsTestCasesGetCall) Context(ctx context.Context) *ProjectsLocationsAgentsTestCasesGetCall {
30931	c.ctx_ = ctx
30932	return c
30933}
30934
30935// Header returns an http.Header that can be modified by the caller to
30936// add HTTP headers to the request.
30937func (c *ProjectsLocationsAgentsTestCasesGetCall) Header() http.Header {
30938	if c.header_ == nil {
30939		c.header_ = make(http.Header)
30940	}
30941	return c.header_
30942}
30943
30944func (c *ProjectsLocationsAgentsTestCasesGetCall) doRequest(alt string) (*http.Response, error) {
30945	reqHeaders := make(http.Header)
30946	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
30947	for k, v := range c.header_ {
30948		reqHeaders[k] = v
30949	}
30950	reqHeaders.Set("User-Agent", c.s.userAgent())
30951	if c.ifNoneMatch_ != "" {
30952		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
30953	}
30954	var body io.Reader = nil
30955	c.urlParams_.Set("alt", alt)
30956	c.urlParams_.Set("prettyPrint", "false")
30957	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
30958	urls += "?" + c.urlParams_.Encode()
30959	req, err := http.NewRequest("GET", urls, body)
30960	if err != nil {
30961		return nil, err
30962	}
30963	req.Header = reqHeaders
30964	googleapi.Expand(req.URL, map[string]string{
30965		"name": c.name,
30966	})
30967	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30968}
30969
30970// Do executes the "dialogflow.projects.locations.agents.testCases.get" call.
30971// Exactly one of *GoogleCloudDialogflowCxV3TestCase or error will be
30972// non-nil. Any non-2xx status code is an error. Response headers are in
30973// either *GoogleCloudDialogflowCxV3TestCase.ServerResponse.Header or
30974// (if a response was returned at all) in
30975// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
30976// whether the returned error was because http.StatusNotModified was
30977// returned.
30978func (c *ProjectsLocationsAgentsTestCasesGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3TestCase, error) {
30979	gensupport.SetOptions(c.urlParams_, opts...)
30980	res, err := c.doRequest("json")
30981	if res != nil && res.StatusCode == http.StatusNotModified {
30982		if res.Body != nil {
30983			res.Body.Close()
30984		}
30985		return nil, &googleapi.Error{
30986			Code:   res.StatusCode,
30987			Header: res.Header,
30988		}
30989	}
30990	if err != nil {
30991		return nil, err
30992	}
30993	defer googleapi.CloseBody(res)
30994	if err := googleapi.CheckResponse(res); err != nil {
30995		return nil, err
30996	}
30997	ret := &GoogleCloudDialogflowCxV3TestCase{
30998		ServerResponse: googleapi.ServerResponse{
30999			Header:         res.Header,
31000			HTTPStatusCode: res.StatusCode,
31001		},
31002	}
31003	target := &ret
31004	if err := gensupport.DecodeResponse(target, res); err != nil {
31005		return nil, err
31006	}
31007	return ret, nil
31008	// {
31009	//   "description": "Gets a test case.",
31010	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/testCases/{testCasesId}",
31011	//   "httpMethod": "GET",
31012	//   "id": "dialogflow.projects.locations.agents.testCases.get",
31013	//   "parameterOrder": [
31014	//     "name"
31015	//   ],
31016	//   "parameters": {
31017	//     "name": {
31018	//       "description": "Required. The name of the testcase. Format: `projects//locations//agents//testCases/`.",
31019	//       "location": "path",
31020	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/testCases/[^/]+$",
31021	//       "required": true,
31022	//       "type": "string"
31023	//     }
31024	//   },
31025	//   "path": "v3/{+name}",
31026	//   "response": {
31027	//     "$ref": "GoogleCloudDialogflowCxV3TestCase"
31028	//   },
31029	//   "scopes": [
31030	//     "https://www.googleapis.com/auth/cloud-platform",
31031	//     "https://www.googleapis.com/auth/dialogflow"
31032	//   ]
31033	// }
31034
31035}
31036
31037// method id "dialogflow.projects.locations.agents.testCases.import":
31038
31039type ProjectsLocationsAgentsTestCasesImportCall struct {
31040	s                                               *Service
31041	parent                                          string
31042	googleclouddialogflowcxv3importtestcasesrequest *GoogleCloudDialogflowCxV3ImportTestCasesRequest
31043	urlParams_                                      gensupport.URLParams
31044	ctx_                                            context.Context
31045	header_                                         http.Header
31046}
31047
31048// Import: Imports the test cases from a Cloud Storage bucket or a local
31049// file. It always creates new test cases and won't overwite any
31050// existing ones. The provided ID in the imported test case is
31051// neglected.
31052//
31053// - parent: The agent to import test cases to. Format:
31054//   `projects//locations//agents/`.
31055func (r *ProjectsLocationsAgentsTestCasesService) Import(parent string, googleclouddialogflowcxv3importtestcasesrequest *GoogleCloudDialogflowCxV3ImportTestCasesRequest) *ProjectsLocationsAgentsTestCasesImportCall {
31056	c := &ProjectsLocationsAgentsTestCasesImportCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31057	c.parent = parent
31058	c.googleclouddialogflowcxv3importtestcasesrequest = googleclouddialogflowcxv3importtestcasesrequest
31059	return c
31060}
31061
31062// Fields allows partial responses to be retrieved. See
31063// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31064// for more information.
31065func (c *ProjectsLocationsAgentsTestCasesImportCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsTestCasesImportCall {
31066	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31067	return c
31068}
31069
31070// Context sets the context to be used in this call's Do method. Any
31071// pending HTTP request will be aborted if the provided context is
31072// canceled.
31073func (c *ProjectsLocationsAgentsTestCasesImportCall) Context(ctx context.Context) *ProjectsLocationsAgentsTestCasesImportCall {
31074	c.ctx_ = ctx
31075	return c
31076}
31077
31078// Header returns an http.Header that can be modified by the caller to
31079// add HTTP headers to the request.
31080func (c *ProjectsLocationsAgentsTestCasesImportCall) Header() http.Header {
31081	if c.header_ == nil {
31082		c.header_ = make(http.Header)
31083	}
31084	return c.header_
31085}
31086
31087func (c *ProjectsLocationsAgentsTestCasesImportCall) doRequest(alt string) (*http.Response, error) {
31088	reqHeaders := make(http.Header)
31089	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
31090	for k, v := range c.header_ {
31091		reqHeaders[k] = v
31092	}
31093	reqHeaders.Set("User-Agent", c.s.userAgent())
31094	var body io.Reader = nil
31095	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3importtestcasesrequest)
31096	if err != nil {
31097		return nil, err
31098	}
31099	reqHeaders.Set("Content-Type", "application/json")
31100	c.urlParams_.Set("alt", alt)
31101	c.urlParams_.Set("prettyPrint", "false")
31102	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/testCases:import")
31103	urls += "?" + c.urlParams_.Encode()
31104	req, err := http.NewRequest("POST", urls, body)
31105	if err != nil {
31106		return nil, err
31107	}
31108	req.Header = reqHeaders
31109	googleapi.Expand(req.URL, map[string]string{
31110		"parent": c.parent,
31111	})
31112	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31113}
31114
31115// Do executes the "dialogflow.projects.locations.agents.testCases.import" call.
31116// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
31117// Any non-2xx status code is an error. Response headers are in either
31118// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
31119// was returned at all) in error.(*googleapi.Error).Header. Use
31120// googleapi.IsNotModified to check whether the returned error was
31121// because http.StatusNotModified was returned.
31122func (c *ProjectsLocationsAgentsTestCasesImportCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
31123	gensupport.SetOptions(c.urlParams_, opts...)
31124	res, err := c.doRequest("json")
31125	if res != nil && res.StatusCode == http.StatusNotModified {
31126		if res.Body != nil {
31127			res.Body.Close()
31128		}
31129		return nil, &googleapi.Error{
31130			Code:   res.StatusCode,
31131			Header: res.Header,
31132		}
31133	}
31134	if err != nil {
31135		return nil, err
31136	}
31137	defer googleapi.CloseBody(res)
31138	if err := googleapi.CheckResponse(res); err != nil {
31139		return nil, err
31140	}
31141	ret := &GoogleLongrunningOperation{
31142		ServerResponse: googleapi.ServerResponse{
31143			Header:         res.Header,
31144			HTTPStatusCode: res.StatusCode,
31145		},
31146	}
31147	target := &ret
31148	if err := gensupport.DecodeResponse(target, res); err != nil {
31149		return nil, err
31150	}
31151	return ret, nil
31152	// {
31153	//   "description": "Imports the test cases from a Cloud Storage bucket or a local file. It always creates new test cases and won't overwite any existing ones. The provided ID in the imported test case is neglected.",
31154	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/testCases:import",
31155	//   "httpMethod": "POST",
31156	//   "id": "dialogflow.projects.locations.agents.testCases.import",
31157	//   "parameterOrder": [
31158	//     "parent"
31159	//   ],
31160	//   "parameters": {
31161	//     "parent": {
31162	//       "description": "Required. The agent to import test cases to. Format: `projects//locations//agents/`.",
31163	//       "location": "path",
31164	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
31165	//       "required": true,
31166	//       "type": "string"
31167	//     }
31168	//   },
31169	//   "path": "v3/{+parent}/testCases:import",
31170	//   "request": {
31171	//     "$ref": "GoogleCloudDialogflowCxV3ImportTestCasesRequest"
31172	//   },
31173	//   "response": {
31174	//     "$ref": "GoogleLongrunningOperation"
31175	//   },
31176	//   "scopes": [
31177	//     "https://www.googleapis.com/auth/cloud-platform",
31178	//     "https://www.googleapis.com/auth/dialogflow"
31179	//   ]
31180	// }
31181
31182}
31183
31184// method id "dialogflow.projects.locations.agents.testCases.list":
31185
31186type ProjectsLocationsAgentsTestCasesListCall struct {
31187	s            *Service
31188	parent       string
31189	urlParams_   gensupport.URLParams
31190	ifNoneMatch_ string
31191	ctx_         context.Context
31192	header_      http.Header
31193}
31194
31195// List: Fetches a list of test cases for a given agent.
31196//
31197// - parent: The agent to list all pages for. Format:
31198//   `projects//locations//agents/`.
31199func (r *ProjectsLocationsAgentsTestCasesService) List(parent string) *ProjectsLocationsAgentsTestCasesListCall {
31200	c := &ProjectsLocationsAgentsTestCasesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31201	c.parent = parent
31202	return c
31203}
31204
31205// PageSize sets the optional parameter "pageSize": The maximum number
31206// of items to return in a single page. By default 20. Note that when
31207// TestCaseView = FULL, the maximum page size allowed is 20. When
31208// TestCaseView = BASIC, the maximum page size allowed is 500.
31209func (c *ProjectsLocationsAgentsTestCasesListCall) PageSize(pageSize int64) *ProjectsLocationsAgentsTestCasesListCall {
31210	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
31211	return c
31212}
31213
31214// PageToken sets the optional parameter "pageToken": The
31215// next_page_token value returned from a previous list request.
31216func (c *ProjectsLocationsAgentsTestCasesListCall) PageToken(pageToken string) *ProjectsLocationsAgentsTestCasesListCall {
31217	c.urlParams_.Set("pageToken", pageToken)
31218	return c
31219}
31220
31221// View sets the optional parameter "view": Specifies whether response
31222// should include all fields or just the metadata.
31223//
31224// Possible values:
31225//   "TEST_CASE_VIEW_UNSPECIFIED" - The default / unset value. The API
31226// will default to the BASIC view.
31227//   "BASIC" - Include basic metadata about the test case, but not the
31228// conversation turns. This is the default value.
31229//   "FULL" - Include everything.
31230func (c *ProjectsLocationsAgentsTestCasesListCall) View(view string) *ProjectsLocationsAgentsTestCasesListCall {
31231	c.urlParams_.Set("view", view)
31232	return c
31233}
31234
31235// Fields allows partial responses to be retrieved. See
31236// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31237// for more information.
31238func (c *ProjectsLocationsAgentsTestCasesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsTestCasesListCall {
31239	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31240	return c
31241}
31242
31243// IfNoneMatch sets the optional parameter which makes the operation
31244// fail if the object's ETag matches the given value. This is useful for
31245// getting updates only after the object has changed since the last
31246// request. Use googleapi.IsNotModified to check whether the response
31247// error from Do is the result of In-None-Match.
31248func (c *ProjectsLocationsAgentsTestCasesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsTestCasesListCall {
31249	c.ifNoneMatch_ = entityTag
31250	return c
31251}
31252
31253// Context sets the context to be used in this call's Do method. Any
31254// pending HTTP request will be aborted if the provided context is
31255// canceled.
31256func (c *ProjectsLocationsAgentsTestCasesListCall) Context(ctx context.Context) *ProjectsLocationsAgentsTestCasesListCall {
31257	c.ctx_ = ctx
31258	return c
31259}
31260
31261// Header returns an http.Header that can be modified by the caller to
31262// add HTTP headers to the request.
31263func (c *ProjectsLocationsAgentsTestCasesListCall) Header() http.Header {
31264	if c.header_ == nil {
31265		c.header_ = make(http.Header)
31266	}
31267	return c.header_
31268}
31269
31270func (c *ProjectsLocationsAgentsTestCasesListCall) doRequest(alt string) (*http.Response, error) {
31271	reqHeaders := make(http.Header)
31272	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
31273	for k, v := range c.header_ {
31274		reqHeaders[k] = v
31275	}
31276	reqHeaders.Set("User-Agent", c.s.userAgent())
31277	if c.ifNoneMatch_ != "" {
31278		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
31279	}
31280	var body io.Reader = nil
31281	c.urlParams_.Set("alt", alt)
31282	c.urlParams_.Set("prettyPrint", "false")
31283	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/testCases")
31284	urls += "?" + c.urlParams_.Encode()
31285	req, err := http.NewRequest("GET", urls, body)
31286	if err != nil {
31287		return nil, err
31288	}
31289	req.Header = reqHeaders
31290	googleapi.Expand(req.URL, map[string]string{
31291		"parent": c.parent,
31292	})
31293	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31294}
31295
31296// Do executes the "dialogflow.projects.locations.agents.testCases.list" call.
31297// Exactly one of *GoogleCloudDialogflowCxV3ListTestCasesResponse or
31298// error will be non-nil. Any non-2xx status code is an error. Response
31299// headers are in either
31300// *GoogleCloudDialogflowCxV3ListTestCasesResponse.ServerResponse.Header
31301// or (if a response was returned at all) in
31302// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
31303// whether the returned error was because http.StatusNotModified was
31304// returned.
31305func (c *ProjectsLocationsAgentsTestCasesListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3ListTestCasesResponse, error) {
31306	gensupport.SetOptions(c.urlParams_, opts...)
31307	res, err := c.doRequest("json")
31308	if res != nil && res.StatusCode == http.StatusNotModified {
31309		if res.Body != nil {
31310			res.Body.Close()
31311		}
31312		return nil, &googleapi.Error{
31313			Code:   res.StatusCode,
31314			Header: res.Header,
31315		}
31316	}
31317	if err != nil {
31318		return nil, err
31319	}
31320	defer googleapi.CloseBody(res)
31321	if err := googleapi.CheckResponse(res); err != nil {
31322		return nil, err
31323	}
31324	ret := &GoogleCloudDialogflowCxV3ListTestCasesResponse{
31325		ServerResponse: googleapi.ServerResponse{
31326			Header:         res.Header,
31327			HTTPStatusCode: res.StatusCode,
31328		},
31329	}
31330	target := &ret
31331	if err := gensupport.DecodeResponse(target, res); err != nil {
31332		return nil, err
31333	}
31334	return ret, nil
31335	// {
31336	//   "description": "Fetches a list of test cases for a given agent.",
31337	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/testCases",
31338	//   "httpMethod": "GET",
31339	//   "id": "dialogflow.projects.locations.agents.testCases.list",
31340	//   "parameterOrder": [
31341	//     "parent"
31342	//   ],
31343	//   "parameters": {
31344	//     "pageSize": {
31345	//       "description": "The maximum number of items to return in a single page. By default 20. Note that when TestCaseView = FULL, the maximum page size allowed is 20. When TestCaseView = BASIC, the maximum page size allowed is 500.",
31346	//       "format": "int32",
31347	//       "location": "query",
31348	//       "type": "integer"
31349	//     },
31350	//     "pageToken": {
31351	//       "description": "The next_page_token value returned from a previous list request.",
31352	//       "location": "query",
31353	//       "type": "string"
31354	//     },
31355	//     "parent": {
31356	//       "description": "Required. The agent to list all pages for. Format: `projects//locations//agents/`.",
31357	//       "location": "path",
31358	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
31359	//       "required": true,
31360	//       "type": "string"
31361	//     },
31362	//     "view": {
31363	//       "description": "Specifies whether response should include all fields or just the metadata.",
31364	//       "enum": [
31365	//         "TEST_CASE_VIEW_UNSPECIFIED",
31366	//         "BASIC",
31367	//         "FULL"
31368	//       ],
31369	//       "enumDescriptions": [
31370	//         "The default / unset value. The API will default to the BASIC view.",
31371	//         "Include basic metadata about the test case, but not the conversation turns. This is the default value.",
31372	//         "Include everything."
31373	//       ],
31374	//       "location": "query",
31375	//       "type": "string"
31376	//     }
31377	//   },
31378	//   "path": "v3/{+parent}/testCases",
31379	//   "response": {
31380	//     "$ref": "GoogleCloudDialogflowCxV3ListTestCasesResponse"
31381	//   },
31382	//   "scopes": [
31383	//     "https://www.googleapis.com/auth/cloud-platform",
31384	//     "https://www.googleapis.com/auth/dialogflow"
31385	//   ]
31386	// }
31387
31388}
31389
31390// Pages invokes f for each page of results.
31391// A non-nil error returned from f will halt the iteration.
31392// The provided context supersedes any context provided to the Context method.
31393func (c *ProjectsLocationsAgentsTestCasesListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3ListTestCasesResponse) error) error {
31394	c.ctx_ = ctx
31395	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
31396	for {
31397		x, err := c.Do()
31398		if err != nil {
31399			return err
31400		}
31401		if err := f(x); err != nil {
31402			return err
31403		}
31404		if x.NextPageToken == "" {
31405			return nil
31406		}
31407		c.PageToken(x.NextPageToken)
31408	}
31409}
31410
31411// method id "dialogflow.projects.locations.agents.testCases.patch":
31412
31413type ProjectsLocationsAgentsTestCasesPatchCall struct {
31414	s                                 *Service
31415	nameid                            string
31416	googleclouddialogflowcxv3testcase *GoogleCloudDialogflowCxV3TestCase
31417	urlParams_                        gensupport.URLParams
31418	ctx_                              context.Context
31419	header_                           http.Header
31420}
31421
31422// Patch: Updates the specified test case.
31423//
31424// - name: The unique identifier of the test case.
31425//   TestCases.CreateTestCase will populate the name automatically.
31426//   Otherwise use format: `projects//locations//agents/ /testCases/`.
31427func (r *ProjectsLocationsAgentsTestCasesService) Patch(nameid string, googleclouddialogflowcxv3testcase *GoogleCloudDialogflowCxV3TestCase) *ProjectsLocationsAgentsTestCasesPatchCall {
31428	c := &ProjectsLocationsAgentsTestCasesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31429	c.nameid = nameid
31430	c.googleclouddialogflowcxv3testcase = googleclouddialogflowcxv3testcase
31431	return c
31432}
31433
31434// UpdateMask sets the optional parameter "updateMask": Required. The
31435// mask to specify which fields should be updated. The `creationTime`
31436// and `lastTestResult` cannot be updated.
31437func (c *ProjectsLocationsAgentsTestCasesPatchCall) UpdateMask(updateMask string) *ProjectsLocationsAgentsTestCasesPatchCall {
31438	c.urlParams_.Set("updateMask", updateMask)
31439	return c
31440}
31441
31442// Fields allows partial responses to be retrieved. See
31443// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31444// for more information.
31445func (c *ProjectsLocationsAgentsTestCasesPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsTestCasesPatchCall {
31446	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31447	return c
31448}
31449
31450// Context sets the context to be used in this call's Do method. Any
31451// pending HTTP request will be aborted if the provided context is
31452// canceled.
31453func (c *ProjectsLocationsAgentsTestCasesPatchCall) Context(ctx context.Context) *ProjectsLocationsAgentsTestCasesPatchCall {
31454	c.ctx_ = ctx
31455	return c
31456}
31457
31458// Header returns an http.Header that can be modified by the caller to
31459// add HTTP headers to the request.
31460func (c *ProjectsLocationsAgentsTestCasesPatchCall) Header() http.Header {
31461	if c.header_ == nil {
31462		c.header_ = make(http.Header)
31463	}
31464	return c.header_
31465}
31466
31467func (c *ProjectsLocationsAgentsTestCasesPatchCall) doRequest(alt string) (*http.Response, error) {
31468	reqHeaders := make(http.Header)
31469	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
31470	for k, v := range c.header_ {
31471		reqHeaders[k] = v
31472	}
31473	reqHeaders.Set("User-Agent", c.s.userAgent())
31474	var body io.Reader = nil
31475	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3testcase)
31476	if err != nil {
31477		return nil, err
31478	}
31479	reqHeaders.Set("Content-Type", "application/json")
31480	c.urlParams_.Set("alt", alt)
31481	c.urlParams_.Set("prettyPrint", "false")
31482	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
31483	urls += "?" + c.urlParams_.Encode()
31484	req, err := http.NewRequest("PATCH", urls, body)
31485	if err != nil {
31486		return nil, err
31487	}
31488	req.Header = reqHeaders
31489	googleapi.Expand(req.URL, map[string]string{
31490		"name": c.nameid,
31491	})
31492	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31493}
31494
31495// Do executes the "dialogflow.projects.locations.agents.testCases.patch" call.
31496// Exactly one of *GoogleCloudDialogflowCxV3TestCase or error will be
31497// non-nil. Any non-2xx status code is an error. Response headers are in
31498// either *GoogleCloudDialogflowCxV3TestCase.ServerResponse.Header or
31499// (if a response was returned at all) in
31500// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
31501// whether the returned error was because http.StatusNotModified was
31502// returned.
31503func (c *ProjectsLocationsAgentsTestCasesPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3TestCase, error) {
31504	gensupport.SetOptions(c.urlParams_, opts...)
31505	res, err := c.doRequest("json")
31506	if res != nil && res.StatusCode == http.StatusNotModified {
31507		if res.Body != nil {
31508			res.Body.Close()
31509		}
31510		return nil, &googleapi.Error{
31511			Code:   res.StatusCode,
31512			Header: res.Header,
31513		}
31514	}
31515	if err != nil {
31516		return nil, err
31517	}
31518	defer googleapi.CloseBody(res)
31519	if err := googleapi.CheckResponse(res); err != nil {
31520		return nil, err
31521	}
31522	ret := &GoogleCloudDialogflowCxV3TestCase{
31523		ServerResponse: googleapi.ServerResponse{
31524			Header:         res.Header,
31525			HTTPStatusCode: res.StatusCode,
31526		},
31527	}
31528	target := &ret
31529	if err := gensupport.DecodeResponse(target, res); err != nil {
31530		return nil, err
31531	}
31532	return ret, nil
31533	// {
31534	//   "description": "Updates the specified test case.",
31535	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/testCases/{testCasesId}",
31536	//   "httpMethod": "PATCH",
31537	//   "id": "dialogflow.projects.locations.agents.testCases.patch",
31538	//   "parameterOrder": [
31539	//     "name"
31540	//   ],
31541	//   "parameters": {
31542	//     "name": {
31543	//       "description": "The unique identifier of the test case. TestCases.CreateTestCase will populate the name automatically. Otherwise use format: `projects//locations//agents/ /testCases/`.",
31544	//       "location": "path",
31545	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/testCases/[^/]+$",
31546	//       "required": true,
31547	//       "type": "string"
31548	//     },
31549	//     "updateMask": {
31550	//       "description": "Required. The mask to specify which fields should be updated. The `creationTime` and `lastTestResult` cannot be updated.",
31551	//       "format": "google-fieldmask",
31552	//       "location": "query",
31553	//       "type": "string"
31554	//     }
31555	//   },
31556	//   "path": "v3/{+name}",
31557	//   "request": {
31558	//     "$ref": "GoogleCloudDialogflowCxV3TestCase"
31559	//   },
31560	//   "response": {
31561	//     "$ref": "GoogleCloudDialogflowCxV3TestCase"
31562	//   },
31563	//   "scopes": [
31564	//     "https://www.googleapis.com/auth/cloud-platform",
31565	//     "https://www.googleapis.com/auth/dialogflow"
31566	//   ]
31567	// }
31568
31569}
31570
31571// method id "dialogflow.projects.locations.agents.testCases.run":
31572
31573type ProjectsLocationsAgentsTestCasesRunCall struct {
31574	s                                           *Service
31575	name                                        string
31576	googleclouddialogflowcxv3runtestcaserequest *GoogleCloudDialogflowCxV3RunTestCaseRequest
31577	urlParams_                                  gensupport.URLParams
31578	ctx_                                        context.Context
31579	header_                                     http.Header
31580}
31581
31582// Run: Kicks off a test case run.
31583//
31584// - name: Format of test case name to run: `projects//locations/
31585//   /agents//testCases/`.
31586func (r *ProjectsLocationsAgentsTestCasesService) Run(name string, googleclouddialogflowcxv3runtestcaserequest *GoogleCloudDialogflowCxV3RunTestCaseRequest) *ProjectsLocationsAgentsTestCasesRunCall {
31587	c := &ProjectsLocationsAgentsTestCasesRunCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31588	c.name = name
31589	c.googleclouddialogflowcxv3runtestcaserequest = googleclouddialogflowcxv3runtestcaserequest
31590	return c
31591}
31592
31593// Fields allows partial responses to be retrieved. See
31594// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31595// for more information.
31596func (c *ProjectsLocationsAgentsTestCasesRunCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsTestCasesRunCall {
31597	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31598	return c
31599}
31600
31601// Context sets the context to be used in this call's Do method. Any
31602// pending HTTP request will be aborted if the provided context is
31603// canceled.
31604func (c *ProjectsLocationsAgentsTestCasesRunCall) Context(ctx context.Context) *ProjectsLocationsAgentsTestCasesRunCall {
31605	c.ctx_ = ctx
31606	return c
31607}
31608
31609// Header returns an http.Header that can be modified by the caller to
31610// add HTTP headers to the request.
31611func (c *ProjectsLocationsAgentsTestCasesRunCall) Header() http.Header {
31612	if c.header_ == nil {
31613		c.header_ = make(http.Header)
31614	}
31615	return c.header_
31616}
31617
31618func (c *ProjectsLocationsAgentsTestCasesRunCall) doRequest(alt string) (*http.Response, error) {
31619	reqHeaders := make(http.Header)
31620	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
31621	for k, v := range c.header_ {
31622		reqHeaders[k] = v
31623	}
31624	reqHeaders.Set("User-Agent", c.s.userAgent())
31625	var body io.Reader = nil
31626	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3runtestcaserequest)
31627	if err != nil {
31628		return nil, err
31629	}
31630	reqHeaders.Set("Content-Type", "application/json")
31631	c.urlParams_.Set("alt", alt)
31632	c.urlParams_.Set("prettyPrint", "false")
31633	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}:run")
31634	urls += "?" + c.urlParams_.Encode()
31635	req, err := http.NewRequest("POST", urls, body)
31636	if err != nil {
31637		return nil, err
31638	}
31639	req.Header = reqHeaders
31640	googleapi.Expand(req.URL, map[string]string{
31641		"name": c.name,
31642	})
31643	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31644}
31645
31646// Do executes the "dialogflow.projects.locations.agents.testCases.run" call.
31647// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
31648// Any non-2xx status code is an error. Response headers are in either
31649// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
31650// was returned at all) in error.(*googleapi.Error).Header. Use
31651// googleapi.IsNotModified to check whether the returned error was
31652// because http.StatusNotModified was returned.
31653func (c *ProjectsLocationsAgentsTestCasesRunCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
31654	gensupport.SetOptions(c.urlParams_, opts...)
31655	res, err := c.doRequest("json")
31656	if res != nil && res.StatusCode == http.StatusNotModified {
31657		if res.Body != nil {
31658			res.Body.Close()
31659		}
31660		return nil, &googleapi.Error{
31661			Code:   res.StatusCode,
31662			Header: res.Header,
31663		}
31664	}
31665	if err != nil {
31666		return nil, err
31667	}
31668	defer googleapi.CloseBody(res)
31669	if err := googleapi.CheckResponse(res); err != nil {
31670		return nil, err
31671	}
31672	ret := &GoogleLongrunningOperation{
31673		ServerResponse: googleapi.ServerResponse{
31674			Header:         res.Header,
31675			HTTPStatusCode: res.StatusCode,
31676		},
31677	}
31678	target := &ret
31679	if err := gensupport.DecodeResponse(target, res); err != nil {
31680		return nil, err
31681	}
31682	return ret, nil
31683	// {
31684	//   "description": "Kicks off a test case run.",
31685	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/testCases/{testCasesId}:run",
31686	//   "httpMethod": "POST",
31687	//   "id": "dialogflow.projects.locations.agents.testCases.run",
31688	//   "parameterOrder": [
31689	//     "name"
31690	//   ],
31691	//   "parameters": {
31692	//     "name": {
31693	//       "description": "Required. Format of test case name to run: `projects//locations/ /agents//testCases/`.",
31694	//       "location": "path",
31695	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/testCases/[^/]+$",
31696	//       "required": true,
31697	//       "type": "string"
31698	//     }
31699	//   },
31700	//   "path": "v3/{+name}:run",
31701	//   "request": {
31702	//     "$ref": "GoogleCloudDialogflowCxV3RunTestCaseRequest"
31703	//   },
31704	//   "response": {
31705	//     "$ref": "GoogleLongrunningOperation"
31706	//   },
31707	//   "scopes": [
31708	//     "https://www.googleapis.com/auth/cloud-platform",
31709	//     "https://www.googleapis.com/auth/dialogflow"
31710	//   ]
31711	// }
31712
31713}
31714
31715// method id "dialogflow.projects.locations.agents.testCases.results.get":
31716
31717type ProjectsLocationsAgentsTestCasesResultsGetCall struct {
31718	s            *Service
31719	name         string
31720	urlParams_   gensupport.URLParams
31721	ifNoneMatch_ string
31722	ctx_         context.Context
31723	header_      http.Header
31724}
31725
31726// Get: Gets a test case result.
31727//
31728// - name: The name of the testcase. Format:
31729//   `projects//locations//agents//testCases//results/`.
31730func (r *ProjectsLocationsAgentsTestCasesResultsService) Get(name string) *ProjectsLocationsAgentsTestCasesResultsGetCall {
31731	c := &ProjectsLocationsAgentsTestCasesResultsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31732	c.name = name
31733	return c
31734}
31735
31736// Fields allows partial responses to be retrieved. See
31737// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31738// for more information.
31739func (c *ProjectsLocationsAgentsTestCasesResultsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsTestCasesResultsGetCall {
31740	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31741	return c
31742}
31743
31744// IfNoneMatch sets the optional parameter which makes the operation
31745// fail if the object's ETag matches the given value. This is useful for
31746// getting updates only after the object has changed since the last
31747// request. Use googleapi.IsNotModified to check whether the response
31748// error from Do is the result of In-None-Match.
31749func (c *ProjectsLocationsAgentsTestCasesResultsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsTestCasesResultsGetCall {
31750	c.ifNoneMatch_ = entityTag
31751	return c
31752}
31753
31754// Context sets the context to be used in this call's Do method. Any
31755// pending HTTP request will be aborted if the provided context is
31756// canceled.
31757func (c *ProjectsLocationsAgentsTestCasesResultsGetCall) Context(ctx context.Context) *ProjectsLocationsAgentsTestCasesResultsGetCall {
31758	c.ctx_ = ctx
31759	return c
31760}
31761
31762// Header returns an http.Header that can be modified by the caller to
31763// add HTTP headers to the request.
31764func (c *ProjectsLocationsAgentsTestCasesResultsGetCall) Header() http.Header {
31765	if c.header_ == nil {
31766		c.header_ = make(http.Header)
31767	}
31768	return c.header_
31769}
31770
31771func (c *ProjectsLocationsAgentsTestCasesResultsGetCall) doRequest(alt string) (*http.Response, error) {
31772	reqHeaders := make(http.Header)
31773	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
31774	for k, v := range c.header_ {
31775		reqHeaders[k] = v
31776	}
31777	reqHeaders.Set("User-Agent", c.s.userAgent())
31778	if c.ifNoneMatch_ != "" {
31779		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
31780	}
31781	var body io.Reader = nil
31782	c.urlParams_.Set("alt", alt)
31783	c.urlParams_.Set("prettyPrint", "false")
31784	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
31785	urls += "?" + c.urlParams_.Encode()
31786	req, err := http.NewRequest("GET", urls, body)
31787	if err != nil {
31788		return nil, err
31789	}
31790	req.Header = reqHeaders
31791	googleapi.Expand(req.URL, map[string]string{
31792		"name": c.name,
31793	})
31794	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31795}
31796
31797// Do executes the "dialogflow.projects.locations.agents.testCases.results.get" call.
31798// Exactly one of *GoogleCloudDialogflowCxV3TestCaseResult or error will
31799// be non-nil. Any non-2xx status code is an error. Response headers are
31800// in either
31801// *GoogleCloudDialogflowCxV3TestCaseResult.ServerResponse.Header or (if
31802// a response was returned at all) in error.(*googleapi.Error).Header.
31803// Use googleapi.IsNotModified to check whether the returned error was
31804// because http.StatusNotModified was returned.
31805func (c *ProjectsLocationsAgentsTestCasesResultsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3TestCaseResult, error) {
31806	gensupport.SetOptions(c.urlParams_, opts...)
31807	res, err := c.doRequest("json")
31808	if res != nil && res.StatusCode == http.StatusNotModified {
31809		if res.Body != nil {
31810			res.Body.Close()
31811		}
31812		return nil, &googleapi.Error{
31813			Code:   res.StatusCode,
31814			Header: res.Header,
31815		}
31816	}
31817	if err != nil {
31818		return nil, err
31819	}
31820	defer googleapi.CloseBody(res)
31821	if err := googleapi.CheckResponse(res); err != nil {
31822		return nil, err
31823	}
31824	ret := &GoogleCloudDialogflowCxV3TestCaseResult{
31825		ServerResponse: googleapi.ServerResponse{
31826			Header:         res.Header,
31827			HTTPStatusCode: res.StatusCode,
31828		},
31829	}
31830	target := &ret
31831	if err := gensupport.DecodeResponse(target, res); err != nil {
31832		return nil, err
31833	}
31834	return ret, nil
31835	// {
31836	//   "description": "Gets a test case result.",
31837	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/testCases/{testCasesId}/results/{resultsId}",
31838	//   "httpMethod": "GET",
31839	//   "id": "dialogflow.projects.locations.agents.testCases.results.get",
31840	//   "parameterOrder": [
31841	//     "name"
31842	//   ],
31843	//   "parameters": {
31844	//     "name": {
31845	//       "description": "Required. The name of the testcase. Format: `projects//locations//agents//testCases//results/`.",
31846	//       "location": "path",
31847	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/testCases/[^/]+/results/[^/]+$",
31848	//       "required": true,
31849	//       "type": "string"
31850	//     }
31851	//   },
31852	//   "path": "v3/{+name}",
31853	//   "response": {
31854	//     "$ref": "GoogleCloudDialogflowCxV3TestCaseResult"
31855	//   },
31856	//   "scopes": [
31857	//     "https://www.googleapis.com/auth/cloud-platform",
31858	//     "https://www.googleapis.com/auth/dialogflow"
31859	//   ]
31860	// }
31861
31862}
31863
31864// method id "dialogflow.projects.locations.agents.testCases.results.list":
31865
31866type ProjectsLocationsAgentsTestCasesResultsListCall struct {
31867	s            *Service
31868	parent       string
31869	urlParams_   gensupport.URLParams
31870	ifNoneMatch_ string
31871	ctx_         context.Context
31872	header_      http.Header
31873}
31874
31875// List: Fetches a list of results for a given test case.
31876//
31877// - parent: The test case to list results for. Format:
31878//   `projects//locations//agents// testCases/`. Specify a `-` as a
31879//   wildcard for TestCase ID to list results across multiple test
31880//   cases.
31881func (r *ProjectsLocationsAgentsTestCasesResultsService) List(parent string) *ProjectsLocationsAgentsTestCasesResultsListCall {
31882	c := &ProjectsLocationsAgentsTestCasesResultsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31883	c.parent = parent
31884	return c
31885}
31886
31887// Filter sets the optional parameter "filter": The filter expression
31888// used to filter test case results. See API Filtering
31889// (https://aip.dev/160). The expression is case insensitive. Only 'AND'
31890// is supported for logical operators. The supported syntax is listed
31891// below in detail: [AND ] ... [AND latest] The supported fields and
31892// operators are: field operator `environment` `=`, `IN` (Use value
31893// `draft` for draft environment) `test_time` `>`, `<` `latest` only
31894// returns the latest test result in all results for each test case.
31895// Examples: * "environment=draft AND latest" matches the latest test
31896// result for each test case in the draft environment. * "environment IN
31897// (e1,e2)" matches any test case results with an environment resource
31898// name of either "e1" or "e2". * "test_time > 1602540713" matches any
31899// test case results with test time later than a unix timestamp in
31900// seconds 1602540713.
31901func (c *ProjectsLocationsAgentsTestCasesResultsListCall) Filter(filter string) *ProjectsLocationsAgentsTestCasesResultsListCall {
31902	c.urlParams_.Set("filter", filter)
31903	return c
31904}
31905
31906// PageSize sets the optional parameter "pageSize": The maximum number
31907// of items to return in a single page. By default 100 and at most 1000.
31908func (c *ProjectsLocationsAgentsTestCasesResultsListCall) PageSize(pageSize int64) *ProjectsLocationsAgentsTestCasesResultsListCall {
31909	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
31910	return c
31911}
31912
31913// PageToken sets the optional parameter "pageToken": The
31914// next_page_token value returned from a previous list request.
31915func (c *ProjectsLocationsAgentsTestCasesResultsListCall) PageToken(pageToken string) *ProjectsLocationsAgentsTestCasesResultsListCall {
31916	c.urlParams_.Set("pageToken", pageToken)
31917	return c
31918}
31919
31920// Fields allows partial responses to be retrieved. See
31921// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31922// for more information.
31923func (c *ProjectsLocationsAgentsTestCasesResultsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsTestCasesResultsListCall {
31924	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31925	return c
31926}
31927
31928// IfNoneMatch sets the optional parameter which makes the operation
31929// fail if the object's ETag matches the given value. This is useful for
31930// getting updates only after the object has changed since the last
31931// request. Use googleapi.IsNotModified to check whether the response
31932// error from Do is the result of In-None-Match.
31933func (c *ProjectsLocationsAgentsTestCasesResultsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsTestCasesResultsListCall {
31934	c.ifNoneMatch_ = entityTag
31935	return c
31936}
31937
31938// Context sets the context to be used in this call's Do method. Any
31939// pending HTTP request will be aborted if the provided context is
31940// canceled.
31941func (c *ProjectsLocationsAgentsTestCasesResultsListCall) Context(ctx context.Context) *ProjectsLocationsAgentsTestCasesResultsListCall {
31942	c.ctx_ = ctx
31943	return c
31944}
31945
31946// Header returns an http.Header that can be modified by the caller to
31947// add HTTP headers to the request.
31948func (c *ProjectsLocationsAgentsTestCasesResultsListCall) Header() http.Header {
31949	if c.header_ == nil {
31950		c.header_ = make(http.Header)
31951	}
31952	return c.header_
31953}
31954
31955func (c *ProjectsLocationsAgentsTestCasesResultsListCall) doRequest(alt string) (*http.Response, error) {
31956	reqHeaders := make(http.Header)
31957	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
31958	for k, v := range c.header_ {
31959		reqHeaders[k] = v
31960	}
31961	reqHeaders.Set("User-Agent", c.s.userAgent())
31962	if c.ifNoneMatch_ != "" {
31963		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
31964	}
31965	var body io.Reader = nil
31966	c.urlParams_.Set("alt", alt)
31967	c.urlParams_.Set("prettyPrint", "false")
31968	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/results")
31969	urls += "?" + c.urlParams_.Encode()
31970	req, err := http.NewRequest("GET", urls, body)
31971	if err != nil {
31972		return nil, err
31973	}
31974	req.Header = reqHeaders
31975	googleapi.Expand(req.URL, map[string]string{
31976		"parent": c.parent,
31977	})
31978	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31979}
31980
31981// Do executes the "dialogflow.projects.locations.agents.testCases.results.list" call.
31982// Exactly one of *GoogleCloudDialogflowCxV3ListTestCaseResultsResponse
31983// or error will be non-nil. Any non-2xx status code is an error.
31984// Response headers are in either
31985// *GoogleCloudDialogflowCxV3ListTestCaseResultsResponse.ServerResponse.H
31986// eader or (if a response was returned at all) in
31987// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
31988// whether the returned error was because http.StatusNotModified was
31989// returned.
31990func (c *ProjectsLocationsAgentsTestCasesResultsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3ListTestCaseResultsResponse, error) {
31991	gensupport.SetOptions(c.urlParams_, opts...)
31992	res, err := c.doRequest("json")
31993	if res != nil && res.StatusCode == http.StatusNotModified {
31994		if res.Body != nil {
31995			res.Body.Close()
31996		}
31997		return nil, &googleapi.Error{
31998			Code:   res.StatusCode,
31999			Header: res.Header,
32000		}
32001	}
32002	if err != nil {
32003		return nil, err
32004	}
32005	defer googleapi.CloseBody(res)
32006	if err := googleapi.CheckResponse(res); err != nil {
32007		return nil, err
32008	}
32009	ret := &GoogleCloudDialogflowCxV3ListTestCaseResultsResponse{
32010		ServerResponse: googleapi.ServerResponse{
32011			Header:         res.Header,
32012			HTTPStatusCode: res.StatusCode,
32013		},
32014	}
32015	target := &ret
32016	if err := gensupport.DecodeResponse(target, res); err != nil {
32017		return nil, err
32018	}
32019	return ret, nil
32020	// {
32021	//   "description": "Fetches a list of results for a given test case.",
32022	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/testCases/{testCasesId}/results",
32023	//   "httpMethod": "GET",
32024	//   "id": "dialogflow.projects.locations.agents.testCases.results.list",
32025	//   "parameterOrder": [
32026	//     "parent"
32027	//   ],
32028	//   "parameters": {
32029	//     "filter": {
32030	//       "description": "The filter expression used to filter test case results. See [API Filtering](https://aip.dev/160). The expression is case insensitive. Only 'AND' is supported for logical operators. The supported syntax is listed below in detail: [AND ] ... [AND latest] The supported fields and operators are: field operator `environment` `=`, `IN` (Use value `draft` for draft environment) `test_time` `\u003e`, `\u003c` `latest` only returns the latest test result in all results for each test case. Examples: * \"environment=draft AND latest\" matches the latest test result for each test case in the draft environment. * \"environment IN (e1,e2)\" matches any test case results with an environment resource name of either \"e1\" or \"e2\". * \"test_time \u003e 1602540713\" matches any test case results with test time later than a unix timestamp in seconds 1602540713.",
32031	//       "location": "query",
32032	//       "type": "string"
32033	//     },
32034	//     "pageSize": {
32035	//       "description": "The maximum number of items to return in a single page. By default 100 and at most 1000.",
32036	//       "format": "int32",
32037	//       "location": "query",
32038	//       "type": "integer"
32039	//     },
32040	//     "pageToken": {
32041	//       "description": "The next_page_token value returned from a previous list request.",
32042	//       "location": "query",
32043	//       "type": "string"
32044	//     },
32045	//     "parent": {
32046	//       "description": "Required. The test case to list results for. Format: `projects//locations//agents// testCases/`. Specify a `-` as a wildcard for TestCase ID to list results across multiple test cases.",
32047	//       "location": "path",
32048	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/testCases/[^/]+$",
32049	//       "required": true,
32050	//       "type": "string"
32051	//     }
32052	//   },
32053	//   "path": "v3/{+parent}/results",
32054	//   "response": {
32055	//     "$ref": "GoogleCloudDialogflowCxV3ListTestCaseResultsResponse"
32056	//   },
32057	//   "scopes": [
32058	//     "https://www.googleapis.com/auth/cloud-platform",
32059	//     "https://www.googleapis.com/auth/dialogflow"
32060	//   ]
32061	// }
32062
32063}
32064
32065// Pages invokes f for each page of results.
32066// A non-nil error returned from f will halt the iteration.
32067// The provided context supersedes any context provided to the Context method.
32068func (c *ProjectsLocationsAgentsTestCasesResultsListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3ListTestCaseResultsResponse) error) error {
32069	c.ctx_ = ctx
32070	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
32071	for {
32072		x, err := c.Do()
32073		if err != nil {
32074			return err
32075		}
32076		if err := f(x); err != nil {
32077			return err
32078		}
32079		if x.NextPageToken == "" {
32080			return nil
32081		}
32082		c.PageToken(x.NextPageToken)
32083	}
32084}
32085
32086// method id "dialogflow.projects.locations.agents.webhooks.create":
32087
32088type ProjectsLocationsAgentsWebhooksCreateCall struct {
32089	s                                *Service
32090	parent                           string
32091	googleclouddialogflowcxv3webhook *GoogleCloudDialogflowCxV3Webhook
32092	urlParams_                       gensupport.URLParams
32093	ctx_                             context.Context
32094	header_                          http.Header
32095}
32096
32097// Create: Creates a webhook in the specified agent.
32098//
32099// - parent: The agent to create a webhook for. Format:
32100//   `projects//locations//agents/`.
32101func (r *ProjectsLocationsAgentsWebhooksService) Create(parent string, googleclouddialogflowcxv3webhook *GoogleCloudDialogflowCxV3Webhook) *ProjectsLocationsAgentsWebhooksCreateCall {
32102	c := &ProjectsLocationsAgentsWebhooksCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32103	c.parent = parent
32104	c.googleclouddialogflowcxv3webhook = googleclouddialogflowcxv3webhook
32105	return c
32106}
32107
32108// Fields allows partial responses to be retrieved. See
32109// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32110// for more information.
32111func (c *ProjectsLocationsAgentsWebhooksCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsWebhooksCreateCall {
32112	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32113	return c
32114}
32115
32116// Context sets the context to be used in this call's Do method. Any
32117// pending HTTP request will be aborted if the provided context is
32118// canceled.
32119func (c *ProjectsLocationsAgentsWebhooksCreateCall) Context(ctx context.Context) *ProjectsLocationsAgentsWebhooksCreateCall {
32120	c.ctx_ = ctx
32121	return c
32122}
32123
32124// Header returns an http.Header that can be modified by the caller to
32125// add HTTP headers to the request.
32126func (c *ProjectsLocationsAgentsWebhooksCreateCall) Header() http.Header {
32127	if c.header_ == nil {
32128		c.header_ = make(http.Header)
32129	}
32130	return c.header_
32131}
32132
32133func (c *ProjectsLocationsAgentsWebhooksCreateCall) doRequest(alt string) (*http.Response, error) {
32134	reqHeaders := make(http.Header)
32135	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
32136	for k, v := range c.header_ {
32137		reqHeaders[k] = v
32138	}
32139	reqHeaders.Set("User-Agent", c.s.userAgent())
32140	var body io.Reader = nil
32141	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3webhook)
32142	if err != nil {
32143		return nil, err
32144	}
32145	reqHeaders.Set("Content-Type", "application/json")
32146	c.urlParams_.Set("alt", alt)
32147	c.urlParams_.Set("prettyPrint", "false")
32148	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/webhooks")
32149	urls += "?" + c.urlParams_.Encode()
32150	req, err := http.NewRequest("POST", urls, body)
32151	if err != nil {
32152		return nil, err
32153	}
32154	req.Header = reqHeaders
32155	googleapi.Expand(req.URL, map[string]string{
32156		"parent": c.parent,
32157	})
32158	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32159}
32160
32161// Do executes the "dialogflow.projects.locations.agents.webhooks.create" call.
32162// Exactly one of *GoogleCloudDialogflowCxV3Webhook or error will be
32163// non-nil. Any non-2xx status code is an error. Response headers are in
32164// either *GoogleCloudDialogflowCxV3Webhook.ServerResponse.Header or (if
32165// a response was returned at all) in error.(*googleapi.Error).Header.
32166// Use googleapi.IsNotModified to check whether the returned error was
32167// because http.StatusNotModified was returned.
32168func (c *ProjectsLocationsAgentsWebhooksCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3Webhook, error) {
32169	gensupport.SetOptions(c.urlParams_, opts...)
32170	res, err := c.doRequest("json")
32171	if res != nil && res.StatusCode == http.StatusNotModified {
32172		if res.Body != nil {
32173			res.Body.Close()
32174		}
32175		return nil, &googleapi.Error{
32176			Code:   res.StatusCode,
32177			Header: res.Header,
32178		}
32179	}
32180	if err != nil {
32181		return nil, err
32182	}
32183	defer googleapi.CloseBody(res)
32184	if err := googleapi.CheckResponse(res); err != nil {
32185		return nil, err
32186	}
32187	ret := &GoogleCloudDialogflowCxV3Webhook{
32188		ServerResponse: googleapi.ServerResponse{
32189			Header:         res.Header,
32190			HTTPStatusCode: res.StatusCode,
32191		},
32192	}
32193	target := &ret
32194	if err := gensupport.DecodeResponse(target, res); err != nil {
32195		return nil, err
32196	}
32197	return ret, nil
32198	// {
32199	//   "description": "Creates a webhook in the specified agent.",
32200	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/webhooks",
32201	//   "httpMethod": "POST",
32202	//   "id": "dialogflow.projects.locations.agents.webhooks.create",
32203	//   "parameterOrder": [
32204	//     "parent"
32205	//   ],
32206	//   "parameters": {
32207	//     "parent": {
32208	//       "description": "Required. The agent to create a webhook for. Format: `projects//locations//agents/`.",
32209	//       "location": "path",
32210	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
32211	//       "required": true,
32212	//       "type": "string"
32213	//     }
32214	//   },
32215	//   "path": "v3/{+parent}/webhooks",
32216	//   "request": {
32217	//     "$ref": "GoogleCloudDialogflowCxV3Webhook"
32218	//   },
32219	//   "response": {
32220	//     "$ref": "GoogleCloudDialogflowCxV3Webhook"
32221	//   },
32222	//   "scopes": [
32223	//     "https://www.googleapis.com/auth/cloud-platform",
32224	//     "https://www.googleapis.com/auth/dialogflow"
32225	//   ]
32226	// }
32227
32228}
32229
32230// method id "dialogflow.projects.locations.agents.webhooks.delete":
32231
32232type ProjectsLocationsAgentsWebhooksDeleteCall struct {
32233	s          *Service
32234	name       string
32235	urlParams_ gensupport.URLParams
32236	ctx_       context.Context
32237	header_    http.Header
32238}
32239
32240// Delete: Deletes the specified webhook.
32241//
32242// - name: The name of the webhook to delete. Format:
32243//   `projects//locations//agents//webhooks/`.
32244func (r *ProjectsLocationsAgentsWebhooksService) Delete(name string) *ProjectsLocationsAgentsWebhooksDeleteCall {
32245	c := &ProjectsLocationsAgentsWebhooksDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32246	c.name = name
32247	return c
32248}
32249
32250// Force sets the optional parameter "force": This field has no effect
32251// for webhook not being used. For webhooks that are used by
32252// pages/flows/transition route groups: * If `force` is set to false, an
32253// error will be returned with message indicating the referenced
32254// resources. * If `force` is set to true, Dialogflow will remove the
32255// webhook, as well as any references to the webhook (i.e. Webhook and
32256// tagin fulfillments that point to this webhook will be removed).
32257func (c *ProjectsLocationsAgentsWebhooksDeleteCall) Force(force bool) *ProjectsLocationsAgentsWebhooksDeleteCall {
32258	c.urlParams_.Set("force", fmt.Sprint(force))
32259	return c
32260}
32261
32262// Fields allows partial responses to be retrieved. See
32263// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32264// for more information.
32265func (c *ProjectsLocationsAgentsWebhooksDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsWebhooksDeleteCall {
32266	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32267	return c
32268}
32269
32270// Context sets the context to be used in this call's Do method. Any
32271// pending HTTP request will be aborted if the provided context is
32272// canceled.
32273func (c *ProjectsLocationsAgentsWebhooksDeleteCall) Context(ctx context.Context) *ProjectsLocationsAgentsWebhooksDeleteCall {
32274	c.ctx_ = ctx
32275	return c
32276}
32277
32278// Header returns an http.Header that can be modified by the caller to
32279// add HTTP headers to the request.
32280func (c *ProjectsLocationsAgentsWebhooksDeleteCall) Header() http.Header {
32281	if c.header_ == nil {
32282		c.header_ = make(http.Header)
32283	}
32284	return c.header_
32285}
32286
32287func (c *ProjectsLocationsAgentsWebhooksDeleteCall) doRequest(alt string) (*http.Response, error) {
32288	reqHeaders := make(http.Header)
32289	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
32290	for k, v := range c.header_ {
32291		reqHeaders[k] = v
32292	}
32293	reqHeaders.Set("User-Agent", c.s.userAgent())
32294	var body io.Reader = nil
32295	c.urlParams_.Set("alt", alt)
32296	c.urlParams_.Set("prettyPrint", "false")
32297	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
32298	urls += "?" + c.urlParams_.Encode()
32299	req, err := http.NewRequest("DELETE", urls, body)
32300	if err != nil {
32301		return nil, err
32302	}
32303	req.Header = reqHeaders
32304	googleapi.Expand(req.URL, map[string]string{
32305		"name": c.name,
32306	})
32307	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32308}
32309
32310// Do executes the "dialogflow.projects.locations.agents.webhooks.delete" call.
32311// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
32312// non-2xx status code is an error. Response headers are in either
32313// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
32314// returned at all) in error.(*googleapi.Error).Header. Use
32315// googleapi.IsNotModified to check whether the returned error was
32316// because http.StatusNotModified was returned.
32317func (c *ProjectsLocationsAgentsWebhooksDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
32318	gensupport.SetOptions(c.urlParams_, opts...)
32319	res, err := c.doRequest("json")
32320	if res != nil && res.StatusCode == http.StatusNotModified {
32321		if res.Body != nil {
32322			res.Body.Close()
32323		}
32324		return nil, &googleapi.Error{
32325			Code:   res.StatusCode,
32326			Header: res.Header,
32327		}
32328	}
32329	if err != nil {
32330		return nil, err
32331	}
32332	defer googleapi.CloseBody(res)
32333	if err := googleapi.CheckResponse(res); err != nil {
32334		return nil, err
32335	}
32336	ret := &GoogleProtobufEmpty{
32337		ServerResponse: googleapi.ServerResponse{
32338			Header:         res.Header,
32339			HTTPStatusCode: res.StatusCode,
32340		},
32341	}
32342	target := &ret
32343	if err := gensupport.DecodeResponse(target, res); err != nil {
32344		return nil, err
32345	}
32346	return ret, nil
32347	// {
32348	//   "description": "Deletes the specified webhook.",
32349	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/webhooks/{webhooksId}",
32350	//   "httpMethod": "DELETE",
32351	//   "id": "dialogflow.projects.locations.agents.webhooks.delete",
32352	//   "parameterOrder": [
32353	//     "name"
32354	//   ],
32355	//   "parameters": {
32356	//     "force": {
32357	//       "description": "This field has no effect for webhook not being used. For webhooks that are used by pages/flows/transition route groups: * If `force` is set to false, an error will be returned with message indicating the referenced resources. * If `force` is set to true, Dialogflow will remove the webhook, as well as any references to the webhook (i.e. Webhook and tagin fulfillments that point to this webhook will be removed).",
32358	//       "location": "query",
32359	//       "type": "boolean"
32360	//     },
32361	//     "name": {
32362	//       "description": "Required. The name of the webhook to delete. Format: `projects//locations//agents//webhooks/`.",
32363	//       "location": "path",
32364	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/webhooks/[^/]+$",
32365	//       "required": true,
32366	//       "type": "string"
32367	//     }
32368	//   },
32369	//   "path": "v3/{+name}",
32370	//   "response": {
32371	//     "$ref": "GoogleProtobufEmpty"
32372	//   },
32373	//   "scopes": [
32374	//     "https://www.googleapis.com/auth/cloud-platform",
32375	//     "https://www.googleapis.com/auth/dialogflow"
32376	//   ]
32377	// }
32378
32379}
32380
32381// method id "dialogflow.projects.locations.agents.webhooks.get":
32382
32383type ProjectsLocationsAgentsWebhooksGetCall struct {
32384	s            *Service
32385	name         string
32386	urlParams_   gensupport.URLParams
32387	ifNoneMatch_ string
32388	ctx_         context.Context
32389	header_      http.Header
32390}
32391
32392// Get: Retrieves the specified webhook.
32393//
32394// - name: The name of the webhook. Format:
32395//   `projects//locations//agents//webhooks/`.
32396func (r *ProjectsLocationsAgentsWebhooksService) Get(name string) *ProjectsLocationsAgentsWebhooksGetCall {
32397	c := &ProjectsLocationsAgentsWebhooksGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32398	c.name = name
32399	return c
32400}
32401
32402// Fields allows partial responses to be retrieved. See
32403// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32404// for more information.
32405func (c *ProjectsLocationsAgentsWebhooksGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsWebhooksGetCall {
32406	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32407	return c
32408}
32409
32410// IfNoneMatch sets the optional parameter which makes the operation
32411// fail if the object's ETag matches the given value. This is useful for
32412// getting updates only after the object has changed since the last
32413// request. Use googleapi.IsNotModified to check whether the response
32414// error from Do is the result of In-None-Match.
32415func (c *ProjectsLocationsAgentsWebhooksGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsWebhooksGetCall {
32416	c.ifNoneMatch_ = entityTag
32417	return c
32418}
32419
32420// Context sets the context to be used in this call's Do method. Any
32421// pending HTTP request will be aborted if the provided context is
32422// canceled.
32423func (c *ProjectsLocationsAgentsWebhooksGetCall) Context(ctx context.Context) *ProjectsLocationsAgentsWebhooksGetCall {
32424	c.ctx_ = ctx
32425	return c
32426}
32427
32428// Header returns an http.Header that can be modified by the caller to
32429// add HTTP headers to the request.
32430func (c *ProjectsLocationsAgentsWebhooksGetCall) Header() http.Header {
32431	if c.header_ == nil {
32432		c.header_ = make(http.Header)
32433	}
32434	return c.header_
32435}
32436
32437func (c *ProjectsLocationsAgentsWebhooksGetCall) doRequest(alt string) (*http.Response, error) {
32438	reqHeaders := make(http.Header)
32439	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
32440	for k, v := range c.header_ {
32441		reqHeaders[k] = v
32442	}
32443	reqHeaders.Set("User-Agent", c.s.userAgent())
32444	if c.ifNoneMatch_ != "" {
32445		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
32446	}
32447	var body io.Reader = nil
32448	c.urlParams_.Set("alt", alt)
32449	c.urlParams_.Set("prettyPrint", "false")
32450	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
32451	urls += "?" + c.urlParams_.Encode()
32452	req, err := http.NewRequest("GET", urls, body)
32453	if err != nil {
32454		return nil, err
32455	}
32456	req.Header = reqHeaders
32457	googleapi.Expand(req.URL, map[string]string{
32458		"name": c.name,
32459	})
32460	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32461}
32462
32463// Do executes the "dialogflow.projects.locations.agents.webhooks.get" call.
32464// Exactly one of *GoogleCloudDialogflowCxV3Webhook or error will be
32465// non-nil. Any non-2xx status code is an error. Response headers are in
32466// either *GoogleCloudDialogflowCxV3Webhook.ServerResponse.Header or (if
32467// a response was returned at all) in error.(*googleapi.Error).Header.
32468// Use googleapi.IsNotModified to check whether the returned error was
32469// because http.StatusNotModified was returned.
32470func (c *ProjectsLocationsAgentsWebhooksGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3Webhook, error) {
32471	gensupport.SetOptions(c.urlParams_, opts...)
32472	res, err := c.doRequest("json")
32473	if res != nil && res.StatusCode == http.StatusNotModified {
32474		if res.Body != nil {
32475			res.Body.Close()
32476		}
32477		return nil, &googleapi.Error{
32478			Code:   res.StatusCode,
32479			Header: res.Header,
32480		}
32481	}
32482	if err != nil {
32483		return nil, err
32484	}
32485	defer googleapi.CloseBody(res)
32486	if err := googleapi.CheckResponse(res); err != nil {
32487		return nil, err
32488	}
32489	ret := &GoogleCloudDialogflowCxV3Webhook{
32490		ServerResponse: googleapi.ServerResponse{
32491			Header:         res.Header,
32492			HTTPStatusCode: res.StatusCode,
32493		},
32494	}
32495	target := &ret
32496	if err := gensupport.DecodeResponse(target, res); err != nil {
32497		return nil, err
32498	}
32499	return ret, nil
32500	// {
32501	//   "description": "Retrieves the specified webhook.",
32502	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/webhooks/{webhooksId}",
32503	//   "httpMethod": "GET",
32504	//   "id": "dialogflow.projects.locations.agents.webhooks.get",
32505	//   "parameterOrder": [
32506	//     "name"
32507	//   ],
32508	//   "parameters": {
32509	//     "name": {
32510	//       "description": "Required. The name of the webhook. Format: `projects//locations//agents//webhooks/`.",
32511	//       "location": "path",
32512	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/webhooks/[^/]+$",
32513	//       "required": true,
32514	//       "type": "string"
32515	//     }
32516	//   },
32517	//   "path": "v3/{+name}",
32518	//   "response": {
32519	//     "$ref": "GoogleCloudDialogflowCxV3Webhook"
32520	//   },
32521	//   "scopes": [
32522	//     "https://www.googleapis.com/auth/cloud-platform",
32523	//     "https://www.googleapis.com/auth/dialogflow"
32524	//   ]
32525	// }
32526
32527}
32528
32529// method id "dialogflow.projects.locations.agents.webhooks.list":
32530
32531type ProjectsLocationsAgentsWebhooksListCall struct {
32532	s            *Service
32533	parent       string
32534	urlParams_   gensupport.URLParams
32535	ifNoneMatch_ string
32536	ctx_         context.Context
32537	header_      http.Header
32538}
32539
32540// List: Returns the list of all webhooks in the specified agent.
32541//
32542// - parent: The agent to list all webhooks for. Format:
32543//   `projects//locations//agents/`.
32544func (r *ProjectsLocationsAgentsWebhooksService) List(parent string) *ProjectsLocationsAgentsWebhooksListCall {
32545	c := &ProjectsLocationsAgentsWebhooksListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32546	c.parent = parent
32547	return c
32548}
32549
32550// PageSize sets the optional parameter "pageSize": The maximum number
32551// of items to return in a single page. By default 100 and at most 1000.
32552func (c *ProjectsLocationsAgentsWebhooksListCall) PageSize(pageSize int64) *ProjectsLocationsAgentsWebhooksListCall {
32553	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
32554	return c
32555}
32556
32557// PageToken sets the optional parameter "pageToken": The
32558// next_page_token value returned from a previous list request.
32559func (c *ProjectsLocationsAgentsWebhooksListCall) PageToken(pageToken string) *ProjectsLocationsAgentsWebhooksListCall {
32560	c.urlParams_.Set("pageToken", pageToken)
32561	return c
32562}
32563
32564// Fields allows partial responses to be retrieved. See
32565// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32566// for more information.
32567func (c *ProjectsLocationsAgentsWebhooksListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsWebhooksListCall {
32568	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32569	return c
32570}
32571
32572// IfNoneMatch sets the optional parameter which makes the operation
32573// fail if the object's ETag matches the given value. This is useful for
32574// getting updates only after the object has changed since the last
32575// request. Use googleapi.IsNotModified to check whether the response
32576// error from Do is the result of In-None-Match.
32577func (c *ProjectsLocationsAgentsWebhooksListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsWebhooksListCall {
32578	c.ifNoneMatch_ = entityTag
32579	return c
32580}
32581
32582// Context sets the context to be used in this call's Do method. Any
32583// pending HTTP request will be aborted if the provided context is
32584// canceled.
32585func (c *ProjectsLocationsAgentsWebhooksListCall) Context(ctx context.Context) *ProjectsLocationsAgentsWebhooksListCall {
32586	c.ctx_ = ctx
32587	return c
32588}
32589
32590// Header returns an http.Header that can be modified by the caller to
32591// add HTTP headers to the request.
32592func (c *ProjectsLocationsAgentsWebhooksListCall) Header() http.Header {
32593	if c.header_ == nil {
32594		c.header_ = make(http.Header)
32595	}
32596	return c.header_
32597}
32598
32599func (c *ProjectsLocationsAgentsWebhooksListCall) doRequest(alt string) (*http.Response, error) {
32600	reqHeaders := make(http.Header)
32601	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
32602	for k, v := range c.header_ {
32603		reqHeaders[k] = v
32604	}
32605	reqHeaders.Set("User-Agent", c.s.userAgent())
32606	if c.ifNoneMatch_ != "" {
32607		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
32608	}
32609	var body io.Reader = nil
32610	c.urlParams_.Set("alt", alt)
32611	c.urlParams_.Set("prettyPrint", "false")
32612	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/webhooks")
32613	urls += "?" + c.urlParams_.Encode()
32614	req, err := http.NewRequest("GET", urls, body)
32615	if err != nil {
32616		return nil, err
32617	}
32618	req.Header = reqHeaders
32619	googleapi.Expand(req.URL, map[string]string{
32620		"parent": c.parent,
32621	})
32622	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32623}
32624
32625// Do executes the "dialogflow.projects.locations.agents.webhooks.list" call.
32626// Exactly one of *GoogleCloudDialogflowCxV3ListWebhooksResponse or
32627// error will be non-nil. Any non-2xx status code is an error. Response
32628// headers are in either
32629// *GoogleCloudDialogflowCxV3ListWebhooksResponse.ServerResponse.Header
32630// or (if a response was returned at all) in
32631// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
32632// whether the returned error was because http.StatusNotModified was
32633// returned.
32634func (c *ProjectsLocationsAgentsWebhooksListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3ListWebhooksResponse, error) {
32635	gensupport.SetOptions(c.urlParams_, opts...)
32636	res, err := c.doRequest("json")
32637	if res != nil && res.StatusCode == http.StatusNotModified {
32638		if res.Body != nil {
32639			res.Body.Close()
32640		}
32641		return nil, &googleapi.Error{
32642			Code:   res.StatusCode,
32643			Header: res.Header,
32644		}
32645	}
32646	if err != nil {
32647		return nil, err
32648	}
32649	defer googleapi.CloseBody(res)
32650	if err := googleapi.CheckResponse(res); err != nil {
32651		return nil, err
32652	}
32653	ret := &GoogleCloudDialogflowCxV3ListWebhooksResponse{
32654		ServerResponse: googleapi.ServerResponse{
32655			Header:         res.Header,
32656			HTTPStatusCode: res.StatusCode,
32657		},
32658	}
32659	target := &ret
32660	if err := gensupport.DecodeResponse(target, res); err != nil {
32661		return nil, err
32662	}
32663	return ret, nil
32664	// {
32665	//   "description": "Returns the list of all webhooks in the specified agent.",
32666	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/webhooks",
32667	//   "httpMethod": "GET",
32668	//   "id": "dialogflow.projects.locations.agents.webhooks.list",
32669	//   "parameterOrder": [
32670	//     "parent"
32671	//   ],
32672	//   "parameters": {
32673	//     "pageSize": {
32674	//       "description": "The maximum number of items to return in a single page. By default 100 and at most 1000.",
32675	//       "format": "int32",
32676	//       "location": "query",
32677	//       "type": "integer"
32678	//     },
32679	//     "pageToken": {
32680	//       "description": "The next_page_token value returned from a previous list request.",
32681	//       "location": "query",
32682	//       "type": "string"
32683	//     },
32684	//     "parent": {
32685	//       "description": "Required. The agent to list all webhooks for. Format: `projects//locations//agents/`.",
32686	//       "location": "path",
32687	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
32688	//       "required": true,
32689	//       "type": "string"
32690	//     }
32691	//   },
32692	//   "path": "v3/{+parent}/webhooks",
32693	//   "response": {
32694	//     "$ref": "GoogleCloudDialogflowCxV3ListWebhooksResponse"
32695	//   },
32696	//   "scopes": [
32697	//     "https://www.googleapis.com/auth/cloud-platform",
32698	//     "https://www.googleapis.com/auth/dialogflow"
32699	//   ]
32700	// }
32701
32702}
32703
32704// Pages invokes f for each page of results.
32705// A non-nil error returned from f will halt the iteration.
32706// The provided context supersedes any context provided to the Context method.
32707func (c *ProjectsLocationsAgentsWebhooksListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3ListWebhooksResponse) error) error {
32708	c.ctx_ = ctx
32709	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
32710	for {
32711		x, err := c.Do()
32712		if err != nil {
32713			return err
32714		}
32715		if err := f(x); err != nil {
32716			return err
32717		}
32718		if x.NextPageToken == "" {
32719			return nil
32720		}
32721		c.PageToken(x.NextPageToken)
32722	}
32723}
32724
32725// method id "dialogflow.projects.locations.agents.webhooks.patch":
32726
32727type ProjectsLocationsAgentsWebhooksPatchCall struct {
32728	s                                *Service
32729	nameid                           string
32730	googleclouddialogflowcxv3webhook *GoogleCloudDialogflowCxV3Webhook
32731	urlParams_                       gensupport.URLParams
32732	ctx_                             context.Context
32733	header_                          http.Header
32734}
32735
32736// Patch: Updates the specified webhook.
32737//
32738// - name: The unique identifier of the webhook. Required for the
32739//   Webhooks.UpdateWebhook method. Webhooks.CreateWebhook populates the
32740//   name automatically. Format:
32741//   `projects//locations//agents//webhooks/`.
32742func (r *ProjectsLocationsAgentsWebhooksService) Patch(nameid string, googleclouddialogflowcxv3webhook *GoogleCloudDialogflowCxV3Webhook) *ProjectsLocationsAgentsWebhooksPatchCall {
32743	c := &ProjectsLocationsAgentsWebhooksPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32744	c.nameid = nameid
32745	c.googleclouddialogflowcxv3webhook = googleclouddialogflowcxv3webhook
32746	return c
32747}
32748
32749// UpdateMask sets the optional parameter "updateMask": The mask to
32750// control which fields get updated. If the mask is not present, all
32751// fields will be updated.
32752func (c *ProjectsLocationsAgentsWebhooksPatchCall) UpdateMask(updateMask string) *ProjectsLocationsAgentsWebhooksPatchCall {
32753	c.urlParams_.Set("updateMask", updateMask)
32754	return c
32755}
32756
32757// Fields allows partial responses to be retrieved. See
32758// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32759// for more information.
32760func (c *ProjectsLocationsAgentsWebhooksPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsWebhooksPatchCall {
32761	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32762	return c
32763}
32764
32765// Context sets the context to be used in this call's Do method. Any
32766// pending HTTP request will be aborted if the provided context is
32767// canceled.
32768func (c *ProjectsLocationsAgentsWebhooksPatchCall) Context(ctx context.Context) *ProjectsLocationsAgentsWebhooksPatchCall {
32769	c.ctx_ = ctx
32770	return c
32771}
32772
32773// Header returns an http.Header that can be modified by the caller to
32774// add HTTP headers to the request.
32775func (c *ProjectsLocationsAgentsWebhooksPatchCall) Header() http.Header {
32776	if c.header_ == nil {
32777		c.header_ = make(http.Header)
32778	}
32779	return c.header_
32780}
32781
32782func (c *ProjectsLocationsAgentsWebhooksPatchCall) doRequest(alt string) (*http.Response, error) {
32783	reqHeaders := make(http.Header)
32784	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
32785	for k, v := range c.header_ {
32786		reqHeaders[k] = v
32787	}
32788	reqHeaders.Set("User-Agent", c.s.userAgent())
32789	var body io.Reader = nil
32790	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3webhook)
32791	if err != nil {
32792		return nil, err
32793	}
32794	reqHeaders.Set("Content-Type", "application/json")
32795	c.urlParams_.Set("alt", alt)
32796	c.urlParams_.Set("prettyPrint", "false")
32797	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
32798	urls += "?" + c.urlParams_.Encode()
32799	req, err := http.NewRequest("PATCH", urls, body)
32800	if err != nil {
32801		return nil, err
32802	}
32803	req.Header = reqHeaders
32804	googleapi.Expand(req.URL, map[string]string{
32805		"name": c.nameid,
32806	})
32807	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32808}
32809
32810// Do executes the "dialogflow.projects.locations.agents.webhooks.patch" call.
32811// Exactly one of *GoogleCloudDialogflowCxV3Webhook or error will be
32812// non-nil. Any non-2xx status code is an error. Response headers are in
32813// either *GoogleCloudDialogflowCxV3Webhook.ServerResponse.Header or (if
32814// a response was returned at all) in error.(*googleapi.Error).Header.
32815// Use googleapi.IsNotModified to check whether the returned error was
32816// because http.StatusNotModified was returned.
32817func (c *ProjectsLocationsAgentsWebhooksPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3Webhook, error) {
32818	gensupport.SetOptions(c.urlParams_, opts...)
32819	res, err := c.doRequest("json")
32820	if res != nil && res.StatusCode == http.StatusNotModified {
32821		if res.Body != nil {
32822			res.Body.Close()
32823		}
32824		return nil, &googleapi.Error{
32825			Code:   res.StatusCode,
32826			Header: res.Header,
32827		}
32828	}
32829	if err != nil {
32830		return nil, err
32831	}
32832	defer googleapi.CloseBody(res)
32833	if err := googleapi.CheckResponse(res); err != nil {
32834		return nil, err
32835	}
32836	ret := &GoogleCloudDialogflowCxV3Webhook{
32837		ServerResponse: googleapi.ServerResponse{
32838			Header:         res.Header,
32839			HTTPStatusCode: res.StatusCode,
32840		},
32841	}
32842	target := &ret
32843	if err := gensupport.DecodeResponse(target, res); err != nil {
32844		return nil, err
32845	}
32846	return ret, nil
32847	// {
32848	//   "description": "Updates the specified webhook.",
32849	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/webhooks/{webhooksId}",
32850	//   "httpMethod": "PATCH",
32851	//   "id": "dialogflow.projects.locations.agents.webhooks.patch",
32852	//   "parameterOrder": [
32853	//     "name"
32854	//   ],
32855	//   "parameters": {
32856	//     "name": {
32857	//       "description": "The unique identifier of the webhook. Required for the Webhooks.UpdateWebhook method. Webhooks.CreateWebhook populates the name automatically. Format: `projects//locations//agents//webhooks/`.",
32858	//       "location": "path",
32859	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/webhooks/[^/]+$",
32860	//       "required": true,
32861	//       "type": "string"
32862	//     },
32863	//     "updateMask": {
32864	//       "description": "The mask to control which fields get updated. If the mask is not present, all fields will be updated.",
32865	//       "format": "google-fieldmask",
32866	//       "location": "query",
32867	//       "type": "string"
32868	//     }
32869	//   },
32870	//   "path": "v3/{+name}",
32871	//   "request": {
32872	//     "$ref": "GoogleCloudDialogflowCxV3Webhook"
32873	//   },
32874	//   "response": {
32875	//     "$ref": "GoogleCloudDialogflowCxV3Webhook"
32876	//   },
32877	//   "scopes": [
32878	//     "https://www.googleapis.com/auth/cloud-platform",
32879	//     "https://www.googleapis.com/auth/dialogflow"
32880	//   ]
32881	// }
32882
32883}
32884
32885// method id "dialogflow.projects.locations.operations.cancel":
32886
32887type ProjectsLocationsOperationsCancelCall struct {
32888	s          *Service
32889	name       string
32890	urlParams_ gensupport.URLParams
32891	ctx_       context.Context
32892	header_    http.Header
32893}
32894
32895// Cancel: Starts asynchronous cancellation on a long-running operation.
32896// The server makes a best effort to cancel the operation, but success
32897// is not guaranteed. If the server doesn't support this method, it
32898// returns `google.rpc.Code.UNIMPLEMENTED`. Clients can use
32899// Operations.GetOperation or other methods to check whether the
32900// cancellation succeeded or whether the operation completed despite
32901// cancellation. On successful cancellation, the operation is not
32902// deleted; instead, it becomes an operation with an Operation.error
32903// value with a google.rpc.Status.code of 1, corresponding to
32904// `Code.CANCELLED`.
32905//
32906// - name: The name of the operation resource to be cancelled.
32907func (r *ProjectsLocationsOperationsService) Cancel(name string) *ProjectsLocationsOperationsCancelCall {
32908	c := &ProjectsLocationsOperationsCancelCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32909	c.name = name
32910	return c
32911}
32912
32913// Fields allows partial responses to be retrieved. See
32914// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32915// for more information.
32916func (c *ProjectsLocationsOperationsCancelCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsCancelCall {
32917	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32918	return c
32919}
32920
32921// Context sets the context to be used in this call's Do method. Any
32922// pending HTTP request will be aborted if the provided context is
32923// canceled.
32924func (c *ProjectsLocationsOperationsCancelCall) Context(ctx context.Context) *ProjectsLocationsOperationsCancelCall {
32925	c.ctx_ = ctx
32926	return c
32927}
32928
32929// Header returns an http.Header that can be modified by the caller to
32930// add HTTP headers to the request.
32931func (c *ProjectsLocationsOperationsCancelCall) Header() http.Header {
32932	if c.header_ == nil {
32933		c.header_ = make(http.Header)
32934	}
32935	return c.header_
32936}
32937
32938func (c *ProjectsLocationsOperationsCancelCall) doRequest(alt string) (*http.Response, error) {
32939	reqHeaders := make(http.Header)
32940	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
32941	for k, v := range c.header_ {
32942		reqHeaders[k] = v
32943	}
32944	reqHeaders.Set("User-Agent", c.s.userAgent())
32945	var body io.Reader = nil
32946	c.urlParams_.Set("alt", alt)
32947	c.urlParams_.Set("prettyPrint", "false")
32948	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}:cancel")
32949	urls += "?" + c.urlParams_.Encode()
32950	req, err := http.NewRequest("POST", urls, body)
32951	if err != nil {
32952		return nil, err
32953	}
32954	req.Header = reqHeaders
32955	googleapi.Expand(req.URL, map[string]string{
32956		"name": c.name,
32957	})
32958	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32959}
32960
32961// Do executes the "dialogflow.projects.locations.operations.cancel" call.
32962// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
32963// non-2xx status code is an error. Response headers are in either
32964// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
32965// returned at all) in error.(*googleapi.Error).Header. Use
32966// googleapi.IsNotModified to check whether the returned error was
32967// because http.StatusNotModified was returned.
32968func (c *ProjectsLocationsOperationsCancelCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
32969	gensupport.SetOptions(c.urlParams_, opts...)
32970	res, err := c.doRequest("json")
32971	if res != nil && res.StatusCode == http.StatusNotModified {
32972		if res.Body != nil {
32973			res.Body.Close()
32974		}
32975		return nil, &googleapi.Error{
32976			Code:   res.StatusCode,
32977			Header: res.Header,
32978		}
32979	}
32980	if err != nil {
32981		return nil, err
32982	}
32983	defer googleapi.CloseBody(res)
32984	if err := googleapi.CheckResponse(res); err != nil {
32985		return nil, err
32986	}
32987	ret := &GoogleProtobufEmpty{
32988		ServerResponse: googleapi.ServerResponse{
32989			Header:         res.Header,
32990			HTTPStatusCode: res.StatusCode,
32991		},
32992	}
32993	target := &ret
32994	if err := gensupport.DecodeResponse(target, res); err != nil {
32995		return nil, err
32996	}
32997	return ret, nil
32998	// {
32999	//   "description": "Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Clients can use Operations.GetOperation or other methods to check whether the cancellation succeeded or whether the operation completed despite cancellation. On successful cancellation, the operation is not deleted; instead, it becomes an operation with an Operation.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`.",
33000	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}:cancel",
33001	//   "httpMethod": "POST",
33002	//   "id": "dialogflow.projects.locations.operations.cancel",
33003	//   "parameterOrder": [
33004	//     "name"
33005	//   ],
33006	//   "parameters": {
33007	//     "name": {
33008	//       "description": "The name of the operation resource to be cancelled.",
33009	//       "location": "path",
33010	//       "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$",
33011	//       "required": true,
33012	//       "type": "string"
33013	//     }
33014	//   },
33015	//   "path": "v3/{+name}:cancel",
33016	//   "response": {
33017	//     "$ref": "GoogleProtobufEmpty"
33018	//   },
33019	//   "scopes": [
33020	//     "https://www.googleapis.com/auth/cloud-platform",
33021	//     "https://www.googleapis.com/auth/dialogflow"
33022	//   ]
33023	// }
33024
33025}
33026
33027// method id "dialogflow.projects.locations.operations.get":
33028
33029type ProjectsLocationsOperationsGetCall struct {
33030	s            *Service
33031	name         string
33032	urlParams_   gensupport.URLParams
33033	ifNoneMatch_ string
33034	ctx_         context.Context
33035	header_      http.Header
33036}
33037
33038// Get: Gets the latest state of a long-running operation. Clients can
33039// use this method to poll the operation result at intervals as
33040// recommended by the API service.
33041//
33042// - name: The name of the operation resource.
33043func (r *ProjectsLocationsOperationsService) Get(name string) *ProjectsLocationsOperationsGetCall {
33044	c := &ProjectsLocationsOperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33045	c.name = name
33046	return c
33047}
33048
33049// Fields allows partial responses to be retrieved. See
33050// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33051// for more information.
33052func (c *ProjectsLocationsOperationsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsGetCall {
33053	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33054	return c
33055}
33056
33057// IfNoneMatch sets the optional parameter which makes the operation
33058// fail if the object's ETag matches the given value. This is useful for
33059// getting updates only after the object has changed since the last
33060// request. Use googleapi.IsNotModified to check whether the response
33061// error from Do is the result of In-None-Match.
33062func (c *ProjectsLocationsOperationsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsOperationsGetCall {
33063	c.ifNoneMatch_ = entityTag
33064	return c
33065}
33066
33067// Context sets the context to be used in this call's Do method. Any
33068// pending HTTP request will be aborted if the provided context is
33069// canceled.
33070func (c *ProjectsLocationsOperationsGetCall) Context(ctx context.Context) *ProjectsLocationsOperationsGetCall {
33071	c.ctx_ = ctx
33072	return c
33073}
33074
33075// Header returns an http.Header that can be modified by the caller to
33076// add HTTP headers to the request.
33077func (c *ProjectsLocationsOperationsGetCall) Header() http.Header {
33078	if c.header_ == nil {
33079		c.header_ = make(http.Header)
33080	}
33081	return c.header_
33082}
33083
33084func (c *ProjectsLocationsOperationsGetCall) doRequest(alt string) (*http.Response, error) {
33085	reqHeaders := make(http.Header)
33086	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
33087	for k, v := range c.header_ {
33088		reqHeaders[k] = v
33089	}
33090	reqHeaders.Set("User-Agent", c.s.userAgent())
33091	if c.ifNoneMatch_ != "" {
33092		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
33093	}
33094	var body io.Reader = nil
33095	c.urlParams_.Set("alt", alt)
33096	c.urlParams_.Set("prettyPrint", "false")
33097	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
33098	urls += "?" + c.urlParams_.Encode()
33099	req, err := http.NewRequest("GET", urls, body)
33100	if err != nil {
33101		return nil, err
33102	}
33103	req.Header = reqHeaders
33104	googleapi.Expand(req.URL, map[string]string{
33105		"name": c.name,
33106	})
33107	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33108}
33109
33110// Do executes the "dialogflow.projects.locations.operations.get" call.
33111// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
33112// Any non-2xx status code is an error. Response headers are in either
33113// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
33114// was returned at all) in error.(*googleapi.Error).Header. Use
33115// googleapi.IsNotModified to check whether the returned error was
33116// because http.StatusNotModified was returned.
33117func (c *ProjectsLocationsOperationsGetCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
33118	gensupport.SetOptions(c.urlParams_, opts...)
33119	res, err := c.doRequest("json")
33120	if res != nil && res.StatusCode == http.StatusNotModified {
33121		if res.Body != nil {
33122			res.Body.Close()
33123		}
33124		return nil, &googleapi.Error{
33125			Code:   res.StatusCode,
33126			Header: res.Header,
33127		}
33128	}
33129	if err != nil {
33130		return nil, err
33131	}
33132	defer googleapi.CloseBody(res)
33133	if err := googleapi.CheckResponse(res); err != nil {
33134		return nil, err
33135	}
33136	ret := &GoogleLongrunningOperation{
33137		ServerResponse: googleapi.ServerResponse{
33138			Header:         res.Header,
33139			HTTPStatusCode: res.StatusCode,
33140		},
33141	}
33142	target := &ret
33143	if err := gensupport.DecodeResponse(target, res); err != nil {
33144		return nil, err
33145	}
33146	return ret, nil
33147	// {
33148	//   "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.",
33149	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}",
33150	//   "httpMethod": "GET",
33151	//   "id": "dialogflow.projects.locations.operations.get",
33152	//   "parameterOrder": [
33153	//     "name"
33154	//   ],
33155	//   "parameters": {
33156	//     "name": {
33157	//       "description": "The name of the operation resource.",
33158	//       "location": "path",
33159	//       "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$",
33160	//       "required": true,
33161	//       "type": "string"
33162	//     }
33163	//   },
33164	//   "path": "v3/{+name}",
33165	//   "response": {
33166	//     "$ref": "GoogleLongrunningOperation"
33167	//   },
33168	//   "scopes": [
33169	//     "https://www.googleapis.com/auth/cloud-platform",
33170	//     "https://www.googleapis.com/auth/dialogflow"
33171	//   ]
33172	// }
33173
33174}
33175
33176// method id "dialogflow.projects.locations.operations.list":
33177
33178type ProjectsLocationsOperationsListCall struct {
33179	s            *Service
33180	name         string
33181	urlParams_   gensupport.URLParams
33182	ifNoneMatch_ string
33183	ctx_         context.Context
33184	header_      http.Header
33185}
33186
33187// List: Lists operations that match the specified filter in the
33188// request. If the server doesn't support this method, it returns
33189// `UNIMPLEMENTED`. NOTE: the `name` binding allows API services to
33190// override the binding to use different resource name schemes, such as
33191// `users/*/operations`. To override the binding, API services can add a
33192// binding such as "/v1/{name=users/*}/operations" to their service
33193// configuration. For backwards compatibility, the default name includes
33194// the operations collection id, however overriding users must ensure
33195// the name binding is the parent resource, without the operations
33196// collection id.
33197//
33198// - name: The name of the operation's parent resource.
33199func (r *ProjectsLocationsOperationsService) List(name string) *ProjectsLocationsOperationsListCall {
33200	c := &ProjectsLocationsOperationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33201	c.name = name
33202	return c
33203}
33204
33205// Filter sets the optional parameter "filter": The standard list
33206// filter.
33207func (c *ProjectsLocationsOperationsListCall) Filter(filter string) *ProjectsLocationsOperationsListCall {
33208	c.urlParams_.Set("filter", filter)
33209	return c
33210}
33211
33212// PageSize sets the optional parameter "pageSize": The standard list
33213// page size.
33214func (c *ProjectsLocationsOperationsListCall) PageSize(pageSize int64) *ProjectsLocationsOperationsListCall {
33215	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
33216	return c
33217}
33218
33219// PageToken sets the optional parameter "pageToken": The standard list
33220// page token.
33221func (c *ProjectsLocationsOperationsListCall) PageToken(pageToken string) *ProjectsLocationsOperationsListCall {
33222	c.urlParams_.Set("pageToken", pageToken)
33223	return c
33224}
33225
33226// Fields allows partial responses to be retrieved. See
33227// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33228// for more information.
33229func (c *ProjectsLocationsOperationsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsListCall {
33230	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33231	return c
33232}
33233
33234// IfNoneMatch sets the optional parameter which makes the operation
33235// fail if the object's ETag matches the given value. This is useful for
33236// getting updates only after the object has changed since the last
33237// request. Use googleapi.IsNotModified to check whether the response
33238// error from Do is the result of In-None-Match.
33239func (c *ProjectsLocationsOperationsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsOperationsListCall {
33240	c.ifNoneMatch_ = entityTag
33241	return c
33242}
33243
33244// Context sets the context to be used in this call's Do method. Any
33245// pending HTTP request will be aborted if the provided context is
33246// canceled.
33247func (c *ProjectsLocationsOperationsListCall) Context(ctx context.Context) *ProjectsLocationsOperationsListCall {
33248	c.ctx_ = ctx
33249	return c
33250}
33251
33252// Header returns an http.Header that can be modified by the caller to
33253// add HTTP headers to the request.
33254func (c *ProjectsLocationsOperationsListCall) Header() http.Header {
33255	if c.header_ == nil {
33256		c.header_ = make(http.Header)
33257	}
33258	return c.header_
33259}
33260
33261func (c *ProjectsLocationsOperationsListCall) doRequest(alt string) (*http.Response, error) {
33262	reqHeaders := make(http.Header)
33263	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
33264	for k, v := range c.header_ {
33265		reqHeaders[k] = v
33266	}
33267	reqHeaders.Set("User-Agent", c.s.userAgent())
33268	if c.ifNoneMatch_ != "" {
33269		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
33270	}
33271	var body io.Reader = nil
33272	c.urlParams_.Set("alt", alt)
33273	c.urlParams_.Set("prettyPrint", "false")
33274	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}/operations")
33275	urls += "?" + c.urlParams_.Encode()
33276	req, err := http.NewRequest("GET", urls, body)
33277	if err != nil {
33278		return nil, err
33279	}
33280	req.Header = reqHeaders
33281	googleapi.Expand(req.URL, map[string]string{
33282		"name": c.name,
33283	})
33284	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33285}
33286
33287// Do executes the "dialogflow.projects.locations.operations.list" call.
33288// Exactly one of *GoogleLongrunningListOperationsResponse or error will
33289// be non-nil. Any non-2xx status code is an error. Response headers are
33290// in either
33291// *GoogleLongrunningListOperationsResponse.ServerResponse.Header or (if
33292// a response was returned at all) in error.(*googleapi.Error).Header.
33293// Use googleapi.IsNotModified to check whether the returned error was
33294// because http.StatusNotModified was returned.
33295func (c *ProjectsLocationsOperationsListCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningListOperationsResponse, error) {
33296	gensupport.SetOptions(c.urlParams_, opts...)
33297	res, err := c.doRequest("json")
33298	if res != nil && res.StatusCode == http.StatusNotModified {
33299		if res.Body != nil {
33300			res.Body.Close()
33301		}
33302		return nil, &googleapi.Error{
33303			Code:   res.StatusCode,
33304			Header: res.Header,
33305		}
33306	}
33307	if err != nil {
33308		return nil, err
33309	}
33310	defer googleapi.CloseBody(res)
33311	if err := googleapi.CheckResponse(res); err != nil {
33312		return nil, err
33313	}
33314	ret := &GoogleLongrunningListOperationsResponse{
33315		ServerResponse: googleapi.ServerResponse{
33316			Header:         res.Header,
33317			HTTPStatusCode: res.StatusCode,
33318		},
33319	}
33320	target := &ret
33321	if err := gensupport.DecodeResponse(target, res); err != nil {
33322		return nil, err
33323	}
33324	return ret, nil
33325	// {
33326	//   "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`. NOTE: the `name` binding allows API services to override the binding to use different resource name schemes, such as `users/*/operations`. To override the binding, API services can add a binding such as `\"/v1/{name=users/*}/operations\"` to their service configuration. For backwards compatibility, the default name includes the operations collection id, however overriding users must ensure the name binding is the parent resource, without the operations collection id.",
33327	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/operations",
33328	//   "httpMethod": "GET",
33329	//   "id": "dialogflow.projects.locations.operations.list",
33330	//   "parameterOrder": [
33331	//     "name"
33332	//   ],
33333	//   "parameters": {
33334	//     "filter": {
33335	//       "description": "The standard list filter.",
33336	//       "location": "query",
33337	//       "type": "string"
33338	//     },
33339	//     "name": {
33340	//       "description": "The name of the operation's parent resource.",
33341	//       "location": "path",
33342	//       "pattern": "^projects/[^/]+/locations/[^/]+$",
33343	//       "required": true,
33344	//       "type": "string"
33345	//     },
33346	//     "pageSize": {
33347	//       "description": "The standard list page size.",
33348	//       "format": "int32",
33349	//       "location": "query",
33350	//       "type": "integer"
33351	//     },
33352	//     "pageToken": {
33353	//       "description": "The standard list page token.",
33354	//       "location": "query",
33355	//       "type": "string"
33356	//     }
33357	//   },
33358	//   "path": "v3/{+name}/operations",
33359	//   "response": {
33360	//     "$ref": "GoogleLongrunningListOperationsResponse"
33361	//   },
33362	//   "scopes": [
33363	//     "https://www.googleapis.com/auth/cloud-platform",
33364	//     "https://www.googleapis.com/auth/dialogflow"
33365	//   ]
33366	// }
33367
33368}
33369
33370// Pages invokes f for each page of results.
33371// A non-nil error returned from f will halt the iteration.
33372// The provided context supersedes any context provided to the Context method.
33373func (c *ProjectsLocationsOperationsListCall) Pages(ctx context.Context, f func(*GoogleLongrunningListOperationsResponse) error) error {
33374	c.ctx_ = ctx
33375	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
33376	for {
33377		x, err := c.Do()
33378		if err != nil {
33379			return err
33380		}
33381		if err := f(x); err != nil {
33382			return err
33383		}
33384		if x.NextPageToken == "" {
33385			return nil
33386		}
33387		c.PageToken(x.NextPageToken)
33388	}
33389}
33390
33391// method id "dialogflow.projects.locations.securitySettings.create":
33392
33393type ProjectsLocationsSecuritySettingsCreateCall struct {
33394	s                                         *Service
33395	parent                                    string
33396	googleclouddialogflowcxv3securitysettings *GoogleCloudDialogflowCxV3SecuritySettings
33397	urlParams_                                gensupport.URLParams
33398	ctx_                                      context.Context
33399	header_                                   http.Header
33400}
33401
33402// Create: Create security settings in the specified location.
33403//
33404// - parent: The location to create an SecuritySettings for. Format:
33405//   `projects//locations/`.
33406func (r *ProjectsLocationsSecuritySettingsService) Create(parent string, googleclouddialogflowcxv3securitysettings *GoogleCloudDialogflowCxV3SecuritySettings) *ProjectsLocationsSecuritySettingsCreateCall {
33407	c := &ProjectsLocationsSecuritySettingsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33408	c.parent = parent
33409	c.googleclouddialogflowcxv3securitysettings = googleclouddialogflowcxv3securitysettings
33410	return c
33411}
33412
33413// Fields allows partial responses to be retrieved. See
33414// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33415// for more information.
33416func (c *ProjectsLocationsSecuritySettingsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsSecuritySettingsCreateCall {
33417	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33418	return c
33419}
33420
33421// Context sets the context to be used in this call's Do method. Any
33422// pending HTTP request will be aborted if the provided context is
33423// canceled.
33424func (c *ProjectsLocationsSecuritySettingsCreateCall) Context(ctx context.Context) *ProjectsLocationsSecuritySettingsCreateCall {
33425	c.ctx_ = ctx
33426	return c
33427}
33428
33429// Header returns an http.Header that can be modified by the caller to
33430// add HTTP headers to the request.
33431func (c *ProjectsLocationsSecuritySettingsCreateCall) Header() http.Header {
33432	if c.header_ == nil {
33433		c.header_ = make(http.Header)
33434	}
33435	return c.header_
33436}
33437
33438func (c *ProjectsLocationsSecuritySettingsCreateCall) doRequest(alt string) (*http.Response, error) {
33439	reqHeaders := make(http.Header)
33440	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
33441	for k, v := range c.header_ {
33442		reqHeaders[k] = v
33443	}
33444	reqHeaders.Set("User-Agent", c.s.userAgent())
33445	var body io.Reader = nil
33446	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3securitysettings)
33447	if err != nil {
33448		return nil, err
33449	}
33450	reqHeaders.Set("Content-Type", "application/json")
33451	c.urlParams_.Set("alt", alt)
33452	c.urlParams_.Set("prettyPrint", "false")
33453	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/securitySettings")
33454	urls += "?" + c.urlParams_.Encode()
33455	req, err := http.NewRequest("POST", urls, body)
33456	if err != nil {
33457		return nil, err
33458	}
33459	req.Header = reqHeaders
33460	googleapi.Expand(req.URL, map[string]string{
33461		"parent": c.parent,
33462	})
33463	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33464}
33465
33466// Do executes the "dialogflow.projects.locations.securitySettings.create" call.
33467// Exactly one of *GoogleCloudDialogflowCxV3SecuritySettings or error
33468// will be non-nil. Any non-2xx status code is an error. Response
33469// headers are in either
33470// *GoogleCloudDialogflowCxV3SecuritySettings.ServerResponse.Header or
33471// (if a response was returned at all) in
33472// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
33473// whether the returned error was because http.StatusNotModified was
33474// returned.
33475func (c *ProjectsLocationsSecuritySettingsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3SecuritySettings, error) {
33476	gensupport.SetOptions(c.urlParams_, opts...)
33477	res, err := c.doRequest("json")
33478	if res != nil && res.StatusCode == http.StatusNotModified {
33479		if res.Body != nil {
33480			res.Body.Close()
33481		}
33482		return nil, &googleapi.Error{
33483			Code:   res.StatusCode,
33484			Header: res.Header,
33485		}
33486	}
33487	if err != nil {
33488		return nil, err
33489	}
33490	defer googleapi.CloseBody(res)
33491	if err := googleapi.CheckResponse(res); err != nil {
33492		return nil, err
33493	}
33494	ret := &GoogleCloudDialogflowCxV3SecuritySettings{
33495		ServerResponse: googleapi.ServerResponse{
33496			Header:         res.Header,
33497			HTTPStatusCode: res.StatusCode,
33498		},
33499	}
33500	target := &ret
33501	if err := gensupport.DecodeResponse(target, res); err != nil {
33502		return nil, err
33503	}
33504	return ret, nil
33505	// {
33506	//   "description": "Create security settings in the specified location.",
33507	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/securitySettings",
33508	//   "httpMethod": "POST",
33509	//   "id": "dialogflow.projects.locations.securitySettings.create",
33510	//   "parameterOrder": [
33511	//     "parent"
33512	//   ],
33513	//   "parameters": {
33514	//     "parent": {
33515	//       "description": "Required. The location to create an SecuritySettings for. Format: `projects//locations/`.",
33516	//       "location": "path",
33517	//       "pattern": "^projects/[^/]+/locations/[^/]+$",
33518	//       "required": true,
33519	//       "type": "string"
33520	//     }
33521	//   },
33522	//   "path": "v3/{+parent}/securitySettings",
33523	//   "request": {
33524	//     "$ref": "GoogleCloudDialogflowCxV3SecuritySettings"
33525	//   },
33526	//   "response": {
33527	//     "$ref": "GoogleCloudDialogflowCxV3SecuritySettings"
33528	//   },
33529	//   "scopes": [
33530	//     "https://www.googleapis.com/auth/cloud-platform",
33531	//     "https://www.googleapis.com/auth/dialogflow"
33532	//   ]
33533	// }
33534
33535}
33536
33537// method id "dialogflow.projects.locations.securitySettings.delete":
33538
33539type ProjectsLocationsSecuritySettingsDeleteCall struct {
33540	s          *Service
33541	name       string
33542	urlParams_ gensupport.URLParams
33543	ctx_       context.Context
33544	header_    http.Header
33545}
33546
33547// Delete: Deletes the specified SecuritySettings.
33548//
33549// - name: The name of the SecuritySettings to delete. Format:
33550//   `projects//locations//securitySettings/`.
33551func (r *ProjectsLocationsSecuritySettingsService) Delete(name string) *ProjectsLocationsSecuritySettingsDeleteCall {
33552	c := &ProjectsLocationsSecuritySettingsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33553	c.name = name
33554	return c
33555}
33556
33557// Fields allows partial responses to be retrieved. See
33558// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33559// for more information.
33560func (c *ProjectsLocationsSecuritySettingsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsSecuritySettingsDeleteCall {
33561	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33562	return c
33563}
33564
33565// Context sets the context to be used in this call's Do method. Any
33566// pending HTTP request will be aborted if the provided context is
33567// canceled.
33568func (c *ProjectsLocationsSecuritySettingsDeleteCall) Context(ctx context.Context) *ProjectsLocationsSecuritySettingsDeleteCall {
33569	c.ctx_ = ctx
33570	return c
33571}
33572
33573// Header returns an http.Header that can be modified by the caller to
33574// add HTTP headers to the request.
33575func (c *ProjectsLocationsSecuritySettingsDeleteCall) Header() http.Header {
33576	if c.header_ == nil {
33577		c.header_ = make(http.Header)
33578	}
33579	return c.header_
33580}
33581
33582func (c *ProjectsLocationsSecuritySettingsDeleteCall) doRequest(alt string) (*http.Response, error) {
33583	reqHeaders := make(http.Header)
33584	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
33585	for k, v := range c.header_ {
33586		reqHeaders[k] = v
33587	}
33588	reqHeaders.Set("User-Agent", c.s.userAgent())
33589	var body io.Reader = nil
33590	c.urlParams_.Set("alt", alt)
33591	c.urlParams_.Set("prettyPrint", "false")
33592	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
33593	urls += "?" + c.urlParams_.Encode()
33594	req, err := http.NewRequest("DELETE", urls, body)
33595	if err != nil {
33596		return nil, err
33597	}
33598	req.Header = reqHeaders
33599	googleapi.Expand(req.URL, map[string]string{
33600		"name": c.name,
33601	})
33602	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33603}
33604
33605// Do executes the "dialogflow.projects.locations.securitySettings.delete" call.
33606// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
33607// non-2xx status code is an error. Response headers are in either
33608// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
33609// returned at all) in error.(*googleapi.Error).Header. Use
33610// googleapi.IsNotModified to check whether the returned error was
33611// because http.StatusNotModified was returned.
33612func (c *ProjectsLocationsSecuritySettingsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
33613	gensupport.SetOptions(c.urlParams_, opts...)
33614	res, err := c.doRequest("json")
33615	if res != nil && res.StatusCode == http.StatusNotModified {
33616		if res.Body != nil {
33617			res.Body.Close()
33618		}
33619		return nil, &googleapi.Error{
33620			Code:   res.StatusCode,
33621			Header: res.Header,
33622		}
33623	}
33624	if err != nil {
33625		return nil, err
33626	}
33627	defer googleapi.CloseBody(res)
33628	if err := googleapi.CheckResponse(res); err != nil {
33629		return nil, err
33630	}
33631	ret := &GoogleProtobufEmpty{
33632		ServerResponse: googleapi.ServerResponse{
33633			Header:         res.Header,
33634			HTTPStatusCode: res.StatusCode,
33635		},
33636	}
33637	target := &ret
33638	if err := gensupport.DecodeResponse(target, res); err != nil {
33639		return nil, err
33640	}
33641	return ret, nil
33642	// {
33643	//   "description": "Deletes the specified SecuritySettings.",
33644	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/securitySettings/{securitySettingsId}",
33645	//   "httpMethod": "DELETE",
33646	//   "id": "dialogflow.projects.locations.securitySettings.delete",
33647	//   "parameterOrder": [
33648	//     "name"
33649	//   ],
33650	//   "parameters": {
33651	//     "name": {
33652	//       "description": "Required. The name of the SecuritySettings to delete. Format: `projects//locations//securitySettings/`.",
33653	//       "location": "path",
33654	//       "pattern": "^projects/[^/]+/locations/[^/]+/securitySettings/[^/]+$",
33655	//       "required": true,
33656	//       "type": "string"
33657	//     }
33658	//   },
33659	//   "path": "v3/{+name}",
33660	//   "response": {
33661	//     "$ref": "GoogleProtobufEmpty"
33662	//   },
33663	//   "scopes": [
33664	//     "https://www.googleapis.com/auth/cloud-platform",
33665	//     "https://www.googleapis.com/auth/dialogflow"
33666	//   ]
33667	// }
33668
33669}
33670
33671// method id "dialogflow.projects.locations.securitySettings.get":
33672
33673type ProjectsLocationsSecuritySettingsGetCall struct {
33674	s            *Service
33675	name         string
33676	urlParams_   gensupport.URLParams
33677	ifNoneMatch_ string
33678	ctx_         context.Context
33679	header_      http.Header
33680}
33681
33682// Get: Retrieves the specified SecuritySettings. The returned settings
33683// may be stale by up to 1 minute.
33684//
33685// - name: Resource name of the settings. Format:
33686//   `projects//locations//securitySettings/`.
33687func (r *ProjectsLocationsSecuritySettingsService) Get(name string) *ProjectsLocationsSecuritySettingsGetCall {
33688	c := &ProjectsLocationsSecuritySettingsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33689	c.name = name
33690	return c
33691}
33692
33693// Fields allows partial responses to be retrieved. See
33694// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33695// for more information.
33696func (c *ProjectsLocationsSecuritySettingsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsSecuritySettingsGetCall {
33697	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33698	return c
33699}
33700
33701// IfNoneMatch sets the optional parameter which makes the operation
33702// fail if the object's ETag matches the given value. This is useful for
33703// getting updates only after the object has changed since the last
33704// request. Use googleapi.IsNotModified to check whether the response
33705// error from Do is the result of In-None-Match.
33706func (c *ProjectsLocationsSecuritySettingsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsSecuritySettingsGetCall {
33707	c.ifNoneMatch_ = entityTag
33708	return c
33709}
33710
33711// Context sets the context to be used in this call's Do method. Any
33712// pending HTTP request will be aborted if the provided context is
33713// canceled.
33714func (c *ProjectsLocationsSecuritySettingsGetCall) Context(ctx context.Context) *ProjectsLocationsSecuritySettingsGetCall {
33715	c.ctx_ = ctx
33716	return c
33717}
33718
33719// Header returns an http.Header that can be modified by the caller to
33720// add HTTP headers to the request.
33721func (c *ProjectsLocationsSecuritySettingsGetCall) Header() http.Header {
33722	if c.header_ == nil {
33723		c.header_ = make(http.Header)
33724	}
33725	return c.header_
33726}
33727
33728func (c *ProjectsLocationsSecuritySettingsGetCall) doRequest(alt string) (*http.Response, error) {
33729	reqHeaders := make(http.Header)
33730	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
33731	for k, v := range c.header_ {
33732		reqHeaders[k] = v
33733	}
33734	reqHeaders.Set("User-Agent", c.s.userAgent())
33735	if c.ifNoneMatch_ != "" {
33736		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
33737	}
33738	var body io.Reader = nil
33739	c.urlParams_.Set("alt", alt)
33740	c.urlParams_.Set("prettyPrint", "false")
33741	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
33742	urls += "?" + c.urlParams_.Encode()
33743	req, err := http.NewRequest("GET", urls, body)
33744	if err != nil {
33745		return nil, err
33746	}
33747	req.Header = reqHeaders
33748	googleapi.Expand(req.URL, map[string]string{
33749		"name": c.name,
33750	})
33751	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33752}
33753
33754// Do executes the "dialogflow.projects.locations.securitySettings.get" call.
33755// Exactly one of *GoogleCloudDialogflowCxV3SecuritySettings or error
33756// will be non-nil. Any non-2xx status code is an error. Response
33757// headers are in either
33758// *GoogleCloudDialogflowCxV3SecuritySettings.ServerResponse.Header or
33759// (if a response was returned at all) in
33760// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
33761// whether the returned error was because http.StatusNotModified was
33762// returned.
33763func (c *ProjectsLocationsSecuritySettingsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3SecuritySettings, error) {
33764	gensupport.SetOptions(c.urlParams_, opts...)
33765	res, err := c.doRequest("json")
33766	if res != nil && res.StatusCode == http.StatusNotModified {
33767		if res.Body != nil {
33768			res.Body.Close()
33769		}
33770		return nil, &googleapi.Error{
33771			Code:   res.StatusCode,
33772			Header: res.Header,
33773		}
33774	}
33775	if err != nil {
33776		return nil, err
33777	}
33778	defer googleapi.CloseBody(res)
33779	if err := googleapi.CheckResponse(res); err != nil {
33780		return nil, err
33781	}
33782	ret := &GoogleCloudDialogflowCxV3SecuritySettings{
33783		ServerResponse: googleapi.ServerResponse{
33784			Header:         res.Header,
33785			HTTPStatusCode: res.StatusCode,
33786		},
33787	}
33788	target := &ret
33789	if err := gensupport.DecodeResponse(target, res); err != nil {
33790		return nil, err
33791	}
33792	return ret, nil
33793	// {
33794	//   "description": "Retrieves the specified SecuritySettings. The returned settings may be stale by up to 1 minute.",
33795	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/securitySettings/{securitySettingsId}",
33796	//   "httpMethod": "GET",
33797	//   "id": "dialogflow.projects.locations.securitySettings.get",
33798	//   "parameterOrder": [
33799	//     "name"
33800	//   ],
33801	//   "parameters": {
33802	//     "name": {
33803	//       "description": "Required. Resource name of the settings. Format: `projects//locations//securitySettings/`.",
33804	//       "location": "path",
33805	//       "pattern": "^projects/[^/]+/locations/[^/]+/securitySettings/[^/]+$",
33806	//       "required": true,
33807	//       "type": "string"
33808	//     }
33809	//   },
33810	//   "path": "v3/{+name}",
33811	//   "response": {
33812	//     "$ref": "GoogleCloudDialogflowCxV3SecuritySettings"
33813	//   },
33814	//   "scopes": [
33815	//     "https://www.googleapis.com/auth/cloud-platform",
33816	//     "https://www.googleapis.com/auth/dialogflow"
33817	//   ]
33818	// }
33819
33820}
33821
33822// method id "dialogflow.projects.locations.securitySettings.list":
33823
33824type ProjectsLocationsSecuritySettingsListCall struct {
33825	s            *Service
33826	parent       string
33827	urlParams_   gensupport.URLParams
33828	ifNoneMatch_ string
33829	ctx_         context.Context
33830	header_      http.Header
33831}
33832
33833// List: Returns the list of all security settings in the specified
33834// location.
33835//
33836// - parent: The location to list all security settings for. Format:
33837//   `projects//locations/`.
33838func (r *ProjectsLocationsSecuritySettingsService) List(parent string) *ProjectsLocationsSecuritySettingsListCall {
33839	c := &ProjectsLocationsSecuritySettingsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33840	c.parent = parent
33841	return c
33842}
33843
33844// PageSize sets the optional parameter "pageSize": The maximum number
33845// of items to return in a single page. By default 20 and at most 100.
33846func (c *ProjectsLocationsSecuritySettingsListCall) PageSize(pageSize int64) *ProjectsLocationsSecuritySettingsListCall {
33847	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
33848	return c
33849}
33850
33851// PageToken sets the optional parameter "pageToken": The
33852// next_page_token value returned from a previous list request.
33853func (c *ProjectsLocationsSecuritySettingsListCall) PageToken(pageToken string) *ProjectsLocationsSecuritySettingsListCall {
33854	c.urlParams_.Set("pageToken", pageToken)
33855	return c
33856}
33857
33858// Fields allows partial responses to be retrieved. See
33859// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33860// for more information.
33861func (c *ProjectsLocationsSecuritySettingsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsSecuritySettingsListCall {
33862	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33863	return c
33864}
33865
33866// IfNoneMatch sets the optional parameter which makes the operation
33867// fail if the object's ETag matches the given value. This is useful for
33868// getting updates only after the object has changed since the last
33869// request. Use googleapi.IsNotModified to check whether the response
33870// error from Do is the result of In-None-Match.
33871func (c *ProjectsLocationsSecuritySettingsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsSecuritySettingsListCall {
33872	c.ifNoneMatch_ = entityTag
33873	return c
33874}
33875
33876// Context sets the context to be used in this call's Do method. Any
33877// pending HTTP request will be aborted if the provided context is
33878// canceled.
33879func (c *ProjectsLocationsSecuritySettingsListCall) Context(ctx context.Context) *ProjectsLocationsSecuritySettingsListCall {
33880	c.ctx_ = ctx
33881	return c
33882}
33883
33884// Header returns an http.Header that can be modified by the caller to
33885// add HTTP headers to the request.
33886func (c *ProjectsLocationsSecuritySettingsListCall) Header() http.Header {
33887	if c.header_ == nil {
33888		c.header_ = make(http.Header)
33889	}
33890	return c.header_
33891}
33892
33893func (c *ProjectsLocationsSecuritySettingsListCall) doRequest(alt string) (*http.Response, error) {
33894	reqHeaders := make(http.Header)
33895	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
33896	for k, v := range c.header_ {
33897		reqHeaders[k] = v
33898	}
33899	reqHeaders.Set("User-Agent", c.s.userAgent())
33900	if c.ifNoneMatch_ != "" {
33901		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
33902	}
33903	var body io.Reader = nil
33904	c.urlParams_.Set("alt", alt)
33905	c.urlParams_.Set("prettyPrint", "false")
33906	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/securitySettings")
33907	urls += "?" + c.urlParams_.Encode()
33908	req, err := http.NewRequest("GET", urls, body)
33909	if err != nil {
33910		return nil, err
33911	}
33912	req.Header = reqHeaders
33913	googleapi.Expand(req.URL, map[string]string{
33914		"parent": c.parent,
33915	})
33916	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33917}
33918
33919// Do executes the "dialogflow.projects.locations.securitySettings.list" call.
33920// Exactly one of *GoogleCloudDialogflowCxV3ListSecuritySettingsResponse
33921// or error will be non-nil. Any non-2xx status code is an error.
33922// Response headers are in either
33923// *GoogleCloudDialogflowCxV3ListSecuritySettingsResponse.ServerResponse.
33924// Header or (if a response was returned at all) in
33925// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
33926// whether the returned error was because http.StatusNotModified was
33927// returned.
33928func (c *ProjectsLocationsSecuritySettingsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3ListSecuritySettingsResponse, error) {
33929	gensupport.SetOptions(c.urlParams_, opts...)
33930	res, err := c.doRequest("json")
33931	if res != nil && res.StatusCode == http.StatusNotModified {
33932		if res.Body != nil {
33933			res.Body.Close()
33934		}
33935		return nil, &googleapi.Error{
33936			Code:   res.StatusCode,
33937			Header: res.Header,
33938		}
33939	}
33940	if err != nil {
33941		return nil, err
33942	}
33943	defer googleapi.CloseBody(res)
33944	if err := googleapi.CheckResponse(res); err != nil {
33945		return nil, err
33946	}
33947	ret := &GoogleCloudDialogflowCxV3ListSecuritySettingsResponse{
33948		ServerResponse: googleapi.ServerResponse{
33949			Header:         res.Header,
33950			HTTPStatusCode: res.StatusCode,
33951		},
33952	}
33953	target := &ret
33954	if err := gensupport.DecodeResponse(target, res); err != nil {
33955		return nil, err
33956	}
33957	return ret, nil
33958	// {
33959	//   "description": "Returns the list of all security settings in the specified location.",
33960	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/securitySettings",
33961	//   "httpMethod": "GET",
33962	//   "id": "dialogflow.projects.locations.securitySettings.list",
33963	//   "parameterOrder": [
33964	//     "parent"
33965	//   ],
33966	//   "parameters": {
33967	//     "pageSize": {
33968	//       "description": "The maximum number of items to return in a single page. By default 20 and at most 100.",
33969	//       "format": "int32",
33970	//       "location": "query",
33971	//       "type": "integer"
33972	//     },
33973	//     "pageToken": {
33974	//       "description": "The next_page_token value returned from a previous list request.",
33975	//       "location": "query",
33976	//       "type": "string"
33977	//     },
33978	//     "parent": {
33979	//       "description": "Required. The location to list all security settings for. Format: `projects//locations/`.",
33980	//       "location": "path",
33981	//       "pattern": "^projects/[^/]+/locations/[^/]+$",
33982	//       "required": true,
33983	//       "type": "string"
33984	//     }
33985	//   },
33986	//   "path": "v3/{+parent}/securitySettings",
33987	//   "response": {
33988	//     "$ref": "GoogleCloudDialogflowCxV3ListSecuritySettingsResponse"
33989	//   },
33990	//   "scopes": [
33991	//     "https://www.googleapis.com/auth/cloud-platform",
33992	//     "https://www.googleapis.com/auth/dialogflow"
33993	//   ]
33994	// }
33995
33996}
33997
33998// Pages invokes f for each page of results.
33999// A non-nil error returned from f will halt the iteration.
34000// The provided context supersedes any context provided to the Context method.
34001func (c *ProjectsLocationsSecuritySettingsListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3ListSecuritySettingsResponse) error) error {
34002	c.ctx_ = ctx
34003	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
34004	for {
34005		x, err := c.Do()
34006		if err != nil {
34007			return err
34008		}
34009		if err := f(x); err != nil {
34010			return err
34011		}
34012		if x.NextPageToken == "" {
34013			return nil
34014		}
34015		c.PageToken(x.NextPageToken)
34016	}
34017}
34018
34019// method id "dialogflow.projects.locations.securitySettings.patch":
34020
34021type ProjectsLocationsSecuritySettingsPatchCall struct {
34022	s                                         *Service
34023	name                                      string
34024	googleclouddialogflowcxv3securitysettings *GoogleCloudDialogflowCxV3SecuritySettings
34025	urlParams_                                gensupport.URLParams
34026	ctx_                                      context.Context
34027	header_                                   http.Header
34028}
34029
34030// Patch: Updates the specified SecuritySettings.
34031//
34032// - name: Resource name of the settings. Format:
34033//   `projects//locations//securitySettings/`.
34034func (r *ProjectsLocationsSecuritySettingsService) Patch(name string, googleclouddialogflowcxv3securitysettings *GoogleCloudDialogflowCxV3SecuritySettings) *ProjectsLocationsSecuritySettingsPatchCall {
34035	c := &ProjectsLocationsSecuritySettingsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
34036	c.name = name
34037	c.googleclouddialogflowcxv3securitysettings = googleclouddialogflowcxv3securitysettings
34038	return c
34039}
34040
34041// UpdateMask sets the optional parameter "updateMask": Required. The
34042// mask to control which fields get updated. If the mask is not present,
34043// all fields will be updated.
34044func (c *ProjectsLocationsSecuritySettingsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsSecuritySettingsPatchCall {
34045	c.urlParams_.Set("updateMask", updateMask)
34046	return c
34047}
34048
34049// Fields allows partial responses to be retrieved. See
34050// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
34051// for more information.
34052func (c *ProjectsLocationsSecuritySettingsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsSecuritySettingsPatchCall {
34053	c.urlParams_.Set("fields", googleapi.CombineFields(s))
34054	return c
34055}
34056
34057// Context sets the context to be used in this call's Do method. Any
34058// pending HTTP request will be aborted if the provided context is
34059// canceled.
34060func (c *ProjectsLocationsSecuritySettingsPatchCall) Context(ctx context.Context) *ProjectsLocationsSecuritySettingsPatchCall {
34061	c.ctx_ = ctx
34062	return c
34063}
34064
34065// Header returns an http.Header that can be modified by the caller to
34066// add HTTP headers to the request.
34067func (c *ProjectsLocationsSecuritySettingsPatchCall) Header() http.Header {
34068	if c.header_ == nil {
34069		c.header_ = make(http.Header)
34070	}
34071	return c.header_
34072}
34073
34074func (c *ProjectsLocationsSecuritySettingsPatchCall) doRequest(alt string) (*http.Response, error) {
34075	reqHeaders := make(http.Header)
34076	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
34077	for k, v := range c.header_ {
34078		reqHeaders[k] = v
34079	}
34080	reqHeaders.Set("User-Agent", c.s.userAgent())
34081	var body io.Reader = nil
34082	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3securitysettings)
34083	if err != nil {
34084		return nil, err
34085	}
34086	reqHeaders.Set("Content-Type", "application/json")
34087	c.urlParams_.Set("alt", alt)
34088	c.urlParams_.Set("prettyPrint", "false")
34089	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
34090	urls += "?" + c.urlParams_.Encode()
34091	req, err := http.NewRequest("PATCH", urls, body)
34092	if err != nil {
34093		return nil, err
34094	}
34095	req.Header = reqHeaders
34096	googleapi.Expand(req.URL, map[string]string{
34097		"name": c.name,
34098	})
34099	return gensupport.SendRequest(c.ctx_, c.s.client, req)
34100}
34101
34102// Do executes the "dialogflow.projects.locations.securitySettings.patch" call.
34103// Exactly one of *GoogleCloudDialogflowCxV3SecuritySettings or error
34104// will be non-nil. Any non-2xx status code is an error. Response
34105// headers are in either
34106// *GoogleCloudDialogflowCxV3SecuritySettings.ServerResponse.Header or
34107// (if a response was returned at all) in
34108// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
34109// whether the returned error was because http.StatusNotModified was
34110// returned.
34111func (c *ProjectsLocationsSecuritySettingsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3SecuritySettings, error) {
34112	gensupport.SetOptions(c.urlParams_, opts...)
34113	res, err := c.doRequest("json")
34114	if res != nil && res.StatusCode == http.StatusNotModified {
34115		if res.Body != nil {
34116			res.Body.Close()
34117		}
34118		return nil, &googleapi.Error{
34119			Code:   res.StatusCode,
34120			Header: res.Header,
34121		}
34122	}
34123	if err != nil {
34124		return nil, err
34125	}
34126	defer googleapi.CloseBody(res)
34127	if err := googleapi.CheckResponse(res); err != nil {
34128		return nil, err
34129	}
34130	ret := &GoogleCloudDialogflowCxV3SecuritySettings{
34131		ServerResponse: googleapi.ServerResponse{
34132			Header:         res.Header,
34133			HTTPStatusCode: res.StatusCode,
34134		},
34135	}
34136	target := &ret
34137	if err := gensupport.DecodeResponse(target, res); err != nil {
34138		return nil, err
34139	}
34140	return ret, nil
34141	// {
34142	//   "description": "Updates the specified SecuritySettings.",
34143	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/securitySettings/{securitySettingsId}",
34144	//   "httpMethod": "PATCH",
34145	//   "id": "dialogflow.projects.locations.securitySettings.patch",
34146	//   "parameterOrder": [
34147	//     "name"
34148	//   ],
34149	//   "parameters": {
34150	//     "name": {
34151	//       "description": "Required. Resource name of the settings. Format: `projects//locations//securitySettings/`.",
34152	//       "location": "path",
34153	//       "pattern": "^projects/[^/]+/locations/[^/]+/securitySettings/[^/]+$",
34154	//       "required": true,
34155	//       "type": "string"
34156	//     },
34157	//     "updateMask": {
34158	//       "description": "Required. The mask to control which fields get updated. If the mask is not present, all fields will be updated.",
34159	//       "format": "google-fieldmask",
34160	//       "location": "query",
34161	//       "type": "string"
34162	//     }
34163	//   },
34164	//   "path": "v3/{+name}",
34165	//   "request": {
34166	//     "$ref": "GoogleCloudDialogflowCxV3SecuritySettings"
34167	//   },
34168	//   "response": {
34169	//     "$ref": "GoogleCloudDialogflowCxV3SecuritySettings"
34170	//   },
34171	//   "scopes": [
34172	//     "https://www.googleapis.com/auth/cloud-platform",
34173	//     "https://www.googleapis.com/auth/dialogflow"
34174	//   ]
34175	// }
34176
34177}
34178
34179// method id "dialogflow.projects.operations.cancel":
34180
34181type ProjectsOperationsCancelCall struct {
34182	s          *Service
34183	name       string
34184	urlParams_ gensupport.URLParams
34185	ctx_       context.Context
34186	header_    http.Header
34187}
34188
34189// Cancel: Starts asynchronous cancellation on a long-running operation.
34190// The server makes a best effort to cancel the operation, but success
34191// is not guaranteed. If the server doesn't support this method, it
34192// returns `google.rpc.Code.UNIMPLEMENTED`. Clients can use
34193// Operations.GetOperation or other methods to check whether the
34194// cancellation succeeded or whether the operation completed despite
34195// cancellation. On successful cancellation, the operation is not
34196// deleted; instead, it becomes an operation with an Operation.error
34197// value with a google.rpc.Status.code of 1, corresponding to
34198// `Code.CANCELLED`.
34199//
34200// - name: The name of the operation resource to be cancelled.
34201func (r *ProjectsOperationsService) Cancel(name string) *ProjectsOperationsCancelCall {
34202	c := &ProjectsOperationsCancelCall{s: r.s, urlParams_: make(gensupport.URLParams)}
34203	c.name = name
34204	return c
34205}
34206
34207// Fields allows partial responses to be retrieved. See
34208// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
34209// for more information.
34210func (c *ProjectsOperationsCancelCall) Fields(s ...googleapi.Field) *ProjectsOperationsCancelCall {
34211	c.urlParams_.Set("fields", googleapi.CombineFields(s))
34212	return c
34213}
34214
34215// Context sets the context to be used in this call's Do method. Any
34216// pending HTTP request will be aborted if the provided context is
34217// canceled.
34218func (c *ProjectsOperationsCancelCall) Context(ctx context.Context) *ProjectsOperationsCancelCall {
34219	c.ctx_ = ctx
34220	return c
34221}
34222
34223// Header returns an http.Header that can be modified by the caller to
34224// add HTTP headers to the request.
34225func (c *ProjectsOperationsCancelCall) Header() http.Header {
34226	if c.header_ == nil {
34227		c.header_ = make(http.Header)
34228	}
34229	return c.header_
34230}
34231
34232func (c *ProjectsOperationsCancelCall) doRequest(alt string) (*http.Response, error) {
34233	reqHeaders := make(http.Header)
34234	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
34235	for k, v := range c.header_ {
34236		reqHeaders[k] = v
34237	}
34238	reqHeaders.Set("User-Agent", c.s.userAgent())
34239	var body io.Reader = nil
34240	c.urlParams_.Set("alt", alt)
34241	c.urlParams_.Set("prettyPrint", "false")
34242	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}:cancel")
34243	urls += "?" + c.urlParams_.Encode()
34244	req, err := http.NewRequest("POST", urls, body)
34245	if err != nil {
34246		return nil, err
34247	}
34248	req.Header = reqHeaders
34249	googleapi.Expand(req.URL, map[string]string{
34250		"name": c.name,
34251	})
34252	return gensupport.SendRequest(c.ctx_, c.s.client, req)
34253}
34254
34255// Do executes the "dialogflow.projects.operations.cancel" call.
34256// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
34257// non-2xx status code is an error. Response headers are in either
34258// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
34259// returned at all) in error.(*googleapi.Error).Header. Use
34260// googleapi.IsNotModified to check whether the returned error was
34261// because http.StatusNotModified was returned.
34262func (c *ProjectsOperationsCancelCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
34263	gensupport.SetOptions(c.urlParams_, opts...)
34264	res, err := c.doRequest("json")
34265	if res != nil && res.StatusCode == http.StatusNotModified {
34266		if res.Body != nil {
34267			res.Body.Close()
34268		}
34269		return nil, &googleapi.Error{
34270			Code:   res.StatusCode,
34271			Header: res.Header,
34272		}
34273	}
34274	if err != nil {
34275		return nil, err
34276	}
34277	defer googleapi.CloseBody(res)
34278	if err := googleapi.CheckResponse(res); err != nil {
34279		return nil, err
34280	}
34281	ret := &GoogleProtobufEmpty{
34282		ServerResponse: googleapi.ServerResponse{
34283			Header:         res.Header,
34284			HTTPStatusCode: res.StatusCode,
34285		},
34286	}
34287	target := &ret
34288	if err := gensupport.DecodeResponse(target, res); err != nil {
34289		return nil, err
34290	}
34291	return ret, nil
34292	// {
34293	//   "description": "Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Clients can use Operations.GetOperation or other methods to check whether the cancellation succeeded or whether the operation completed despite cancellation. On successful cancellation, the operation is not deleted; instead, it becomes an operation with an Operation.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`.",
34294	//   "flatPath": "v3/projects/{projectsId}/operations/{operationsId}:cancel",
34295	//   "httpMethod": "POST",
34296	//   "id": "dialogflow.projects.operations.cancel",
34297	//   "parameterOrder": [
34298	//     "name"
34299	//   ],
34300	//   "parameters": {
34301	//     "name": {
34302	//       "description": "The name of the operation resource to be cancelled.",
34303	//       "location": "path",
34304	//       "pattern": "^projects/[^/]+/operations/[^/]+$",
34305	//       "required": true,
34306	//       "type": "string"
34307	//     }
34308	//   },
34309	//   "path": "v3/{+name}:cancel",
34310	//   "response": {
34311	//     "$ref": "GoogleProtobufEmpty"
34312	//   },
34313	//   "scopes": [
34314	//     "https://www.googleapis.com/auth/cloud-platform",
34315	//     "https://www.googleapis.com/auth/dialogflow"
34316	//   ]
34317	// }
34318
34319}
34320
34321// method id "dialogflow.projects.operations.get":
34322
34323type ProjectsOperationsGetCall struct {
34324	s            *Service
34325	name         string
34326	urlParams_   gensupport.URLParams
34327	ifNoneMatch_ string
34328	ctx_         context.Context
34329	header_      http.Header
34330}
34331
34332// Get: Gets the latest state of a long-running operation. Clients can
34333// use this method to poll the operation result at intervals as
34334// recommended by the API service.
34335//
34336// - name: The name of the operation resource.
34337func (r *ProjectsOperationsService) Get(name string) *ProjectsOperationsGetCall {
34338	c := &ProjectsOperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
34339	c.name = name
34340	return c
34341}
34342
34343// Fields allows partial responses to be retrieved. See
34344// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
34345// for more information.
34346func (c *ProjectsOperationsGetCall) Fields(s ...googleapi.Field) *ProjectsOperationsGetCall {
34347	c.urlParams_.Set("fields", googleapi.CombineFields(s))
34348	return c
34349}
34350
34351// IfNoneMatch sets the optional parameter which makes the operation
34352// fail if the object's ETag matches the given value. This is useful for
34353// getting updates only after the object has changed since the last
34354// request. Use googleapi.IsNotModified to check whether the response
34355// error from Do is the result of In-None-Match.
34356func (c *ProjectsOperationsGetCall) IfNoneMatch(entityTag string) *ProjectsOperationsGetCall {
34357	c.ifNoneMatch_ = entityTag
34358	return c
34359}
34360
34361// Context sets the context to be used in this call's Do method. Any
34362// pending HTTP request will be aborted if the provided context is
34363// canceled.
34364func (c *ProjectsOperationsGetCall) Context(ctx context.Context) *ProjectsOperationsGetCall {
34365	c.ctx_ = ctx
34366	return c
34367}
34368
34369// Header returns an http.Header that can be modified by the caller to
34370// add HTTP headers to the request.
34371func (c *ProjectsOperationsGetCall) Header() http.Header {
34372	if c.header_ == nil {
34373		c.header_ = make(http.Header)
34374	}
34375	return c.header_
34376}
34377
34378func (c *ProjectsOperationsGetCall) doRequest(alt string) (*http.Response, error) {
34379	reqHeaders := make(http.Header)
34380	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
34381	for k, v := range c.header_ {
34382		reqHeaders[k] = v
34383	}
34384	reqHeaders.Set("User-Agent", c.s.userAgent())
34385	if c.ifNoneMatch_ != "" {
34386		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
34387	}
34388	var body io.Reader = nil
34389	c.urlParams_.Set("alt", alt)
34390	c.urlParams_.Set("prettyPrint", "false")
34391	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
34392	urls += "?" + c.urlParams_.Encode()
34393	req, err := http.NewRequest("GET", urls, body)
34394	if err != nil {
34395		return nil, err
34396	}
34397	req.Header = reqHeaders
34398	googleapi.Expand(req.URL, map[string]string{
34399		"name": c.name,
34400	})
34401	return gensupport.SendRequest(c.ctx_, c.s.client, req)
34402}
34403
34404// Do executes the "dialogflow.projects.operations.get" call.
34405// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
34406// Any non-2xx status code is an error. Response headers are in either
34407// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
34408// was returned at all) in error.(*googleapi.Error).Header. Use
34409// googleapi.IsNotModified to check whether the returned error was
34410// because http.StatusNotModified was returned.
34411func (c *ProjectsOperationsGetCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
34412	gensupport.SetOptions(c.urlParams_, opts...)
34413	res, err := c.doRequest("json")
34414	if res != nil && res.StatusCode == http.StatusNotModified {
34415		if res.Body != nil {
34416			res.Body.Close()
34417		}
34418		return nil, &googleapi.Error{
34419			Code:   res.StatusCode,
34420			Header: res.Header,
34421		}
34422	}
34423	if err != nil {
34424		return nil, err
34425	}
34426	defer googleapi.CloseBody(res)
34427	if err := googleapi.CheckResponse(res); err != nil {
34428		return nil, err
34429	}
34430	ret := &GoogleLongrunningOperation{
34431		ServerResponse: googleapi.ServerResponse{
34432			Header:         res.Header,
34433			HTTPStatusCode: res.StatusCode,
34434		},
34435	}
34436	target := &ret
34437	if err := gensupport.DecodeResponse(target, res); err != nil {
34438		return nil, err
34439	}
34440	return ret, nil
34441	// {
34442	//   "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.",
34443	//   "flatPath": "v3/projects/{projectsId}/operations/{operationsId}",
34444	//   "httpMethod": "GET",
34445	//   "id": "dialogflow.projects.operations.get",
34446	//   "parameterOrder": [
34447	//     "name"
34448	//   ],
34449	//   "parameters": {
34450	//     "name": {
34451	//       "description": "The name of the operation resource.",
34452	//       "location": "path",
34453	//       "pattern": "^projects/[^/]+/operations/[^/]+$",
34454	//       "required": true,
34455	//       "type": "string"
34456	//     }
34457	//   },
34458	//   "path": "v3/{+name}",
34459	//   "response": {
34460	//     "$ref": "GoogleLongrunningOperation"
34461	//   },
34462	//   "scopes": [
34463	//     "https://www.googleapis.com/auth/cloud-platform",
34464	//     "https://www.googleapis.com/auth/dialogflow"
34465	//   ]
34466	// }
34467
34468}
34469
34470// method id "dialogflow.projects.operations.list":
34471
34472type ProjectsOperationsListCall struct {
34473	s            *Service
34474	name         string
34475	urlParams_   gensupport.URLParams
34476	ifNoneMatch_ string
34477	ctx_         context.Context
34478	header_      http.Header
34479}
34480
34481// List: Lists operations that match the specified filter in the
34482// request. If the server doesn't support this method, it returns
34483// `UNIMPLEMENTED`. NOTE: the `name` binding allows API services to
34484// override the binding to use different resource name schemes, such as
34485// `users/*/operations`. To override the binding, API services can add a
34486// binding such as "/v1/{name=users/*}/operations" to their service
34487// configuration. For backwards compatibility, the default name includes
34488// the operations collection id, however overriding users must ensure
34489// the name binding is the parent resource, without the operations
34490// collection id.
34491//
34492// - name: The name of the operation's parent resource.
34493func (r *ProjectsOperationsService) List(name string) *ProjectsOperationsListCall {
34494	c := &ProjectsOperationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
34495	c.name = name
34496	return c
34497}
34498
34499// Filter sets the optional parameter "filter": The standard list
34500// filter.
34501func (c *ProjectsOperationsListCall) Filter(filter string) *ProjectsOperationsListCall {
34502	c.urlParams_.Set("filter", filter)
34503	return c
34504}
34505
34506// PageSize sets the optional parameter "pageSize": The standard list
34507// page size.
34508func (c *ProjectsOperationsListCall) PageSize(pageSize int64) *ProjectsOperationsListCall {
34509	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
34510	return c
34511}
34512
34513// PageToken sets the optional parameter "pageToken": The standard list
34514// page token.
34515func (c *ProjectsOperationsListCall) PageToken(pageToken string) *ProjectsOperationsListCall {
34516	c.urlParams_.Set("pageToken", pageToken)
34517	return c
34518}
34519
34520// Fields allows partial responses to be retrieved. See
34521// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
34522// for more information.
34523func (c *ProjectsOperationsListCall) Fields(s ...googleapi.Field) *ProjectsOperationsListCall {
34524	c.urlParams_.Set("fields", googleapi.CombineFields(s))
34525	return c
34526}
34527
34528// IfNoneMatch sets the optional parameter which makes the operation
34529// fail if the object's ETag matches the given value. This is useful for
34530// getting updates only after the object has changed since the last
34531// request. Use googleapi.IsNotModified to check whether the response
34532// error from Do is the result of In-None-Match.
34533func (c *ProjectsOperationsListCall) IfNoneMatch(entityTag string) *ProjectsOperationsListCall {
34534	c.ifNoneMatch_ = entityTag
34535	return c
34536}
34537
34538// Context sets the context to be used in this call's Do method. Any
34539// pending HTTP request will be aborted if the provided context is
34540// canceled.
34541func (c *ProjectsOperationsListCall) Context(ctx context.Context) *ProjectsOperationsListCall {
34542	c.ctx_ = ctx
34543	return c
34544}
34545
34546// Header returns an http.Header that can be modified by the caller to
34547// add HTTP headers to the request.
34548func (c *ProjectsOperationsListCall) Header() http.Header {
34549	if c.header_ == nil {
34550		c.header_ = make(http.Header)
34551	}
34552	return c.header_
34553}
34554
34555func (c *ProjectsOperationsListCall) doRequest(alt string) (*http.Response, error) {
34556	reqHeaders := make(http.Header)
34557	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210830")
34558	for k, v := range c.header_ {
34559		reqHeaders[k] = v
34560	}
34561	reqHeaders.Set("User-Agent", c.s.userAgent())
34562	if c.ifNoneMatch_ != "" {
34563		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
34564	}
34565	var body io.Reader = nil
34566	c.urlParams_.Set("alt", alt)
34567	c.urlParams_.Set("prettyPrint", "false")
34568	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}/operations")
34569	urls += "?" + c.urlParams_.Encode()
34570	req, err := http.NewRequest("GET", urls, body)
34571	if err != nil {
34572		return nil, err
34573	}
34574	req.Header = reqHeaders
34575	googleapi.Expand(req.URL, map[string]string{
34576		"name": c.name,
34577	})
34578	return gensupport.SendRequest(c.ctx_, c.s.client, req)
34579}
34580
34581// Do executes the "dialogflow.projects.operations.list" call.
34582// Exactly one of *GoogleLongrunningListOperationsResponse or error will
34583// be non-nil. Any non-2xx status code is an error. Response headers are
34584// in either
34585// *GoogleLongrunningListOperationsResponse.ServerResponse.Header or (if
34586// a response was returned at all) in error.(*googleapi.Error).Header.
34587// Use googleapi.IsNotModified to check whether the returned error was
34588// because http.StatusNotModified was returned.
34589func (c *ProjectsOperationsListCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningListOperationsResponse, error) {
34590	gensupport.SetOptions(c.urlParams_, opts...)
34591	res, err := c.doRequest("json")
34592	if res != nil && res.StatusCode == http.StatusNotModified {
34593		if res.Body != nil {
34594			res.Body.Close()
34595		}
34596		return nil, &googleapi.Error{
34597			Code:   res.StatusCode,
34598			Header: res.Header,
34599		}
34600	}
34601	if err != nil {
34602		return nil, err
34603	}
34604	defer googleapi.CloseBody(res)
34605	if err := googleapi.CheckResponse(res); err != nil {
34606		return nil, err
34607	}
34608	ret := &GoogleLongrunningListOperationsResponse{
34609		ServerResponse: googleapi.ServerResponse{
34610			Header:         res.Header,
34611			HTTPStatusCode: res.StatusCode,
34612		},
34613	}
34614	target := &ret
34615	if err := gensupport.DecodeResponse(target, res); err != nil {
34616		return nil, err
34617	}
34618	return ret, nil
34619	// {
34620	//   "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`. NOTE: the `name` binding allows API services to override the binding to use different resource name schemes, such as `users/*/operations`. To override the binding, API services can add a binding such as `\"/v1/{name=users/*}/operations\"` to their service configuration. For backwards compatibility, the default name includes the operations collection id, however overriding users must ensure the name binding is the parent resource, without the operations collection id.",
34621	//   "flatPath": "v3/projects/{projectsId}/operations",
34622	//   "httpMethod": "GET",
34623	//   "id": "dialogflow.projects.operations.list",
34624	//   "parameterOrder": [
34625	//     "name"
34626	//   ],
34627	//   "parameters": {
34628	//     "filter": {
34629	//       "description": "The standard list filter.",
34630	//       "location": "query",
34631	//       "type": "string"
34632	//     },
34633	//     "name": {
34634	//       "description": "The name of the operation's parent resource.",
34635	//       "location": "path",
34636	//       "pattern": "^projects/[^/]+$",
34637	//       "required": true,
34638	//       "type": "string"
34639	//     },
34640	//     "pageSize": {
34641	//       "description": "The standard list page size.",
34642	//       "format": "int32",
34643	//       "location": "query",
34644	//       "type": "integer"
34645	//     },
34646	//     "pageToken": {
34647	//       "description": "The standard list page token.",
34648	//       "location": "query",
34649	//       "type": "string"
34650	//     }
34651	//   },
34652	//   "path": "v3/{+name}/operations",
34653	//   "response": {
34654	//     "$ref": "GoogleLongrunningListOperationsResponse"
34655	//   },
34656	//   "scopes": [
34657	//     "https://www.googleapis.com/auth/cloud-platform",
34658	//     "https://www.googleapis.com/auth/dialogflow"
34659	//   ]
34660	// }
34661
34662}
34663
34664// Pages invokes f for each page of results.
34665// A non-nil error returned from f will halt the iteration.
34666// The provided context supersedes any context provided to the Context method.
34667func (c *ProjectsOperationsListCall) Pages(ctx context.Context, f func(*GoogleLongrunningListOperationsResponse) error) error {
34668	c.ctx_ = ctx
34669	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
34670	for {
34671		x, err := c.Do()
34672		if err != nil {
34673			return err
34674		}
34675		if err := f(x); err != nil {
34676			return err
34677		}
34678		if x.NextPageToken == "" {
34679			return nil
34680		}
34681		c.PageToken(x.NextPageToken)
34682	}
34683}
34684