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 Platform data
89	CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform"
90
91	// View, manage and query your Dialogflow agents
92	DialogflowScope = "https://www.googleapis.com/auth/dialogflow"
93)
94
95// NewService creates a new Service.
96func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) {
97	scopesOption := option.WithScopes(
98		"https://www.googleapis.com/auth/cloud-platform",
99		"https://www.googleapis.com/auth/dialogflow",
100	)
101	// NOTE: prepend, so we don't override user-specified scopes.
102	opts = append([]option.ClientOption{scopesOption}, opts...)
103	opts = append(opts, internaloption.WithDefaultEndpoint(basePath))
104	opts = append(opts, internaloption.WithDefaultMTLSEndpoint(mtlsBasePath))
105	client, endpoint, err := htransport.NewClient(ctx, opts...)
106	if err != nil {
107		return nil, err
108	}
109	s, err := New(client)
110	if err != nil {
111		return nil, err
112	}
113	if endpoint != "" {
114		s.BasePath = endpoint
115	}
116	return s, nil
117}
118
119// New creates a new Service. It uses the provided http.Client for requests.
120//
121// Deprecated: please use NewService instead.
122// To provide a custom HTTP client, use option.WithHTTPClient.
123// If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead.
124func New(client *http.Client) (*Service, error) {
125	if client == nil {
126		return nil, errors.New("client is nil")
127	}
128	s := &Service{client: client, BasePath: basePath}
129	s.Projects = NewProjectsService(s)
130	return s, nil
131}
132
133type Service struct {
134	client    *http.Client
135	BasePath  string // API endpoint base URL
136	UserAgent string // optional additional User-Agent fragment
137
138	Projects *ProjectsService
139}
140
141func (s *Service) userAgent() string {
142	if s.UserAgent == "" {
143		return googleapi.UserAgent
144	}
145	return googleapi.UserAgent + " " + s.UserAgent
146}
147
148func NewProjectsService(s *Service) *ProjectsService {
149	rs := &ProjectsService{s: s}
150	rs.Locations = NewProjectsLocationsService(s)
151	rs.Operations = NewProjectsOperationsService(s)
152	return rs
153}
154
155type ProjectsService struct {
156	s *Service
157
158	Locations *ProjectsLocationsService
159
160	Operations *ProjectsOperationsService
161}
162
163func NewProjectsLocationsService(s *Service) *ProjectsLocationsService {
164	rs := &ProjectsLocationsService{s: s}
165	rs.Agents = NewProjectsLocationsAgentsService(s)
166	rs.Operations = NewProjectsLocationsOperationsService(s)
167	rs.SecuritySettings = NewProjectsLocationsSecuritySettingsService(s)
168	return rs
169}
170
171type ProjectsLocationsService struct {
172	s *Service
173
174	Agents *ProjectsLocationsAgentsService
175
176	Operations *ProjectsLocationsOperationsService
177
178	SecuritySettings *ProjectsLocationsSecuritySettingsService
179}
180
181func NewProjectsLocationsAgentsService(s *Service) *ProjectsLocationsAgentsService {
182	rs := &ProjectsLocationsAgentsService{s: s}
183	rs.EntityTypes = NewProjectsLocationsAgentsEntityTypesService(s)
184	rs.Environments = NewProjectsLocationsAgentsEnvironmentsService(s)
185	rs.Flows = NewProjectsLocationsAgentsFlowsService(s)
186	rs.Intents = NewProjectsLocationsAgentsIntentsService(s)
187	rs.Sessions = NewProjectsLocationsAgentsSessionsService(s)
188	rs.TestCases = NewProjectsLocationsAgentsTestCasesService(s)
189	rs.Webhooks = NewProjectsLocationsAgentsWebhooksService(s)
190	return rs
191}
192
193type ProjectsLocationsAgentsService struct {
194	s *Service
195
196	EntityTypes *ProjectsLocationsAgentsEntityTypesService
197
198	Environments *ProjectsLocationsAgentsEnvironmentsService
199
200	Flows *ProjectsLocationsAgentsFlowsService
201
202	Intents *ProjectsLocationsAgentsIntentsService
203
204	Sessions *ProjectsLocationsAgentsSessionsService
205
206	TestCases *ProjectsLocationsAgentsTestCasesService
207
208	Webhooks *ProjectsLocationsAgentsWebhooksService
209}
210
211func NewProjectsLocationsAgentsEntityTypesService(s *Service) *ProjectsLocationsAgentsEntityTypesService {
212	rs := &ProjectsLocationsAgentsEntityTypesService{s: s}
213	return rs
214}
215
216type ProjectsLocationsAgentsEntityTypesService struct {
217	s *Service
218}
219
220func NewProjectsLocationsAgentsEnvironmentsService(s *Service) *ProjectsLocationsAgentsEnvironmentsService {
221	rs := &ProjectsLocationsAgentsEnvironmentsService{s: s}
222	rs.ContinuousTestResults = NewProjectsLocationsAgentsEnvironmentsContinuousTestResultsService(s)
223	rs.Experiments = NewProjectsLocationsAgentsEnvironmentsExperimentsService(s)
224	rs.Sessions = NewProjectsLocationsAgentsEnvironmentsSessionsService(s)
225	return rs
226}
227
228type ProjectsLocationsAgentsEnvironmentsService struct {
229	s *Service
230
231	ContinuousTestResults *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsService
232
233	Experiments *ProjectsLocationsAgentsEnvironmentsExperimentsService
234
235	Sessions *ProjectsLocationsAgentsEnvironmentsSessionsService
236}
237
238func NewProjectsLocationsAgentsEnvironmentsContinuousTestResultsService(s *Service) *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsService {
239	rs := &ProjectsLocationsAgentsEnvironmentsContinuousTestResultsService{s: s}
240	return rs
241}
242
243type ProjectsLocationsAgentsEnvironmentsContinuousTestResultsService struct {
244	s *Service
245}
246
247func NewProjectsLocationsAgentsEnvironmentsExperimentsService(s *Service) *ProjectsLocationsAgentsEnvironmentsExperimentsService {
248	rs := &ProjectsLocationsAgentsEnvironmentsExperimentsService{s: s}
249	return rs
250}
251
252type ProjectsLocationsAgentsEnvironmentsExperimentsService struct {
253	s *Service
254}
255
256func NewProjectsLocationsAgentsEnvironmentsSessionsService(s *Service) *ProjectsLocationsAgentsEnvironmentsSessionsService {
257	rs := &ProjectsLocationsAgentsEnvironmentsSessionsService{s: s}
258	rs.EntityTypes = NewProjectsLocationsAgentsEnvironmentsSessionsEntityTypesService(s)
259	return rs
260}
261
262type ProjectsLocationsAgentsEnvironmentsSessionsService struct {
263	s *Service
264
265	EntityTypes *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesService
266}
267
268func NewProjectsLocationsAgentsEnvironmentsSessionsEntityTypesService(s *Service) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesService {
269	rs := &ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesService{s: s}
270	return rs
271}
272
273type ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesService struct {
274	s *Service
275}
276
277func NewProjectsLocationsAgentsFlowsService(s *Service) *ProjectsLocationsAgentsFlowsService {
278	rs := &ProjectsLocationsAgentsFlowsService{s: s}
279	rs.Pages = NewProjectsLocationsAgentsFlowsPagesService(s)
280	rs.TransitionRouteGroups = NewProjectsLocationsAgentsFlowsTransitionRouteGroupsService(s)
281	rs.Versions = NewProjectsLocationsAgentsFlowsVersionsService(s)
282	return rs
283}
284
285type ProjectsLocationsAgentsFlowsService struct {
286	s *Service
287
288	Pages *ProjectsLocationsAgentsFlowsPagesService
289
290	TransitionRouteGroups *ProjectsLocationsAgentsFlowsTransitionRouteGroupsService
291
292	Versions *ProjectsLocationsAgentsFlowsVersionsService
293}
294
295func NewProjectsLocationsAgentsFlowsPagesService(s *Service) *ProjectsLocationsAgentsFlowsPagesService {
296	rs := &ProjectsLocationsAgentsFlowsPagesService{s: s}
297	return rs
298}
299
300type ProjectsLocationsAgentsFlowsPagesService struct {
301	s *Service
302}
303
304func NewProjectsLocationsAgentsFlowsTransitionRouteGroupsService(s *Service) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsService {
305	rs := &ProjectsLocationsAgentsFlowsTransitionRouteGroupsService{s: s}
306	return rs
307}
308
309type ProjectsLocationsAgentsFlowsTransitionRouteGroupsService struct {
310	s *Service
311}
312
313func NewProjectsLocationsAgentsFlowsVersionsService(s *Service) *ProjectsLocationsAgentsFlowsVersionsService {
314	rs := &ProjectsLocationsAgentsFlowsVersionsService{s: s}
315	return rs
316}
317
318type ProjectsLocationsAgentsFlowsVersionsService struct {
319	s *Service
320}
321
322func NewProjectsLocationsAgentsIntentsService(s *Service) *ProjectsLocationsAgentsIntentsService {
323	rs := &ProjectsLocationsAgentsIntentsService{s: s}
324	return rs
325}
326
327type ProjectsLocationsAgentsIntentsService struct {
328	s *Service
329}
330
331func NewProjectsLocationsAgentsSessionsService(s *Service) *ProjectsLocationsAgentsSessionsService {
332	rs := &ProjectsLocationsAgentsSessionsService{s: s}
333	rs.EntityTypes = NewProjectsLocationsAgentsSessionsEntityTypesService(s)
334	return rs
335}
336
337type ProjectsLocationsAgentsSessionsService struct {
338	s *Service
339
340	EntityTypes *ProjectsLocationsAgentsSessionsEntityTypesService
341}
342
343func NewProjectsLocationsAgentsSessionsEntityTypesService(s *Service) *ProjectsLocationsAgentsSessionsEntityTypesService {
344	rs := &ProjectsLocationsAgentsSessionsEntityTypesService{s: s}
345	return rs
346}
347
348type ProjectsLocationsAgentsSessionsEntityTypesService struct {
349	s *Service
350}
351
352func NewProjectsLocationsAgentsTestCasesService(s *Service) *ProjectsLocationsAgentsTestCasesService {
353	rs := &ProjectsLocationsAgentsTestCasesService{s: s}
354	rs.Results = NewProjectsLocationsAgentsTestCasesResultsService(s)
355	return rs
356}
357
358type ProjectsLocationsAgentsTestCasesService struct {
359	s *Service
360
361	Results *ProjectsLocationsAgentsTestCasesResultsService
362}
363
364func NewProjectsLocationsAgentsTestCasesResultsService(s *Service) *ProjectsLocationsAgentsTestCasesResultsService {
365	rs := &ProjectsLocationsAgentsTestCasesResultsService{s: s}
366	return rs
367}
368
369type ProjectsLocationsAgentsTestCasesResultsService struct {
370	s *Service
371}
372
373func NewProjectsLocationsAgentsWebhooksService(s *Service) *ProjectsLocationsAgentsWebhooksService {
374	rs := &ProjectsLocationsAgentsWebhooksService{s: s}
375	return rs
376}
377
378type ProjectsLocationsAgentsWebhooksService struct {
379	s *Service
380}
381
382func NewProjectsLocationsOperationsService(s *Service) *ProjectsLocationsOperationsService {
383	rs := &ProjectsLocationsOperationsService{s: s}
384	return rs
385}
386
387type ProjectsLocationsOperationsService struct {
388	s *Service
389}
390
391func NewProjectsLocationsSecuritySettingsService(s *Service) *ProjectsLocationsSecuritySettingsService {
392	rs := &ProjectsLocationsSecuritySettingsService{s: s}
393	return rs
394}
395
396type ProjectsLocationsSecuritySettingsService struct {
397	s *Service
398}
399
400func NewProjectsOperationsService(s *Service) *ProjectsOperationsService {
401	rs := &ProjectsOperationsService{s: s}
402	return rs
403}
404
405type ProjectsOperationsService struct {
406	s *Service
407}
408
409// GoogleCloudDialogflowCxV3Agent: Agents are best described as Natural
410// Language Understanding (NLU) modules that transform user requests
411// into actionable data. You can include agents in your app, product, or
412// service to determine user intent and respond to the user in a natural
413// way. After you create an agent, you can add Intents, Entity Types,
414// Flows, Fulfillments, Webhooks, and so on to manage the conversation
415// flows..
416type GoogleCloudDialogflowCxV3Agent struct {
417	// AvatarUri: The URI of the agent's avatar. Avatars are used throughout
418	// the Dialogflow console and in the self-hosted Web Demo
419	// (https://cloud.google.com/dialogflow/docs/integrations/web-demo)
420	// integration.
421	AvatarUri string `json:"avatarUri,omitempty"`
422
423	// DefaultLanguageCode: Required. Immutable. The default language of the
424	// agent as a language tag. See Language Support
425	// (https://cloud.google.com/dialogflow/cx/docs/reference/language) for
426	// a list of the currently supported language codes. This field cannot
427	// be set by the Agents.UpdateAgent method.
428	DefaultLanguageCode string `json:"defaultLanguageCode,omitempty"`
429
430	// Description: The description of the agent. The maximum length is 500
431	// characters. If exceeded, the request is rejected.
432	Description string `json:"description,omitempty"`
433
434	// DisplayName: Required. The human-readable name of the agent, unique
435	// within the location.
436	DisplayName string `json:"displayName,omitempty"`
437
438	// EnableSpellCorrection: Indicates if automatic spell correction is
439	// enabled in detect intent requests.
440	EnableSpellCorrection bool `json:"enableSpellCorrection,omitempty"`
441
442	// EnableStackdriverLogging: Indicates if stackdriver logging is enabled
443	// for the agent.
444	EnableStackdriverLogging bool `json:"enableStackdriverLogging,omitempty"`
445
446	// Name: The unique identifier of the agent. Required for the
447	// Agents.UpdateAgent method. Agents.CreateAgent populates the name
448	// automatically. Format: `projects//locations//agents/`.
449	Name string `json:"name,omitempty"`
450
451	// SecuritySettings: Name of the SecuritySettings reference for the
452	// agent. Format: `projects//locations//securitySettings/`.
453	SecuritySettings string `json:"securitySettings,omitempty"`
454
455	// SpeechToTextSettings: Speech recognition related settings.
456	SpeechToTextSettings *GoogleCloudDialogflowCxV3SpeechToTextSettings `json:"speechToTextSettings,omitempty"`
457
458	// StartFlow: Immutable. Name of the start flow in this agent. A start
459	// flow will be automatically created when the agent is created, and can
460	// only be deleted by deleting the agent. Format:
461	// `projects//locations//agents//flows/`.
462	StartFlow string `json:"startFlow,omitempty"`
463
464	// SupportedLanguageCodes: The list of all languages supported by the
465	// agent (except for the `default_language_code`).
466	SupportedLanguageCodes []string `json:"supportedLanguageCodes,omitempty"`
467
468	// TimeZone: Required. The time zone of the agent from the time zone
469	// database (https://www.iana.org/time-zones), e.g., America/New_York,
470	// Europe/Paris.
471	TimeZone string `json:"timeZone,omitempty"`
472
473	// ServerResponse contains the HTTP response code and headers from the
474	// server.
475	googleapi.ServerResponse `json:"-"`
476
477	// ForceSendFields is a list of field names (e.g. "AvatarUri") to
478	// unconditionally include in API requests. By default, fields with
479	// empty values are omitted from API requests. However, any non-pointer,
480	// non-interface field appearing in ForceSendFields will be sent to the
481	// server regardless of whether the field is empty or not. This may be
482	// used to include empty fields in Patch requests.
483	ForceSendFields []string `json:"-"`
484
485	// NullFields is a list of field names (e.g. "AvatarUri") to include in
486	// API requests with the JSON null value. By default, fields with empty
487	// values are omitted from API requests. However, any field with an
488	// empty value appearing in NullFields will be sent to the server as
489	// null. It is an error if a field in this list has a non-empty value.
490	// This may be used to include null fields in Patch requests.
491	NullFields []string `json:"-"`
492}
493
494func (s *GoogleCloudDialogflowCxV3Agent) MarshalJSON() ([]byte, error) {
495	type NoMethod GoogleCloudDialogflowCxV3Agent
496	raw := NoMethod(*s)
497	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
498}
499
500// GoogleCloudDialogflowCxV3AgentValidationResult: The response message
501// for Agents.GetAgentValidationResult.
502type GoogleCloudDialogflowCxV3AgentValidationResult struct {
503	// FlowValidationResults: Contains all flow validation results.
504	FlowValidationResults []*GoogleCloudDialogflowCxV3FlowValidationResult `json:"flowValidationResults,omitempty"`
505
506	// Name: The unique identifier of the agent validation result. Format:
507	// `projects//locations//agents//validationResult`.
508	Name string `json:"name,omitempty"`
509
510	// ServerResponse contains the HTTP response code and headers from the
511	// server.
512	googleapi.ServerResponse `json:"-"`
513
514	// ForceSendFields is a list of field names (e.g.
515	// "FlowValidationResults") to unconditionally include in API requests.
516	// By default, fields with empty values are omitted from API requests.
517	// However, any non-pointer, non-interface field appearing in
518	// ForceSendFields will be sent to the server regardless of whether the
519	// field is empty or not. This may be used to include empty fields in
520	// Patch requests.
521	ForceSendFields []string `json:"-"`
522
523	// NullFields is a list of field names (e.g. "FlowValidationResults") to
524	// include in API requests with the JSON null value. By default, fields
525	// with empty values are omitted from API requests. However, any field
526	// with an empty value appearing in NullFields will be sent to the
527	// server as null. It is an error if a field in this list has a
528	// non-empty value. This may be used to include null fields in Patch
529	// requests.
530	NullFields []string `json:"-"`
531}
532
533func (s *GoogleCloudDialogflowCxV3AgentValidationResult) MarshalJSON() ([]byte, error) {
534	type NoMethod GoogleCloudDialogflowCxV3AgentValidationResult
535	raw := NoMethod(*s)
536	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
537}
538
539// GoogleCloudDialogflowCxV3AudioInput: Represents the natural speech
540// audio to be processed.
541type GoogleCloudDialogflowCxV3AudioInput struct {
542	// Audio: The natural language speech audio to be processed. A single
543	// request can contain up to 1 minute of speech audio data. The
544	// transcribed text cannot contain more than 256 bytes. For
545	// non-streaming audio detect intent, both `config` and `audio` must be
546	// provided. For streaming audio detect intent, `config` must be
547	// provided in the first request and `audio` must be provided in all
548	// following requests.
549	Audio string `json:"audio,omitempty"`
550
551	// Config: Required. Instructs the speech recognizer how to process the
552	// speech audio.
553	Config *GoogleCloudDialogflowCxV3InputAudioConfig `json:"config,omitempty"`
554
555	// ForceSendFields is a list of field names (e.g. "Audio") to
556	// unconditionally include in API requests. By default, fields with
557	// empty values are omitted from API requests. However, any non-pointer,
558	// non-interface field appearing in ForceSendFields will be sent to the
559	// server regardless of whether the field is empty or not. This may be
560	// used to include empty fields in Patch requests.
561	ForceSendFields []string `json:"-"`
562
563	// NullFields is a list of field names (e.g. "Audio") to include in API
564	// requests with the JSON null value. By default, fields with empty
565	// values are omitted from API requests. However, any field with an
566	// empty value appearing in NullFields will be sent to the server as
567	// null. It is an error if a field in this list has a non-empty value.
568	// This may be used to include null fields in Patch requests.
569	NullFields []string `json:"-"`
570}
571
572func (s *GoogleCloudDialogflowCxV3AudioInput) MarshalJSON() ([]byte, error) {
573	type NoMethod GoogleCloudDialogflowCxV3AudioInput
574	raw := NoMethod(*s)
575	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
576}
577
578// GoogleCloudDialogflowCxV3BatchDeleteTestCasesRequest: The request
579// message for TestCases.BatchDeleteTestCases.
580type GoogleCloudDialogflowCxV3BatchDeleteTestCasesRequest struct {
581	// Names: Required. Format of test case names: `projects//locations/
582	// /agents//testCases/`.
583	Names []string `json:"names,omitempty"`
584
585	// ForceSendFields is a list of field names (e.g. "Names") to
586	// unconditionally include in API requests. By default, fields with
587	// empty values are omitted from API requests. However, any non-pointer,
588	// non-interface field appearing in ForceSendFields will be sent to the
589	// server regardless of whether the field is empty or not. This may be
590	// used to include empty fields in Patch requests.
591	ForceSendFields []string `json:"-"`
592
593	// NullFields is a list of field names (e.g. "Names") to include in API
594	// requests with the JSON null value. By default, fields with empty
595	// values are omitted from API requests. However, any field with an
596	// empty value appearing in NullFields will be sent to the server as
597	// null. It is an error if a field in this list has a non-empty value.
598	// This may be used to include null fields in Patch requests.
599	NullFields []string `json:"-"`
600}
601
602func (s *GoogleCloudDialogflowCxV3BatchDeleteTestCasesRequest) MarshalJSON() ([]byte, error) {
603	type NoMethod GoogleCloudDialogflowCxV3BatchDeleteTestCasesRequest
604	raw := NoMethod(*s)
605	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
606}
607
608// GoogleCloudDialogflowCxV3BatchRunTestCasesMetadata: Metadata returned
609// for the TestCases.BatchRunTestCases long running operation.
610type GoogleCloudDialogflowCxV3BatchRunTestCasesMetadata struct {
611	// Errors: The test errors.
612	Errors []*GoogleCloudDialogflowCxV3TestError `json:"errors,omitempty"`
613
614	// ForceSendFields is a list of field names (e.g. "Errors") to
615	// unconditionally include in API requests. By default, fields with
616	// empty values are omitted from API requests. However, any non-pointer,
617	// non-interface field appearing in ForceSendFields will be sent to the
618	// server regardless of whether the field is empty or not. This may be
619	// used to include empty fields in Patch requests.
620	ForceSendFields []string `json:"-"`
621
622	// NullFields is a list of field names (e.g. "Errors") to include in API
623	// requests with the JSON null value. By default, fields with empty
624	// values are omitted from API requests. However, any field with an
625	// empty value appearing in NullFields will be sent to the server as
626	// null. It is an error if a field in this list has a non-empty value.
627	// This may be used to include null fields in Patch requests.
628	NullFields []string `json:"-"`
629}
630
631func (s *GoogleCloudDialogflowCxV3BatchRunTestCasesMetadata) MarshalJSON() ([]byte, error) {
632	type NoMethod GoogleCloudDialogflowCxV3BatchRunTestCasesMetadata
633	raw := NoMethod(*s)
634	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
635}
636
637// GoogleCloudDialogflowCxV3BatchRunTestCasesRequest: The request
638// message for TestCases.BatchRunTestCases.
639type GoogleCloudDialogflowCxV3BatchRunTestCasesRequest struct {
640	// Environment: Optional. If not set, draft environment is assumed.
641	// Format: `projects//locations//agents//environments/`.
642	Environment string `json:"environment,omitempty"`
643
644	// TestCases: Required. Format:
645	// `projects//locations//agents//testCases/`.
646	TestCases []string `json:"testCases,omitempty"`
647
648	// ForceSendFields is a list of field names (e.g. "Environment") to
649	// unconditionally include in API requests. By default, fields with
650	// empty values are omitted from API requests. However, any non-pointer,
651	// non-interface field appearing in ForceSendFields will be sent to the
652	// server regardless of whether the field is empty or not. This may be
653	// used to include empty fields in Patch requests.
654	ForceSendFields []string `json:"-"`
655
656	// NullFields is a list of field names (e.g. "Environment") to include
657	// in API requests with the JSON null value. By default, fields with
658	// empty values are omitted from API requests. However, any field with
659	// an empty value appearing in NullFields will be sent to the server as
660	// null. It is an error if a field in this list has a non-empty value.
661	// This may be used to include null fields in Patch requests.
662	NullFields []string `json:"-"`
663}
664
665func (s *GoogleCloudDialogflowCxV3BatchRunTestCasesRequest) MarshalJSON() ([]byte, error) {
666	type NoMethod GoogleCloudDialogflowCxV3BatchRunTestCasesRequest
667	raw := NoMethod(*s)
668	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
669}
670
671// GoogleCloudDialogflowCxV3BatchRunTestCasesResponse: The response
672// message for TestCases.BatchRunTestCases.
673type GoogleCloudDialogflowCxV3BatchRunTestCasesResponse struct {
674	// Results: The test case results. The detailed conversation turns are
675	// empty in this response.
676	Results []*GoogleCloudDialogflowCxV3TestCaseResult `json:"results,omitempty"`
677
678	// ForceSendFields is a list of field names (e.g. "Results") to
679	// unconditionally include in API requests. By default, fields with
680	// empty values are omitted from API requests. However, any non-pointer,
681	// non-interface field appearing in ForceSendFields will be sent to the
682	// server regardless of whether the field is empty or not. This may be
683	// used to include empty fields in Patch requests.
684	ForceSendFields []string `json:"-"`
685
686	// NullFields is a list of field names (e.g. "Results") to include in
687	// API requests with the JSON null value. By default, fields with empty
688	// values are omitted from API requests. However, any field with an
689	// empty value appearing in NullFields will be sent to the server as
690	// null. It is an error if a field in this list has a non-empty value.
691	// This may be used to include null fields in Patch requests.
692	NullFields []string `json:"-"`
693}
694
695func (s *GoogleCloudDialogflowCxV3BatchRunTestCasesResponse) MarshalJSON() ([]byte, error) {
696	type NoMethod GoogleCloudDialogflowCxV3BatchRunTestCasesResponse
697	raw := NoMethod(*s)
698	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
699}
700
701// GoogleCloudDialogflowCxV3CalculateCoverageResponse: The response
702// message for TestCases.CalculateCoverage.
703type GoogleCloudDialogflowCxV3CalculateCoverageResponse struct {
704	// Agent: The agent to calculate coverage for. Format:
705	// `projects//locations//agents/`.
706	Agent string `json:"agent,omitempty"`
707
708	// IntentCoverage: Intent coverage.
709	IntentCoverage *GoogleCloudDialogflowCxV3IntentCoverage `json:"intentCoverage,omitempty"`
710
711	// RouteGroupCoverage: Transition route group coverage.
712	RouteGroupCoverage *GoogleCloudDialogflowCxV3TransitionRouteGroupCoverage `json:"routeGroupCoverage,omitempty"`
713
714	// TransitionCoverage: Transition (excluding transition route groups)
715	// coverage.
716	TransitionCoverage *GoogleCloudDialogflowCxV3TransitionCoverage `json:"transitionCoverage,omitempty"`
717
718	// ServerResponse contains the HTTP response code and headers from the
719	// server.
720	googleapi.ServerResponse `json:"-"`
721
722	// ForceSendFields is a list of field names (e.g. "Agent") to
723	// unconditionally include in API requests. By default, fields with
724	// empty values are omitted from API requests. However, any non-pointer,
725	// non-interface field appearing in ForceSendFields will be sent to the
726	// server regardless of whether the field is empty or not. This may be
727	// used to include empty fields in Patch requests.
728	ForceSendFields []string `json:"-"`
729
730	// NullFields is a list of field names (e.g. "Agent") to include in API
731	// requests with the JSON null value. By default, fields with empty
732	// values are omitted from API requests. However, any field with an
733	// empty value appearing in NullFields will be sent to the server as
734	// null. It is an error if a field in this list has a non-empty value.
735	// This may be used to include null fields in Patch requests.
736	NullFields []string `json:"-"`
737}
738
739func (s *GoogleCloudDialogflowCxV3CalculateCoverageResponse) MarshalJSON() ([]byte, error) {
740	type NoMethod GoogleCloudDialogflowCxV3CalculateCoverageResponse
741	raw := NoMethod(*s)
742	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
743}
744
745// GoogleCloudDialogflowCxV3ContinuousTestResult: Represents a result
746// from running a test case in an agent environment.
747type GoogleCloudDialogflowCxV3ContinuousTestResult struct {
748	// Name: The resource name for the continuous test result. Format:
749	// `projects//locations//agents//environments//continuousTestResults/`.
750	Name string `json:"name,omitempty"`
751
752	// Result: The result of this continuous test run, i.e. whether all the
753	// tests in this continuous test run pass or not.
754	//
755	// Possible values:
756	//   "AGGREGATED_TEST_RESULT_UNSPECIFIED" - Not specified. Should never
757	// be used.
758	//   "PASSED" - All the tests passed.
759	//   "FAILED" - At least one test did not pass.
760	Result string `json:"result,omitempty"`
761
762	// RunTime: Time when the continuous testing run starts.
763	RunTime string `json:"runTime,omitempty"`
764
765	// TestCaseResults: A list of individual test case results names in this
766	// continuous test run.
767	TestCaseResults []string `json:"testCaseResults,omitempty"`
768
769	// ForceSendFields is a list of field names (e.g. "Name") to
770	// unconditionally include in API requests. By default, fields with
771	// empty values are omitted from API requests. However, any non-pointer,
772	// non-interface field appearing in ForceSendFields will be sent to the
773	// server regardless of whether the field is empty or not. This may be
774	// used to include empty fields in Patch requests.
775	ForceSendFields []string `json:"-"`
776
777	// NullFields is a list of field names (e.g. "Name") to include in API
778	// requests with the JSON null value. By default, fields with empty
779	// values are omitted from API requests. However, any field with an
780	// empty value appearing in NullFields will be sent to the server as
781	// null. It is an error if a field in this list has a non-empty value.
782	// This may be used to include null fields in Patch requests.
783	NullFields []string `json:"-"`
784}
785
786func (s *GoogleCloudDialogflowCxV3ContinuousTestResult) MarshalJSON() ([]byte, error) {
787	type NoMethod GoogleCloudDialogflowCxV3ContinuousTestResult
788	raw := NoMethod(*s)
789	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
790}
791
792// GoogleCloudDialogflowCxV3ConversationTurn: One interaction between a
793// human and virtual agent. The human provides some input and the
794// virtual agent provides a response.
795type GoogleCloudDialogflowCxV3ConversationTurn struct {
796	// UserInput: The user input.
797	UserInput *GoogleCloudDialogflowCxV3ConversationTurnUserInput `json:"userInput,omitempty"`
798
799	// VirtualAgentOutput: The virtual agent output.
800	VirtualAgentOutput *GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput `json:"virtualAgentOutput,omitempty"`
801
802	// ForceSendFields is a list of field names (e.g. "UserInput") to
803	// unconditionally include in API requests. By default, fields with
804	// empty values are omitted from API requests. However, any non-pointer,
805	// non-interface field appearing in ForceSendFields will be sent to the
806	// server regardless of whether the field is empty or not. This may be
807	// used to include empty fields in Patch requests.
808	ForceSendFields []string `json:"-"`
809
810	// NullFields is a list of field names (e.g. "UserInput") to include in
811	// API requests with the JSON null value. By default, fields with empty
812	// values are omitted from API requests. However, any field with an
813	// empty value appearing in NullFields will be sent to the server as
814	// null. It is an error if a field in this list has a non-empty value.
815	// This may be used to include null fields in Patch requests.
816	NullFields []string `json:"-"`
817}
818
819func (s *GoogleCloudDialogflowCxV3ConversationTurn) MarshalJSON() ([]byte, error) {
820	type NoMethod GoogleCloudDialogflowCxV3ConversationTurn
821	raw := NoMethod(*s)
822	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
823}
824
825// GoogleCloudDialogflowCxV3ConversationTurnUserInput: The input from
826// the human user.
827type GoogleCloudDialogflowCxV3ConversationTurnUserInput struct {
828	// EnableSentimentAnalysis: Whether sentiment analysis is enabled.
829	EnableSentimentAnalysis bool `json:"enableSentimentAnalysis,omitempty"`
830
831	// InjectedParameters: Parameters that need to be injected into the
832	// conversation during intent detection.
833	InjectedParameters googleapi.RawMessage `json:"injectedParameters,omitempty"`
834
835	// Input: Supports text input, event input, dtmf input in the test case.
836	Input *GoogleCloudDialogflowCxV3QueryInput `json:"input,omitempty"`
837
838	// IsWebhookEnabled: If webhooks should be allowed to trigger in
839	// response to the user utterance. Often if parameters are injected,
840	// webhooks should not be enabled.
841	IsWebhookEnabled bool `json:"isWebhookEnabled,omitempty"`
842
843	// ForceSendFields is a list of field names (e.g.
844	// "EnableSentimentAnalysis") to unconditionally include in API
845	// requests. By default, fields with empty values are omitted from API
846	// requests. However, any non-pointer, non-interface field appearing in
847	// ForceSendFields will be sent to the server regardless of whether the
848	// field is empty or not. This may be used to include empty fields in
849	// Patch requests.
850	ForceSendFields []string `json:"-"`
851
852	// NullFields is a list of field names (e.g. "EnableSentimentAnalysis")
853	// to include in API requests with the JSON null value. By default,
854	// fields with empty values are omitted from API requests. However, any
855	// field with an empty value appearing in NullFields will be sent to the
856	// server as null. It is an error if a field in this list has a
857	// non-empty value. This may be used to include null fields in Patch
858	// requests.
859	NullFields []string `json:"-"`
860}
861
862func (s *GoogleCloudDialogflowCxV3ConversationTurnUserInput) MarshalJSON() ([]byte, error) {
863	type NoMethod GoogleCloudDialogflowCxV3ConversationTurnUserInput
864	raw := NoMethod(*s)
865	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
866}
867
868// GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput: The
869// output from the virtual agent.
870type GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput struct {
871	// CurrentPage: The Page on which the utterance was spoken. Only name
872	// and displayName will be set.
873	CurrentPage *GoogleCloudDialogflowCxV3Page `json:"currentPage,omitempty"`
874
875	// DiagnosticInfo: Required. Input only. The diagnostic info output for
876	// the turn.
877	DiagnosticInfo googleapi.RawMessage `json:"diagnosticInfo,omitempty"`
878
879	// Differences: Output only. If this is part of a result conversation
880	// turn, the list of differences between the original run and the replay
881	// for this output, if any.
882	Differences []*GoogleCloudDialogflowCxV3TestRunDifference `json:"differences,omitempty"`
883
884	// SessionParameters: The session parameters available to the bot at
885	// this point.
886	SessionParameters googleapi.RawMessage `json:"sessionParameters,omitempty"`
887
888	// Status: Response error from the agent in the test result. If set,
889	// other output is empty.
890	Status *GoogleRpcStatus `json:"status,omitempty"`
891
892	// TextResponses: The text responses from the agent for the turn.
893	TextResponses []*GoogleCloudDialogflowCxV3ResponseMessageText `json:"textResponses,omitempty"`
894
895	// TriggeredIntent: The Intent that triggered the response. Only name
896	// and displayName will be set.
897	TriggeredIntent *GoogleCloudDialogflowCxV3Intent `json:"triggeredIntent,omitempty"`
898
899	// ForceSendFields is a list of field names (e.g. "CurrentPage") to
900	// unconditionally include in API requests. By default, fields with
901	// empty values are omitted from API requests. However, any non-pointer,
902	// non-interface field appearing in ForceSendFields will be sent to the
903	// server regardless of whether the field is empty or not. This may be
904	// used to include empty fields in Patch requests.
905	ForceSendFields []string `json:"-"`
906
907	// NullFields is a list of field names (e.g. "CurrentPage") to include
908	// in API requests with the JSON null value. By default, fields with
909	// empty values are omitted from API requests. However, any field with
910	// an empty value appearing in NullFields will be sent to the server as
911	// null. It is an error if a field in this list has a non-empty value.
912	// This may be used to include null fields in Patch requests.
913	NullFields []string `json:"-"`
914}
915
916func (s *GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput) MarshalJSON() ([]byte, error) {
917	type NoMethod GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput
918	raw := NoMethod(*s)
919	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
920}
921
922// GoogleCloudDialogflowCxV3CreateDocumentOperationMetadata: Metadata
923// for CreateDocument operation.
924type GoogleCloudDialogflowCxV3CreateDocumentOperationMetadata struct {
925	// GenericMetadata: The generic information of the operation.
926	GenericMetadata *GoogleCloudDialogflowCxV3GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
927
928	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
929	// unconditionally include in API requests. By default, fields with
930	// empty values are omitted from API requests. However, any non-pointer,
931	// non-interface field appearing in ForceSendFields will be sent to the
932	// server regardless of whether the field is empty or not. This may be
933	// used to include empty fields in Patch requests.
934	ForceSendFields []string `json:"-"`
935
936	// NullFields is a list of field names (e.g. "GenericMetadata") to
937	// include in API requests with the JSON null value. By default, fields
938	// with empty values are omitted from API requests. However, any field
939	// with an empty value appearing in NullFields will be sent to the
940	// server as null. It is an error if a field in this list has a
941	// non-empty value. This may be used to include null fields in Patch
942	// requests.
943	NullFields []string `json:"-"`
944}
945
946func (s *GoogleCloudDialogflowCxV3CreateDocumentOperationMetadata) MarshalJSON() ([]byte, error) {
947	type NoMethod GoogleCloudDialogflowCxV3CreateDocumentOperationMetadata
948	raw := NoMethod(*s)
949	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
950}
951
952// GoogleCloudDialogflowCxV3CreateVersionOperationMetadata: Metadata
953// associated with the long running operation for
954// Versions.CreateVersion.
955type GoogleCloudDialogflowCxV3CreateVersionOperationMetadata struct {
956	// Version: Name of the created version. Format:
957	// `projects//locations//agents//flows//versions/`.
958	Version string `json:"version,omitempty"`
959
960	// ForceSendFields is a list of field names (e.g. "Version") to
961	// unconditionally include in API requests. By default, fields with
962	// empty values are omitted from API requests. However, any non-pointer,
963	// non-interface field appearing in ForceSendFields will be sent to the
964	// server regardless of whether the field is empty or not. This may be
965	// used to include empty fields in Patch requests.
966	ForceSendFields []string `json:"-"`
967
968	// NullFields is a list of field names (e.g. "Version") to include in
969	// API requests with the JSON null value. By default, fields with empty
970	// values are omitted from API requests. However, any field with an
971	// empty value appearing in NullFields will be sent to the server as
972	// null. It is an error if a field in this list has a non-empty value.
973	// This may be used to include null fields in Patch requests.
974	NullFields []string `json:"-"`
975}
976
977func (s *GoogleCloudDialogflowCxV3CreateVersionOperationMetadata) MarshalJSON() ([]byte, error) {
978	type NoMethod GoogleCloudDialogflowCxV3CreateVersionOperationMetadata
979	raw := NoMethod(*s)
980	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
981}
982
983// GoogleCloudDialogflowCxV3DeleteDocumentOperationMetadata: Metadata
984// for DeleteDocument operation.
985type GoogleCloudDialogflowCxV3DeleteDocumentOperationMetadata struct {
986	// GenericMetadata: The generic information of the operation.
987	GenericMetadata *GoogleCloudDialogflowCxV3GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
988
989	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
990	// unconditionally include in API requests. By default, fields with
991	// empty values are omitted from API requests. However, any non-pointer,
992	// non-interface field appearing in ForceSendFields will be sent to the
993	// server regardless of whether the field is empty or not. This may be
994	// used to include empty fields in Patch requests.
995	ForceSendFields []string `json:"-"`
996
997	// NullFields is a list of field names (e.g. "GenericMetadata") to
998	// include in API requests with the JSON null value. By default, fields
999	// with empty values are omitted from API requests. However, any field
1000	// with an empty value appearing in NullFields will be sent to the
1001	// server as null. It is an error if a field in this list has a
1002	// non-empty value. This may be used to include null fields in Patch
1003	// requests.
1004	NullFields []string `json:"-"`
1005}
1006
1007func (s *GoogleCloudDialogflowCxV3DeleteDocumentOperationMetadata) MarshalJSON() ([]byte, error) {
1008	type NoMethod GoogleCloudDialogflowCxV3DeleteDocumentOperationMetadata
1009	raw := NoMethod(*s)
1010	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1011}
1012
1013// GoogleCloudDialogflowCxV3DetectIntentRequest: The request to detect
1014// user's intent.
1015type GoogleCloudDialogflowCxV3DetectIntentRequest struct {
1016	// OutputAudioConfig: Instructs the speech synthesizer how to generate
1017	// the output audio.
1018	OutputAudioConfig *GoogleCloudDialogflowCxV3OutputAudioConfig `json:"outputAudioConfig,omitempty"`
1019
1020	// QueryInput: Required. The input specification.
1021	QueryInput *GoogleCloudDialogflowCxV3QueryInput `json:"queryInput,omitempty"`
1022
1023	// QueryParams: The parameters of this query.
1024	QueryParams *GoogleCloudDialogflowCxV3QueryParameters `json:"queryParams,omitempty"`
1025
1026	// ForceSendFields is a list of field names (e.g. "OutputAudioConfig")
1027	// to unconditionally include in API requests. By default, fields with
1028	// empty values are omitted from API requests. However, any non-pointer,
1029	// non-interface field appearing in ForceSendFields will be sent to the
1030	// server regardless of whether the field is empty or not. This may be
1031	// used to include empty fields in Patch requests.
1032	ForceSendFields []string `json:"-"`
1033
1034	// NullFields is a list of field names (e.g. "OutputAudioConfig") to
1035	// include in API requests with the JSON null value. By default, fields
1036	// with empty values are omitted from API requests. However, any field
1037	// with an empty value appearing in NullFields will be sent to the
1038	// server as null. It is an error if a field in this list has a
1039	// non-empty value. This may be used to include null fields in Patch
1040	// requests.
1041	NullFields []string `json:"-"`
1042}
1043
1044func (s *GoogleCloudDialogflowCxV3DetectIntentRequest) MarshalJSON() ([]byte, error) {
1045	type NoMethod GoogleCloudDialogflowCxV3DetectIntentRequest
1046	raw := NoMethod(*s)
1047	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1048}
1049
1050// GoogleCloudDialogflowCxV3DetectIntentResponse: The message returned
1051// from the DetectIntent method.
1052type GoogleCloudDialogflowCxV3DetectIntentResponse struct {
1053	// AllowCancellation: Indicates whether the partial response can be
1054	// cancelled when a later response arrives. e.g. if the agent specified
1055	// some music as partial response, it can be cancelled.
1056	AllowCancellation bool `json:"allowCancellation,omitempty"`
1057
1058	// OutputAudio: The audio data bytes encoded as specified in the
1059	// request. Note: The output audio is generated based on the values of
1060	// default platform text responses found in the
1061	// `query_result.response_messages` field. If multiple default text
1062	// responses exist, they will be concatenated when generating audio. If
1063	// no default platform text responses exist, the generated audio content
1064	// will be empty. In some scenarios, multiple output audio fields may be
1065	// present in the response structure. In these cases, only the
1066	// top-most-level audio output has content.
1067	OutputAudio string `json:"outputAudio,omitempty"`
1068
1069	// OutputAudioConfig: The config used by the speech synthesizer to
1070	// generate the output audio.
1071	OutputAudioConfig *GoogleCloudDialogflowCxV3OutputAudioConfig `json:"outputAudioConfig,omitempty"`
1072
1073	// QueryResult: The result of the conversational query.
1074	QueryResult *GoogleCloudDialogflowCxV3QueryResult `json:"queryResult,omitempty"`
1075
1076	// ResponseId: Output only. The unique identifier of the response. It
1077	// can be used to locate a response in the training example set or for
1078	// reporting issues.
1079	ResponseId string `json:"responseId,omitempty"`
1080
1081	// ResponseType: Response type.
1082	//
1083	// Possible values:
1084	//   "RESPONSE_TYPE_UNSPECIFIED" - Not specified. This should never
1085	// happen.
1086	//   "PARTIAL" - Partial response. e.g. Aggregated responses in a
1087	// Fulfillment that enables `return_partial_response` can be returned as
1088	// partial response. WARNING: partial response is not eligible for
1089	// barge-in.
1090	//   "FINAL" - Final response.
1091	ResponseType string `json:"responseType,omitempty"`
1092
1093	// ServerResponse contains the HTTP response code and headers from the
1094	// server.
1095	googleapi.ServerResponse `json:"-"`
1096
1097	// ForceSendFields is a list of field names (e.g. "AllowCancellation")
1098	// to unconditionally include in API requests. By default, fields with
1099	// empty values are omitted from API requests. However, any non-pointer,
1100	// non-interface field appearing in ForceSendFields will be sent to the
1101	// server regardless of whether the field is empty or not. This may be
1102	// used to include empty fields in Patch requests.
1103	ForceSendFields []string `json:"-"`
1104
1105	// NullFields is a list of field names (e.g. "AllowCancellation") to
1106	// include in API requests with the JSON null value. By default, fields
1107	// with empty values are omitted from API requests. However, any field
1108	// with an empty value appearing in NullFields will be sent to the
1109	// server as null. It is an error if a field in this list has a
1110	// non-empty value. This may be used to include null fields in Patch
1111	// requests.
1112	NullFields []string `json:"-"`
1113}
1114
1115func (s *GoogleCloudDialogflowCxV3DetectIntentResponse) MarshalJSON() ([]byte, error) {
1116	type NoMethod GoogleCloudDialogflowCxV3DetectIntentResponse
1117	raw := NoMethod(*s)
1118	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1119}
1120
1121// GoogleCloudDialogflowCxV3DtmfInput: Represents the input for dtmf
1122// event.
1123type GoogleCloudDialogflowCxV3DtmfInput struct {
1124	// Digits: The dtmf digits.
1125	Digits string `json:"digits,omitempty"`
1126
1127	// FinishDigit: The finish digit (if any).
1128	FinishDigit string `json:"finishDigit,omitempty"`
1129
1130	// ForceSendFields is a list of field names (e.g. "Digits") to
1131	// unconditionally include in API requests. By default, fields with
1132	// empty values are omitted from API requests. However, any non-pointer,
1133	// non-interface field appearing in ForceSendFields will be sent to the
1134	// server regardless of whether the field is empty or not. This may be
1135	// used to include empty fields in Patch requests.
1136	ForceSendFields []string `json:"-"`
1137
1138	// NullFields is a list of field names (e.g. "Digits") to include in API
1139	// requests with the JSON null value. By default, fields with empty
1140	// values are omitted from API requests. However, any field with an
1141	// empty value appearing in NullFields will be sent to the server as
1142	// null. It is an error if a field in this list has a non-empty value.
1143	// This may be used to include null fields in Patch requests.
1144	NullFields []string `json:"-"`
1145}
1146
1147func (s *GoogleCloudDialogflowCxV3DtmfInput) MarshalJSON() ([]byte, error) {
1148	type NoMethod GoogleCloudDialogflowCxV3DtmfInput
1149	raw := NoMethod(*s)
1150	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1151}
1152
1153// GoogleCloudDialogflowCxV3EntityType: Entities are extracted from user
1154// input and represent parameters that are meaningful to your
1155// application. For example, a date range, a proper name such as a
1156// geographic location or landmark, and so on. Entities represent
1157// actionable data for your application. When you define an entity, you
1158// can also include synonyms that all map to that entity. For example,
1159// "soft drink", "soda", "pop", and so on. There are three types of
1160// entities: * **System** - entities that are defined by the Dialogflow
1161// API for common data types such as date, time, currency, and so on. A
1162// system entity is represented by the `EntityType` type. * **Custom** -
1163// entities that are defined by you that represent actionable data that
1164// is meaningful to your application. For example, you could define a
1165// `pizza.sauce` entity for red or white pizza sauce, a `pizza.cheese`
1166// entity for the different types of cheese on a pizza, a
1167// `pizza.topping` entity for different toppings, and so on. A custom
1168// entity is represented by the `EntityType` type. * **User** - entities
1169// that are built for an individual user such as favorites, preferences,
1170// playlists, and so on. A user entity is represented by the
1171// SessionEntityType type. For more information about entity types, see
1172// the Dialogflow documentation
1173// (https://cloud.google.com/dialogflow/docs/entities-overview).
1174type GoogleCloudDialogflowCxV3EntityType struct {
1175	// AutoExpansionMode: Indicates whether the entity type can be
1176	// automatically expanded.
1177	//
1178	// Possible values:
1179	//   "AUTO_EXPANSION_MODE_UNSPECIFIED" - Auto expansion disabled for the
1180	// entity.
1181	//   "AUTO_EXPANSION_MODE_DEFAULT" - Allows an agent to recognize values
1182	// that have not been explicitly listed in the entity.
1183	AutoExpansionMode string `json:"autoExpansionMode,omitempty"`
1184
1185	// DisplayName: Required. The human-readable name of the entity type,
1186	// unique within the agent.
1187	DisplayName string `json:"displayName,omitempty"`
1188
1189	// EnableFuzzyExtraction: Enables fuzzy entity extraction during
1190	// classification.
1191	EnableFuzzyExtraction bool `json:"enableFuzzyExtraction,omitempty"`
1192
1193	// Entities: The collection of entity entries associated with the entity
1194	// type.
1195	Entities []*GoogleCloudDialogflowCxV3EntityTypeEntity `json:"entities,omitempty"`
1196
1197	// ExcludedPhrases: Collection of exceptional words and phrases that
1198	// shouldn't be matched. For example, if you have a size entity type
1199	// with entry `giant`(an adjective), you might consider adding
1200	// `giants`(a noun) as an exclusion. If the kind of entity type is
1201	// `KIND_MAP`, then the phrases specified by entities and excluded
1202	// phrases should be mutually exclusive.
1203	ExcludedPhrases []*GoogleCloudDialogflowCxV3EntityTypeExcludedPhrase `json:"excludedPhrases,omitempty"`
1204
1205	// Kind: Required. Indicates the kind of entity type.
1206	//
1207	// Possible values:
1208	//   "KIND_UNSPECIFIED" - Not specified. This value should be never
1209	// used.
1210	//   "KIND_MAP" - Map entity types allow mapping of a group of synonyms
1211	// to a canonical value.
1212	//   "KIND_LIST" - List entity types contain a set of entries that do
1213	// not map to canonical values. However, list entity types can contain
1214	// references to other entity types (with or without aliases).
1215	//   "KIND_REGEXP" - Regexp entity types allow to specify regular
1216	// expressions in entries values.
1217	Kind string `json:"kind,omitempty"`
1218
1219	// Name: The unique identifier of the entity type. Required for
1220	// EntityTypes.UpdateEntityType. Format:
1221	// `projects//locations//agents//entityTypes/`.
1222	Name string `json:"name,omitempty"`
1223
1224	// Redact: Indicates whether parameters of the entity type should be
1225	// redacted in log. If redaction is enabled, page parameters and intent
1226	// parameters referring to the entity type will be replaced by parameter
1227	// name when logging.
1228	Redact bool `json:"redact,omitempty"`
1229
1230	// ServerResponse contains the HTTP response code and headers from the
1231	// server.
1232	googleapi.ServerResponse `json:"-"`
1233
1234	// ForceSendFields is a list of field names (e.g. "AutoExpansionMode")
1235	// to unconditionally include in API requests. By default, fields with
1236	// empty values are omitted from API requests. However, any non-pointer,
1237	// non-interface field appearing in ForceSendFields will be sent to the
1238	// server regardless of whether the field is empty or not. This may be
1239	// used to include empty fields in Patch requests.
1240	ForceSendFields []string `json:"-"`
1241
1242	// NullFields is a list of field names (e.g. "AutoExpansionMode") to
1243	// include in API requests with the JSON null value. By default, fields
1244	// with empty values are omitted from API requests. However, any field
1245	// with an empty value appearing in NullFields will be sent to the
1246	// server as null. It is an error if a field in this list has a
1247	// non-empty value. This may be used to include null fields in Patch
1248	// requests.
1249	NullFields []string `json:"-"`
1250}
1251
1252func (s *GoogleCloudDialogflowCxV3EntityType) MarshalJSON() ([]byte, error) {
1253	type NoMethod GoogleCloudDialogflowCxV3EntityType
1254	raw := NoMethod(*s)
1255	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1256}
1257
1258// GoogleCloudDialogflowCxV3EntityTypeEntity: An **entity entry** for an
1259// associated entity type.
1260type GoogleCloudDialogflowCxV3EntityTypeEntity struct {
1261	// Synonyms: Required. A collection of value synonyms. For example, if
1262	// the entity type is *vegetable*, and `value` is *scallions*, a synonym
1263	// could be *green onions*. For `KIND_LIST` entity types: * This
1264	// collection must contain exactly one synonym equal to `value`.
1265	Synonyms []string `json:"synonyms,omitempty"`
1266
1267	// Value: Required. The primary value associated with this entity entry.
1268	// For example, if the entity type is *vegetable*, the value could be
1269	// *scallions*. For `KIND_MAP` entity types: * A canonical value to be
1270	// used in place of synonyms. For `KIND_LIST` entity types: * A string
1271	// that can contain references to other entity types (with or without
1272	// aliases).
1273	Value string `json:"value,omitempty"`
1274
1275	// ForceSendFields is a list of field names (e.g. "Synonyms") to
1276	// unconditionally include in API requests. By default, fields with
1277	// empty values are omitted from API requests. However, any non-pointer,
1278	// non-interface field appearing in ForceSendFields will be sent to the
1279	// server regardless of whether the field is empty or not. This may be
1280	// used to include empty fields in Patch requests.
1281	ForceSendFields []string `json:"-"`
1282
1283	// NullFields is a list of field names (e.g. "Synonyms") to include in
1284	// API requests with the JSON null value. By default, fields with empty
1285	// values are omitted from API requests. However, any field with an
1286	// empty value appearing in NullFields will be sent to the server as
1287	// null. It is an error if a field in this list has a non-empty value.
1288	// This may be used to include null fields in Patch requests.
1289	NullFields []string `json:"-"`
1290}
1291
1292func (s *GoogleCloudDialogflowCxV3EntityTypeEntity) MarshalJSON() ([]byte, error) {
1293	type NoMethod GoogleCloudDialogflowCxV3EntityTypeEntity
1294	raw := NoMethod(*s)
1295	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1296}
1297
1298// GoogleCloudDialogflowCxV3EntityTypeExcludedPhrase: An excluded entity
1299// phrase that should not be matched.
1300type GoogleCloudDialogflowCxV3EntityTypeExcludedPhrase struct {
1301	// Value: Required. The word or phrase to be excluded.
1302	Value string `json:"value,omitempty"`
1303
1304	// ForceSendFields is a list of field names (e.g. "Value") to
1305	// unconditionally include in API requests. By default, fields with
1306	// empty values are omitted from API requests. However, any non-pointer,
1307	// non-interface field appearing in ForceSendFields will be sent to the
1308	// server regardless of whether the field is empty or not. This may be
1309	// used to include empty fields in Patch requests.
1310	ForceSendFields []string `json:"-"`
1311
1312	// NullFields is a list of field names (e.g. "Value") to include in API
1313	// requests with the JSON null value. By default, fields with empty
1314	// values are omitted from API requests. However, any field with an
1315	// empty value appearing in NullFields will be sent to the server as
1316	// null. It is an error if a field in this list has a non-empty value.
1317	// This may be used to include null fields in Patch requests.
1318	NullFields []string `json:"-"`
1319}
1320
1321func (s *GoogleCloudDialogflowCxV3EntityTypeExcludedPhrase) MarshalJSON() ([]byte, error) {
1322	type NoMethod GoogleCloudDialogflowCxV3EntityTypeExcludedPhrase
1323	raw := NoMethod(*s)
1324	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1325}
1326
1327// GoogleCloudDialogflowCxV3Environment: Represents an environment for
1328// an agent. You can create multiple versions of your agent and publish
1329// them to separate environments. When you edit an agent, you are
1330// editing the draft agent. At any point, you can save the draft agent
1331// as an agent version, which is an immutable snapshot of your agent.
1332// When you save the draft agent, it is published to the default
1333// environment. When you create agent versions, you can publish them to
1334// custom environments. You can create a variety of custom environments
1335// for testing, development, production, etc.
1336type GoogleCloudDialogflowCxV3Environment struct {
1337	// Description: The human-readable description of the environment. The
1338	// maximum length is 500 characters. If exceeded, the request is
1339	// rejected.
1340	Description string `json:"description,omitempty"`
1341
1342	// DisplayName: Required. The human-readable name of the environment
1343	// (unique in an agent). Limit of 64 characters.
1344	DisplayName string `json:"displayName,omitempty"`
1345
1346	// Name: The name of the environment. Format:
1347	// `projects//locations//agents//environments/`.
1348	Name string `json:"name,omitempty"`
1349
1350	// UpdateTime: Output only. Update time of this environment.
1351	UpdateTime string `json:"updateTime,omitempty"`
1352
1353	// VersionConfigs: Required. A list of configurations for flow versions.
1354	// You should include version configs for all flows that are reachable
1355	// from `Start Flow` in the agent. Otherwise, an error will be returned.
1356	VersionConfigs []*GoogleCloudDialogflowCxV3EnvironmentVersionConfig `json:"versionConfigs,omitempty"`
1357
1358	// ServerResponse contains the HTTP response code and headers from the
1359	// server.
1360	googleapi.ServerResponse `json:"-"`
1361
1362	// ForceSendFields is a list of field names (e.g. "Description") to
1363	// unconditionally include in API requests. By default, fields with
1364	// empty values are omitted from API requests. However, any non-pointer,
1365	// non-interface field appearing in ForceSendFields will be sent to the
1366	// server regardless of whether the field is empty or not. This may be
1367	// used to include empty fields in Patch requests.
1368	ForceSendFields []string `json:"-"`
1369
1370	// NullFields is a list of field names (e.g. "Description") to include
1371	// in API requests with the JSON null value. By default, fields with
1372	// empty values are omitted from API requests. However, any field with
1373	// an empty value appearing in NullFields will be sent to the server as
1374	// null. It is an error if a field in this list has a non-empty value.
1375	// This may be used to include null fields in Patch requests.
1376	NullFields []string `json:"-"`
1377}
1378
1379func (s *GoogleCloudDialogflowCxV3Environment) MarshalJSON() ([]byte, error) {
1380	type NoMethod GoogleCloudDialogflowCxV3Environment
1381	raw := NoMethod(*s)
1382	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1383}
1384
1385// GoogleCloudDialogflowCxV3EnvironmentVersionConfig: Configuration for
1386// the version.
1387type GoogleCloudDialogflowCxV3EnvironmentVersionConfig struct {
1388	// Version: Required. Format:
1389	// projects//locations//agents//flows//versions/.
1390	Version string `json:"version,omitempty"`
1391
1392	// ForceSendFields is a list of field names (e.g. "Version") to
1393	// unconditionally include in API requests. By default, fields with
1394	// empty values are omitted from API requests. However, any non-pointer,
1395	// non-interface field appearing in ForceSendFields will be sent to the
1396	// server regardless of whether the field is empty or not. This may be
1397	// used to include empty fields in Patch requests.
1398	ForceSendFields []string `json:"-"`
1399
1400	// NullFields is a list of field names (e.g. "Version") to include in
1401	// API requests with the JSON null value. By default, fields with empty
1402	// values are omitted from API requests. However, any field with an
1403	// empty value appearing in NullFields will be sent to the server as
1404	// null. It is an error if a field in this list has a non-empty value.
1405	// This may be used to include null fields in Patch requests.
1406	NullFields []string `json:"-"`
1407}
1408
1409func (s *GoogleCloudDialogflowCxV3EnvironmentVersionConfig) MarshalJSON() ([]byte, error) {
1410	type NoMethod GoogleCloudDialogflowCxV3EnvironmentVersionConfig
1411	raw := NoMethod(*s)
1412	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1413}
1414
1415// GoogleCloudDialogflowCxV3EventHandler: An event handler specifies an
1416// event that can be handled during a session. When the specified event
1417// happens, the following actions are taken in order: * If there is a
1418// `trigger_fulfillment` associated with the event, it will be called. *
1419// If there is a `target_page` associated with the event, the session
1420// will transition into the specified page. * If there is a
1421// `target_flow` associated with the event, the session will transition
1422// into the specified flow.
1423type GoogleCloudDialogflowCxV3EventHandler struct {
1424	// Event: Required. The name of the event to handle.
1425	Event string `json:"event,omitempty"`
1426
1427	// Name: Output only. The unique identifier of this event handler.
1428	Name string `json:"name,omitempty"`
1429
1430	// TargetFlow: The target flow to transition to. Format:
1431	// `projects//locations//agents//flows/`.
1432	TargetFlow string `json:"targetFlow,omitempty"`
1433
1434	// TargetPage: The target page to transition to. Format:
1435	// `projects//locations//agents//flows//pages/`.
1436	TargetPage string `json:"targetPage,omitempty"`
1437
1438	// TriggerFulfillment: The fulfillment to call when the event occurs.
1439	// Handling webhook errors with a fulfillment enabled with webhook could
1440	// cause infinite loop. It is invalid to specify such fulfillment for a
1441	// handler handling webhooks.
1442	TriggerFulfillment *GoogleCloudDialogflowCxV3Fulfillment `json:"triggerFulfillment,omitempty"`
1443
1444	// ForceSendFields is a list of field names (e.g. "Event") to
1445	// unconditionally include in API requests. By default, fields with
1446	// empty values are omitted from API requests. However, any non-pointer,
1447	// non-interface field appearing in ForceSendFields will be sent to the
1448	// server regardless of whether the field is empty or not. This may be
1449	// used to include empty fields in Patch requests.
1450	ForceSendFields []string `json:"-"`
1451
1452	// NullFields is a list of field names (e.g. "Event") to include in API
1453	// requests with the JSON null value. By default, fields with empty
1454	// values are omitted from API requests. However, any field with an
1455	// empty value appearing in NullFields will be sent to the server as
1456	// null. It is an error if a field in this list has a non-empty value.
1457	// This may be used to include null fields in Patch requests.
1458	NullFields []string `json:"-"`
1459}
1460
1461func (s *GoogleCloudDialogflowCxV3EventHandler) MarshalJSON() ([]byte, error) {
1462	type NoMethod GoogleCloudDialogflowCxV3EventHandler
1463	raw := NoMethod(*s)
1464	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1465}
1466
1467// GoogleCloudDialogflowCxV3EventInput: Represents the event to trigger.
1468type GoogleCloudDialogflowCxV3EventInput struct {
1469	// Event: Name of the event.
1470	Event string `json:"event,omitempty"`
1471
1472	// ForceSendFields is a list of field names (e.g. "Event") to
1473	// unconditionally include in API requests. By default, fields with
1474	// empty values are omitted from API requests. However, any non-pointer,
1475	// non-interface field appearing in ForceSendFields will be sent to the
1476	// server regardless of whether the field is empty or not. This may be
1477	// used to include empty fields in Patch requests.
1478	ForceSendFields []string `json:"-"`
1479
1480	// NullFields is a list of field names (e.g. "Event") to include in API
1481	// requests with the JSON null value. By default, fields with empty
1482	// values are omitted from API requests. However, any field with an
1483	// empty value appearing in NullFields will be sent to the server as
1484	// null. It is an error if a field in this list has a non-empty value.
1485	// This may be used to include null fields in Patch requests.
1486	NullFields []string `json:"-"`
1487}
1488
1489func (s *GoogleCloudDialogflowCxV3EventInput) MarshalJSON() ([]byte, error) {
1490	type NoMethod GoogleCloudDialogflowCxV3EventInput
1491	raw := NoMethod(*s)
1492	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1493}
1494
1495// GoogleCloudDialogflowCxV3Experiment: Represents an experiment in an
1496// environment.
1497type GoogleCloudDialogflowCxV3Experiment struct {
1498	// CreateTime: Creation time of this experiment.
1499	CreateTime string `json:"createTime,omitempty"`
1500
1501	// Definition: The definition of the experiment.
1502	Definition *GoogleCloudDialogflowCxV3ExperimentDefinition `json:"definition,omitempty"`
1503
1504	// Description: The human-readable description of the experiment.
1505	Description string `json:"description,omitempty"`
1506
1507	// DisplayName: Required. The human-readable name of the experiment
1508	// (unique in an environment). Limit of 64 characters.
1509	DisplayName string `json:"displayName,omitempty"`
1510
1511	// EndTime: End time of this experiment.
1512	EndTime string `json:"endTime,omitempty"`
1513
1514	// ExperimentLength: Maximum number of days to run the
1515	// experiment/rollout. If auto-rollout is not enabled, default value and
1516	// maximum will be 30 days. If auto-rollout is enabled, default value
1517	// and maximum will be 6 days.
1518	ExperimentLength string `json:"experimentLength,omitempty"`
1519
1520	// LastUpdateTime: Last update time of this experiment.
1521	LastUpdateTime string `json:"lastUpdateTime,omitempty"`
1522
1523	// Name: The name of the experiment. Format:
1524	// projects//locations//agents//environments//experiments/..
1525	Name string `json:"name,omitempty"`
1526
1527	// Result: Inference result of the experiment.
1528	Result *GoogleCloudDialogflowCxV3ExperimentResult `json:"result,omitempty"`
1529
1530	// StartTime: Start time of this experiment.
1531	StartTime string `json:"startTime,omitempty"`
1532
1533	// State: The current state of the experiment. Transition triggered by
1534	// Expriments.StartExperiment: PENDING->RUNNING. Transition triggered by
1535	// Expriments.CancelExperiment: PENDING->CANCELLED or
1536	// RUNNING->CANCELLED.
1537	//
1538	// Possible values:
1539	//   "STATE_UNSPECIFIED" - State unspecified.
1540	//   "DRAFT" - The experiment is created but not started yet.
1541	//   "RUNNING" - The experiment is running.
1542	//   "DONE" - The experiment is done.
1543	State string `json:"state,omitempty"`
1544
1545	// VariantsHistory: The history of updates to the experiment variants.
1546	VariantsHistory []*GoogleCloudDialogflowCxV3VariantsHistory `json:"variantsHistory,omitempty"`
1547
1548	// ServerResponse contains the HTTP response code and headers from the
1549	// server.
1550	googleapi.ServerResponse `json:"-"`
1551
1552	// ForceSendFields is a list of field names (e.g. "CreateTime") to
1553	// unconditionally include in API requests. By default, fields with
1554	// empty values are omitted from API requests. However, any non-pointer,
1555	// non-interface field appearing in ForceSendFields will be sent to the
1556	// server regardless of whether the field is empty or not. This may be
1557	// used to include empty fields in Patch requests.
1558	ForceSendFields []string `json:"-"`
1559
1560	// NullFields is a list of field names (e.g. "CreateTime") to include in
1561	// API requests with the JSON null value. By default, fields with empty
1562	// values are omitted from API requests. However, any field with an
1563	// empty value appearing in NullFields will be sent to the server as
1564	// null. It is an error if a field in this list has a non-empty value.
1565	// This may be used to include null fields in Patch requests.
1566	NullFields []string `json:"-"`
1567}
1568
1569func (s *GoogleCloudDialogflowCxV3Experiment) MarshalJSON() ([]byte, error) {
1570	type NoMethod GoogleCloudDialogflowCxV3Experiment
1571	raw := NoMethod(*s)
1572	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1573}
1574
1575// GoogleCloudDialogflowCxV3ExperimentDefinition: Definition of the
1576// experiment.
1577type GoogleCloudDialogflowCxV3ExperimentDefinition struct {
1578	// Condition: The condition defines which subset of sessions are
1579	// selected for this experiment. If not specified, all sessions are
1580	// eligible. E.g. "query_input.language_code=en" See the conditions
1581	// reference
1582	// (https://cloud.google.com/dialogflow/cx/docs/reference/condition).
1583	Condition string `json:"condition,omitempty"`
1584
1585	// VersionVariants: The flow versions as the variants of this
1586	// experiment.
1587	VersionVariants *GoogleCloudDialogflowCxV3VersionVariants `json:"versionVariants,omitempty"`
1588
1589	// ForceSendFields is a list of field names (e.g. "Condition") to
1590	// unconditionally include in API requests. By default, fields with
1591	// empty values are omitted from API requests. However, any non-pointer,
1592	// non-interface field appearing in ForceSendFields will be sent to the
1593	// server regardless of whether the field is empty or not. This may be
1594	// used to include empty fields in Patch requests.
1595	ForceSendFields []string `json:"-"`
1596
1597	// NullFields is a list of field names (e.g. "Condition") to include in
1598	// API requests with the JSON null value. By default, fields with empty
1599	// values are omitted from API requests. However, any field with an
1600	// empty value appearing in NullFields will be sent to the server as
1601	// null. It is an error if a field in this list has a non-empty value.
1602	// This may be used to include null fields in Patch requests.
1603	NullFields []string `json:"-"`
1604}
1605
1606func (s *GoogleCloudDialogflowCxV3ExperimentDefinition) MarshalJSON() ([]byte, error) {
1607	type NoMethod GoogleCloudDialogflowCxV3ExperimentDefinition
1608	raw := NoMethod(*s)
1609	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1610}
1611
1612// GoogleCloudDialogflowCxV3ExperimentResult: The inference result which
1613// includes an objective metric to optimize and the confidence interval.
1614type GoogleCloudDialogflowCxV3ExperimentResult struct {
1615	// LastUpdateTime: The last time the experiment's stats data was
1616	// updated. Will have default value if stats have never been computed
1617	// for this experiment.
1618	LastUpdateTime string `json:"lastUpdateTime,omitempty"`
1619
1620	// VersionMetrics: Version variants and metrics.
1621	VersionMetrics []*GoogleCloudDialogflowCxV3ExperimentResultVersionMetrics `json:"versionMetrics,omitempty"`
1622
1623	// ForceSendFields is a list of field names (e.g. "LastUpdateTime") to
1624	// unconditionally include in API requests. By default, fields with
1625	// empty values are omitted from API requests. However, any non-pointer,
1626	// non-interface field appearing in ForceSendFields will be sent to the
1627	// server regardless of whether the field is empty or not. This may be
1628	// used to include empty fields in Patch requests.
1629	ForceSendFields []string `json:"-"`
1630
1631	// NullFields is a list of field names (e.g. "LastUpdateTime") to
1632	// include in API requests with the JSON null value. By default, fields
1633	// with empty values are omitted from API requests. However, any field
1634	// with an empty value appearing in NullFields will be sent to the
1635	// server as null. It is an error if a field in this list has a
1636	// non-empty value. This may be used to include null fields in Patch
1637	// requests.
1638	NullFields []string `json:"-"`
1639}
1640
1641func (s *GoogleCloudDialogflowCxV3ExperimentResult) MarshalJSON() ([]byte, error) {
1642	type NoMethod GoogleCloudDialogflowCxV3ExperimentResult
1643	raw := NoMethod(*s)
1644	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1645}
1646
1647// GoogleCloudDialogflowCxV3ExperimentResultConfidenceInterval: A
1648// confidence interval is a range of possible values for the experiment
1649// objective you are trying to measure.
1650type GoogleCloudDialogflowCxV3ExperimentResultConfidenceInterval struct {
1651	// ConfidenceLevel: The confidence level used to construct the interval,
1652	// i.e. there is X% chance that the true value is within this interval.
1653	ConfidenceLevel float64 `json:"confidenceLevel,omitempty"`
1654
1655	// LowerBound: Lower bound of the interval.
1656	LowerBound float64 `json:"lowerBound,omitempty"`
1657
1658	// Ratio: The percent change between an experiment metric's value and
1659	// the value for its control.
1660	Ratio float64 `json:"ratio,omitempty"`
1661
1662	// UpperBound: Upper bound of the interval.
1663	UpperBound float64 `json:"upperBound,omitempty"`
1664
1665	// ForceSendFields is a list of field names (e.g. "ConfidenceLevel") to
1666	// unconditionally include in API requests. By default, fields with
1667	// empty values are omitted from API requests. However, any non-pointer,
1668	// non-interface field appearing in ForceSendFields will be sent to the
1669	// server regardless of whether the field is empty or not. This may be
1670	// used to include empty fields in Patch requests.
1671	ForceSendFields []string `json:"-"`
1672
1673	// NullFields is a list of field names (e.g. "ConfidenceLevel") to
1674	// include in API requests with the JSON null value. By default, fields
1675	// with empty values are omitted from API requests. However, any field
1676	// with an empty value appearing in NullFields will be sent to the
1677	// server as null. It is an error if a field in this list has a
1678	// non-empty value. This may be used to include null fields in Patch
1679	// requests.
1680	NullFields []string `json:"-"`
1681}
1682
1683func (s *GoogleCloudDialogflowCxV3ExperimentResultConfidenceInterval) MarshalJSON() ([]byte, error) {
1684	type NoMethod GoogleCloudDialogflowCxV3ExperimentResultConfidenceInterval
1685	raw := NoMethod(*s)
1686	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1687}
1688
1689func (s *GoogleCloudDialogflowCxV3ExperimentResultConfidenceInterval) UnmarshalJSON(data []byte) error {
1690	type NoMethod GoogleCloudDialogflowCxV3ExperimentResultConfidenceInterval
1691	var s1 struct {
1692		ConfidenceLevel gensupport.JSONFloat64 `json:"confidenceLevel"`
1693		LowerBound      gensupport.JSONFloat64 `json:"lowerBound"`
1694		Ratio           gensupport.JSONFloat64 `json:"ratio"`
1695		UpperBound      gensupport.JSONFloat64 `json:"upperBound"`
1696		*NoMethod
1697	}
1698	s1.NoMethod = (*NoMethod)(s)
1699	if err := json.Unmarshal(data, &s1); err != nil {
1700		return err
1701	}
1702	s.ConfidenceLevel = float64(s1.ConfidenceLevel)
1703	s.LowerBound = float64(s1.LowerBound)
1704	s.Ratio = float64(s1.Ratio)
1705	s.UpperBound = float64(s1.UpperBound)
1706	return nil
1707}
1708
1709// GoogleCloudDialogflowCxV3ExperimentResultMetric: Metric and
1710// corresponding confidence intervals.
1711type GoogleCloudDialogflowCxV3ExperimentResultMetric struct {
1712	// ConfidenceInterval: The probability that the treatment is better than
1713	// all other treatments in the experiment
1714	ConfidenceInterval *GoogleCloudDialogflowCxV3ExperimentResultConfidenceInterval `json:"confidenceInterval,omitempty"`
1715
1716	// Count: Count value of a metric.
1717	Count float64 `json:"count,omitempty"`
1718
1719	// CountType: Count-based metric type. Only one of type or count_type is
1720	// specified in each Metric.
1721	//
1722	// Possible values:
1723	//   "COUNT_TYPE_UNSPECIFIED" - Count type unspecified.
1724	//   "TOTAL_NO_MATCH_COUNT" - Total number of occurrences of a
1725	// 'NO_MATCH'.
1726	//   "TOTAL_TURN_COUNT" - Total number of turn counts.
1727	//   "AVERAGE_TURN_COUNT" - Average turn count in a session.
1728	CountType string `json:"countType,omitempty"`
1729
1730	// Ratio: Ratio value of a metric.
1731	Ratio float64 `json:"ratio,omitempty"`
1732
1733	// Type: Ratio-based metric type. Only one of type or count_type is
1734	// specified in each Metric.
1735	//
1736	// Possible values:
1737	//   "METRIC_UNSPECIFIED" - Metric unspecified.
1738	//   "CONTAINED_SESSION_NO_CALLBACK_RATE" - Percentage of contained
1739	// sessions without user calling back in 24 hours.
1740	//   "LIVE_AGENT_HANDOFF_RATE" - Percentage of sessions that were handed
1741	// to a human agent.
1742	//   "CALLBACK_SESSION_RATE" - Percentage of sessions with the same user
1743	// calling back.
1744	//   "ABANDONED_SESSION_RATE" - Percentage of sessions where user hung
1745	// up.
1746	//   "SESSION_END_RATE" - Percentage of sessions reached Dialogflow
1747	// 'END_PAGE' or 'END_SESSION'.
1748	Type string `json:"type,omitempty"`
1749
1750	// ForceSendFields is a list of field names (e.g. "ConfidenceInterval")
1751	// to unconditionally include in API requests. By default, fields with
1752	// empty values are omitted from API requests. However, any non-pointer,
1753	// non-interface field appearing in ForceSendFields will be sent to the
1754	// server regardless of whether the field is empty or not. This may be
1755	// used to include empty fields in Patch requests.
1756	ForceSendFields []string `json:"-"`
1757
1758	// NullFields is a list of field names (e.g. "ConfidenceInterval") to
1759	// include in API requests with the JSON null value. By default, fields
1760	// with empty values are omitted from API requests. However, any field
1761	// with an empty value appearing in NullFields will be sent to the
1762	// server as null. It is an error if a field in this list has a
1763	// non-empty value. This may be used to include null fields in Patch
1764	// requests.
1765	NullFields []string `json:"-"`
1766}
1767
1768func (s *GoogleCloudDialogflowCxV3ExperimentResultMetric) MarshalJSON() ([]byte, error) {
1769	type NoMethod GoogleCloudDialogflowCxV3ExperimentResultMetric
1770	raw := NoMethod(*s)
1771	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1772}
1773
1774func (s *GoogleCloudDialogflowCxV3ExperimentResultMetric) UnmarshalJSON(data []byte) error {
1775	type NoMethod GoogleCloudDialogflowCxV3ExperimentResultMetric
1776	var s1 struct {
1777		Count gensupport.JSONFloat64 `json:"count"`
1778		Ratio gensupport.JSONFloat64 `json:"ratio"`
1779		*NoMethod
1780	}
1781	s1.NoMethod = (*NoMethod)(s)
1782	if err := json.Unmarshal(data, &s1); err != nil {
1783		return err
1784	}
1785	s.Count = float64(s1.Count)
1786	s.Ratio = float64(s1.Ratio)
1787	return nil
1788}
1789
1790// GoogleCloudDialogflowCxV3ExperimentResultVersionMetrics: Version
1791// variant and associated metrics.
1792type GoogleCloudDialogflowCxV3ExperimentResultVersionMetrics struct {
1793	// Metrics: The metrics and corresponding confidence intervals in the
1794	// inference result.
1795	Metrics []*GoogleCloudDialogflowCxV3ExperimentResultMetric `json:"metrics,omitempty"`
1796
1797	// SessionCount: Number of sessions that were allocated to this version.
1798	SessionCount int64 `json:"sessionCount,omitempty"`
1799
1800	// Version: The name of the flow Version. Format:
1801	// `projects//locations//agents//flows//versions/`.
1802	Version string `json:"version,omitempty"`
1803
1804	// ForceSendFields is a list of field names (e.g. "Metrics") to
1805	// unconditionally include in API requests. By default, fields with
1806	// empty values are omitted from API requests. However, any non-pointer,
1807	// non-interface field appearing in ForceSendFields will be sent to the
1808	// server regardless of whether the field is empty or not. This may be
1809	// used to include empty fields in Patch requests.
1810	ForceSendFields []string `json:"-"`
1811
1812	// NullFields is a list of field names (e.g. "Metrics") to include in
1813	// API requests with the JSON null value. By default, fields with empty
1814	// values are omitted from API requests. However, any field with an
1815	// empty value appearing in NullFields will be sent to the server as
1816	// null. It is an error if a field in this list has a non-empty value.
1817	// This may be used to include null fields in Patch requests.
1818	NullFields []string `json:"-"`
1819}
1820
1821func (s *GoogleCloudDialogflowCxV3ExperimentResultVersionMetrics) MarshalJSON() ([]byte, error) {
1822	type NoMethod GoogleCloudDialogflowCxV3ExperimentResultVersionMetrics
1823	raw := NoMethod(*s)
1824	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1825}
1826
1827// GoogleCloudDialogflowCxV3ExportAgentRequest: The request message for
1828// Agents.ExportAgent.
1829type GoogleCloudDialogflowCxV3ExportAgentRequest struct {
1830	// AgentUri: Optional. The Google Cloud Storage
1831	// (https://cloud.google.com/storage/docs/) URI to export the agent to.
1832	// The format of this URI must be `gs:///`. If left unspecified, the
1833	// serialized agent is returned inline.
1834	AgentUri string `json:"agentUri,omitempty"`
1835
1836	// Environment: Optional. Environment name. If not set, draft
1837	// environment is assumed. Format:
1838	// `projects//locations//agents//environments/`.
1839	Environment string `json:"environment,omitempty"`
1840
1841	// ForceSendFields is a list of field names (e.g. "AgentUri") to
1842	// unconditionally include in API requests. By default, fields with
1843	// empty values are omitted from API requests. However, any non-pointer,
1844	// non-interface field appearing in ForceSendFields will be sent to the
1845	// server regardless of whether the field is empty or not. This may be
1846	// used to include empty fields in Patch requests.
1847	ForceSendFields []string `json:"-"`
1848
1849	// NullFields is a list of field names (e.g. "AgentUri") to include in
1850	// API requests with the JSON null value. By default, fields with empty
1851	// values are omitted from API requests. However, any field with an
1852	// empty value appearing in NullFields will be sent to the server as
1853	// null. It is an error if a field in this list has a non-empty value.
1854	// This may be used to include null fields in Patch requests.
1855	NullFields []string `json:"-"`
1856}
1857
1858func (s *GoogleCloudDialogflowCxV3ExportAgentRequest) MarshalJSON() ([]byte, error) {
1859	type NoMethod GoogleCloudDialogflowCxV3ExportAgentRequest
1860	raw := NoMethod(*s)
1861	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1862}
1863
1864// GoogleCloudDialogflowCxV3ExportAgentResponse: The response message
1865// for Agents.ExportAgent.
1866type GoogleCloudDialogflowCxV3ExportAgentResponse struct {
1867	// AgentContent: Uncompressed raw byte content for agent.
1868	AgentContent string `json:"agentContent,omitempty"`
1869
1870	// AgentUri: The URI to a file containing the exported agent. This field
1871	// is populated only if `agent_uri` is specified in ExportAgentRequest.
1872	AgentUri string `json:"agentUri,omitempty"`
1873
1874	// ForceSendFields is a list of field names (e.g. "AgentContent") to
1875	// unconditionally include in API requests. By default, fields with
1876	// empty values are omitted from API requests. However, any non-pointer,
1877	// non-interface field appearing in ForceSendFields will be sent to the
1878	// server regardless of whether the field is empty or not. This may be
1879	// used to include empty fields in Patch requests.
1880	ForceSendFields []string `json:"-"`
1881
1882	// NullFields is a list of field names (e.g. "AgentContent") to include
1883	// in API requests with the JSON null value. By default, fields with
1884	// empty values are omitted from API requests. However, any field with
1885	// an empty value appearing in NullFields will be sent to the server as
1886	// null. It is an error if a field in this list has a non-empty value.
1887	// This may be used to include null fields in Patch requests.
1888	NullFields []string `json:"-"`
1889}
1890
1891func (s *GoogleCloudDialogflowCxV3ExportAgentResponse) MarshalJSON() ([]byte, error) {
1892	type NoMethod GoogleCloudDialogflowCxV3ExportAgentResponse
1893	raw := NoMethod(*s)
1894	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1895}
1896
1897// GoogleCloudDialogflowCxV3ExportFlowRequest: The request message for
1898// Flows.ExportFlow.
1899type GoogleCloudDialogflowCxV3ExportFlowRequest struct {
1900	// FlowUri: Optional. The Google Cloud Storage
1901	// (https://cloud.google.com/storage/docs/) URI to export the flow to.
1902	// The format of this URI must be `gs:///`. If left unspecified, the
1903	// serialized flow is returned inline.
1904	FlowUri string `json:"flowUri,omitempty"`
1905
1906	// IncludeReferencedFlows: Optional. Whether to export flows referenced
1907	// by the specified flow.
1908	IncludeReferencedFlows bool `json:"includeReferencedFlows,omitempty"`
1909
1910	// ForceSendFields is a list of field names (e.g. "FlowUri") to
1911	// unconditionally include in API requests. By default, fields with
1912	// empty values are omitted from API requests. However, any non-pointer,
1913	// non-interface field appearing in ForceSendFields will be sent to the
1914	// server regardless of whether the field is empty or not. This may be
1915	// used to include empty fields in Patch requests.
1916	ForceSendFields []string `json:"-"`
1917
1918	// NullFields is a list of field names (e.g. "FlowUri") to include in
1919	// API requests with the JSON null value. By default, fields with empty
1920	// values are omitted from API requests. However, any field with an
1921	// empty value appearing in NullFields will be sent to the server as
1922	// null. It is an error if a field in this list has a non-empty value.
1923	// This may be used to include null fields in Patch requests.
1924	NullFields []string `json:"-"`
1925}
1926
1927func (s *GoogleCloudDialogflowCxV3ExportFlowRequest) MarshalJSON() ([]byte, error) {
1928	type NoMethod GoogleCloudDialogflowCxV3ExportFlowRequest
1929	raw := NoMethod(*s)
1930	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1931}
1932
1933// GoogleCloudDialogflowCxV3ExportFlowResponse: The response message for
1934// Flows.ExportFlow.
1935type GoogleCloudDialogflowCxV3ExportFlowResponse struct {
1936	// FlowContent: Uncompressed raw byte content for flow.
1937	FlowContent string `json:"flowContent,omitempty"`
1938
1939	// FlowUri: The URI to a file containing the exported flow. This field
1940	// is populated only if `flow_uri` is specified in ExportFlowRequest.
1941	FlowUri string `json:"flowUri,omitempty"`
1942
1943	// ForceSendFields is a list of field names (e.g. "FlowContent") to
1944	// unconditionally include in API requests. By default, fields with
1945	// empty values are omitted from API requests. However, any non-pointer,
1946	// non-interface field appearing in ForceSendFields will be sent to the
1947	// server regardless of whether the field is empty or not. This may be
1948	// used to include empty fields in Patch requests.
1949	ForceSendFields []string `json:"-"`
1950
1951	// NullFields is a list of field names (e.g. "FlowContent") to include
1952	// in API requests with the JSON null value. By default, fields with
1953	// empty values are omitted from API requests. However, any field with
1954	// an empty value appearing in NullFields will be sent to the server as
1955	// null. It is an error if a field in this list has a non-empty value.
1956	// This may be used to include null fields in Patch requests.
1957	NullFields []string `json:"-"`
1958}
1959
1960func (s *GoogleCloudDialogflowCxV3ExportFlowResponse) MarshalJSON() ([]byte, error) {
1961	type NoMethod GoogleCloudDialogflowCxV3ExportFlowResponse
1962	raw := NoMethod(*s)
1963	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1964}
1965
1966// GoogleCloudDialogflowCxV3ExportTestCasesMetadata: Metadata returned
1967// for the TestCases.ExportTestCases long running operation.
1968type GoogleCloudDialogflowCxV3ExportTestCasesMetadata struct {
1969}
1970
1971// GoogleCloudDialogflowCxV3ExportTestCasesRequest: The request message
1972// for TestCases.ExportTestCases.
1973type GoogleCloudDialogflowCxV3ExportTestCasesRequest struct {
1974	// DataFormat: The data format of the exported test cases. If not
1975	// specified, `BLOB` is assumed.
1976	//
1977	// Possible values:
1978	//   "DATA_FORMAT_UNSPECIFIED" - Unspecified format.
1979	//   "BLOB" - Raw bytes.
1980	//   "JSON" - JSON format.
1981	DataFormat string `json:"dataFormat,omitempty"`
1982
1983	// Filter: The filter expression used to filter exported test cases, see
1984	// API Filtering (https://aip.dev/160). The expression is case
1985	// insensitive and supports the following syntax: name = [OR name = ]
1986	// ... For example: * "name = t1 OR name = t2" matches the test case
1987	// with the exact resource name "t1" or "t2".
1988	Filter string `json:"filter,omitempty"`
1989
1990	// GcsUri: The Google Cloud Storage
1991	// (https://cloud.google.com/storage/docs/) URI to export the test cases
1992	// to. The format of this URI must be `gs:///`. If unspecified, the
1993	// serialized test cases is returned inline.
1994	GcsUri string `json:"gcsUri,omitempty"`
1995
1996	// ForceSendFields is a list of field names (e.g. "DataFormat") to
1997	// unconditionally include in API requests. By default, fields with
1998	// empty values are omitted from API requests. However, any non-pointer,
1999	// non-interface field appearing in ForceSendFields will be sent to the
2000	// server regardless of whether the field is empty or not. This may be
2001	// used to include empty fields in Patch requests.
2002	ForceSendFields []string `json:"-"`
2003
2004	// NullFields is a list of field names (e.g. "DataFormat") to include in
2005	// API requests with the JSON null value. By default, fields with empty
2006	// values are omitted from API requests. However, any field with an
2007	// empty value appearing in NullFields will be sent to the server as
2008	// null. It is an error if a field in this list has a non-empty value.
2009	// This may be used to include null fields in Patch requests.
2010	NullFields []string `json:"-"`
2011}
2012
2013func (s *GoogleCloudDialogflowCxV3ExportTestCasesRequest) MarshalJSON() ([]byte, error) {
2014	type NoMethod GoogleCloudDialogflowCxV3ExportTestCasesRequest
2015	raw := NoMethod(*s)
2016	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2017}
2018
2019// GoogleCloudDialogflowCxV3ExportTestCasesResponse: The response
2020// message for TestCases.ExportTestCases.
2021type GoogleCloudDialogflowCxV3ExportTestCasesResponse struct {
2022	// Content: Uncompressed raw byte content for test cases.
2023	Content string `json:"content,omitempty"`
2024
2025	// GcsUri: The URI to a file containing the exported test cases. This
2026	// field is populated only if `gcs_uri` is specified in
2027	// ExportTestCasesRequest.
2028	GcsUri string `json:"gcsUri,omitempty"`
2029
2030	// ForceSendFields is a list of field names (e.g. "Content") to
2031	// unconditionally include in API requests. By default, fields with
2032	// empty values are omitted from API requests. However, any non-pointer,
2033	// non-interface field appearing in ForceSendFields will be sent to the
2034	// server regardless of whether the field is empty or not. This may be
2035	// used to include empty fields in Patch requests.
2036	ForceSendFields []string `json:"-"`
2037
2038	// NullFields is a list of field names (e.g. "Content") to include in
2039	// API requests with the JSON null value. By default, fields with empty
2040	// values are omitted from API requests. However, any field with an
2041	// empty value appearing in NullFields will be sent to the server as
2042	// null. It is an error if a field in this list has a non-empty value.
2043	// This may be used to include null fields in Patch requests.
2044	NullFields []string `json:"-"`
2045}
2046
2047func (s *GoogleCloudDialogflowCxV3ExportTestCasesResponse) MarshalJSON() ([]byte, error) {
2048	type NoMethod GoogleCloudDialogflowCxV3ExportTestCasesResponse
2049	raw := NoMethod(*s)
2050	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2051}
2052
2053// GoogleCloudDialogflowCxV3Flow: Flows represents the conversation
2054// flows when you build your chatbot agent. A flow consists of many
2055// pages connected by the transition routes. Conversations always start
2056// with the built-in Start Flow (with an all-0 ID). Transition routes
2057// can direct the conversation session from the current flow (parent
2058// flow) to another flow (sub flow). When the sub flow is finished,
2059// Dialogflow will bring the session back to the parent flow, where the
2060// sub flow is started. Usually, when a transition route is followed by
2061// a matched intent, the intent will be "consumed". This means the
2062// intent won't activate more transition routes. However, when the
2063// followed transition route moves the conversation session into a
2064// different flow, the matched intent can be carried over and to be
2065// consumed in the target flow.
2066type GoogleCloudDialogflowCxV3Flow struct {
2067	// Description: The description of the flow. The maximum length is 500
2068	// characters. If exceeded, the request is rejected.
2069	Description string `json:"description,omitempty"`
2070
2071	// DisplayName: Required. The human-readable name of the flow.
2072	DisplayName string `json:"displayName,omitempty"`
2073
2074	// EventHandlers: A flow's event handlers serve two purposes: * They are
2075	// responsible for handling events (e.g. no match, webhook errors) in
2076	// the flow. * They are inherited by every page's event handlers, which
2077	// can be used to handle common events regardless of the current page.
2078	// Event handlers defined in the page have higher priority than those
2079	// defined in the flow. Unlike transition_routes, these handlers are
2080	// evaluated on a first-match basis. The first one that matches the
2081	// event get executed, with the rest being ignored.
2082	EventHandlers []*GoogleCloudDialogflowCxV3EventHandler `json:"eventHandlers,omitempty"`
2083
2084	// Name: The unique identifier of the flow. Format:
2085	// `projects//locations//agents//flows/`.
2086	Name string `json:"name,omitempty"`
2087
2088	// NluSettings: NLU related settings of the flow.
2089	NluSettings *GoogleCloudDialogflowCxV3NluSettings `json:"nluSettings,omitempty"`
2090
2091	// TransitionRouteGroups: A flow's transition route group serve two
2092	// purposes: * They are responsible for matching the user's first
2093	// utterances in the flow. * They are inherited by every page's
2094	// transition route groups. Transition route groups defined in the page
2095	// have higher priority than those defined in the flow.
2096	// Format:`projects//locations//agents//flows//transitionRouteGroups/`.
2097	TransitionRouteGroups []string `json:"transitionRouteGroups,omitempty"`
2098
2099	// TransitionRoutes: A flow's transition routes serve two purposes: *
2100	// They are responsible for matching the user's first utterances in the
2101	// flow. * They are inherited by every page's transition routes and can
2102	// support use cases such as the user saying "help" or "can I talk to a
2103	// human?", which can be handled in a common way regardless of the
2104	// current page. Transition routes defined in the page have higher
2105	// priority than those defined in the flow. TransitionRoutes are
2106	// evalauted in the following order: * TransitionRoutes with intent
2107	// specified.. * TransitionRoutes with only condition specified.
2108	// TransitionRoutes with intent specified are inherited by pages in the
2109	// flow.
2110	TransitionRoutes []*GoogleCloudDialogflowCxV3TransitionRoute `json:"transitionRoutes,omitempty"`
2111
2112	// ServerResponse contains the HTTP response code and headers from the
2113	// server.
2114	googleapi.ServerResponse `json:"-"`
2115
2116	// ForceSendFields is a list of field names (e.g. "Description") to
2117	// unconditionally include in API requests. By default, fields with
2118	// empty values are omitted from API requests. However, any non-pointer,
2119	// non-interface field appearing in ForceSendFields will be sent to the
2120	// server regardless of whether the field is empty or not. This may be
2121	// used to include empty fields in Patch requests.
2122	ForceSendFields []string `json:"-"`
2123
2124	// NullFields is a list of field names (e.g. "Description") to include
2125	// in API requests with the JSON null value. By default, fields with
2126	// empty values are omitted from API requests. However, any field with
2127	// an empty value appearing in NullFields will be sent to the server as
2128	// null. It is an error if a field in this list has a non-empty value.
2129	// This may be used to include null fields in Patch requests.
2130	NullFields []string `json:"-"`
2131}
2132
2133func (s *GoogleCloudDialogflowCxV3Flow) MarshalJSON() ([]byte, error) {
2134	type NoMethod GoogleCloudDialogflowCxV3Flow
2135	raw := NoMethod(*s)
2136	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2137}
2138
2139// GoogleCloudDialogflowCxV3FlowValidationResult: The response message
2140// for Flows.GetFlowValidationResult.
2141type GoogleCloudDialogflowCxV3FlowValidationResult struct {
2142	// Name: The unique identifier of the flow validation result. Format:
2143	// `projects//locations//agents//flows//validationResult`.
2144	Name string `json:"name,omitempty"`
2145
2146	// UpdateTime: Last time the flow was validated.
2147	UpdateTime string `json:"updateTime,omitempty"`
2148
2149	// ValidationMessages: Contains all validation messages.
2150	ValidationMessages []*GoogleCloudDialogflowCxV3ValidationMessage `json:"validationMessages,omitempty"`
2151
2152	// ServerResponse contains the HTTP response code and headers from the
2153	// server.
2154	googleapi.ServerResponse `json:"-"`
2155
2156	// ForceSendFields is a list of field names (e.g. "Name") to
2157	// unconditionally include in API requests. By default, fields with
2158	// empty values are omitted from API requests. However, any non-pointer,
2159	// non-interface field appearing in ForceSendFields will be sent to the
2160	// server regardless of whether the field is empty or not. This may be
2161	// used to include empty fields in Patch requests.
2162	ForceSendFields []string `json:"-"`
2163
2164	// NullFields is a list of field names (e.g. "Name") to include in API
2165	// requests with the JSON null value. By default, fields with empty
2166	// values are omitted from API requests. However, any field with an
2167	// empty value appearing in NullFields will be sent to the server as
2168	// null. It is an error if a field in this list has a non-empty value.
2169	// This may be used to include null fields in Patch requests.
2170	NullFields []string `json:"-"`
2171}
2172
2173func (s *GoogleCloudDialogflowCxV3FlowValidationResult) MarshalJSON() ([]byte, error) {
2174	type NoMethod GoogleCloudDialogflowCxV3FlowValidationResult
2175	raw := NoMethod(*s)
2176	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2177}
2178
2179// GoogleCloudDialogflowCxV3Form: A form is a data model that groups
2180// related parameters that can be collected from the user. The process
2181// in which the agent prompts the user and collects parameter values
2182// from the user is called form filling. A form can be added to a page.
2183// When form filling is done, the filled parameters will be written to
2184// the session.
2185type GoogleCloudDialogflowCxV3Form struct {
2186	// Parameters: Parameters to collect from the user.
2187	Parameters []*GoogleCloudDialogflowCxV3FormParameter `json:"parameters,omitempty"`
2188
2189	// ForceSendFields is a list of field names (e.g. "Parameters") to
2190	// unconditionally include in API requests. By default, fields with
2191	// empty values are omitted from API requests. However, any non-pointer,
2192	// non-interface field appearing in ForceSendFields will be sent to the
2193	// server regardless of whether the field is empty or not. This may be
2194	// used to include empty fields in Patch requests.
2195	ForceSendFields []string `json:"-"`
2196
2197	// NullFields is a list of field names (e.g. "Parameters") to include in
2198	// API requests with the JSON null value. By default, fields with empty
2199	// values are omitted from API requests. However, any field with an
2200	// empty value appearing in NullFields will be sent to the server as
2201	// null. It is an error if a field in this list has a non-empty value.
2202	// This may be used to include null fields in Patch requests.
2203	NullFields []string `json:"-"`
2204}
2205
2206func (s *GoogleCloudDialogflowCxV3Form) MarshalJSON() ([]byte, error) {
2207	type NoMethod GoogleCloudDialogflowCxV3Form
2208	raw := NoMethod(*s)
2209	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2210}
2211
2212// GoogleCloudDialogflowCxV3FormParameter: Represents a form parameter.
2213type GoogleCloudDialogflowCxV3FormParameter struct {
2214	// DefaultValue: The default value of an optional parameter. If the
2215	// parameter is required, the default value will be ignored.
2216	DefaultValue interface{} `json:"defaultValue,omitempty"`
2217
2218	// DisplayName: Required. The human-readable name of the parameter,
2219	// unique within the form.
2220	DisplayName string `json:"displayName,omitempty"`
2221
2222	// EntityType: Required. The entity type of the parameter. Format:
2223	// `projects/-/locations/-/agents/-/entityTypes/` for system entity
2224	// types (for example,
2225	// `projects/-/locations/-/agents/-/entityTypes/sys.date`), or
2226	// `projects//locations//agents//entityTypes/` for developer entity
2227	// types.
2228	EntityType string `json:"entityType,omitempty"`
2229
2230	// FillBehavior: Required. Defines fill behavior for the parameter.
2231	FillBehavior *GoogleCloudDialogflowCxV3FormParameterFillBehavior `json:"fillBehavior,omitempty"`
2232
2233	// IsList: Indicates whether the parameter represents a list of values.
2234	IsList bool `json:"isList,omitempty"`
2235
2236	// Redact: Indicates whether the parameter content should be redacted in
2237	// log. If redaction is enabled, the parameter content will be replaced
2238	// by parameter name during logging. Note: the parameter content is
2239	// subject to redaction if either parameter level redaction or entity
2240	// type level redaction is enabled.
2241	Redact bool `json:"redact,omitempty"`
2242
2243	// Required: Indicates whether the parameter is required. Optional
2244	// parameters will not trigger prompts; however, they are filled if the
2245	// user specifies them. Required parameters must be filled before form
2246	// filling concludes.
2247	Required bool `json:"required,omitempty"`
2248
2249	// ForceSendFields is a list of field names (e.g. "DefaultValue") to
2250	// unconditionally include in API requests. By default, fields with
2251	// empty values are omitted from API requests. However, any non-pointer,
2252	// non-interface field appearing in ForceSendFields will be sent to the
2253	// server regardless of whether the field is empty or not. This may be
2254	// used to include empty fields in Patch requests.
2255	ForceSendFields []string `json:"-"`
2256
2257	// NullFields is a list of field names (e.g. "DefaultValue") to include
2258	// in API requests with the JSON null value. By default, fields with
2259	// empty values are omitted from API requests. However, any field with
2260	// an 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 *GoogleCloudDialogflowCxV3FormParameter) MarshalJSON() ([]byte, error) {
2267	type NoMethod GoogleCloudDialogflowCxV3FormParameter
2268	raw := NoMethod(*s)
2269	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2270}
2271
2272// GoogleCloudDialogflowCxV3FormParameterFillBehavior: Configuration for
2273// how the filling of a parameter should be handled.
2274type GoogleCloudDialogflowCxV3FormParameterFillBehavior struct {
2275	// InitialPromptFulfillment: Required. The fulfillment to provide the
2276	// initial prompt that the agent can present to the user in order to
2277	// fill the parameter.
2278	InitialPromptFulfillment *GoogleCloudDialogflowCxV3Fulfillment `json:"initialPromptFulfillment,omitempty"`
2279
2280	// RepromptEventHandlers: The handlers for parameter-level events, used
2281	// to provide reprompt for the parameter or transition to a different
2282	// page/flow. The supported events are: * `sys.no-match-`, where N can
2283	// be from 1 to 6 * `sys.no-match-default` * `sys.no-input-`, where N
2284	// can be from 1 to 6 * `sys.no-input-default` * `sys.invalid-parameter`
2285	// `initial_prompt_fulfillment` provides the first prompt for the
2286	// parameter. If the user's response does not fill the parameter, a
2287	// no-match/no-input event will be triggered, and the fulfillment
2288	// associated with the `sys.no-match-1`/`sys.no-input-1` handler (if
2289	// defined) will be called to provide a prompt. The
2290	// `sys.no-match-2`/`sys.no-input-2` handler (if defined) will respond
2291	// to the next no-match/no-input event, and so on. A
2292	// `sys.no-match-default` or `sys.no-input-default` handler will be used
2293	// to handle all following no-match/no-input events after all numbered
2294	// no-match/no-input handlers for the parameter are consumed. A
2295	// `sys.invalid-parameter` handler can be defined to handle the case
2296	// where the parameter values have been `invalidated` by webhook. For
2297	// example, if the user's response fill the parameter, however the
2298	// parameter was invalidated by webhook, the fulfillment associated with
2299	// the `sys.invalid-parameter` handler (if defined) will be called to
2300	// provide a prompt. If the event handler for the corresponding event
2301	// can't be found on the parameter, `initial_prompt_fulfillment` will be
2302	// re-prompted.
2303	RepromptEventHandlers []*GoogleCloudDialogflowCxV3EventHandler `json:"repromptEventHandlers,omitempty"`
2304
2305	// ForceSendFields is a list of field names (e.g.
2306	// "InitialPromptFulfillment") to unconditionally include in API
2307	// requests. By default, fields with empty values are omitted from API
2308	// requests. However, any non-pointer, non-interface field appearing in
2309	// ForceSendFields will be sent to the server regardless of whether the
2310	// field is empty or not. This may be used to include empty fields in
2311	// Patch requests.
2312	ForceSendFields []string `json:"-"`
2313
2314	// NullFields is a list of field names (e.g. "InitialPromptFulfillment")
2315	// to include in API requests with the JSON null value. By default,
2316	// fields with empty values are omitted from API requests. However, any
2317	// field with an empty value appearing in NullFields will be sent to the
2318	// server as null. It is an error if a field in this list has a
2319	// non-empty value. This may be used to include null fields in Patch
2320	// requests.
2321	NullFields []string `json:"-"`
2322}
2323
2324func (s *GoogleCloudDialogflowCxV3FormParameterFillBehavior) MarshalJSON() ([]byte, error) {
2325	type NoMethod GoogleCloudDialogflowCxV3FormParameterFillBehavior
2326	raw := NoMethod(*s)
2327	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2328}
2329
2330// GoogleCloudDialogflowCxV3FulfillIntentRequest: Request of
2331// FulfillIntent
2332type GoogleCloudDialogflowCxV3FulfillIntentRequest struct {
2333	// Match: The matched intent/event to fulfill.
2334	Match *GoogleCloudDialogflowCxV3Match `json:"match,omitempty"`
2335
2336	// MatchIntentRequest: Must be same as the corresponding MatchIntent
2337	// request, otherwise the behavior is undefined.
2338	MatchIntentRequest *GoogleCloudDialogflowCxV3MatchIntentRequest `json:"matchIntentRequest,omitempty"`
2339
2340	// OutputAudioConfig: Instructs the speech synthesizer how to generate
2341	// output audio.
2342	OutputAudioConfig *GoogleCloudDialogflowCxV3OutputAudioConfig `json:"outputAudioConfig,omitempty"`
2343
2344	// ForceSendFields is a list of field names (e.g. "Match") to
2345	// unconditionally include in API requests. By default, fields with
2346	// empty values are omitted from API requests. However, any non-pointer,
2347	// non-interface field appearing in ForceSendFields will be sent to the
2348	// server regardless of whether the field is empty or not. This may be
2349	// used to include empty fields in Patch requests.
2350	ForceSendFields []string `json:"-"`
2351
2352	// NullFields is a list of field names (e.g. "Match") to include in API
2353	// requests with the JSON null value. By default, fields with empty
2354	// values are omitted from API requests. However, any field with an
2355	// empty value appearing in NullFields will be sent to the server as
2356	// null. It is an error if a field in this list has a non-empty value.
2357	// This may be used to include null fields in Patch requests.
2358	NullFields []string `json:"-"`
2359}
2360
2361func (s *GoogleCloudDialogflowCxV3FulfillIntentRequest) MarshalJSON() ([]byte, error) {
2362	type NoMethod GoogleCloudDialogflowCxV3FulfillIntentRequest
2363	raw := NoMethod(*s)
2364	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2365}
2366
2367// GoogleCloudDialogflowCxV3FulfillIntentResponse: Response of
2368// FulfillIntent
2369type GoogleCloudDialogflowCxV3FulfillIntentResponse struct {
2370	// OutputAudio: The audio data bytes encoded as specified in the
2371	// request. Note: The output audio is generated based on the values of
2372	// default platform text responses found in the
2373	// `query_result.response_messages` field. If multiple default text
2374	// responses exist, they will be concatenated when generating audio. If
2375	// no default platform text responses exist, the generated audio content
2376	// will be empty. In some scenarios, multiple output audio fields may be
2377	// present in the response structure. In these cases, only the
2378	// top-most-level audio output has content.
2379	OutputAudio string `json:"outputAudio,omitempty"`
2380
2381	// OutputAudioConfig: The config used by the speech synthesizer to
2382	// generate the output audio.
2383	OutputAudioConfig *GoogleCloudDialogflowCxV3OutputAudioConfig `json:"outputAudioConfig,omitempty"`
2384
2385	// QueryResult: The result of the conversational query.
2386	QueryResult *GoogleCloudDialogflowCxV3QueryResult `json:"queryResult,omitempty"`
2387
2388	// ResponseId: Output only. The unique identifier of the response. It
2389	// can be used to locate a response in the training example set or for
2390	// reporting issues.
2391	ResponseId string `json:"responseId,omitempty"`
2392
2393	// ServerResponse contains the HTTP response code and headers from the
2394	// server.
2395	googleapi.ServerResponse `json:"-"`
2396
2397	// ForceSendFields is a list of field names (e.g. "OutputAudio") to
2398	// unconditionally include in API requests. By default, fields with
2399	// empty values are omitted from API requests. However, any non-pointer,
2400	// non-interface field appearing in ForceSendFields will be sent to the
2401	// server regardless of whether the field is empty or not. This may be
2402	// used to include empty fields in Patch requests.
2403	ForceSendFields []string `json:"-"`
2404
2405	// NullFields is a list of field names (e.g. "OutputAudio") to include
2406	// in API requests with the JSON null value. By default, fields with
2407	// empty values are omitted from API requests. However, any field with
2408	// an empty value appearing in NullFields will be sent to the server as
2409	// null. It is an error if a field in this list has a non-empty value.
2410	// This may be used to include null fields in Patch requests.
2411	NullFields []string `json:"-"`
2412}
2413
2414func (s *GoogleCloudDialogflowCxV3FulfillIntentResponse) MarshalJSON() ([]byte, error) {
2415	type NoMethod GoogleCloudDialogflowCxV3FulfillIntentResponse
2416	raw := NoMethod(*s)
2417	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2418}
2419
2420// GoogleCloudDialogflowCxV3Fulfillment: A fulfillment can do one or
2421// more of the following actions at the same time: * Generate rich
2422// message responses. * Set parameter values. * Call the webhook.
2423// Fulfillments can be called at various stages in the Page or Form
2424// lifecycle. For example, when a DetectIntentRequest drives a session
2425// to enter a new page, the page's entry fulfillment can add a static
2426// response to the QueryResult in the returning DetectIntentResponse,
2427// call the webhook (for example, to load user data from a database), or
2428// both.
2429type GoogleCloudDialogflowCxV3Fulfillment struct {
2430	// ConditionalCases: Conditional cases for this fulfillment.
2431	ConditionalCases []*GoogleCloudDialogflowCxV3FulfillmentConditionalCases `json:"conditionalCases,omitempty"`
2432
2433	// Messages: The list of rich message responses to present to the user.
2434	Messages []*GoogleCloudDialogflowCxV3ResponseMessage `json:"messages,omitempty"`
2435
2436	// ReturnPartialResponses: Whether Dialogflow should return currently
2437	// queued fulfillment response messages in streaming APIs. If a webhook
2438	// is specified, it happens before Dialogflow invokes webhook. Warning:
2439	// 1) This flag only affects streaming API. Responses are still queued
2440	// and returned once in non-streaming API. 2) The flag can be enabled in
2441	// any fulfillment but only the first 3 partial responses will be
2442	// returned. You may only want to apply it to fulfillments that have
2443	// slow webhooks.
2444	ReturnPartialResponses bool `json:"returnPartialResponses,omitempty"`
2445
2446	// SetParameterActions: Set parameter values before executing the
2447	// webhook.
2448	SetParameterActions []*GoogleCloudDialogflowCxV3FulfillmentSetParameterAction `json:"setParameterActions,omitempty"`
2449
2450	// Tag: The tag used by the webhook to identify which fulfillment is
2451	// being called. This field is required if `webhook` is specified.
2452	Tag string `json:"tag,omitempty"`
2453
2454	// Webhook: The webhook to call. Format:
2455	// `projects//locations//agents//webhooks/`.
2456	Webhook string `json:"webhook,omitempty"`
2457
2458	// ForceSendFields is a list of field names (e.g. "ConditionalCases") to
2459	// unconditionally include in API requests. By default, fields with
2460	// empty values are omitted from API requests. However, any non-pointer,
2461	// non-interface field appearing in ForceSendFields will be sent to the
2462	// server regardless of whether the field is empty or not. This may be
2463	// used to include empty fields in Patch requests.
2464	ForceSendFields []string `json:"-"`
2465
2466	// NullFields is a list of field names (e.g. "ConditionalCases") to
2467	// include in API requests with the JSON null value. By default, fields
2468	// with empty values are omitted from API requests. However, any field
2469	// with an empty value appearing in NullFields will be sent to the
2470	// server as null. It is an error if a field in this list has a
2471	// non-empty value. This may be used to include null fields in Patch
2472	// requests.
2473	NullFields []string `json:"-"`
2474}
2475
2476func (s *GoogleCloudDialogflowCxV3Fulfillment) MarshalJSON() ([]byte, error) {
2477	type NoMethod GoogleCloudDialogflowCxV3Fulfillment
2478	raw := NoMethod(*s)
2479	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2480}
2481
2482// GoogleCloudDialogflowCxV3FulfillmentConditionalCases: A list of
2483// cascading if-else conditions. Cases are mutually exclusive. The first
2484// one with a matching condition is selected, all the rest ignored.
2485type GoogleCloudDialogflowCxV3FulfillmentConditionalCases struct {
2486	// Cases: A list of cascading if-else conditions.
2487	Cases []*GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCase `json:"cases,omitempty"`
2488
2489	// ForceSendFields is a list of field names (e.g. "Cases") to
2490	// unconditionally include in API requests. By default, fields with
2491	// empty values are omitted from API requests. However, any non-pointer,
2492	// non-interface field appearing in ForceSendFields will be sent to the
2493	// server regardless of whether the field is empty or not. This may be
2494	// used to include empty fields in Patch requests.
2495	ForceSendFields []string `json:"-"`
2496
2497	// NullFields is a list of field names (e.g. "Cases") to include in API
2498	// requests with the JSON null value. By default, fields with empty
2499	// values are omitted from API requests. However, any field with an
2500	// empty value appearing in NullFields will be sent to the server as
2501	// null. It is an error if a field in this list has a non-empty value.
2502	// This may be used to include null fields in Patch requests.
2503	NullFields []string `json:"-"`
2504}
2505
2506func (s *GoogleCloudDialogflowCxV3FulfillmentConditionalCases) MarshalJSON() ([]byte, error) {
2507	type NoMethod GoogleCloudDialogflowCxV3FulfillmentConditionalCases
2508	raw := NoMethod(*s)
2509	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2510}
2511
2512// GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCase: Each case
2513// has a Boolean condition. When it is evaluated to be True, the
2514// corresponding messages will be selected and evaluated recursively.
2515type GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCase struct {
2516	// CaseContent: A list of case content.
2517	CaseContent []*GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCaseCaseContent `json:"caseContent,omitempty"`
2518
2519	// Condition: The condition to activate and select this case. Empty
2520	// means the condition is always true. The condition is evaluated
2521	// against form parameters or session parameters. See the conditions
2522	// reference
2523	// (https://cloud.google.com/dialogflow/cx/docs/reference/condition).
2524	Condition string `json:"condition,omitempty"`
2525
2526	// ForceSendFields is a list of field names (e.g. "CaseContent") to
2527	// unconditionally include in API requests. By default, fields with
2528	// empty values are omitted from API requests. However, any non-pointer,
2529	// non-interface field appearing in ForceSendFields will be sent to the
2530	// server regardless of whether the field is empty or not. This may be
2531	// used to include empty fields in Patch requests.
2532	ForceSendFields []string `json:"-"`
2533
2534	// NullFields is a list of field names (e.g. "CaseContent") to include
2535	// in API requests with the JSON null value. By default, fields with
2536	// empty values are omitted from API requests. However, any field with
2537	// an empty value appearing in NullFields will be sent to the server as
2538	// null. It is an error if a field in this list has a non-empty value.
2539	// This may be used to include null fields in Patch requests.
2540	NullFields []string `json:"-"`
2541}
2542
2543func (s *GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCase) MarshalJSON() ([]byte, error) {
2544	type NoMethod GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCase
2545	raw := NoMethod(*s)
2546	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2547}
2548
2549// GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCaseCaseContent:
2550// The list of messages or conditional cases to activate for this case.
2551type GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCaseCaseContent struct {
2552	// AdditionalCases: Additional cases to be evaluated.
2553	AdditionalCases *GoogleCloudDialogflowCxV3FulfillmentConditionalCases `json:"additionalCases,omitempty"`
2554
2555	// Message: Returned message.
2556	Message *GoogleCloudDialogflowCxV3ResponseMessage `json:"message,omitempty"`
2557
2558	// ForceSendFields is a list of field names (e.g. "AdditionalCases") to
2559	// unconditionally include in API requests. By default, fields with
2560	// empty values are omitted from API requests. However, any non-pointer,
2561	// non-interface field appearing in ForceSendFields will be sent to the
2562	// server regardless of whether the field is empty or not. This may be
2563	// used to include empty fields in Patch requests.
2564	ForceSendFields []string `json:"-"`
2565
2566	// NullFields is a list of field names (e.g. "AdditionalCases") to
2567	// include in API requests with the JSON null value. By default, fields
2568	// with empty values are omitted from API requests. However, any field
2569	// with an empty value appearing in NullFields will be sent to the
2570	// server as null. It is an error if a field in this list has a
2571	// non-empty value. This may be used to include null fields in Patch
2572	// requests.
2573	NullFields []string `json:"-"`
2574}
2575
2576func (s *GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCaseCaseContent) MarshalJSON() ([]byte, error) {
2577	type NoMethod GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCaseCaseContent
2578	raw := NoMethod(*s)
2579	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2580}
2581
2582// GoogleCloudDialogflowCxV3FulfillmentSetParameterAction: Setting a
2583// parameter value.
2584type GoogleCloudDialogflowCxV3FulfillmentSetParameterAction struct {
2585	// Parameter: Display name of the parameter.
2586	Parameter string `json:"parameter,omitempty"`
2587
2588	// Value: The new value of the parameter. A null value clears the
2589	// parameter.
2590	Value interface{} `json:"value,omitempty"`
2591
2592	// ForceSendFields is a list of field names (e.g. "Parameter") to
2593	// unconditionally include in API requests. By default, fields with
2594	// empty values are omitted from API requests. However, any non-pointer,
2595	// non-interface field appearing in ForceSendFields will be sent to the
2596	// server regardless of whether the field is empty or not. This may be
2597	// used to include empty fields in Patch requests.
2598	ForceSendFields []string `json:"-"`
2599
2600	// NullFields is a list of field names (e.g. "Parameter") to include in
2601	// API requests with the JSON null value. By default, fields with empty
2602	// values are omitted from API requests. However, any field with an
2603	// empty value appearing in NullFields will be sent to the server as
2604	// null. It is an error if a field in this list has a non-empty value.
2605	// This may be used to include null fields in Patch requests.
2606	NullFields []string `json:"-"`
2607}
2608
2609func (s *GoogleCloudDialogflowCxV3FulfillmentSetParameterAction) MarshalJSON() ([]byte, error) {
2610	type NoMethod GoogleCloudDialogflowCxV3FulfillmentSetParameterAction
2611	raw := NoMethod(*s)
2612	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2613}
2614
2615// GoogleCloudDialogflowCxV3GenericKnowledgeOperationMetadata: Metadata
2616// in google::longrunning::Operation for Knowledge operations.
2617type GoogleCloudDialogflowCxV3GenericKnowledgeOperationMetadata struct {
2618	// State: Required. Output only. The current state of this operation.
2619	//
2620	// Possible values:
2621	//   "STATE_UNSPECIFIED" - State unspecified.
2622	//   "PENDING" - The operation has been created.
2623	//   "RUNNING" - The operation is currently running.
2624	//   "DONE" - The operation is done, either cancelled or completed.
2625	State string `json:"state,omitempty"`
2626
2627	// ForceSendFields is a list of field names (e.g. "State") to
2628	// unconditionally include in API requests. By default, fields with
2629	// empty values are omitted from API requests. However, any non-pointer,
2630	// non-interface field appearing in ForceSendFields will be sent to the
2631	// server regardless of whether the field is empty or not. This may be
2632	// used to include empty fields in Patch requests.
2633	ForceSendFields []string `json:"-"`
2634
2635	// NullFields is a list of field names (e.g. "State") to include in API
2636	// requests with the JSON null value. By default, fields with empty
2637	// values are omitted from API requests. However, any field with an
2638	// empty value appearing in NullFields will be sent to the server as
2639	// null. It is an error if a field in this list has a non-empty value.
2640	// This may be used to include null fields in Patch requests.
2641	NullFields []string `json:"-"`
2642}
2643
2644func (s *GoogleCloudDialogflowCxV3GenericKnowledgeOperationMetadata) MarshalJSON() ([]byte, error) {
2645	type NoMethod GoogleCloudDialogflowCxV3GenericKnowledgeOperationMetadata
2646	raw := NoMethod(*s)
2647	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2648}
2649
2650// GoogleCloudDialogflowCxV3ImportDocumentsOperationMetadata: Metadata
2651// for ImportDocuments operation.
2652type GoogleCloudDialogflowCxV3ImportDocumentsOperationMetadata struct {
2653	// GenericMetadata: The generic information of the operation.
2654	GenericMetadata *GoogleCloudDialogflowCxV3GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
2655
2656	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
2657	// unconditionally include in API requests. By default, fields with
2658	// empty values are omitted from API requests. However, any non-pointer,
2659	// non-interface field appearing in ForceSendFields will be sent to the
2660	// server regardless of whether the field is empty or not. This may be
2661	// used to include empty fields in Patch requests.
2662	ForceSendFields []string `json:"-"`
2663
2664	// NullFields is a list of field names (e.g. "GenericMetadata") to
2665	// include in API requests with the JSON null value. By default, fields
2666	// with empty values are omitted from API requests. However, any field
2667	// with an empty value appearing in NullFields will be sent to the
2668	// server as null. It is an error if a field in this list has a
2669	// non-empty value. This may be used to include null fields in Patch
2670	// requests.
2671	NullFields []string `json:"-"`
2672}
2673
2674func (s *GoogleCloudDialogflowCxV3ImportDocumentsOperationMetadata) MarshalJSON() ([]byte, error) {
2675	type NoMethod GoogleCloudDialogflowCxV3ImportDocumentsOperationMetadata
2676	raw := NoMethod(*s)
2677	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2678}
2679
2680// GoogleCloudDialogflowCxV3ImportDocumentsResponse: Response message
2681// for Documents.ImportDocuments.
2682type GoogleCloudDialogflowCxV3ImportDocumentsResponse struct {
2683	// Warnings: Includes details about skipped documents or any other
2684	// warnings.
2685	Warnings []*GoogleRpcStatus `json:"warnings,omitempty"`
2686
2687	// ForceSendFields is a list of field names (e.g. "Warnings") to
2688	// unconditionally include in API requests. By default, fields with
2689	// empty values are omitted from API requests. However, any non-pointer,
2690	// non-interface field appearing in ForceSendFields will be sent to the
2691	// server regardless of whether the field is empty or not. This may be
2692	// used to include empty fields in Patch requests.
2693	ForceSendFields []string `json:"-"`
2694
2695	// NullFields is a list of field names (e.g. "Warnings") to include in
2696	// API requests with the JSON null value. By default, fields with empty
2697	// values are omitted from API requests. However, any field with an
2698	// empty value appearing in NullFields will be sent to the server as
2699	// null. It is an error if a field in this list has a non-empty value.
2700	// This may be used to include null fields in Patch requests.
2701	NullFields []string `json:"-"`
2702}
2703
2704func (s *GoogleCloudDialogflowCxV3ImportDocumentsResponse) MarshalJSON() ([]byte, error) {
2705	type NoMethod GoogleCloudDialogflowCxV3ImportDocumentsResponse
2706	raw := NoMethod(*s)
2707	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2708}
2709
2710// GoogleCloudDialogflowCxV3ImportFlowRequest: The request message for
2711// Flows.ImportFlow.
2712type GoogleCloudDialogflowCxV3ImportFlowRequest struct {
2713	// FlowContent: Uncompressed raw byte content for flow.
2714	FlowContent string `json:"flowContent,omitempty"`
2715
2716	// FlowUri: The Google Cloud Storage
2717	// (https://cloud.google.com/storage/docs/) URI to import flow from. The
2718	// format of this URI must be `gs:///`.
2719	FlowUri string `json:"flowUri,omitempty"`
2720
2721	// ImportOption: Flow import mode. If not specified, `KEEP` is assumed.
2722	//
2723	// Possible values:
2724	//   "IMPORT_OPTION_UNSPECIFIED" - Unspecified. Treated as `KEEP`.
2725	//   "KEEP" - Always respect settings in exported flow content. It may
2726	// cause a import failure if some settings (e.g. custom NLU) are not
2727	// supported in the agent to import into.
2728	//   "FALLBACK" - Fallback to default settings if some settings are not
2729	// supported in the agent to import into. E.g. Standard NLU will be used
2730	// if custom NLU is not available.
2731	ImportOption string `json:"importOption,omitempty"`
2732
2733	// ForceSendFields is a list of field names (e.g. "FlowContent") to
2734	// unconditionally include in API requests. By default, fields with
2735	// empty values are omitted from API requests. However, any non-pointer,
2736	// non-interface field appearing in ForceSendFields will be sent to the
2737	// server regardless of whether the field is empty or not. This may be
2738	// used to include empty fields in Patch requests.
2739	ForceSendFields []string `json:"-"`
2740
2741	// NullFields is a list of field names (e.g. "FlowContent") to include
2742	// in API requests with the JSON null value. By default, fields with
2743	// empty values are omitted from API requests. However, any field with
2744	// an empty value appearing in NullFields will be sent to the server as
2745	// null. It is an error if a field in this list has a non-empty value.
2746	// This may be used to include null fields in Patch requests.
2747	NullFields []string `json:"-"`
2748}
2749
2750func (s *GoogleCloudDialogflowCxV3ImportFlowRequest) MarshalJSON() ([]byte, error) {
2751	type NoMethod GoogleCloudDialogflowCxV3ImportFlowRequest
2752	raw := NoMethod(*s)
2753	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2754}
2755
2756// GoogleCloudDialogflowCxV3ImportFlowResponse: The response message for
2757// Flows.ImportFlow.
2758type GoogleCloudDialogflowCxV3ImportFlowResponse struct {
2759	// Flow: The unique identifier of the new flow. Format:
2760	// `projects//locations//agents//flows/`.
2761	Flow string `json:"flow,omitempty"`
2762
2763	// ForceSendFields is a list of field names (e.g. "Flow") to
2764	// unconditionally include in API requests. By default, fields with
2765	// empty values are omitted from API requests. However, any non-pointer,
2766	// non-interface field appearing in ForceSendFields will be sent to the
2767	// server regardless of whether the field is empty or not. This may be
2768	// used to include empty fields in Patch requests.
2769	ForceSendFields []string `json:"-"`
2770
2771	// NullFields is a list of field names (e.g. "Flow") to include in API
2772	// requests with the JSON null value. By default, fields with empty
2773	// values are omitted from API requests. However, any field with an
2774	// empty value appearing in NullFields will be sent to the server as
2775	// null. It is an error if a field in this list has a non-empty value.
2776	// This may be used to include null fields in Patch requests.
2777	NullFields []string `json:"-"`
2778}
2779
2780func (s *GoogleCloudDialogflowCxV3ImportFlowResponse) MarshalJSON() ([]byte, error) {
2781	type NoMethod GoogleCloudDialogflowCxV3ImportFlowResponse
2782	raw := NoMethod(*s)
2783	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2784}
2785
2786// GoogleCloudDialogflowCxV3ImportTestCasesMetadata: Metadata returned
2787// for the TestCases.ImportTestCases long running operation.
2788type GoogleCloudDialogflowCxV3ImportTestCasesMetadata struct {
2789	// Errors: Errors for failed test cases.
2790	Errors []*GoogleCloudDialogflowCxV3TestCaseError `json:"errors,omitempty"`
2791
2792	// ForceSendFields is a list of field names (e.g. "Errors") to
2793	// unconditionally include in API requests. By default, fields with
2794	// empty values are omitted from API requests. However, any non-pointer,
2795	// non-interface field appearing in ForceSendFields will be sent to the
2796	// server regardless of whether the field is empty or not. This may be
2797	// used to include empty fields in Patch requests.
2798	ForceSendFields []string `json:"-"`
2799
2800	// NullFields is a list of field names (e.g. "Errors") to include in API
2801	// requests with the JSON null value. By default, fields with empty
2802	// values are omitted from API requests. However, any field with an
2803	// empty value appearing in NullFields will be sent to the server as
2804	// null. It is an error if a field in this list has a non-empty value.
2805	// This may be used to include null fields in Patch requests.
2806	NullFields []string `json:"-"`
2807}
2808
2809func (s *GoogleCloudDialogflowCxV3ImportTestCasesMetadata) MarshalJSON() ([]byte, error) {
2810	type NoMethod GoogleCloudDialogflowCxV3ImportTestCasesMetadata
2811	raw := NoMethod(*s)
2812	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2813}
2814
2815// GoogleCloudDialogflowCxV3ImportTestCasesRequest: The request message
2816// for TestCases.ImportTestCases.
2817type GoogleCloudDialogflowCxV3ImportTestCasesRequest struct {
2818	// Content: Uncompressed raw byte content for test cases.
2819	Content string `json:"content,omitempty"`
2820
2821	// GcsUri: The Google Cloud Storage
2822	// (https://cloud.google.com/storage/docs/) URI to import test cases
2823	// from. The format of this URI must be `gs:///`.
2824	GcsUri string `json:"gcsUri,omitempty"`
2825
2826	// ForceSendFields is a list of field names (e.g. "Content") to
2827	// unconditionally include in API requests. By default, fields with
2828	// empty values are omitted from API requests. However, any non-pointer,
2829	// non-interface field appearing in ForceSendFields will be sent to the
2830	// server regardless of whether the field is empty or not. This may be
2831	// used to include empty fields in Patch requests.
2832	ForceSendFields []string `json:"-"`
2833
2834	// NullFields is a list of field names (e.g. "Content") to include in
2835	// API requests with the JSON null value. By default, fields with empty
2836	// values are omitted from API requests. However, any field with an
2837	// 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 *GoogleCloudDialogflowCxV3ImportTestCasesRequest) MarshalJSON() ([]byte, error) {
2844	type NoMethod GoogleCloudDialogflowCxV3ImportTestCasesRequest
2845	raw := NoMethod(*s)
2846	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2847}
2848
2849// GoogleCloudDialogflowCxV3ImportTestCasesResponse: The response
2850// message for TestCases.ImportTestCases.
2851type GoogleCloudDialogflowCxV3ImportTestCasesResponse struct {
2852	// Names: The unique identifiers of the new test cases. Format:
2853	// `projects//locations//agents//testCases/`.
2854	Names []string `json:"names,omitempty"`
2855
2856	// ForceSendFields is a list of field names (e.g. "Names") to
2857	// unconditionally include in API requests. By default, fields with
2858	// empty values are omitted from API requests. However, any non-pointer,
2859	// non-interface field appearing in ForceSendFields will be sent to the
2860	// server regardless of whether the field is empty or not. This may be
2861	// used to include empty fields in Patch requests.
2862	ForceSendFields []string `json:"-"`
2863
2864	// NullFields is a list of field names (e.g. "Names") 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 *GoogleCloudDialogflowCxV3ImportTestCasesResponse) MarshalJSON() ([]byte, error) {
2874	type NoMethod GoogleCloudDialogflowCxV3ImportTestCasesResponse
2875	raw := NoMethod(*s)
2876	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2877}
2878
2879// GoogleCloudDialogflowCxV3InputAudioConfig: Instructs the speech
2880// recognizer on how to process the audio content.
2881type GoogleCloudDialogflowCxV3InputAudioConfig struct {
2882	// AudioEncoding: Required. Audio encoding of the audio content to
2883	// process.
2884	//
2885	// Possible values:
2886	//   "AUDIO_ENCODING_UNSPECIFIED" - Not specified.
2887	//   "AUDIO_ENCODING_LINEAR_16" - Uncompressed 16-bit signed
2888	// little-endian samples (Linear PCM).
2889	//   "AUDIO_ENCODING_FLAC" -
2890	// [`FLAC`](https://xiph.org/flac/documentation.html) (Free Lossless
2891	// Audio Codec) is the recommended encoding because it is lossless
2892	// (therefore recognition is not compromised) and requires only about
2893	// half the bandwidth of `LINEAR16`. `FLAC` stream encoding supports
2894	// 16-bit and 24-bit samples, however, not all fields in `STREAMINFO`
2895	// are supported.
2896	//   "AUDIO_ENCODING_MULAW" - 8-bit samples that compand 14-bit audio
2897	// samples using G.711 PCMU/mu-law.
2898	//   "AUDIO_ENCODING_AMR" - Adaptive Multi-Rate Narrowband codec.
2899	// `sample_rate_hertz` must be 8000.
2900	//   "AUDIO_ENCODING_AMR_WB" - Adaptive Multi-Rate Wideband codec.
2901	// `sample_rate_hertz` must be 16000.
2902	//   "AUDIO_ENCODING_OGG_OPUS" - Opus encoded audio frames in Ogg
2903	// container ([OggOpus](https://wiki.xiph.org/OggOpus)).
2904	// `sample_rate_hertz` must be 16000.
2905	//   "AUDIO_ENCODING_SPEEX_WITH_HEADER_BYTE" - Although the use of lossy
2906	// encodings is not recommended, if a very low bitrate encoding is
2907	// required, `OGG_OPUS` is highly preferred over Speex encoding. The
2908	// [Speex](https://speex.org/) encoding supported by Dialogflow API has
2909	// a header byte in each block, as in MIME type
2910	// `audio/x-speex-with-header-byte`. It is a variant of the RTP Speex
2911	// encoding defined in [RFC 5574](https://tools.ietf.org/html/rfc5574).
2912	// The stream is a sequence of blocks, one block per RTP packet. Each
2913	// block starts with a byte containing the length of the block, in
2914	// bytes, followed by one or more frames of Speex data, padded to an
2915	// integral number of bytes (octets) as specified in RFC 5574. In other
2916	// words, each RTP header is replaced with a single byte containing the
2917	// block length. Only Speex wideband is supported. `sample_rate_hertz`
2918	// must be 16000.
2919	AudioEncoding string `json:"audioEncoding,omitempty"`
2920
2921	// EnableWordInfo: Optional. If `true`, Dialogflow returns
2922	// SpeechWordInfo in StreamingRecognitionResult with information about
2923	// the recognized speech words, e.g. start and end time offsets. If
2924	// false or unspecified, Speech doesn't return any word-level
2925	// information.
2926	EnableWordInfo bool `json:"enableWordInfo,omitempty"`
2927
2928	// Model: Optional. Which Speech model to select for the given request.
2929	// Select the model best suited to your domain to get best results. If a
2930	// model is not explicitly specified, then we auto-select a model based
2931	// on the parameters in the InputAudioConfig. If enhanced speech model
2932	// is enabled for the agent and an enhanced version of the specified
2933	// model for the language does not exist, then the speech is recognized
2934	// using the standard version of the specified model. Refer to Cloud
2935	// Speech API documentation
2936	// (https://cloud.google.com/speech-to-text/docs/basics#select-model)
2937	// for more details.
2938	Model string `json:"model,omitempty"`
2939
2940	// ModelVariant: Optional. Which variant of the Speech model to use.
2941	//
2942	// Possible values:
2943	//   "SPEECH_MODEL_VARIANT_UNSPECIFIED" - No model variant specified. In
2944	// this case Dialogflow defaults to USE_BEST_AVAILABLE.
2945	//   "USE_BEST_AVAILABLE" - Use the best available variant of the Speech
2946	// model that the caller is eligible for. Please see the [Dialogflow
2947	// docs](https://cloud.google.com/dialogflow/docs/data-logging) for how
2948	// to make your project eligible for enhanced models.
2949	//   "USE_STANDARD" - Use standard model variant even if an enhanced
2950	// model is available. See the [Cloud Speech
2951	// documentation](https://cloud.google.com/speech-to-text/docs/enhanced-m
2952	// odels) for details about enhanced models.
2953	//   "USE_ENHANCED" - Use an enhanced model variant: * If an enhanced
2954	// variant does not exist for the given model and request language,
2955	// Dialogflow falls back to the standard variant. The [Cloud Speech
2956	// documentation](https://cloud.google.com/speech-to-text/docs/enhanced-m
2957	// odels) describes which models have enhanced variants. * If the API
2958	// caller isn't eligible for enhanced models, Dialogflow returns an
2959	// error. Please see the [Dialogflow
2960	// docs](https://cloud.google.com/dialogflow/docs/data-logging) for how
2961	// to make your project eligible.
2962	ModelVariant string `json:"modelVariant,omitempty"`
2963
2964	// PhraseHints: Optional. A list of strings containing words and phrases
2965	// that the speech recognizer should recognize with higher likelihood.
2966	// See the Cloud Speech documentation
2967	// (https://cloud.google.com/speech-to-text/docs/basics#phrase-hints)
2968	// for more details.
2969	PhraseHints []string `json:"phraseHints,omitempty"`
2970
2971	// SampleRateHertz: Sample rate (in Hertz) of the audio content sent in
2972	// the query. Refer to Cloud Speech API documentation
2973	// (https://cloud.google.com/speech-to-text/docs/basics) for more
2974	// details.
2975	SampleRateHertz int64 `json:"sampleRateHertz,omitempty"`
2976
2977	// SingleUtterance: Optional. If `false` (default), recognition does not
2978	// cease until the client closes the stream. If `true`, the recognizer
2979	// will detect a single spoken utterance in input audio. Recognition
2980	// ceases when it detects the audio's voice has stopped or paused. In
2981	// this case, once a detected intent is received, the client should
2982	// close the stream and start a new request with a new stream as needed.
2983	// Note: This setting is relevant only for streaming methods.
2984	SingleUtterance bool `json:"singleUtterance,omitempty"`
2985
2986	// ForceSendFields is a list of field names (e.g. "AudioEncoding") to
2987	// unconditionally include in API requests. By default, fields with
2988	// empty values are omitted from API requests. However, any non-pointer,
2989	// non-interface field appearing in ForceSendFields will be sent to the
2990	// server regardless of whether the field is empty or not. This may be
2991	// used to include empty fields in Patch requests.
2992	ForceSendFields []string `json:"-"`
2993
2994	// NullFields is a list of field names (e.g. "AudioEncoding") to include
2995	// in API requests with the JSON null value. By default, fields with
2996	// empty values are omitted from API requests. However, any field with
2997	// an empty value appearing in NullFields will be sent to the server as
2998	// null. It is an error if a field in this list has a non-empty value.
2999	// This may be used to include null fields in Patch requests.
3000	NullFields []string `json:"-"`
3001}
3002
3003func (s *GoogleCloudDialogflowCxV3InputAudioConfig) MarshalJSON() ([]byte, error) {
3004	type NoMethod GoogleCloudDialogflowCxV3InputAudioConfig
3005	raw := NoMethod(*s)
3006	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3007}
3008
3009// GoogleCloudDialogflowCxV3Intent: An intent represents a user's intent
3010// to interact with a conversational agent. You can provide information
3011// for the Dialogflow API to use to match user input to an intent by
3012// adding training phrases (i.e., examples of user input) to your
3013// intent.
3014type GoogleCloudDialogflowCxV3Intent struct {
3015	// Description: Human readable description for better understanding an
3016	// intent like its scope, content, result etc. Maximum character limit:
3017	// 140 characters.
3018	Description string `json:"description,omitempty"`
3019
3020	// DisplayName: Required. The human-readable name of the intent, unique
3021	// within the agent.
3022	DisplayName string `json:"displayName,omitempty"`
3023
3024	// IsFallback: Indicates whether this is a fallback intent. Currently
3025	// only default fallback intent is allowed in the agent, which is added
3026	// upon agent creation. Adding training phrases to fallback intent is
3027	// useful in the case of requests that are mistakenly matched, since
3028	// training phrases assigned to fallback intents act as negative
3029	// examples that triggers no-match event.
3030	IsFallback bool `json:"isFallback,omitempty"`
3031
3032	// Labels: The key/value metadata to label an intent. Labels can contain
3033	// lowercase letters, digits and the symbols '-' and '_'. International
3034	// characters are allowed, including letters from unicase alphabets.
3035	// Keys must start with a letter. Keys and values can be no longer than
3036	// 63 characters and no more than 128 bytes. Prefix "sys-" is reserved
3037	// for Dialogflow defined labels. Currently allowed Dialogflow defined
3038	// labels include: * sys-head * sys-contextual The above labels do not
3039	// require value. "sys-head" means the intent is a head intent.
3040	// "sys.contextual" means the intent is a contextual intent.
3041	Labels map[string]string `json:"labels,omitempty"`
3042
3043	// Name: The unique identifier of the intent. Required for the
3044	// Intents.UpdateIntent method. Intents.CreateIntent populates the name
3045	// automatically. Format: `projects//locations//agents//intents/`.
3046	Name string `json:"name,omitempty"`
3047
3048	// Parameters: The collection of parameters associated with the intent.
3049	Parameters []*GoogleCloudDialogflowCxV3IntentParameter `json:"parameters,omitempty"`
3050
3051	// Priority: The priority of this intent. Higher numbers represent
3052	// higher priorities. - If the supplied value is unspecified or 0, the
3053	// service translates the value to 500,000, which corresponds to the
3054	// `Normal` priority in the console. - If the supplied value is
3055	// negative, the intent is ignored in runtime detect intent requests.
3056	Priority int64 `json:"priority,omitempty"`
3057
3058	// TrainingPhrases: The collection of training phrases the agent is
3059	// trained on to identify the intent.
3060	TrainingPhrases []*GoogleCloudDialogflowCxV3IntentTrainingPhrase `json:"trainingPhrases,omitempty"`
3061
3062	// ServerResponse contains the HTTP response code and headers from the
3063	// server.
3064	googleapi.ServerResponse `json:"-"`
3065
3066	// ForceSendFields is a list of field names (e.g. "Description") to
3067	// unconditionally include in API requests. By default, fields with
3068	// empty values are omitted from API requests. However, any non-pointer,
3069	// non-interface field appearing in ForceSendFields will be sent to the
3070	// server regardless of whether the field is empty or not. This may be
3071	// used to include empty fields in Patch requests.
3072	ForceSendFields []string `json:"-"`
3073
3074	// NullFields is a list of field names (e.g. "Description") to include
3075	// in API requests with the JSON null value. By default, fields with
3076	// empty values are omitted from API requests. However, any field with
3077	// an empty value appearing in NullFields will be sent to the server as
3078	// null. It is an error if a field in this list has a non-empty value.
3079	// This may be used to include null fields in Patch requests.
3080	NullFields []string `json:"-"`
3081}
3082
3083func (s *GoogleCloudDialogflowCxV3Intent) MarshalJSON() ([]byte, error) {
3084	type NoMethod GoogleCloudDialogflowCxV3Intent
3085	raw := NoMethod(*s)
3086	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3087}
3088
3089// GoogleCloudDialogflowCxV3IntentCoverage: Intent coverage represents
3090// the percentage of all possible intents in the agent that are
3091// triggered in any of a parent's test cases.
3092type GoogleCloudDialogflowCxV3IntentCoverage struct {
3093	// CoverageScore: The percent of intents in the agent that are covered.
3094	CoverageScore float64 `json:"coverageScore,omitempty"`
3095
3096	// Intents: The list of Intents present in the agent
3097	Intents []*GoogleCloudDialogflowCxV3IntentCoverageIntent `json:"intents,omitempty"`
3098
3099	// ForceSendFields is a list of field names (e.g. "CoverageScore") to
3100	// unconditionally include in API requests. By default, fields with
3101	// empty values are omitted from API requests. However, any non-pointer,
3102	// non-interface field appearing in ForceSendFields will be sent to the
3103	// server regardless of whether the field is empty or not. This may be
3104	// used to include empty fields in Patch requests.
3105	ForceSendFields []string `json:"-"`
3106
3107	// NullFields is a list of field names (e.g. "CoverageScore") to include
3108	// in API requests with the JSON null value. By default, fields with
3109	// empty values are omitted from API requests. However, any field with
3110	// an empty value appearing in NullFields will be sent to the server as
3111	// null. It is an error if a field in this list has a non-empty value.
3112	// This may be used to include null fields in Patch requests.
3113	NullFields []string `json:"-"`
3114}
3115
3116func (s *GoogleCloudDialogflowCxV3IntentCoverage) MarshalJSON() ([]byte, error) {
3117	type NoMethod GoogleCloudDialogflowCxV3IntentCoverage
3118	raw := NoMethod(*s)
3119	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3120}
3121
3122func (s *GoogleCloudDialogflowCxV3IntentCoverage) UnmarshalJSON(data []byte) error {
3123	type NoMethod GoogleCloudDialogflowCxV3IntentCoverage
3124	var s1 struct {
3125		CoverageScore gensupport.JSONFloat64 `json:"coverageScore"`
3126		*NoMethod
3127	}
3128	s1.NoMethod = (*NoMethod)(s)
3129	if err := json.Unmarshal(data, &s1); err != nil {
3130		return err
3131	}
3132	s.CoverageScore = float64(s1.CoverageScore)
3133	return nil
3134}
3135
3136// GoogleCloudDialogflowCxV3IntentCoverageIntent: The agent's intent.
3137type GoogleCloudDialogflowCxV3IntentCoverageIntent struct {
3138	// Covered: Whether or not the intent is covered by at least one of the
3139	// agent's test cases.
3140	Covered bool `json:"covered,omitempty"`
3141
3142	// Intent: The intent full resource name
3143	Intent string `json:"intent,omitempty"`
3144
3145	// ForceSendFields is a list of field names (e.g. "Covered") to
3146	// unconditionally include in API requests. By default, fields with
3147	// empty values are omitted from API requests. However, any non-pointer,
3148	// non-interface field appearing in ForceSendFields will be sent to the
3149	// server regardless of whether the field is empty or not. This may be
3150	// used to include empty fields in Patch requests.
3151	ForceSendFields []string `json:"-"`
3152
3153	// NullFields is a list of field names (e.g. "Covered") to include in
3154	// API requests with the JSON null value. By default, fields with empty
3155	// values are omitted from API requests. However, any field with an
3156	// empty value appearing in NullFields will be sent to the server as
3157	// null. It is an error if a field in this list has a non-empty value.
3158	// This may be used to include null fields in Patch requests.
3159	NullFields []string `json:"-"`
3160}
3161
3162func (s *GoogleCloudDialogflowCxV3IntentCoverageIntent) MarshalJSON() ([]byte, error) {
3163	type NoMethod GoogleCloudDialogflowCxV3IntentCoverageIntent
3164	raw := NoMethod(*s)
3165	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3166}
3167
3168// GoogleCloudDialogflowCxV3IntentInput: Represents the intent to
3169// trigger programmatically rather than as a result of natural language
3170// processing.
3171type GoogleCloudDialogflowCxV3IntentInput struct {
3172	// Intent: Required. The unique identifier of the intent. Format:
3173	// `projects//locations//agents//intents/`.
3174	Intent string `json:"intent,omitempty"`
3175
3176	// ForceSendFields is a list of field names (e.g. "Intent") to
3177	// unconditionally include in API requests. By default, fields with
3178	// empty values are omitted from API requests. However, any non-pointer,
3179	// non-interface field appearing in ForceSendFields will be sent to the
3180	// server regardless of whether the field is empty or not. This may be
3181	// used to include empty fields in Patch requests.
3182	ForceSendFields []string `json:"-"`
3183
3184	// NullFields is a list of field names (e.g. "Intent") to include in API
3185	// requests with the JSON null value. By default, fields with empty
3186	// values are omitted from API requests. However, any field with an
3187	// empty value appearing in NullFields will be sent to the server as
3188	// null. It is an error if a field in this list has a non-empty value.
3189	// This may be used to include null fields in Patch requests.
3190	NullFields []string `json:"-"`
3191}
3192
3193func (s *GoogleCloudDialogflowCxV3IntentInput) MarshalJSON() ([]byte, error) {
3194	type NoMethod GoogleCloudDialogflowCxV3IntentInput
3195	raw := NoMethod(*s)
3196	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3197}
3198
3199// GoogleCloudDialogflowCxV3IntentParameter: Represents an intent
3200// parameter.
3201type GoogleCloudDialogflowCxV3IntentParameter struct {
3202	// EntityType: Required. The entity type of the parameter. Format:
3203	// `projects/-/locations/-/agents/-/entityTypes/` for system entity
3204	// types (for example,
3205	// `projects/-/locations/-/agents/-/entityTypes/sys.date`), or
3206	// `projects//locations//agents//entityTypes/` for developer entity
3207	// types.
3208	EntityType string `json:"entityType,omitempty"`
3209
3210	// Id: Required. The unique identifier of the parameter. This field is
3211	// used by training phrases to annotate their parts.
3212	Id string `json:"id,omitempty"`
3213
3214	// IsList: Indicates whether the parameter represents a list of values.
3215	IsList bool `json:"isList,omitempty"`
3216
3217	// Redact: Indicates whether the parameter content should be redacted in
3218	// log. If redaction is enabled, the parameter content will be replaced
3219	// by parameter name during logging. Note: the parameter content is
3220	// subject to redaction if either parameter level redaction or entity
3221	// type level redaction is enabled.
3222	Redact bool `json:"redact,omitempty"`
3223
3224	// ForceSendFields is a list of field names (e.g. "EntityType") to
3225	// unconditionally include in API requests. By default, fields with
3226	// empty values are omitted from API requests. However, any non-pointer,
3227	// non-interface field appearing in ForceSendFields will be sent to the
3228	// server regardless of whether the field is empty or not. This may be
3229	// used to include empty fields in Patch requests.
3230	ForceSendFields []string `json:"-"`
3231
3232	// NullFields is a list of field names (e.g. "EntityType") to include in
3233	// API requests with the JSON null value. By default, fields with empty
3234	// values are omitted from API requests. However, any field with an
3235	// empty value appearing in NullFields will be sent to the server as
3236	// null. It is an error if a field in this list has a non-empty value.
3237	// This may be used to include null fields in Patch requests.
3238	NullFields []string `json:"-"`
3239}
3240
3241func (s *GoogleCloudDialogflowCxV3IntentParameter) MarshalJSON() ([]byte, error) {
3242	type NoMethod GoogleCloudDialogflowCxV3IntentParameter
3243	raw := NoMethod(*s)
3244	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3245}
3246
3247// GoogleCloudDialogflowCxV3IntentTrainingPhrase: Represents an example
3248// that the agent is trained on to identify the intent.
3249type GoogleCloudDialogflowCxV3IntentTrainingPhrase struct {
3250	// Id: Output only. The unique identifier of the training phrase.
3251	Id string `json:"id,omitempty"`
3252
3253	// Parts: Required. The ordered list of training phrase parts. The parts
3254	// are concatenated in order to form the training phrase. Note: The API
3255	// does not automatically annotate training phrases like the Dialogflow
3256	// Console does. Note: Do not forget to include whitespace at part
3257	// boundaries, so the training phrase is well formatted when the parts
3258	// are concatenated. If the training phrase does not need to be
3259	// annotated with parameters, you just need a single part with only the
3260	// Part.text field set. If you want to annotate the training phrase, you
3261	// must create multiple parts, where the fields of each part are
3262	// populated in one of two ways: - `Part.text` is set to a part of the
3263	// phrase that has no parameters. - `Part.text` is set to a part of the
3264	// phrase that you want to annotate, and the `parameter_id` field is
3265	// set.
3266	Parts []*GoogleCloudDialogflowCxV3IntentTrainingPhrasePart `json:"parts,omitempty"`
3267
3268	// RepeatCount: Indicates how many times this example was added to the
3269	// intent.
3270	RepeatCount int64 `json:"repeatCount,omitempty"`
3271
3272	// ForceSendFields is a list of field names (e.g. "Id") to
3273	// unconditionally include in API requests. By default, fields with
3274	// empty values are omitted from API requests. However, any non-pointer,
3275	// non-interface field appearing in ForceSendFields will be sent to the
3276	// server regardless of whether the field is empty or not. This may be
3277	// used to include empty fields in Patch requests.
3278	ForceSendFields []string `json:"-"`
3279
3280	// NullFields is a list of field names (e.g. "Id") to include in API
3281	// requests with the JSON null value. By default, fields with empty
3282	// values are omitted from API requests. However, any field with an
3283	// empty value appearing in NullFields will be sent to the server as
3284	// null. It is an error if a field in this list has a non-empty value.
3285	// This may be used to include null fields in Patch requests.
3286	NullFields []string `json:"-"`
3287}
3288
3289func (s *GoogleCloudDialogflowCxV3IntentTrainingPhrase) MarshalJSON() ([]byte, error) {
3290	type NoMethod GoogleCloudDialogflowCxV3IntentTrainingPhrase
3291	raw := NoMethod(*s)
3292	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3293}
3294
3295// GoogleCloudDialogflowCxV3IntentTrainingPhrasePart: Represents a part
3296// of a training phrase.
3297type GoogleCloudDialogflowCxV3IntentTrainingPhrasePart struct {
3298	// ParameterId: The parameter used to annotate this part of the training
3299	// phrase. This field is required for annotated parts of the training
3300	// phrase.
3301	ParameterId string `json:"parameterId,omitempty"`
3302
3303	// Text: Required. The text for this part.
3304	Text string `json:"text,omitempty"`
3305
3306	// ForceSendFields is a list of field names (e.g. "ParameterId") to
3307	// unconditionally include in API requests. By default, fields with
3308	// empty values are omitted from API requests. However, any non-pointer,
3309	// non-interface field appearing in ForceSendFields will be sent to the
3310	// server regardless of whether the field is empty or not. This may be
3311	// used to include empty fields in Patch requests.
3312	ForceSendFields []string `json:"-"`
3313
3314	// NullFields is a list of field names (e.g. "ParameterId") to include
3315	// in API requests with the JSON null value. By default, fields with
3316	// empty values are omitted from API requests. However, any field with
3317	// an empty value appearing in NullFields will be sent to the server as
3318	// null. It is an error if a field in this list has a non-empty value.
3319	// This may be used to include null fields in Patch requests.
3320	NullFields []string `json:"-"`
3321}
3322
3323func (s *GoogleCloudDialogflowCxV3IntentTrainingPhrasePart) MarshalJSON() ([]byte, error) {
3324	type NoMethod GoogleCloudDialogflowCxV3IntentTrainingPhrasePart
3325	raw := NoMethod(*s)
3326	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3327}
3328
3329// GoogleCloudDialogflowCxV3ListAgentsResponse: The response message for
3330// Agents.ListAgents.
3331type GoogleCloudDialogflowCxV3ListAgentsResponse struct {
3332	// Agents: The list of agents. There will be a maximum number of items
3333	// returned based on the page_size field in the request.
3334	Agents []*GoogleCloudDialogflowCxV3Agent `json:"agents,omitempty"`
3335
3336	// NextPageToken: Token to retrieve the next page of results, or empty
3337	// if there are no more results in the list.
3338	NextPageToken string `json:"nextPageToken,omitempty"`
3339
3340	// ServerResponse contains the HTTP response code and headers from the
3341	// server.
3342	googleapi.ServerResponse `json:"-"`
3343
3344	// ForceSendFields is a list of field names (e.g. "Agents") to
3345	// unconditionally include in API requests. By default, fields with
3346	// empty values are omitted from API requests. However, any non-pointer,
3347	// non-interface field appearing in ForceSendFields will be sent to the
3348	// server regardless of whether the field is empty or not. This may be
3349	// used to include empty fields in Patch requests.
3350	ForceSendFields []string `json:"-"`
3351
3352	// NullFields is a list of field names (e.g. "Agents") to include in API
3353	// requests with the JSON null value. By default, fields with empty
3354	// values are omitted from API requests. However, any field with an
3355	// empty value appearing in NullFields will be sent to the server as
3356	// null. It is an error if a field in this list has a non-empty value.
3357	// This may be used to include null fields in Patch requests.
3358	NullFields []string `json:"-"`
3359}
3360
3361func (s *GoogleCloudDialogflowCxV3ListAgentsResponse) MarshalJSON() ([]byte, error) {
3362	type NoMethod GoogleCloudDialogflowCxV3ListAgentsResponse
3363	raw := NoMethod(*s)
3364	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3365}
3366
3367// GoogleCloudDialogflowCxV3ListContinuousTestResultsResponse: The
3368// response message for Environments.ListTestCaseResults.
3369type GoogleCloudDialogflowCxV3ListContinuousTestResultsResponse struct {
3370	// ContinuousTestResults: The list of continuous test results.
3371	ContinuousTestResults []*GoogleCloudDialogflowCxV3ContinuousTestResult `json:"continuousTestResults,omitempty"`
3372
3373	// NextPageToken: Token to retrieve the next page of results, or empty
3374	// if there are no more results in the list.
3375	NextPageToken string `json:"nextPageToken,omitempty"`
3376
3377	// ServerResponse contains the HTTP response code and headers from the
3378	// server.
3379	googleapi.ServerResponse `json:"-"`
3380
3381	// ForceSendFields is a list of field names (e.g.
3382	// "ContinuousTestResults") to unconditionally include in API requests.
3383	// By default, fields with empty values are omitted from API requests.
3384	// However, any non-pointer, non-interface field appearing in
3385	// ForceSendFields will be sent to the server regardless of whether the
3386	// field is empty or not. This may be used to include empty fields in
3387	// Patch requests.
3388	ForceSendFields []string `json:"-"`
3389
3390	// NullFields is a list of field names (e.g. "ContinuousTestResults") to
3391	// include in API requests with the JSON null value. By default, fields
3392	// with empty values are omitted from API requests. However, any field
3393	// with an empty value appearing in NullFields will be sent to the
3394	// server as null. It is an error if a field in this list has a
3395	// non-empty value. This may be used to include null fields in Patch
3396	// requests.
3397	NullFields []string `json:"-"`
3398}
3399
3400func (s *GoogleCloudDialogflowCxV3ListContinuousTestResultsResponse) MarshalJSON() ([]byte, error) {
3401	type NoMethod GoogleCloudDialogflowCxV3ListContinuousTestResultsResponse
3402	raw := NoMethod(*s)
3403	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3404}
3405
3406// GoogleCloudDialogflowCxV3ListEntityTypesResponse: The response
3407// message for EntityTypes.ListEntityTypes.
3408type GoogleCloudDialogflowCxV3ListEntityTypesResponse struct {
3409	// EntityTypes: The list of entity types. There will be a maximum number
3410	// of items returned based on the page_size field in the request.
3411	EntityTypes []*GoogleCloudDialogflowCxV3EntityType `json:"entityTypes,omitempty"`
3412
3413	// NextPageToken: Token to retrieve the next page of results, or empty
3414	// if there are no more results in the list.
3415	NextPageToken string `json:"nextPageToken,omitempty"`
3416
3417	// ServerResponse contains the HTTP response code and headers from the
3418	// server.
3419	googleapi.ServerResponse `json:"-"`
3420
3421	// ForceSendFields is a list of field names (e.g. "EntityTypes") to
3422	// unconditionally include in API requests. By default, fields with
3423	// empty values are omitted from API requests. However, any non-pointer,
3424	// non-interface field appearing in ForceSendFields will be sent to the
3425	// server regardless of whether the field is empty or not. This may be
3426	// used to include empty fields in Patch requests.
3427	ForceSendFields []string `json:"-"`
3428
3429	// NullFields is a list of field names (e.g. "EntityTypes") to include
3430	// in API requests with the JSON null value. By default, fields with
3431	// empty values are omitted from API requests. However, any field with
3432	// an empty value appearing in NullFields will be sent to the server as
3433	// null. It is an error if a field in this list has a non-empty value.
3434	// This may be used to include null fields in Patch requests.
3435	NullFields []string `json:"-"`
3436}
3437
3438func (s *GoogleCloudDialogflowCxV3ListEntityTypesResponse) MarshalJSON() ([]byte, error) {
3439	type NoMethod GoogleCloudDialogflowCxV3ListEntityTypesResponse
3440	raw := NoMethod(*s)
3441	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3442}
3443
3444// GoogleCloudDialogflowCxV3ListEnvironmentsResponse: The response
3445// message for Environments.ListEnvironments.
3446type GoogleCloudDialogflowCxV3ListEnvironmentsResponse struct {
3447	// Environments: The list of environments. There will be a maximum
3448	// number of items returned based on the page_size field in the request.
3449	// The list may in some cases be empty or contain fewer entries than
3450	// page_size even if this isn't the last page.
3451	Environments []*GoogleCloudDialogflowCxV3Environment `json:"environments,omitempty"`
3452
3453	// NextPageToken: Token to retrieve the next page of results, or empty
3454	// if there are no more results in the list.
3455	NextPageToken string `json:"nextPageToken,omitempty"`
3456
3457	// ServerResponse contains the HTTP response code and headers from the
3458	// server.
3459	googleapi.ServerResponse `json:"-"`
3460
3461	// ForceSendFields is a list of field names (e.g. "Environments") to
3462	// unconditionally include in API requests. By default, fields with
3463	// empty values are omitted from API requests. However, any non-pointer,
3464	// non-interface field appearing in ForceSendFields will be sent to the
3465	// server regardless of whether the field is empty or not. This may be
3466	// used to include empty fields in Patch requests.
3467	ForceSendFields []string `json:"-"`
3468
3469	// NullFields is a list of field names (e.g. "Environments") to include
3470	// in API requests with the JSON null value. By default, fields with
3471	// empty values are omitted from API requests. However, any field with
3472	// an empty value appearing in NullFields will be sent to the server as
3473	// null. It is an error if a field in this list has a non-empty value.
3474	// This may be used to include null fields in Patch requests.
3475	NullFields []string `json:"-"`
3476}
3477
3478func (s *GoogleCloudDialogflowCxV3ListEnvironmentsResponse) MarshalJSON() ([]byte, error) {
3479	type NoMethod GoogleCloudDialogflowCxV3ListEnvironmentsResponse
3480	raw := NoMethod(*s)
3481	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3482}
3483
3484// GoogleCloudDialogflowCxV3ListExperimentsResponse: The response
3485// message for Experiments.ListExperiments.
3486type GoogleCloudDialogflowCxV3ListExperimentsResponse struct {
3487	// Experiments: The list of experiments. There will be a maximum number
3488	// of items returned based on the page_size field in the request. The
3489	// list may in some cases be empty or contain fewer entries than
3490	// page_size even if this isn't the last page.
3491	Experiments []*GoogleCloudDialogflowCxV3Experiment `json:"experiments,omitempty"`
3492
3493	// NextPageToken: Token to retrieve the next page of results, or empty
3494	// if there are no more results in the list.
3495	NextPageToken string `json:"nextPageToken,omitempty"`
3496
3497	// ServerResponse contains the HTTP response code and headers from the
3498	// server.
3499	googleapi.ServerResponse `json:"-"`
3500
3501	// ForceSendFields is a list of field names (e.g. "Experiments") to
3502	// unconditionally include in API requests. By default, fields with
3503	// empty values are omitted from API requests. However, any non-pointer,
3504	// non-interface field appearing in ForceSendFields will be sent to the
3505	// server regardless of whether the field is empty or not. This may be
3506	// used to include empty fields in Patch requests.
3507	ForceSendFields []string `json:"-"`
3508
3509	// NullFields is a list of field names (e.g. "Experiments") to include
3510	// in API requests with the JSON null value. By default, fields with
3511	// empty values are omitted from API requests. However, any field with
3512	// an empty value appearing in NullFields will be sent to the server as
3513	// null. It is an error if a field in this list has a non-empty value.
3514	// This may be used to include null fields in Patch requests.
3515	NullFields []string `json:"-"`
3516}
3517
3518func (s *GoogleCloudDialogflowCxV3ListExperimentsResponse) MarshalJSON() ([]byte, error) {
3519	type NoMethod GoogleCloudDialogflowCxV3ListExperimentsResponse
3520	raw := NoMethod(*s)
3521	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3522}
3523
3524// GoogleCloudDialogflowCxV3ListFlowsResponse: The response message for
3525// Flows.ListFlows.
3526type GoogleCloudDialogflowCxV3ListFlowsResponse struct {
3527	// Flows: The list of flows. There will be a maximum number of items
3528	// returned based on the page_size field in the request.
3529	Flows []*GoogleCloudDialogflowCxV3Flow `json:"flows,omitempty"`
3530
3531	// NextPageToken: Token to retrieve the next page of results, or empty
3532	// if there are no more results in the list.
3533	NextPageToken string `json:"nextPageToken,omitempty"`
3534
3535	// ServerResponse contains the HTTP response code and headers from the
3536	// server.
3537	googleapi.ServerResponse `json:"-"`
3538
3539	// ForceSendFields is a list of field names (e.g. "Flows") to
3540	// unconditionally include in API requests. By default, fields with
3541	// empty values are omitted from API requests. However, any non-pointer,
3542	// non-interface field appearing in ForceSendFields will be sent to the
3543	// server regardless of whether the field is empty or not. This may be
3544	// used to include empty fields in Patch requests.
3545	ForceSendFields []string `json:"-"`
3546
3547	// NullFields is a list of field names (e.g. "Flows") to include in API
3548	// requests with the JSON null value. By default, fields with empty
3549	// values are omitted from API requests. However, any field with an
3550	// empty value appearing in NullFields will be sent to the server as
3551	// null. It is an error if a field in this list has a non-empty value.
3552	// This may be used to include null fields in Patch requests.
3553	NullFields []string `json:"-"`
3554}
3555
3556func (s *GoogleCloudDialogflowCxV3ListFlowsResponse) MarshalJSON() ([]byte, error) {
3557	type NoMethod GoogleCloudDialogflowCxV3ListFlowsResponse
3558	raw := NoMethod(*s)
3559	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3560}
3561
3562// GoogleCloudDialogflowCxV3ListIntentsResponse: The response message
3563// for Intents.ListIntents.
3564type GoogleCloudDialogflowCxV3ListIntentsResponse struct {
3565	// Intents: The list of intents. There will be a maximum number of items
3566	// returned based on the page_size field in the request.
3567	Intents []*GoogleCloudDialogflowCxV3Intent `json:"intents,omitempty"`
3568
3569	// NextPageToken: Token to retrieve the next page of results, or empty
3570	// if there are no more results in the list.
3571	NextPageToken string `json:"nextPageToken,omitempty"`
3572
3573	// ServerResponse contains the HTTP response code and headers from the
3574	// server.
3575	googleapi.ServerResponse `json:"-"`
3576
3577	// ForceSendFields is a list of field names (e.g. "Intents") to
3578	// unconditionally include in API requests. By default, fields with
3579	// empty values are omitted from API requests. However, any non-pointer,
3580	// non-interface field appearing in ForceSendFields will be sent to the
3581	// server regardless of whether the field is empty or not. This may be
3582	// used to include empty fields in Patch requests.
3583	ForceSendFields []string `json:"-"`
3584
3585	// NullFields is a list of field names (e.g. "Intents") to include in
3586	// API requests with the JSON null value. By default, fields with empty
3587	// values are omitted from API requests. However, any field with an
3588	// empty value appearing in NullFields will be sent to the server as
3589	// null. It is an error if a field in this list has a non-empty value.
3590	// This may be used to include null fields in Patch requests.
3591	NullFields []string `json:"-"`
3592}
3593
3594func (s *GoogleCloudDialogflowCxV3ListIntentsResponse) MarshalJSON() ([]byte, error) {
3595	type NoMethod GoogleCloudDialogflowCxV3ListIntentsResponse
3596	raw := NoMethod(*s)
3597	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3598}
3599
3600// GoogleCloudDialogflowCxV3ListPagesResponse: The response message for
3601// Pages.ListPages.
3602type GoogleCloudDialogflowCxV3ListPagesResponse struct {
3603	// NextPageToken: Token to retrieve the next page of results, or empty
3604	// if there are no more results in the list.
3605	NextPageToken string `json:"nextPageToken,omitempty"`
3606
3607	// Pages: The list of pages. There will be a maximum number of items
3608	// returned based on the page_size field in the request.
3609	Pages []*GoogleCloudDialogflowCxV3Page `json:"pages,omitempty"`
3610
3611	// ServerResponse contains the HTTP response code and headers from the
3612	// server.
3613	googleapi.ServerResponse `json:"-"`
3614
3615	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
3616	// unconditionally include in API requests. By default, fields with
3617	// empty values are omitted from API requests. However, any non-pointer,
3618	// non-interface field appearing in ForceSendFields will be sent to the
3619	// server regardless of whether the field is empty or not. This may be
3620	// used to include empty fields in Patch requests.
3621	ForceSendFields []string `json:"-"`
3622
3623	// NullFields is a list of field names (e.g. "NextPageToken") to include
3624	// in API requests with the JSON null value. By default, fields with
3625	// empty values are omitted from API requests. However, any field with
3626	// an empty value appearing in NullFields will be sent to the server as
3627	// null. It is an error if a field in this list has a non-empty value.
3628	// This may be used to include null fields in Patch requests.
3629	NullFields []string `json:"-"`
3630}
3631
3632func (s *GoogleCloudDialogflowCxV3ListPagesResponse) MarshalJSON() ([]byte, error) {
3633	type NoMethod GoogleCloudDialogflowCxV3ListPagesResponse
3634	raw := NoMethod(*s)
3635	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3636}
3637
3638// GoogleCloudDialogflowCxV3ListSecuritySettingsResponse: The response
3639// message for SecuritySettings.ListSecuritySettings.
3640type GoogleCloudDialogflowCxV3ListSecuritySettingsResponse struct {
3641	// NextPageToken: Token to retrieve the next page of results, or empty
3642	// if there are no more results in the list.
3643	NextPageToken string `json:"nextPageToken,omitempty"`
3644
3645	// SecuritySettings: The list of security settings.
3646	SecuritySettings []*GoogleCloudDialogflowCxV3SecuritySettings `json:"securitySettings,omitempty"`
3647
3648	// ServerResponse contains the HTTP response code and headers from the
3649	// server.
3650	googleapi.ServerResponse `json:"-"`
3651
3652	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
3653	// unconditionally include in API requests. By default, fields with
3654	// empty values are omitted from API requests. However, any non-pointer,
3655	// non-interface field appearing in ForceSendFields will be sent to the
3656	// server regardless of whether the field is empty or not. This may be
3657	// used to include empty fields in Patch requests.
3658	ForceSendFields []string `json:"-"`
3659
3660	// NullFields is a list of field names (e.g. "NextPageToken") to include
3661	// in API requests with the JSON null value. By default, fields with
3662	// empty values are omitted from API requests. However, any field with
3663	// an empty value appearing in NullFields will be sent to the server as
3664	// null. It is an error if a field in this list has a non-empty value.
3665	// This may be used to include null fields in Patch requests.
3666	NullFields []string `json:"-"`
3667}
3668
3669func (s *GoogleCloudDialogflowCxV3ListSecuritySettingsResponse) MarshalJSON() ([]byte, error) {
3670	type NoMethod GoogleCloudDialogflowCxV3ListSecuritySettingsResponse
3671	raw := NoMethod(*s)
3672	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3673}
3674
3675// GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse: The response
3676// message for SessionEntityTypes.ListSessionEntityTypes.
3677type GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse struct {
3678	// NextPageToken: Token to retrieve the next page of results, or empty
3679	// if there are no more results in the list.
3680	NextPageToken string `json:"nextPageToken,omitempty"`
3681
3682	// SessionEntityTypes: The list of session entity types. There will be a
3683	// maximum number of items returned based on the page_size field in the
3684	// request.
3685	SessionEntityTypes []*GoogleCloudDialogflowCxV3SessionEntityType `json:"sessionEntityTypes,omitempty"`
3686
3687	// ServerResponse contains the HTTP response code and headers from the
3688	// server.
3689	googleapi.ServerResponse `json:"-"`
3690
3691	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
3692	// unconditionally include in API requests. By default, fields with
3693	// empty values are omitted from API requests. However, any non-pointer,
3694	// non-interface field appearing in ForceSendFields will be sent to the
3695	// server regardless of whether the field is empty or not. This may be
3696	// used to include empty fields in Patch requests.
3697	ForceSendFields []string `json:"-"`
3698
3699	// NullFields is a list of field names (e.g. "NextPageToken") to include
3700	// in API requests with the JSON null value. By default, fields with
3701	// empty values are omitted from API requests. However, any field with
3702	// an empty value appearing in NullFields will be sent to the server as
3703	// null. It is an error if a field in this list has a non-empty value.
3704	// This may be used to include null fields in Patch requests.
3705	NullFields []string `json:"-"`
3706}
3707
3708func (s *GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse) MarshalJSON() ([]byte, error) {
3709	type NoMethod GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse
3710	raw := NoMethod(*s)
3711	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3712}
3713
3714// GoogleCloudDialogflowCxV3ListTestCaseResultsResponse: The response
3715// message for TestCases.ListTestCaseResults.
3716type GoogleCloudDialogflowCxV3ListTestCaseResultsResponse struct {
3717	// NextPageToken: Token to retrieve the next page of results, or empty
3718	// if there are no more results in the list.
3719	NextPageToken string `json:"nextPageToken,omitempty"`
3720
3721	// TestCaseResults: The list of test case results.
3722	TestCaseResults []*GoogleCloudDialogflowCxV3TestCaseResult `json:"testCaseResults,omitempty"`
3723
3724	// ServerResponse contains the HTTP response code and headers from the
3725	// server.
3726	googleapi.ServerResponse `json:"-"`
3727
3728	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
3729	// unconditionally include in API requests. By default, fields with
3730	// empty values are omitted from API requests. However, any non-pointer,
3731	// non-interface field appearing in ForceSendFields will be sent to the
3732	// server regardless of whether the field is empty or not. This may be
3733	// used to include empty fields in Patch requests.
3734	ForceSendFields []string `json:"-"`
3735
3736	// NullFields is a list of field names (e.g. "NextPageToken") to include
3737	// in API requests with the JSON null value. By default, fields with
3738	// empty values are omitted from API requests. However, any field with
3739	// an empty value appearing in NullFields will be sent to the server as
3740	// null. It is an error if a field in this list has a non-empty value.
3741	// This may be used to include null fields in Patch requests.
3742	NullFields []string `json:"-"`
3743}
3744
3745func (s *GoogleCloudDialogflowCxV3ListTestCaseResultsResponse) MarshalJSON() ([]byte, error) {
3746	type NoMethod GoogleCloudDialogflowCxV3ListTestCaseResultsResponse
3747	raw := NoMethod(*s)
3748	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3749}
3750
3751// GoogleCloudDialogflowCxV3ListTestCasesResponse: The response message
3752// for TestCases.ListTestCases.
3753type GoogleCloudDialogflowCxV3ListTestCasesResponse struct {
3754	// NextPageToken: Token to retrieve the next page of results, or empty
3755	// if there are no more results in the list.
3756	NextPageToken string `json:"nextPageToken,omitempty"`
3757
3758	// TestCases: The list of test cases. There will be a maximum number of
3759	// items returned based on the page_size field in the request.
3760	TestCases []*GoogleCloudDialogflowCxV3TestCase `json:"testCases,omitempty"`
3761
3762	// ServerResponse contains the HTTP response code and headers from the
3763	// server.
3764	googleapi.ServerResponse `json:"-"`
3765
3766	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
3767	// unconditionally include in API requests. By default, fields with
3768	// empty values are omitted from API requests. However, any non-pointer,
3769	// non-interface field appearing in ForceSendFields will be sent to the
3770	// server regardless of whether the field is empty or not. This may be
3771	// used to include empty fields in Patch requests.
3772	ForceSendFields []string `json:"-"`
3773
3774	// NullFields is a list of field names (e.g. "NextPageToken") to include
3775	// in API requests with the JSON null value. By default, fields with
3776	// empty values are omitted from API requests. However, any field with
3777	// an empty value appearing in NullFields will be sent to the server as
3778	// null. It is an error if a field in this list has a non-empty value.
3779	// This may be used to include null fields in Patch requests.
3780	NullFields []string `json:"-"`
3781}
3782
3783func (s *GoogleCloudDialogflowCxV3ListTestCasesResponse) MarshalJSON() ([]byte, error) {
3784	type NoMethod GoogleCloudDialogflowCxV3ListTestCasesResponse
3785	raw := NoMethod(*s)
3786	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3787}
3788
3789// GoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse: The
3790// response message for TransitionRouteGroups.ListTransitionRouteGroups.
3791type GoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse struct {
3792	// NextPageToken: Token to retrieve the next page of results, or empty
3793	// if there are no more results in the list.
3794	NextPageToken string `json:"nextPageToken,omitempty"`
3795
3796	// TransitionRouteGroups: The list of transition route groups. There
3797	// will be a maximum number of items returned based on the page_size
3798	// field in the request. The list may in some cases be empty or contain
3799	// fewer entries than page_size even if this isn't the last page.
3800	TransitionRouteGroups []*GoogleCloudDialogflowCxV3TransitionRouteGroup `json:"transitionRouteGroups,omitempty"`
3801
3802	// ServerResponse contains the HTTP response code and headers from the
3803	// server.
3804	googleapi.ServerResponse `json:"-"`
3805
3806	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
3807	// unconditionally include in API requests. By default, fields with
3808	// empty values are omitted from API requests. However, any non-pointer,
3809	// non-interface field appearing in ForceSendFields will be sent to the
3810	// server regardless of whether the field is empty or not. This may be
3811	// used to include empty fields in Patch requests.
3812	ForceSendFields []string `json:"-"`
3813
3814	// NullFields is a list of field names (e.g. "NextPageToken") to include
3815	// in API requests with the JSON null value. By default, fields with
3816	// empty values are omitted from API requests. However, any field with
3817	// an empty value appearing in NullFields will be sent to the server as
3818	// null. It is an error if a field in this list has a non-empty value.
3819	// This may be used to include null fields in Patch requests.
3820	NullFields []string `json:"-"`
3821}
3822
3823func (s *GoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse) MarshalJSON() ([]byte, error) {
3824	type NoMethod GoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse
3825	raw := NoMethod(*s)
3826	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3827}
3828
3829// GoogleCloudDialogflowCxV3ListVersionsResponse: The response message
3830// for Versions.ListVersions.
3831type GoogleCloudDialogflowCxV3ListVersionsResponse struct {
3832	// NextPageToken: Token to retrieve the next page of results, or empty
3833	// if there are no more results in the list.
3834	NextPageToken string `json:"nextPageToken,omitempty"`
3835
3836	// Versions: A list of versions. There will be a maximum number of items
3837	// returned based on the page_size field in the request. The list may in
3838	// some cases be empty or contain fewer entries than page_size even if
3839	// this isn't the last page.
3840	Versions []*GoogleCloudDialogflowCxV3Version `json:"versions,omitempty"`
3841
3842	// ServerResponse contains the HTTP response code and headers from the
3843	// server.
3844	googleapi.ServerResponse `json:"-"`
3845
3846	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
3847	// unconditionally include in API requests. By default, fields with
3848	// empty values are omitted from API requests. However, any non-pointer,
3849	// non-interface field appearing in ForceSendFields will be sent to the
3850	// server regardless of whether the field is empty or not. This may be
3851	// used to include empty fields in Patch requests.
3852	ForceSendFields []string `json:"-"`
3853
3854	// NullFields is a list of field names (e.g. "NextPageToken") to include
3855	// in API requests with the JSON null value. By default, fields with
3856	// empty values are omitted from API requests. However, any field with
3857	// an empty value appearing in NullFields will be sent to the server as
3858	// null. It is an error if a field in this list has a non-empty value.
3859	// This may be used to include null fields in Patch requests.
3860	NullFields []string `json:"-"`
3861}
3862
3863func (s *GoogleCloudDialogflowCxV3ListVersionsResponse) MarshalJSON() ([]byte, error) {
3864	type NoMethod GoogleCloudDialogflowCxV3ListVersionsResponse
3865	raw := NoMethod(*s)
3866	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3867}
3868
3869// GoogleCloudDialogflowCxV3ListWebhooksResponse: The response message
3870// for Webhooks.ListWebhooks.
3871type GoogleCloudDialogflowCxV3ListWebhooksResponse struct {
3872	// NextPageToken: Token to retrieve the next page of results, or empty
3873	// if there are no more results in the list.
3874	NextPageToken string `json:"nextPageToken,omitempty"`
3875
3876	// Webhooks: The list of webhooks. There will be a maximum number of
3877	// items returned based on the page_size field in the request.
3878	Webhooks []*GoogleCloudDialogflowCxV3Webhook `json:"webhooks,omitempty"`
3879
3880	// ServerResponse contains the HTTP response code and headers from the
3881	// server.
3882	googleapi.ServerResponse `json:"-"`
3883
3884	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
3885	// unconditionally include in API requests. By default, fields with
3886	// empty values are omitted from API requests. However, any non-pointer,
3887	// non-interface field appearing in ForceSendFields will be sent to the
3888	// server regardless of whether the field is empty or not. This may be
3889	// used to include empty fields in Patch requests.
3890	ForceSendFields []string `json:"-"`
3891
3892	// NullFields is a list of field names (e.g. "NextPageToken") to include
3893	// in API requests with the JSON null value. By default, fields with
3894	// empty values are omitted from API requests. However, any field with
3895	// an empty value appearing in NullFields will be sent to the server as
3896	// null. It is an error if a field in this list has a non-empty value.
3897	// This may be used to include null fields in Patch requests.
3898	NullFields []string `json:"-"`
3899}
3900
3901func (s *GoogleCloudDialogflowCxV3ListWebhooksResponse) MarshalJSON() ([]byte, error) {
3902	type NoMethod GoogleCloudDialogflowCxV3ListWebhooksResponse
3903	raw := NoMethod(*s)
3904	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3905}
3906
3907// GoogleCloudDialogflowCxV3LoadVersionRequest: The request message for
3908// Versions.LoadVersion.
3909type GoogleCloudDialogflowCxV3LoadVersionRequest struct {
3910	// AllowOverrideAgentResources: This field is used to prevent accidental
3911	// overwrite of other agent resources, which can potentially impact
3912	// other flow's behavior. If `allow_override_agent_resources` is false,
3913	// conflicted agent-level resources will not be overridden (i.e.
3914	// intents, entities, webhooks).
3915	AllowOverrideAgentResources bool `json:"allowOverrideAgentResources,omitempty"`
3916
3917	// ForceSendFields is a list of field names (e.g.
3918	// "AllowOverrideAgentResources") to unconditionally include in API
3919	// requests. By default, fields with empty values are omitted from API
3920	// requests. However, any non-pointer, non-interface field appearing in
3921	// ForceSendFields will be sent to the server regardless of whether the
3922	// field is empty or not. This may be used to include empty fields in
3923	// Patch requests.
3924	ForceSendFields []string `json:"-"`
3925
3926	// NullFields is a list of field names (e.g.
3927	// "AllowOverrideAgentResources") to include in API requests with the
3928	// JSON null value. By default, fields with empty values are omitted
3929	// from API requests. However, any field with an empty value appearing
3930	// in NullFields will be sent to the server as null. It is an error if a
3931	// field in this list has a non-empty value. This may be used to include
3932	// null fields in Patch requests.
3933	NullFields []string `json:"-"`
3934}
3935
3936func (s *GoogleCloudDialogflowCxV3LoadVersionRequest) MarshalJSON() ([]byte, error) {
3937	type NoMethod GoogleCloudDialogflowCxV3LoadVersionRequest
3938	raw := NoMethod(*s)
3939	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3940}
3941
3942// GoogleCloudDialogflowCxV3LookupEnvironmentHistoryResponse: The
3943// response message for Environments.LookupEnvironmentHistory.
3944type GoogleCloudDialogflowCxV3LookupEnvironmentHistoryResponse struct {
3945	// Environments: Represents a list of snapshots for an environment. Time
3946	// of the snapshots is stored in `update_time`.
3947	Environments []*GoogleCloudDialogflowCxV3Environment `json:"environments,omitempty"`
3948
3949	// NextPageToken: Token to retrieve the next page of results, or empty
3950	// if there are no more results in the list.
3951	NextPageToken string `json:"nextPageToken,omitempty"`
3952
3953	// ServerResponse contains the HTTP response code and headers from the
3954	// server.
3955	googleapi.ServerResponse `json:"-"`
3956
3957	// ForceSendFields is a list of field names (e.g. "Environments") to
3958	// unconditionally include in API requests. By default, fields with
3959	// empty values are omitted from API requests. However, any non-pointer,
3960	// non-interface field appearing in ForceSendFields will be sent to the
3961	// server regardless of whether the field is empty or not. This may be
3962	// used to include empty fields in Patch requests.
3963	ForceSendFields []string `json:"-"`
3964
3965	// NullFields is a list of field names (e.g. "Environments") to include
3966	// in API requests with the JSON null value. By default, fields with
3967	// empty values are omitted from API requests. However, any field with
3968	// an empty value appearing in NullFields will be sent to the server as
3969	// null. It is an error if a field in this list has a non-empty value.
3970	// This may be used to include null fields in Patch requests.
3971	NullFields []string `json:"-"`
3972}
3973
3974func (s *GoogleCloudDialogflowCxV3LookupEnvironmentHistoryResponse) MarshalJSON() ([]byte, error) {
3975	type NoMethod GoogleCloudDialogflowCxV3LookupEnvironmentHistoryResponse
3976	raw := NoMethod(*s)
3977	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3978}
3979
3980// GoogleCloudDialogflowCxV3Match: Represents one match result of
3981// MatchIntent.
3982type GoogleCloudDialogflowCxV3Match struct {
3983	// Confidence: The confidence of this match. Values range from 0.0
3984	// (completely uncertain) to 1.0 (completely certain). This value is for
3985	// informational purpose only and is only used to help match the best
3986	// intent within the classification threshold. This value may change for
3987	// the same end-user expression at any time due to a model retraining or
3988	// change in implementation.
3989	Confidence float64 `json:"confidence,omitempty"`
3990
3991	// Event: The event that matched the query. Only filled for `EVENT`
3992	// match type.
3993	Event string `json:"event,omitempty"`
3994
3995	// Intent: The Intent that matched the query. Some, not all fields are
3996	// filled in this message, including but not limited to: `name` and
3997	// `display_name`. Only filled for `INTENT` match type.
3998	Intent *GoogleCloudDialogflowCxV3Intent `json:"intent,omitempty"`
3999
4000	// MatchType: Type of this Match.
4001	//
4002	// Possible values:
4003	//   "MATCH_TYPE_UNSPECIFIED" - Not specified. Should never be used.
4004	//   "INTENT" - The query was matched to an intent.
4005	//   "DIRECT_INTENT" - The query directly triggered an intent.
4006	//   "PARAMETER_FILLING" - The query was used for parameter filling.
4007	//   "NO_MATCH" - No match was found for the query.
4008	//   "NO_INPUT" - Indicates an empty query.
4009	//   "EVENT" - The query directly triggered an event.
4010	MatchType string `json:"matchType,omitempty"`
4011
4012	// Parameters: The collection of parameters extracted from the query.
4013	// Depending on your protocol or client library language, this is a map,
4014	// associative array, symbol table, dictionary, or JSON object composed
4015	// of a collection of (MapKey, MapValue) pairs: - MapKey type: string -
4016	// MapKey value: parameter name - MapValue type: - If parameter's entity
4017	// type is a composite entity: map - Else: depending on parameter value
4018	// type, could be one of string, number, boolean, null, list or map -
4019	// MapValue value: - If parameter's entity type is a composite entity:
4020	// map from composite entity property names to property values - Else:
4021	// parameter value
4022	Parameters googleapi.RawMessage `json:"parameters,omitempty"`
4023
4024	// ResolvedInput: Final text input which was matched during MatchIntent.
4025	// This value can be different from original input sent in request
4026	// because of spelling correction or other processing.
4027	ResolvedInput string `json:"resolvedInput,omitempty"`
4028
4029	// ForceSendFields is a list of field names (e.g. "Confidence") to
4030	// unconditionally include in API requests. By default, fields with
4031	// empty values are omitted from API requests. However, any non-pointer,
4032	// non-interface field appearing in ForceSendFields will be sent to the
4033	// server regardless of whether the field is empty or not. This may be
4034	// used to include empty fields in Patch requests.
4035	ForceSendFields []string `json:"-"`
4036
4037	// NullFields is a list of field names (e.g. "Confidence") to include in
4038	// API requests with the JSON null value. By default, fields with empty
4039	// values are omitted from API requests. However, any field with an
4040	// empty value appearing in NullFields will be sent to the server as
4041	// null. It is an error if a field in this list has a non-empty value.
4042	// This may be used to include null fields in Patch requests.
4043	NullFields []string `json:"-"`
4044}
4045
4046func (s *GoogleCloudDialogflowCxV3Match) MarshalJSON() ([]byte, error) {
4047	type NoMethod GoogleCloudDialogflowCxV3Match
4048	raw := NoMethod(*s)
4049	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4050}
4051
4052func (s *GoogleCloudDialogflowCxV3Match) UnmarshalJSON(data []byte) error {
4053	type NoMethod GoogleCloudDialogflowCxV3Match
4054	var s1 struct {
4055		Confidence gensupport.JSONFloat64 `json:"confidence"`
4056		*NoMethod
4057	}
4058	s1.NoMethod = (*NoMethod)(s)
4059	if err := json.Unmarshal(data, &s1); err != nil {
4060		return err
4061	}
4062	s.Confidence = float64(s1.Confidence)
4063	return nil
4064}
4065
4066// GoogleCloudDialogflowCxV3MatchIntentRequest: Request of MatchIntent.
4067type GoogleCloudDialogflowCxV3MatchIntentRequest struct {
4068	// QueryInput: Required. The input specification.
4069	QueryInput *GoogleCloudDialogflowCxV3QueryInput `json:"queryInput,omitempty"`
4070
4071	// QueryParams: The parameters of this query.
4072	QueryParams *GoogleCloudDialogflowCxV3QueryParameters `json:"queryParams,omitempty"`
4073
4074	// ForceSendFields is a list of field names (e.g. "QueryInput") to
4075	// unconditionally include in API requests. By default, fields with
4076	// empty values are omitted from API requests. However, any non-pointer,
4077	// non-interface field appearing in ForceSendFields will be sent to the
4078	// server regardless of whether the field is empty or not. This may be
4079	// used to include empty fields in Patch requests.
4080	ForceSendFields []string `json:"-"`
4081
4082	// NullFields is a list of field names (e.g. "QueryInput") to include in
4083	// API requests with the JSON null value. By default, fields with empty
4084	// values are omitted from API requests. However, any field with an
4085	// empty value appearing in NullFields will be sent to the server as
4086	// null. It is an error if a field in this list has a non-empty value.
4087	// This may be used to include null fields in Patch requests.
4088	NullFields []string `json:"-"`
4089}
4090
4091func (s *GoogleCloudDialogflowCxV3MatchIntentRequest) MarshalJSON() ([]byte, error) {
4092	type NoMethod GoogleCloudDialogflowCxV3MatchIntentRequest
4093	raw := NoMethod(*s)
4094	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4095}
4096
4097// GoogleCloudDialogflowCxV3MatchIntentResponse: Response of
4098// MatchIntent.
4099type GoogleCloudDialogflowCxV3MatchIntentResponse struct {
4100	// CurrentPage: The current Page. Some, not all fields are filled in
4101	// this message, including but not limited to `name` and `display_name`.
4102	CurrentPage *GoogleCloudDialogflowCxV3Page `json:"currentPage,omitempty"`
4103
4104	// Matches: Match results, if more than one, ordered descendingly by the
4105	// confidence we have that the particular intent matches the query.
4106	Matches []*GoogleCloudDialogflowCxV3Match `json:"matches,omitempty"`
4107
4108	// Text: If natural language text was provided as input, this field will
4109	// contain a copy of the text.
4110	Text string `json:"text,omitempty"`
4111
4112	// Transcript: If natural language speech audio was provided as input,
4113	// this field will contain the transcript for the audio.
4114	Transcript string `json:"transcript,omitempty"`
4115
4116	// TriggerEvent: If an event was provided as input, this field will
4117	// contain a copy of the event name.
4118	TriggerEvent string `json:"triggerEvent,omitempty"`
4119
4120	// TriggerIntent: If an intent was provided as input, this field will
4121	// contain a copy of the intent identifier. Format:
4122	// `projects//locations//agents//intents/`.
4123	TriggerIntent string `json:"triggerIntent,omitempty"`
4124
4125	// ServerResponse contains the HTTP response code and headers from the
4126	// server.
4127	googleapi.ServerResponse `json:"-"`
4128
4129	// ForceSendFields is a list of field names (e.g. "CurrentPage") to
4130	// unconditionally include in API requests. By default, fields with
4131	// empty values are omitted from API requests. However, any non-pointer,
4132	// non-interface field appearing in ForceSendFields will be sent to the
4133	// server regardless of whether the field is empty or not. This may be
4134	// used to include empty fields in Patch requests.
4135	ForceSendFields []string `json:"-"`
4136
4137	// NullFields is a list of field names (e.g. "CurrentPage") to include
4138	// in API requests with the JSON null value. By default, fields with
4139	// empty values are omitted from API requests. However, any field with
4140	// an empty value appearing in NullFields will be sent to the server as
4141	// null. It is an error if a field in this list has a non-empty value.
4142	// This may be used to include null fields in Patch requests.
4143	NullFields []string `json:"-"`
4144}
4145
4146func (s *GoogleCloudDialogflowCxV3MatchIntentResponse) MarshalJSON() ([]byte, error) {
4147	type NoMethod GoogleCloudDialogflowCxV3MatchIntentResponse
4148	raw := NoMethod(*s)
4149	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4150}
4151
4152// GoogleCloudDialogflowCxV3NluSettings: Settings related to NLU.
4153type GoogleCloudDialogflowCxV3NluSettings struct {
4154	// ClassificationThreshold: To filter out false positive results and
4155	// still get variety in matched natural language inputs for your agent,
4156	// you can tune the machine learning classification threshold. If the
4157	// returned score value is less than the threshold value, then a
4158	// no-match event will be triggered. The score values range from 0.0
4159	// (completely uncertain) to 1.0 (completely certain). If set to 0.0,
4160	// the default of 0.3 is used.
4161	ClassificationThreshold float64 `json:"classificationThreshold,omitempty"`
4162
4163	// ModelTrainingMode: Indicates NLU model training mode.
4164	//
4165	// Possible values:
4166	//   "MODEL_TRAINING_MODE_UNSPECIFIED" - Not specified.
4167	// `MODEL_TRAINING_MODE_AUTOMATIC` will be used.
4168	//   "MODEL_TRAINING_MODE_AUTOMATIC" - NLU model training is
4169	// automatically triggered when a flow gets modified. User can also
4170	// manually trigger model training in this mode.
4171	//   "MODEL_TRAINING_MODE_MANUAL" - User needs to manually trigger NLU
4172	// model training. Best for large flows whose models take long time to
4173	// train.
4174	ModelTrainingMode string `json:"modelTrainingMode,omitempty"`
4175
4176	// ModelType: Indicates the type of NLU model.
4177	//
4178	// Possible values:
4179	//   "MODEL_TYPE_UNSPECIFIED" - Not specified. `MODEL_TYPE_STANDARD`
4180	// will be used.
4181	//   "MODEL_TYPE_STANDARD" - Use standard NLU model.
4182	//   "MODEL_TYPE_ADVANCED" - Use advanced NLU model.
4183	ModelType string `json:"modelType,omitempty"`
4184
4185	// ForceSendFields is a list of field names (e.g.
4186	// "ClassificationThreshold") to unconditionally include in API
4187	// requests. By default, fields with empty values are omitted from API
4188	// requests. However, any non-pointer, non-interface field appearing in
4189	// ForceSendFields will be sent to the server regardless of whether the
4190	// field is empty or not. This may be used to include empty fields in
4191	// Patch requests.
4192	ForceSendFields []string `json:"-"`
4193
4194	// NullFields is a list of field names (e.g. "ClassificationThreshold")
4195	// to include in API requests with the JSON null value. By default,
4196	// fields with empty values are omitted from API requests. However, any
4197	// field with an empty value appearing in NullFields will be sent to the
4198	// server as null. It is an error if a field in this list has a
4199	// non-empty value. This may be used to include null fields in Patch
4200	// requests.
4201	NullFields []string `json:"-"`
4202}
4203
4204func (s *GoogleCloudDialogflowCxV3NluSettings) MarshalJSON() ([]byte, error) {
4205	type NoMethod GoogleCloudDialogflowCxV3NluSettings
4206	raw := NoMethod(*s)
4207	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4208}
4209
4210func (s *GoogleCloudDialogflowCxV3NluSettings) UnmarshalJSON(data []byte) error {
4211	type NoMethod GoogleCloudDialogflowCxV3NluSettings
4212	var s1 struct {
4213		ClassificationThreshold gensupport.JSONFloat64 `json:"classificationThreshold"`
4214		*NoMethod
4215	}
4216	s1.NoMethod = (*NoMethod)(s)
4217	if err := json.Unmarshal(data, &s1); err != nil {
4218		return err
4219	}
4220	s.ClassificationThreshold = float64(s1.ClassificationThreshold)
4221	return nil
4222}
4223
4224// GoogleCloudDialogflowCxV3OutputAudioConfig: Instructs the speech
4225// synthesizer how to generate the output audio content.
4226type GoogleCloudDialogflowCxV3OutputAudioConfig struct {
4227	// AudioEncoding: Required. Audio encoding of the synthesized audio
4228	// content.
4229	//
4230	// Possible values:
4231	//   "OUTPUT_AUDIO_ENCODING_UNSPECIFIED" - Not specified.
4232	//   "OUTPUT_AUDIO_ENCODING_LINEAR_16" - Uncompressed 16-bit signed
4233	// little-endian samples (Linear PCM). Audio content returned as
4234	// LINEAR16 also contains a WAV header.
4235	//   "OUTPUT_AUDIO_ENCODING_MP3" - MP3 audio at 32kbps.
4236	//   "OUTPUT_AUDIO_ENCODING_MP3_64_KBPS" - MP3 audio at 64kbps.
4237	//   "OUTPUT_AUDIO_ENCODING_OGG_OPUS" - Opus encoded audio wrapped in an
4238	// ogg container. The result will be a file which can be played natively
4239	// on Android, and in browsers (at least Chrome and Firefox). The
4240	// quality of the encoding is considerably higher than MP3 while using
4241	// approximately the same bitrate.
4242	//   "OUTPUT_AUDIO_ENCODING_MULAW" - 8-bit samples that compand 14-bit
4243	// audio samples using G.711 PCMU/mu-law.
4244	AudioEncoding string `json:"audioEncoding,omitempty"`
4245
4246	// SampleRateHertz: Optional. The synthesis sample rate (in hertz) for
4247	// this audio. If not provided, then the synthesizer will use the
4248	// default sample rate based on the audio encoding. If this is different
4249	// from the voice's natural sample rate, then the synthesizer will honor
4250	// this request by converting to the desired sample rate (which might
4251	// result in worse audio quality).
4252	SampleRateHertz int64 `json:"sampleRateHertz,omitempty"`
4253
4254	// SynthesizeSpeechConfig: Optional. Configuration of how speech should
4255	// be synthesized.
4256	SynthesizeSpeechConfig *GoogleCloudDialogflowCxV3SynthesizeSpeechConfig `json:"synthesizeSpeechConfig,omitempty"`
4257
4258	// ForceSendFields is a list of field names (e.g. "AudioEncoding") to
4259	// unconditionally include in API requests. By default, fields with
4260	// empty values are omitted from API requests. However, any non-pointer,
4261	// non-interface field appearing in ForceSendFields will be sent to the
4262	// server regardless of whether the field is empty or not. This may be
4263	// used to include empty fields in Patch requests.
4264	ForceSendFields []string `json:"-"`
4265
4266	// NullFields is a list of field names (e.g. "AudioEncoding") to include
4267	// in API requests with the JSON null value. By default, fields with
4268	// empty values are omitted from API requests. However, any field with
4269	// an empty value appearing in NullFields will be sent to the server as
4270	// null. It is an error if a field in this list has a non-empty value.
4271	// This may be used to include null fields in Patch requests.
4272	NullFields []string `json:"-"`
4273}
4274
4275func (s *GoogleCloudDialogflowCxV3OutputAudioConfig) MarshalJSON() ([]byte, error) {
4276	type NoMethod GoogleCloudDialogflowCxV3OutputAudioConfig
4277	raw := NoMethod(*s)
4278	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4279}
4280
4281// GoogleCloudDialogflowCxV3Page: A Dialogflow CX conversation (session)
4282// can be described and visualized as a state machine. The states of a
4283// CX session are represented by pages. For each flow, you define many
4284// pages, where your combined pages can handle a complete conversation
4285// on the topics the flow is designed for. At any given moment, exactly
4286// one page is the current page, the current page is considered active,
4287// and the flow associated with that page is considered active. Every
4288// flow has a special start page. When a flow initially becomes active,
4289// the start page page becomes the current page. For each conversational
4290// turn, the current page will either stay the same or transition to
4291// another page. You configure each page to collect information from the
4292// end-user that is relevant for the conversational state represented by
4293// the page. For more information, see the Page guide
4294// (https://cloud.google.com/dialogflow/cx/docs/concept/page).
4295type GoogleCloudDialogflowCxV3Page struct {
4296	// DisplayName: Required. The human-readable name of the page, unique
4297	// within the agent.
4298	DisplayName string `json:"displayName,omitempty"`
4299
4300	// EntryFulfillment: The fulfillment to call when the session is
4301	// entering the page.
4302	EntryFulfillment *GoogleCloudDialogflowCxV3Fulfillment `json:"entryFulfillment,omitempty"`
4303
4304	// EventHandlers: Handlers associated with the page to handle events
4305	// such as webhook errors, no match or no input.
4306	EventHandlers []*GoogleCloudDialogflowCxV3EventHandler `json:"eventHandlers,omitempty"`
4307
4308	// Form: The form associated with the page, used for collecting
4309	// parameters relevant to the page.
4310	Form *GoogleCloudDialogflowCxV3Form `json:"form,omitempty"`
4311
4312	// Name: The unique identifier of the page. Required for the
4313	// Pages.UpdatePage method. Pages.CreatePage populates the name
4314	// automatically. Format: `projects//locations//agents//flows//pages/`.
4315	Name string `json:"name,omitempty"`
4316
4317	// TransitionRouteGroups: Ordered list of `TransitionRouteGroups`
4318	// associated with the page. Transition route groups must be unique
4319	// within a page. * If multiple transition routes within a page scope
4320	// refer to the same intent, then the precedence order is: page's
4321	// transition route -> page's transition route group -> flow's
4322	// transition routes. * If multiple transition route groups within a
4323	// page contain the same intent, then the first group in the ordered
4324	// list takes precedence.
4325	// Format:`projects//locations//agents//flows//transitionRouteGroups/`.
4326	TransitionRouteGroups []string `json:"transitionRouteGroups,omitempty"`
4327
4328	// TransitionRoutes: A list of transitions for the transition rules of
4329	// this page. They route the conversation to another page in the same
4330	// flow, or another flow. When we are in a certain page, the
4331	// TransitionRoutes are evalauted in the following order: *
4332	// TransitionRoutes defined in the page with intent specified. *
4333	// TransitionRoutes defined in the transition route groups with intent
4334	// specified. * TransitionRoutes defined in flow with intent specified.
4335	// * TransitionRoutes defined in the transition route groups with intent
4336	// specified. * TransitionRoutes defined in the page with only condition
4337	// specified. * TransitionRoutes defined in the transition route groups
4338	// with only condition specified.
4339	TransitionRoutes []*GoogleCloudDialogflowCxV3TransitionRoute `json:"transitionRoutes,omitempty"`
4340
4341	// ServerResponse contains the HTTP response code and headers from the
4342	// server.
4343	googleapi.ServerResponse `json:"-"`
4344
4345	// ForceSendFields is a list of field names (e.g. "DisplayName") to
4346	// unconditionally include in API requests. By default, fields with
4347	// empty values are omitted from API requests. However, any non-pointer,
4348	// non-interface field appearing in ForceSendFields will be sent to the
4349	// server regardless of whether the field is empty or not. This may be
4350	// used to include empty fields in Patch requests.
4351	ForceSendFields []string `json:"-"`
4352
4353	// NullFields is a list of field names (e.g. "DisplayName") to include
4354	// in API requests with the JSON null value. By default, fields with
4355	// empty values are omitted from API requests. However, any field with
4356	// an empty value appearing in NullFields will be sent to the server as
4357	// null. It is an error if a field in this list has a non-empty value.
4358	// This may be used to include null fields in Patch requests.
4359	NullFields []string `json:"-"`
4360}
4361
4362func (s *GoogleCloudDialogflowCxV3Page) MarshalJSON() ([]byte, error) {
4363	type NoMethod GoogleCloudDialogflowCxV3Page
4364	raw := NoMethod(*s)
4365	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4366}
4367
4368// GoogleCloudDialogflowCxV3PageInfo: Represents page information
4369// communicated to and from the webhook.
4370type GoogleCloudDialogflowCxV3PageInfo struct {
4371	// CurrentPage: Always present for WebhookRequest. Ignored for
4372	// WebhookResponse. The unique identifier of the current page. Format:
4373	// `projects//locations//agents//flows//pages/`.
4374	CurrentPage string `json:"currentPage,omitempty"`
4375
4376	// FormInfo: Optional for both WebhookRequest and WebhookResponse.
4377	// Information about the form.
4378	FormInfo *GoogleCloudDialogflowCxV3PageInfoFormInfo `json:"formInfo,omitempty"`
4379
4380	// ForceSendFields is a list of field names (e.g. "CurrentPage") to
4381	// unconditionally include in API requests. By default, fields with
4382	// empty values are omitted from API requests. However, any non-pointer,
4383	// non-interface field appearing in ForceSendFields will be sent to the
4384	// server regardless of whether the field is empty or not. This may be
4385	// used to include empty fields in Patch requests.
4386	ForceSendFields []string `json:"-"`
4387
4388	// NullFields is a list of field names (e.g. "CurrentPage") to include
4389	// in API requests with the JSON null value. By default, fields with
4390	// empty values are omitted from API requests. However, any field with
4391	// an empty value appearing in NullFields will be sent to the server as
4392	// null. It is an error if a field in this list has a non-empty value.
4393	// This may be used to include null fields in Patch requests.
4394	NullFields []string `json:"-"`
4395}
4396
4397func (s *GoogleCloudDialogflowCxV3PageInfo) MarshalJSON() ([]byte, error) {
4398	type NoMethod GoogleCloudDialogflowCxV3PageInfo
4399	raw := NoMethod(*s)
4400	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4401}
4402
4403// GoogleCloudDialogflowCxV3PageInfoFormInfo: Represents form
4404// information.
4405type GoogleCloudDialogflowCxV3PageInfoFormInfo struct {
4406	// ParameterInfo: Optional for both WebhookRequest and WebhookResponse.
4407	// The parameters contained in the form. Note that the webhook cannot
4408	// add or remove any form parameter.
4409	ParameterInfo []*GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo `json:"parameterInfo,omitempty"`
4410
4411	// ForceSendFields is a list of field names (e.g. "ParameterInfo") to
4412	// unconditionally include in API requests. By default, fields with
4413	// empty values are omitted from API requests. However, any non-pointer,
4414	// non-interface field appearing in ForceSendFields will be sent to the
4415	// server regardless of whether the field is empty or not. This may be
4416	// used to include empty fields in Patch requests.
4417	ForceSendFields []string `json:"-"`
4418
4419	// NullFields is a list of field names (e.g. "ParameterInfo") to include
4420	// in API requests with the JSON null value. By default, fields with
4421	// empty values are omitted from API requests. However, any field with
4422	// an empty value appearing in NullFields will be sent to the server as
4423	// null. It is an error if a field in this list has a non-empty value.
4424	// This may be used to include null fields in Patch requests.
4425	NullFields []string `json:"-"`
4426}
4427
4428func (s *GoogleCloudDialogflowCxV3PageInfoFormInfo) MarshalJSON() ([]byte, error) {
4429	type NoMethod GoogleCloudDialogflowCxV3PageInfoFormInfo
4430	raw := NoMethod(*s)
4431	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4432}
4433
4434// GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo: Represents
4435// parameter information.
4436type GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo struct {
4437	// DisplayName: Always present for WebhookRequest. Required for
4438	// WebhookResponse. The human-readable name of the parameter, unique
4439	// within the form. This field cannot be modified by the webhook.
4440	DisplayName string `json:"displayName,omitempty"`
4441
4442	// JustCollected: Optional for WebhookRequest. Ignored for
4443	// WebhookResponse. Indicates if the parameter value was just collected
4444	// on the last conversation turn.
4445	JustCollected bool `json:"justCollected,omitempty"`
4446
4447	// Required: Optional for both WebhookRequest and WebhookResponse.
4448	// Indicates whether the parameter is required. Optional parameters will
4449	// not trigger prompts; however, they are filled if the user specifies
4450	// them. Required parameters must be filled before form filling
4451	// concludes.
4452	Required bool `json:"required,omitempty"`
4453
4454	// State: Always present for WebhookRequest. Required for
4455	// WebhookResponse. The state of the parameter. This field can be set to
4456	// INVALID by the webhook to invalidate the parameter; other values set
4457	// by the webhook will be ignored.
4458	//
4459	// Possible values:
4460	//   "PARAMETER_STATE_UNSPECIFIED" - Not specified. This value should be
4461	// never used.
4462	//   "EMPTY" - Indicates that the parameter does not have a value.
4463	//   "INVALID" - Indicates that the parameter value is invalid. This
4464	// field can be used by the webhook to invalidate the parameter and ask
4465	// the server to collect it from the user again.
4466	//   "FILLED" - Indicates that the parameter has a value.
4467	State string `json:"state,omitempty"`
4468
4469	// Value: Optional for both WebhookRequest and WebhookResponse. The
4470	// value of the parameter. This field can be set by the webhook to
4471	// change the parameter value.
4472	Value interface{} `json:"value,omitempty"`
4473
4474	// ForceSendFields is a list of field names (e.g. "DisplayName") to
4475	// unconditionally include in API requests. By default, fields with
4476	// empty values are omitted from API requests. However, any non-pointer,
4477	// non-interface field appearing in ForceSendFields will be sent to the
4478	// server regardless of whether the field is empty or not. This may be
4479	// used to include empty fields in Patch requests.
4480	ForceSendFields []string `json:"-"`
4481
4482	// NullFields is a list of field names (e.g. "DisplayName") to include
4483	// in API requests with the JSON null value. By default, fields with
4484	// empty values are omitted from API requests. However, any field with
4485	// an empty value appearing in NullFields will be sent to the server as
4486	// null. It is an error if a field in this list has a non-empty value.
4487	// This may be used to include null fields in Patch requests.
4488	NullFields []string `json:"-"`
4489}
4490
4491func (s *GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo) MarshalJSON() ([]byte, error) {
4492	type NoMethod GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo
4493	raw := NoMethod(*s)
4494	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4495}
4496
4497// GoogleCloudDialogflowCxV3QueryInput: Represents the query input. It
4498// can contain one of: 1. A conversational query in the form of text. 2.
4499// An intent query that specifies which intent to trigger. 3. Natural
4500// language speech audio to be processed. 4. An event to be triggered.
4501type GoogleCloudDialogflowCxV3QueryInput struct {
4502	// Audio: The natural language speech audio to be processed.
4503	Audio *GoogleCloudDialogflowCxV3AudioInput `json:"audio,omitempty"`
4504
4505	// Dtmf: The DTMF event to be handled.
4506	Dtmf *GoogleCloudDialogflowCxV3DtmfInput `json:"dtmf,omitempty"`
4507
4508	// Event: The event to be triggered.
4509	Event *GoogleCloudDialogflowCxV3EventInput `json:"event,omitempty"`
4510
4511	// Intent: The intent to be triggered.
4512	Intent *GoogleCloudDialogflowCxV3IntentInput `json:"intent,omitempty"`
4513
4514	// LanguageCode: Required. The language of the input. See Language
4515	// Support
4516	// (https://cloud.google.com/dialogflow/cx/docs/reference/language) for
4517	// a list of the currently supported language codes. Note that queries
4518	// in the same session do not necessarily need to specify the same
4519	// language.
4520	LanguageCode string `json:"languageCode,omitempty"`
4521
4522	// Text: The natural language text to be processed.
4523	Text *GoogleCloudDialogflowCxV3TextInput `json:"text,omitempty"`
4524
4525	// ForceSendFields is a list of field names (e.g. "Audio") to
4526	// unconditionally include in API requests. By default, fields with
4527	// empty values are omitted from API requests. However, any non-pointer,
4528	// non-interface field appearing in ForceSendFields will be sent to the
4529	// server regardless of whether the field is empty or not. This may be
4530	// used to include empty fields in Patch requests.
4531	ForceSendFields []string `json:"-"`
4532
4533	// NullFields is a list of field names (e.g. "Audio") to include in API
4534	// requests with the JSON null value. By default, fields with empty
4535	// values are omitted from API requests. However, any field with an
4536	// empty value appearing in NullFields will be sent to the server as
4537	// null. It is an error if a field in this list has a non-empty value.
4538	// This may be used to include null fields in Patch requests.
4539	NullFields []string `json:"-"`
4540}
4541
4542func (s *GoogleCloudDialogflowCxV3QueryInput) MarshalJSON() ([]byte, error) {
4543	type NoMethod GoogleCloudDialogflowCxV3QueryInput
4544	raw := NoMethod(*s)
4545	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4546}
4547
4548// GoogleCloudDialogflowCxV3QueryParameters: Represents the parameters
4549// of a conversational query.
4550type GoogleCloudDialogflowCxV3QueryParameters struct {
4551	// AnalyzeQueryTextSentiment: Configures whether sentiment analysis
4552	// should be performed. If not provided, sentiment analysis is not
4553	// performed.
4554	AnalyzeQueryTextSentiment bool `json:"analyzeQueryTextSentiment,omitempty"`
4555
4556	// CurrentPage: The unique identifier of the page to override the
4557	// current page in the session. Format:
4558	// `projects//locations//agents//flows//pages/`. If `current_page` is
4559	// specified, the previous state of the session will be ignored by
4560	// Dialogflow, including the previous page and the previous session
4561	// parameters. In most cases, current_page and parameters should be
4562	// configured together to direct a session to a specific state.
4563	CurrentPage string `json:"currentPage,omitempty"`
4564
4565	// DisableWebhook: Whether to disable webhook calls for this request.
4566	DisableWebhook bool `json:"disableWebhook,omitempty"`
4567
4568	// GeoLocation: The geo location of this conversational query.
4569	GeoLocation *GoogleTypeLatLng `json:"geoLocation,omitempty"`
4570
4571	// Parameters: Additional parameters to be put into session parameters.
4572	// To remove a parameter from the session, clients should explicitly set
4573	// the parameter value to null. You can reference the session parameters
4574	// in the agent with the following format: $session.params.parameter-id.
4575	// Depending on your protocol or client library language, this is a map,
4576	// associative array, symbol table, dictionary, or JSON object composed
4577	// of a collection of (MapKey, MapValue) pairs: - MapKey type: string -
4578	// MapKey value: parameter name - MapValue type: - If parameter's entity
4579	// type is a composite entity: map - Else: depending on parameter value
4580	// type, could be one of string, number, boolean, null, list or map -
4581	// MapValue value: - If parameter's entity type is a composite entity:
4582	// map from composite entity property names to property values - Else:
4583	// parameter value
4584	Parameters googleapi.RawMessage `json:"parameters,omitempty"`
4585
4586	// Payload: This field can be used to pass custom data into the webhook
4587	// associated with the agent. Arbitrary JSON objects are supported. Some
4588	// integrations that query a Dialogflow agent may provide additional
4589	// information in the payload. In particular, for the Dialogflow Phone
4590	// Gateway integration, this field has the form: ``` { "telephony": {
4591	// "caller_id": "+18558363987" } } ```
4592	Payload googleapi.RawMessage `json:"payload,omitempty"`
4593
4594	// SessionEntityTypes: Additional session entity types to replace or
4595	// extend developer entity types with. The entity synonyms apply to all
4596	// languages and persist for the session of this query.
4597	SessionEntityTypes []*GoogleCloudDialogflowCxV3SessionEntityType `json:"sessionEntityTypes,omitempty"`
4598
4599	// TimeZone: The time zone of this conversational query from the time
4600	// zone database (https://www.iana.org/time-zones), e.g.,
4601	// America/New_York, Europe/Paris. If not provided, the time zone
4602	// specified in the agent is used.
4603	TimeZone string `json:"timeZone,omitempty"`
4604
4605	// WebhookHeaders: This field can be used to pass HTTP headers for a
4606	// webhook call. These headers will be sent to webhook along with the
4607	// headers that have been configured through Dialogflow web console. The
4608	// headers defined within this field will overwrite the headers
4609	// configured through Dialogflow console if there is a conflict. Header
4610	// names are case-insensitive. Google's specified headers are not
4611	// allowed. Including: "Host", "Content-Length", "Connection", "From",
4612	// "User-Agent", "Accept-Encoding", "If-Modified-Since",
4613	// "If-None-Match", "X-Forwarded-For", etc.
4614	WebhookHeaders map[string]string `json:"webhookHeaders,omitempty"`
4615
4616	// ForceSendFields is a list of field names (e.g.
4617	// "AnalyzeQueryTextSentiment") to unconditionally include in API
4618	// requests. By default, fields with empty values are omitted from API
4619	// requests. However, any non-pointer, non-interface field appearing in
4620	// ForceSendFields will be sent to the server regardless of whether the
4621	// field is empty or not. This may be used to include empty fields in
4622	// Patch requests.
4623	ForceSendFields []string `json:"-"`
4624
4625	// NullFields is a list of field names (e.g.
4626	// "AnalyzeQueryTextSentiment") to include in API requests with the JSON
4627	// null value. By default, fields with empty values are omitted from API
4628	// requests. However, any field with an empty value appearing in
4629	// NullFields will be sent to the server as null. It is an error if a
4630	// field in this list has a non-empty value. This may be used to include
4631	// null fields in Patch requests.
4632	NullFields []string `json:"-"`
4633}
4634
4635func (s *GoogleCloudDialogflowCxV3QueryParameters) MarshalJSON() ([]byte, error) {
4636	type NoMethod GoogleCloudDialogflowCxV3QueryParameters
4637	raw := NoMethod(*s)
4638	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4639}
4640
4641// GoogleCloudDialogflowCxV3QueryResult: Represents the result of a
4642// conversational query.
4643type GoogleCloudDialogflowCxV3QueryResult struct {
4644	// CurrentPage: The current Page. Some, not all fields are filled in
4645	// this message, including but not limited to `name` and `display_name`.
4646	CurrentPage *GoogleCloudDialogflowCxV3Page `json:"currentPage,omitempty"`
4647
4648	// DiagnosticInfo: The free-form diagnostic info. For example, this
4649	// field could contain webhook call latency. The string keys of the
4650	// Struct's fields map can change without notice.
4651	DiagnosticInfo googleapi.RawMessage `json:"diagnosticInfo,omitempty"`
4652
4653	// Intent: The Intent that matched the conversational query. Some, not
4654	// all fields are filled in this message, including but not limited to:
4655	// `name` and `display_name`. This field is deprecated, please use
4656	// QueryResult.match instead.
4657	Intent *GoogleCloudDialogflowCxV3Intent `json:"intent,omitempty"`
4658
4659	// IntentDetectionConfidence: The intent detection confidence. Values
4660	// range from 0.0 (completely uncertain) to 1.0 (completely certain).
4661	// This value is for informational purpose only and is only used to help
4662	// match the best intent within the classification threshold. This value
4663	// may change for the same end-user expression at any time due to a
4664	// model retraining or change in implementation. This field is
4665	// deprecated, please use QueryResult.match instead.
4666	IntentDetectionConfidence float64 `json:"intentDetectionConfidence,omitempty"`
4667
4668	// LanguageCode: The language that was triggered during intent
4669	// detection. See Language Support
4670	// (https://cloud.google.com/dialogflow/cx/docs/reference/language) for
4671	// a list of the currently supported language codes.
4672	LanguageCode string `json:"languageCode,omitempty"`
4673
4674	// Match: Intent match result, could be an intent or an event.
4675	Match *GoogleCloudDialogflowCxV3Match `json:"match,omitempty"`
4676
4677	// Parameters: The collected session parameters. Depending on your
4678	// protocol or client library language, this is a map, associative
4679	// array, symbol table, dictionary, or JSON object composed of a
4680	// collection of (MapKey, MapValue) pairs: - MapKey type: string -
4681	// MapKey value: parameter name - MapValue type: - If parameter's entity
4682	// type is a composite entity: map - Else: depending on parameter value
4683	// type, could be one of string, number, boolean, null, list or map -
4684	// MapValue value: - If parameter's entity type is a composite entity:
4685	// map from composite entity property names to property values - Else:
4686	// parameter value
4687	Parameters googleapi.RawMessage `json:"parameters,omitempty"`
4688
4689	// ResponseMessages: The list of rich messages returned to the client.
4690	// Responses vary from simple text messages to more sophisticated,
4691	// structured payloads used to drive complex logic.
4692	ResponseMessages []*GoogleCloudDialogflowCxV3ResponseMessage `json:"responseMessages,omitempty"`
4693
4694	// SentimentAnalysisResult: The sentiment analyss result, which depends
4695	// on `analyze_query_text_sentiment`, specified in the request.
4696	SentimentAnalysisResult *GoogleCloudDialogflowCxV3SentimentAnalysisResult `json:"sentimentAnalysisResult,omitempty"`
4697
4698	// Text: If natural language text was provided as input, this field will
4699	// contain a copy of the text.
4700	Text string `json:"text,omitempty"`
4701
4702	// Transcript: If natural language speech audio was provided as input,
4703	// this field will contain the transcript for the audio.
4704	Transcript string `json:"transcript,omitempty"`
4705
4706	// TriggerEvent: If an event was provided as input, this field will
4707	// contain the name of the event.
4708	TriggerEvent string `json:"triggerEvent,omitempty"`
4709
4710	// TriggerIntent: If an intent was provided as input, this field will
4711	// contain a copy of the intent identifier. Format:
4712	// `projects//locations//agents//intents/`.
4713	TriggerIntent string `json:"triggerIntent,omitempty"`
4714
4715	// WebhookPayloads: The list of webhook payload in
4716	// WebhookResponse.payload, in the order of call sequence. If some
4717	// webhook call fails or doesn't return any payload, an empty `Struct`
4718	// would be used instead.
4719	WebhookPayloads []googleapi.RawMessage `json:"webhookPayloads,omitempty"`
4720
4721	// WebhookStatuses: The list of webhook call status in the order of call
4722	// sequence.
4723	WebhookStatuses []*GoogleRpcStatus `json:"webhookStatuses,omitempty"`
4724
4725	// ForceSendFields is a list of field names (e.g. "CurrentPage") to
4726	// unconditionally include in API requests. By default, fields with
4727	// empty values are omitted from API requests. However, any non-pointer,
4728	// non-interface field appearing in ForceSendFields will be sent to the
4729	// server regardless of whether the field is empty or not. This may be
4730	// used to include empty fields in Patch requests.
4731	ForceSendFields []string `json:"-"`
4732
4733	// NullFields is a list of field names (e.g. "CurrentPage") to include
4734	// in API requests with the JSON null value. By default, fields with
4735	// empty values are omitted from API requests. However, any field with
4736	// an empty value appearing in NullFields will be sent to the server as
4737	// null. It is an error if a field in this list has a non-empty value.
4738	// This may be used to include null fields in Patch requests.
4739	NullFields []string `json:"-"`
4740}
4741
4742func (s *GoogleCloudDialogflowCxV3QueryResult) MarshalJSON() ([]byte, error) {
4743	type NoMethod GoogleCloudDialogflowCxV3QueryResult
4744	raw := NoMethod(*s)
4745	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4746}
4747
4748func (s *GoogleCloudDialogflowCxV3QueryResult) UnmarshalJSON(data []byte) error {
4749	type NoMethod GoogleCloudDialogflowCxV3QueryResult
4750	var s1 struct {
4751		IntentDetectionConfidence gensupport.JSONFloat64 `json:"intentDetectionConfidence"`
4752		*NoMethod
4753	}
4754	s1.NoMethod = (*NoMethod)(s)
4755	if err := json.Unmarshal(data, &s1); err != nil {
4756		return err
4757	}
4758	s.IntentDetectionConfidence = float64(s1.IntentDetectionConfidence)
4759	return nil
4760}
4761
4762// GoogleCloudDialogflowCxV3ReloadDocumentOperationMetadata: Metadata
4763// for ReloadDocument operation.
4764type GoogleCloudDialogflowCxV3ReloadDocumentOperationMetadata struct {
4765	// GenericMetadata: The generic information of the operation.
4766	GenericMetadata *GoogleCloudDialogflowCxV3GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
4767
4768	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
4769	// unconditionally include in API requests. By default, fields with
4770	// empty values are omitted from API requests. However, any non-pointer,
4771	// non-interface field appearing in ForceSendFields will be sent to the
4772	// server regardless of whether the field is empty or not. This may be
4773	// used to include empty fields in Patch requests.
4774	ForceSendFields []string `json:"-"`
4775
4776	// NullFields is a list of field names (e.g. "GenericMetadata") to
4777	// include in API requests with the JSON null value. By default, fields
4778	// with empty values are omitted from API requests. However, any field
4779	// with an empty value appearing in NullFields will be sent to the
4780	// server as null. It is an error if a field in this list has a
4781	// non-empty value. This may be used to include null fields in Patch
4782	// requests.
4783	NullFields []string `json:"-"`
4784}
4785
4786func (s *GoogleCloudDialogflowCxV3ReloadDocumentOperationMetadata) MarshalJSON() ([]byte, error) {
4787	type NoMethod GoogleCloudDialogflowCxV3ReloadDocumentOperationMetadata
4788	raw := NoMethod(*s)
4789	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4790}
4791
4792// GoogleCloudDialogflowCxV3ResourceName: Resource name and display
4793// name.
4794type GoogleCloudDialogflowCxV3ResourceName struct {
4795	// DisplayName: Display name.
4796	DisplayName string `json:"displayName,omitempty"`
4797
4798	// Name: Name.
4799	Name string `json:"name,omitempty"`
4800
4801	// ForceSendFields is a list of field names (e.g. "DisplayName") to
4802	// unconditionally include in API requests. By default, fields with
4803	// empty values are omitted from API requests. However, any non-pointer,
4804	// non-interface field appearing in ForceSendFields will be sent to the
4805	// server regardless of whether the field is empty or not. This may be
4806	// used to include empty fields in Patch requests.
4807	ForceSendFields []string `json:"-"`
4808
4809	// NullFields is a list of field names (e.g. "DisplayName") to include
4810	// in API requests with the JSON null value. By default, fields with
4811	// empty values are omitted from API requests. However, any field with
4812	// an empty value appearing in NullFields will be sent to the server as
4813	// null. It is an error if a field in this list has a non-empty value.
4814	// This may be used to include null fields in Patch requests.
4815	NullFields []string `json:"-"`
4816}
4817
4818func (s *GoogleCloudDialogflowCxV3ResourceName) MarshalJSON() ([]byte, error) {
4819	type NoMethod GoogleCloudDialogflowCxV3ResourceName
4820	raw := NoMethod(*s)
4821	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4822}
4823
4824// GoogleCloudDialogflowCxV3ResponseMessage: Represents a response
4825// message that can be returned by a conversational agent. Response
4826// messages are also used for output audio synthesis. The approach is as
4827// follows: * If at least one OutputAudioText response is present, then
4828// all OutputAudioText responses are linearly concatenated, and the
4829// result is used for output audio synthesis. * If the OutputAudioText
4830// responses are a mixture of text and SSML, then the concatenated
4831// result is treated as SSML; otherwise, the result is treated as either
4832// text or SSML as appropriate. The agent designer should ideally use
4833// either text or SSML consistently throughout the bot design. *
4834// Otherwise, all Text responses are linearly concatenated, and the
4835// result is used for output audio synthesis. This approach allows for
4836// more sophisticated user experience scenarios, where the text
4837// displayed to the user may differ from what is heard.
4838type GoogleCloudDialogflowCxV3ResponseMessage struct {
4839	// ConversationSuccess: Indicates that the conversation succeeded.
4840	ConversationSuccess *GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess `json:"conversationSuccess,omitempty"`
4841
4842	// EndInteraction: Output only. A signal that indicates the interaction
4843	// with the Dialogflow agent has ended. This message is generated by
4844	// Dialogflow only when the conversation reaches `END_SESSION` page. It
4845	// is not supposed to be defined by the user. It's guaranteed that there
4846	// is at most one such message in each response.
4847	EndInteraction *GoogleCloudDialogflowCxV3ResponseMessageEndInteraction `json:"endInteraction,omitempty"`
4848
4849	// LiveAgentHandoff: Hands off conversation to a human agent.
4850	LiveAgentHandoff *GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff `json:"liveAgentHandoff,omitempty"`
4851
4852	// MixedAudio: Output only. An audio response message composed of both
4853	// the synthesized Dialogflow agent responses and responses defined via
4854	// play_audio. This message is generated by Dialogflow only and not
4855	// supposed to be defined by the user.
4856	MixedAudio *GoogleCloudDialogflowCxV3ResponseMessageMixedAudio `json:"mixedAudio,omitempty"`
4857
4858	// OutputAudioText: A text or ssml response that is preferentially used
4859	// for TTS output audio synthesis, as described in the comment on the
4860	// ResponseMessage message.
4861	OutputAudioText *GoogleCloudDialogflowCxV3ResponseMessageOutputAudioText `json:"outputAudioText,omitempty"`
4862
4863	// Payload: Returns a response containing a custom, platform-specific
4864	// payload.
4865	Payload googleapi.RawMessage `json:"payload,omitempty"`
4866
4867	// PlayAudio: Signal that the client should play an audio clip hosted at
4868	// a client-specific URI. Dialogflow uses this to construct mixed_audio.
4869	// However, Dialogflow itself does not try to read or process the URI in
4870	// any way.
4871	PlayAudio *GoogleCloudDialogflowCxV3ResponseMessagePlayAudio `json:"playAudio,omitempty"`
4872
4873	// Text: Returns a text response.
4874	Text *GoogleCloudDialogflowCxV3ResponseMessageText `json:"text,omitempty"`
4875
4876	// ForceSendFields is a list of field names (e.g. "ConversationSuccess")
4877	// to unconditionally include in API requests. By default, fields with
4878	// empty values are omitted from API requests. However, any non-pointer,
4879	// non-interface field appearing in ForceSendFields will be sent to the
4880	// server regardless of whether the field is empty or not. This may be
4881	// used to include empty fields in Patch requests.
4882	ForceSendFields []string `json:"-"`
4883
4884	// NullFields is a list of field names (e.g. "ConversationSuccess") to
4885	// include in API requests with the JSON null value. By default, fields
4886	// with empty values are omitted from API requests. However, any field
4887	// with an empty value appearing in NullFields will be sent to the
4888	// server as null. It is an error if a field in this list has a
4889	// non-empty value. This may be used to include null fields in Patch
4890	// requests.
4891	NullFields []string `json:"-"`
4892}
4893
4894func (s *GoogleCloudDialogflowCxV3ResponseMessage) MarshalJSON() ([]byte, error) {
4895	type NoMethod GoogleCloudDialogflowCxV3ResponseMessage
4896	raw := NoMethod(*s)
4897	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4898}
4899
4900// GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess:
4901// Indicates that the conversation succeeded, i.e., the bot handled the
4902// issue that the customer talked to it about. Dialogflow only uses this
4903// to determine which conversations should be counted as successful and
4904// doesn't process the metadata in this message in any way. Note that
4905// Dialogflow also considers conversations that get to the conversation
4906// end page as successful even if they don't return ConversationSuccess.
4907// You may set this, for example: * In the entry_fulfillment of a Page
4908// if entering the page indicates that the conversation succeeded. * In
4909// a webhook response when you determine that you handled the customer
4910// issue.
4911type GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess struct {
4912	// Metadata: Custom metadata. Dialogflow doesn't impose any structure on
4913	// this.
4914	Metadata googleapi.RawMessage `json:"metadata,omitempty"`
4915
4916	// ForceSendFields is a list of field names (e.g. "Metadata") to
4917	// unconditionally include in API requests. By default, fields with
4918	// empty values are omitted from API requests. However, any non-pointer,
4919	// non-interface field appearing in ForceSendFields will be sent to the
4920	// server regardless of whether the field is empty or not. This may be
4921	// used to include empty fields in Patch requests.
4922	ForceSendFields []string `json:"-"`
4923
4924	// NullFields is a list of field names (e.g. "Metadata") to include in
4925	// API requests with the JSON null value. By default, fields with empty
4926	// values are omitted from API requests. However, any field with an
4927	// empty value appearing in NullFields will be sent to the server as
4928	// null. It is an error if a field in this list has a non-empty value.
4929	// This may be used to include null fields in Patch requests.
4930	NullFields []string `json:"-"`
4931}
4932
4933func (s *GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess) MarshalJSON() ([]byte, error) {
4934	type NoMethod GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess
4935	raw := NoMethod(*s)
4936	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4937}
4938
4939// GoogleCloudDialogflowCxV3ResponseMessageEndInteraction: Indicates
4940// that interaction with the Dialogflow agent has ended. This message is
4941// generated by Dialogflow only and not supposed to be defined by the
4942// user.
4943type GoogleCloudDialogflowCxV3ResponseMessageEndInteraction struct {
4944}
4945
4946// GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff: Indicates
4947// that the conversation should be handed off to a live agent.
4948// Dialogflow only uses this to determine which conversations were
4949// handed off to a human agent for measurement purposes. What else to do
4950// with this signal is up to you and your handoff procedures. You may
4951// set this, for example: * In the entry_fulfillment of a Page if
4952// entering the page indicates something went extremely wrong in the
4953// conversation. * In a webhook response when you determine that the
4954// customer issue can only be handled by a human.
4955type GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff struct {
4956	// Metadata: Custom metadata for your handoff procedure. Dialogflow
4957	// doesn't impose any structure on this.
4958	Metadata googleapi.RawMessage `json:"metadata,omitempty"`
4959
4960	// ForceSendFields is a list of field names (e.g. "Metadata") to
4961	// unconditionally include in API requests. By default, fields with
4962	// empty values are omitted from API requests. However, any non-pointer,
4963	// non-interface field appearing in ForceSendFields will be sent to the
4964	// server regardless of whether the field is empty or not. This may be
4965	// used to include empty fields in Patch requests.
4966	ForceSendFields []string `json:"-"`
4967
4968	// NullFields is a list of field names (e.g. "Metadata") to include in
4969	// API requests with the JSON null value. By default, fields with empty
4970	// values are omitted from API requests. However, any field with an
4971	// empty value appearing in NullFields will be sent to the server as
4972	// null. It is an error if a field in this list has a non-empty value.
4973	// This may be used to include null fields in Patch requests.
4974	NullFields []string `json:"-"`
4975}
4976
4977func (s *GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff) MarshalJSON() ([]byte, error) {
4978	type NoMethod GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff
4979	raw := NoMethod(*s)
4980	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4981}
4982
4983// GoogleCloudDialogflowCxV3ResponseMessageMixedAudio: Represents an
4984// audio message that is composed of both segments synthesized from the
4985// Dialogflow agent prompts and ones hosted externally at the specified
4986// URIs. The external URIs are specified via play_audio. This message is
4987// generated by Dialogflow only and not supposed to be defined by the
4988// user.
4989type GoogleCloudDialogflowCxV3ResponseMessageMixedAudio struct {
4990	// Segments: Segments this audio response is composed of.
4991	Segments []*GoogleCloudDialogflowCxV3ResponseMessageMixedAudioSegment `json:"segments,omitempty"`
4992
4993	// ForceSendFields is a list of field names (e.g. "Segments") to
4994	// unconditionally include in API requests. By default, fields with
4995	// empty values are omitted from API requests. However, any non-pointer,
4996	// non-interface field appearing in ForceSendFields will be sent to the
4997	// server regardless of whether the field is empty or not. This may be
4998	// used to include empty fields in Patch requests.
4999	ForceSendFields []string `json:"-"`
5000
5001	// NullFields is a list of field names (e.g. "Segments") to include in
5002	// API requests with the JSON null value. By default, fields with empty
5003	// values are omitted from API requests. However, any field with an
5004	// empty value appearing in NullFields will be sent to the server as
5005	// null. It is an error if a field in this list has a non-empty value.
5006	// This may be used to include null fields in Patch requests.
5007	NullFields []string `json:"-"`
5008}
5009
5010func (s *GoogleCloudDialogflowCxV3ResponseMessageMixedAudio) MarshalJSON() ([]byte, error) {
5011	type NoMethod GoogleCloudDialogflowCxV3ResponseMessageMixedAudio
5012	raw := NoMethod(*s)
5013	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5014}
5015
5016// GoogleCloudDialogflowCxV3ResponseMessageMixedAudioSegment: Represents
5017// one segment of audio.
5018type GoogleCloudDialogflowCxV3ResponseMessageMixedAudioSegment struct {
5019	// AllowPlaybackInterruption: Output only. Whether the playback of this
5020	// segment can be interrupted by the end user's speech and the client
5021	// should then start the next Dialogflow request.
5022	AllowPlaybackInterruption bool `json:"allowPlaybackInterruption,omitempty"`
5023
5024	// Audio: Raw audio synthesized from the Dialogflow agent's response
5025	// using the output config specified in the request.
5026	Audio string `json:"audio,omitempty"`
5027
5028	// Uri: Client-specific URI that points to an audio clip accessible to
5029	// the client. Dialogflow does not impose any validation on it.
5030	Uri string `json:"uri,omitempty"`
5031
5032	// ForceSendFields is a list of field names (e.g.
5033	// "AllowPlaybackInterruption") to unconditionally include in API
5034	// requests. By default, fields with empty values are omitted from API
5035	// requests. However, any non-pointer, non-interface field appearing in
5036	// ForceSendFields will be sent to the server regardless of whether the
5037	// field is empty or not. This may be used to include empty fields in
5038	// Patch requests.
5039	ForceSendFields []string `json:"-"`
5040
5041	// NullFields is a list of field names (e.g.
5042	// "AllowPlaybackInterruption") to include in API requests with the JSON
5043	// null value. By default, fields with empty values are omitted from API
5044	// requests. However, any field with an empty value appearing in
5045	// NullFields will be sent to the server as null. It is an error if a
5046	// field in this list has a non-empty value. This may be used to include
5047	// null fields in Patch requests.
5048	NullFields []string `json:"-"`
5049}
5050
5051func (s *GoogleCloudDialogflowCxV3ResponseMessageMixedAudioSegment) MarshalJSON() ([]byte, error) {
5052	type NoMethod GoogleCloudDialogflowCxV3ResponseMessageMixedAudioSegment
5053	raw := NoMethod(*s)
5054	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5055}
5056
5057// GoogleCloudDialogflowCxV3ResponseMessageOutputAudioText: A text or
5058// ssml response that is preferentially used for TTS output audio
5059// synthesis, as described in the comment on the ResponseMessage
5060// message.
5061type GoogleCloudDialogflowCxV3ResponseMessageOutputAudioText struct {
5062	// AllowPlaybackInterruption: Output only. Whether the playback of this
5063	// message can be interrupted by the end user's speech and the client
5064	// can then starts the next Dialogflow request.
5065	AllowPlaybackInterruption bool `json:"allowPlaybackInterruption,omitempty"`
5066
5067	// Ssml: The SSML text to be synthesized. For more information, see SSML
5068	// (/speech/text-to-speech/docs/ssml).
5069	Ssml string `json:"ssml,omitempty"`
5070
5071	// Text: The raw text to be synthesized.
5072	Text string `json:"text,omitempty"`
5073
5074	// ForceSendFields is a list of field names (e.g.
5075	// "AllowPlaybackInterruption") to unconditionally include in API
5076	// requests. By default, fields with empty values are omitted from API
5077	// requests. However, any non-pointer, non-interface field appearing in
5078	// ForceSendFields will be sent to the server regardless of whether the
5079	// field is empty or not. This may be used to include empty fields in
5080	// Patch requests.
5081	ForceSendFields []string `json:"-"`
5082
5083	// NullFields is a list of field names (e.g.
5084	// "AllowPlaybackInterruption") to include in API requests with the JSON
5085	// null value. By default, fields with empty values are omitted from API
5086	// requests. However, any field with an empty value appearing in
5087	// NullFields will be sent to the server as null. It is an error if a
5088	// field in this list has a non-empty value. This may be used to include
5089	// null fields in Patch requests.
5090	NullFields []string `json:"-"`
5091}
5092
5093func (s *GoogleCloudDialogflowCxV3ResponseMessageOutputAudioText) MarshalJSON() ([]byte, error) {
5094	type NoMethod GoogleCloudDialogflowCxV3ResponseMessageOutputAudioText
5095	raw := NoMethod(*s)
5096	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5097}
5098
5099// GoogleCloudDialogflowCxV3ResponseMessagePlayAudio: Specifies an audio
5100// clip to be played by the client as part of the response.
5101type GoogleCloudDialogflowCxV3ResponseMessagePlayAudio struct {
5102	// AllowPlaybackInterruption: Output only. Whether the playback of this
5103	// message can be interrupted by the end user's speech and the client
5104	// can then starts the next Dialogflow request.
5105	AllowPlaybackInterruption bool `json:"allowPlaybackInterruption,omitempty"`
5106
5107	// AudioUri: Required. URI of the audio clip. Dialogflow does not impose
5108	// any validation on this value. It is specific to the client that reads
5109	// it.
5110	AudioUri string `json:"audioUri,omitempty"`
5111
5112	// ForceSendFields is a list of field names (e.g.
5113	// "AllowPlaybackInterruption") to unconditionally include in API
5114	// requests. By default, fields with empty values are omitted from API
5115	// requests. However, any non-pointer, non-interface field appearing in
5116	// ForceSendFields will be sent to the server regardless of whether the
5117	// field is empty or not. This may be used to include empty fields in
5118	// Patch requests.
5119	ForceSendFields []string `json:"-"`
5120
5121	// NullFields is a list of field names (e.g.
5122	// "AllowPlaybackInterruption") to include in API requests with the JSON
5123	// null value. By default, fields with empty values are omitted from API
5124	// requests. However, any field with an empty value appearing in
5125	// NullFields will be sent to the server as null. It is an error if a
5126	// field in this list has a non-empty value. This may be used to include
5127	// null fields in Patch requests.
5128	NullFields []string `json:"-"`
5129}
5130
5131func (s *GoogleCloudDialogflowCxV3ResponseMessagePlayAudio) MarshalJSON() ([]byte, error) {
5132	type NoMethod GoogleCloudDialogflowCxV3ResponseMessagePlayAudio
5133	raw := NoMethod(*s)
5134	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5135}
5136
5137// GoogleCloudDialogflowCxV3ResponseMessageText: The text response
5138// message.
5139type GoogleCloudDialogflowCxV3ResponseMessageText struct {
5140	// AllowPlaybackInterruption: Output only. Whether the playback of this
5141	// message can be interrupted by the end user's speech and the client
5142	// can then starts the next Dialogflow request.
5143	AllowPlaybackInterruption bool `json:"allowPlaybackInterruption,omitempty"`
5144
5145	// Text: Required. A collection of text responses.
5146	Text []string `json:"text,omitempty"`
5147
5148	// ForceSendFields is a list of field names (e.g.
5149	// "AllowPlaybackInterruption") to unconditionally include in API
5150	// requests. By default, fields with empty values are omitted from API
5151	// requests. However, any non-pointer, non-interface field appearing in
5152	// ForceSendFields will be sent to the server regardless of whether the
5153	// field is empty or not. This may be used to include empty fields in
5154	// Patch requests.
5155	ForceSendFields []string `json:"-"`
5156
5157	// NullFields is a list of field names (e.g.
5158	// "AllowPlaybackInterruption") to include in API requests with the JSON
5159	// null value. By default, fields with empty values are omitted from API
5160	// requests. However, any field with an empty value appearing in
5161	// NullFields will be sent to the server as null. It is an error if a
5162	// field in this list has a non-empty value. This may be used to include
5163	// null fields in Patch requests.
5164	NullFields []string `json:"-"`
5165}
5166
5167func (s *GoogleCloudDialogflowCxV3ResponseMessageText) MarshalJSON() ([]byte, error) {
5168	type NoMethod GoogleCloudDialogflowCxV3ResponseMessageText
5169	raw := NoMethod(*s)
5170	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5171}
5172
5173// GoogleCloudDialogflowCxV3RestoreAgentRequest: The request message for
5174// Agents.RestoreAgent.
5175type GoogleCloudDialogflowCxV3RestoreAgentRequest struct {
5176	// AgentContent: Uncompressed raw byte content for agent.
5177	AgentContent string `json:"agentContent,omitempty"`
5178
5179	// AgentUri: The Google Cloud Storage
5180	// (https://cloud.google.com/storage/docs/) URI to restore agent from.
5181	// The format of this URI must be `gs:///`.
5182	AgentUri string `json:"agentUri,omitempty"`
5183
5184	// RestoreOption: Agent restore mode. If not specified, `KEEP` is
5185	// assumed.
5186	//
5187	// Possible values:
5188	//   "RESTORE_OPTION_UNSPECIFIED" - Unspecified. Treated as KEEP.
5189	//   "KEEP" - Always respect the settings from the exported agent file.
5190	// It may cause a restoration failure if some settings (e.g. model type)
5191	// are not supported in the target agent.
5192	//   "FALLBACK" - Fallback to default settings if some settings are not
5193	// supported in the target agent.
5194	RestoreOption string `json:"restoreOption,omitempty"`
5195
5196	// ForceSendFields is a list of field names (e.g. "AgentContent") to
5197	// unconditionally include in API requests. By default, fields with
5198	// empty values are omitted from API requests. However, any non-pointer,
5199	// non-interface field appearing in ForceSendFields will be sent to the
5200	// server regardless of whether the field is empty or not. This may be
5201	// used to include empty fields in Patch requests.
5202	ForceSendFields []string `json:"-"`
5203
5204	// NullFields is a list of field names (e.g. "AgentContent") to include
5205	// in API requests with the JSON null value. By default, fields with
5206	// empty values are omitted from API requests. However, any field with
5207	// an empty value appearing in NullFields will be sent to the server as
5208	// null. It is an error if a field in this list has a non-empty value.
5209	// This may be used to include null fields in Patch requests.
5210	NullFields []string `json:"-"`
5211}
5212
5213func (s *GoogleCloudDialogflowCxV3RestoreAgentRequest) MarshalJSON() ([]byte, error) {
5214	type NoMethod GoogleCloudDialogflowCxV3RestoreAgentRequest
5215	raw := NoMethod(*s)
5216	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5217}
5218
5219// GoogleCloudDialogflowCxV3RunContinuousTestMetadata: Metadata returned
5220// for the Environments.RunContinuousTest long running operation.
5221type GoogleCloudDialogflowCxV3RunContinuousTestMetadata struct {
5222	// Errors: The test errors.
5223	Errors []*GoogleCloudDialogflowCxV3TestError `json:"errors,omitempty"`
5224
5225	// ForceSendFields is a list of field names (e.g. "Errors") to
5226	// unconditionally include in API requests. By default, fields with
5227	// empty values are omitted from API requests. However, any non-pointer,
5228	// non-interface field appearing in ForceSendFields will be sent to the
5229	// server regardless of whether the field is empty or not. This may be
5230	// used to include empty fields in Patch requests.
5231	ForceSendFields []string `json:"-"`
5232
5233	// NullFields is a list of field names (e.g. "Errors") to include in API
5234	// requests with the JSON null value. By default, fields with empty
5235	// values are omitted from API requests. However, any field with an
5236	// empty value appearing in NullFields will be sent to the server as
5237	// null. It is an error if a field in this list has a non-empty value.
5238	// This may be used to include null fields in Patch requests.
5239	NullFields []string `json:"-"`
5240}
5241
5242func (s *GoogleCloudDialogflowCxV3RunContinuousTestMetadata) MarshalJSON() ([]byte, error) {
5243	type NoMethod GoogleCloudDialogflowCxV3RunContinuousTestMetadata
5244	raw := NoMethod(*s)
5245	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5246}
5247
5248// GoogleCloudDialogflowCxV3RunContinuousTestRequest: The request
5249// message for Environments.RunContinuousTest.
5250type GoogleCloudDialogflowCxV3RunContinuousTestRequest struct {
5251}
5252
5253// GoogleCloudDialogflowCxV3RunContinuousTestResponse: The response
5254// message for Environments.RunContinuousTest.
5255type GoogleCloudDialogflowCxV3RunContinuousTestResponse struct {
5256	// ContinuousTestResult: The result for a continuous test run.
5257	ContinuousTestResult *GoogleCloudDialogflowCxV3ContinuousTestResult `json:"continuousTestResult,omitempty"`
5258
5259	// ForceSendFields is a list of field names (e.g.
5260	// "ContinuousTestResult") to unconditionally include in API requests.
5261	// By default, fields with empty values are omitted from API requests.
5262	// However, any non-pointer, non-interface field appearing in
5263	// ForceSendFields will be sent to the server regardless of whether the
5264	// field is empty or not. This may be used to include empty fields in
5265	// Patch requests.
5266	ForceSendFields []string `json:"-"`
5267
5268	// NullFields is a list of field names (e.g. "ContinuousTestResult") to
5269	// include in API requests with the JSON null value. By default, fields
5270	// with empty values are omitted from API requests. However, any field
5271	// with an empty value appearing in NullFields will be sent to the
5272	// server as null. It is an error if a field in this list has a
5273	// non-empty value. This may be used to include null fields in Patch
5274	// requests.
5275	NullFields []string `json:"-"`
5276}
5277
5278func (s *GoogleCloudDialogflowCxV3RunContinuousTestResponse) MarshalJSON() ([]byte, error) {
5279	type NoMethod GoogleCloudDialogflowCxV3RunContinuousTestResponse
5280	raw := NoMethod(*s)
5281	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5282}
5283
5284// GoogleCloudDialogflowCxV3RunTestCaseMetadata: Metadata returned for
5285// the TestCases.RunTestCase long running operation.
5286type GoogleCloudDialogflowCxV3RunTestCaseMetadata struct {
5287}
5288
5289// GoogleCloudDialogflowCxV3RunTestCaseRequest: The request message for
5290// TestCases.RunTestCase.
5291type GoogleCloudDialogflowCxV3RunTestCaseRequest struct {
5292	// Environment: Optional. Environment name. If not set, draft
5293	// environment is assumed. Format:
5294	// `projects//locations//agents//environments/`.
5295	Environment string `json:"environment,omitempty"`
5296
5297	// ForceSendFields is a list of field names (e.g. "Environment") to
5298	// unconditionally include in API requests. By default, fields with
5299	// empty values are omitted from API requests. However, any non-pointer,
5300	// non-interface field appearing in ForceSendFields will be sent to the
5301	// server regardless of whether the field is empty or not. This may be
5302	// used to include empty fields in Patch requests.
5303	ForceSendFields []string `json:"-"`
5304
5305	// NullFields is a list of field names (e.g. "Environment") 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 *GoogleCloudDialogflowCxV3RunTestCaseRequest) MarshalJSON() ([]byte, error) {
5315	type NoMethod GoogleCloudDialogflowCxV3RunTestCaseRequest
5316	raw := NoMethod(*s)
5317	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5318}
5319
5320// GoogleCloudDialogflowCxV3RunTestCaseResponse: The response message
5321// for TestCases.RunTestCase.
5322type GoogleCloudDialogflowCxV3RunTestCaseResponse struct {
5323	// Result: The result.
5324	Result *GoogleCloudDialogflowCxV3TestCaseResult `json:"result,omitempty"`
5325
5326	// ForceSendFields is a list of field names (e.g. "Result") to
5327	// unconditionally include in API requests. By default, fields with
5328	// empty values are omitted from API requests. However, any non-pointer,
5329	// non-interface field appearing in ForceSendFields will be sent to the
5330	// server regardless of whether the field is empty or not. This may be
5331	// used to include empty fields in Patch requests.
5332	ForceSendFields []string `json:"-"`
5333
5334	// NullFields is a list of field names (e.g. "Result") to include in API
5335	// requests with the JSON null value. By default, fields with empty
5336	// values are omitted from API requests. However, any field with an
5337	// empty value appearing in NullFields will be sent to the server as
5338	// null. It is an error if a field in this list has a non-empty value.
5339	// This may be used to include null fields in Patch requests.
5340	NullFields []string `json:"-"`
5341}
5342
5343func (s *GoogleCloudDialogflowCxV3RunTestCaseResponse) MarshalJSON() ([]byte, error) {
5344	type NoMethod GoogleCloudDialogflowCxV3RunTestCaseResponse
5345	raw := NoMethod(*s)
5346	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5347}
5348
5349// GoogleCloudDialogflowCxV3SecuritySettings: Represents the settings
5350// related to security issues, such as data redaction and data
5351// retention. It may take hours for updates on the settings to propagate
5352// to all the related components and take effect.
5353type GoogleCloudDialogflowCxV3SecuritySettings struct {
5354	// DisplayName: Required. The human-readable name of the security
5355	// settings, unique within the location.
5356	DisplayName string `json:"displayName,omitempty"`
5357
5358	// InspectTemplate: DLP (https://cloud.google.com/dlp/docs) inspect
5359	// template name. Use this template to define inspect base settings. If
5360	// empty, we use the default DLP inspect config. The template name will
5361	// have one of the following formats: `projects//inspectTemplates/` OR
5362	// `projects//locations//inspectTemplates/` OR
5363	// `organizations//inspectTemplates/`
5364	InspectTemplate string `json:"inspectTemplate,omitempty"`
5365
5366	// Name: Required. Resource name of the settings. Format:
5367	// `projects//locations//securitySettings/`.
5368	Name string `json:"name,omitempty"`
5369
5370	// PurgeDataTypes: List of types of data to remove when retention
5371	// settings triggers purge.
5372	//
5373	// Possible values:
5374	//   "PURGE_DATA_TYPE_UNSPECIFIED" - Unspecified. Do not use.
5375	//   "DIALOGFLOW_HISTORY" - Dialogflow history. This does not include
5376	// Cloud logging, which is owned by the user - not Dialogflow.
5377	PurgeDataTypes []string `json:"purgeDataTypes,omitempty"`
5378
5379	// RedactionScope: Defines the data for which Dialogflow applies
5380	// redaction. Dialogflow does not redact data that it does not have
5381	// access to – for example, Cloud logging.
5382	//
5383	// Possible values:
5384	//   "REDACTION_SCOPE_UNSPECIFIED" - Don't redact any kind of data.
5385	//   "REDACT_DISK_STORAGE" - On data to be written to disk or similar
5386	// devices that are capable of holding data even if power is
5387	// disconnected. This includes data that are temporarily saved on disk.
5388	RedactionScope string `json:"redactionScope,omitempty"`
5389
5390	// RedactionStrategy: Strategy that defines how we do redaction.
5391	//
5392	// Possible values:
5393	//   "REDACTION_STRATEGY_UNSPECIFIED" - Do not redact.
5394	//   "REDACT_WITH_SERVICE" - Call redaction service to clean up the data
5395	// to be persisted.
5396	RedactionStrategy string `json:"redactionStrategy,omitempty"`
5397
5398	// RetentionWindowDays: Retains data in interaction logging for the
5399	// specified number of days. This does not apply to Cloud logging, which
5400	// is owned by the user - not Dialogflow. User must Set a value lower
5401	// than Dialogflow's default 30d TTL. Setting a value higher than that
5402	// has no effect. A missing value or setting to 0 also means we use
5403	// Dialogflow's default TTL. Note: Interaction logging is a limited
5404	// access feature. Talk to your Google representative to check
5405	// availability for you.
5406	RetentionWindowDays int64 `json:"retentionWindowDays,omitempty"`
5407
5408	// ServerResponse contains the HTTP response code and headers from the
5409	// server.
5410	googleapi.ServerResponse `json:"-"`
5411
5412	// ForceSendFields is a list of field names (e.g. "DisplayName") to
5413	// unconditionally include in API requests. By default, fields with
5414	// empty values are omitted from API requests. However, any non-pointer,
5415	// non-interface field appearing in ForceSendFields will be sent to the
5416	// server regardless of whether the field is empty or not. This may be
5417	// used to include empty fields in Patch requests.
5418	ForceSendFields []string `json:"-"`
5419
5420	// NullFields is a list of field names (e.g. "DisplayName") to include
5421	// in API requests with the JSON null value. By default, fields with
5422	// empty values are omitted from API requests. However, any field with
5423	// an empty value appearing in NullFields will be sent to the server as
5424	// null. It is an error if a field in this list has a non-empty value.
5425	// This may be used to include null fields in Patch requests.
5426	NullFields []string `json:"-"`
5427}
5428
5429func (s *GoogleCloudDialogflowCxV3SecuritySettings) MarshalJSON() ([]byte, error) {
5430	type NoMethod GoogleCloudDialogflowCxV3SecuritySettings
5431	raw := NoMethod(*s)
5432	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5433}
5434
5435// GoogleCloudDialogflowCxV3SentimentAnalysisResult: The result of
5436// sentiment analysis. Sentiment analysis inspects user input and
5437// identifies the prevailing subjective opinion, especially to determine
5438// a user's attitude as positive, negative, or neutral.
5439type GoogleCloudDialogflowCxV3SentimentAnalysisResult struct {
5440	// Magnitude: A non-negative number in the [0, +inf) range, which
5441	// represents the absolute magnitude of sentiment, regardless of score
5442	// (positive or negative).
5443	Magnitude float64 `json:"magnitude,omitempty"`
5444
5445	// Score: Sentiment score between -1.0 (negative sentiment) and 1.0
5446	// (positive sentiment).
5447	Score float64 `json:"score,omitempty"`
5448
5449	// ForceSendFields is a list of field names (e.g. "Magnitude") to
5450	// unconditionally include in API requests. By default, fields with
5451	// empty values are omitted from API requests. However, any non-pointer,
5452	// non-interface field appearing in ForceSendFields will be sent to the
5453	// server regardless of whether the field is empty or not. This may be
5454	// used to include empty fields in Patch requests.
5455	ForceSendFields []string `json:"-"`
5456
5457	// NullFields is a list of field names (e.g. "Magnitude") to include in
5458	// API requests with the JSON null value. By default, fields with empty
5459	// values are omitted from API requests. However, any field with an
5460	// empty value appearing in NullFields will be sent to the server as
5461	// null. It is an error if a field in this list has a non-empty value.
5462	// This may be used to include null fields in Patch requests.
5463	NullFields []string `json:"-"`
5464}
5465
5466func (s *GoogleCloudDialogflowCxV3SentimentAnalysisResult) MarshalJSON() ([]byte, error) {
5467	type NoMethod GoogleCloudDialogflowCxV3SentimentAnalysisResult
5468	raw := NoMethod(*s)
5469	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5470}
5471
5472func (s *GoogleCloudDialogflowCxV3SentimentAnalysisResult) UnmarshalJSON(data []byte) error {
5473	type NoMethod GoogleCloudDialogflowCxV3SentimentAnalysisResult
5474	var s1 struct {
5475		Magnitude gensupport.JSONFloat64 `json:"magnitude"`
5476		Score     gensupport.JSONFloat64 `json:"score"`
5477		*NoMethod
5478	}
5479	s1.NoMethod = (*NoMethod)(s)
5480	if err := json.Unmarshal(data, &s1); err != nil {
5481		return err
5482	}
5483	s.Magnitude = float64(s1.Magnitude)
5484	s.Score = float64(s1.Score)
5485	return nil
5486}
5487
5488// GoogleCloudDialogflowCxV3SessionEntityType: Session entity types are
5489// referred to as **User** entity types and are entities that are built
5490// for an individual user such as favorites, preferences, playlists, and
5491// so on. You can redefine a session entity type at the session level to
5492// extend or replace a custom entity type at the user session level (we
5493// refer to the entity types defined at the agent level as "custom
5494// entity types"). Note: session entity types apply to all queries,
5495// regardless of the language. For more information about entity types,
5496// see the Dialogflow documentation
5497// (https://cloud.google.com/dialogflow/docs/entities-overview).
5498type GoogleCloudDialogflowCxV3SessionEntityType struct {
5499	// Entities: Required. The collection of entities to override or
5500	// supplement the custom entity type.
5501	Entities []*GoogleCloudDialogflowCxV3EntityTypeEntity `json:"entities,omitempty"`
5502
5503	// EntityOverrideMode: Required. Indicates whether the additional data
5504	// should override or supplement the custom entity type definition.
5505	//
5506	// Possible values:
5507	//   "ENTITY_OVERRIDE_MODE_UNSPECIFIED" - Not specified. This value
5508	// should be never used.
5509	//   "ENTITY_OVERRIDE_MODE_OVERRIDE" - The collection of session
5510	// entities overrides the collection of entities in the corresponding
5511	// custom entity type.
5512	//   "ENTITY_OVERRIDE_MODE_SUPPLEMENT" - The collection of session
5513	// entities extends the collection of entities in the corresponding
5514	// custom entity type. Note: Even in this override mode calls to
5515	// `ListSessionEntityTypes`, `GetSessionEntityType`,
5516	// `CreateSessionEntityType` and `UpdateSessionEntityType` only return
5517	// the additional entities added in this session entity type. If you
5518	// want to get the supplemented list, please call
5519	// EntityTypes.GetEntityType on the custom entity type and merge.
5520	EntityOverrideMode string `json:"entityOverrideMode,omitempty"`
5521
5522	// Name: Required. The unique identifier of the session entity type.
5523	// Format: `projects//locations//agents//sessions//entityTypes/` or
5524	// `projects//locations//agents//environments//sessions//entityTypes/`.
5525	// If `Environment ID` is not specified, we assume default 'draft'
5526	// environment.
5527	Name string `json:"name,omitempty"`
5528
5529	// ServerResponse contains the HTTP response code and headers from the
5530	// server.
5531	googleapi.ServerResponse `json:"-"`
5532
5533	// ForceSendFields is a list of field names (e.g. "Entities") to
5534	// unconditionally include in API requests. By default, fields with
5535	// empty values are omitted from API requests. However, any non-pointer,
5536	// non-interface field appearing in ForceSendFields will be sent to the
5537	// server regardless of whether the field is empty or not. This may be
5538	// used to include empty fields in Patch requests.
5539	ForceSendFields []string `json:"-"`
5540
5541	// NullFields is a list of field names (e.g. "Entities") to include in
5542	// API requests with the JSON null value. By default, fields with empty
5543	// values are omitted from API requests. However, any field with an
5544	// empty value appearing in NullFields will be sent to the server as
5545	// null. It is an error if a field in this list has a non-empty value.
5546	// This may be used to include null fields in Patch requests.
5547	NullFields []string `json:"-"`
5548}
5549
5550func (s *GoogleCloudDialogflowCxV3SessionEntityType) MarshalJSON() ([]byte, error) {
5551	type NoMethod GoogleCloudDialogflowCxV3SessionEntityType
5552	raw := NoMethod(*s)
5553	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5554}
5555
5556// GoogleCloudDialogflowCxV3SessionInfo: Represents session information
5557// communicated to and from the webhook.
5558type GoogleCloudDialogflowCxV3SessionInfo struct {
5559	// Parameters: Optional for WebhookRequest. Optional for
5560	// WebhookResponse. All parameters collected from forms and intents
5561	// during the session. Parameters can be created, updated, or removed by
5562	// the webhook. To remove a parameter from the session, the webhook
5563	// should explicitly set the parameter value to null in WebhookResponse.
5564	// The map is keyed by parameters' display names.
5565	Parameters googleapi.RawMessage `json:"parameters,omitempty"`
5566
5567	// Session: Always present for WebhookRequest. Ignored for
5568	// WebhookResponse. The unique identifier of the session. This field can
5569	// be used by the webhook to identify a session. Format:
5570	// `projects//locations//agents//sessions/` or
5571	// `projects//locations//agents//environments//sessions/` if environment
5572	// is specified.
5573	Session string `json:"session,omitempty"`
5574
5575	// ForceSendFields is a list of field names (e.g. "Parameters") to
5576	// unconditionally include in API requests. By default, fields with
5577	// empty values are omitted from API requests. However, any non-pointer,
5578	// non-interface field appearing in ForceSendFields will be sent to the
5579	// server regardless of whether the field is empty or not. This may be
5580	// used to include empty fields in Patch requests.
5581	ForceSendFields []string `json:"-"`
5582
5583	// NullFields is a list of field names (e.g. "Parameters") to include in
5584	// API requests with the JSON null value. By default, fields with empty
5585	// values are omitted from API requests. However, any field with an
5586	// empty value appearing in NullFields will be sent to the server as
5587	// null. It is an error if a field in this list has a non-empty value.
5588	// This may be used to include null fields in Patch requests.
5589	NullFields []string `json:"-"`
5590}
5591
5592func (s *GoogleCloudDialogflowCxV3SessionInfo) MarshalJSON() ([]byte, error) {
5593	type NoMethod GoogleCloudDialogflowCxV3SessionInfo
5594	raw := NoMethod(*s)
5595	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5596}
5597
5598// GoogleCloudDialogflowCxV3SpeechToTextSettings: Settings related to
5599// speech recognition.
5600type GoogleCloudDialogflowCxV3SpeechToTextSettings struct {
5601	// EnableSpeechAdaptation: Whether to use speech adaptation for speech
5602	// recognition.
5603	EnableSpeechAdaptation bool `json:"enableSpeechAdaptation,omitempty"`
5604
5605	// ForceSendFields is a list of field names (e.g.
5606	// "EnableSpeechAdaptation") to unconditionally include in API requests.
5607	// By default, fields with empty values are omitted from API requests.
5608	// However, any non-pointer, non-interface field appearing in
5609	// ForceSendFields will be sent to the server regardless of whether the
5610	// field is empty or not. This may be used to include empty fields in
5611	// Patch requests.
5612	ForceSendFields []string `json:"-"`
5613
5614	// NullFields is a list of field names (e.g. "EnableSpeechAdaptation")
5615	// to include in API requests with the JSON null value. By default,
5616	// fields with empty values are omitted from API requests. However, any
5617	// field with an empty value appearing in NullFields will be sent to the
5618	// server as null. It is an error if a field in this list has a
5619	// non-empty value. This may be used to include null fields in Patch
5620	// requests.
5621	NullFields []string `json:"-"`
5622}
5623
5624func (s *GoogleCloudDialogflowCxV3SpeechToTextSettings) MarshalJSON() ([]byte, error) {
5625	type NoMethod GoogleCloudDialogflowCxV3SpeechToTextSettings
5626	raw := NoMethod(*s)
5627	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5628}
5629
5630// GoogleCloudDialogflowCxV3StartExperimentRequest: The request message
5631// for Experiments.StartExperiment.
5632type GoogleCloudDialogflowCxV3StartExperimentRequest struct {
5633}
5634
5635// GoogleCloudDialogflowCxV3StopExperimentRequest: The request message
5636// for Experiments.StopExperiment.
5637type GoogleCloudDialogflowCxV3StopExperimentRequest struct {
5638}
5639
5640// GoogleCloudDialogflowCxV3SynthesizeSpeechConfig: Configuration of how
5641// speech should be synthesized.
5642type GoogleCloudDialogflowCxV3SynthesizeSpeechConfig struct {
5643	// EffectsProfileId: Optional. An identifier which selects 'audio
5644	// effects' profiles that are applied on (post synthesized) text to
5645	// speech. Effects are applied on top of each other in the order they
5646	// are given.
5647	EffectsProfileId []string `json:"effectsProfileId,omitempty"`
5648
5649	// Pitch: Optional. Speaking pitch, in the range [-20.0, 20.0]. 20 means
5650	// increase 20 semitones from the original pitch. -20 means decrease 20
5651	// semitones from the original pitch.
5652	Pitch float64 `json:"pitch,omitempty"`
5653
5654	// SpeakingRate: Optional. Speaking rate/speed, in the range [0.25,
5655	// 4.0]. 1.0 is the normal native speed supported by the specific voice.
5656	// 2.0 is twice as fast, and 0.5 is half as fast. If unset(0.0),
5657	// defaults to the native 1.0 speed. Any other values < 0.25 or > 4.0
5658	// will return an error.
5659	SpeakingRate float64 `json:"speakingRate,omitempty"`
5660
5661	// Voice: Optional. The desired voice of the synthesized audio.
5662	Voice *GoogleCloudDialogflowCxV3VoiceSelectionParams `json:"voice,omitempty"`
5663
5664	// VolumeGainDb: Optional. Volume gain (in dB) of the normal native
5665	// volume supported by the specific voice, in the range [-96.0, 16.0].
5666	// If unset, or set to a value of 0.0 (dB), will play at normal native
5667	// signal amplitude. A value of -6.0 (dB) will play at approximately
5668	// half the amplitude of the normal native signal amplitude. A value of
5669	// +6.0 (dB) will play at approximately twice the amplitude of the
5670	// normal native signal amplitude. We strongly recommend not to exceed
5671	// +10 (dB) as there's usually no effective increase in loudness for any
5672	// value greater than that.
5673	VolumeGainDb float64 `json:"volumeGainDb,omitempty"`
5674
5675	// ForceSendFields is a list of field names (e.g. "EffectsProfileId") to
5676	// unconditionally include in API requests. By default, fields with
5677	// empty values are omitted from API requests. However, any non-pointer,
5678	// non-interface field appearing in ForceSendFields will be sent to the
5679	// server regardless of whether the field is empty or not. This may be
5680	// used to include empty fields in Patch requests.
5681	ForceSendFields []string `json:"-"`
5682
5683	// NullFields is a list of field names (e.g. "EffectsProfileId") to
5684	// include in API requests with the JSON null value. By default, fields
5685	// with empty values are omitted from API requests. However, any field
5686	// with an empty value appearing in NullFields will be sent to the
5687	// server as null. It is an error if a field in this list has a
5688	// non-empty value. This may be used to include null fields in Patch
5689	// requests.
5690	NullFields []string `json:"-"`
5691}
5692
5693func (s *GoogleCloudDialogflowCxV3SynthesizeSpeechConfig) MarshalJSON() ([]byte, error) {
5694	type NoMethod GoogleCloudDialogflowCxV3SynthesizeSpeechConfig
5695	raw := NoMethod(*s)
5696	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5697}
5698
5699func (s *GoogleCloudDialogflowCxV3SynthesizeSpeechConfig) UnmarshalJSON(data []byte) error {
5700	type NoMethod GoogleCloudDialogflowCxV3SynthesizeSpeechConfig
5701	var s1 struct {
5702		Pitch        gensupport.JSONFloat64 `json:"pitch"`
5703		SpeakingRate gensupport.JSONFloat64 `json:"speakingRate"`
5704		VolumeGainDb gensupport.JSONFloat64 `json:"volumeGainDb"`
5705		*NoMethod
5706	}
5707	s1.NoMethod = (*NoMethod)(s)
5708	if err := json.Unmarshal(data, &s1); err != nil {
5709		return err
5710	}
5711	s.Pitch = float64(s1.Pitch)
5712	s.SpeakingRate = float64(s1.SpeakingRate)
5713	s.VolumeGainDb = float64(s1.VolumeGainDb)
5714	return nil
5715}
5716
5717// GoogleCloudDialogflowCxV3TestCase: Represents a test case.
5718type GoogleCloudDialogflowCxV3TestCase struct {
5719	// CreationTime: Output only. When the test was created.
5720	CreationTime string `json:"creationTime,omitempty"`
5721
5722	// DisplayName: Required. The human-readable name of the test case,
5723	// unique within the agent. Limit of 200 characters.
5724	DisplayName string `json:"displayName,omitempty"`
5725
5726	// LastTestResult: The latest test result.
5727	LastTestResult *GoogleCloudDialogflowCxV3TestCaseResult `json:"lastTestResult,omitempty"`
5728
5729	// Name: The unique identifier of the test case.
5730	// TestCases.CreateTestCase will populate the name automatically.
5731	// Otherwise use format: `projects//locations//agents/ /testCases/`.
5732	Name string `json:"name,omitempty"`
5733
5734	// Notes: Additional freeform notes about the test case. Limit of 400
5735	// characters.
5736	Notes string `json:"notes,omitempty"`
5737
5738	// Tags: Tags are short descriptions that users may apply to test cases
5739	// for organizational and filtering purposes. Each tag should start with
5740	// "#" and has a limit of 30 characters.
5741	Tags []string `json:"tags,omitempty"`
5742
5743	// TestCaseConversationTurns: The conversation turns uttered when the
5744	// test case was created, in chronological order. These include the
5745	// canonical set of agent utterances that should occur when the agent is
5746	// working properly.
5747	TestCaseConversationTurns []*GoogleCloudDialogflowCxV3ConversationTurn `json:"testCaseConversationTurns,omitempty"`
5748
5749	// TestConfig: Config for the test case.
5750	TestConfig *GoogleCloudDialogflowCxV3TestConfig `json:"testConfig,omitempty"`
5751
5752	// ServerResponse contains the HTTP response code and headers from the
5753	// server.
5754	googleapi.ServerResponse `json:"-"`
5755
5756	// ForceSendFields is a list of field names (e.g. "CreationTime") to
5757	// unconditionally include in API requests. By default, fields with
5758	// empty values are omitted from API requests. However, any non-pointer,
5759	// non-interface field appearing in ForceSendFields will be sent to the
5760	// server regardless of whether the field is empty or not. This may be
5761	// used to include empty fields in Patch requests.
5762	ForceSendFields []string `json:"-"`
5763
5764	// NullFields is a list of field names (e.g. "CreationTime") to include
5765	// in API requests with the JSON null value. By default, fields with
5766	// empty values are omitted from API requests. However, any field with
5767	// an empty value appearing in NullFields will be sent to the server as
5768	// null. It is an error if a field in this list has a non-empty value.
5769	// This may be used to include null fields in Patch requests.
5770	NullFields []string `json:"-"`
5771}
5772
5773func (s *GoogleCloudDialogflowCxV3TestCase) MarshalJSON() ([]byte, error) {
5774	type NoMethod GoogleCloudDialogflowCxV3TestCase
5775	raw := NoMethod(*s)
5776	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5777}
5778
5779// GoogleCloudDialogflowCxV3TestCaseError: Error info for importing a
5780// test.
5781type GoogleCloudDialogflowCxV3TestCaseError struct {
5782	// Status: The status associated with the test case.
5783	Status *GoogleRpcStatus `json:"status,omitempty"`
5784
5785	// TestCase: The test case.
5786	TestCase *GoogleCloudDialogflowCxV3TestCase `json:"testCase,omitempty"`
5787
5788	// ForceSendFields is a list of field names (e.g. "Status") to
5789	// unconditionally include in API requests. By default, fields with
5790	// empty values are omitted from API requests. However, any non-pointer,
5791	// non-interface field appearing in ForceSendFields will be sent to the
5792	// server regardless of whether the field is empty or not. This may be
5793	// used to include empty fields in Patch requests.
5794	ForceSendFields []string `json:"-"`
5795
5796	// NullFields is a list of field names (e.g. "Status") to include in API
5797	// requests with the JSON null value. By default, fields with empty
5798	// values are omitted from API requests. However, any field with an
5799	// empty value appearing in NullFields will be sent to the server as
5800	// null. It is an error if a field in this list has a non-empty value.
5801	// This may be used to include null fields in Patch requests.
5802	NullFields []string `json:"-"`
5803}
5804
5805func (s *GoogleCloudDialogflowCxV3TestCaseError) MarshalJSON() ([]byte, error) {
5806	type NoMethod GoogleCloudDialogflowCxV3TestCaseError
5807	raw := NoMethod(*s)
5808	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5809}
5810
5811// GoogleCloudDialogflowCxV3TestCaseResult: Represents a result from
5812// running a test case in an agent environment.
5813type GoogleCloudDialogflowCxV3TestCaseResult struct {
5814	// ConversationTurns: The conversation turns uttered during the test
5815	// case replay in chronological order.
5816	ConversationTurns []*GoogleCloudDialogflowCxV3ConversationTurn `json:"conversationTurns,omitempty"`
5817
5818	// Environment: Environment where the test was run. If not set, it
5819	// indicates the draft environment.
5820	Environment string `json:"environment,omitempty"`
5821
5822	// Name: The resource name for the test case result. Format:
5823	// `projects//locations//agents//testCases/ /results/`.
5824	Name string `json:"name,omitempty"`
5825
5826	// TestResult: Whether the test case passed in the agent environment.
5827	//
5828	// Possible values:
5829	//   "TEST_RESULT_UNSPECIFIED" - Not specified. Should never be used.
5830	//   "PASSED" - The test passed.
5831	//   "FAILED" - The test did not pass.
5832	TestResult string `json:"testResult,omitempty"`
5833
5834	// TestTime: The time that the test was run.
5835	TestTime string `json:"testTime,omitempty"`
5836
5837	// ServerResponse contains the HTTP response code and headers from the
5838	// server.
5839	googleapi.ServerResponse `json:"-"`
5840
5841	// ForceSendFields is a list of field names (e.g. "ConversationTurns")
5842	// to unconditionally include in API requests. By default, fields with
5843	// empty values are omitted from API requests. However, any non-pointer,
5844	// non-interface field appearing in ForceSendFields will be sent to the
5845	// server regardless of whether the field is empty or not. This may be
5846	// used to include empty fields in Patch requests.
5847	ForceSendFields []string `json:"-"`
5848
5849	// NullFields is a list of field names (e.g. "ConversationTurns") to
5850	// include in API requests with the JSON null value. By default, fields
5851	// with empty values are omitted from API requests. However, any field
5852	// with an empty value appearing in NullFields will be sent to the
5853	// server as null. It is an error if a field in this list has a
5854	// non-empty value. This may be used to include null fields in Patch
5855	// requests.
5856	NullFields []string `json:"-"`
5857}
5858
5859func (s *GoogleCloudDialogflowCxV3TestCaseResult) MarshalJSON() ([]byte, error) {
5860	type NoMethod GoogleCloudDialogflowCxV3TestCaseResult
5861	raw := NoMethod(*s)
5862	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5863}
5864
5865// GoogleCloudDialogflowCxV3TestConfig: Represents configurations for a
5866// test case.
5867type GoogleCloudDialogflowCxV3TestConfig struct {
5868	// Flow: Flow name. If not set, default start flow is assumed. Format:
5869	// `projects//locations//agents//flows/`.
5870	Flow string `json:"flow,omitempty"`
5871
5872	// TrackingParameters: Session parameters to be compared when
5873	// calculating differences.
5874	TrackingParameters []string `json:"trackingParameters,omitempty"`
5875
5876	// ForceSendFields is a list of field names (e.g. "Flow") to
5877	// unconditionally include in API requests. By default, fields with
5878	// empty values are omitted from API requests. However, any non-pointer,
5879	// non-interface field appearing in ForceSendFields will be sent to the
5880	// server regardless of whether the field is empty or not. This may be
5881	// used to include empty fields in Patch requests.
5882	ForceSendFields []string `json:"-"`
5883
5884	// NullFields is a list of field names (e.g. "Flow") to include in API
5885	// requests with the JSON null value. By default, fields with empty
5886	// values are omitted from API requests. However, any field with an
5887	// empty value appearing in NullFields will be sent to the server as
5888	// null. It is an error if a field in this list has a non-empty value.
5889	// This may be used to include null fields in Patch requests.
5890	NullFields []string `json:"-"`
5891}
5892
5893func (s *GoogleCloudDialogflowCxV3TestConfig) MarshalJSON() ([]byte, error) {
5894	type NoMethod GoogleCloudDialogflowCxV3TestConfig
5895	raw := NoMethod(*s)
5896	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5897}
5898
5899// GoogleCloudDialogflowCxV3TestError: Error info for running a test.
5900type GoogleCloudDialogflowCxV3TestError struct {
5901	// Status: The status associated with the test.
5902	Status *GoogleRpcStatus `json:"status,omitempty"`
5903
5904	// TestCase: The test case resource name.
5905	TestCase string `json:"testCase,omitempty"`
5906
5907	// TestTime: The timestamp when the test was completed.
5908	TestTime string `json:"testTime,omitempty"`
5909
5910	// ForceSendFields is a list of field names (e.g. "Status") to
5911	// unconditionally include in API requests. By default, fields with
5912	// empty values are omitted from API requests. However, any non-pointer,
5913	// non-interface field appearing in ForceSendFields will be sent to the
5914	// server regardless of whether the field is empty or not. This may be
5915	// used to include empty fields in Patch requests.
5916	ForceSendFields []string `json:"-"`
5917
5918	// NullFields is a list of field names (e.g. "Status") to include in API
5919	// requests with the JSON null value. By default, fields with empty
5920	// values are omitted from API requests. However, any field with an
5921	// empty value appearing in NullFields will be sent to the server as
5922	// null. It is an error if a field in this list has a non-empty value.
5923	// This may be used to include null fields in Patch requests.
5924	NullFields []string `json:"-"`
5925}
5926
5927func (s *GoogleCloudDialogflowCxV3TestError) MarshalJSON() ([]byte, error) {
5928	type NoMethod GoogleCloudDialogflowCxV3TestError
5929	raw := NoMethod(*s)
5930	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5931}
5932
5933// GoogleCloudDialogflowCxV3TestRunDifference: The description of
5934// differences between original and replayed agent output.
5935type GoogleCloudDialogflowCxV3TestRunDifference struct {
5936	// Description: A description of the diff, showing the actual output vs
5937	// expected output.
5938	Description string `json:"description,omitempty"`
5939
5940	// Type: The type of diff.
5941	//
5942	// Possible values:
5943	//   "DIFF_TYPE_UNSPECIFIED" - Should never be used.
5944	//   "INTENT" - The intent.
5945	//   "PAGE" - The page.
5946	//   "PARAMETERS" - The parameters.
5947	//   "UTTERANCE" - The message utterance.
5948	Type string `json:"type,omitempty"`
5949
5950	// ForceSendFields is a list of field names (e.g. "Description") to
5951	// unconditionally include in API requests. By default, fields with
5952	// empty values are omitted from API requests. However, any non-pointer,
5953	// non-interface field appearing in ForceSendFields will be sent to the
5954	// server regardless of whether the field is empty or not. This may be
5955	// used to include empty fields in Patch requests.
5956	ForceSendFields []string `json:"-"`
5957
5958	// NullFields is a list of field names (e.g. "Description") to include
5959	// in API requests with the JSON null value. By default, fields with
5960	// empty values are omitted from API requests. However, any field with
5961	// an empty value appearing in NullFields will be sent to the server as
5962	// null. It is an error if a field in this list has a non-empty value.
5963	// This may be used to include null fields in Patch requests.
5964	NullFields []string `json:"-"`
5965}
5966
5967func (s *GoogleCloudDialogflowCxV3TestRunDifference) MarshalJSON() ([]byte, error) {
5968	type NoMethod GoogleCloudDialogflowCxV3TestRunDifference
5969	raw := NoMethod(*s)
5970	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5971}
5972
5973// GoogleCloudDialogflowCxV3TextInput: Represents the natural language
5974// text to be processed.
5975type GoogleCloudDialogflowCxV3TextInput struct {
5976	// Text: Required. The UTF-8 encoded natural language text to be
5977	// processed. Text length must not exceed 256 characters.
5978	Text string `json:"text,omitempty"`
5979
5980	// ForceSendFields is a list of field names (e.g. "Text") to
5981	// unconditionally include in API requests. By default, fields with
5982	// empty values are omitted from API requests. However, any non-pointer,
5983	// non-interface field appearing in ForceSendFields will be sent to the
5984	// server regardless of whether the field is empty or not. This may be
5985	// used to include empty fields in Patch requests.
5986	ForceSendFields []string `json:"-"`
5987
5988	// NullFields is a list of field names (e.g. "Text") to include in API
5989	// requests with the JSON null value. By default, fields with empty
5990	// values are omitted from API requests. However, any field with an
5991	// empty value appearing in NullFields will be sent to the server as
5992	// null. It is an error if a field in this list has a non-empty value.
5993	// This may be used to include null fields in Patch requests.
5994	NullFields []string `json:"-"`
5995}
5996
5997func (s *GoogleCloudDialogflowCxV3TextInput) MarshalJSON() ([]byte, error) {
5998	type NoMethod GoogleCloudDialogflowCxV3TextInput
5999	raw := NoMethod(*s)
6000	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6001}
6002
6003// GoogleCloudDialogflowCxV3TrainFlowRequest: The request message for
6004// Flows.TrainFlow.
6005type GoogleCloudDialogflowCxV3TrainFlowRequest struct {
6006}
6007
6008// GoogleCloudDialogflowCxV3TransitionCoverage: Transition coverage
6009// represents the percentage of all possible page transitions
6010// (page-level transition routes and event handlers, excluding
6011// transition route groups) present within any of a parent's test cases.
6012type GoogleCloudDialogflowCxV3TransitionCoverage struct {
6013	// CoverageScore: The percent of transitions in the agent that are
6014	// covered.
6015	CoverageScore float64 `json:"coverageScore,omitempty"`
6016
6017	// Transitions: The list of Transitions present in the agent.
6018	Transitions []*GoogleCloudDialogflowCxV3TransitionCoverageTransition `json:"transitions,omitempty"`
6019
6020	// ForceSendFields is a list of field names (e.g. "CoverageScore") to
6021	// unconditionally include in API requests. By default, fields with
6022	// empty values are omitted from API requests. However, any non-pointer,
6023	// non-interface field appearing in ForceSendFields will be sent to the
6024	// server regardless of whether the field is empty or not. This may be
6025	// used to include empty fields in Patch requests.
6026	ForceSendFields []string `json:"-"`
6027
6028	// NullFields is a list of field names (e.g. "CoverageScore") to include
6029	// in API requests with the JSON null value. By default, fields with
6030	// empty values are omitted from API requests. However, any field with
6031	// an empty value appearing in NullFields will be sent to the server as
6032	// null. It is an error if a field in this list has a non-empty value.
6033	// This may be used to include null fields in Patch requests.
6034	NullFields []string `json:"-"`
6035}
6036
6037func (s *GoogleCloudDialogflowCxV3TransitionCoverage) MarshalJSON() ([]byte, error) {
6038	type NoMethod GoogleCloudDialogflowCxV3TransitionCoverage
6039	raw := NoMethod(*s)
6040	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6041}
6042
6043func (s *GoogleCloudDialogflowCxV3TransitionCoverage) UnmarshalJSON(data []byte) error {
6044	type NoMethod GoogleCloudDialogflowCxV3TransitionCoverage
6045	var s1 struct {
6046		CoverageScore gensupport.JSONFloat64 `json:"coverageScore"`
6047		*NoMethod
6048	}
6049	s1.NoMethod = (*NoMethod)(s)
6050	if err := json.Unmarshal(data, &s1); err != nil {
6051		return err
6052	}
6053	s.CoverageScore = float64(s1.CoverageScore)
6054	return nil
6055}
6056
6057// GoogleCloudDialogflowCxV3TransitionCoverageTransition: A transition
6058// in a page.
6059type GoogleCloudDialogflowCxV3TransitionCoverageTransition struct {
6060	// Covered: Whether or not the transition is covered by at least one of
6061	// the agent's test cases.
6062	Covered bool `json:"covered,omitempty"`
6063
6064	// EventHandler: Event handler.
6065	EventHandler *GoogleCloudDialogflowCxV3EventHandler `json:"eventHandler,omitempty"`
6066
6067	// Index: The index of a transition in the transition list. Starting
6068	// from 0.
6069	Index int64 `json:"index,omitempty"`
6070
6071	// Source: The start node of a transition.
6072	Source *GoogleCloudDialogflowCxV3TransitionCoverageTransitionNode `json:"source,omitempty"`
6073
6074	// Target: The end node of a transition.
6075	Target *GoogleCloudDialogflowCxV3TransitionCoverageTransitionNode `json:"target,omitempty"`
6076
6077	// TransitionRoute: Intent route or condition route.
6078	TransitionRoute *GoogleCloudDialogflowCxV3TransitionRoute `json:"transitionRoute,omitempty"`
6079
6080	// ForceSendFields is a list of field names (e.g. "Covered") to
6081	// unconditionally include in API requests. By default, fields with
6082	// empty values are omitted from API requests. However, any non-pointer,
6083	// non-interface field appearing in ForceSendFields will be sent to the
6084	// server regardless of whether the field is empty or not. This may be
6085	// used to include empty fields in Patch requests.
6086	ForceSendFields []string `json:"-"`
6087
6088	// NullFields is a list of field names (e.g. "Covered") to include in
6089	// API requests with the JSON null value. By default, fields with empty
6090	// values are omitted from API requests. However, any field with an
6091	// empty value appearing in NullFields will be sent to the server as
6092	// null. It is an error if a field in this list has a non-empty value.
6093	// This may be used to include null fields in Patch requests.
6094	NullFields []string `json:"-"`
6095}
6096
6097func (s *GoogleCloudDialogflowCxV3TransitionCoverageTransition) MarshalJSON() ([]byte, error) {
6098	type NoMethod GoogleCloudDialogflowCxV3TransitionCoverageTransition
6099	raw := NoMethod(*s)
6100	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6101}
6102
6103// GoogleCloudDialogflowCxV3TransitionCoverageTransitionNode: The source
6104// or target of a transition.
6105type GoogleCloudDialogflowCxV3TransitionCoverageTransitionNode struct {
6106	// Flow: Indicates a transition to a Flow. Only some fields such as name
6107	// and displayname will be set.
6108	Flow *GoogleCloudDialogflowCxV3Flow `json:"flow,omitempty"`
6109
6110	// Page: Indicates a transition to a Page. Only some fields such as name
6111	// and displayname will be set.
6112	Page *GoogleCloudDialogflowCxV3Page `json:"page,omitempty"`
6113
6114	// ForceSendFields is a list of field names (e.g. "Flow") to
6115	// unconditionally include in API requests. By default, fields with
6116	// empty values are omitted from API requests. However, any non-pointer,
6117	// non-interface field appearing in ForceSendFields will be sent to the
6118	// server regardless of whether the field is empty or not. This may be
6119	// used to include empty fields in Patch requests.
6120	ForceSendFields []string `json:"-"`
6121
6122	// NullFields is a list of field names (e.g. "Flow") to include in API
6123	// requests with the JSON null value. By default, fields with empty
6124	// values are omitted from API requests. However, any field with an
6125	// empty value appearing in NullFields will be sent to the server as
6126	// null. It is an error if a field in this list has a non-empty value.
6127	// This may be used to include null fields in Patch requests.
6128	NullFields []string `json:"-"`
6129}
6130
6131func (s *GoogleCloudDialogflowCxV3TransitionCoverageTransitionNode) MarshalJSON() ([]byte, error) {
6132	type NoMethod GoogleCloudDialogflowCxV3TransitionCoverageTransitionNode
6133	raw := NoMethod(*s)
6134	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6135}
6136
6137// GoogleCloudDialogflowCxV3TransitionRoute: A transition route
6138// specifies a intent that can be matched and/or a data condition that
6139// can be evaluated during a session. When a specified transition is
6140// matched, the following actions are taken in order: * If there is a
6141// `trigger_fulfillment` associated with the transition, it will be
6142// called. * If there is a `target_page` associated with the transition,
6143// the session will transition into the specified page. * If there is a
6144// `target_flow` associated with the transition, the session will
6145// transition into the specified flow.
6146type GoogleCloudDialogflowCxV3TransitionRoute struct {
6147	// Condition: The condition to evaluate against form parameters or
6148	// session parameters. See the conditions reference
6149	// (https://cloud.google.com/dialogflow/cx/docs/reference/condition). At
6150	// least one of `intent` or `condition` must be specified. When both
6151	// `intent` and `condition` are specified, the transition can only
6152	// happen when both are fulfilled.
6153	Condition string `json:"condition,omitempty"`
6154
6155	// Intent: The unique identifier of an Intent. Format:
6156	// `projects//locations//agents//intents/`. Indicates that the
6157	// transition can only happen when the given intent is matched. At least
6158	// one of `intent` or `condition` must be specified. When both `intent`
6159	// and `condition` are specified, the transition can only happen when
6160	// both are fulfilled.
6161	Intent string `json:"intent,omitempty"`
6162
6163	// Name: Output only. The unique identifier of this transition route.
6164	Name string `json:"name,omitempty"`
6165
6166	// TargetFlow: The target flow to transition to. Format:
6167	// `projects//locations//agents//flows/`.
6168	TargetFlow string `json:"targetFlow,omitempty"`
6169
6170	// TargetPage: The target page to transition to. Format:
6171	// `projects//locations//agents//flows//pages/`.
6172	TargetPage string `json:"targetPage,omitempty"`
6173
6174	// TriggerFulfillment: The fulfillment to call when the condition is
6175	// satisfied. At least one of `trigger_fulfillment` and `target` must be
6176	// specified. When both are defined, `trigger_fulfillment` is executed
6177	// first.
6178	TriggerFulfillment *GoogleCloudDialogflowCxV3Fulfillment `json:"triggerFulfillment,omitempty"`
6179
6180	// ForceSendFields is a list of field names (e.g. "Condition") to
6181	// unconditionally include in API requests. By default, fields with
6182	// empty values are omitted from API requests. However, any non-pointer,
6183	// non-interface field appearing in ForceSendFields will be sent to the
6184	// server regardless of whether the field is empty or not. This may be
6185	// used to include empty fields in Patch requests.
6186	ForceSendFields []string `json:"-"`
6187
6188	// NullFields is a list of field names (e.g. "Condition") to include in
6189	// API requests with the JSON null value. By default, fields with empty
6190	// values are omitted from API requests. However, any field with an
6191	// empty value appearing in NullFields will be sent to the server as
6192	// null. It is an error if a field in this list has a non-empty value.
6193	// This may be used to include null fields in Patch requests.
6194	NullFields []string `json:"-"`
6195}
6196
6197func (s *GoogleCloudDialogflowCxV3TransitionRoute) MarshalJSON() ([]byte, error) {
6198	type NoMethod GoogleCloudDialogflowCxV3TransitionRoute
6199	raw := NoMethod(*s)
6200	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6201}
6202
6203// GoogleCloudDialogflowCxV3TransitionRouteGroup: An
6204// TransitionRouteGroup represents a group of `TransitionRoutes` to be
6205// used by a Page.
6206type GoogleCloudDialogflowCxV3TransitionRouteGroup struct {
6207	// DisplayName: Required. The human-readable name of the transition
6208	// route group, unique within the Agent. The display name can be no
6209	// longer than 30 characters.
6210	DisplayName string `json:"displayName,omitempty"`
6211
6212	// Name: The unique identifier of the transition route group.
6213	// TransitionRouteGroups.CreateTransitionRouteGroup populates the name
6214	// automatically. Format:
6215	// `projects//locations//agents//flows//transitionRouteGroups/`.
6216	Name string `json:"name,omitempty"`
6217
6218	// TransitionRoutes: Transition routes associated with the
6219	// TransitionRouteGroup.
6220	TransitionRoutes []*GoogleCloudDialogflowCxV3TransitionRoute `json:"transitionRoutes,omitempty"`
6221
6222	// ServerResponse contains the HTTP response code and headers from the
6223	// server.
6224	googleapi.ServerResponse `json:"-"`
6225
6226	// ForceSendFields is a list of field names (e.g. "DisplayName") to
6227	// unconditionally include in API requests. By default, fields with
6228	// empty values are omitted from API requests. However, any non-pointer,
6229	// non-interface field appearing in ForceSendFields will be sent to the
6230	// server regardless of whether the field is empty or not. This may be
6231	// used to include empty fields in Patch requests.
6232	ForceSendFields []string `json:"-"`
6233
6234	// NullFields is a list of field names (e.g. "DisplayName") to include
6235	// in API requests with the JSON null value. By default, fields with
6236	// empty values are omitted from API requests. However, any field with
6237	// an empty value appearing in NullFields will be sent to the server as
6238	// null. It is an error if a field in this list has a non-empty value.
6239	// This may be used to include null fields in Patch requests.
6240	NullFields []string `json:"-"`
6241}
6242
6243func (s *GoogleCloudDialogflowCxV3TransitionRouteGroup) MarshalJSON() ([]byte, error) {
6244	type NoMethod GoogleCloudDialogflowCxV3TransitionRouteGroup
6245	raw := NoMethod(*s)
6246	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6247}
6248
6249// GoogleCloudDialogflowCxV3TransitionRouteGroupCoverage: Transition
6250// route group coverage represents the percentage of all possible
6251// transition routes present within any of a parent's test cases. The
6252// results are grouped by the transition route group.
6253type GoogleCloudDialogflowCxV3TransitionRouteGroupCoverage struct {
6254	// CoverageScore: The percent of transition routes in all the transition
6255	// route groups that are covered.
6256	CoverageScore float64 `json:"coverageScore,omitempty"`
6257
6258	// Coverages: Transition route group coverages.
6259	Coverages []*GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverage `json:"coverages,omitempty"`
6260
6261	// ForceSendFields is a list of field names (e.g. "CoverageScore") to
6262	// unconditionally include in API requests. By default, fields with
6263	// empty values are omitted from API requests. However, any non-pointer,
6264	// non-interface field appearing in ForceSendFields will be sent to the
6265	// server regardless of whether the field is empty or not. This may be
6266	// used to include empty fields in Patch requests.
6267	ForceSendFields []string `json:"-"`
6268
6269	// NullFields is a list of field names (e.g. "CoverageScore") to include
6270	// in API requests with the JSON null value. By default, fields with
6271	// empty values are omitted from API requests. However, any field with
6272	// an empty value appearing in NullFields will be sent to the server as
6273	// null. It is an error if a field in this list has a non-empty value.
6274	// This may be used to include null fields in Patch requests.
6275	NullFields []string `json:"-"`
6276}
6277
6278func (s *GoogleCloudDialogflowCxV3TransitionRouteGroupCoverage) MarshalJSON() ([]byte, error) {
6279	type NoMethod GoogleCloudDialogflowCxV3TransitionRouteGroupCoverage
6280	raw := NoMethod(*s)
6281	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6282}
6283
6284func (s *GoogleCloudDialogflowCxV3TransitionRouteGroupCoverage) UnmarshalJSON(data []byte) error {
6285	type NoMethod GoogleCloudDialogflowCxV3TransitionRouteGroupCoverage
6286	var s1 struct {
6287		CoverageScore gensupport.JSONFloat64 `json:"coverageScore"`
6288		*NoMethod
6289	}
6290	s1.NoMethod = (*NoMethod)(s)
6291	if err := json.Unmarshal(data, &s1); err != nil {
6292		return err
6293	}
6294	s.CoverageScore = float64(s1.CoverageScore)
6295	return nil
6296}
6297
6298// GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverage:
6299// Coverage result message for one transition route group.
6300type GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverage struct {
6301	// CoverageScore: The percent of transition routes in the transition
6302	// route group that are covered.
6303	CoverageScore float64 `json:"coverageScore,omitempty"`
6304
6305	// RouteGroup: Transition route group metadata. Only name and
6306	// displayName will be set.
6307	RouteGroup *GoogleCloudDialogflowCxV3TransitionRouteGroup `json:"routeGroup,omitempty"`
6308
6309	// Transitions: The list of transition routes and coverage in the
6310	// transition route group.
6311	Transitions []*GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverageTransition `json:"transitions,omitempty"`
6312
6313	// ForceSendFields is a list of field names (e.g. "CoverageScore") to
6314	// unconditionally include in API requests. By default, fields with
6315	// empty values are omitted from API requests. However, any non-pointer,
6316	// non-interface field appearing in ForceSendFields will be sent to the
6317	// server regardless of whether the field is empty or not. This may be
6318	// used to include empty fields in Patch requests.
6319	ForceSendFields []string `json:"-"`
6320
6321	// NullFields is a list of field names (e.g. "CoverageScore") to include
6322	// in API requests with the JSON null value. By default, fields with
6323	// empty values are omitted from API requests. However, any field with
6324	// an empty value appearing in NullFields will be sent to the server as
6325	// null. It is an error if a field in this list has a non-empty value.
6326	// This may be used to include null fields in Patch requests.
6327	NullFields []string `json:"-"`
6328}
6329
6330func (s *GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverage) MarshalJSON() ([]byte, error) {
6331	type NoMethod GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverage
6332	raw := NoMethod(*s)
6333	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6334}
6335
6336func (s *GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverage) UnmarshalJSON(data []byte) error {
6337	type NoMethod GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverage
6338	var s1 struct {
6339		CoverageScore gensupport.JSONFloat64 `json:"coverageScore"`
6340		*NoMethod
6341	}
6342	s1.NoMethod = (*NoMethod)(s)
6343	if err := json.Unmarshal(data, &s1); err != nil {
6344		return err
6345	}
6346	s.CoverageScore = float64(s1.CoverageScore)
6347	return nil
6348}
6349
6350// GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverageTransitio
6351// n: A transition coverage in a transition route group.
6352type GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverageTransition struct {
6353	// Covered: Whether or not the transition route is covered by at least
6354	// one of the agent's test cases.
6355	Covered bool `json:"covered,omitempty"`
6356
6357	// TransitionRoute: Intent route or condition route.
6358	TransitionRoute *GoogleCloudDialogflowCxV3TransitionRoute `json:"transitionRoute,omitempty"`
6359
6360	// ForceSendFields is a list of field names (e.g. "Covered") to
6361	// unconditionally include in API requests. By default, fields with
6362	// empty values are omitted from API requests. However, any non-pointer,
6363	// non-interface field appearing in ForceSendFields will be sent to the
6364	// server regardless of whether the field is empty or not. This may be
6365	// used to include empty fields in Patch requests.
6366	ForceSendFields []string `json:"-"`
6367
6368	// NullFields is a list of field names (e.g. "Covered") to include in
6369	// API requests with the JSON null value. By default, fields with empty
6370	// values are omitted from API requests. However, any field with an
6371	// empty value appearing in NullFields will be sent to the server as
6372	// null. It is an error if a field in this list has a non-empty value.
6373	// This may be used to include null fields in Patch requests.
6374	NullFields []string `json:"-"`
6375}
6376
6377func (s *GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverageTransition) MarshalJSON() ([]byte, error) {
6378	type NoMethod GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverageTransition
6379	raw := NoMethod(*s)
6380	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6381}
6382
6383// GoogleCloudDialogflowCxV3UpdateDocumentOperationMetadata: Metadata
6384// for UpdateDocument operation.
6385type GoogleCloudDialogflowCxV3UpdateDocumentOperationMetadata struct {
6386	// GenericMetadata: The generic information of the operation.
6387	GenericMetadata *GoogleCloudDialogflowCxV3GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
6388
6389	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
6390	// unconditionally include in API requests. By default, fields with
6391	// empty values are omitted from API requests. However, any non-pointer,
6392	// non-interface field appearing in ForceSendFields will be sent to the
6393	// server regardless of whether the field is empty or not. This may be
6394	// used to include empty fields in Patch requests.
6395	ForceSendFields []string `json:"-"`
6396
6397	// NullFields is a list of field names (e.g. "GenericMetadata") to
6398	// include in API requests with the JSON null value. By default, fields
6399	// with empty values are omitted from API requests. However, any field
6400	// with an empty value appearing in NullFields will be sent to the
6401	// server as null. It is an error if a field in this list has a
6402	// non-empty value. This may be used to include null fields in Patch
6403	// requests.
6404	NullFields []string `json:"-"`
6405}
6406
6407func (s *GoogleCloudDialogflowCxV3UpdateDocumentOperationMetadata) MarshalJSON() ([]byte, error) {
6408	type NoMethod GoogleCloudDialogflowCxV3UpdateDocumentOperationMetadata
6409	raw := NoMethod(*s)
6410	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6411}
6412
6413// GoogleCloudDialogflowCxV3ValidateAgentRequest: The request message
6414// for Agents.ValidateAgent.
6415type GoogleCloudDialogflowCxV3ValidateAgentRequest struct {
6416	// LanguageCode: If not specified, the agent's default language is used.
6417	LanguageCode string `json:"languageCode,omitempty"`
6418
6419	// ForceSendFields is a list of field names (e.g. "LanguageCode") to
6420	// unconditionally include in API requests. By default, fields with
6421	// empty values are omitted from API requests. However, any non-pointer,
6422	// non-interface field appearing in ForceSendFields will be sent to the
6423	// server regardless of whether the field is empty or not. This may be
6424	// used to include empty fields in Patch requests.
6425	ForceSendFields []string `json:"-"`
6426
6427	// NullFields is a list of field names (e.g. "LanguageCode") to include
6428	// in API requests with the JSON null value. By default, fields with
6429	// empty values are omitted from API requests. However, any field with
6430	// an empty value appearing in NullFields will be sent to the server as
6431	// null. It is an error if a field in this list has a non-empty value.
6432	// This may be used to include null fields in Patch requests.
6433	NullFields []string `json:"-"`
6434}
6435
6436func (s *GoogleCloudDialogflowCxV3ValidateAgentRequest) MarshalJSON() ([]byte, error) {
6437	type NoMethod GoogleCloudDialogflowCxV3ValidateAgentRequest
6438	raw := NoMethod(*s)
6439	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6440}
6441
6442// GoogleCloudDialogflowCxV3ValidateFlowRequest: The request message for
6443// Flows.ValidateFlow.
6444type GoogleCloudDialogflowCxV3ValidateFlowRequest struct {
6445	// LanguageCode: If not specified, the agent's default language is used.
6446	LanguageCode string `json:"languageCode,omitempty"`
6447
6448	// ForceSendFields is a list of field names (e.g. "LanguageCode") to
6449	// unconditionally include in API requests. By default, fields with
6450	// empty values are omitted from API requests. However, any non-pointer,
6451	// non-interface field appearing in ForceSendFields will be sent to the
6452	// server regardless of whether the field is empty or not. This may be
6453	// used to include empty fields in Patch requests.
6454	ForceSendFields []string `json:"-"`
6455
6456	// NullFields is a list of field names (e.g. "LanguageCode") to include
6457	// in API requests with the JSON null value. By default, fields with
6458	// empty values are omitted from API requests. However, any field with
6459	// an empty value appearing in NullFields will be sent to the server as
6460	// null. It is an error if a field in this list has a non-empty value.
6461	// This may be used to include null fields in Patch requests.
6462	NullFields []string `json:"-"`
6463}
6464
6465func (s *GoogleCloudDialogflowCxV3ValidateFlowRequest) MarshalJSON() ([]byte, error) {
6466	type NoMethod GoogleCloudDialogflowCxV3ValidateFlowRequest
6467	raw := NoMethod(*s)
6468	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6469}
6470
6471// GoogleCloudDialogflowCxV3ValidationMessage: Agent/flow validation
6472// message.
6473type GoogleCloudDialogflowCxV3ValidationMessage struct {
6474	// Detail: The message detail.
6475	Detail string `json:"detail,omitempty"`
6476
6477	// ResourceNames: The resource names of the resources where the message
6478	// is found.
6479	ResourceNames []*GoogleCloudDialogflowCxV3ResourceName `json:"resourceNames,omitempty"`
6480
6481	// ResourceType: The type of the resources where the message is found.
6482	//
6483	// Possible values:
6484	//   "RESOURCE_TYPE_UNSPECIFIED" - Unspecified.
6485	//   "AGENT" - Agent.
6486	//   "INTENT" - Intent.
6487	//   "INTENT_TRAINING_PHRASE" - Intent training phrase.
6488	//   "INTENT_PARAMETER" - Intent parameter.
6489	//   "INTENTS" - Multiple intents.
6490	//   "INTENT_TRAINING_PHRASES" - Multiple training phrases.
6491	//   "ENTITY_TYPE" - Entity type.
6492	//   "ENTITY_TYPES" - Multiple entity types.
6493	//   "WEBHOOK" - Webhook.
6494	//   "FLOW" - Flow.
6495	//   "PAGE" - Page.
6496	//   "PAGES" - Multiple pages.
6497	//   "TRANSITION_ROUTE_GROUP" - Transition route group.
6498	ResourceType string `json:"resourceType,omitempty"`
6499
6500	// Resources: The names of the resources where the message is found.
6501	Resources []string `json:"resources,omitempty"`
6502
6503	// Severity: Indicates the severity of the message.
6504	//
6505	// Possible values:
6506	//   "SEVERITY_UNSPECIFIED" - Unspecified.
6507	//   "INFO" - The agent doesn't follow Dialogflow best practices.
6508	//   "WARNING" - The agent may not behave as expected.
6509	//   "ERROR" - The agent may experience failures.
6510	Severity string `json:"severity,omitempty"`
6511
6512	// ForceSendFields is a list of field names (e.g. "Detail") to
6513	// unconditionally include in API requests. By default, fields with
6514	// empty values are omitted from API requests. However, any non-pointer,
6515	// non-interface field appearing in ForceSendFields will be sent to the
6516	// server regardless of whether the field is empty or not. This may be
6517	// used to include empty fields in Patch requests.
6518	ForceSendFields []string `json:"-"`
6519
6520	// NullFields is a list of field names (e.g. "Detail") to include in API
6521	// requests with the JSON null value. By default, fields with empty
6522	// values are omitted from API requests. However, any field with an
6523	// empty value appearing in NullFields will be sent to the server as
6524	// null. It is an error if a field in this list has a non-empty value.
6525	// This may be used to include null fields in Patch requests.
6526	NullFields []string `json:"-"`
6527}
6528
6529func (s *GoogleCloudDialogflowCxV3ValidationMessage) MarshalJSON() ([]byte, error) {
6530	type NoMethod GoogleCloudDialogflowCxV3ValidationMessage
6531	raw := NoMethod(*s)
6532	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6533}
6534
6535// GoogleCloudDialogflowCxV3VariantsHistory: The history of variants
6536// update.
6537type GoogleCloudDialogflowCxV3VariantsHistory struct {
6538	// UpdateTime: Update time of the variants.
6539	UpdateTime string `json:"updateTime,omitempty"`
6540
6541	// VersionVariants: The flow versions as the variants.
6542	VersionVariants *GoogleCloudDialogflowCxV3VersionVariants `json:"versionVariants,omitempty"`
6543
6544	// ForceSendFields is a list of field names (e.g. "UpdateTime") to
6545	// unconditionally include in API requests. By default, fields with
6546	// empty values are omitted from API requests. However, any non-pointer,
6547	// non-interface field appearing in ForceSendFields will be sent to the
6548	// server regardless of whether the field is empty or not. This may be
6549	// used to include empty fields in Patch requests.
6550	ForceSendFields []string `json:"-"`
6551
6552	// NullFields is a list of field names (e.g. "UpdateTime") to include in
6553	// API requests with the JSON null value. By default, fields with empty
6554	// values are omitted from API requests. However, any field with an
6555	// empty value appearing in NullFields will be sent to the server as
6556	// null. It is an error if a field in this list has a non-empty value.
6557	// This may be used to include null fields in Patch requests.
6558	NullFields []string `json:"-"`
6559}
6560
6561func (s *GoogleCloudDialogflowCxV3VariantsHistory) MarshalJSON() ([]byte, error) {
6562	type NoMethod GoogleCloudDialogflowCxV3VariantsHistory
6563	raw := NoMethod(*s)
6564	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6565}
6566
6567// GoogleCloudDialogflowCxV3Version: Represents a version of a flow.
6568type GoogleCloudDialogflowCxV3Version struct {
6569	// CreateTime: Output only. Create time of the version.
6570	CreateTime string `json:"createTime,omitempty"`
6571
6572	// Description: The description of the version. The maximum length is
6573	// 500 characters. If exceeded, the request is rejected.
6574	Description string `json:"description,omitempty"`
6575
6576	// DisplayName: Required. The human-readable name of the version. Limit
6577	// of 64 characters.
6578	DisplayName string `json:"displayName,omitempty"`
6579
6580	// Name: Format: projects//locations//agents//flows//versions/. Version
6581	// ID is a self-increasing number generated by Dialogflow upon version
6582	// creation.
6583	Name string `json:"name,omitempty"`
6584
6585	// NluSettings: Output only. The NLU settings of the flow at version
6586	// creation.
6587	NluSettings *GoogleCloudDialogflowCxV3NluSettings `json:"nluSettings,omitempty"`
6588
6589	// State: Output only. The state of this version. This field is
6590	// read-only and cannot be set by create and update methods.
6591	//
6592	// Possible values:
6593	//   "STATE_UNSPECIFIED" - Not specified. This value is not used.
6594	//   "RUNNING" - Version is not ready to serve (e.g. training is
6595	// running).
6596	//   "SUCCEEDED" - Training has succeeded and this version is ready to
6597	// serve.
6598	//   "FAILED" - Version training failed.
6599	State string `json:"state,omitempty"`
6600
6601	// ServerResponse contains the HTTP response code and headers from the
6602	// server.
6603	googleapi.ServerResponse `json:"-"`
6604
6605	// ForceSendFields is a list of field names (e.g. "CreateTime") to
6606	// unconditionally include in API requests. By default, fields with
6607	// empty values are omitted from API requests. However, any non-pointer,
6608	// non-interface field appearing in ForceSendFields will be sent to the
6609	// server regardless of whether the field is empty or not. This may be
6610	// used to include empty fields in Patch requests.
6611	ForceSendFields []string `json:"-"`
6612
6613	// NullFields is a list of field names (e.g. "CreateTime") to include in
6614	// API requests with the JSON null value. By default, fields with empty
6615	// values are omitted from API requests. However, any field with an
6616	// empty value appearing in NullFields will be sent to the server as
6617	// null. It is an error if a field in this list has a non-empty value.
6618	// This may be used to include null fields in Patch requests.
6619	NullFields []string `json:"-"`
6620}
6621
6622func (s *GoogleCloudDialogflowCxV3Version) MarshalJSON() ([]byte, error) {
6623	type NoMethod GoogleCloudDialogflowCxV3Version
6624	raw := NoMethod(*s)
6625	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6626}
6627
6628// GoogleCloudDialogflowCxV3VersionVariants: A list of flow version
6629// variants.
6630type GoogleCloudDialogflowCxV3VersionVariants struct {
6631	// Variants: A list of flow version variants.
6632	Variants []*GoogleCloudDialogflowCxV3VersionVariantsVariant `json:"variants,omitempty"`
6633
6634	// ForceSendFields is a list of field names (e.g. "Variants") to
6635	// unconditionally include in API requests. By default, fields with
6636	// empty values are omitted from API requests. However, any non-pointer,
6637	// non-interface field appearing in ForceSendFields will be sent to the
6638	// server regardless of whether the field is empty or not. This may be
6639	// used to include empty fields in Patch requests.
6640	ForceSendFields []string `json:"-"`
6641
6642	// NullFields is a list of field names (e.g. "Variants") to include in
6643	// API requests with the JSON null value. By default, fields with empty
6644	// values are omitted from API requests. However, any field with an
6645	// empty value appearing in NullFields will be sent to the server as
6646	// null. It is an error if a field in this list has a non-empty value.
6647	// This may be used to include null fields in Patch requests.
6648	NullFields []string `json:"-"`
6649}
6650
6651func (s *GoogleCloudDialogflowCxV3VersionVariants) MarshalJSON() ([]byte, error) {
6652	type NoMethod GoogleCloudDialogflowCxV3VersionVariants
6653	raw := NoMethod(*s)
6654	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6655}
6656
6657// GoogleCloudDialogflowCxV3VersionVariantsVariant: A single flow
6658// version with specified traffic allocation.
6659type GoogleCloudDialogflowCxV3VersionVariantsVariant struct {
6660	// IsControlGroup: Whether the variant is for the control group.
6661	IsControlGroup bool `json:"isControlGroup,omitempty"`
6662
6663	// TrafficAllocation: Percentage of the traffic which should be routed
6664	// to this version of flow. Traffic allocation for a single flow must
6665	// sum up to 1.0.
6666	TrafficAllocation float64 `json:"trafficAllocation,omitempty"`
6667
6668	// Version: The name of the flow version. Format:
6669	// `projects//locations//agents//flows//versions/`.
6670	Version string `json:"version,omitempty"`
6671
6672	// ForceSendFields is a list of field names (e.g. "IsControlGroup") to
6673	// unconditionally include in API requests. By default, fields with
6674	// empty values are omitted from API requests. However, any non-pointer,
6675	// non-interface field appearing in ForceSendFields will be sent to the
6676	// server regardless of whether the field is empty or not. This may be
6677	// used to include empty fields in Patch requests.
6678	ForceSendFields []string `json:"-"`
6679
6680	// NullFields is a list of field names (e.g. "IsControlGroup") to
6681	// include in API requests with the JSON null value. By default, fields
6682	// with empty values are omitted from API requests. However, any field
6683	// with an empty value appearing in NullFields will be sent to the
6684	// server as null. It is an error if a field in this list has a
6685	// non-empty value. This may be used to include null fields in Patch
6686	// requests.
6687	NullFields []string `json:"-"`
6688}
6689
6690func (s *GoogleCloudDialogflowCxV3VersionVariantsVariant) MarshalJSON() ([]byte, error) {
6691	type NoMethod GoogleCloudDialogflowCxV3VersionVariantsVariant
6692	raw := NoMethod(*s)
6693	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6694}
6695
6696func (s *GoogleCloudDialogflowCxV3VersionVariantsVariant) UnmarshalJSON(data []byte) error {
6697	type NoMethod GoogleCloudDialogflowCxV3VersionVariantsVariant
6698	var s1 struct {
6699		TrafficAllocation gensupport.JSONFloat64 `json:"trafficAllocation"`
6700		*NoMethod
6701	}
6702	s1.NoMethod = (*NoMethod)(s)
6703	if err := json.Unmarshal(data, &s1); err != nil {
6704		return err
6705	}
6706	s.TrafficAllocation = float64(s1.TrafficAllocation)
6707	return nil
6708}
6709
6710// GoogleCloudDialogflowCxV3VoiceSelectionParams: Description of which
6711// voice to use for speech synthesis.
6712type GoogleCloudDialogflowCxV3VoiceSelectionParams struct {
6713	// Name: Optional. The name of the voice. If not set, the service will
6714	// choose a voice based on the other parameters such as language_code
6715	// and ssml_gender. For the list of available voices, please refer to
6716	// Supported voices and languages
6717	// (https://cloud.google.com/text-to-speech/docs/voices).
6718	Name string `json:"name,omitempty"`
6719
6720	// SsmlGender: Optional. The preferred gender of the voice. If not set,
6721	// the service will choose a voice based on the other parameters such as
6722	// language_code and name. Note that this is only a preference, not
6723	// requirement. If a voice of the appropriate gender is not available,
6724	// the synthesizer substitutes a voice with a different gender rather
6725	// than failing the request.
6726	//
6727	// Possible values:
6728	//   "SSML_VOICE_GENDER_UNSPECIFIED" - An unspecified gender, which
6729	// means that the client doesn't care which gender the selected voice
6730	// will have.
6731	//   "SSML_VOICE_GENDER_MALE" - A male voice.
6732	//   "SSML_VOICE_GENDER_FEMALE" - A female voice.
6733	//   "SSML_VOICE_GENDER_NEUTRAL" - A gender-neutral voice.
6734	SsmlGender string `json:"ssmlGender,omitempty"`
6735
6736	// ForceSendFields is a list of field names (e.g. "Name") to
6737	// unconditionally include in API requests. By default, fields with
6738	// empty values are omitted from API requests. However, any non-pointer,
6739	// non-interface field appearing in ForceSendFields will be sent to the
6740	// server regardless of whether the field is empty or not. This may be
6741	// used to include empty fields in Patch requests.
6742	ForceSendFields []string `json:"-"`
6743
6744	// NullFields is a list of field names (e.g. "Name") to include in API
6745	// requests with the JSON null value. By default, fields with empty
6746	// values are omitted from API requests. However, any field with an
6747	// empty value appearing in NullFields will be sent to the server as
6748	// null. It is an error if a field in this list has a non-empty value.
6749	// This may be used to include null fields in Patch requests.
6750	NullFields []string `json:"-"`
6751}
6752
6753func (s *GoogleCloudDialogflowCxV3VoiceSelectionParams) MarshalJSON() ([]byte, error) {
6754	type NoMethod GoogleCloudDialogflowCxV3VoiceSelectionParams
6755	raw := NoMethod(*s)
6756	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6757}
6758
6759// GoogleCloudDialogflowCxV3Webhook: Webhooks host the developer's
6760// business logic. During a session, webhooks allow the developer to use
6761// the data extracted by Dialogflow's natural language processing to
6762// generate dynamic responses, validate collected data, or trigger
6763// actions on the backend.
6764type GoogleCloudDialogflowCxV3Webhook struct {
6765	// Disabled: Indicates whether the webhook is disabled.
6766	Disabled bool `json:"disabled,omitempty"`
6767
6768	// DisplayName: Required. The human-readable name of the webhook, unique
6769	// within the agent.
6770	DisplayName string `json:"displayName,omitempty"`
6771
6772	// GenericWebService: Configuration for a generic web service.
6773	GenericWebService *GoogleCloudDialogflowCxV3WebhookGenericWebService `json:"genericWebService,omitempty"`
6774
6775	// Name: The unique identifier of the webhook. Required for the
6776	// Webhooks.UpdateWebhook method. Webhooks.CreateWebhook populates the
6777	// name automatically. Format: `projects//locations//agents//webhooks/`.
6778	Name string `json:"name,omitempty"`
6779
6780	// ServiceDirectory: Configuration for a Service Directory
6781	// (https://cloud.google.com/service-directory) service.
6782	ServiceDirectory *GoogleCloudDialogflowCxV3WebhookServiceDirectoryConfig `json:"serviceDirectory,omitempty"`
6783
6784	// Timeout: Webhook execution timeout. Execution is considered failed if
6785	// Dialogflow doesn't receive a response from webhook at the end of the
6786	// timeout period. Defaults to 5 seconds, maximum allowed timeout is 30
6787	// seconds.
6788	Timeout string `json:"timeout,omitempty"`
6789
6790	// ServerResponse contains the HTTP response code and headers from the
6791	// server.
6792	googleapi.ServerResponse `json:"-"`
6793
6794	// ForceSendFields is a list of field names (e.g. "Disabled") to
6795	// unconditionally include in API requests. By default, fields with
6796	// empty values are omitted from API requests. However, any non-pointer,
6797	// non-interface field appearing in ForceSendFields will be sent to the
6798	// server regardless of whether the field is empty or not. This may be
6799	// used to include empty fields in Patch requests.
6800	ForceSendFields []string `json:"-"`
6801
6802	// NullFields is a list of field names (e.g. "Disabled") to include in
6803	// API requests with the JSON null value. By default, fields with empty
6804	// values are omitted from API requests. However, any field with an
6805	// empty value appearing in NullFields will be sent to the server as
6806	// null. It is an error if a field in this list has a non-empty value.
6807	// This may be used to include null fields in Patch requests.
6808	NullFields []string `json:"-"`
6809}
6810
6811func (s *GoogleCloudDialogflowCxV3Webhook) MarshalJSON() ([]byte, error) {
6812	type NoMethod GoogleCloudDialogflowCxV3Webhook
6813	raw := NoMethod(*s)
6814	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6815}
6816
6817// GoogleCloudDialogflowCxV3WebhookGenericWebService: Represents
6818// configuration for a generic web service.
6819type GoogleCloudDialogflowCxV3WebhookGenericWebService struct {
6820	// Password: The password for HTTP Basic authentication.
6821	Password string `json:"password,omitempty"`
6822
6823	// RequestHeaders: The HTTP request headers to send together with
6824	// webhook requests.
6825	RequestHeaders map[string]string `json:"requestHeaders,omitempty"`
6826
6827	// Uri: Required. The webhook URI for receiving POST requests. It must
6828	// use https protocol.
6829	Uri string `json:"uri,omitempty"`
6830
6831	// Username: The user name for HTTP Basic authentication.
6832	Username string `json:"username,omitempty"`
6833
6834	// ForceSendFields is a list of field names (e.g. "Password") to
6835	// unconditionally include in API requests. By default, fields with
6836	// empty values are omitted from API requests. However, any non-pointer,
6837	// non-interface field appearing in ForceSendFields will be sent to the
6838	// server regardless of whether the field is empty or not. This may be
6839	// used to include empty fields in Patch requests.
6840	ForceSendFields []string `json:"-"`
6841
6842	// NullFields is a list of field names (e.g. "Password") to include in
6843	// API requests with the JSON null value. By default, fields with empty
6844	// values are omitted from API requests. However, any field with an
6845	// empty value appearing in NullFields will be sent to the server as
6846	// null. It is an error if a field in this list has a non-empty value.
6847	// This may be used to include null fields in Patch requests.
6848	NullFields []string `json:"-"`
6849}
6850
6851func (s *GoogleCloudDialogflowCxV3WebhookGenericWebService) MarshalJSON() ([]byte, error) {
6852	type NoMethod GoogleCloudDialogflowCxV3WebhookGenericWebService
6853	raw := NoMethod(*s)
6854	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6855}
6856
6857// GoogleCloudDialogflowCxV3WebhookRequest: The request message for a
6858// webhook call. The request is sent as a JSON object and the field
6859// names will be presented in camel cases.
6860type GoogleCloudDialogflowCxV3WebhookRequest struct {
6861	// DetectIntentResponseId: Always present. The unique identifier of the
6862	// DetectIntentResponse that will be returned to the API caller.
6863	DetectIntentResponseId string `json:"detectIntentResponseId,omitempty"`
6864
6865	// FulfillmentInfo: Always present. Information about the fulfillment
6866	// that triggered this webhook call.
6867	FulfillmentInfo *GoogleCloudDialogflowCxV3WebhookRequestFulfillmentInfo `json:"fulfillmentInfo,omitempty"`
6868
6869	// IntentInfo: Information about the last matched intent.
6870	IntentInfo *GoogleCloudDialogflowCxV3WebhookRequestIntentInfo `json:"intentInfo,omitempty"`
6871
6872	// LanguageCode: The language code specified in the original request.
6873	LanguageCode string `json:"languageCode,omitempty"`
6874
6875	// Messages: The list of rich message responses to present to the user.
6876	// Webhook can choose to append or replace this list in
6877	// WebhookResponse.fulfillment_response;
6878	Messages []*GoogleCloudDialogflowCxV3ResponseMessage `json:"messages,omitempty"`
6879
6880	// PageInfo: Information about page status.
6881	PageInfo *GoogleCloudDialogflowCxV3PageInfo `json:"pageInfo,omitempty"`
6882
6883	// Payload: Custom data set in QueryParameters.payload.
6884	Payload googleapi.RawMessage `json:"payload,omitempty"`
6885
6886	// SentimentAnalysisResult: The sentiment analysis result of the current
6887	// user request. The field is filled when sentiment analysis is
6888	// configured to be enabled for the request.
6889	SentimentAnalysisResult *GoogleCloudDialogflowCxV3WebhookRequestSentimentAnalysisResult `json:"sentimentAnalysisResult,omitempty"`
6890
6891	// SessionInfo: Information about session status.
6892	SessionInfo *GoogleCloudDialogflowCxV3SessionInfo `json:"sessionInfo,omitempty"`
6893
6894	// Text: If natural language text was provided as input, this field will
6895	// contain a copy of the text.
6896	Text string `json:"text,omitempty"`
6897
6898	// Transcript: If natural language speech audio was provided as input,
6899	// this field will contain the transcript for the audio.
6900	Transcript string `json:"transcript,omitempty"`
6901
6902	// TriggerEvent: If an event was provided as input, this field will
6903	// contain the name of the event.
6904	TriggerEvent string `json:"triggerEvent,omitempty"`
6905
6906	// TriggerIntent: If an intent was provided as input, this field will
6907	// contain a copy of the intent identifier. Format:
6908	// `projects//locations//agents//intents/`.
6909	TriggerIntent string `json:"triggerIntent,omitempty"`
6910
6911	// ForceSendFields is a list of field names (e.g.
6912	// "DetectIntentResponseId") to unconditionally include in API requests.
6913	// By default, fields with empty values are omitted from API requests.
6914	// However, any non-pointer, non-interface field appearing in
6915	// ForceSendFields will be sent to the server regardless of whether the
6916	// field is empty or not. This may be used to include empty fields in
6917	// Patch requests.
6918	ForceSendFields []string `json:"-"`
6919
6920	// NullFields is a list of field names (e.g. "DetectIntentResponseId")
6921	// to include in API requests with the JSON null value. By default,
6922	// fields with empty values are omitted from API requests. However, any
6923	// field with an empty value appearing in NullFields will be sent to the
6924	// server as null. It is an error if a field in this list has a
6925	// non-empty value. This may be used to include null fields in Patch
6926	// requests.
6927	NullFields []string `json:"-"`
6928}
6929
6930func (s *GoogleCloudDialogflowCxV3WebhookRequest) MarshalJSON() ([]byte, error) {
6931	type NoMethod GoogleCloudDialogflowCxV3WebhookRequest
6932	raw := NoMethod(*s)
6933	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6934}
6935
6936// GoogleCloudDialogflowCxV3WebhookRequestFulfillmentInfo: Represents
6937// fulfillment information communicated to the webhook.
6938type GoogleCloudDialogflowCxV3WebhookRequestFulfillmentInfo struct {
6939	// Tag: Always present. The tag used to identify which fulfillment is
6940	// being called.
6941	Tag string `json:"tag,omitempty"`
6942
6943	// ForceSendFields is a list of field names (e.g. "Tag") to
6944	// unconditionally include in API requests. By default, fields with
6945	// empty values are omitted from API requests. However, any non-pointer,
6946	// non-interface field appearing in ForceSendFields will be sent to the
6947	// server regardless of whether the field is empty or not. This may be
6948	// used to include empty fields in Patch requests.
6949	ForceSendFields []string `json:"-"`
6950
6951	// NullFields is a list of field names (e.g. "Tag") to include in API
6952	// requests with the JSON null value. By default, fields with empty
6953	// values are omitted from API requests. However, any field with an
6954	// empty value appearing in NullFields will be sent to the server as
6955	// null. It is an error if a field in this list has a non-empty value.
6956	// This may be used to include null fields in Patch requests.
6957	NullFields []string `json:"-"`
6958}
6959
6960func (s *GoogleCloudDialogflowCxV3WebhookRequestFulfillmentInfo) MarshalJSON() ([]byte, error) {
6961	type NoMethod GoogleCloudDialogflowCxV3WebhookRequestFulfillmentInfo
6962	raw := NoMethod(*s)
6963	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6964}
6965
6966// GoogleCloudDialogflowCxV3WebhookRequestIntentInfo: Represents intent
6967// information communicated to the webhook.
6968type GoogleCloudDialogflowCxV3WebhookRequestIntentInfo struct {
6969	// Confidence: The confidence of the matched intent. Values range from
6970	// 0.0 (completely uncertain) to 1.0 (completely certain).
6971	Confidence float64 `json:"confidence,omitempty"`
6972
6973	// DisplayName: Always present. The display name of the last matched
6974	// intent.
6975	DisplayName string `json:"displayName,omitempty"`
6976
6977	// LastMatchedIntent: Always present. The unique identifier of the last
6978	// matched intent. Format: `projects//locations//agents//intents/`.
6979	LastMatchedIntent string `json:"lastMatchedIntent,omitempty"`
6980
6981	// Parameters: Parameters identified as a result of intent matching.
6982	// This is a map of the name of the identified parameter to the value of
6983	// the parameter identified from the user's utterance. All parameters
6984	// defined in the matched intent that are identified will be surfaced
6985	// here.
6986	Parameters map[string]GoogleCloudDialogflowCxV3WebhookRequestIntentInfoIntentParameterValue `json:"parameters,omitempty"`
6987
6988	// ForceSendFields is a list of field names (e.g. "Confidence") to
6989	// unconditionally include in API requests. By default, fields with
6990	// empty values are omitted from API requests. However, any non-pointer,
6991	// non-interface field appearing in ForceSendFields will be sent to the
6992	// server regardless of whether the field is empty or not. This may be
6993	// used to include empty fields in Patch requests.
6994	ForceSendFields []string `json:"-"`
6995
6996	// NullFields is a list of field names (e.g. "Confidence") to include in
6997	// API requests with the JSON null value. By default, fields with empty
6998	// values are omitted from API requests. However, any field with an
6999	// empty value appearing in NullFields will be sent to the server as
7000	// null. It is an error if a field in this list has a non-empty value.
7001	// This may be used to include null fields in Patch requests.
7002	NullFields []string `json:"-"`
7003}
7004
7005func (s *GoogleCloudDialogflowCxV3WebhookRequestIntentInfo) MarshalJSON() ([]byte, error) {
7006	type NoMethod GoogleCloudDialogflowCxV3WebhookRequestIntentInfo
7007	raw := NoMethod(*s)
7008	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7009}
7010
7011func (s *GoogleCloudDialogflowCxV3WebhookRequestIntentInfo) UnmarshalJSON(data []byte) error {
7012	type NoMethod GoogleCloudDialogflowCxV3WebhookRequestIntentInfo
7013	var s1 struct {
7014		Confidence gensupport.JSONFloat64 `json:"confidence"`
7015		*NoMethod
7016	}
7017	s1.NoMethod = (*NoMethod)(s)
7018	if err := json.Unmarshal(data, &s1); err != nil {
7019		return err
7020	}
7021	s.Confidence = float64(s1.Confidence)
7022	return nil
7023}
7024
7025// GoogleCloudDialogflowCxV3WebhookRequestIntentInfoIntentParameterValue:
7026//  Represents a value for an intent parameter.
7027type GoogleCloudDialogflowCxV3WebhookRequestIntentInfoIntentParameterValue struct {
7028	// OriginalValue: Always present. Original text value extracted from
7029	// user utterance.
7030	OriginalValue string `json:"originalValue,omitempty"`
7031
7032	// ResolvedValue: Always present. Structured value for the parameter
7033	// extracted from user utterance.
7034	ResolvedValue interface{} `json:"resolvedValue,omitempty"`
7035
7036	// ForceSendFields is a list of field names (e.g. "OriginalValue") to
7037	// unconditionally include in API requests. By default, fields with
7038	// empty values are omitted from API requests. However, any non-pointer,
7039	// non-interface field appearing in ForceSendFields will be sent to the
7040	// server regardless of whether the field is empty or not. This may be
7041	// used to include empty fields in Patch requests.
7042	ForceSendFields []string `json:"-"`
7043
7044	// NullFields is a list of field names (e.g. "OriginalValue") to include
7045	// in API requests with the JSON null value. By default, fields with
7046	// empty values are omitted from API requests. However, any field with
7047	// an empty value appearing in NullFields will be sent to the server as
7048	// null. It is an error if a field in this list has a non-empty value.
7049	// This may be used to include null fields in Patch requests.
7050	NullFields []string `json:"-"`
7051}
7052
7053func (s *GoogleCloudDialogflowCxV3WebhookRequestIntentInfoIntentParameterValue) MarshalJSON() ([]byte, error) {
7054	type NoMethod GoogleCloudDialogflowCxV3WebhookRequestIntentInfoIntentParameterValue
7055	raw := NoMethod(*s)
7056	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7057}
7058
7059// GoogleCloudDialogflowCxV3WebhookRequestSentimentAnalysisResult:
7060// Represents the result of sentiment analysis.
7061type GoogleCloudDialogflowCxV3WebhookRequestSentimentAnalysisResult struct {
7062	// Magnitude: A non-negative number in the [0, +inf) range, which
7063	// represents the absolute magnitude of sentiment, regardless of score
7064	// (positive or negative).
7065	Magnitude float64 `json:"magnitude,omitempty"`
7066
7067	// Score: Sentiment score between -1.0 (negative sentiment) and 1.0
7068	// (positive sentiment).
7069	Score float64 `json:"score,omitempty"`
7070
7071	// ForceSendFields is a list of field names (e.g. "Magnitude") to
7072	// unconditionally include in API requests. By default, fields with
7073	// empty values are omitted from API requests. However, any non-pointer,
7074	// non-interface field appearing in ForceSendFields will be sent to the
7075	// server regardless of whether the field is empty or not. This may be
7076	// used to include empty fields in Patch requests.
7077	ForceSendFields []string `json:"-"`
7078
7079	// NullFields is a list of field names (e.g. "Magnitude") to include in
7080	// API requests with the JSON null value. By default, fields with empty
7081	// values are omitted from API requests. However, any field with an
7082	// empty value appearing in NullFields will be sent to the server as
7083	// null. It is an error if a field in this list has a non-empty value.
7084	// This may be used to include null fields in Patch requests.
7085	NullFields []string `json:"-"`
7086}
7087
7088func (s *GoogleCloudDialogflowCxV3WebhookRequestSentimentAnalysisResult) MarshalJSON() ([]byte, error) {
7089	type NoMethod GoogleCloudDialogflowCxV3WebhookRequestSentimentAnalysisResult
7090	raw := NoMethod(*s)
7091	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7092}
7093
7094func (s *GoogleCloudDialogflowCxV3WebhookRequestSentimentAnalysisResult) UnmarshalJSON(data []byte) error {
7095	type NoMethod GoogleCloudDialogflowCxV3WebhookRequestSentimentAnalysisResult
7096	var s1 struct {
7097		Magnitude gensupport.JSONFloat64 `json:"magnitude"`
7098		Score     gensupport.JSONFloat64 `json:"score"`
7099		*NoMethod
7100	}
7101	s1.NoMethod = (*NoMethod)(s)
7102	if err := json.Unmarshal(data, &s1); err != nil {
7103		return err
7104	}
7105	s.Magnitude = float64(s1.Magnitude)
7106	s.Score = float64(s1.Score)
7107	return nil
7108}
7109
7110// GoogleCloudDialogflowCxV3WebhookResponse: The response message for a
7111// webhook call.
7112type GoogleCloudDialogflowCxV3WebhookResponse struct {
7113	// FulfillmentResponse: The fulfillment response to send to the user.
7114	// This field can be omitted by the webhook if it does not intend to
7115	// send any response to the user.
7116	FulfillmentResponse *GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse `json:"fulfillmentResponse,omitempty"`
7117
7118	// PageInfo: Information about page status. This field can be omitted by
7119	// the webhook if it does not intend to modify page status.
7120	PageInfo *GoogleCloudDialogflowCxV3PageInfo `json:"pageInfo,omitempty"`
7121
7122	// Payload: Value to append directly to QueryResult.webhook_payloads.
7123	Payload googleapi.RawMessage `json:"payload,omitempty"`
7124
7125	// SessionInfo: Information about session status. This field can be
7126	// omitted by the webhook if it does not intend to modify session
7127	// status.
7128	SessionInfo *GoogleCloudDialogflowCxV3SessionInfo `json:"sessionInfo,omitempty"`
7129
7130	// TargetFlow: The target flow to transition to. Format:
7131	// `projects//locations//agents//flows/`.
7132	TargetFlow string `json:"targetFlow,omitempty"`
7133
7134	// TargetPage: The target page to transition to. Format:
7135	// `projects//locations//agents//flows//pages/`.
7136	TargetPage string `json:"targetPage,omitempty"`
7137
7138	// ForceSendFields is a list of field names (e.g. "FulfillmentResponse")
7139	// to unconditionally include in API requests. By default, fields with
7140	// empty values are omitted from API requests. However, any non-pointer,
7141	// non-interface field appearing in ForceSendFields will be sent to the
7142	// server regardless of whether the field is empty or not. This may be
7143	// used to include empty fields in Patch requests.
7144	ForceSendFields []string `json:"-"`
7145
7146	// NullFields is a list of field names (e.g. "FulfillmentResponse") to
7147	// include in API requests with the JSON null value. By default, fields
7148	// with empty values are omitted from API requests. However, any field
7149	// with an empty value appearing in NullFields will be sent to the
7150	// server as null. It is an error if a field in this list has a
7151	// non-empty value. This may be used to include null fields in Patch
7152	// requests.
7153	NullFields []string `json:"-"`
7154}
7155
7156func (s *GoogleCloudDialogflowCxV3WebhookResponse) MarshalJSON() ([]byte, error) {
7157	type NoMethod GoogleCloudDialogflowCxV3WebhookResponse
7158	raw := NoMethod(*s)
7159	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7160}
7161
7162// GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse:
7163// Represents a fulfillment response to the user.
7164type GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse struct {
7165	// MergeBehavior: Merge behavior for `messages`.
7166	//
7167	// Possible values:
7168	//   "MERGE_BEHAVIOR_UNSPECIFIED" - Not specified. `APPEND` will be
7169	// used.
7170	//   "APPEND" - `messages` will be appended to the list of messages
7171	// waiting to be sent to the user.
7172	//   "REPLACE" - `messages` will replace the list of messages waiting to
7173	// be sent to the user.
7174	MergeBehavior string `json:"mergeBehavior,omitempty"`
7175
7176	// Messages: The list of rich message responses to present to the user.
7177	Messages []*GoogleCloudDialogflowCxV3ResponseMessage `json:"messages,omitempty"`
7178
7179	// ForceSendFields is a list of field names (e.g. "MergeBehavior") to
7180	// unconditionally include in API requests. By default, fields with
7181	// empty values are omitted from API requests. However, any non-pointer,
7182	// non-interface field appearing in ForceSendFields will be sent to the
7183	// server regardless of whether the field is empty or not. This may be
7184	// used to include empty fields in Patch requests.
7185	ForceSendFields []string `json:"-"`
7186
7187	// NullFields is a list of field names (e.g. "MergeBehavior") to include
7188	// in API requests with the JSON null value. By default, fields with
7189	// empty values are omitted from API requests. However, any field with
7190	// an empty value appearing in NullFields will be sent to the server as
7191	// null. It is an error if a field in this list has a non-empty value.
7192	// This may be used to include null fields in Patch requests.
7193	NullFields []string `json:"-"`
7194}
7195
7196func (s *GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse) MarshalJSON() ([]byte, error) {
7197	type NoMethod GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse
7198	raw := NoMethod(*s)
7199	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7200}
7201
7202// GoogleCloudDialogflowCxV3WebhookServiceDirectoryConfig: Represents
7203// configuration for a Service Directory
7204// (https://cloud.google.com/service-directory) service.
7205type GoogleCloudDialogflowCxV3WebhookServiceDirectoryConfig struct {
7206	// GenericWebService: Generic Service configuration of this webhook.
7207	GenericWebService *GoogleCloudDialogflowCxV3WebhookGenericWebService `json:"genericWebService,omitempty"`
7208
7209	// Service: Required. The name of Service Directory
7210	// (https://cloud.google.com/service-directory) service. Format:
7211	// `projects//locations//namespaces//services/`. `Location ID` of the
7212	// service directory must be the same as the location of the agent.
7213	Service string `json:"service,omitempty"`
7214
7215	// ForceSendFields is a list of field names (e.g. "GenericWebService")
7216	// to unconditionally include in API requests. By default, fields with
7217	// empty values are omitted from API requests. However, any non-pointer,
7218	// non-interface field appearing in ForceSendFields will be sent to the
7219	// server regardless of whether the field is empty or not. This may be
7220	// used to include empty fields in Patch requests.
7221	ForceSendFields []string `json:"-"`
7222
7223	// NullFields is a list of field names (e.g. "GenericWebService") to
7224	// include in API requests with the JSON null value. By default, fields
7225	// with empty values are omitted from API requests. However, any field
7226	// with an empty value appearing in NullFields will be sent to the
7227	// server as null. It is an error if a field in this list has a
7228	// non-empty value. This may be used to include null fields in Patch
7229	// requests.
7230	NullFields []string `json:"-"`
7231}
7232
7233func (s *GoogleCloudDialogflowCxV3WebhookServiceDirectoryConfig) MarshalJSON() ([]byte, error) {
7234	type NoMethod GoogleCloudDialogflowCxV3WebhookServiceDirectoryConfig
7235	raw := NoMethod(*s)
7236	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7237}
7238
7239// GoogleCloudDialogflowCxV3beta1AudioInput: Represents the natural
7240// speech audio to be processed.
7241type GoogleCloudDialogflowCxV3beta1AudioInput struct {
7242	// Audio: The natural language speech audio to be processed. A single
7243	// request can contain up to 1 minute of speech audio data. The
7244	// transcribed text cannot contain more than 256 bytes. For
7245	// non-streaming audio detect intent, both `config` and `audio` must be
7246	// provided. For streaming audio detect intent, `config` must be
7247	// provided in the first request and `audio` must be provided in all
7248	// following requests.
7249	Audio string `json:"audio,omitempty"`
7250
7251	// Config: Required. Instructs the speech recognizer how to process the
7252	// speech audio.
7253	Config *GoogleCloudDialogflowCxV3beta1InputAudioConfig `json:"config,omitempty"`
7254
7255	// ForceSendFields is a list of field names (e.g. "Audio") to
7256	// unconditionally include in API requests. By default, fields with
7257	// empty values are omitted from API requests. However, any non-pointer,
7258	// non-interface field appearing in ForceSendFields will be sent to the
7259	// server regardless of whether the field is empty or not. This may be
7260	// used to include empty fields in Patch requests.
7261	ForceSendFields []string `json:"-"`
7262
7263	// NullFields is a list of field names (e.g. "Audio") to include in API
7264	// requests with the JSON null value. By default, fields with empty
7265	// values are omitted from API requests. However, any field with an
7266	// empty value appearing in NullFields will be sent to the server as
7267	// null. It is an error if a field in this list has a non-empty value.
7268	// This may be used to include null fields in Patch requests.
7269	NullFields []string `json:"-"`
7270}
7271
7272func (s *GoogleCloudDialogflowCxV3beta1AudioInput) MarshalJSON() ([]byte, error) {
7273	type NoMethod GoogleCloudDialogflowCxV3beta1AudioInput
7274	raw := NoMethod(*s)
7275	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7276}
7277
7278// GoogleCloudDialogflowCxV3beta1BatchRunTestCasesMetadata: Metadata
7279// returned for the TestCases.BatchRunTestCases long running operation.
7280type GoogleCloudDialogflowCxV3beta1BatchRunTestCasesMetadata struct {
7281	// Errors: The test errors.
7282	Errors []*GoogleCloudDialogflowCxV3beta1TestError `json:"errors,omitempty"`
7283
7284	// ForceSendFields is a list of field names (e.g. "Errors") to
7285	// unconditionally include in API requests. By default, fields with
7286	// empty values are omitted from API requests. However, any non-pointer,
7287	// non-interface field appearing in ForceSendFields will be sent to the
7288	// server regardless of whether the field is empty or not. This may be
7289	// used to include empty fields in Patch requests.
7290	ForceSendFields []string `json:"-"`
7291
7292	// NullFields is a list of field names (e.g. "Errors") to include in API
7293	// requests with the JSON null value. By default, fields with empty
7294	// values are omitted from API requests. However, any field with an
7295	// empty value appearing in NullFields will be sent to the server as
7296	// null. It is an error if a field in this list has a non-empty value.
7297	// This may be used to include null fields in Patch requests.
7298	NullFields []string `json:"-"`
7299}
7300
7301func (s *GoogleCloudDialogflowCxV3beta1BatchRunTestCasesMetadata) MarshalJSON() ([]byte, error) {
7302	type NoMethod GoogleCloudDialogflowCxV3beta1BatchRunTestCasesMetadata
7303	raw := NoMethod(*s)
7304	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7305}
7306
7307// GoogleCloudDialogflowCxV3beta1BatchRunTestCasesResponse: The response
7308// message for TestCases.BatchRunTestCases.
7309type GoogleCloudDialogflowCxV3beta1BatchRunTestCasesResponse struct {
7310	// Results: The test case results. The detailed conversation turns are
7311	// empty in this response.
7312	Results []*GoogleCloudDialogflowCxV3beta1TestCaseResult `json:"results,omitempty"`
7313
7314	// ForceSendFields is a list of field names (e.g. "Results") to
7315	// unconditionally include in API requests. By default, fields with
7316	// empty values are omitted from API requests. However, any non-pointer,
7317	// non-interface field appearing in ForceSendFields will be sent to the
7318	// server regardless of whether the field is empty or not. This may be
7319	// used to include empty fields in Patch requests.
7320	ForceSendFields []string `json:"-"`
7321
7322	// NullFields is a list of field names (e.g. "Results") to include in
7323	// API requests with the JSON null value. By default, fields with empty
7324	// values are omitted from API requests. However, any field with an
7325	// empty value appearing in NullFields will be sent to the server as
7326	// null. It is an error if a field in this list has a non-empty value.
7327	// This may be used to include null fields in Patch requests.
7328	NullFields []string `json:"-"`
7329}
7330
7331func (s *GoogleCloudDialogflowCxV3beta1BatchRunTestCasesResponse) MarshalJSON() ([]byte, error) {
7332	type NoMethod GoogleCloudDialogflowCxV3beta1BatchRunTestCasesResponse
7333	raw := NoMethod(*s)
7334	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7335}
7336
7337// GoogleCloudDialogflowCxV3beta1ContinuousTestResult: Represents a
7338// result from running a test case in an agent environment.
7339type GoogleCloudDialogflowCxV3beta1ContinuousTestResult struct {
7340	// Name: The resource name for the continuous test result. Format:
7341	// `projects//locations//agents//environments//continuousTestResults/`.
7342	Name string `json:"name,omitempty"`
7343
7344	// Result: The result of this continuous test run, i.e. whether all the
7345	// tests in this continuous test run pass or not.
7346	//
7347	// Possible values:
7348	//   "AGGREGATED_TEST_RESULT_UNSPECIFIED" - Not specified. Should never
7349	// be used.
7350	//   "PASSED" - All the tests passed.
7351	//   "FAILED" - At least one test did not pass.
7352	Result string `json:"result,omitempty"`
7353
7354	// RunTime: Time when the continuous testing run starts.
7355	RunTime string `json:"runTime,omitempty"`
7356
7357	// TestCaseResults: A list of individual test case results names in this
7358	// continuous test run.
7359	TestCaseResults []string `json:"testCaseResults,omitempty"`
7360
7361	// ForceSendFields is a list of field names (e.g. "Name") to
7362	// unconditionally include in API requests. By default, fields with
7363	// empty values are omitted from API requests. However, any non-pointer,
7364	// non-interface field appearing in ForceSendFields will be sent to the
7365	// server regardless of whether the field is empty or not. This may be
7366	// used to include empty fields in Patch requests.
7367	ForceSendFields []string `json:"-"`
7368
7369	// NullFields is a list of field names (e.g. "Name") to include in API
7370	// requests with the JSON null value. By default, fields with empty
7371	// values are omitted from API requests. However, any field with an
7372	// empty value appearing in NullFields will be sent to the server as
7373	// null. It is an error if a field in this list has a non-empty value.
7374	// This may be used to include null fields in Patch requests.
7375	NullFields []string `json:"-"`
7376}
7377
7378func (s *GoogleCloudDialogflowCxV3beta1ContinuousTestResult) MarshalJSON() ([]byte, error) {
7379	type NoMethod GoogleCloudDialogflowCxV3beta1ContinuousTestResult
7380	raw := NoMethod(*s)
7381	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7382}
7383
7384// GoogleCloudDialogflowCxV3beta1ConversationTurn: One interaction
7385// between a human and virtual agent. The human provides some input and
7386// the virtual agent provides a response.
7387type GoogleCloudDialogflowCxV3beta1ConversationTurn struct {
7388	// UserInput: The user input.
7389	UserInput *GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput `json:"userInput,omitempty"`
7390
7391	// VirtualAgentOutput: The virtual agent output.
7392	VirtualAgentOutput *GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput `json:"virtualAgentOutput,omitempty"`
7393
7394	// ForceSendFields is a list of field names (e.g. "UserInput") to
7395	// unconditionally include in API requests. By default, fields with
7396	// empty values are omitted from API requests. However, any non-pointer,
7397	// non-interface field appearing in ForceSendFields will be sent to the
7398	// server regardless of whether the field is empty or not. This may be
7399	// used to include empty fields in Patch requests.
7400	ForceSendFields []string `json:"-"`
7401
7402	// NullFields is a list of field names (e.g. "UserInput") to include in
7403	// API requests with the JSON null value. By default, fields with empty
7404	// values are omitted from API requests. However, any field with an
7405	// empty value appearing in NullFields will be sent to the server as
7406	// null. It is an error if a field in this list has a non-empty value.
7407	// This may be used to include null fields in Patch requests.
7408	NullFields []string `json:"-"`
7409}
7410
7411func (s *GoogleCloudDialogflowCxV3beta1ConversationTurn) MarshalJSON() ([]byte, error) {
7412	type NoMethod GoogleCloudDialogflowCxV3beta1ConversationTurn
7413	raw := NoMethod(*s)
7414	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7415}
7416
7417// GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput: The input
7418// from the human user.
7419type GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput struct {
7420	// EnableSentimentAnalysis: Whether sentiment analysis is enabled.
7421	EnableSentimentAnalysis bool `json:"enableSentimentAnalysis,omitempty"`
7422
7423	// InjectedParameters: Parameters that need to be injected into the
7424	// conversation during intent detection.
7425	InjectedParameters googleapi.RawMessage `json:"injectedParameters,omitempty"`
7426
7427	// Input: Supports text input, event input, dtmf input in the test case.
7428	Input *GoogleCloudDialogflowCxV3beta1QueryInput `json:"input,omitempty"`
7429
7430	// IsWebhookEnabled: If webhooks should be allowed to trigger in
7431	// response to the user utterance. Often if parameters are injected,
7432	// webhooks should not be enabled.
7433	IsWebhookEnabled bool `json:"isWebhookEnabled,omitempty"`
7434
7435	// ForceSendFields is a list of field names (e.g.
7436	// "EnableSentimentAnalysis") to unconditionally include in API
7437	// requests. By default, fields with empty values are omitted from API
7438	// requests. However, any non-pointer, non-interface field appearing in
7439	// ForceSendFields will be sent to the server regardless of whether the
7440	// field is empty or not. This may be used to include empty fields in
7441	// Patch requests.
7442	ForceSendFields []string `json:"-"`
7443
7444	// NullFields is a list of field names (e.g. "EnableSentimentAnalysis")
7445	// to include in API requests with the JSON null value. By default,
7446	// fields with empty values are omitted from API requests. However, any
7447	// field with an empty value appearing in NullFields will be sent to the
7448	// server as null. It is an error if a field in this list has a
7449	// non-empty value. This may be used to include null fields in Patch
7450	// requests.
7451	NullFields []string `json:"-"`
7452}
7453
7454func (s *GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput) MarshalJSON() ([]byte, error) {
7455	type NoMethod GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput
7456	raw := NoMethod(*s)
7457	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7458}
7459
7460// GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput: The
7461// output from the virtual agent.
7462type GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput struct {
7463	// CurrentPage: The Page on which the utterance was spoken. Only name
7464	// and displayName will be set.
7465	CurrentPage *GoogleCloudDialogflowCxV3beta1Page `json:"currentPage,omitempty"`
7466
7467	// DiagnosticInfo: Required. Input only. The diagnostic info output for
7468	// the turn.
7469	DiagnosticInfo googleapi.RawMessage `json:"diagnosticInfo,omitempty"`
7470
7471	// Differences: Output only. If this is part of a result conversation
7472	// turn, the list of differences between the original run and the replay
7473	// for this output, if any.
7474	Differences []*GoogleCloudDialogflowCxV3beta1TestRunDifference `json:"differences,omitempty"`
7475
7476	// SessionParameters: The session parameters available to the bot at
7477	// this point.
7478	SessionParameters googleapi.RawMessage `json:"sessionParameters,omitempty"`
7479
7480	// Status: Response error from the agent in the test result. If set,
7481	// other output is empty.
7482	Status *GoogleRpcStatus `json:"status,omitempty"`
7483
7484	// TextResponses: The text responses from the agent for the turn.
7485	TextResponses []*GoogleCloudDialogflowCxV3beta1ResponseMessageText `json:"textResponses,omitempty"`
7486
7487	// TriggeredIntent: The Intent that triggered the response. Only name
7488	// and displayName will be set.
7489	TriggeredIntent *GoogleCloudDialogflowCxV3beta1Intent `json:"triggeredIntent,omitempty"`
7490
7491	// ForceSendFields is a list of field names (e.g. "CurrentPage") to
7492	// unconditionally include in API requests. By default, fields with
7493	// empty values are omitted from API requests. However, any non-pointer,
7494	// non-interface field appearing in ForceSendFields will be sent to the
7495	// server regardless of whether the field is empty or not. This may be
7496	// used to include empty fields in Patch requests.
7497	ForceSendFields []string `json:"-"`
7498
7499	// NullFields is a list of field names (e.g. "CurrentPage") to include
7500	// in API requests with the JSON null value. By default, fields with
7501	// empty values are omitted from API requests. However, any field with
7502	// an empty value appearing in NullFields will be sent to the server as
7503	// null. It is an error if a field in this list has a non-empty value.
7504	// This may be used to include null fields in Patch requests.
7505	NullFields []string `json:"-"`
7506}
7507
7508func (s *GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput) MarshalJSON() ([]byte, error) {
7509	type NoMethod GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput
7510	raw := NoMethod(*s)
7511	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7512}
7513
7514// GoogleCloudDialogflowCxV3beta1CreateDocumentOperationMetadata:
7515// Metadata for CreateDocument operation.
7516type GoogleCloudDialogflowCxV3beta1CreateDocumentOperationMetadata struct {
7517	// GenericMetadata: The generic information of the operation.
7518	GenericMetadata *GoogleCloudDialogflowCxV3beta1GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
7519
7520	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
7521	// unconditionally include in API requests. By default, fields with
7522	// empty values are omitted from API requests. However, any non-pointer,
7523	// non-interface field appearing in ForceSendFields will be sent to the
7524	// server regardless of whether the field is empty or not. This may be
7525	// used to include empty fields in Patch requests.
7526	ForceSendFields []string `json:"-"`
7527
7528	// NullFields is a list of field names (e.g. "GenericMetadata") to
7529	// include in API requests with the JSON null value. By default, fields
7530	// with empty values are omitted from API requests. However, any field
7531	// with an empty value appearing in NullFields will be sent to the
7532	// server as null. It is an error if a field in this list has a
7533	// non-empty value. This may be used to include null fields in Patch
7534	// requests.
7535	NullFields []string `json:"-"`
7536}
7537
7538func (s *GoogleCloudDialogflowCxV3beta1CreateDocumentOperationMetadata) MarshalJSON() ([]byte, error) {
7539	type NoMethod GoogleCloudDialogflowCxV3beta1CreateDocumentOperationMetadata
7540	raw := NoMethod(*s)
7541	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7542}
7543
7544// GoogleCloudDialogflowCxV3beta1CreateVersionOperationMetadata:
7545// Metadata associated with the long running operation for
7546// Versions.CreateVersion.
7547type GoogleCloudDialogflowCxV3beta1CreateVersionOperationMetadata struct {
7548	// Version: Name of the created version. Format:
7549	// `projects//locations//agents//flows//versions/`.
7550	Version string `json:"version,omitempty"`
7551
7552	// ForceSendFields is a list of field names (e.g. "Version") to
7553	// unconditionally include in API requests. By default, fields with
7554	// empty values are omitted from API requests. However, any non-pointer,
7555	// non-interface field appearing in ForceSendFields will be sent to the
7556	// server regardless of whether the field is empty or not. This may be
7557	// used to include empty fields in Patch requests.
7558	ForceSendFields []string `json:"-"`
7559
7560	// NullFields is a list of field names (e.g. "Version") to include in
7561	// API requests with the JSON null value. By default, fields with empty
7562	// values are omitted from API requests. However, any field with an
7563	// empty value appearing in NullFields will be sent to the server as
7564	// null. It is an error if a field in this list has a non-empty value.
7565	// This may be used to include null fields in Patch requests.
7566	NullFields []string `json:"-"`
7567}
7568
7569func (s *GoogleCloudDialogflowCxV3beta1CreateVersionOperationMetadata) MarshalJSON() ([]byte, error) {
7570	type NoMethod GoogleCloudDialogflowCxV3beta1CreateVersionOperationMetadata
7571	raw := NoMethod(*s)
7572	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7573}
7574
7575// GoogleCloudDialogflowCxV3beta1DeleteDocumentOperationMetadata:
7576// Metadata for DeleteDocument operation.
7577type GoogleCloudDialogflowCxV3beta1DeleteDocumentOperationMetadata struct {
7578	// GenericMetadata: The generic information of the operation.
7579	GenericMetadata *GoogleCloudDialogflowCxV3beta1GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
7580
7581	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
7582	// unconditionally include in API requests. By default, fields with
7583	// empty values are omitted from API requests. However, any non-pointer,
7584	// non-interface field appearing in ForceSendFields will be sent to the
7585	// server regardless of whether the field is empty or not. This may be
7586	// used to include empty fields in Patch requests.
7587	ForceSendFields []string `json:"-"`
7588
7589	// NullFields is a list of field names (e.g. "GenericMetadata") to
7590	// include in API requests with the JSON null value. By default, fields
7591	// with empty values are omitted from API requests. However, any field
7592	// with an empty value appearing in NullFields will be sent to the
7593	// server as null. It is an error if a field in this list has a
7594	// non-empty value. This may be used to include null fields in Patch
7595	// requests.
7596	NullFields []string `json:"-"`
7597}
7598
7599func (s *GoogleCloudDialogflowCxV3beta1DeleteDocumentOperationMetadata) MarshalJSON() ([]byte, error) {
7600	type NoMethod GoogleCloudDialogflowCxV3beta1DeleteDocumentOperationMetadata
7601	raw := NoMethod(*s)
7602	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7603}
7604
7605// GoogleCloudDialogflowCxV3beta1DtmfInput: Represents the input for
7606// dtmf event.
7607type GoogleCloudDialogflowCxV3beta1DtmfInput struct {
7608	// Digits: The dtmf digits.
7609	Digits string `json:"digits,omitempty"`
7610
7611	// FinishDigit: The finish digit (if any).
7612	FinishDigit string `json:"finishDigit,omitempty"`
7613
7614	// ForceSendFields is a list of field names (e.g. "Digits") to
7615	// unconditionally include in API requests. By default, fields with
7616	// empty values are omitted from API requests. However, any non-pointer,
7617	// non-interface field appearing in ForceSendFields will be sent to the
7618	// server regardless of whether the field is empty or not. This may be
7619	// used to include empty fields in Patch requests.
7620	ForceSendFields []string `json:"-"`
7621
7622	// NullFields is a list of field names (e.g. "Digits") to include in API
7623	// requests with the JSON null value. By default, fields with empty
7624	// values are omitted from API requests. However, any field with an
7625	// empty value appearing in NullFields will be sent to the server as
7626	// null. It is an error if a field in this list has a non-empty value.
7627	// This may be used to include null fields in Patch requests.
7628	NullFields []string `json:"-"`
7629}
7630
7631func (s *GoogleCloudDialogflowCxV3beta1DtmfInput) MarshalJSON() ([]byte, error) {
7632	type NoMethod GoogleCloudDialogflowCxV3beta1DtmfInput
7633	raw := NoMethod(*s)
7634	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7635}
7636
7637// GoogleCloudDialogflowCxV3beta1EventHandler: An event handler
7638// specifies an event that can be handled during a session. When the
7639// specified event happens, the following actions are taken in order: *
7640// If there is a `trigger_fulfillment` associated with the event, it
7641// will be called. * If there is a `target_page` associated with the
7642// event, the session will transition into the specified page. * If
7643// there is a `target_flow` associated with the event, the session will
7644// transition into the specified flow.
7645type GoogleCloudDialogflowCxV3beta1EventHandler struct {
7646	// Event: Required. The name of the event to handle.
7647	Event string `json:"event,omitempty"`
7648
7649	// Name: Output only. The unique identifier of this event handler.
7650	Name string `json:"name,omitempty"`
7651
7652	// TargetFlow: The target flow to transition to. Format:
7653	// `projects//locations//agents//flows/`.
7654	TargetFlow string `json:"targetFlow,omitempty"`
7655
7656	// TargetPage: The target page to transition to. Format:
7657	// `projects//locations//agents//flows//pages/`.
7658	TargetPage string `json:"targetPage,omitempty"`
7659
7660	// TriggerFulfillment: The fulfillment to call when the event occurs.
7661	// Handling webhook errors with a fulfillment enabled with webhook could
7662	// cause infinite loop. It is invalid to specify such fulfillment for a
7663	// handler handling webhooks.
7664	TriggerFulfillment *GoogleCloudDialogflowCxV3beta1Fulfillment `json:"triggerFulfillment,omitempty"`
7665
7666	// ForceSendFields is a list of field names (e.g. "Event") to
7667	// unconditionally include in API requests. By default, fields with
7668	// empty values are omitted from API requests. However, any non-pointer,
7669	// non-interface field appearing in ForceSendFields will be sent to the
7670	// server regardless of whether the field is empty or not. This may be
7671	// used to include empty fields in Patch requests.
7672	ForceSendFields []string `json:"-"`
7673
7674	// NullFields is a list of field names (e.g. "Event") to include in API
7675	// requests with the JSON null value. By default, fields with empty
7676	// values are omitted from API requests. However, any field with an
7677	// empty value appearing in NullFields will be sent to the server as
7678	// null. It is an error if a field in this list has a non-empty value.
7679	// This may be used to include null fields in Patch requests.
7680	NullFields []string `json:"-"`
7681}
7682
7683func (s *GoogleCloudDialogflowCxV3beta1EventHandler) MarshalJSON() ([]byte, error) {
7684	type NoMethod GoogleCloudDialogflowCxV3beta1EventHandler
7685	raw := NoMethod(*s)
7686	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7687}
7688
7689// GoogleCloudDialogflowCxV3beta1EventInput: Represents the event to
7690// trigger.
7691type GoogleCloudDialogflowCxV3beta1EventInput struct {
7692	// Event: Name of the event.
7693	Event string `json:"event,omitempty"`
7694
7695	// ForceSendFields is a list of field names (e.g. "Event") to
7696	// unconditionally include in API requests. By default, fields with
7697	// empty values are omitted from API requests. However, any non-pointer,
7698	// non-interface field appearing in ForceSendFields will be sent to the
7699	// server regardless of whether the field is empty or not. This may be
7700	// used to include empty fields in Patch requests.
7701	ForceSendFields []string `json:"-"`
7702
7703	// NullFields is a list of field names (e.g. "Event") to include in API
7704	// requests with the JSON null value. By default, fields with empty
7705	// values are omitted from API requests. However, any field with an
7706	// empty value appearing in NullFields will be sent to the server as
7707	// null. It is an error if a field in this list has a non-empty value.
7708	// This may be used to include null fields in Patch requests.
7709	NullFields []string `json:"-"`
7710}
7711
7712func (s *GoogleCloudDialogflowCxV3beta1EventInput) MarshalJSON() ([]byte, error) {
7713	type NoMethod GoogleCloudDialogflowCxV3beta1EventInput
7714	raw := NoMethod(*s)
7715	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7716}
7717
7718// GoogleCloudDialogflowCxV3beta1ExportAgentResponse: The response
7719// message for Agents.ExportAgent.
7720type GoogleCloudDialogflowCxV3beta1ExportAgentResponse struct {
7721	// AgentContent: Uncompressed raw byte content for agent.
7722	AgentContent string `json:"agentContent,omitempty"`
7723
7724	// AgentUri: The URI to a file containing the exported agent. This field
7725	// is populated only if `agent_uri` is specified in ExportAgentRequest.
7726	AgentUri string `json:"agentUri,omitempty"`
7727
7728	// ForceSendFields is a list of field names (e.g. "AgentContent") to
7729	// unconditionally include in API requests. By default, fields with
7730	// empty values are omitted from API requests. However, any non-pointer,
7731	// non-interface field appearing in ForceSendFields will be sent to the
7732	// server regardless of whether the field is empty or not. This may be
7733	// used to include empty fields in Patch requests.
7734	ForceSendFields []string `json:"-"`
7735
7736	// NullFields is a list of field names (e.g. "AgentContent") to include
7737	// in API requests with the JSON null value. By default, fields with
7738	// empty values are omitted from API requests. However, any field with
7739	// an empty value appearing in NullFields will be sent to the server as
7740	// null. It is an error if a field in this list has a non-empty value.
7741	// This may be used to include null fields in Patch requests.
7742	NullFields []string `json:"-"`
7743}
7744
7745func (s *GoogleCloudDialogflowCxV3beta1ExportAgentResponse) MarshalJSON() ([]byte, error) {
7746	type NoMethod GoogleCloudDialogflowCxV3beta1ExportAgentResponse
7747	raw := NoMethod(*s)
7748	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7749}
7750
7751// GoogleCloudDialogflowCxV3beta1ExportFlowResponse: The response
7752// message for Flows.ExportFlow.
7753type GoogleCloudDialogflowCxV3beta1ExportFlowResponse struct {
7754	// FlowContent: Uncompressed raw byte content for flow.
7755	FlowContent string `json:"flowContent,omitempty"`
7756
7757	// FlowUri: The URI to a file containing the exported flow. This field
7758	// is populated only if `flow_uri` is specified in ExportFlowRequest.
7759	FlowUri string `json:"flowUri,omitempty"`
7760
7761	// ForceSendFields is a list of field names (e.g. "FlowContent") to
7762	// unconditionally include in API requests. By default, fields with
7763	// empty values are omitted from API requests. However, any non-pointer,
7764	// non-interface field appearing in ForceSendFields will be sent to the
7765	// server regardless of whether the field is empty or not. This may be
7766	// used to include empty fields in Patch requests.
7767	ForceSendFields []string `json:"-"`
7768
7769	// NullFields is a list of field names (e.g. "FlowContent") to include
7770	// in API requests with the JSON null value. By default, fields with
7771	// empty values are omitted from API requests. However, any field with
7772	// an empty value appearing in NullFields will be sent to the server as
7773	// null. It is an error if a field in this list has a non-empty value.
7774	// This may be used to include null fields in Patch requests.
7775	NullFields []string `json:"-"`
7776}
7777
7778func (s *GoogleCloudDialogflowCxV3beta1ExportFlowResponse) MarshalJSON() ([]byte, error) {
7779	type NoMethod GoogleCloudDialogflowCxV3beta1ExportFlowResponse
7780	raw := NoMethod(*s)
7781	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7782}
7783
7784// GoogleCloudDialogflowCxV3beta1ExportTestCasesMetadata: Metadata
7785// returned for the TestCases.ExportTestCases long running operation.
7786type GoogleCloudDialogflowCxV3beta1ExportTestCasesMetadata struct {
7787}
7788
7789// GoogleCloudDialogflowCxV3beta1ExportTestCasesResponse: The response
7790// message for TestCases.ExportTestCases.
7791type GoogleCloudDialogflowCxV3beta1ExportTestCasesResponse struct {
7792	// Content: Uncompressed raw byte content for test cases.
7793	Content string `json:"content,omitempty"`
7794
7795	// GcsUri: The URI to a file containing the exported test cases. This
7796	// field is populated only if `gcs_uri` is specified in
7797	// ExportTestCasesRequest.
7798	GcsUri string `json:"gcsUri,omitempty"`
7799
7800	// ForceSendFields is a list of field names (e.g. "Content") to
7801	// unconditionally include in API requests. By default, fields with
7802	// empty values are omitted from API requests. However, any non-pointer,
7803	// non-interface field appearing in ForceSendFields will be sent to the
7804	// server regardless of whether the field is empty or not. This may be
7805	// used to include empty fields in Patch requests.
7806	ForceSendFields []string `json:"-"`
7807
7808	// NullFields is a list of field names (e.g. "Content") to include in
7809	// API requests with the JSON null value. By default, fields with empty
7810	// values are omitted from API requests. However, any field with an
7811	// empty value appearing in NullFields will be sent to the server as
7812	// null. It is an error if a field in this list has a non-empty value.
7813	// This may be used to include null fields in Patch requests.
7814	NullFields []string `json:"-"`
7815}
7816
7817func (s *GoogleCloudDialogflowCxV3beta1ExportTestCasesResponse) MarshalJSON() ([]byte, error) {
7818	type NoMethod GoogleCloudDialogflowCxV3beta1ExportTestCasesResponse
7819	raw := NoMethod(*s)
7820	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7821}
7822
7823// GoogleCloudDialogflowCxV3beta1Form: A form is a data model that
7824// groups related parameters that can be collected from the user. The
7825// process in which the agent prompts the user and collects parameter
7826// values from the user is called form filling. A form can be added to a
7827// page. When form filling is done, the filled parameters will be
7828// written to the session.
7829type GoogleCloudDialogflowCxV3beta1Form struct {
7830	// Parameters: Parameters to collect from the user.
7831	Parameters []*GoogleCloudDialogflowCxV3beta1FormParameter `json:"parameters,omitempty"`
7832
7833	// ForceSendFields is a list of field names (e.g. "Parameters") to
7834	// unconditionally include in API requests. By default, fields with
7835	// empty values are omitted from API requests. However, any non-pointer,
7836	// non-interface field appearing in ForceSendFields will be sent to the
7837	// server regardless of whether the field is empty or not. This may be
7838	// used to include empty fields in Patch requests.
7839	ForceSendFields []string `json:"-"`
7840
7841	// NullFields is a list of field names (e.g. "Parameters") to include in
7842	// API requests with the JSON null value. By default, fields with empty
7843	// values are omitted from API requests. However, any field with an
7844	// empty value appearing in NullFields will be sent to the server as
7845	// null. It is an error if a field in this list has a non-empty value.
7846	// This may be used to include null fields in Patch requests.
7847	NullFields []string `json:"-"`
7848}
7849
7850func (s *GoogleCloudDialogflowCxV3beta1Form) MarshalJSON() ([]byte, error) {
7851	type NoMethod GoogleCloudDialogflowCxV3beta1Form
7852	raw := NoMethod(*s)
7853	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7854}
7855
7856// GoogleCloudDialogflowCxV3beta1FormParameter: Represents a form
7857// parameter.
7858type GoogleCloudDialogflowCxV3beta1FormParameter struct {
7859	// DefaultValue: The default value of an optional parameter. If the
7860	// parameter is required, the default value will be ignored.
7861	DefaultValue interface{} `json:"defaultValue,omitempty"`
7862
7863	// DisplayName: Required. The human-readable name of the parameter,
7864	// unique within the form.
7865	DisplayName string `json:"displayName,omitempty"`
7866
7867	// EntityType: Required. The entity type of the parameter. Format:
7868	// `projects/-/locations/-/agents/-/entityTypes/` for system entity
7869	// types (for example,
7870	// `projects/-/locations/-/agents/-/entityTypes/sys.date`), or
7871	// `projects//locations//agents//entityTypes/` for developer entity
7872	// types.
7873	EntityType string `json:"entityType,omitempty"`
7874
7875	// FillBehavior: Required. Defines fill behavior for the parameter.
7876	FillBehavior *GoogleCloudDialogflowCxV3beta1FormParameterFillBehavior `json:"fillBehavior,omitempty"`
7877
7878	// IsList: Indicates whether the parameter represents a list of values.
7879	IsList bool `json:"isList,omitempty"`
7880
7881	// Redact: Indicates whether the parameter content should be redacted in
7882	// log. If redaction is enabled, the parameter content will be replaced
7883	// by parameter name during logging. Note: the parameter content is
7884	// subject to redaction if either parameter level redaction or entity
7885	// type level redaction is enabled.
7886	Redact bool `json:"redact,omitempty"`
7887
7888	// Required: Indicates whether the parameter is required. Optional
7889	// parameters will not trigger prompts; however, they are filled if the
7890	// user specifies them. Required parameters must be filled before form
7891	// filling concludes.
7892	Required bool `json:"required,omitempty"`
7893
7894	// ForceSendFields is a list of field names (e.g. "DefaultValue") to
7895	// unconditionally include in API requests. By default, fields with
7896	// empty values are omitted from API requests. However, any non-pointer,
7897	// non-interface field appearing in ForceSendFields will be sent to the
7898	// server regardless of whether the field is empty or not. This may be
7899	// used to include empty fields in Patch requests.
7900	ForceSendFields []string `json:"-"`
7901
7902	// NullFields is a list of field names (e.g. "DefaultValue") to include
7903	// in API requests with the JSON null value. By default, fields with
7904	// empty values are omitted from API requests. However, any field with
7905	// an empty value appearing in NullFields will be sent to the server as
7906	// null. It is an error if a field in this list has a non-empty value.
7907	// This may be used to include null fields in Patch requests.
7908	NullFields []string `json:"-"`
7909}
7910
7911func (s *GoogleCloudDialogflowCxV3beta1FormParameter) MarshalJSON() ([]byte, error) {
7912	type NoMethod GoogleCloudDialogflowCxV3beta1FormParameter
7913	raw := NoMethod(*s)
7914	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7915}
7916
7917// GoogleCloudDialogflowCxV3beta1FormParameterFillBehavior:
7918// Configuration for how the filling of a parameter should be handled.
7919type GoogleCloudDialogflowCxV3beta1FormParameterFillBehavior struct {
7920	// InitialPromptFulfillment: Required. The fulfillment to provide the
7921	// initial prompt that the agent can present to the user in order to
7922	// fill the parameter.
7923	InitialPromptFulfillment *GoogleCloudDialogflowCxV3beta1Fulfillment `json:"initialPromptFulfillment,omitempty"`
7924
7925	// RepromptEventHandlers: The handlers for parameter-level events, used
7926	// to provide reprompt for the parameter or transition to a different
7927	// page/flow. The supported events are: * `sys.no-match-`, where N can
7928	// be from 1 to 6 * `sys.no-match-default` * `sys.no-input-`, where N
7929	// can be from 1 to 6 * `sys.no-input-default` * `sys.invalid-parameter`
7930	// `initial_prompt_fulfillment` provides the first prompt for the
7931	// parameter. If the user's response does not fill the parameter, a
7932	// no-match/no-input event will be triggered, and the fulfillment
7933	// associated with the `sys.no-match-1`/`sys.no-input-1` handler (if
7934	// defined) will be called to provide a prompt. The
7935	// `sys.no-match-2`/`sys.no-input-2` handler (if defined) will respond
7936	// to the next no-match/no-input event, and so on. A
7937	// `sys.no-match-default` or `sys.no-input-default` handler will be used
7938	// to handle all following no-match/no-input events after all numbered
7939	// no-match/no-input handlers for the parameter are consumed. A
7940	// `sys.invalid-parameter` handler can be defined to handle the case
7941	// where the parameter values have been `invalidated` by webhook. For
7942	// example, if the user's response fill the parameter, however the
7943	// parameter was invalidated by webhook, the fulfillment associated with
7944	// the `sys.invalid-parameter` handler (if defined) will be called to
7945	// provide a prompt. If the event handler for the corresponding event
7946	// can't be found on the parameter, `initial_prompt_fulfillment` will be
7947	// re-prompted.
7948	RepromptEventHandlers []*GoogleCloudDialogflowCxV3beta1EventHandler `json:"repromptEventHandlers,omitempty"`
7949
7950	// ForceSendFields is a list of field names (e.g.
7951	// "InitialPromptFulfillment") to unconditionally include in API
7952	// requests. By default, fields with empty values are omitted from API
7953	// requests. However, any non-pointer, non-interface field appearing in
7954	// ForceSendFields will be sent to the server regardless of whether the
7955	// field is empty or not. This may be used to include empty fields in
7956	// Patch requests.
7957	ForceSendFields []string `json:"-"`
7958
7959	// NullFields is a list of field names (e.g. "InitialPromptFulfillment")
7960	// to include in API requests with the JSON null value. By default,
7961	// fields with empty values are omitted from API requests. However, any
7962	// field with an empty value appearing in NullFields will be sent to the
7963	// server as null. It is an error if a field in this list has a
7964	// non-empty value. This may be used to include null fields in Patch
7965	// requests.
7966	NullFields []string `json:"-"`
7967}
7968
7969func (s *GoogleCloudDialogflowCxV3beta1FormParameterFillBehavior) MarshalJSON() ([]byte, error) {
7970	type NoMethod GoogleCloudDialogflowCxV3beta1FormParameterFillBehavior
7971	raw := NoMethod(*s)
7972	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7973}
7974
7975// GoogleCloudDialogflowCxV3beta1Fulfillment: A fulfillment can do one
7976// or more of the following actions at the same time: * Generate rich
7977// message responses. * Set parameter values. * Call the webhook.
7978// Fulfillments can be called at various stages in the Page or Form
7979// lifecycle. For example, when a DetectIntentRequest drives a session
7980// to enter a new page, the page's entry fulfillment can add a static
7981// response to the QueryResult in the returning DetectIntentResponse,
7982// call the webhook (for example, to load user data from a database), or
7983// both.
7984type GoogleCloudDialogflowCxV3beta1Fulfillment struct {
7985	// ConditionalCases: Conditional cases for this fulfillment.
7986	ConditionalCases []*GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases `json:"conditionalCases,omitempty"`
7987
7988	// Messages: The list of rich message responses to present to the user.
7989	Messages []*GoogleCloudDialogflowCxV3beta1ResponseMessage `json:"messages,omitempty"`
7990
7991	// ReturnPartialResponses: Whether Dialogflow should return currently
7992	// queued fulfillment response messages in streaming APIs. If a webhook
7993	// is specified, it happens before Dialogflow invokes webhook. Warning:
7994	// 1) This flag only affects streaming API. Responses are still queued
7995	// and returned once in non-streaming API. 2) The flag can be enabled in
7996	// any fulfillment but only the first 3 partial responses will be
7997	// returned. You may only want to apply it to fulfillments that have
7998	// slow webhooks.
7999	ReturnPartialResponses bool `json:"returnPartialResponses,omitempty"`
8000
8001	// SetParameterActions: Set parameter values before executing the
8002	// webhook.
8003	SetParameterActions []*GoogleCloudDialogflowCxV3beta1FulfillmentSetParameterAction `json:"setParameterActions,omitempty"`
8004
8005	// Tag: The tag used by the webhook to identify which fulfillment is
8006	// being called. This field is required if `webhook` is specified.
8007	Tag string `json:"tag,omitempty"`
8008
8009	// Webhook: The webhook to call. Format:
8010	// `projects//locations//agents//webhooks/`.
8011	Webhook string `json:"webhook,omitempty"`
8012
8013	// ForceSendFields is a list of field names (e.g. "ConditionalCases") to
8014	// unconditionally include in API requests. By default, fields with
8015	// empty values are omitted from API requests. However, any non-pointer,
8016	// non-interface field appearing in ForceSendFields will be sent to the
8017	// server regardless of whether the field is empty or not. This may be
8018	// used to include empty fields in Patch requests.
8019	ForceSendFields []string `json:"-"`
8020
8021	// NullFields is a list of field names (e.g. "ConditionalCases") to
8022	// include in API requests with the JSON null value. By default, fields
8023	// with empty values are omitted from API requests. However, any field
8024	// with an empty value appearing in NullFields will be sent to the
8025	// server as null. It is an error if a field in this list has a
8026	// non-empty value. This may be used to include null fields in Patch
8027	// requests.
8028	NullFields []string `json:"-"`
8029}
8030
8031func (s *GoogleCloudDialogflowCxV3beta1Fulfillment) MarshalJSON() ([]byte, error) {
8032	type NoMethod GoogleCloudDialogflowCxV3beta1Fulfillment
8033	raw := NoMethod(*s)
8034	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8035}
8036
8037// GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases: A list of
8038// cascading if-else conditions. Cases are mutually exclusive. The first
8039// one with a matching condition is selected, all the rest ignored.
8040type GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases struct {
8041	// Cases: A list of cascading if-else conditions.
8042	Cases []*GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCase `json:"cases,omitempty"`
8043
8044	// ForceSendFields is a list of field names (e.g. "Cases") to
8045	// unconditionally include in API requests. By default, fields with
8046	// empty values are omitted from API requests. However, any non-pointer,
8047	// non-interface field appearing in ForceSendFields will be sent to the
8048	// server regardless of whether the field is empty or not. This may be
8049	// used to include empty fields in Patch requests.
8050	ForceSendFields []string `json:"-"`
8051
8052	// NullFields is a list of field names (e.g. "Cases") to include in API
8053	// requests with the JSON null value. By default, fields with empty
8054	// values are omitted from API requests. However, any field with an
8055	// empty value appearing in NullFields will be sent to the server as
8056	// null. It is an error if a field in this list has a non-empty value.
8057	// This may be used to include null fields in Patch requests.
8058	NullFields []string `json:"-"`
8059}
8060
8061func (s *GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases) MarshalJSON() ([]byte, error) {
8062	type NoMethod GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases
8063	raw := NoMethod(*s)
8064	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8065}
8066
8067// GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCase: Each
8068// case has a Boolean condition. When it is evaluated to be True, the
8069// corresponding messages will be selected and evaluated recursively.
8070type GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCase struct {
8071	// CaseContent: A list of case content.
8072	CaseContent []*GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCaseCaseContent `json:"caseContent,omitempty"`
8073
8074	// Condition: The condition to activate and select this case. Empty
8075	// means the condition is always true. The condition is evaluated
8076	// against form parameters or session parameters. See the conditions
8077	// reference
8078	// (https://cloud.google.com/dialogflow/cx/docs/reference/condition).
8079	Condition string `json:"condition,omitempty"`
8080
8081	// ForceSendFields is a list of field names (e.g. "CaseContent") to
8082	// unconditionally include in API requests. By default, fields with
8083	// empty values are omitted from API requests. However, any non-pointer,
8084	// non-interface field appearing in ForceSendFields will be sent to the
8085	// server regardless of whether the field is empty or not. This may be
8086	// used to include empty fields in Patch requests.
8087	ForceSendFields []string `json:"-"`
8088
8089	// NullFields is a list of field names (e.g. "CaseContent") to include
8090	// in API requests with the JSON null value. By default, fields with
8091	// empty values are omitted from API requests. However, any field with
8092	// an empty value appearing in NullFields will be sent to the server as
8093	// null. It is an error if a field in this list has a non-empty value.
8094	// This may be used to include null fields in Patch requests.
8095	NullFields []string `json:"-"`
8096}
8097
8098func (s *GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCase) MarshalJSON() ([]byte, error) {
8099	type NoMethod GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCase
8100	raw := NoMethod(*s)
8101	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8102}
8103
8104// GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCaseCaseConte
8105// nt: The list of messages or conditional cases to activate for this
8106// case.
8107type GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCaseCaseContent struct {
8108	// AdditionalCases: Additional cases to be evaluated.
8109	AdditionalCases *GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases `json:"additionalCases,omitempty"`
8110
8111	// Message: Returned message.
8112	Message *GoogleCloudDialogflowCxV3beta1ResponseMessage `json:"message,omitempty"`
8113
8114	// ForceSendFields is a list of field names (e.g. "AdditionalCases") to
8115	// unconditionally include in API requests. By default, fields with
8116	// empty values are omitted from API requests. However, any non-pointer,
8117	// non-interface field appearing in ForceSendFields will be sent to the
8118	// server regardless of whether the field is empty or not. This may be
8119	// used to include empty fields in Patch requests.
8120	ForceSendFields []string `json:"-"`
8121
8122	// NullFields is a list of field names (e.g. "AdditionalCases") to
8123	// include in API requests with the JSON null value. By default, fields
8124	// with empty values are omitted from API requests. However, any field
8125	// with an empty value appearing in NullFields will be sent to the
8126	// server as null. It is an error if a field in this list has a
8127	// non-empty value. This may be used to include null fields in Patch
8128	// requests.
8129	NullFields []string `json:"-"`
8130}
8131
8132func (s *GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCaseCaseContent) MarshalJSON() ([]byte, error) {
8133	type NoMethod GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCaseCaseContent
8134	raw := NoMethod(*s)
8135	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8136}
8137
8138// GoogleCloudDialogflowCxV3beta1FulfillmentSetParameterAction: Setting
8139// a parameter value.
8140type GoogleCloudDialogflowCxV3beta1FulfillmentSetParameterAction struct {
8141	// Parameter: Display name of the parameter.
8142	Parameter string `json:"parameter,omitempty"`
8143
8144	// Value: The new value of the parameter. A null value clears the
8145	// parameter.
8146	Value interface{} `json:"value,omitempty"`
8147
8148	// ForceSendFields is a list of field names (e.g. "Parameter") to
8149	// unconditionally include in API requests. By default, fields with
8150	// empty values are omitted from API requests. However, any non-pointer,
8151	// non-interface field appearing in ForceSendFields will be sent to the
8152	// server regardless of whether the field is empty or not. This may be
8153	// used to include empty fields in Patch requests.
8154	ForceSendFields []string `json:"-"`
8155
8156	// NullFields is a list of field names (e.g. "Parameter") to include in
8157	// API requests with the JSON null value. By default, fields with empty
8158	// values are omitted from API requests. However, any field with an
8159	// empty value appearing in NullFields will be sent to the server as
8160	// null. It is an error if a field in this list has a non-empty value.
8161	// This may be used to include null fields in Patch requests.
8162	NullFields []string `json:"-"`
8163}
8164
8165func (s *GoogleCloudDialogflowCxV3beta1FulfillmentSetParameterAction) MarshalJSON() ([]byte, error) {
8166	type NoMethod GoogleCloudDialogflowCxV3beta1FulfillmentSetParameterAction
8167	raw := NoMethod(*s)
8168	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8169}
8170
8171// GoogleCloudDialogflowCxV3beta1GenericKnowledgeOperationMetadata:
8172// Metadata in google::longrunning::Operation for Knowledge operations.
8173type GoogleCloudDialogflowCxV3beta1GenericKnowledgeOperationMetadata struct {
8174	// State: Required. Output only. The current state of this operation.
8175	//
8176	// Possible values:
8177	//   "STATE_UNSPECIFIED" - State unspecified.
8178	//   "PENDING" - The operation has been created.
8179	//   "RUNNING" - The operation is currently running.
8180	//   "DONE" - The operation is done, either cancelled or completed.
8181	State string `json:"state,omitempty"`
8182
8183	// ForceSendFields is a list of field names (e.g. "State") to
8184	// unconditionally include in API requests. By default, fields with
8185	// empty values are omitted from API requests. However, any non-pointer,
8186	// non-interface field appearing in ForceSendFields will be sent to the
8187	// server regardless of whether the field is empty or not. This may be
8188	// used to include empty fields in Patch requests.
8189	ForceSendFields []string `json:"-"`
8190
8191	// NullFields is a list of field names (e.g. "State") to include in API
8192	// requests with the JSON null value. By default, fields with empty
8193	// values are omitted from API requests. However, any field with an
8194	// empty value appearing in NullFields will be sent to the server as
8195	// null. It is an error if a field in this list has a non-empty value.
8196	// This may be used to include null fields in Patch requests.
8197	NullFields []string `json:"-"`
8198}
8199
8200func (s *GoogleCloudDialogflowCxV3beta1GenericKnowledgeOperationMetadata) MarshalJSON() ([]byte, error) {
8201	type NoMethod GoogleCloudDialogflowCxV3beta1GenericKnowledgeOperationMetadata
8202	raw := NoMethod(*s)
8203	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8204}
8205
8206// GoogleCloudDialogflowCxV3beta1ImportDocumentsOperationMetadata:
8207// Metadata for ImportDocuments operation.
8208type GoogleCloudDialogflowCxV3beta1ImportDocumentsOperationMetadata struct {
8209	// GenericMetadata: The generic information of the operation.
8210	GenericMetadata *GoogleCloudDialogflowCxV3beta1GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
8211
8212	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
8213	// unconditionally include in API requests. By default, fields with
8214	// empty values are omitted from API requests. However, any non-pointer,
8215	// non-interface field appearing in ForceSendFields will be sent to the
8216	// server regardless of whether the field is empty or not. This may be
8217	// used to include empty fields in Patch requests.
8218	ForceSendFields []string `json:"-"`
8219
8220	// NullFields is a list of field names (e.g. "GenericMetadata") to
8221	// include in API requests with the JSON null value. By default, fields
8222	// with empty values are omitted from API requests. However, any field
8223	// with an empty value appearing in NullFields will be sent to the
8224	// server as null. It is an error if a field in this list has a
8225	// non-empty value. This may be used to include null fields in Patch
8226	// requests.
8227	NullFields []string `json:"-"`
8228}
8229
8230func (s *GoogleCloudDialogflowCxV3beta1ImportDocumentsOperationMetadata) MarshalJSON() ([]byte, error) {
8231	type NoMethod GoogleCloudDialogflowCxV3beta1ImportDocumentsOperationMetadata
8232	raw := NoMethod(*s)
8233	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8234}
8235
8236// GoogleCloudDialogflowCxV3beta1ImportDocumentsResponse: Response
8237// message for Documents.ImportDocuments.
8238type GoogleCloudDialogflowCxV3beta1ImportDocumentsResponse struct {
8239	// Warnings: Includes details about skipped documents or any other
8240	// warnings.
8241	Warnings []*GoogleRpcStatus `json:"warnings,omitempty"`
8242
8243	// ForceSendFields is a list of field names (e.g. "Warnings") to
8244	// unconditionally include in API requests. By default, fields with
8245	// empty values are omitted from API requests. However, any non-pointer,
8246	// non-interface field appearing in ForceSendFields will be sent to the
8247	// server regardless of whether the field is empty or not. This may be
8248	// used to include empty fields in Patch requests.
8249	ForceSendFields []string `json:"-"`
8250
8251	// NullFields is a list of field names (e.g. "Warnings") to include in
8252	// API requests with the JSON null value. By default, fields with empty
8253	// values are omitted from API requests. However, any field with an
8254	// empty value appearing in NullFields will be sent to the server as
8255	// null. It is an error if a field in this list has a non-empty value.
8256	// This may be used to include null fields in Patch requests.
8257	NullFields []string `json:"-"`
8258}
8259
8260func (s *GoogleCloudDialogflowCxV3beta1ImportDocumentsResponse) MarshalJSON() ([]byte, error) {
8261	type NoMethod GoogleCloudDialogflowCxV3beta1ImportDocumentsResponse
8262	raw := NoMethod(*s)
8263	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8264}
8265
8266// GoogleCloudDialogflowCxV3beta1ImportFlowResponse: The response
8267// message for Flows.ImportFlow.
8268type GoogleCloudDialogflowCxV3beta1ImportFlowResponse struct {
8269	// Flow: The unique identifier of the new flow. Format:
8270	// `projects//locations//agents//flows/`.
8271	Flow string `json:"flow,omitempty"`
8272
8273	// ForceSendFields is a list of field names (e.g. "Flow") to
8274	// unconditionally include in API requests. By default, fields with
8275	// empty values are omitted from API requests. However, any non-pointer,
8276	// non-interface field appearing in ForceSendFields will be sent to the
8277	// server regardless of whether the field is empty or not. This may be
8278	// used to include empty fields in Patch requests.
8279	ForceSendFields []string `json:"-"`
8280
8281	// NullFields is a list of field names (e.g. "Flow") to include in API
8282	// requests with the JSON null value. By default, fields with empty
8283	// values are omitted from API requests. However, any field with an
8284	// empty value appearing in NullFields will be sent to the server as
8285	// null. It is an error if a field in this list has a non-empty value.
8286	// This may be used to include null fields in Patch requests.
8287	NullFields []string `json:"-"`
8288}
8289
8290func (s *GoogleCloudDialogflowCxV3beta1ImportFlowResponse) MarshalJSON() ([]byte, error) {
8291	type NoMethod GoogleCloudDialogflowCxV3beta1ImportFlowResponse
8292	raw := NoMethod(*s)
8293	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8294}
8295
8296// GoogleCloudDialogflowCxV3beta1ImportTestCasesMetadata: Metadata
8297// returned for the TestCases.ImportTestCases long running operation.
8298type GoogleCloudDialogflowCxV3beta1ImportTestCasesMetadata struct {
8299	// Errors: Errors for failed test cases.
8300	Errors []*GoogleCloudDialogflowCxV3beta1TestCaseError `json:"errors,omitempty"`
8301
8302	// ForceSendFields is a list of field names (e.g. "Errors") to
8303	// unconditionally include in API requests. By default, fields with
8304	// empty values are omitted from API requests. However, any non-pointer,
8305	// non-interface field appearing in ForceSendFields will be sent to the
8306	// server regardless of whether the field is empty or not. This may be
8307	// used to include empty fields in Patch requests.
8308	ForceSendFields []string `json:"-"`
8309
8310	// NullFields is a list of field names (e.g. "Errors") to include in API
8311	// requests with the JSON null value. By default, fields with empty
8312	// values are omitted from API requests. However, any field with an
8313	// empty value appearing in NullFields will be sent to the server as
8314	// null. It is an error if a field in this list has a non-empty value.
8315	// This may be used to include null fields in Patch requests.
8316	NullFields []string `json:"-"`
8317}
8318
8319func (s *GoogleCloudDialogflowCxV3beta1ImportTestCasesMetadata) MarshalJSON() ([]byte, error) {
8320	type NoMethod GoogleCloudDialogflowCxV3beta1ImportTestCasesMetadata
8321	raw := NoMethod(*s)
8322	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8323}
8324
8325// GoogleCloudDialogflowCxV3beta1ImportTestCasesResponse: The response
8326// message for TestCases.ImportTestCases.
8327type GoogleCloudDialogflowCxV3beta1ImportTestCasesResponse struct {
8328	// Names: The unique identifiers of the new test cases. Format:
8329	// `projects//locations//agents//testCases/`.
8330	Names []string `json:"names,omitempty"`
8331
8332	// ForceSendFields is a list of field names (e.g. "Names") to
8333	// unconditionally include in API requests. By default, fields with
8334	// empty values are omitted from API requests. However, any non-pointer,
8335	// non-interface field appearing in ForceSendFields will be sent to the
8336	// server regardless of whether the field is empty or not. This may be
8337	// used to include empty fields in Patch requests.
8338	ForceSendFields []string `json:"-"`
8339
8340	// NullFields is a list of field names (e.g. "Names") to include in API
8341	// requests with the JSON null value. By default, fields with empty
8342	// values are omitted from API requests. However, any field with an
8343	// empty value appearing in NullFields will be sent to the server as
8344	// null. It is an error if a field in this list has a non-empty value.
8345	// This may be used to include null fields in Patch requests.
8346	NullFields []string `json:"-"`
8347}
8348
8349func (s *GoogleCloudDialogflowCxV3beta1ImportTestCasesResponse) MarshalJSON() ([]byte, error) {
8350	type NoMethod GoogleCloudDialogflowCxV3beta1ImportTestCasesResponse
8351	raw := NoMethod(*s)
8352	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8353}
8354
8355// GoogleCloudDialogflowCxV3beta1InputAudioConfig: Instructs the speech
8356// recognizer on how to process the audio content.
8357type GoogleCloudDialogflowCxV3beta1InputAudioConfig struct {
8358	// AudioEncoding: Required. Audio encoding of the audio content to
8359	// process.
8360	//
8361	// Possible values:
8362	//   "AUDIO_ENCODING_UNSPECIFIED" - Not specified.
8363	//   "AUDIO_ENCODING_LINEAR_16" - Uncompressed 16-bit signed
8364	// little-endian samples (Linear PCM).
8365	//   "AUDIO_ENCODING_FLAC" -
8366	// [`FLAC`](https://xiph.org/flac/documentation.html) (Free Lossless
8367	// Audio Codec) is the recommended encoding because it is lossless
8368	// (therefore recognition is not compromised) and requires only about
8369	// half the bandwidth of `LINEAR16`. `FLAC` stream encoding supports
8370	// 16-bit and 24-bit samples, however, not all fields in `STREAMINFO`
8371	// are supported.
8372	//   "AUDIO_ENCODING_MULAW" - 8-bit samples that compand 14-bit audio
8373	// samples using G.711 PCMU/mu-law.
8374	//   "AUDIO_ENCODING_AMR" - Adaptive Multi-Rate Narrowband codec.
8375	// `sample_rate_hertz` must be 8000.
8376	//   "AUDIO_ENCODING_AMR_WB" - Adaptive Multi-Rate Wideband codec.
8377	// `sample_rate_hertz` must be 16000.
8378	//   "AUDIO_ENCODING_OGG_OPUS" - Opus encoded audio frames in Ogg
8379	// container ([OggOpus](https://wiki.xiph.org/OggOpus)).
8380	// `sample_rate_hertz` must be 16000.
8381	//   "AUDIO_ENCODING_SPEEX_WITH_HEADER_BYTE" - Although the use of lossy
8382	// encodings is not recommended, if a very low bitrate encoding is
8383	// required, `OGG_OPUS` is highly preferred over Speex encoding. The
8384	// [Speex](https://speex.org/) encoding supported by Dialogflow API has
8385	// a header byte in each block, as in MIME type
8386	// `audio/x-speex-with-header-byte`. It is a variant of the RTP Speex
8387	// encoding defined in [RFC 5574](https://tools.ietf.org/html/rfc5574).
8388	// The stream is a sequence of blocks, one block per RTP packet. Each
8389	// block starts with a byte containing the length of the block, in
8390	// bytes, followed by one or more frames of Speex data, padded to an
8391	// integral number of bytes (octets) as specified in RFC 5574. In other
8392	// words, each RTP header is replaced with a single byte containing the
8393	// block length. Only Speex wideband is supported. `sample_rate_hertz`
8394	// must be 16000.
8395	AudioEncoding string `json:"audioEncoding,omitempty"`
8396
8397	// EnableWordInfo: Optional. If `true`, Dialogflow returns
8398	// SpeechWordInfo in StreamingRecognitionResult with information about
8399	// the recognized speech words, e.g. start and end time offsets. If
8400	// false or unspecified, Speech doesn't return any word-level
8401	// information.
8402	EnableWordInfo bool `json:"enableWordInfo,omitempty"`
8403
8404	// Model: Optional. Which Speech model to select for the given request.
8405	// Select the model best suited to your domain to get best results. If a
8406	// model is not explicitly specified, then we auto-select a model based
8407	// on the parameters in the InputAudioConfig. If enhanced speech model
8408	// is enabled for the agent and an enhanced version of the specified
8409	// model for the language does not exist, then the speech is recognized
8410	// using the standard version of the specified model. Refer to Cloud
8411	// Speech API documentation
8412	// (https://cloud.google.com/speech-to-text/docs/basics#select-model)
8413	// for more details.
8414	Model string `json:"model,omitempty"`
8415
8416	// ModelVariant: Optional. Which variant of the Speech model to use.
8417	//
8418	// Possible values:
8419	//   "SPEECH_MODEL_VARIANT_UNSPECIFIED" - No model variant specified. In
8420	// this case Dialogflow defaults to USE_BEST_AVAILABLE.
8421	//   "USE_BEST_AVAILABLE" - Use the best available variant of the Speech
8422	// model that the caller is eligible for. Please see the [Dialogflow
8423	// docs](https://cloud.google.com/dialogflow/docs/data-logging) for how
8424	// to make your project eligible for enhanced models.
8425	//   "USE_STANDARD" - Use standard model variant even if an enhanced
8426	// model is available. See the [Cloud Speech
8427	// documentation](https://cloud.google.com/speech-to-text/docs/enhanced-m
8428	// odels) for details about enhanced models.
8429	//   "USE_ENHANCED" - Use an enhanced model variant: * If an enhanced
8430	// variant does not exist for the given model and request language,
8431	// Dialogflow falls back to the standard variant. The [Cloud Speech
8432	// documentation](https://cloud.google.com/speech-to-text/docs/enhanced-m
8433	// odels) describes which models have enhanced variants. * If the API
8434	// caller isn't eligible for enhanced models, Dialogflow returns an
8435	// error. Please see the [Dialogflow
8436	// docs](https://cloud.google.com/dialogflow/docs/data-logging) for how
8437	// to make your project eligible.
8438	ModelVariant string `json:"modelVariant,omitempty"`
8439
8440	// PhraseHints: Optional. A list of strings containing words and phrases
8441	// that the speech recognizer should recognize with higher likelihood.
8442	// See the Cloud Speech documentation
8443	// (https://cloud.google.com/speech-to-text/docs/basics#phrase-hints)
8444	// for more details.
8445	PhraseHints []string `json:"phraseHints,omitempty"`
8446
8447	// SampleRateHertz: Sample rate (in Hertz) of the audio content sent in
8448	// the query. Refer to Cloud Speech API documentation
8449	// (https://cloud.google.com/speech-to-text/docs/basics) for more
8450	// details.
8451	SampleRateHertz int64 `json:"sampleRateHertz,omitempty"`
8452
8453	// SingleUtterance: Optional. If `false` (default), recognition does not
8454	// cease until the client closes the stream. If `true`, the recognizer
8455	// will detect a single spoken utterance in input audio. Recognition
8456	// ceases when it detects the audio's voice has stopped or paused. In
8457	// this case, once a detected intent is received, the client should
8458	// close the stream and start a new request with a new stream as needed.
8459	// Note: This setting is relevant only for streaming methods.
8460	SingleUtterance bool `json:"singleUtterance,omitempty"`
8461
8462	// ForceSendFields is a list of field names (e.g. "AudioEncoding") to
8463	// unconditionally include in API requests. By default, fields with
8464	// empty values are omitted from API requests. However, any non-pointer,
8465	// non-interface field appearing in ForceSendFields will be sent to the
8466	// server regardless of whether the field is empty or not. This may be
8467	// used to include empty fields in Patch requests.
8468	ForceSendFields []string `json:"-"`
8469
8470	// NullFields is a list of field names (e.g. "AudioEncoding") to include
8471	// in API requests with the JSON null value. By default, fields with
8472	// empty values are omitted from API requests. However, any field with
8473	// an empty value appearing in NullFields will be sent to the server as
8474	// null. It is an error if a field in this list has a non-empty value.
8475	// This may be used to include null fields in Patch requests.
8476	NullFields []string `json:"-"`
8477}
8478
8479func (s *GoogleCloudDialogflowCxV3beta1InputAudioConfig) MarshalJSON() ([]byte, error) {
8480	type NoMethod GoogleCloudDialogflowCxV3beta1InputAudioConfig
8481	raw := NoMethod(*s)
8482	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8483}
8484
8485// GoogleCloudDialogflowCxV3beta1Intent: An intent represents a user's
8486// intent to interact with a conversational agent. You can provide
8487// information for the Dialogflow API to use to match user input to an
8488// intent by adding training phrases (i.e., examples of user input) to
8489// your intent.
8490type GoogleCloudDialogflowCxV3beta1Intent struct {
8491	// Description: Human readable description for better understanding an
8492	// intent like its scope, content, result etc. Maximum character limit:
8493	// 140 characters.
8494	Description string `json:"description,omitempty"`
8495
8496	// DisplayName: Required. The human-readable name of the intent, unique
8497	// within the agent.
8498	DisplayName string `json:"displayName,omitempty"`
8499
8500	// IsFallback: Indicates whether this is a fallback intent. Currently
8501	// only default fallback intent is allowed in the agent, which is added
8502	// upon agent creation. Adding training phrases to fallback intent is
8503	// useful in the case of requests that are mistakenly matched, since
8504	// training phrases assigned to fallback intents act as negative
8505	// examples that triggers no-match event.
8506	IsFallback bool `json:"isFallback,omitempty"`
8507
8508	// Labels: The key/value metadata to label an intent. Labels can contain
8509	// lowercase letters, digits and the symbols '-' and '_'. International
8510	// characters are allowed, including letters from unicase alphabets.
8511	// Keys must start with a letter. Keys and values can be no longer than
8512	// 63 characters and no more than 128 bytes. Prefix "sys-" is reserved
8513	// for Dialogflow defined labels. Currently allowed Dialogflow defined
8514	// labels include: * sys-head * sys-contextual The above labels do not
8515	// require value. "sys-head" means the intent is a head intent.
8516	// "sys-contextual" means the intent is a contextual intent.
8517	Labels map[string]string `json:"labels,omitempty"`
8518
8519	// Name: The unique identifier of the intent. Required for the
8520	// Intents.UpdateIntent method. Intents.CreateIntent populates the name
8521	// automatically. Format: `projects//locations//agents//intents/`.
8522	Name string `json:"name,omitempty"`
8523
8524	// Parameters: The collection of parameters associated with the intent.
8525	Parameters []*GoogleCloudDialogflowCxV3beta1IntentParameter `json:"parameters,omitempty"`
8526
8527	// Priority: The priority of this intent. Higher numbers represent
8528	// higher priorities. - If the supplied value is unspecified or 0, the
8529	// service translates the value to 500,000, which corresponds to the
8530	// `Normal` priority in the console. - If the supplied value is
8531	// negative, the intent is ignored in runtime detect intent requests.
8532	Priority int64 `json:"priority,omitempty"`
8533
8534	// TrainingPhrases: The collection of training phrases the agent is
8535	// trained on to identify the intent.
8536	TrainingPhrases []*GoogleCloudDialogflowCxV3beta1IntentTrainingPhrase `json:"trainingPhrases,omitempty"`
8537
8538	// ForceSendFields is a list of field names (e.g. "Description") to
8539	// unconditionally include in API requests. By default, fields with
8540	// empty values are omitted from API requests. However, any non-pointer,
8541	// non-interface field appearing in ForceSendFields will be sent to the
8542	// server regardless of whether the field is empty or not. This may be
8543	// used to include empty fields in Patch requests.
8544	ForceSendFields []string `json:"-"`
8545
8546	// NullFields is a list of field names (e.g. "Description") to include
8547	// in API requests with the JSON null value. By default, fields with
8548	// empty values are omitted from API requests. However, any field with
8549	// an empty value appearing in NullFields will be sent to the server as
8550	// null. It is an error if a field in this list has a non-empty value.
8551	// This may be used to include null fields in Patch requests.
8552	NullFields []string `json:"-"`
8553}
8554
8555func (s *GoogleCloudDialogflowCxV3beta1Intent) MarshalJSON() ([]byte, error) {
8556	type NoMethod GoogleCloudDialogflowCxV3beta1Intent
8557	raw := NoMethod(*s)
8558	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8559}
8560
8561// GoogleCloudDialogflowCxV3beta1IntentInput: Represents the intent to
8562// trigger programmatically rather than as a result of natural language
8563// processing.
8564type GoogleCloudDialogflowCxV3beta1IntentInput struct {
8565	// Intent: Required. The unique identifier of the intent. Format:
8566	// `projects//locations//agents//intents/`.
8567	Intent string `json:"intent,omitempty"`
8568
8569	// ForceSendFields is a list of field names (e.g. "Intent") to
8570	// unconditionally include in API requests. By default, fields with
8571	// empty values are omitted from API requests. However, any non-pointer,
8572	// non-interface field appearing in ForceSendFields will be sent to the
8573	// server regardless of whether the field is empty or not. This may be
8574	// used to include empty fields in Patch requests.
8575	ForceSendFields []string `json:"-"`
8576
8577	// NullFields is a list of field names (e.g. "Intent") to include in API
8578	// requests with the JSON null value. By default, fields with empty
8579	// values are omitted from API requests. However, any field with an
8580	// empty value appearing in NullFields will be sent to the server as
8581	// null. It is an error if a field in this list has a non-empty value.
8582	// This may be used to include null fields in Patch requests.
8583	NullFields []string `json:"-"`
8584}
8585
8586func (s *GoogleCloudDialogflowCxV3beta1IntentInput) MarshalJSON() ([]byte, error) {
8587	type NoMethod GoogleCloudDialogflowCxV3beta1IntentInput
8588	raw := NoMethod(*s)
8589	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8590}
8591
8592// GoogleCloudDialogflowCxV3beta1IntentParameter: Represents an intent
8593// parameter.
8594type GoogleCloudDialogflowCxV3beta1IntentParameter struct {
8595	// EntityType: Required. The entity type of the parameter. Format:
8596	// `projects/-/locations/-/agents/-/entityTypes/` for system entity
8597	// types (for example,
8598	// `projects/-/locations/-/agents/-/entityTypes/sys.date`), or
8599	// `projects//locations//agents//entityTypes/` for developer entity
8600	// types.
8601	EntityType string `json:"entityType,omitempty"`
8602
8603	// Id: Required. The unique identifier of the parameter. This field is
8604	// used by training phrases to annotate their parts.
8605	Id string `json:"id,omitempty"`
8606
8607	// IsList: Indicates whether the parameter represents a list of values.
8608	IsList bool `json:"isList,omitempty"`
8609
8610	// Redact: Indicates whether the parameter content should be redacted in
8611	// log. If redaction is enabled, the parameter content will be replaced
8612	// by parameter name during logging. Note: the parameter content is
8613	// subject to redaction if either parameter level redaction or entity
8614	// type level redaction is enabled.
8615	Redact bool `json:"redact,omitempty"`
8616
8617	// ForceSendFields is a list of field names (e.g. "EntityType") to
8618	// unconditionally include in API requests. By default, fields with
8619	// empty values are omitted from API requests. However, any non-pointer,
8620	// non-interface field appearing in ForceSendFields will be sent to the
8621	// server regardless of whether the field is empty or not. This may be
8622	// used to include empty fields in Patch requests.
8623	ForceSendFields []string `json:"-"`
8624
8625	// NullFields is a list of field names (e.g. "EntityType") to include in
8626	// API requests with the JSON null value. By default, fields with empty
8627	// values are omitted from API requests. However, any field with an
8628	// empty value appearing in NullFields will be sent to the server as
8629	// null. It is an error if a field in this list has a non-empty value.
8630	// This may be used to include null fields in Patch requests.
8631	NullFields []string `json:"-"`
8632}
8633
8634func (s *GoogleCloudDialogflowCxV3beta1IntentParameter) MarshalJSON() ([]byte, error) {
8635	type NoMethod GoogleCloudDialogflowCxV3beta1IntentParameter
8636	raw := NoMethod(*s)
8637	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8638}
8639
8640// GoogleCloudDialogflowCxV3beta1IntentTrainingPhrase: Represents an
8641// example that the agent is trained on to identify the intent.
8642type GoogleCloudDialogflowCxV3beta1IntentTrainingPhrase struct {
8643	// Id: Output only. The unique identifier of the training phrase.
8644	Id string `json:"id,omitempty"`
8645
8646	// Parts: Required. The ordered list of training phrase parts. The parts
8647	// are concatenated in order to form the training phrase. Note: The API
8648	// does not automatically annotate training phrases like the Dialogflow
8649	// Console does. Note: Do not forget to include whitespace at part
8650	// boundaries, so the training phrase is well formatted when the parts
8651	// are concatenated. If the training phrase does not need to be
8652	// annotated with parameters, you just need a single part with only the
8653	// Part.text field set. If you want to annotate the training phrase, you
8654	// must create multiple parts, where the fields of each part are
8655	// populated in one of two ways: - `Part.text` is set to a part of the
8656	// phrase that has no parameters. - `Part.text` is set to a part of the
8657	// phrase that you want to annotate, and the `parameter_id` field is
8658	// set.
8659	Parts []*GoogleCloudDialogflowCxV3beta1IntentTrainingPhrasePart `json:"parts,omitempty"`
8660
8661	// RepeatCount: Indicates how many times this example was added to the
8662	// intent.
8663	RepeatCount int64 `json:"repeatCount,omitempty"`
8664
8665	// ForceSendFields is a list of field names (e.g. "Id") to
8666	// unconditionally include in API requests. By default, fields with
8667	// empty values are omitted from API requests. However, any non-pointer,
8668	// non-interface field appearing in ForceSendFields will be sent to the
8669	// server regardless of whether the field is empty or not. This may be
8670	// used to include empty fields in Patch requests.
8671	ForceSendFields []string `json:"-"`
8672
8673	// NullFields is a list of field names (e.g. "Id") to include in API
8674	// requests with the JSON null value. By default, fields with empty
8675	// values are omitted from API requests. However, any field with an
8676	// empty value appearing in NullFields will be sent to the server as
8677	// null. It is an error if a field in this list has a non-empty value.
8678	// This may be used to include null fields in Patch requests.
8679	NullFields []string `json:"-"`
8680}
8681
8682func (s *GoogleCloudDialogflowCxV3beta1IntentTrainingPhrase) MarshalJSON() ([]byte, error) {
8683	type NoMethod GoogleCloudDialogflowCxV3beta1IntentTrainingPhrase
8684	raw := NoMethod(*s)
8685	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8686}
8687
8688// GoogleCloudDialogflowCxV3beta1IntentTrainingPhrasePart: Represents a
8689// part of a training phrase.
8690type GoogleCloudDialogflowCxV3beta1IntentTrainingPhrasePart struct {
8691	// ParameterId: The parameter used to annotate this part of the training
8692	// phrase. This field is required for annotated parts of the training
8693	// phrase.
8694	ParameterId string `json:"parameterId,omitempty"`
8695
8696	// Text: Required. The text for this part.
8697	Text string `json:"text,omitempty"`
8698
8699	// ForceSendFields is a list of field names (e.g. "ParameterId") to
8700	// unconditionally include in API requests. By default, fields with
8701	// empty values are omitted from API requests. However, any non-pointer,
8702	// non-interface field appearing in ForceSendFields will be sent to the
8703	// server regardless of whether the field is empty or not. This may be
8704	// used to include empty fields in Patch requests.
8705	ForceSendFields []string `json:"-"`
8706
8707	// NullFields is a list of field names (e.g. "ParameterId") to include
8708	// in API requests with the JSON null value. By default, fields with
8709	// empty values are omitted from API requests. However, any field with
8710	// an empty value appearing in NullFields will be sent to the server as
8711	// null. It is an error if a field in this list has a non-empty value.
8712	// This may be used to include null fields in Patch requests.
8713	NullFields []string `json:"-"`
8714}
8715
8716func (s *GoogleCloudDialogflowCxV3beta1IntentTrainingPhrasePart) MarshalJSON() ([]byte, error) {
8717	type NoMethod GoogleCloudDialogflowCxV3beta1IntentTrainingPhrasePart
8718	raw := NoMethod(*s)
8719	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8720}
8721
8722// GoogleCloudDialogflowCxV3beta1Page: A Dialogflow CX conversation
8723// (session) can be described and visualized as a state machine. The
8724// states of a CX session are represented by pages. For each flow, you
8725// define many pages, where your combined pages can handle a complete
8726// conversation on the topics the flow is designed for. At any given
8727// moment, exactly one page is the current page, the current page is
8728// considered active, and the flow associated with that page is
8729// considered active. Every flow has a special start page. When a flow
8730// initially becomes active, the start page page becomes the current
8731// page. For each conversational turn, the current page will either stay
8732// the same or transition to another page. You configure each page to
8733// collect information from the end-user that is relevant for the
8734// conversational state represented by the page. For more information,
8735// see the Page guide
8736// (https://cloud.google.com/dialogflow/cx/docs/concept/page).
8737type GoogleCloudDialogflowCxV3beta1Page struct {
8738	// DisplayName: Required. The human-readable name of the page, unique
8739	// within the agent.
8740	DisplayName string `json:"displayName,omitempty"`
8741
8742	// EntryFulfillment: The fulfillment to call when the session is
8743	// entering the page.
8744	EntryFulfillment *GoogleCloudDialogflowCxV3beta1Fulfillment `json:"entryFulfillment,omitempty"`
8745
8746	// EventHandlers: Handlers associated with the page to handle events
8747	// such as webhook errors, no match or no input.
8748	EventHandlers []*GoogleCloudDialogflowCxV3beta1EventHandler `json:"eventHandlers,omitempty"`
8749
8750	// Form: The form associated with the page, used for collecting
8751	// parameters relevant to the page.
8752	Form *GoogleCloudDialogflowCxV3beta1Form `json:"form,omitempty"`
8753
8754	// Name: The unique identifier of the page. Required for the
8755	// Pages.UpdatePage method. Pages.CreatePage populates the name
8756	// automatically. Format: `projects//locations//agents//flows//pages/`.
8757	Name string `json:"name,omitempty"`
8758
8759	// TransitionRouteGroups: Ordered list of `TransitionRouteGroups`
8760	// associated with the page. Transition route groups must be unique
8761	// within a page. * If multiple transition routes within a page scope
8762	// refer to the same intent, then the precedence order is: page's
8763	// transition route -> page's transition route group -> flow's
8764	// transition routes. * If multiple transition route groups within a
8765	// page contain the same intent, then the first group in the ordered
8766	// list takes precedence.
8767	// Format:`projects//locations//agents//flows//transitionRouteGroups/`.
8768	TransitionRouteGroups []string `json:"transitionRouteGroups,omitempty"`
8769
8770	// TransitionRoutes: A list of transitions for the transition rules of
8771	// this page. They route the conversation to another page in the same
8772	// flow, or another flow. When we are in a certain page, the
8773	// TransitionRoutes are evalauted in the following order: *
8774	// TransitionRoutes defined in the page with intent specified. *
8775	// TransitionRoutes defined in the transition route groups with intent
8776	// specified. * TransitionRoutes defined in flow with intent specified.
8777	// * TransitionRoutes defined in the transition route groups with intent
8778	// specified. * TransitionRoutes defined in the page with only condition
8779	// specified. * TransitionRoutes defined in the transition route groups
8780	// with only condition specified.
8781	TransitionRoutes []*GoogleCloudDialogflowCxV3beta1TransitionRoute `json:"transitionRoutes,omitempty"`
8782
8783	// ForceSendFields is a list of field names (e.g. "DisplayName") to
8784	// unconditionally include in API requests. By default, fields with
8785	// empty values are omitted from API requests. However, any non-pointer,
8786	// non-interface field appearing in ForceSendFields will be sent to the
8787	// server regardless of whether the field is empty or not. This may be
8788	// used to include empty fields in Patch requests.
8789	ForceSendFields []string `json:"-"`
8790
8791	// NullFields is a list of field names (e.g. "DisplayName") to include
8792	// in API requests with the JSON null value. By default, fields with
8793	// empty values are omitted from API requests. However, any field with
8794	// an empty value appearing in NullFields will be sent to the server as
8795	// null. It is an error if a field in this list has a non-empty value.
8796	// This may be used to include null fields in Patch requests.
8797	NullFields []string `json:"-"`
8798}
8799
8800func (s *GoogleCloudDialogflowCxV3beta1Page) MarshalJSON() ([]byte, error) {
8801	type NoMethod GoogleCloudDialogflowCxV3beta1Page
8802	raw := NoMethod(*s)
8803	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8804}
8805
8806// GoogleCloudDialogflowCxV3beta1PageInfo: Represents page information
8807// communicated to and from the webhook.
8808type GoogleCloudDialogflowCxV3beta1PageInfo struct {
8809	// CurrentPage: Always present for WebhookRequest. Ignored for
8810	// WebhookResponse. The unique identifier of the current page. Format:
8811	// `projects//locations//agents//flows//pages/`.
8812	CurrentPage string `json:"currentPage,omitempty"`
8813
8814	// FormInfo: Optional for both WebhookRequest and WebhookResponse.
8815	// Information about the form.
8816	FormInfo *GoogleCloudDialogflowCxV3beta1PageInfoFormInfo `json:"formInfo,omitempty"`
8817
8818	// ForceSendFields is a list of field names (e.g. "CurrentPage") to
8819	// unconditionally include in API requests. By default, fields with
8820	// empty values are omitted from API requests. However, any non-pointer,
8821	// non-interface field appearing in ForceSendFields will be sent to the
8822	// server regardless of whether the field is empty or not. This may be
8823	// used to include empty fields in Patch requests.
8824	ForceSendFields []string `json:"-"`
8825
8826	// NullFields is a list of field names (e.g. "CurrentPage") to include
8827	// in API requests with the JSON null value. By default, fields with
8828	// empty values are omitted from API requests. However, any field with
8829	// an empty value appearing in NullFields will be sent to the server as
8830	// null. It is an error if a field in this list has a non-empty value.
8831	// This may be used to include null fields in Patch requests.
8832	NullFields []string `json:"-"`
8833}
8834
8835func (s *GoogleCloudDialogflowCxV3beta1PageInfo) MarshalJSON() ([]byte, error) {
8836	type NoMethod GoogleCloudDialogflowCxV3beta1PageInfo
8837	raw := NoMethod(*s)
8838	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8839}
8840
8841// GoogleCloudDialogflowCxV3beta1PageInfoFormInfo: Represents form
8842// information.
8843type GoogleCloudDialogflowCxV3beta1PageInfoFormInfo struct {
8844	// ParameterInfo: Optional for both WebhookRequest and WebhookResponse.
8845	// The parameters contained in the form. Note that the webhook cannot
8846	// add or remove any form parameter.
8847	ParameterInfo []*GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo `json:"parameterInfo,omitempty"`
8848
8849	// ForceSendFields is a list of field names (e.g. "ParameterInfo") to
8850	// unconditionally include in API requests. By default, fields with
8851	// empty values are omitted from API requests. However, any non-pointer,
8852	// non-interface field appearing in ForceSendFields will be sent to the
8853	// server regardless of whether the field is empty or not. This may be
8854	// used to include empty fields in Patch requests.
8855	ForceSendFields []string `json:"-"`
8856
8857	// NullFields is a list of field names (e.g. "ParameterInfo") to include
8858	// in API requests with the JSON null value. By default, fields with
8859	// empty values are omitted from API requests. However, any field with
8860	// an empty value appearing in NullFields will be sent to the server as
8861	// null. It is an error if a field in this list has a non-empty value.
8862	// This may be used to include null fields in Patch requests.
8863	NullFields []string `json:"-"`
8864}
8865
8866func (s *GoogleCloudDialogflowCxV3beta1PageInfoFormInfo) MarshalJSON() ([]byte, error) {
8867	type NoMethod GoogleCloudDialogflowCxV3beta1PageInfoFormInfo
8868	raw := NoMethod(*s)
8869	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8870}
8871
8872// GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo:
8873// Represents parameter information.
8874type GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo struct {
8875	// DisplayName: Always present for WebhookRequest. Required for
8876	// WebhookResponse. The human-readable name of the parameter, unique
8877	// within the form. This field cannot be modified by the webhook.
8878	DisplayName string `json:"displayName,omitempty"`
8879
8880	// JustCollected: Optional for WebhookRequest. Ignored for
8881	// WebhookResponse. Indicates if the parameter value was just collected
8882	// on the last conversation turn.
8883	JustCollected bool `json:"justCollected,omitempty"`
8884
8885	// Required: Optional for both WebhookRequest and WebhookResponse.
8886	// Indicates whether the parameter is required. Optional parameters will
8887	// not trigger prompts; however, they are filled if the user specifies
8888	// them. Required parameters must be filled before form filling
8889	// concludes.
8890	Required bool `json:"required,omitempty"`
8891
8892	// State: Always present for WebhookRequest. Required for
8893	// WebhookResponse. The state of the parameter. This field can be set to
8894	// INVALID by the webhook to invalidate the parameter; other values set
8895	// by the webhook will be ignored.
8896	//
8897	// Possible values:
8898	//   "PARAMETER_STATE_UNSPECIFIED" - Not specified. This value should be
8899	// never used.
8900	//   "EMPTY" - Indicates that the parameter does not have a value.
8901	//   "INVALID" - Indicates that the parameter value is invalid. This
8902	// field can be used by the webhook to invalidate the parameter and ask
8903	// the server to collect it from the user again.
8904	//   "FILLED" - Indicates that the parameter has a value.
8905	State string `json:"state,omitempty"`
8906
8907	// Value: Optional for both WebhookRequest and WebhookResponse. The
8908	// value of the parameter. This field can be set by the webhook to
8909	// change the parameter value.
8910	Value interface{} `json:"value,omitempty"`
8911
8912	// ForceSendFields is a list of field names (e.g. "DisplayName") to
8913	// unconditionally include in API requests. By default, fields with
8914	// empty values are omitted from API requests. However, any non-pointer,
8915	// non-interface field appearing in ForceSendFields will be sent to the
8916	// server regardless of whether the field is empty or not. This may be
8917	// used to include empty fields in Patch requests.
8918	ForceSendFields []string `json:"-"`
8919
8920	// NullFields is a list of field names (e.g. "DisplayName") to include
8921	// in API requests with the JSON null value. By default, fields with
8922	// empty values are omitted from API requests. However, any field with
8923	// an empty value appearing in NullFields will be sent to the server as
8924	// null. It is an error if a field in this list has a non-empty value.
8925	// This may be used to include null fields in Patch requests.
8926	NullFields []string `json:"-"`
8927}
8928
8929func (s *GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo) MarshalJSON() ([]byte, error) {
8930	type NoMethod GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo
8931	raw := NoMethod(*s)
8932	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8933}
8934
8935// GoogleCloudDialogflowCxV3beta1QueryInput: Represents the query input.
8936// It can contain one of: 1. A conversational query in the form of text.
8937// 2. An intent query that specifies which intent to trigger. 3. Natural
8938// language speech audio to be processed. 4. An event to be triggered.
8939type GoogleCloudDialogflowCxV3beta1QueryInput struct {
8940	// Audio: The natural language speech audio to be processed.
8941	Audio *GoogleCloudDialogflowCxV3beta1AudioInput `json:"audio,omitempty"`
8942
8943	// Dtmf: The DTMF event to be handled.
8944	Dtmf *GoogleCloudDialogflowCxV3beta1DtmfInput `json:"dtmf,omitempty"`
8945
8946	// Event: The event to be triggered.
8947	Event *GoogleCloudDialogflowCxV3beta1EventInput `json:"event,omitempty"`
8948
8949	// Intent: The intent to be triggered.
8950	Intent *GoogleCloudDialogflowCxV3beta1IntentInput `json:"intent,omitempty"`
8951
8952	// LanguageCode: Required. The language of the input. See Language
8953	// Support
8954	// (https://cloud.google.com/dialogflow/cx/docs/reference/language) for
8955	// a list of the currently supported language codes. Note that queries
8956	// in the same session do not necessarily need to specify the same
8957	// language.
8958	LanguageCode string `json:"languageCode,omitempty"`
8959
8960	// Text: The natural language text to be processed.
8961	Text *GoogleCloudDialogflowCxV3beta1TextInput `json:"text,omitempty"`
8962
8963	// ForceSendFields is a list of field names (e.g. "Audio") to
8964	// unconditionally include in API requests. By default, fields with
8965	// empty values are omitted from API requests. However, any non-pointer,
8966	// non-interface field appearing in ForceSendFields will be sent to the
8967	// server regardless of whether the field is empty or not. This may be
8968	// used to include empty fields in Patch requests.
8969	ForceSendFields []string `json:"-"`
8970
8971	// NullFields is a list of field names (e.g. "Audio") to include in API
8972	// requests with the JSON null value. By default, fields with empty
8973	// values are omitted from API requests. However, any field with an
8974	// empty value appearing in NullFields will be sent to the server as
8975	// null. It is an error if a field in this list has a non-empty value.
8976	// This may be used to include null fields in Patch requests.
8977	NullFields []string `json:"-"`
8978}
8979
8980func (s *GoogleCloudDialogflowCxV3beta1QueryInput) MarshalJSON() ([]byte, error) {
8981	type NoMethod GoogleCloudDialogflowCxV3beta1QueryInput
8982	raw := NoMethod(*s)
8983	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8984}
8985
8986// GoogleCloudDialogflowCxV3beta1ReloadDocumentOperationMetadata:
8987// Metadata for ReloadDocument operation.
8988type GoogleCloudDialogflowCxV3beta1ReloadDocumentOperationMetadata struct {
8989	// GenericMetadata: The generic information of the operation.
8990	GenericMetadata *GoogleCloudDialogflowCxV3beta1GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
8991
8992	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
8993	// unconditionally include in API requests. By default, fields with
8994	// empty values are omitted from API requests. However, any non-pointer,
8995	// non-interface field appearing in ForceSendFields will be sent to the
8996	// server regardless of whether the field is empty or not. This may be
8997	// used to include empty fields in Patch requests.
8998	ForceSendFields []string `json:"-"`
8999
9000	// NullFields is a list of field names (e.g. "GenericMetadata") to
9001	// include in API requests with the JSON null value. By default, fields
9002	// with empty values are omitted from API requests. However, any field
9003	// with an empty value appearing in NullFields will be sent to the
9004	// server as null. It is an error if a field in this list has a
9005	// non-empty value. This may be used to include null fields in Patch
9006	// requests.
9007	NullFields []string `json:"-"`
9008}
9009
9010func (s *GoogleCloudDialogflowCxV3beta1ReloadDocumentOperationMetadata) MarshalJSON() ([]byte, error) {
9011	type NoMethod GoogleCloudDialogflowCxV3beta1ReloadDocumentOperationMetadata
9012	raw := NoMethod(*s)
9013	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9014}
9015
9016// GoogleCloudDialogflowCxV3beta1ResponseMessage: Represents a response
9017// message that can be returned by a conversational agent. Response
9018// messages are also used for output audio synthesis. The approach is as
9019// follows: * If at least one OutputAudioText response is present, then
9020// all OutputAudioText responses are linearly concatenated, and the
9021// result is used for output audio synthesis. * If the OutputAudioText
9022// responses are a mixture of text and SSML, then the concatenated
9023// result is treated as SSML; otherwise, the result is treated as either
9024// text or SSML as appropriate. The agent designer should ideally use
9025// either text or SSML consistently throughout the bot design. *
9026// Otherwise, all Text responses are linearly concatenated, and the
9027// result is used for output audio synthesis. This approach allows for
9028// more sophisticated user experience scenarios, where the text
9029// displayed to the user may differ from what is heard.
9030type GoogleCloudDialogflowCxV3beta1ResponseMessage struct {
9031	// ConversationSuccess: Indicates that the conversation succeeded.
9032	ConversationSuccess *GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess `json:"conversationSuccess,omitempty"`
9033
9034	// EndInteraction: Output only. A signal that indicates the interaction
9035	// with the Dialogflow agent has ended. This message is generated by
9036	// Dialogflow only when the conversation reaches `END_SESSION` page. It
9037	// is not supposed to be defined by the user. It's guaranteed that there
9038	// is at most one such message in each response.
9039	EndInteraction *GoogleCloudDialogflowCxV3beta1ResponseMessageEndInteraction `json:"endInteraction,omitempty"`
9040
9041	// LiveAgentHandoff: Hands off conversation to a human agent.
9042	LiveAgentHandoff *GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff `json:"liveAgentHandoff,omitempty"`
9043
9044	// MixedAudio: Output only. An audio response message composed of both
9045	// the synthesized Dialogflow agent responses and responses defined via
9046	// play_audio. This message is generated by Dialogflow only and not
9047	// supposed to be defined by the user.
9048	MixedAudio *GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudio `json:"mixedAudio,omitempty"`
9049
9050	// OutputAudioText: A text or ssml response that is preferentially used
9051	// for TTS output audio synthesis, as described in the comment on the
9052	// ResponseMessage message.
9053	OutputAudioText *GoogleCloudDialogflowCxV3beta1ResponseMessageOutputAudioText `json:"outputAudioText,omitempty"`
9054
9055	// Payload: Returns a response containing a custom, platform-specific
9056	// payload.
9057	Payload googleapi.RawMessage `json:"payload,omitempty"`
9058
9059	// PlayAudio: Signal that the client should play an audio clip hosted at
9060	// a client-specific URI. Dialogflow uses this to construct mixed_audio.
9061	// However, Dialogflow itself does not try to read or process the URI in
9062	// any way.
9063	PlayAudio *GoogleCloudDialogflowCxV3beta1ResponseMessagePlayAudio `json:"playAudio,omitempty"`
9064
9065	// Text: Returns a text response.
9066	Text *GoogleCloudDialogflowCxV3beta1ResponseMessageText `json:"text,omitempty"`
9067
9068	// ForceSendFields is a list of field names (e.g. "ConversationSuccess")
9069	// to unconditionally include in API requests. By default, fields with
9070	// empty values are omitted from API requests. However, any non-pointer,
9071	// non-interface field appearing in ForceSendFields will be sent to the
9072	// server regardless of whether the field is empty or not. This may be
9073	// used to include empty fields in Patch requests.
9074	ForceSendFields []string `json:"-"`
9075
9076	// NullFields is a list of field names (e.g. "ConversationSuccess") to
9077	// include in API requests with the JSON null value. By default, fields
9078	// with empty values are omitted from API requests. However, any field
9079	// with an empty value appearing in NullFields will be sent to the
9080	// server as null. It is an error if a field in this list has a
9081	// non-empty value. This may be used to include null fields in Patch
9082	// requests.
9083	NullFields []string `json:"-"`
9084}
9085
9086func (s *GoogleCloudDialogflowCxV3beta1ResponseMessage) MarshalJSON() ([]byte, error) {
9087	type NoMethod GoogleCloudDialogflowCxV3beta1ResponseMessage
9088	raw := NoMethod(*s)
9089	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9090}
9091
9092// GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess:
9093// Indicates that the conversation succeeded, i.e., the bot handled the
9094// issue that the customer talked to it about. Dialogflow only uses this
9095// to determine which conversations should be counted as successful and
9096// doesn't process the metadata in this message in any way. Note that
9097// Dialogflow also considers conversations that get to the conversation
9098// end page as successful even if they don't return ConversationSuccess.
9099// You may set this, for example: * In the entry_fulfillment of a Page
9100// if entering the page indicates that the conversation succeeded. * In
9101// a webhook response when you determine that you handled the customer
9102// issue.
9103type GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess struct {
9104	// Metadata: Custom metadata. Dialogflow doesn't impose any structure on
9105	// this.
9106	Metadata googleapi.RawMessage `json:"metadata,omitempty"`
9107
9108	// ForceSendFields is a list of field names (e.g. "Metadata") to
9109	// unconditionally include in API requests. By default, fields with
9110	// empty values are omitted from API requests. However, any non-pointer,
9111	// non-interface field appearing in ForceSendFields will be sent to the
9112	// server regardless of whether the field is empty or not. This may be
9113	// used to include empty fields in Patch requests.
9114	ForceSendFields []string `json:"-"`
9115
9116	// NullFields is a list of field names (e.g. "Metadata") to include in
9117	// API requests with the JSON null value. By default, fields with empty
9118	// values are omitted from API requests. However, any field with an
9119	// empty value appearing in NullFields will be sent to the server as
9120	// null. It is an error if a field in this list has a non-empty value.
9121	// This may be used to include null fields in Patch requests.
9122	NullFields []string `json:"-"`
9123}
9124
9125func (s *GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess) MarshalJSON() ([]byte, error) {
9126	type NoMethod GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess
9127	raw := NoMethod(*s)
9128	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9129}
9130
9131// GoogleCloudDialogflowCxV3beta1ResponseMessageEndInteraction:
9132// Indicates that interaction with the Dialogflow agent has ended. This
9133// message is generated by Dialogflow only and not supposed to be
9134// defined by the user.
9135type GoogleCloudDialogflowCxV3beta1ResponseMessageEndInteraction struct {
9136}
9137
9138// GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff:
9139// Indicates that the conversation should be handed off to a live agent.
9140// Dialogflow only uses this to determine which conversations were
9141// handed off to a human agent for measurement purposes. What else to do
9142// with this signal is up to you and your handoff procedures. You may
9143// set this, for example: * In the entry_fulfillment of a Page if
9144// entering the page indicates something went extremely wrong in the
9145// conversation. * In a webhook response when you determine that the
9146// customer issue can only be handled by a human.
9147type GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff struct {
9148	// Metadata: Custom metadata for your handoff procedure. Dialogflow
9149	// doesn't impose any structure on this.
9150	Metadata googleapi.RawMessage `json:"metadata,omitempty"`
9151
9152	// ForceSendFields is a list of field names (e.g. "Metadata") to
9153	// unconditionally include in API requests. By default, fields with
9154	// empty values are omitted from API requests. However, any non-pointer,
9155	// non-interface field appearing in ForceSendFields will be sent to the
9156	// server regardless of whether the field is empty or not. This may be
9157	// used to include empty fields in Patch requests.
9158	ForceSendFields []string `json:"-"`
9159
9160	// NullFields is a list of field names (e.g. "Metadata") to include in
9161	// API requests with the JSON null value. By default, fields with empty
9162	// values are omitted from API requests. However, any field with an
9163	// empty value appearing in NullFields will be sent to the server as
9164	// null. It is an error if a field in this list has a non-empty value.
9165	// This may be used to include null fields in Patch requests.
9166	NullFields []string `json:"-"`
9167}
9168
9169func (s *GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff) MarshalJSON() ([]byte, error) {
9170	type NoMethod GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff
9171	raw := NoMethod(*s)
9172	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9173}
9174
9175// GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudio: Represents
9176// an audio message that is composed of both segments synthesized from
9177// the Dialogflow agent prompts and ones hosted externally at the
9178// specified URIs. The external URIs are specified via play_audio. This
9179// message is generated by Dialogflow only and not supposed to be
9180// defined by the user.
9181type GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudio struct {
9182	// Segments: Segments this audio response is composed of.
9183	Segments []*GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudioSegment `json:"segments,omitempty"`
9184
9185	// ForceSendFields is a list of field names (e.g. "Segments") to
9186	// unconditionally include in API requests. By default, fields with
9187	// empty values are omitted from API requests. However, any non-pointer,
9188	// non-interface field appearing in ForceSendFields will be sent to the
9189	// server regardless of whether the field is empty or not. This may be
9190	// used to include empty fields in Patch requests.
9191	ForceSendFields []string `json:"-"`
9192
9193	// NullFields is a list of field names (e.g. "Segments") to include in
9194	// API requests with the JSON null value. By default, fields with empty
9195	// values are omitted from API requests. However, any field with an
9196	// 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 *GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudio) MarshalJSON() ([]byte, error) {
9203	type NoMethod GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudio
9204	raw := NoMethod(*s)
9205	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9206}
9207
9208// GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudioSegment:
9209// Represents one segment of audio.
9210type GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudioSegment struct {
9211	// AllowPlaybackInterruption: Output only. Whether the playback of this
9212	// segment can be interrupted by the end user's speech and the client
9213	// should then start the next Dialogflow request.
9214	AllowPlaybackInterruption bool `json:"allowPlaybackInterruption,omitempty"`
9215
9216	// Audio: Raw audio synthesized from the Dialogflow agent's response
9217	// using the output config specified in the request.
9218	Audio string `json:"audio,omitempty"`
9219
9220	// Uri: Client-specific URI that points to an audio clip accessible to
9221	// the client. Dialogflow does not impose any validation on it.
9222	Uri string `json:"uri,omitempty"`
9223
9224	// ForceSendFields is a list of field names (e.g.
9225	// "AllowPlaybackInterruption") to unconditionally include in API
9226	// requests. By default, fields with empty values are omitted from API
9227	// requests. However, any non-pointer, non-interface field appearing in
9228	// ForceSendFields will be sent to the server regardless of whether the
9229	// field is empty or not. This may be used to include empty fields in
9230	// Patch requests.
9231	ForceSendFields []string `json:"-"`
9232
9233	// NullFields is a list of field names (e.g.
9234	// "AllowPlaybackInterruption") to include in API requests with the JSON
9235	// null value. By default, fields with empty values are omitted from API
9236	// requests. However, any field with an empty value appearing in
9237	// NullFields will be sent to the server as null. It is an error if a
9238	// field in this list has a non-empty value. This may be used to include
9239	// null fields in Patch requests.
9240	NullFields []string `json:"-"`
9241}
9242
9243func (s *GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudioSegment) MarshalJSON() ([]byte, error) {
9244	type NoMethod GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudioSegment
9245	raw := NoMethod(*s)
9246	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9247}
9248
9249// GoogleCloudDialogflowCxV3beta1ResponseMessageOutputAudioText: A text
9250// or ssml response that is preferentially used for TTS output audio
9251// synthesis, as described in the comment on the ResponseMessage
9252// message.
9253type GoogleCloudDialogflowCxV3beta1ResponseMessageOutputAudioText struct {
9254	// AllowPlaybackInterruption: Output only. Whether the playback of this
9255	// message can be interrupted by the end user's speech and the client
9256	// can then starts the next Dialogflow request.
9257	AllowPlaybackInterruption bool `json:"allowPlaybackInterruption,omitempty"`
9258
9259	// Ssml: The SSML text to be synthesized. For more information, see SSML
9260	// (/speech/text-to-speech/docs/ssml).
9261	Ssml string `json:"ssml,omitempty"`
9262
9263	// Text: The raw text to be synthesized.
9264	Text string `json:"text,omitempty"`
9265
9266	// ForceSendFields is a list of field names (e.g.
9267	// "AllowPlaybackInterruption") to unconditionally include in API
9268	// requests. By default, fields with empty values are omitted from API
9269	// requests. However, any non-pointer, non-interface field appearing in
9270	// ForceSendFields will be sent to the server regardless of whether the
9271	// field is empty or not. This may be used to include empty fields in
9272	// Patch requests.
9273	ForceSendFields []string `json:"-"`
9274
9275	// NullFields is a list of field names (e.g.
9276	// "AllowPlaybackInterruption") to include in API requests with the JSON
9277	// null value. By default, fields with empty values are omitted from API
9278	// requests. However, any field with an empty value appearing in
9279	// NullFields will be sent to the server as null. It is an error if a
9280	// field in this list has a non-empty value. This may be used to include
9281	// null fields in Patch requests.
9282	NullFields []string `json:"-"`
9283}
9284
9285func (s *GoogleCloudDialogflowCxV3beta1ResponseMessageOutputAudioText) MarshalJSON() ([]byte, error) {
9286	type NoMethod GoogleCloudDialogflowCxV3beta1ResponseMessageOutputAudioText
9287	raw := NoMethod(*s)
9288	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9289}
9290
9291// GoogleCloudDialogflowCxV3beta1ResponseMessagePlayAudio: Specifies an
9292// audio clip to be played by the client as part of the response.
9293type GoogleCloudDialogflowCxV3beta1ResponseMessagePlayAudio struct {
9294	// AllowPlaybackInterruption: Output only. Whether the playback of this
9295	// message can be interrupted by the end user's speech and the client
9296	// can then starts the next Dialogflow request.
9297	AllowPlaybackInterruption bool `json:"allowPlaybackInterruption,omitempty"`
9298
9299	// AudioUri: Required. URI of the audio clip. Dialogflow does not impose
9300	// any validation on this value. It is specific to the client that reads
9301	// it.
9302	AudioUri string `json:"audioUri,omitempty"`
9303
9304	// ForceSendFields is a list of field names (e.g.
9305	// "AllowPlaybackInterruption") to unconditionally include in API
9306	// requests. By default, fields with empty values are omitted from API
9307	// requests. However, any non-pointer, non-interface field appearing in
9308	// ForceSendFields will be sent to the server regardless of whether the
9309	// field is empty or not. This may be used to include empty fields in
9310	// Patch requests.
9311	ForceSendFields []string `json:"-"`
9312
9313	// NullFields is a list of field names (e.g.
9314	// "AllowPlaybackInterruption") to include in API requests with the JSON
9315	// null value. By default, fields with empty values are omitted from API
9316	// requests. However, any field with an empty value appearing in
9317	// NullFields will be sent to the server as null. It is an error if a
9318	// field in this list has a non-empty value. This may be used to include
9319	// null fields in Patch requests.
9320	NullFields []string `json:"-"`
9321}
9322
9323func (s *GoogleCloudDialogflowCxV3beta1ResponseMessagePlayAudio) MarshalJSON() ([]byte, error) {
9324	type NoMethod GoogleCloudDialogflowCxV3beta1ResponseMessagePlayAudio
9325	raw := NoMethod(*s)
9326	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9327}
9328
9329// GoogleCloudDialogflowCxV3beta1ResponseMessageText: The text response
9330// message.
9331type GoogleCloudDialogflowCxV3beta1ResponseMessageText struct {
9332	// AllowPlaybackInterruption: Output only. Whether the playback of this
9333	// message can be interrupted by the end user's speech and the client
9334	// can then starts the next Dialogflow request.
9335	AllowPlaybackInterruption bool `json:"allowPlaybackInterruption,omitempty"`
9336
9337	// Text: Required. A collection of text responses.
9338	Text []string `json:"text,omitempty"`
9339
9340	// ForceSendFields is a list of field names (e.g.
9341	// "AllowPlaybackInterruption") to unconditionally include in API
9342	// requests. By default, fields with empty values are omitted from API
9343	// requests. However, any non-pointer, non-interface field appearing in
9344	// ForceSendFields will be sent to the server regardless of whether the
9345	// field is empty or not. This may be used to include empty fields in
9346	// Patch requests.
9347	ForceSendFields []string `json:"-"`
9348
9349	// NullFields is a list of field names (e.g.
9350	// "AllowPlaybackInterruption") to include in API requests with the JSON
9351	// null value. By default, fields with empty values are omitted from API
9352	// requests. However, any field with an empty value appearing in
9353	// NullFields will be sent to the server as null. It is an error if a
9354	// field in this list has a non-empty value. This may be used to include
9355	// null fields in Patch requests.
9356	NullFields []string `json:"-"`
9357}
9358
9359func (s *GoogleCloudDialogflowCxV3beta1ResponseMessageText) MarshalJSON() ([]byte, error) {
9360	type NoMethod GoogleCloudDialogflowCxV3beta1ResponseMessageText
9361	raw := NoMethod(*s)
9362	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9363}
9364
9365// GoogleCloudDialogflowCxV3beta1RunContinuousTestMetadata: Metadata
9366// returned for the Environments.RunContinuousTest long running
9367// operation.
9368type GoogleCloudDialogflowCxV3beta1RunContinuousTestMetadata struct {
9369	// Errors: The test errors.
9370	Errors []*GoogleCloudDialogflowCxV3beta1TestError `json:"errors,omitempty"`
9371
9372	// ForceSendFields is a list of field names (e.g. "Errors") to
9373	// unconditionally include in API requests. By default, fields with
9374	// empty values are omitted from API requests. However, any non-pointer,
9375	// non-interface field appearing in ForceSendFields will be sent to the
9376	// server regardless of whether the field is empty or not. This may be
9377	// used to include empty fields in Patch requests.
9378	ForceSendFields []string `json:"-"`
9379
9380	// NullFields is a list of field names (e.g. "Errors") to include in API
9381	// requests with the JSON null value. By default, fields with empty
9382	// values are omitted from API requests. However, any field with an
9383	// empty value appearing in NullFields will be sent to the server as
9384	// null. It is an error if a field in this list has a non-empty value.
9385	// This may be used to include null fields in Patch requests.
9386	NullFields []string `json:"-"`
9387}
9388
9389func (s *GoogleCloudDialogflowCxV3beta1RunContinuousTestMetadata) MarshalJSON() ([]byte, error) {
9390	type NoMethod GoogleCloudDialogflowCxV3beta1RunContinuousTestMetadata
9391	raw := NoMethod(*s)
9392	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9393}
9394
9395// GoogleCloudDialogflowCxV3beta1RunContinuousTestResponse: The response
9396// message for Environments.RunContinuousTest.
9397type GoogleCloudDialogflowCxV3beta1RunContinuousTestResponse struct {
9398	// ContinuousTestResult: The result for a continuous test run.
9399	ContinuousTestResult *GoogleCloudDialogflowCxV3beta1ContinuousTestResult `json:"continuousTestResult,omitempty"`
9400
9401	// ForceSendFields is a list of field names (e.g.
9402	// "ContinuousTestResult") to unconditionally include in API requests.
9403	// By default, fields with empty values are omitted from API requests.
9404	// However, any non-pointer, non-interface field appearing in
9405	// ForceSendFields will be sent to the server regardless of whether the
9406	// field is empty or not. This may be used to include empty fields in
9407	// Patch requests.
9408	ForceSendFields []string `json:"-"`
9409
9410	// NullFields is a list of field names (e.g. "ContinuousTestResult") to
9411	// include in API requests with the JSON null value. By default, fields
9412	// with empty values are omitted from API requests. However, any field
9413	// with an empty value appearing in NullFields will be sent to the
9414	// server as null. It is an error if a field in this list has a
9415	// non-empty value. This may be used to include null fields in Patch
9416	// requests.
9417	NullFields []string `json:"-"`
9418}
9419
9420func (s *GoogleCloudDialogflowCxV3beta1RunContinuousTestResponse) MarshalJSON() ([]byte, error) {
9421	type NoMethod GoogleCloudDialogflowCxV3beta1RunContinuousTestResponse
9422	raw := NoMethod(*s)
9423	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9424}
9425
9426// GoogleCloudDialogflowCxV3beta1RunTestCaseMetadata: Metadata returned
9427// for the TestCases.RunTestCase long running operation.
9428type GoogleCloudDialogflowCxV3beta1RunTestCaseMetadata struct {
9429}
9430
9431// GoogleCloudDialogflowCxV3beta1RunTestCaseResponse: The response
9432// message for TestCases.RunTestCase.
9433type GoogleCloudDialogflowCxV3beta1RunTestCaseResponse struct {
9434	// Result: The result.
9435	Result *GoogleCloudDialogflowCxV3beta1TestCaseResult `json:"result,omitempty"`
9436
9437	// ForceSendFields is a list of field names (e.g. "Result") to
9438	// unconditionally include in API requests. By default, fields with
9439	// empty values are omitted from API requests. However, any non-pointer,
9440	// non-interface field appearing in ForceSendFields will be sent to the
9441	// server regardless of whether the field is empty or not. This may be
9442	// used to include empty fields in Patch requests.
9443	ForceSendFields []string `json:"-"`
9444
9445	// NullFields is a list of field names (e.g. "Result") to include in API
9446	// requests with the JSON null value. By default, fields with empty
9447	// values are omitted from API requests. However, any field with an
9448	// empty value appearing in NullFields will be sent to the server as
9449	// null. It is an error if a field in this list has a non-empty value.
9450	// This may be used to include null fields in Patch requests.
9451	NullFields []string `json:"-"`
9452}
9453
9454func (s *GoogleCloudDialogflowCxV3beta1RunTestCaseResponse) MarshalJSON() ([]byte, error) {
9455	type NoMethod GoogleCloudDialogflowCxV3beta1RunTestCaseResponse
9456	raw := NoMethod(*s)
9457	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9458}
9459
9460// GoogleCloudDialogflowCxV3beta1SessionInfo: Represents session
9461// information communicated to and from the webhook.
9462type GoogleCloudDialogflowCxV3beta1SessionInfo struct {
9463	// Parameters: Optional for WebhookRequest. Optional for
9464	// WebhookResponse. All parameters collected from forms and intents
9465	// during the session. Parameters can be created, updated, or removed by
9466	// the webhook. To remove a parameter from the session, the webhook
9467	// should explicitly set the parameter value to null in WebhookResponse.
9468	// The map is keyed by parameters' display names.
9469	Parameters googleapi.RawMessage `json:"parameters,omitempty"`
9470
9471	// Session: Always present for WebhookRequest. Ignored for
9472	// WebhookResponse. The unique identifier of the session. This field can
9473	// be used by the webhook to identify a session. Format:
9474	// `projects//locations//agents//sessions/` or
9475	// `projects//locations//agents//environments//sessions/` if environment
9476	// is specified.
9477	Session string `json:"session,omitempty"`
9478
9479	// ForceSendFields is a list of field names (e.g. "Parameters") to
9480	// unconditionally include in API requests. By default, fields with
9481	// empty values are omitted from API requests. However, any non-pointer,
9482	// non-interface field appearing in ForceSendFields will be sent to the
9483	// server regardless of whether the field is empty or not. This may be
9484	// used to include empty fields in Patch requests.
9485	ForceSendFields []string `json:"-"`
9486
9487	// NullFields is a list of field names (e.g. "Parameters") to include in
9488	// API requests with the JSON null value. By default, fields with empty
9489	// values are omitted from API requests. However, any field with an
9490	// empty value appearing in NullFields will be sent to the server as
9491	// null. It is an error if a field in this list has a non-empty value.
9492	// This may be used to include null fields in Patch requests.
9493	NullFields []string `json:"-"`
9494}
9495
9496func (s *GoogleCloudDialogflowCxV3beta1SessionInfo) MarshalJSON() ([]byte, error) {
9497	type NoMethod GoogleCloudDialogflowCxV3beta1SessionInfo
9498	raw := NoMethod(*s)
9499	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9500}
9501
9502// GoogleCloudDialogflowCxV3beta1TestCase: Represents a test case.
9503type GoogleCloudDialogflowCxV3beta1TestCase struct {
9504	// CreationTime: Output only. When the test was created.
9505	CreationTime string `json:"creationTime,omitempty"`
9506
9507	// DisplayName: Required. The human-readable name of the test case,
9508	// unique within the agent. Limit of 200 characters.
9509	DisplayName string `json:"displayName,omitempty"`
9510
9511	// LastTestResult: The latest test result.
9512	LastTestResult *GoogleCloudDialogflowCxV3beta1TestCaseResult `json:"lastTestResult,omitempty"`
9513
9514	// Name: The unique identifier of the test case.
9515	// TestCases.CreateTestCase will populate the name automatically.
9516	// Otherwise use format: `projects//locations//agents/ /testCases/`.
9517	Name string `json:"name,omitempty"`
9518
9519	// Notes: Additional freeform notes about the test case. Limit of 400
9520	// characters.
9521	Notes string `json:"notes,omitempty"`
9522
9523	// Tags: Tags are short descriptions that users may apply to test cases
9524	// for organizational and filtering purposes. Each tag should start with
9525	// "#" and has a limit of 30 characters.
9526	Tags []string `json:"tags,omitempty"`
9527
9528	// TestCaseConversationTurns: The conversation turns uttered when the
9529	// test case was created, in chronological order. These include the
9530	// canonical set of agent utterances that should occur when the agent is
9531	// working properly.
9532	TestCaseConversationTurns []*GoogleCloudDialogflowCxV3beta1ConversationTurn `json:"testCaseConversationTurns,omitempty"`
9533
9534	// TestConfig: Config for the test case.
9535	TestConfig *GoogleCloudDialogflowCxV3beta1TestConfig `json:"testConfig,omitempty"`
9536
9537	// ForceSendFields is a list of field names (e.g. "CreationTime") to
9538	// unconditionally include in API requests. By default, fields with
9539	// empty values are omitted from API requests. However, any non-pointer,
9540	// non-interface field appearing in ForceSendFields will be sent to the
9541	// server regardless of whether the field is empty or not. This may be
9542	// used to include empty fields in Patch requests.
9543	ForceSendFields []string `json:"-"`
9544
9545	// NullFields is a list of field names (e.g. "CreationTime") to include
9546	// in API requests with the JSON null value. By default, fields with
9547	// empty values are omitted from API requests. However, any field with
9548	// an empty value appearing in NullFields will be sent to the server as
9549	// null. It is an error if a field in this list has a non-empty value.
9550	// This may be used to include null fields in Patch requests.
9551	NullFields []string `json:"-"`
9552}
9553
9554func (s *GoogleCloudDialogflowCxV3beta1TestCase) MarshalJSON() ([]byte, error) {
9555	type NoMethod GoogleCloudDialogflowCxV3beta1TestCase
9556	raw := NoMethod(*s)
9557	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9558}
9559
9560// GoogleCloudDialogflowCxV3beta1TestCaseError: Error info for importing
9561// a test.
9562type GoogleCloudDialogflowCxV3beta1TestCaseError struct {
9563	// Status: The status associated with the test case.
9564	Status *GoogleRpcStatus `json:"status,omitempty"`
9565
9566	// TestCase: The test case.
9567	TestCase *GoogleCloudDialogflowCxV3beta1TestCase `json:"testCase,omitempty"`
9568
9569	// ForceSendFields is a list of field names (e.g. "Status") to
9570	// unconditionally include in API requests. By default, fields with
9571	// empty values are omitted from API requests. However, any non-pointer,
9572	// non-interface field appearing in ForceSendFields will be sent to the
9573	// server regardless of whether the field is empty or not. This may be
9574	// used to include empty fields in Patch requests.
9575	ForceSendFields []string `json:"-"`
9576
9577	// NullFields is a list of field names (e.g. "Status") to include in API
9578	// requests with the JSON null value. By default, fields with empty
9579	// values are omitted from API requests. However, any field with an
9580	// empty value appearing in NullFields will be sent to the server as
9581	// null. It is an error if a field in this list has a non-empty value.
9582	// This may be used to include null fields in Patch requests.
9583	NullFields []string `json:"-"`
9584}
9585
9586func (s *GoogleCloudDialogflowCxV3beta1TestCaseError) MarshalJSON() ([]byte, error) {
9587	type NoMethod GoogleCloudDialogflowCxV3beta1TestCaseError
9588	raw := NoMethod(*s)
9589	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9590}
9591
9592// GoogleCloudDialogflowCxV3beta1TestCaseResult: Represents a result
9593// from running a test case in an agent environment.
9594type GoogleCloudDialogflowCxV3beta1TestCaseResult struct {
9595	// ConversationTurns: The conversation turns uttered during the test
9596	// case replay in chronological order.
9597	ConversationTurns []*GoogleCloudDialogflowCxV3beta1ConversationTurn `json:"conversationTurns,omitempty"`
9598
9599	// Environment: Environment where the test was run. If not set, it
9600	// indicates the draft environment.
9601	Environment string `json:"environment,omitempty"`
9602
9603	// Name: The resource name for the test case result. Format:
9604	// `projects//locations//agents//testCases/ /results/`.
9605	Name string `json:"name,omitempty"`
9606
9607	// TestResult: Whether the test case passed in the agent environment.
9608	//
9609	// Possible values:
9610	//   "TEST_RESULT_UNSPECIFIED" - Not specified. Should never be used.
9611	//   "PASSED" - The test passed.
9612	//   "FAILED" - The test did not pass.
9613	TestResult string `json:"testResult,omitempty"`
9614
9615	// TestTime: The time that the test was run.
9616	TestTime string `json:"testTime,omitempty"`
9617
9618	// ForceSendFields is a list of field names (e.g. "ConversationTurns")
9619	// to unconditionally include in API requests. By default, fields with
9620	// empty values are omitted from API requests. However, any non-pointer,
9621	// non-interface field appearing in ForceSendFields will be sent to the
9622	// server regardless of whether the field is empty or not. This may be
9623	// used to include empty fields in Patch requests.
9624	ForceSendFields []string `json:"-"`
9625
9626	// NullFields is a list of field names (e.g. "ConversationTurns") to
9627	// include in API requests with the JSON null value. By default, fields
9628	// with empty values are omitted from API requests. However, any field
9629	// with an empty value appearing in NullFields will be sent to the
9630	// server as null. It is an error if a field in this list has a
9631	// non-empty value. This may be used to include null fields in Patch
9632	// requests.
9633	NullFields []string `json:"-"`
9634}
9635
9636func (s *GoogleCloudDialogflowCxV3beta1TestCaseResult) MarshalJSON() ([]byte, error) {
9637	type NoMethod GoogleCloudDialogflowCxV3beta1TestCaseResult
9638	raw := NoMethod(*s)
9639	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9640}
9641
9642// GoogleCloudDialogflowCxV3beta1TestConfig: Represents configurations
9643// for a test case.
9644type GoogleCloudDialogflowCxV3beta1TestConfig struct {
9645	// Flow: Flow name. If not set, default start flow is assumed. Format:
9646	// `projects//locations//agents//flows/`.
9647	Flow string `json:"flow,omitempty"`
9648
9649	// TrackingParameters: Session parameters to be compared when
9650	// calculating differences.
9651	TrackingParameters []string `json:"trackingParameters,omitempty"`
9652
9653	// ForceSendFields is a list of field names (e.g. "Flow") to
9654	// unconditionally include in API requests. By default, fields with
9655	// empty values are omitted from API requests. However, any non-pointer,
9656	// non-interface field appearing in ForceSendFields will be sent to the
9657	// server regardless of whether the field is empty or not. This may be
9658	// used to include empty fields in Patch requests.
9659	ForceSendFields []string `json:"-"`
9660
9661	// NullFields is a list of field names (e.g. "Flow") to include in API
9662	// requests with the JSON null value. By default, fields with empty
9663	// values are omitted from API requests. However, any field with an
9664	// empty value appearing in NullFields will be sent to the server as
9665	// null. It is an error if a field in this list has a non-empty value.
9666	// This may be used to include null fields in Patch requests.
9667	NullFields []string `json:"-"`
9668}
9669
9670func (s *GoogleCloudDialogflowCxV3beta1TestConfig) MarshalJSON() ([]byte, error) {
9671	type NoMethod GoogleCloudDialogflowCxV3beta1TestConfig
9672	raw := NoMethod(*s)
9673	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9674}
9675
9676// GoogleCloudDialogflowCxV3beta1TestError: Error info for running a
9677// test.
9678type GoogleCloudDialogflowCxV3beta1TestError struct {
9679	// Status: The status associated with the test.
9680	Status *GoogleRpcStatus `json:"status,omitempty"`
9681
9682	// TestCase: The test case resource name.
9683	TestCase string `json:"testCase,omitempty"`
9684
9685	// TestTime: The timestamp when the test was completed.
9686	TestTime string `json:"testTime,omitempty"`
9687
9688	// ForceSendFields is a list of field names (e.g. "Status") to
9689	// unconditionally include in API requests. By default, fields with
9690	// empty values are omitted from API requests. However, any non-pointer,
9691	// non-interface field appearing in ForceSendFields will be sent to the
9692	// server regardless of whether the field is empty or not. This may be
9693	// used to include empty fields in Patch requests.
9694	ForceSendFields []string `json:"-"`
9695
9696	// NullFields is a list of field names (e.g. "Status") to include in API
9697	// requests with the JSON null value. By default, fields with empty
9698	// values are omitted from API requests. However, any field with an
9699	// empty value appearing in NullFields will be sent to the server as
9700	// null. It is an error if a field in this list has a non-empty value.
9701	// This may be used to include null fields in Patch requests.
9702	NullFields []string `json:"-"`
9703}
9704
9705func (s *GoogleCloudDialogflowCxV3beta1TestError) MarshalJSON() ([]byte, error) {
9706	type NoMethod GoogleCloudDialogflowCxV3beta1TestError
9707	raw := NoMethod(*s)
9708	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9709}
9710
9711// GoogleCloudDialogflowCxV3beta1TestRunDifference: The description of
9712// differences between original and replayed agent output.
9713type GoogleCloudDialogflowCxV3beta1TestRunDifference struct {
9714	// Description: A description of the diff, showing the actual output vs
9715	// expected output.
9716	Description string `json:"description,omitempty"`
9717
9718	// Type: The type of diff.
9719	//
9720	// Possible values:
9721	//   "DIFF_TYPE_UNSPECIFIED" - Should never be used.
9722	//   "INTENT" - The intent.
9723	//   "PAGE" - The page.
9724	//   "PARAMETERS" - The parameters.
9725	//   "UTTERANCE" - The message utterance.
9726	Type string `json:"type,omitempty"`
9727
9728	// ForceSendFields is a list of field names (e.g. "Description") to
9729	// unconditionally include in API requests. By default, fields with
9730	// empty values are omitted from API requests. However, any non-pointer,
9731	// non-interface field appearing in ForceSendFields will be sent to the
9732	// server regardless of whether the field is empty or not. This may be
9733	// used to include empty fields in Patch requests.
9734	ForceSendFields []string `json:"-"`
9735
9736	// NullFields is a list of field names (e.g. "Description") to include
9737	// in API requests with the JSON null value. By default, fields with
9738	// empty values are omitted from API requests. However, any field with
9739	// an empty value appearing in NullFields will be sent to the server as
9740	// null. It is an error if a field in this list has a non-empty value.
9741	// This may be used to include null fields in Patch requests.
9742	NullFields []string `json:"-"`
9743}
9744
9745func (s *GoogleCloudDialogflowCxV3beta1TestRunDifference) MarshalJSON() ([]byte, error) {
9746	type NoMethod GoogleCloudDialogflowCxV3beta1TestRunDifference
9747	raw := NoMethod(*s)
9748	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9749}
9750
9751// GoogleCloudDialogflowCxV3beta1TextInput: Represents the natural
9752// language text to be processed.
9753type GoogleCloudDialogflowCxV3beta1TextInput struct {
9754	// Text: Required. The UTF-8 encoded natural language text to be
9755	// processed. Text length must not exceed 256 characters.
9756	Text string `json:"text,omitempty"`
9757
9758	// ForceSendFields is a list of field names (e.g. "Text") to
9759	// unconditionally include in API requests. By default, fields with
9760	// empty values are omitted from API requests. However, any non-pointer,
9761	// non-interface field appearing in ForceSendFields will be sent to the
9762	// server regardless of whether the field is empty or not. This may be
9763	// used to include empty fields in Patch requests.
9764	ForceSendFields []string `json:"-"`
9765
9766	// NullFields is a list of field names (e.g. "Text") to include in API
9767	// requests with the JSON null value. By default, fields with empty
9768	// values are omitted from API requests. However, any field with an
9769	// empty value appearing in NullFields will be sent to the server as
9770	// null. It is an error if a field in this list has a non-empty value.
9771	// This may be used to include null fields in Patch requests.
9772	NullFields []string `json:"-"`
9773}
9774
9775func (s *GoogleCloudDialogflowCxV3beta1TextInput) MarshalJSON() ([]byte, error) {
9776	type NoMethod GoogleCloudDialogflowCxV3beta1TextInput
9777	raw := NoMethod(*s)
9778	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9779}
9780
9781// GoogleCloudDialogflowCxV3beta1TransitionRoute: A transition route
9782// specifies a intent that can be matched and/or a data condition that
9783// can be evaluated during a session. When a specified transition is
9784// matched, the following actions are taken in order: * If there is a
9785// `trigger_fulfillment` associated with the transition, it will be
9786// called. * If there is a `target_page` associated with the transition,
9787// the session will transition into the specified page. * If there is a
9788// `target_flow` associated with the transition, the session will
9789// transition into the specified flow.
9790type GoogleCloudDialogflowCxV3beta1TransitionRoute struct {
9791	// Condition: The condition to evaluate against form parameters or
9792	// session parameters. See the conditions reference
9793	// (https://cloud.google.com/dialogflow/cx/docs/reference/condition). At
9794	// least one of `intent` or `condition` must be specified. When both
9795	// `intent` and `condition` are specified, the transition can only
9796	// happen when both are fulfilled.
9797	Condition string `json:"condition,omitempty"`
9798
9799	// Intent: The unique identifier of an Intent. Format:
9800	// `projects//locations//agents//intents/`. Indicates that the
9801	// transition can only happen when the given intent is matched. At least
9802	// one of `intent` or `condition` must be specified. When both `intent`
9803	// and `condition` are specified, the transition can only happen when
9804	// both are fulfilled.
9805	Intent string `json:"intent,omitempty"`
9806
9807	// Name: Output only. The unique identifier of this transition route.
9808	Name string `json:"name,omitempty"`
9809
9810	// TargetFlow: The target flow to transition to. Format:
9811	// `projects//locations//agents//flows/`.
9812	TargetFlow string `json:"targetFlow,omitempty"`
9813
9814	// TargetPage: The target page to transition to. Format:
9815	// `projects//locations//agents//flows//pages/`.
9816	TargetPage string `json:"targetPage,omitempty"`
9817
9818	// TriggerFulfillment: The fulfillment to call when the condition is
9819	// satisfied. At least one of `trigger_fulfillment` and `target` must be
9820	// specified. When both are defined, `trigger_fulfillment` is executed
9821	// first.
9822	TriggerFulfillment *GoogleCloudDialogflowCxV3beta1Fulfillment `json:"triggerFulfillment,omitempty"`
9823
9824	// ForceSendFields is a list of field names (e.g. "Condition") to
9825	// unconditionally include in API requests. By default, fields with
9826	// empty values are omitted from API requests. However, any non-pointer,
9827	// non-interface field appearing in ForceSendFields will be sent to the
9828	// server regardless of whether the field is empty or not. This may be
9829	// used to include empty fields in Patch requests.
9830	ForceSendFields []string `json:"-"`
9831
9832	// NullFields is a list of field names (e.g. "Condition") to include in
9833	// API requests with the JSON null value. By default, fields with empty
9834	// values are omitted from API requests. However, any field with an
9835	// empty value appearing in NullFields will be sent to the server as
9836	// null. It is an error if a field in this list has a non-empty value.
9837	// This may be used to include null fields in Patch requests.
9838	NullFields []string `json:"-"`
9839}
9840
9841func (s *GoogleCloudDialogflowCxV3beta1TransitionRoute) MarshalJSON() ([]byte, error) {
9842	type NoMethod GoogleCloudDialogflowCxV3beta1TransitionRoute
9843	raw := NoMethod(*s)
9844	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9845}
9846
9847// GoogleCloudDialogflowCxV3beta1UpdateDocumentOperationMetadata:
9848// Metadata for UpdateDocument operation.
9849type GoogleCloudDialogflowCxV3beta1UpdateDocumentOperationMetadata struct {
9850	// GenericMetadata: The generic information of the operation.
9851	GenericMetadata *GoogleCloudDialogflowCxV3beta1GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
9852
9853	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
9854	// unconditionally include in API requests. By default, fields with
9855	// empty values are omitted from API requests. However, any non-pointer,
9856	// non-interface field appearing in ForceSendFields will be sent to the
9857	// server regardless of whether the field is empty or not. This may be
9858	// used to include empty fields in Patch requests.
9859	ForceSendFields []string `json:"-"`
9860
9861	// NullFields is a list of field names (e.g. "GenericMetadata") to
9862	// include in API requests with the JSON null value. By default, fields
9863	// with empty values are omitted from API requests. However, any field
9864	// with an empty value appearing in NullFields will be sent to the
9865	// server as null. It is an error if a field in this list has a
9866	// non-empty value. This may be used to include null fields in Patch
9867	// requests.
9868	NullFields []string `json:"-"`
9869}
9870
9871func (s *GoogleCloudDialogflowCxV3beta1UpdateDocumentOperationMetadata) MarshalJSON() ([]byte, error) {
9872	type NoMethod GoogleCloudDialogflowCxV3beta1UpdateDocumentOperationMetadata
9873	raw := NoMethod(*s)
9874	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9875}
9876
9877// GoogleCloudDialogflowCxV3beta1WebhookRequest: The request message for
9878// a webhook call. The request is sent as a JSON object and the field
9879// names will be presented in camel cases.
9880type GoogleCloudDialogflowCxV3beta1WebhookRequest struct {
9881	// DetectIntentResponseId: Always present. The unique identifier of the
9882	// DetectIntentResponse that will be returned to the API caller.
9883	DetectIntentResponseId string `json:"detectIntentResponseId,omitempty"`
9884
9885	// FulfillmentInfo: Always present. Information about the fulfillment
9886	// that triggered this webhook call.
9887	FulfillmentInfo *GoogleCloudDialogflowCxV3beta1WebhookRequestFulfillmentInfo `json:"fulfillmentInfo,omitempty"`
9888
9889	// IntentInfo: Information about the last matched intent.
9890	IntentInfo *GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo `json:"intentInfo,omitempty"`
9891
9892	// LanguageCode: The language code specified in the original request.
9893	LanguageCode string `json:"languageCode,omitempty"`
9894
9895	// Messages: The list of rich message responses to present to the user.
9896	// Webhook can choose to append or replace this list in
9897	// WebhookResponse.fulfillment_response;
9898	Messages []*GoogleCloudDialogflowCxV3beta1ResponseMessage `json:"messages,omitempty"`
9899
9900	// PageInfo: Information about page status.
9901	PageInfo *GoogleCloudDialogflowCxV3beta1PageInfo `json:"pageInfo,omitempty"`
9902
9903	// Payload: Custom data set in QueryParameters.payload.
9904	Payload googleapi.RawMessage `json:"payload,omitempty"`
9905
9906	// SentimentAnalysisResult: The sentiment analysis result of the current
9907	// user request. The field is filled when sentiment analysis is
9908	// configured to be enabled for the request.
9909	SentimentAnalysisResult *GoogleCloudDialogflowCxV3beta1WebhookRequestSentimentAnalysisResult `json:"sentimentAnalysisResult,omitempty"`
9910
9911	// SessionInfo: Information about session status.
9912	SessionInfo *GoogleCloudDialogflowCxV3beta1SessionInfo `json:"sessionInfo,omitempty"`
9913
9914	// Text: If natural language text was provided as input, this field will
9915	// contain a copy of the text.
9916	Text string `json:"text,omitempty"`
9917
9918	// Transcript: If natural language speech audio was provided as input,
9919	// this field will contain the transcript for the audio.
9920	Transcript string `json:"transcript,omitempty"`
9921
9922	// TriggerEvent: If an event was provided as input, this field will
9923	// contain the name of the event.
9924	TriggerEvent string `json:"triggerEvent,omitempty"`
9925
9926	// TriggerIntent: If an intent was provided as input, this field will
9927	// contain a copy of the intent identifier. Format:
9928	// `projects//locations//agents//intents/`.
9929	TriggerIntent string `json:"triggerIntent,omitempty"`
9930
9931	// ForceSendFields is a list of field names (e.g.
9932	// "DetectIntentResponseId") to unconditionally include in API requests.
9933	// By default, fields with empty values are omitted from API requests.
9934	// However, any non-pointer, non-interface field appearing in
9935	// ForceSendFields will be sent to the server regardless of whether the
9936	// field is empty or not. This may be used to include empty fields in
9937	// Patch requests.
9938	ForceSendFields []string `json:"-"`
9939
9940	// NullFields is a list of field names (e.g. "DetectIntentResponseId")
9941	// to include in API requests with the JSON null value. By default,
9942	// fields with empty values are omitted from API requests. However, any
9943	// field with an empty value appearing in NullFields will be sent to the
9944	// server as null. It is an error if a field in this list has a
9945	// non-empty value. This may be used to include null fields in Patch
9946	// requests.
9947	NullFields []string `json:"-"`
9948}
9949
9950func (s *GoogleCloudDialogflowCxV3beta1WebhookRequest) MarshalJSON() ([]byte, error) {
9951	type NoMethod GoogleCloudDialogflowCxV3beta1WebhookRequest
9952	raw := NoMethod(*s)
9953	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9954}
9955
9956// GoogleCloudDialogflowCxV3beta1WebhookRequestFulfillmentInfo:
9957// Represents fulfillment information communicated to the webhook.
9958type GoogleCloudDialogflowCxV3beta1WebhookRequestFulfillmentInfo struct {
9959	// Tag: Always present. The tag used to identify which fulfillment is
9960	// being called.
9961	Tag string `json:"tag,omitempty"`
9962
9963	// ForceSendFields is a list of field names (e.g. "Tag") to
9964	// unconditionally include in API requests. By default, fields with
9965	// empty values are omitted from API requests. However, any non-pointer,
9966	// non-interface field appearing in ForceSendFields will be sent to the
9967	// server regardless of whether the field is empty or not. This may be
9968	// used to include empty fields in Patch requests.
9969	ForceSendFields []string `json:"-"`
9970
9971	// NullFields is a list of field names (e.g. "Tag") to include in API
9972	// requests with the JSON null value. By default, fields with empty
9973	// values are omitted from API requests. However, any field with an
9974	// empty value appearing in NullFields will be sent to the server as
9975	// null. It is an error if a field in this list has a non-empty value.
9976	// This may be used to include null fields in Patch requests.
9977	NullFields []string `json:"-"`
9978}
9979
9980func (s *GoogleCloudDialogflowCxV3beta1WebhookRequestFulfillmentInfo) MarshalJSON() ([]byte, error) {
9981	type NoMethod GoogleCloudDialogflowCxV3beta1WebhookRequestFulfillmentInfo
9982	raw := NoMethod(*s)
9983	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9984}
9985
9986// GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo: Represents
9987// intent information communicated to the webhook.
9988type GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo struct {
9989	// Confidence: The confidence of the matched intent. Values range from
9990	// 0.0 (completely uncertain) to 1.0 (completely certain).
9991	Confidence float64 `json:"confidence,omitempty"`
9992
9993	// DisplayName: Always present. The display name of the last matched
9994	// intent.
9995	DisplayName string `json:"displayName,omitempty"`
9996
9997	// LastMatchedIntent: Always present. The unique identifier of the last
9998	// matched intent. Format: `projects//locations//agents//intents/`.
9999	LastMatchedIntent string `json:"lastMatchedIntent,omitempty"`
10000
10001	// Parameters: Parameters identified as a result of intent matching.
10002	// This is a map of the name of the identified parameter to the value of
10003	// the parameter identified from the user's utterance. All parameters
10004	// defined in the matched intent that are identified will be surfaced
10005	// here.
10006	Parameters map[string]GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfoIntentParameterValue `json:"parameters,omitempty"`
10007
10008	// ForceSendFields is a list of field names (e.g. "Confidence") to
10009	// unconditionally include in API requests. By default, fields with
10010	// empty values are omitted from API requests. However, any non-pointer,
10011	// non-interface field appearing in ForceSendFields will be sent to the
10012	// server regardless of whether the field is empty or not. This may be
10013	// used to include empty fields in Patch requests.
10014	ForceSendFields []string `json:"-"`
10015
10016	// NullFields is a list of field names (e.g. "Confidence") to include in
10017	// API requests with the JSON null value. By default, fields with empty
10018	// values are omitted from API requests. However, any field with an
10019	// empty value appearing in NullFields will be sent to the server as
10020	// null. It is an error if a field in this list has a non-empty value.
10021	// This may be used to include null fields in Patch requests.
10022	NullFields []string `json:"-"`
10023}
10024
10025func (s *GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo) MarshalJSON() ([]byte, error) {
10026	type NoMethod GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo
10027	raw := NoMethod(*s)
10028	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10029}
10030
10031func (s *GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo) UnmarshalJSON(data []byte) error {
10032	type NoMethod GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo
10033	var s1 struct {
10034		Confidence gensupport.JSONFloat64 `json:"confidence"`
10035		*NoMethod
10036	}
10037	s1.NoMethod = (*NoMethod)(s)
10038	if err := json.Unmarshal(data, &s1); err != nil {
10039		return err
10040	}
10041	s.Confidence = float64(s1.Confidence)
10042	return nil
10043}
10044
10045// GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfoIntentParameterV
10046// alue: Represents a value for an intent parameter.
10047type GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfoIntentParameterValue struct {
10048	// OriginalValue: Always present. Original text value extracted from
10049	// user utterance.
10050	OriginalValue string `json:"originalValue,omitempty"`
10051
10052	// ResolvedValue: Always present. Structured value for the parameter
10053	// extracted from user utterance.
10054	ResolvedValue interface{} `json:"resolvedValue,omitempty"`
10055
10056	// ForceSendFields is a list of field names (e.g. "OriginalValue") to
10057	// unconditionally include in API requests. By default, fields with
10058	// empty values are omitted from API requests. However, any non-pointer,
10059	// non-interface field appearing in ForceSendFields will be sent to the
10060	// server regardless of whether the field is empty or not. This may be
10061	// used to include empty fields in Patch requests.
10062	ForceSendFields []string `json:"-"`
10063
10064	// NullFields is a list of field names (e.g. "OriginalValue") to include
10065	// in API requests with the JSON null value. By default, fields with
10066	// empty values are omitted from API requests. However, any field with
10067	// an empty value appearing in NullFields will be sent to the server as
10068	// null. It is an error if a field in this list has a non-empty value.
10069	// This may be used to include null fields in Patch requests.
10070	NullFields []string `json:"-"`
10071}
10072
10073func (s *GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfoIntentParameterValue) MarshalJSON() ([]byte, error) {
10074	type NoMethod GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfoIntentParameterValue
10075	raw := NoMethod(*s)
10076	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10077}
10078
10079// GoogleCloudDialogflowCxV3beta1WebhookRequestSentimentAnalysisResult:
10080// Represents the result of sentiment analysis.
10081type GoogleCloudDialogflowCxV3beta1WebhookRequestSentimentAnalysisResult struct {
10082	// Magnitude: A non-negative number in the [0, +inf) range, which
10083	// represents the absolute magnitude of sentiment, regardless of score
10084	// (positive or negative).
10085	Magnitude float64 `json:"magnitude,omitempty"`
10086
10087	// Score: Sentiment score between -1.0 (negative sentiment) and 1.0
10088	// (positive sentiment).
10089	Score float64 `json:"score,omitempty"`
10090
10091	// ForceSendFields is a list of field names (e.g. "Magnitude") to
10092	// unconditionally include in API requests. By default, fields with
10093	// empty values are omitted from API requests. However, any non-pointer,
10094	// non-interface field appearing in ForceSendFields will be sent to the
10095	// server regardless of whether the field is empty or not. This may be
10096	// used to include empty fields in Patch requests.
10097	ForceSendFields []string `json:"-"`
10098
10099	// NullFields is a list of field names (e.g. "Magnitude") to include in
10100	// API requests with the JSON null value. By default, fields with empty
10101	// values are omitted from API requests. However, any field with an
10102	// empty value appearing in NullFields will be sent to the server as
10103	// null. It is an error if a field in this list has a non-empty value.
10104	// This may be used to include null fields in Patch requests.
10105	NullFields []string `json:"-"`
10106}
10107
10108func (s *GoogleCloudDialogflowCxV3beta1WebhookRequestSentimentAnalysisResult) MarshalJSON() ([]byte, error) {
10109	type NoMethod GoogleCloudDialogflowCxV3beta1WebhookRequestSentimentAnalysisResult
10110	raw := NoMethod(*s)
10111	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10112}
10113
10114func (s *GoogleCloudDialogflowCxV3beta1WebhookRequestSentimentAnalysisResult) UnmarshalJSON(data []byte) error {
10115	type NoMethod GoogleCloudDialogflowCxV3beta1WebhookRequestSentimentAnalysisResult
10116	var s1 struct {
10117		Magnitude gensupport.JSONFloat64 `json:"magnitude"`
10118		Score     gensupport.JSONFloat64 `json:"score"`
10119		*NoMethod
10120	}
10121	s1.NoMethod = (*NoMethod)(s)
10122	if err := json.Unmarshal(data, &s1); err != nil {
10123		return err
10124	}
10125	s.Magnitude = float64(s1.Magnitude)
10126	s.Score = float64(s1.Score)
10127	return nil
10128}
10129
10130// GoogleCloudDialogflowCxV3beta1WebhookResponse: The response message
10131// for a webhook call.
10132type GoogleCloudDialogflowCxV3beta1WebhookResponse struct {
10133	// FulfillmentResponse: The fulfillment response to send to the user.
10134	// This field can be omitted by the webhook if it does not intend to
10135	// send any response to the user.
10136	FulfillmentResponse *GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse `json:"fulfillmentResponse,omitempty"`
10137
10138	// PageInfo: Information about page status. This field can be omitted by
10139	// the webhook if it does not intend to modify page status.
10140	PageInfo *GoogleCloudDialogflowCxV3beta1PageInfo `json:"pageInfo,omitempty"`
10141
10142	// Payload: Value to append directly to QueryResult.webhook_payloads.
10143	Payload googleapi.RawMessage `json:"payload,omitempty"`
10144
10145	// SessionInfo: Information about session status. This field can be
10146	// omitted by the webhook if it does not intend to modify session
10147	// status.
10148	SessionInfo *GoogleCloudDialogflowCxV3beta1SessionInfo `json:"sessionInfo,omitempty"`
10149
10150	// TargetFlow: The target flow to transition to. Format:
10151	// `projects//locations//agents//flows/`.
10152	TargetFlow string `json:"targetFlow,omitempty"`
10153
10154	// TargetPage: The target page to transition to. Format:
10155	// `projects//locations//agents//flows//pages/`.
10156	TargetPage string `json:"targetPage,omitempty"`
10157
10158	// ForceSendFields is a list of field names (e.g. "FulfillmentResponse")
10159	// to unconditionally include in API requests. By default, fields with
10160	// empty values are omitted from API requests. However, any non-pointer,
10161	// non-interface field appearing in ForceSendFields will be sent to the
10162	// server regardless of whether the field is empty or not. This may be
10163	// used to include empty fields in Patch requests.
10164	ForceSendFields []string `json:"-"`
10165
10166	// NullFields is a list of field names (e.g. "FulfillmentResponse") to
10167	// include in API requests with the JSON null value. By default, fields
10168	// with empty values are omitted from API requests. However, any field
10169	// with an empty value appearing in NullFields will be sent to the
10170	// server as null. It is an error if a field in this list has a
10171	// non-empty value. This may be used to include null fields in Patch
10172	// requests.
10173	NullFields []string `json:"-"`
10174}
10175
10176func (s *GoogleCloudDialogflowCxV3beta1WebhookResponse) MarshalJSON() ([]byte, error) {
10177	type NoMethod GoogleCloudDialogflowCxV3beta1WebhookResponse
10178	raw := NoMethod(*s)
10179	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10180}
10181
10182// GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse:
10183// Represents a fulfillment response to the user.
10184type GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse struct {
10185	// MergeBehavior: Merge behavior for `messages`.
10186	//
10187	// Possible values:
10188	//   "MERGE_BEHAVIOR_UNSPECIFIED" - Not specified. `APPEND` will be
10189	// used.
10190	//   "APPEND" - `messages` will be appended to the list of messages
10191	// waiting to be sent to the user.
10192	//   "REPLACE" - `messages` will replace the list of messages waiting to
10193	// be sent to the user.
10194	MergeBehavior string `json:"mergeBehavior,omitempty"`
10195
10196	// Messages: The list of rich message responses to present to the user.
10197	Messages []*GoogleCloudDialogflowCxV3beta1ResponseMessage `json:"messages,omitempty"`
10198
10199	// ForceSendFields is a list of field names (e.g. "MergeBehavior") to
10200	// unconditionally include in API requests. By default, fields with
10201	// empty values are omitted from API requests. However, any non-pointer,
10202	// non-interface field appearing in ForceSendFields will be sent to the
10203	// server regardless of whether the field is empty or not. This may be
10204	// used to include empty fields in Patch requests.
10205	ForceSendFields []string `json:"-"`
10206
10207	// NullFields is a list of field names (e.g. "MergeBehavior") to include
10208	// in API requests with the JSON null value. By default, fields with
10209	// empty values are omitted from API requests. However, any field with
10210	// an empty value appearing in NullFields will be sent to the server as
10211	// null. It is an error if a field in this list has a non-empty value.
10212	// This may be used to include null fields in Patch requests.
10213	NullFields []string `json:"-"`
10214}
10215
10216func (s *GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse) MarshalJSON() ([]byte, error) {
10217	type NoMethod GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse
10218	raw := NoMethod(*s)
10219	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10220}
10221
10222// GoogleCloudDialogflowV2AnnotatedMessagePart: Represents a part of a
10223// message possibly annotated with an entity. The part can be an entity
10224// or purely a part of the message between two entities or message
10225// start/end.
10226type GoogleCloudDialogflowV2AnnotatedMessagePart struct {
10227	// EntityType: The Dialogflow system entity type
10228	// (https://cloud.google.com/dialogflow/docs/reference/system-entities)
10229	// of this message part. If this is empty, Dialogflow could not annotate
10230	// the phrase part with a system entity.
10231	EntityType string `json:"entityType,omitempty"`
10232
10233	// FormattedValue: The Dialogflow system entity formatted value
10234	// (https://cloud.google.com/dialogflow/docs/reference/system-entities)
10235	// of this message part. For example for a system entity of type
10236	// `@sys.unit-currency`, this may contain: { "amount": 5, "currency":
10237	// "USD" }
10238	FormattedValue interface{} `json:"formattedValue,omitempty"`
10239
10240	// Text: A part of a message possibly annotated with an entity.
10241	Text string `json:"text,omitempty"`
10242
10243	// ForceSendFields is a list of field names (e.g. "EntityType") to
10244	// unconditionally include in API requests. By default, fields with
10245	// empty values are omitted from API requests. However, any non-pointer,
10246	// non-interface field appearing in ForceSendFields will be sent to the
10247	// server regardless of whether the field is empty or not. This may be
10248	// used to include empty fields in Patch requests.
10249	ForceSendFields []string `json:"-"`
10250
10251	// NullFields is a list of field names (e.g. "EntityType") to include in
10252	// API requests with the JSON null value. By default, fields with empty
10253	// values are omitted from API requests. However, any field with an
10254	// empty value appearing in NullFields will be sent to the server as
10255	// null. It is an error if a field in this list has a non-empty value.
10256	// This may be used to include null fields in Patch requests.
10257	NullFields []string `json:"-"`
10258}
10259
10260func (s *GoogleCloudDialogflowV2AnnotatedMessagePart) MarshalJSON() ([]byte, error) {
10261	type NoMethod GoogleCloudDialogflowV2AnnotatedMessagePart
10262	raw := NoMethod(*s)
10263	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10264}
10265
10266// GoogleCloudDialogflowV2ArticleAnswer: Represents article answer.
10267type GoogleCloudDialogflowV2ArticleAnswer struct {
10268	// AnswerRecord: The name of answer record, in the format of
10269	// "projects//locations//answerRecords/"
10270	AnswerRecord string `json:"answerRecord,omitempty"`
10271
10272	// Confidence: Article match confidence. The system's confidence score
10273	// that this article is a good match for this conversation, as a value
10274	// from 0.0 (completely uncertain) to 1.0 (completely certain).
10275	Confidence float64 `json:"confidence,omitempty"`
10276
10277	// Metadata: A map that contains metadata about the answer and the
10278	// document from which it originates.
10279	Metadata map[string]string `json:"metadata,omitempty"`
10280
10281	// Snippets: Article snippets.
10282	Snippets []string `json:"snippets,omitempty"`
10283
10284	// Title: The article title.
10285	Title string `json:"title,omitempty"`
10286
10287	// Uri: The article URI.
10288	Uri string `json:"uri,omitempty"`
10289
10290	// ForceSendFields is a list of field names (e.g. "AnswerRecord") to
10291	// unconditionally include in API requests. By default, fields with
10292	// empty values are omitted from API requests. However, any non-pointer,
10293	// non-interface field appearing in ForceSendFields will be sent to the
10294	// server regardless of whether the field is empty or not. This may be
10295	// used to include empty fields in Patch requests.
10296	ForceSendFields []string `json:"-"`
10297
10298	// NullFields is a list of field names (e.g. "AnswerRecord") to include
10299	// in API requests with the JSON null value. By default, fields with
10300	// empty values are omitted from API requests. However, any field with
10301	// an empty value appearing in NullFields will be sent to the server as
10302	// null. It is an error if a field in this list has a non-empty value.
10303	// This may be used to include null fields in Patch requests.
10304	NullFields []string `json:"-"`
10305}
10306
10307func (s *GoogleCloudDialogflowV2ArticleAnswer) MarshalJSON() ([]byte, error) {
10308	type NoMethod GoogleCloudDialogflowV2ArticleAnswer
10309	raw := NoMethod(*s)
10310	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10311}
10312
10313func (s *GoogleCloudDialogflowV2ArticleAnswer) UnmarshalJSON(data []byte) error {
10314	type NoMethod GoogleCloudDialogflowV2ArticleAnswer
10315	var s1 struct {
10316		Confidence gensupport.JSONFloat64 `json:"confidence"`
10317		*NoMethod
10318	}
10319	s1.NoMethod = (*NoMethod)(s)
10320	if err := json.Unmarshal(data, &s1); err != nil {
10321		return err
10322	}
10323	s.Confidence = float64(s1.Confidence)
10324	return nil
10325}
10326
10327// GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse: The response
10328// message for EntityTypes.BatchUpdateEntityTypes.
10329type GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse struct {
10330	// EntityTypes: The collection of updated or created entity types.
10331	EntityTypes []*GoogleCloudDialogflowV2EntityType `json:"entityTypes,omitempty"`
10332
10333	// ForceSendFields is a list of field names (e.g. "EntityTypes") to
10334	// unconditionally include in API requests. By default, fields with
10335	// empty values are omitted from API requests. However, any non-pointer,
10336	// non-interface field appearing in ForceSendFields will be sent to the
10337	// server regardless of whether the field is empty or not. This may be
10338	// used to include empty fields in Patch requests.
10339	ForceSendFields []string `json:"-"`
10340
10341	// NullFields is a list of field names (e.g. "EntityTypes") to include
10342	// in API requests with the JSON null value. By default, fields with
10343	// empty values are omitted from API requests. However, any field with
10344	// an empty value appearing in NullFields will be sent to the server as
10345	// null. It is an error if a field in this list has a non-empty value.
10346	// This may be used to include null fields in Patch requests.
10347	NullFields []string `json:"-"`
10348}
10349
10350func (s *GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse) MarshalJSON() ([]byte, error) {
10351	type NoMethod GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse
10352	raw := NoMethod(*s)
10353	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10354}
10355
10356// GoogleCloudDialogflowV2BatchUpdateIntentsResponse: The response
10357// message for Intents.BatchUpdateIntents.
10358type GoogleCloudDialogflowV2BatchUpdateIntentsResponse struct {
10359	// Intents: The collection of updated or created intents.
10360	Intents []*GoogleCloudDialogflowV2Intent `json:"intents,omitempty"`
10361
10362	// ForceSendFields is a list of field names (e.g. "Intents") to
10363	// unconditionally include in API requests. By default, fields with
10364	// empty values are omitted from API requests. However, any non-pointer,
10365	// non-interface field appearing in ForceSendFields will be sent to the
10366	// server regardless of whether the field is empty or not. This may be
10367	// used to include empty fields in Patch requests.
10368	ForceSendFields []string `json:"-"`
10369
10370	// NullFields is a list of field names (e.g. "Intents") to include in
10371	// API requests with the JSON null value. By default, fields with empty
10372	// values are omitted from API requests. However, any field with an
10373	// empty value appearing in NullFields will be sent to the server as
10374	// null. It is an error if a field in this list has a non-empty value.
10375	// This may be used to include null fields in Patch requests.
10376	NullFields []string `json:"-"`
10377}
10378
10379func (s *GoogleCloudDialogflowV2BatchUpdateIntentsResponse) MarshalJSON() ([]byte, error) {
10380	type NoMethod GoogleCloudDialogflowV2BatchUpdateIntentsResponse
10381	raw := NoMethod(*s)
10382	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10383}
10384
10385// GoogleCloudDialogflowV2Context: Dialogflow contexts are similar to
10386// natural language context. If a person says to you "they are orange",
10387// you need context in order to understand what "they" is referring to.
10388// Similarly, for Dialogflow to handle an end-user expression like that,
10389// it needs to be provided with context in order to correctly match an
10390// intent. Using contexts, you can control the flow of a conversation.
10391// You can configure contexts for an intent by setting input and output
10392// contexts, which are identified by string names. When an intent is
10393// matched, any configured output contexts for that intent become
10394// active. While any contexts are active, Dialogflow is more likely to
10395// match intents that are configured with input contexts that correspond
10396// to the currently active contexts. For more information about context,
10397// see the Contexts guide
10398// (https://cloud.google.com/dialogflow/docs/contexts-overview).
10399type GoogleCloudDialogflowV2Context struct {
10400	// LifespanCount: Optional. The number of conversational query requests
10401	// after which the context expires. The default is `0`. If set to `0`,
10402	// the context expires immediately. Contexts expire automatically after
10403	// 20 minutes if there are no matching queries.
10404	LifespanCount int64 `json:"lifespanCount,omitempty"`
10405
10406	// Name: Required. The unique identifier of the context. Format:
10407	// `projects//agent/sessions//contexts/`, or
10408	// `projects//agent/environments//users//sessions//contexts/`. The
10409	// `Context ID` is always converted to lowercase, may only contain
10410	// characters in a-zA-Z0-9_-% and may be at most 250 bytes long. If
10411	// `Environment ID` is not specified, we assume default 'draft'
10412	// environment. If `User ID` is not specified, we assume default '-'
10413	// user. The following context names are reserved for internal use by
10414	// Dialogflow. You should not use these contexts or create contexts with
10415	// these names: * `__system_counters__` * `*_id_dialog_context` *
10416	// `*_dialog_params_size`
10417	Name string `json:"name,omitempty"`
10418
10419	// Parameters: Optional. The collection of parameters associated with
10420	// this context. Depending on your protocol or client library language,
10421	// this is a map, associative array, symbol table, dictionary, or JSON
10422	// object composed of a collection of (MapKey, MapValue) pairs: - MapKey
10423	// type: string - MapKey value: parameter name - MapValue type: - If
10424	// parameter's entity type is a composite entity: map - Else: depending
10425	// on parameter value type, could be one of string, number, boolean,
10426	// null, list or map - MapValue value: - If parameter's entity type is a
10427	// composite entity: map from composite entity property names to
10428	// property values - Else: parameter value
10429	Parameters googleapi.RawMessage `json:"parameters,omitempty"`
10430
10431	// ForceSendFields is a list of field names (e.g. "LifespanCount") to
10432	// unconditionally include in API requests. By default, fields with
10433	// empty values are omitted from API requests. However, any non-pointer,
10434	// non-interface field appearing in ForceSendFields will be sent to the
10435	// server regardless of whether the field is empty or not. This may be
10436	// used to include empty fields in Patch requests.
10437	ForceSendFields []string `json:"-"`
10438
10439	// NullFields is a list of field names (e.g. "LifespanCount") to include
10440	// in API requests with the JSON null value. By default, fields with
10441	// empty values are omitted from API requests. However, any field with
10442	// an empty value appearing in NullFields will be sent to the server as
10443	// null. It is an error if a field in this list has a non-empty value.
10444	// This may be used to include null fields in Patch requests.
10445	NullFields []string `json:"-"`
10446}
10447
10448func (s *GoogleCloudDialogflowV2Context) MarshalJSON() ([]byte, error) {
10449	type NoMethod GoogleCloudDialogflowV2Context
10450	raw := NoMethod(*s)
10451	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10452}
10453
10454// GoogleCloudDialogflowV2ConversationEvent: Represents a notification
10455// sent to Pub/Sub subscribers for conversation lifecycle events.
10456type GoogleCloudDialogflowV2ConversationEvent struct {
10457	// Conversation: The unique identifier of the conversation this
10458	// notification refers to. Format: `projects//conversations/`.
10459	Conversation string `json:"conversation,omitempty"`
10460
10461	// ErrorStatus: More detailed information about an error. Only set for
10462	// type UNRECOVERABLE_ERROR_IN_PHONE_CALL.
10463	ErrorStatus *GoogleRpcStatus `json:"errorStatus,omitempty"`
10464
10465	// NewMessagePayload: Payload of NEW_MESSAGE event.
10466	NewMessagePayload *GoogleCloudDialogflowV2Message `json:"newMessagePayload,omitempty"`
10467
10468	// Type: The type of the event that this notification refers to.
10469	//
10470	// Possible values:
10471	//   "TYPE_UNSPECIFIED" - Type not set.
10472	//   "CONVERSATION_STARTED" - A new conversation has been opened. This
10473	// is fired when a telephone call is answered, or a conversation is
10474	// created via the API.
10475	//   "CONVERSATION_FINISHED" - An existing conversation has closed. This
10476	// is fired when a telephone call is terminated, or a conversation is
10477	// closed via the API.
10478	//   "HUMAN_INTERVENTION_NEEDED" - An existing conversation has received
10479	// notification from Dialogflow that human intervention is required.
10480	//   "NEW_MESSAGE" - An existing conversation has received a new
10481	// message, either from API or telephony. It is configured in
10482	// ConversationProfile.new_message_event_notification_config
10483	//   "UNRECOVERABLE_ERROR" - Unrecoverable error during a telephone
10484	// call. In general non-recoverable errors only occur if something was
10485	// misconfigured in the ConversationProfile corresponding to the call.
10486	// After a non-recoverable error, Dialogflow may stop responding. We
10487	// don't fire this event: * in an API call because we can directly
10488	// return the error, or, * when we can recover from an error.
10489	Type string `json:"type,omitempty"`
10490
10491	// ForceSendFields is a list of field names (e.g. "Conversation") to
10492	// unconditionally include in API requests. By default, fields with
10493	// empty values are omitted from API requests. However, any non-pointer,
10494	// non-interface field appearing in ForceSendFields will be sent to the
10495	// server regardless of whether the field is empty or not. This may be
10496	// used to include empty fields in Patch requests.
10497	ForceSendFields []string `json:"-"`
10498
10499	// NullFields is a list of field names (e.g. "Conversation") to include
10500	// in API requests with the JSON null value. By default, fields with
10501	// empty values are omitted from API requests. However, any field with
10502	// an empty value appearing in NullFields will be sent to the server as
10503	// null. It is an error if a field in this list has a non-empty value.
10504	// This may be used to include null fields in Patch requests.
10505	NullFields []string `json:"-"`
10506}
10507
10508func (s *GoogleCloudDialogflowV2ConversationEvent) MarshalJSON() ([]byte, error) {
10509	type NoMethod GoogleCloudDialogflowV2ConversationEvent
10510	raw := NoMethod(*s)
10511	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10512}
10513
10514// GoogleCloudDialogflowV2EntityType: Each intent parameter has a type,
10515// called the entity type, which dictates exactly how data from an
10516// end-user expression is extracted. Dialogflow provides predefined
10517// system entities that can match many common types of data. For
10518// example, there are system entities for matching dates, times, colors,
10519// email addresses, and so on. You can also create your own custom
10520// entities for matching custom data. For example, you could define a
10521// vegetable entity that can match the types of vegetables available for
10522// purchase with a grocery store agent. For more information, see the
10523// Entity guide
10524// (https://cloud.google.com/dialogflow/docs/entities-overview).
10525type GoogleCloudDialogflowV2EntityType struct {
10526	// AutoExpansionMode: Optional. Indicates whether the entity type can be
10527	// automatically expanded.
10528	//
10529	// Possible values:
10530	//   "AUTO_EXPANSION_MODE_UNSPECIFIED" - Auto expansion disabled for the
10531	// entity.
10532	//   "AUTO_EXPANSION_MODE_DEFAULT" - Allows an agent to recognize values
10533	// that have not been explicitly listed in the entity.
10534	AutoExpansionMode string `json:"autoExpansionMode,omitempty"`
10535
10536	// DisplayName: Required. The name of the entity type.
10537	DisplayName string `json:"displayName,omitempty"`
10538
10539	// EnableFuzzyExtraction: Optional. Enables fuzzy entity extraction
10540	// during classification.
10541	EnableFuzzyExtraction bool `json:"enableFuzzyExtraction,omitempty"`
10542
10543	// Entities: Optional. The collection of entity entries associated with
10544	// the entity type.
10545	Entities []*GoogleCloudDialogflowV2EntityTypeEntity `json:"entities,omitempty"`
10546
10547	// Kind: Required. Indicates the kind of entity type.
10548	//
10549	// Possible values:
10550	//   "KIND_UNSPECIFIED" - Not specified. This value should be never
10551	// used.
10552	//   "KIND_MAP" - Map entity types allow mapping of a group of synonyms
10553	// to a reference value.
10554	//   "KIND_LIST" - List entity types contain a set of entries that do
10555	// not map to reference values. However, list entity types can contain
10556	// references to other entity types (with or without aliases).
10557	//   "KIND_REGEXP" - Regexp entity types allow to specify regular
10558	// expressions in entries values.
10559	Kind string `json:"kind,omitempty"`
10560
10561	// Name: The unique identifier of the entity type. Required for
10562	// EntityTypes.UpdateEntityType and EntityTypes.BatchUpdateEntityTypes
10563	// methods. Format: `projects//agent/entityTypes/`.
10564	Name string `json:"name,omitempty"`
10565
10566	// ForceSendFields is a list of field names (e.g. "AutoExpansionMode")
10567	// to unconditionally include in API requests. By default, fields with
10568	// empty values are omitted from API requests. However, any non-pointer,
10569	// non-interface field appearing in ForceSendFields will be sent to the
10570	// server regardless of whether the field is empty or not. This may be
10571	// used to include empty fields in Patch requests.
10572	ForceSendFields []string `json:"-"`
10573
10574	// NullFields is a list of field names (e.g. "AutoExpansionMode") to
10575	// include in API requests with the JSON null value. By default, fields
10576	// with empty values are omitted from API requests. However, any field
10577	// with an empty value appearing in NullFields will be sent to the
10578	// server as null. It is an error if a field in this list has a
10579	// non-empty value. This may be used to include null fields in Patch
10580	// requests.
10581	NullFields []string `json:"-"`
10582}
10583
10584func (s *GoogleCloudDialogflowV2EntityType) MarshalJSON() ([]byte, error) {
10585	type NoMethod GoogleCloudDialogflowV2EntityType
10586	raw := NoMethod(*s)
10587	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10588}
10589
10590// GoogleCloudDialogflowV2EntityTypeEntity: An **entity entry** for an
10591// associated entity type.
10592type GoogleCloudDialogflowV2EntityTypeEntity struct {
10593	// Synonyms: Required. A collection of value synonyms. For example, if
10594	// the entity type is *vegetable*, and `value` is *scallions*, a synonym
10595	// could be *green onions*. For `KIND_LIST` entity types: * This
10596	// collection must contain exactly one synonym equal to `value`.
10597	Synonyms []string `json:"synonyms,omitempty"`
10598
10599	// Value: Required. The primary value associated with this entity entry.
10600	// For example, if the entity type is *vegetable*, the value could be
10601	// *scallions*. For `KIND_MAP` entity types: * A reference value to be
10602	// used in place of synonyms. For `KIND_LIST` entity types: * A string
10603	// that can contain references to other entity types (with or without
10604	// aliases).
10605	Value string `json:"value,omitempty"`
10606
10607	// ForceSendFields is a list of field names (e.g. "Synonyms") to
10608	// unconditionally include in API requests. By default, fields with
10609	// empty values are omitted from API requests. However, any non-pointer,
10610	// non-interface field appearing in ForceSendFields will be sent to the
10611	// server regardless of whether the field is empty or not. This may be
10612	// used to include empty fields in Patch requests.
10613	ForceSendFields []string `json:"-"`
10614
10615	// NullFields is a list of field names (e.g. "Synonyms") to include in
10616	// API requests with the JSON null value. By default, fields with empty
10617	// values are omitted from API requests. However, any field with an
10618	// empty value appearing in NullFields will be sent to the server as
10619	// null. It is an error if a field in this list has a non-empty value.
10620	// This may be used to include null fields in Patch requests.
10621	NullFields []string `json:"-"`
10622}
10623
10624func (s *GoogleCloudDialogflowV2EntityTypeEntity) MarshalJSON() ([]byte, error) {
10625	type NoMethod GoogleCloudDialogflowV2EntityTypeEntity
10626	raw := NoMethod(*s)
10627	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10628}
10629
10630// GoogleCloudDialogflowV2EventInput: Events allow for matching intents
10631// by event name instead of the natural language input. For instance,
10632// input `` can trigger a personalized welcome response. The parameter
10633// `name` may be used by the agent in the response: "Hello
10634// #welcome_event.name! What can I do for you today?".
10635type GoogleCloudDialogflowV2EventInput struct {
10636	// LanguageCode: Required. The language of this query. See Language
10637	// Support (https://cloud.google.com/dialogflow/docs/reference/language)
10638	// for a list of the currently supported language codes. Note that
10639	// queries in the same session do not necessarily need to specify the
10640	// same language.
10641	LanguageCode string `json:"languageCode,omitempty"`
10642
10643	// Name: Required. The unique identifier of the event.
10644	Name string `json:"name,omitempty"`
10645
10646	// Parameters: The collection of parameters associated with the event.
10647	// Depending on your protocol or client library language, this is a map,
10648	// associative array, symbol table, dictionary, or JSON object composed
10649	// of a collection of (MapKey, MapValue) pairs: - MapKey type: string -
10650	// MapKey value: parameter name - MapValue type: - If parameter's entity
10651	// type is a composite entity: map - Else: depending on parameter value
10652	// type, could be one of string, number, boolean, null, list or map -
10653	// MapValue value: - If parameter's entity type is a composite entity:
10654	// map from composite entity property names to property values - Else:
10655	// parameter value
10656	Parameters googleapi.RawMessage `json:"parameters,omitempty"`
10657
10658	// ForceSendFields is a list of field names (e.g. "LanguageCode") to
10659	// unconditionally include in API requests. By default, fields with
10660	// empty values are omitted from API requests. However, any non-pointer,
10661	// non-interface field appearing in ForceSendFields will be sent to the
10662	// server regardless of whether the field is empty or not. This may be
10663	// used to include empty fields in Patch requests.
10664	ForceSendFields []string `json:"-"`
10665
10666	// NullFields is a list of field names (e.g. "LanguageCode") to include
10667	// in API requests with the JSON null value. By default, fields with
10668	// empty values are omitted from API requests. However, any field with
10669	// an empty value appearing in NullFields will be sent to the server as
10670	// null. It is an error if a field in this list has a non-empty value.
10671	// This may be used to include null fields in Patch requests.
10672	NullFields []string `json:"-"`
10673}
10674
10675func (s *GoogleCloudDialogflowV2EventInput) MarshalJSON() ([]byte, error) {
10676	type NoMethod GoogleCloudDialogflowV2EventInput
10677	raw := NoMethod(*s)
10678	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10679}
10680
10681// GoogleCloudDialogflowV2ExportAgentResponse: The response message for
10682// Agents.ExportAgent.
10683type GoogleCloudDialogflowV2ExportAgentResponse struct {
10684	// AgentContent: Zip compressed raw byte content for agent.
10685	AgentContent string `json:"agentContent,omitempty"`
10686
10687	// AgentUri: The URI to a file containing the exported agent. This field
10688	// is populated only if `agent_uri` is specified in
10689	// `ExportAgentRequest`.
10690	AgentUri string `json:"agentUri,omitempty"`
10691
10692	// ForceSendFields is a list of field names (e.g. "AgentContent") to
10693	// unconditionally include in API requests. By default, fields with
10694	// empty values are omitted from API requests. However, any non-pointer,
10695	// non-interface field appearing in ForceSendFields will be sent to the
10696	// server regardless of whether the field is empty or not. This may be
10697	// used to include empty fields in Patch requests.
10698	ForceSendFields []string `json:"-"`
10699
10700	// NullFields is a list of field names (e.g. "AgentContent") to include
10701	// in API requests with the JSON null value. By default, fields with
10702	// empty values are omitted from API requests. However, any field with
10703	// an empty value appearing in NullFields will be sent to the server as
10704	// null. It is an error if a field in this list has a non-empty value.
10705	// This may be used to include null fields in Patch requests.
10706	NullFields []string `json:"-"`
10707}
10708
10709func (s *GoogleCloudDialogflowV2ExportAgentResponse) MarshalJSON() ([]byte, error) {
10710	type NoMethod GoogleCloudDialogflowV2ExportAgentResponse
10711	raw := NoMethod(*s)
10712	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10713}
10714
10715// GoogleCloudDialogflowV2FaqAnswer: Represents answer from "frequently
10716// asked questions".
10717type GoogleCloudDialogflowV2FaqAnswer struct {
10718	// Answer: The piece of text from the `source` knowledge base document.
10719	Answer string `json:"answer,omitempty"`
10720
10721	// AnswerRecord: The name of answer record, in the format of
10722	// "projects//locations//answerRecords/"
10723	AnswerRecord string `json:"answerRecord,omitempty"`
10724
10725	// Confidence: The system's confidence score that this Knowledge answer
10726	// is a good match for this conversational query, range from 0.0
10727	// (completely uncertain) to 1.0 (completely certain).
10728	Confidence float64 `json:"confidence,omitempty"`
10729
10730	// Metadata: A map that contains metadata about the answer and the
10731	// document from which it originates.
10732	Metadata map[string]string `json:"metadata,omitempty"`
10733
10734	// Question: The corresponding FAQ question.
10735	Question string `json:"question,omitempty"`
10736
10737	// Source: Indicates which Knowledge Document this answer was extracted
10738	// from. Format:
10739	// `projects//locations//agent/knowledgeBases//documents/`.
10740	Source string `json:"source,omitempty"`
10741
10742	// ForceSendFields is a list of field names (e.g. "Answer") to
10743	// unconditionally include in API requests. By default, fields with
10744	// empty values are omitted from API requests. However, any non-pointer,
10745	// non-interface field appearing in ForceSendFields will be sent to the
10746	// server regardless of whether the field is empty or not. This may be
10747	// used to include empty fields in Patch requests.
10748	ForceSendFields []string `json:"-"`
10749
10750	// NullFields is a list of field names (e.g. "Answer") to include in API
10751	// requests with the JSON null value. By default, fields with empty
10752	// values are omitted from API requests. However, any field with an
10753	// empty value appearing in NullFields will be sent to the server as
10754	// null. It is an error if a field in this list has a non-empty value.
10755	// This may be used to include null fields in Patch requests.
10756	NullFields []string `json:"-"`
10757}
10758
10759func (s *GoogleCloudDialogflowV2FaqAnswer) MarshalJSON() ([]byte, error) {
10760	type NoMethod GoogleCloudDialogflowV2FaqAnswer
10761	raw := NoMethod(*s)
10762	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10763}
10764
10765func (s *GoogleCloudDialogflowV2FaqAnswer) UnmarshalJSON(data []byte) error {
10766	type NoMethod GoogleCloudDialogflowV2FaqAnswer
10767	var s1 struct {
10768		Confidence gensupport.JSONFloat64 `json:"confidence"`
10769		*NoMethod
10770	}
10771	s1.NoMethod = (*NoMethod)(s)
10772	if err := json.Unmarshal(data, &s1); err != nil {
10773		return err
10774	}
10775	s.Confidence = float64(s1.Confidence)
10776	return nil
10777}
10778
10779// GoogleCloudDialogflowV2HumanAgentAssistantEvent: Represents a
10780// notification sent to Cloud Pub/Sub subscribers for human agent
10781// assistant events in a specific conversation.
10782type GoogleCloudDialogflowV2HumanAgentAssistantEvent struct {
10783	// Conversation: The conversation this notification refers to. Format:
10784	// `projects//conversations/`.
10785	Conversation string `json:"conversation,omitempty"`
10786
10787	// Participant: The participant that the suggestion is compiled for.
10788	// Format: `projects//conversations//participants/`. It will not be set
10789	// in legacy workflow.
10790	Participant string `json:"participant,omitempty"`
10791
10792	// SuggestionResults: The suggestion results payload that this
10793	// notification refers to.
10794	SuggestionResults []*GoogleCloudDialogflowV2SuggestionResult `json:"suggestionResults,omitempty"`
10795
10796	// ForceSendFields is a list of field names (e.g. "Conversation") to
10797	// unconditionally include in API requests. By default, fields with
10798	// empty values are omitted from API requests. However, any non-pointer,
10799	// non-interface field appearing in ForceSendFields will be sent to the
10800	// server regardless of whether the field is empty or not. This may be
10801	// used to include empty fields in Patch requests.
10802	ForceSendFields []string `json:"-"`
10803
10804	// NullFields is a list of field names (e.g. "Conversation") to include
10805	// in API requests with the JSON null value. By default, fields with
10806	// empty values are omitted from API requests. However, any field with
10807	// an empty value appearing in NullFields will be sent to the server as
10808	// null. It is an error if a field in this list has a non-empty value.
10809	// This may be used to include null fields in Patch requests.
10810	NullFields []string `json:"-"`
10811}
10812
10813func (s *GoogleCloudDialogflowV2HumanAgentAssistantEvent) MarshalJSON() ([]byte, error) {
10814	type NoMethod GoogleCloudDialogflowV2HumanAgentAssistantEvent
10815	raw := NoMethod(*s)
10816	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10817}
10818
10819// GoogleCloudDialogflowV2Intent: An intent categorizes an end-user's
10820// intention for one conversation turn. For each agent, you define many
10821// intents, where your combined intents can handle a complete
10822// conversation. When an end-user writes or says something, referred to
10823// as an end-user expression or end-user input, Dialogflow matches the
10824// end-user input to the best intent in your agent. Matching an intent
10825// is also known as intent classification. For more information, see the
10826// intent guide
10827// (https://cloud.google.com/dialogflow/docs/intents-overview).
10828type GoogleCloudDialogflowV2Intent struct {
10829	// Action: Optional. The name of the action associated with the intent.
10830	// Note: The action name must not contain whitespaces.
10831	Action string `json:"action,omitempty"`
10832
10833	// DefaultResponsePlatforms: Optional. The list of platforms for which
10834	// the first responses will be copied from the messages in
10835	// PLATFORM_UNSPECIFIED (i.e. default platform).
10836	//
10837	// Possible values:
10838	//   "PLATFORM_UNSPECIFIED" - Default platform.
10839	//   "FACEBOOK" - Facebook.
10840	//   "SLACK" - Slack.
10841	//   "TELEGRAM" - Telegram.
10842	//   "KIK" - Kik.
10843	//   "SKYPE" - Skype.
10844	//   "LINE" - Line.
10845	//   "VIBER" - Viber.
10846	//   "ACTIONS_ON_GOOGLE" - Google Assistant See [Dialogflow webhook
10847	// format](https://developers.google.com/assistant/actions/build/json/dia
10848	// logflow-webhook-json)
10849	//   "GOOGLE_HANGOUTS" - Google Hangouts.
10850	DefaultResponsePlatforms []string `json:"defaultResponsePlatforms,omitempty"`
10851
10852	// DisplayName: Required. The name of this intent.
10853	DisplayName string `json:"displayName,omitempty"`
10854
10855	// EndInteraction: Optional. Indicates that this intent ends an
10856	// interaction. Some integrations (e.g., Actions on Google or Dialogflow
10857	// phone gateway) use this information to close interaction with an end
10858	// user. Default is false.
10859	EndInteraction bool `json:"endInteraction,omitempty"`
10860
10861	// Events: Optional. The collection of event names that trigger the
10862	// intent. If the collection of input contexts is not empty, all of the
10863	// contexts must be present in the active user session for an event to
10864	// trigger this intent. Event names are limited to 150 characters.
10865	Events []string `json:"events,omitempty"`
10866
10867	// FollowupIntentInfo: Read-only. Information about all followup intents
10868	// that have this intent as a direct or indirect parent. We populate
10869	// this field only in the output.
10870	FollowupIntentInfo []*GoogleCloudDialogflowV2IntentFollowupIntentInfo `json:"followupIntentInfo,omitempty"`
10871
10872	// InputContextNames: Optional. The list of context names required for
10873	// this intent to be triggered. Format:
10874	// `projects//agent/sessions/-/contexts/`.
10875	InputContextNames []string `json:"inputContextNames,omitempty"`
10876
10877	// IsFallback: Optional. Indicates whether this is a fallback intent.
10878	IsFallback bool `json:"isFallback,omitempty"`
10879
10880	// LiveAgentHandoff: Optional. Indicates that a live agent should be
10881	// brought in to handle the interaction with the user. In most cases,
10882	// when you set this flag to true, you would also want to set
10883	// end_interaction to true as well. Default is false.
10884	LiveAgentHandoff bool `json:"liveAgentHandoff,omitempty"`
10885
10886	// Messages: Optional. The collection of rich messages corresponding to
10887	// the `Response` field in the Dialogflow console.
10888	Messages []*GoogleCloudDialogflowV2IntentMessage `json:"messages,omitempty"`
10889
10890	// MlDisabled: Optional. Indicates whether Machine Learning is disabled
10891	// for the intent. Note: If `ml_disabled` setting is set to true, then
10892	// this intent is not taken into account during inference in `ML ONLY`
10893	// match mode. Also, auto-markup in the UI is turned off.
10894	MlDisabled bool `json:"mlDisabled,omitempty"`
10895
10896	// Name: Optional. The unique identifier of this intent. Required for
10897	// Intents.UpdateIntent and Intents.BatchUpdateIntents methods. Format:
10898	// `projects//agent/intents/`.
10899	Name string `json:"name,omitempty"`
10900
10901	// OutputContexts: Optional. The collection of contexts that are
10902	// activated when the intent is matched. Context messages in this
10903	// collection should not set the parameters field. Setting the
10904	// `lifespan_count` to 0 will reset the context when the intent is
10905	// matched. Format: `projects//agent/sessions/-/contexts/`.
10906	OutputContexts []*GoogleCloudDialogflowV2Context `json:"outputContexts,omitempty"`
10907
10908	// Parameters: Optional. The collection of parameters associated with
10909	// the intent.
10910	Parameters []*GoogleCloudDialogflowV2IntentParameter `json:"parameters,omitempty"`
10911
10912	// ParentFollowupIntentName: Read-only after creation. The unique
10913	// identifier of the parent intent in the chain of followup intents. You
10914	// can set this field when creating an intent, for example with
10915	// CreateIntent or BatchUpdateIntents, in order to make this intent a
10916	// followup intent. It identifies the parent followup intent. Format:
10917	// `projects//agent/intents/`.
10918	ParentFollowupIntentName string `json:"parentFollowupIntentName,omitempty"`
10919
10920	// Priority: Optional. The priority of this intent. Higher numbers
10921	// represent higher priorities. - If the supplied value is unspecified
10922	// or 0, the service translates the value to 500,000, which corresponds
10923	// to the `Normal` priority in the console. - If the supplied value is
10924	// negative, the intent is ignored in runtime detect intent requests.
10925	Priority int64 `json:"priority,omitempty"`
10926
10927	// ResetContexts: Optional. Indicates whether to delete all contexts in
10928	// the current session when this intent is matched.
10929	ResetContexts bool `json:"resetContexts,omitempty"`
10930
10931	// RootFollowupIntentName: Read-only. The unique identifier of the root
10932	// intent in the chain of followup intents. It identifies the correct
10933	// followup intents chain for this intent. We populate this field only
10934	// in the output. Format: `projects//agent/intents/`.
10935	RootFollowupIntentName string `json:"rootFollowupIntentName,omitempty"`
10936
10937	// TrainingPhrases: Optional. The collection of examples that the agent
10938	// is trained on.
10939	TrainingPhrases []*GoogleCloudDialogflowV2IntentTrainingPhrase `json:"trainingPhrases,omitempty"`
10940
10941	// WebhookState: Optional. Indicates whether webhooks are enabled for
10942	// the intent.
10943	//
10944	// Possible values:
10945	//   "WEBHOOK_STATE_UNSPECIFIED" - Webhook is disabled in the agent and
10946	// in the intent.
10947	//   "WEBHOOK_STATE_ENABLED" - Webhook is enabled in the agent and in
10948	// the intent.
10949	//   "WEBHOOK_STATE_ENABLED_FOR_SLOT_FILLING" - Webhook is enabled in
10950	// the agent and in the intent. Also, each slot filling prompt is
10951	// forwarded to the webhook.
10952	WebhookState string `json:"webhookState,omitempty"`
10953
10954	// ForceSendFields is a list of field names (e.g. "Action") to
10955	// unconditionally include in API requests. By default, fields with
10956	// empty values are omitted from API requests. However, any non-pointer,
10957	// non-interface field appearing in ForceSendFields will be sent to the
10958	// server regardless of whether the field is empty or not. This may be
10959	// used to include empty fields in Patch requests.
10960	ForceSendFields []string `json:"-"`
10961
10962	// NullFields is a list of field names (e.g. "Action") to include in API
10963	// requests with the JSON null value. By default, fields with empty
10964	// values are omitted from API requests. However, any field with an
10965	// empty value appearing in NullFields will be sent to the server as
10966	// null. It is an error if a field in this list has a non-empty value.
10967	// This may be used to include null fields in Patch requests.
10968	NullFields []string `json:"-"`
10969}
10970
10971func (s *GoogleCloudDialogflowV2Intent) MarshalJSON() ([]byte, error) {
10972	type NoMethod GoogleCloudDialogflowV2Intent
10973	raw := NoMethod(*s)
10974	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10975}
10976
10977// GoogleCloudDialogflowV2IntentFollowupIntentInfo: Represents a single
10978// followup intent in the chain.
10979type GoogleCloudDialogflowV2IntentFollowupIntentInfo struct {
10980	// FollowupIntentName: The unique identifier of the followup intent.
10981	// Format: `projects//agent/intents/`.
10982	FollowupIntentName string `json:"followupIntentName,omitempty"`
10983
10984	// ParentFollowupIntentName: The unique identifier of the followup
10985	// intent's parent. Format: `projects//agent/intents/`.
10986	ParentFollowupIntentName string `json:"parentFollowupIntentName,omitempty"`
10987
10988	// ForceSendFields is a list of field names (e.g. "FollowupIntentName")
10989	// to unconditionally include in API requests. By default, fields with
10990	// empty values are omitted from API requests. However, any non-pointer,
10991	// non-interface field appearing in ForceSendFields will be sent to the
10992	// server regardless of whether the field is empty or not. This may be
10993	// used to include empty fields in Patch requests.
10994	ForceSendFields []string `json:"-"`
10995
10996	// NullFields is a list of field names (e.g. "FollowupIntentName") to
10997	// include in API requests with the JSON null value. By default, fields
10998	// with empty values are omitted from API requests. However, any field
10999	// with an empty value appearing in NullFields will be sent to the
11000	// server as null. It is an error if a field in this list has a
11001	// non-empty value. This may be used to include null fields in Patch
11002	// requests.
11003	NullFields []string `json:"-"`
11004}
11005
11006func (s *GoogleCloudDialogflowV2IntentFollowupIntentInfo) MarshalJSON() ([]byte, error) {
11007	type NoMethod GoogleCloudDialogflowV2IntentFollowupIntentInfo
11008	raw := NoMethod(*s)
11009	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11010}
11011
11012// GoogleCloudDialogflowV2IntentMessage: A rich response message.
11013// Corresponds to the intent `Response` field in the Dialogflow console.
11014// For more information, see Rich response messages
11015// (https://cloud.google.com/dialogflow/docs/intents-rich-messages).
11016type GoogleCloudDialogflowV2IntentMessage struct {
11017	// BasicCard: The basic card response for Actions on Google.
11018	BasicCard *GoogleCloudDialogflowV2IntentMessageBasicCard `json:"basicCard,omitempty"`
11019
11020	// BrowseCarouselCard: Browse carousel card for Actions on Google.
11021	BrowseCarouselCard *GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard `json:"browseCarouselCard,omitempty"`
11022
11023	// Card: The card response.
11024	Card *GoogleCloudDialogflowV2IntentMessageCard `json:"card,omitempty"`
11025
11026	// CarouselSelect: The carousel card response for Actions on Google.
11027	CarouselSelect *GoogleCloudDialogflowV2IntentMessageCarouselSelect `json:"carouselSelect,omitempty"`
11028
11029	// Image: The image response.
11030	Image *GoogleCloudDialogflowV2IntentMessageImage `json:"image,omitempty"`
11031
11032	// LinkOutSuggestion: The link out suggestion chip for Actions on
11033	// Google.
11034	LinkOutSuggestion *GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion `json:"linkOutSuggestion,omitempty"`
11035
11036	// ListSelect: The list card response for Actions on Google.
11037	ListSelect *GoogleCloudDialogflowV2IntentMessageListSelect `json:"listSelect,omitempty"`
11038
11039	// MediaContent: The media content card for Actions on Google.
11040	MediaContent *GoogleCloudDialogflowV2IntentMessageMediaContent `json:"mediaContent,omitempty"`
11041
11042	// Payload: A custom platform-specific response.
11043	Payload googleapi.RawMessage `json:"payload,omitempty"`
11044
11045	// Platform: Optional. The platform that this message is intended for.
11046	//
11047	// Possible values:
11048	//   "PLATFORM_UNSPECIFIED" - Default platform.
11049	//   "FACEBOOK" - Facebook.
11050	//   "SLACK" - Slack.
11051	//   "TELEGRAM" - Telegram.
11052	//   "KIK" - Kik.
11053	//   "SKYPE" - Skype.
11054	//   "LINE" - Line.
11055	//   "VIBER" - Viber.
11056	//   "ACTIONS_ON_GOOGLE" - Google Assistant See [Dialogflow webhook
11057	// format](https://developers.google.com/assistant/actions/build/json/dia
11058	// logflow-webhook-json)
11059	//   "GOOGLE_HANGOUTS" - Google Hangouts.
11060	Platform string `json:"platform,omitempty"`
11061
11062	// QuickReplies: The quick replies response.
11063	QuickReplies *GoogleCloudDialogflowV2IntentMessageQuickReplies `json:"quickReplies,omitempty"`
11064
11065	// SimpleResponses: The voice and text-only responses for Actions on
11066	// Google.
11067	SimpleResponses *GoogleCloudDialogflowV2IntentMessageSimpleResponses `json:"simpleResponses,omitempty"`
11068
11069	// Suggestions: The suggestion chips for Actions on Google.
11070	Suggestions *GoogleCloudDialogflowV2IntentMessageSuggestions `json:"suggestions,omitempty"`
11071
11072	// TableCard: Table card for Actions on Google.
11073	TableCard *GoogleCloudDialogflowV2IntentMessageTableCard `json:"tableCard,omitempty"`
11074
11075	// Text: The text response.
11076	Text *GoogleCloudDialogflowV2IntentMessageText `json:"text,omitempty"`
11077
11078	// ForceSendFields is a list of field names (e.g. "BasicCard") to
11079	// unconditionally include in API requests. By default, fields with
11080	// empty values are omitted from API requests. However, any non-pointer,
11081	// non-interface field appearing in ForceSendFields will be sent to the
11082	// server regardless of whether the field is empty or not. This may be
11083	// used to include empty fields in Patch requests.
11084	ForceSendFields []string `json:"-"`
11085
11086	// NullFields is a list of field names (e.g. "BasicCard") to include in
11087	// API requests with the JSON null value. By default, fields with empty
11088	// values are omitted from API requests. However, any field with an
11089	// empty value appearing in NullFields will be sent to the server as
11090	// null. It is an error if a field in this list has a non-empty value.
11091	// This may be used to include null fields in Patch requests.
11092	NullFields []string `json:"-"`
11093}
11094
11095func (s *GoogleCloudDialogflowV2IntentMessage) MarshalJSON() ([]byte, error) {
11096	type NoMethod GoogleCloudDialogflowV2IntentMessage
11097	raw := NoMethod(*s)
11098	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11099}
11100
11101// GoogleCloudDialogflowV2IntentMessageBasicCard: The basic card
11102// message. Useful for displaying information.
11103type GoogleCloudDialogflowV2IntentMessageBasicCard struct {
11104	// Buttons: Optional. The collection of card buttons.
11105	Buttons []*GoogleCloudDialogflowV2IntentMessageBasicCardButton `json:"buttons,omitempty"`
11106
11107	// FormattedText: Required, unless image is present. The body text of
11108	// the card.
11109	FormattedText string `json:"formattedText,omitempty"`
11110
11111	// Image: Optional. The image for the card.
11112	Image *GoogleCloudDialogflowV2IntentMessageImage `json:"image,omitempty"`
11113
11114	// Subtitle: Optional. The subtitle of the card.
11115	Subtitle string `json:"subtitle,omitempty"`
11116
11117	// Title: Optional. The title of the card.
11118	Title string `json:"title,omitempty"`
11119
11120	// ForceSendFields is a list of field names (e.g. "Buttons") to
11121	// unconditionally include in API requests. By default, fields with
11122	// empty values are omitted from API requests. However, any non-pointer,
11123	// non-interface field appearing in ForceSendFields will be sent to the
11124	// server regardless of whether the field is empty or not. This may be
11125	// used to include empty fields in Patch requests.
11126	ForceSendFields []string `json:"-"`
11127
11128	// NullFields is a list of field names (e.g. "Buttons") to include in
11129	// API requests with the JSON null value. By default, fields with empty
11130	// values are omitted from API requests. However, any field with an
11131	// empty value appearing in NullFields will be sent to the server as
11132	// null. It is an error if a field in this list has a non-empty value.
11133	// This may be used to include null fields in Patch requests.
11134	NullFields []string `json:"-"`
11135}
11136
11137func (s *GoogleCloudDialogflowV2IntentMessageBasicCard) MarshalJSON() ([]byte, error) {
11138	type NoMethod GoogleCloudDialogflowV2IntentMessageBasicCard
11139	raw := NoMethod(*s)
11140	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11141}
11142
11143// GoogleCloudDialogflowV2IntentMessageBasicCardButton: The button
11144// object that appears at the bottom of a card.
11145type GoogleCloudDialogflowV2IntentMessageBasicCardButton struct {
11146	// OpenUriAction: Required. Action to take when a user taps on the
11147	// button.
11148	OpenUriAction *GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction `json:"openUriAction,omitempty"`
11149
11150	// Title: Required. The title of the button.
11151	Title string `json:"title,omitempty"`
11152
11153	// ForceSendFields is a list of field names (e.g. "OpenUriAction") to
11154	// unconditionally include in API requests. By default, fields with
11155	// empty values are omitted from API requests. However, any non-pointer,
11156	// non-interface field appearing in ForceSendFields will be sent to the
11157	// server regardless of whether the field is empty or not. This may be
11158	// used to include empty fields in Patch requests.
11159	ForceSendFields []string `json:"-"`
11160
11161	// NullFields is a list of field names (e.g. "OpenUriAction") to include
11162	// in API requests with the JSON null value. By default, fields with
11163	// empty values are omitted from API requests. However, any field with
11164	// an empty value appearing in NullFields will be sent to the server as
11165	// null. It is an error if a field in this list has a non-empty value.
11166	// This may be used to include null fields in Patch requests.
11167	NullFields []string `json:"-"`
11168}
11169
11170func (s *GoogleCloudDialogflowV2IntentMessageBasicCardButton) MarshalJSON() ([]byte, error) {
11171	type NoMethod GoogleCloudDialogflowV2IntentMessageBasicCardButton
11172	raw := NoMethod(*s)
11173	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11174}
11175
11176// GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction:
11177// Opens the given URI.
11178type GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction struct {
11179	// Uri: Required. The HTTP or HTTPS scheme URI.
11180	Uri string `json:"uri,omitempty"`
11181
11182	// ForceSendFields is a list of field names (e.g. "Uri") to
11183	// unconditionally include in API requests. By default, fields with
11184	// empty values are omitted from API requests. However, any non-pointer,
11185	// non-interface field appearing in ForceSendFields will be sent to the
11186	// server regardless of whether the field is empty or not. This may be
11187	// used to include empty fields in Patch requests.
11188	ForceSendFields []string `json:"-"`
11189
11190	// NullFields is a list of field names (e.g. "Uri") to include in API
11191	// requests with the JSON null value. By default, fields with empty
11192	// values are omitted from API requests. However, any field with an
11193	// empty value appearing in NullFields will be sent to the server as
11194	// null. It is an error if a field in this list has a non-empty value.
11195	// This may be used to include null fields in Patch requests.
11196	NullFields []string `json:"-"`
11197}
11198
11199func (s *GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction) MarshalJSON() ([]byte, error) {
11200	type NoMethod GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction
11201	raw := NoMethod(*s)
11202	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11203}
11204
11205// GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard: Browse
11206// Carousel Card for Actions on Google.
11207// https://developers.google.com/actions/assistant/responses#browsing_carousel
11208type GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard struct {
11209	// ImageDisplayOptions: Optional. Settings for displaying the image.
11210	// Applies to every image in items.
11211	//
11212	// Possible values:
11213	//   "IMAGE_DISPLAY_OPTIONS_UNSPECIFIED" - Fill the gaps between the
11214	// image and the image container with gray bars.
11215	//   "GRAY" - Fill the gaps between the image and the image container
11216	// with gray bars.
11217	//   "WHITE" - Fill the gaps between the image and the image container
11218	// with white bars.
11219	//   "CROPPED" - Image is scaled such that the image width and height
11220	// match or exceed the container dimensions. This may crop the top and
11221	// bottom of the image if the scaled image height is greater than the
11222	// container height, or crop the left and right of the image if the
11223	// scaled image width is greater than the container width. This is
11224	// similar to "Zoom Mode" on a widescreen TV when playing a 4:3 video.
11225	//   "BLURRED_BACKGROUND" - Pad the gaps between image and image frame
11226	// with a blurred copy of the same image.
11227	ImageDisplayOptions string `json:"imageDisplayOptions,omitempty"`
11228
11229	// Items: Required. List of items in the Browse Carousel Card. Minimum
11230	// of two items, maximum of ten.
11231	Items []*GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItem `json:"items,omitempty"`
11232
11233	// ForceSendFields is a list of field names (e.g. "ImageDisplayOptions")
11234	// to unconditionally include in API requests. By default, fields with
11235	// empty values are omitted from API requests. However, any non-pointer,
11236	// non-interface field appearing in ForceSendFields will be sent to the
11237	// server regardless of whether the field is empty or not. This may be
11238	// used to include empty fields in Patch requests.
11239	ForceSendFields []string `json:"-"`
11240
11241	// NullFields is a list of field names (e.g. "ImageDisplayOptions") to
11242	// include in API requests with the JSON null value. By default, fields
11243	// with empty values are omitted from API requests. However, any field
11244	// with an empty value appearing in NullFields will be sent to the
11245	// server as null. It is an error if a field in this list has a
11246	// non-empty value. This may be used to include null fields in Patch
11247	// requests.
11248	NullFields []string `json:"-"`
11249}
11250
11251func (s *GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard) MarshalJSON() ([]byte, error) {
11252	type NoMethod GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard
11253	raw := NoMethod(*s)
11254	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11255}
11256
11257// GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCa
11258// rdItem: Browsing carousel tile
11259type GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItem struct {
11260	// Description: Optional. Description of the carousel item. Maximum of
11261	// four lines of text.
11262	Description string `json:"description,omitempty"`
11263
11264	// Footer: Optional. Text that appears at the bottom of the Browse
11265	// Carousel Card. Maximum of one line of text.
11266	Footer string `json:"footer,omitempty"`
11267
11268	// Image: Optional. Hero image for the carousel item.
11269	Image *GoogleCloudDialogflowV2IntentMessageImage `json:"image,omitempty"`
11270
11271	// OpenUriAction: Required. Action to present to the user.
11272	OpenUriAction *GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction `json:"openUriAction,omitempty"`
11273
11274	// Title: Required. Title of the carousel item. Maximum of two lines of
11275	// text.
11276	Title string `json:"title,omitempty"`
11277
11278	// ForceSendFields is a list of field names (e.g. "Description") to
11279	// unconditionally include in API requests. By default, fields with
11280	// empty values are omitted from API requests. However, any non-pointer,
11281	// non-interface field appearing in ForceSendFields will be sent to the
11282	// server regardless of whether the field is empty or not. This may be
11283	// used to include empty fields in Patch requests.
11284	ForceSendFields []string `json:"-"`
11285
11286	// NullFields is a list of field names (e.g. "Description") to include
11287	// in API requests with the JSON null value. By default, fields with
11288	// empty values are omitted from API requests. However, any field with
11289	// an empty value appearing in NullFields will be sent to the server as
11290	// null. It is an error if a field in this list has a non-empty value.
11291	// This may be used to include null fields in Patch requests.
11292	NullFields []string `json:"-"`
11293}
11294
11295func (s *GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItem) MarshalJSON() ([]byte, error) {
11296	type NoMethod GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItem
11297	raw := NoMethod(*s)
11298	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11299}
11300
11301// GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCa
11302// rdItemOpenUrlAction: Actions on Google action to open a given url.
11303type GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction struct {
11304	// Url: Required. URL
11305	Url string `json:"url,omitempty"`
11306
11307	// UrlTypeHint: Optional. Specifies the type of viewer that is used when
11308	// opening the URL. Defaults to opening via web browser.
11309	//
11310	// Possible values:
11311	//   "URL_TYPE_HINT_UNSPECIFIED" - Unspecified
11312	//   "AMP_ACTION" - Url would be an amp action
11313	//   "AMP_CONTENT" - URL that points directly to AMP content, or to a
11314	// canonical URL which refers to AMP content via .
11315	UrlTypeHint string `json:"urlTypeHint,omitempty"`
11316
11317	// ForceSendFields is a list of field names (e.g. "Url") to
11318	// unconditionally include in API requests. By default, fields with
11319	// empty values are omitted from API requests. However, any non-pointer,
11320	// non-interface field appearing in ForceSendFields will be sent to the
11321	// server regardless of whether the field is empty or not. This may be
11322	// used to include empty fields in Patch requests.
11323	ForceSendFields []string `json:"-"`
11324
11325	// NullFields is a list of field names (e.g. "Url") to include in API
11326	// requests with the JSON null value. By default, fields with empty
11327	// values are omitted from API requests. However, any field with an
11328	// empty value appearing in NullFields will be sent to the server as
11329	// null. It is an error if a field in this list has a non-empty value.
11330	// This may be used to include null fields in Patch requests.
11331	NullFields []string `json:"-"`
11332}
11333
11334func (s *GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction) MarshalJSON() ([]byte, error) {
11335	type NoMethod GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction
11336	raw := NoMethod(*s)
11337	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11338}
11339
11340// GoogleCloudDialogflowV2IntentMessageCard: The card response message.
11341type GoogleCloudDialogflowV2IntentMessageCard struct {
11342	// Buttons: Optional. The collection of card buttons.
11343	Buttons []*GoogleCloudDialogflowV2IntentMessageCardButton `json:"buttons,omitempty"`
11344
11345	// ImageUri: Optional. The public URI to an image file for the card.
11346	ImageUri string `json:"imageUri,omitempty"`
11347
11348	// Subtitle: Optional. The subtitle of the card.
11349	Subtitle string `json:"subtitle,omitempty"`
11350
11351	// Title: Optional. The title of the card.
11352	Title string `json:"title,omitempty"`
11353
11354	// ForceSendFields is a list of field names (e.g. "Buttons") to
11355	// unconditionally include in API requests. By default, fields with
11356	// empty values are omitted from API requests. However, any non-pointer,
11357	// non-interface field appearing in ForceSendFields will be sent to the
11358	// server regardless of whether the field is empty or not. This may be
11359	// used to include empty fields in Patch requests.
11360	ForceSendFields []string `json:"-"`
11361
11362	// NullFields is a list of field names (e.g. "Buttons") to include in
11363	// API requests with the JSON null value. By default, fields with empty
11364	// values are omitted from API requests. However, any field with an
11365	// empty value appearing in NullFields will be sent to the server as
11366	// null. It is an error if a field in this list has a non-empty value.
11367	// This may be used to include null fields in Patch requests.
11368	NullFields []string `json:"-"`
11369}
11370
11371func (s *GoogleCloudDialogflowV2IntentMessageCard) MarshalJSON() ([]byte, error) {
11372	type NoMethod GoogleCloudDialogflowV2IntentMessageCard
11373	raw := NoMethod(*s)
11374	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11375}
11376
11377// GoogleCloudDialogflowV2IntentMessageCardButton: Contains information
11378// about a button.
11379type GoogleCloudDialogflowV2IntentMessageCardButton struct {
11380	// Postback: Optional. The text to send back to the Dialogflow API or a
11381	// URI to open.
11382	Postback string `json:"postback,omitempty"`
11383
11384	// Text: Optional. The text to show on the button.
11385	Text string `json:"text,omitempty"`
11386
11387	// ForceSendFields is a list of field names (e.g. "Postback") to
11388	// unconditionally include in API requests. By default, fields with
11389	// empty values are omitted from API requests. However, any non-pointer,
11390	// non-interface field appearing in ForceSendFields will be sent to the
11391	// server regardless of whether the field is empty or not. This may be
11392	// used to include empty fields in Patch requests.
11393	ForceSendFields []string `json:"-"`
11394
11395	// NullFields is a list of field names (e.g. "Postback") to include in
11396	// API requests with the JSON null value. By default, fields with empty
11397	// values are omitted from API requests. However, any field with an
11398	// empty value appearing in NullFields will be sent to the server as
11399	// null. It is an error if a field in this list has a non-empty value.
11400	// This may be used to include null fields in Patch requests.
11401	NullFields []string `json:"-"`
11402}
11403
11404func (s *GoogleCloudDialogflowV2IntentMessageCardButton) MarshalJSON() ([]byte, error) {
11405	type NoMethod GoogleCloudDialogflowV2IntentMessageCardButton
11406	raw := NoMethod(*s)
11407	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11408}
11409
11410// GoogleCloudDialogflowV2IntentMessageCarouselSelect: The card for
11411// presenting a carousel of options to select from.
11412type GoogleCloudDialogflowV2IntentMessageCarouselSelect struct {
11413	// Items: Required. Carousel items.
11414	Items []*GoogleCloudDialogflowV2IntentMessageCarouselSelectItem `json:"items,omitempty"`
11415
11416	// ForceSendFields is a list of field names (e.g. "Items") to
11417	// unconditionally include in API requests. By default, fields with
11418	// empty values are omitted from API requests. However, any non-pointer,
11419	// non-interface field appearing in ForceSendFields will be sent to the
11420	// server regardless of whether the field is empty or not. This may be
11421	// used to include empty fields in Patch requests.
11422	ForceSendFields []string `json:"-"`
11423
11424	// NullFields is a list of field names (e.g. "Items") to include in API
11425	// requests with the JSON null value. By default, fields with empty
11426	// values are omitted from API requests. However, any field with an
11427	// empty value appearing in NullFields will be sent to the server as
11428	// null. It is an error if a field in this list has a non-empty value.
11429	// This may be used to include null fields in Patch requests.
11430	NullFields []string `json:"-"`
11431}
11432
11433func (s *GoogleCloudDialogflowV2IntentMessageCarouselSelect) MarshalJSON() ([]byte, error) {
11434	type NoMethod GoogleCloudDialogflowV2IntentMessageCarouselSelect
11435	raw := NoMethod(*s)
11436	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11437}
11438
11439// GoogleCloudDialogflowV2IntentMessageCarouselSelectItem: An item in
11440// the carousel.
11441type GoogleCloudDialogflowV2IntentMessageCarouselSelectItem struct {
11442	// Description: Optional. The body text of the card.
11443	Description string `json:"description,omitempty"`
11444
11445	// Image: Optional. The image to display.
11446	Image *GoogleCloudDialogflowV2IntentMessageImage `json:"image,omitempty"`
11447
11448	// Info: Required. Additional info about the option item.
11449	Info *GoogleCloudDialogflowV2IntentMessageSelectItemInfo `json:"info,omitempty"`
11450
11451	// Title: Required. Title of the carousel item.
11452	Title string `json:"title,omitempty"`
11453
11454	// ForceSendFields is a list of field names (e.g. "Description") to
11455	// unconditionally include in API requests. By default, fields with
11456	// empty values are omitted from API requests. However, any non-pointer,
11457	// non-interface field appearing in ForceSendFields will be sent to the
11458	// server regardless of whether the field is empty or not. This may be
11459	// used to include empty fields in Patch requests.
11460	ForceSendFields []string `json:"-"`
11461
11462	// NullFields is a list of field names (e.g. "Description") to include
11463	// in API requests with the JSON null value. By default, fields with
11464	// empty values are omitted from API requests. However, any field with
11465	// an empty value appearing in NullFields will be sent to the server as
11466	// null. It is an error if a field in this list has a non-empty value.
11467	// This may be used to include null fields in Patch requests.
11468	NullFields []string `json:"-"`
11469}
11470
11471func (s *GoogleCloudDialogflowV2IntentMessageCarouselSelectItem) MarshalJSON() ([]byte, error) {
11472	type NoMethod GoogleCloudDialogflowV2IntentMessageCarouselSelectItem
11473	raw := NoMethod(*s)
11474	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11475}
11476
11477// GoogleCloudDialogflowV2IntentMessageColumnProperties: Column
11478// properties for TableCard.
11479type GoogleCloudDialogflowV2IntentMessageColumnProperties struct {
11480	// Header: Required. Column heading.
11481	Header string `json:"header,omitempty"`
11482
11483	// HorizontalAlignment: Optional. Defines text alignment for all cells
11484	// in this column.
11485	//
11486	// Possible values:
11487	//   "HORIZONTAL_ALIGNMENT_UNSPECIFIED" - Text is aligned to the leading
11488	// edge of the column.
11489	//   "LEADING" - Text is aligned to the leading edge of the column.
11490	//   "CENTER" - Text is centered in the column.
11491	//   "TRAILING" - Text is aligned to the trailing edge of the column.
11492	HorizontalAlignment string `json:"horizontalAlignment,omitempty"`
11493
11494	// ForceSendFields is a list of field names (e.g. "Header") to
11495	// unconditionally include in API requests. By default, fields with
11496	// empty values are omitted from API requests. However, any non-pointer,
11497	// non-interface field appearing in ForceSendFields will be sent to the
11498	// server regardless of whether the field is empty or not. This may be
11499	// used to include empty fields in Patch requests.
11500	ForceSendFields []string `json:"-"`
11501
11502	// NullFields is a list of field names (e.g. "Header") to include in API
11503	// requests with the JSON null value. By default, fields with empty
11504	// values are omitted from API requests. However, any field with an
11505	// empty value appearing in NullFields will be sent to the server as
11506	// null. It is an error if a field in this list has a non-empty value.
11507	// This may be used to include null fields in Patch requests.
11508	NullFields []string `json:"-"`
11509}
11510
11511func (s *GoogleCloudDialogflowV2IntentMessageColumnProperties) MarshalJSON() ([]byte, error) {
11512	type NoMethod GoogleCloudDialogflowV2IntentMessageColumnProperties
11513	raw := NoMethod(*s)
11514	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11515}
11516
11517// GoogleCloudDialogflowV2IntentMessageImage: The image response
11518// message.
11519type GoogleCloudDialogflowV2IntentMessageImage struct {
11520	// AccessibilityText: Optional. A text description of the image to be
11521	// used for accessibility, e.g., screen readers.
11522	AccessibilityText string `json:"accessibilityText,omitempty"`
11523
11524	// ImageUri: Optional. The public URI to an image file.
11525	ImageUri string `json:"imageUri,omitempty"`
11526
11527	// ForceSendFields is a list of field names (e.g. "AccessibilityText")
11528	// to unconditionally include in API requests. By default, fields with
11529	// empty values are omitted from API requests. However, any non-pointer,
11530	// non-interface field appearing in ForceSendFields will be sent to the
11531	// server regardless of whether the field is empty or not. This may be
11532	// used to include empty fields in Patch requests.
11533	ForceSendFields []string `json:"-"`
11534
11535	// NullFields is a list of field names (e.g. "AccessibilityText") to
11536	// include in API requests with the JSON null value. By default, fields
11537	// with empty values are omitted from API requests. However, any field
11538	// with an empty value appearing in NullFields will be sent to the
11539	// server as null. It is an error if a field in this list has a
11540	// non-empty value. This may be used to include null fields in Patch
11541	// requests.
11542	NullFields []string `json:"-"`
11543}
11544
11545func (s *GoogleCloudDialogflowV2IntentMessageImage) MarshalJSON() ([]byte, error) {
11546	type NoMethod GoogleCloudDialogflowV2IntentMessageImage
11547	raw := NoMethod(*s)
11548	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11549}
11550
11551// GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion: The suggestion
11552// chip message that allows the user to jump out to the app or website
11553// associated with this agent.
11554type GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion struct {
11555	// DestinationName: Required. The name of the app or site this chip is
11556	// linking to.
11557	DestinationName string `json:"destinationName,omitempty"`
11558
11559	// Uri: Required. The URI of the app or site to open when the user taps
11560	// the suggestion chip.
11561	Uri string `json:"uri,omitempty"`
11562
11563	// ForceSendFields is a list of field names (e.g. "DestinationName") to
11564	// unconditionally include in API requests. By default, fields with
11565	// empty values are omitted from API requests. However, any non-pointer,
11566	// non-interface field appearing in ForceSendFields will be sent to the
11567	// server regardless of whether the field is empty or not. This may be
11568	// used to include empty fields in Patch requests.
11569	ForceSendFields []string `json:"-"`
11570
11571	// NullFields is a list of field names (e.g. "DestinationName") to
11572	// include in API requests with the JSON null value. By default, fields
11573	// with empty values are omitted from API requests. However, any field
11574	// with an empty value appearing in NullFields will be sent to the
11575	// server as null. It is an error if a field in this list has a
11576	// non-empty value. This may be used to include null fields in Patch
11577	// requests.
11578	NullFields []string `json:"-"`
11579}
11580
11581func (s *GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion) MarshalJSON() ([]byte, error) {
11582	type NoMethod GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion
11583	raw := NoMethod(*s)
11584	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11585}
11586
11587// GoogleCloudDialogflowV2IntentMessageListSelect: The card for
11588// presenting a list of options to select from.
11589type GoogleCloudDialogflowV2IntentMessageListSelect struct {
11590	// Items: Required. List items.
11591	Items []*GoogleCloudDialogflowV2IntentMessageListSelectItem `json:"items,omitempty"`
11592
11593	// Subtitle: Optional. Subtitle of the list.
11594	Subtitle string `json:"subtitle,omitempty"`
11595
11596	// Title: Optional. The overall title of the list.
11597	Title string `json:"title,omitempty"`
11598
11599	// ForceSendFields is a list of field names (e.g. "Items") to
11600	// unconditionally include in API requests. By default, fields with
11601	// empty values are omitted from API requests. However, any non-pointer,
11602	// non-interface field appearing in ForceSendFields will be sent to the
11603	// server regardless of whether the field is empty or not. This may be
11604	// used to include empty fields in Patch requests.
11605	ForceSendFields []string `json:"-"`
11606
11607	// NullFields is a list of field names (e.g. "Items") to include in API
11608	// requests with the JSON null value. By default, fields with empty
11609	// values are omitted from API requests. However, any field with an
11610	// empty value appearing in NullFields will be sent to the server as
11611	// null. It is an error if a field in this list has a non-empty value.
11612	// This may be used to include null fields in Patch requests.
11613	NullFields []string `json:"-"`
11614}
11615
11616func (s *GoogleCloudDialogflowV2IntentMessageListSelect) MarshalJSON() ([]byte, error) {
11617	type NoMethod GoogleCloudDialogflowV2IntentMessageListSelect
11618	raw := NoMethod(*s)
11619	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11620}
11621
11622// GoogleCloudDialogflowV2IntentMessageListSelectItem: An item in the
11623// list.
11624type GoogleCloudDialogflowV2IntentMessageListSelectItem struct {
11625	// Description: Optional. The main text describing the item.
11626	Description string `json:"description,omitempty"`
11627
11628	// Image: Optional. The image to display.
11629	Image *GoogleCloudDialogflowV2IntentMessageImage `json:"image,omitempty"`
11630
11631	// Info: Required. Additional information about this option.
11632	Info *GoogleCloudDialogflowV2IntentMessageSelectItemInfo `json:"info,omitempty"`
11633
11634	// Title: Required. The title of the list item.
11635	Title string `json:"title,omitempty"`
11636
11637	// ForceSendFields is a list of field names (e.g. "Description") to
11638	// unconditionally include in API requests. By default, fields with
11639	// empty values are omitted from API requests. However, any non-pointer,
11640	// non-interface field appearing in ForceSendFields will be sent to the
11641	// server regardless of whether the field is empty or not. This may be
11642	// used to include empty fields in Patch requests.
11643	ForceSendFields []string `json:"-"`
11644
11645	// NullFields is a list of field names (e.g. "Description") to include
11646	// in API requests with the JSON null value. By default, fields with
11647	// empty values are omitted from API requests. However, any field with
11648	// an empty value appearing in NullFields will be sent to the server as
11649	// null. It is an error if a field in this list has a non-empty value.
11650	// This may be used to include null fields in Patch requests.
11651	NullFields []string `json:"-"`
11652}
11653
11654func (s *GoogleCloudDialogflowV2IntentMessageListSelectItem) MarshalJSON() ([]byte, error) {
11655	type NoMethod GoogleCloudDialogflowV2IntentMessageListSelectItem
11656	raw := NoMethod(*s)
11657	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11658}
11659
11660// GoogleCloudDialogflowV2IntentMessageMediaContent: The media content
11661// card for Actions on Google.
11662type GoogleCloudDialogflowV2IntentMessageMediaContent struct {
11663	// MediaObjects: Required. List of media objects.
11664	MediaObjects []*GoogleCloudDialogflowV2IntentMessageMediaContentResponseMediaObject `json:"mediaObjects,omitempty"`
11665
11666	// MediaType: Optional. What type of media is the content (ie "audio").
11667	//
11668	// Possible values:
11669	//   "RESPONSE_MEDIA_TYPE_UNSPECIFIED" - Unspecified.
11670	//   "AUDIO" - Response media type is audio.
11671	MediaType string `json:"mediaType,omitempty"`
11672
11673	// ForceSendFields is a list of field names (e.g. "MediaObjects") to
11674	// unconditionally include in API requests. By default, fields with
11675	// empty values are omitted from API requests. However, any non-pointer,
11676	// non-interface field appearing in ForceSendFields will be sent to the
11677	// server regardless of whether the field is empty or not. This may be
11678	// used to include empty fields in Patch requests.
11679	ForceSendFields []string `json:"-"`
11680
11681	// NullFields is a list of field names (e.g. "MediaObjects") to include
11682	// in API requests with the JSON null value. By default, fields with
11683	// empty values are omitted from API requests. However, any field with
11684	// an empty value appearing in NullFields will be sent to the server as
11685	// null. It is an error if a field in this list has a non-empty value.
11686	// This may be used to include null fields in Patch requests.
11687	NullFields []string `json:"-"`
11688}
11689
11690func (s *GoogleCloudDialogflowV2IntentMessageMediaContent) MarshalJSON() ([]byte, error) {
11691	type NoMethod GoogleCloudDialogflowV2IntentMessageMediaContent
11692	raw := NoMethod(*s)
11693	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11694}
11695
11696// GoogleCloudDialogflowV2IntentMessageMediaContentResponseMediaObject:
11697// Response media object for media content card.
11698type GoogleCloudDialogflowV2IntentMessageMediaContentResponseMediaObject struct {
11699	// ContentUrl: Required. Url where the media is stored.
11700	ContentUrl string `json:"contentUrl,omitempty"`
11701
11702	// Description: Optional. Description of media card.
11703	Description string `json:"description,omitempty"`
11704
11705	// Icon: Optional. Icon to display above media content.
11706	Icon *GoogleCloudDialogflowV2IntentMessageImage `json:"icon,omitempty"`
11707
11708	// LargeImage: Optional. Image to display above media content.
11709	LargeImage *GoogleCloudDialogflowV2IntentMessageImage `json:"largeImage,omitempty"`
11710
11711	// Name: Required. Name of media card.
11712	Name string `json:"name,omitempty"`
11713
11714	// ForceSendFields is a list of field names (e.g. "ContentUrl") to
11715	// unconditionally include in API requests. By default, fields with
11716	// empty values are omitted from API requests. However, any non-pointer,
11717	// non-interface field appearing in ForceSendFields will be sent to the
11718	// server regardless of whether the field is empty or not. This may be
11719	// used to include empty fields in Patch requests.
11720	ForceSendFields []string `json:"-"`
11721
11722	// NullFields is a list of field names (e.g. "ContentUrl") to include in
11723	// API requests with the JSON null value. By default, fields with empty
11724	// values are omitted from API requests. However, any field with an
11725	// empty value appearing in NullFields will be sent to the server as
11726	// null. It is an error if a field in this list has a non-empty value.
11727	// This may be used to include null fields in Patch requests.
11728	NullFields []string `json:"-"`
11729}
11730
11731func (s *GoogleCloudDialogflowV2IntentMessageMediaContentResponseMediaObject) MarshalJSON() ([]byte, error) {
11732	type NoMethod GoogleCloudDialogflowV2IntentMessageMediaContentResponseMediaObject
11733	raw := NoMethod(*s)
11734	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11735}
11736
11737// GoogleCloudDialogflowV2IntentMessageQuickReplies: The quick replies
11738// response message.
11739type GoogleCloudDialogflowV2IntentMessageQuickReplies struct {
11740	// QuickReplies: Optional. The collection of quick replies.
11741	QuickReplies []string `json:"quickReplies,omitempty"`
11742
11743	// Title: Optional. The title of the collection of quick replies.
11744	Title string `json:"title,omitempty"`
11745
11746	// ForceSendFields is a list of field names (e.g. "QuickReplies") to
11747	// unconditionally include in API requests. By default, fields with
11748	// empty values are omitted from API requests. However, any non-pointer,
11749	// non-interface field appearing in ForceSendFields will be sent to the
11750	// server regardless of whether the field is empty or not. This may be
11751	// used to include empty fields in Patch requests.
11752	ForceSendFields []string `json:"-"`
11753
11754	// NullFields is a list of field names (e.g. "QuickReplies") to include
11755	// in API requests with the JSON null value. By default, fields with
11756	// empty values are omitted from API requests. However, any field with
11757	// an empty value appearing in NullFields will be sent to the server as
11758	// null. It is an error if a field in this list has a non-empty value.
11759	// This may be used to include null fields in Patch requests.
11760	NullFields []string `json:"-"`
11761}
11762
11763func (s *GoogleCloudDialogflowV2IntentMessageQuickReplies) MarshalJSON() ([]byte, error) {
11764	type NoMethod GoogleCloudDialogflowV2IntentMessageQuickReplies
11765	raw := NoMethod(*s)
11766	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11767}
11768
11769// GoogleCloudDialogflowV2IntentMessageSelectItemInfo: Additional info
11770// about the select item for when it is triggered in a dialog.
11771type GoogleCloudDialogflowV2IntentMessageSelectItemInfo struct {
11772	// Key: Required. A unique key that will be sent back to the agent if
11773	// this response is given.
11774	Key string `json:"key,omitempty"`
11775
11776	// Synonyms: Optional. A list of synonyms that can also be used to
11777	// trigger this item in dialog.
11778	Synonyms []string `json:"synonyms,omitempty"`
11779
11780	// ForceSendFields is a list of field names (e.g. "Key") to
11781	// unconditionally include in API requests. By default, fields with
11782	// empty values are omitted from API requests. However, any non-pointer,
11783	// non-interface field appearing in ForceSendFields will be sent to the
11784	// server regardless of whether the field is empty or not. This may be
11785	// used to include empty fields in Patch requests.
11786	ForceSendFields []string `json:"-"`
11787
11788	// NullFields is a list of field names (e.g. "Key") to include in API
11789	// requests with the JSON null value. By default, fields with empty
11790	// values are omitted from API requests. However, any field with an
11791	// empty value appearing in NullFields will be sent to the server as
11792	// null. It is an error if a field in this list has a non-empty value.
11793	// This may be used to include null fields in Patch requests.
11794	NullFields []string `json:"-"`
11795}
11796
11797func (s *GoogleCloudDialogflowV2IntentMessageSelectItemInfo) MarshalJSON() ([]byte, error) {
11798	type NoMethod GoogleCloudDialogflowV2IntentMessageSelectItemInfo
11799	raw := NoMethod(*s)
11800	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11801}
11802
11803// GoogleCloudDialogflowV2IntentMessageSimpleResponse: The simple
11804// response message containing speech or text.
11805type GoogleCloudDialogflowV2IntentMessageSimpleResponse struct {
11806	// DisplayText: Optional. The text to display.
11807	DisplayText string `json:"displayText,omitempty"`
11808
11809	// Ssml: One of text_to_speech or ssml must be provided. Structured
11810	// spoken response to the user in the SSML format. Mutually exclusive
11811	// with text_to_speech.
11812	Ssml string `json:"ssml,omitempty"`
11813
11814	// TextToSpeech: One of text_to_speech or ssml must be provided. The
11815	// plain text of the speech output. Mutually exclusive with ssml.
11816	TextToSpeech string `json:"textToSpeech,omitempty"`
11817
11818	// ForceSendFields is a list of field names (e.g. "DisplayText") to
11819	// unconditionally include in API requests. By default, fields with
11820	// empty values are omitted from API requests. However, any non-pointer,
11821	// non-interface field appearing in ForceSendFields will be sent to the
11822	// server regardless of whether the field is empty or not. This may be
11823	// used to include empty fields in Patch requests.
11824	ForceSendFields []string `json:"-"`
11825
11826	// NullFields is a list of field names (e.g. "DisplayText") to include
11827	// in API requests with the JSON null value. By default, fields with
11828	// empty values are omitted from API requests. However, any field with
11829	// an empty value appearing in NullFields will be sent to the server as
11830	// null. It is an error if a field in this list has a non-empty value.
11831	// This may be used to include null fields in Patch requests.
11832	NullFields []string `json:"-"`
11833}
11834
11835func (s *GoogleCloudDialogflowV2IntentMessageSimpleResponse) MarshalJSON() ([]byte, error) {
11836	type NoMethod GoogleCloudDialogflowV2IntentMessageSimpleResponse
11837	raw := NoMethod(*s)
11838	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11839}
11840
11841// GoogleCloudDialogflowV2IntentMessageSimpleResponses: The collection
11842// of simple response candidates. This message in
11843// `QueryResult.fulfillment_messages` and
11844// `WebhookResponse.fulfillment_messages` should contain only one
11845// `SimpleResponse`.
11846type GoogleCloudDialogflowV2IntentMessageSimpleResponses struct {
11847	// SimpleResponses: Required. The list of simple responses.
11848	SimpleResponses []*GoogleCloudDialogflowV2IntentMessageSimpleResponse `json:"simpleResponses,omitempty"`
11849
11850	// ForceSendFields is a list of field names (e.g. "SimpleResponses") to
11851	// unconditionally include in API requests. By default, fields with
11852	// empty values are omitted from API requests. However, any non-pointer,
11853	// non-interface field appearing in ForceSendFields will be sent to the
11854	// server regardless of whether the field is empty or not. This may be
11855	// used to include empty fields in Patch requests.
11856	ForceSendFields []string `json:"-"`
11857
11858	// NullFields is a list of field names (e.g. "SimpleResponses") to
11859	// include in API requests with the JSON null value. By default, fields
11860	// with empty values are omitted from API requests. However, any field
11861	// with an empty value appearing in NullFields will be sent to the
11862	// server as null. It is an error if a field in this list has a
11863	// non-empty value. This may be used to include null fields in Patch
11864	// requests.
11865	NullFields []string `json:"-"`
11866}
11867
11868func (s *GoogleCloudDialogflowV2IntentMessageSimpleResponses) MarshalJSON() ([]byte, error) {
11869	type NoMethod GoogleCloudDialogflowV2IntentMessageSimpleResponses
11870	raw := NoMethod(*s)
11871	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11872}
11873
11874// GoogleCloudDialogflowV2IntentMessageSuggestion: The suggestion chip
11875// message that the user can tap to quickly post a reply to the
11876// conversation.
11877type GoogleCloudDialogflowV2IntentMessageSuggestion struct {
11878	// Title: Required. The text shown the in the suggestion chip.
11879	Title string `json:"title,omitempty"`
11880
11881	// ForceSendFields is a list of field names (e.g. "Title") to
11882	// unconditionally include in API requests. By default, fields with
11883	// empty values are omitted from API requests. However, any non-pointer,
11884	// non-interface field appearing in ForceSendFields will be sent to the
11885	// server regardless of whether the field is empty or not. This may be
11886	// used to include empty fields in Patch requests.
11887	ForceSendFields []string `json:"-"`
11888
11889	// NullFields is a list of field names (e.g. "Title") to include in API
11890	// requests with the JSON null value. By default, fields with empty
11891	// values are omitted from API requests. However, any field with an
11892	// empty value appearing in NullFields will be sent to the server as
11893	// null. It is an error if a field in this list has a non-empty value.
11894	// This may be used to include null fields in Patch requests.
11895	NullFields []string `json:"-"`
11896}
11897
11898func (s *GoogleCloudDialogflowV2IntentMessageSuggestion) MarshalJSON() ([]byte, error) {
11899	type NoMethod GoogleCloudDialogflowV2IntentMessageSuggestion
11900	raw := NoMethod(*s)
11901	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11902}
11903
11904// GoogleCloudDialogflowV2IntentMessageSuggestions: The collection of
11905// suggestions.
11906type GoogleCloudDialogflowV2IntentMessageSuggestions struct {
11907	// Suggestions: Required. The list of suggested replies.
11908	Suggestions []*GoogleCloudDialogflowV2IntentMessageSuggestion `json:"suggestions,omitempty"`
11909
11910	// ForceSendFields is a list of field names (e.g. "Suggestions") to
11911	// unconditionally include in API requests. By default, fields with
11912	// empty values are omitted from API requests. However, any non-pointer,
11913	// non-interface field appearing in ForceSendFields will be sent to the
11914	// server regardless of whether the field is empty or not. This may be
11915	// used to include empty fields in Patch requests.
11916	ForceSendFields []string `json:"-"`
11917
11918	// NullFields is a list of field names (e.g. "Suggestions") 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 *GoogleCloudDialogflowV2IntentMessageSuggestions) MarshalJSON() ([]byte, error) {
11928	type NoMethod GoogleCloudDialogflowV2IntentMessageSuggestions
11929	raw := NoMethod(*s)
11930	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11931}
11932
11933// GoogleCloudDialogflowV2IntentMessageTableCard: Table card for Actions
11934// on Google.
11935type GoogleCloudDialogflowV2IntentMessageTableCard struct {
11936	// Buttons: Optional. List of buttons for the card.
11937	Buttons []*GoogleCloudDialogflowV2IntentMessageBasicCardButton `json:"buttons,omitempty"`
11938
11939	// ColumnProperties: Optional. Display properties for the columns in
11940	// this table.
11941	ColumnProperties []*GoogleCloudDialogflowV2IntentMessageColumnProperties `json:"columnProperties,omitempty"`
11942
11943	// Image: Optional. Image which should be displayed on the card.
11944	Image *GoogleCloudDialogflowV2IntentMessageImage `json:"image,omitempty"`
11945
11946	// Rows: Optional. Rows in this table of data.
11947	Rows []*GoogleCloudDialogflowV2IntentMessageTableCardRow `json:"rows,omitempty"`
11948
11949	// Subtitle: Optional. Subtitle to the title.
11950	Subtitle string `json:"subtitle,omitempty"`
11951
11952	// Title: Required. Title of the card.
11953	Title string `json:"title,omitempty"`
11954
11955	// ForceSendFields is a list of field names (e.g. "Buttons") to
11956	// unconditionally include in API requests. By default, fields with
11957	// empty values are omitted from API requests. However, any non-pointer,
11958	// non-interface field appearing in ForceSendFields will be sent to the
11959	// server regardless of whether the field is empty or not. This may be
11960	// used to include empty fields in Patch requests.
11961	ForceSendFields []string `json:"-"`
11962
11963	// NullFields is a list of field names (e.g. "Buttons") to include in
11964	// API requests with the JSON null value. By default, fields with empty
11965	// values are omitted from API requests. However, any field with an
11966	// empty value appearing in NullFields will be sent to the server as
11967	// null. It is an error if a field in this list has a non-empty value.
11968	// This may be used to include null fields in Patch requests.
11969	NullFields []string `json:"-"`
11970}
11971
11972func (s *GoogleCloudDialogflowV2IntentMessageTableCard) MarshalJSON() ([]byte, error) {
11973	type NoMethod GoogleCloudDialogflowV2IntentMessageTableCard
11974	raw := NoMethod(*s)
11975	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11976}
11977
11978// GoogleCloudDialogflowV2IntentMessageTableCardCell: Cell of
11979// TableCardRow.
11980type GoogleCloudDialogflowV2IntentMessageTableCardCell struct {
11981	// Text: Required. Text in this cell.
11982	Text string `json:"text,omitempty"`
11983
11984	// ForceSendFields is a list of field names (e.g. "Text") to
11985	// unconditionally include in API requests. By default, fields with
11986	// empty values are omitted from API requests. However, any non-pointer,
11987	// non-interface field appearing in ForceSendFields will be sent to the
11988	// server regardless of whether the field is empty or not. This may be
11989	// used to include empty fields in Patch requests.
11990	ForceSendFields []string `json:"-"`
11991
11992	// NullFields is a list of field names (e.g. "Text") to include in API
11993	// requests with the JSON null value. By default, fields with empty
11994	// values are omitted from API requests. However, any field with an
11995	// empty value appearing in NullFields will be sent to the server as
11996	// null. It is an error if a field in this list has a non-empty value.
11997	// This may be used to include null fields in Patch requests.
11998	NullFields []string `json:"-"`
11999}
12000
12001func (s *GoogleCloudDialogflowV2IntentMessageTableCardCell) MarshalJSON() ([]byte, error) {
12002	type NoMethod GoogleCloudDialogflowV2IntentMessageTableCardCell
12003	raw := NoMethod(*s)
12004	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12005}
12006
12007// GoogleCloudDialogflowV2IntentMessageTableCardRow: Row of TableCard.
12008type GoogleCloudDialogflowV2IntentMessageTableCardRow struct {
12009	// Cells: Optional. List of cells that make up this row.
12010	Cells []*GoogleCloudDialogflowV2IntentMessageTableCardCell `json:"cells,omitempty"`
12011
12012	// DividerAfter: Optional. Whether to add a visual divider after this
12013	// row.
12014	DividerAfter bool `json:"dividerAfter,omitempty"`
12015
12016	// ForceSendFields is a list of field names (e.g. "Cells") to
12017	// unconditionally include in API requests. By default, fields with
12018	// empty values are omitted from API requests. However, any non-pointer,
12019	// non-interface field appearing in ForceSendFields will be sent to the
12020	// server regardless of whether the field is empty or not. This may be
12021	// used to include empty fields in Patch requests.
12022	ForceSendFields []string `json:"-"`
12023
12024	// NullFields is a list of field names (e.g. "Cells") to include in API
12025	// requests with the JSON null value. By default, fields with empty
12026	// values are omitted from API requests. However, any field with an
12027	// empty value appearing in NullFields will be sent to the server as
12028	// null. It is an error if a field in this list has a non-empty value.
12029	// This may be used to include null fields in Patch requests.
12030	NullFields []string `json:"-"`
12031}
12032
12033func (s *GoogleCloudDialogflowV2IntentMessageTableCardRow) MarshalJSON() ([]byte, error) {
12034	type NoMethod GoogleCloudDialogflowV2IntentMessageTableCardRow
12035	raw := NoMethod(*s)
12036	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12037}
12038
12039// GoogleCloudDialogflowV2IntentMessageText: The text response message.
12040type GoogleCloudDialogflowV2IntentMessageText struct {
12041	// Text: Optional. The collection of the agent's responses.
12042	Text []string `json:"text,omitempty"`
12043
12044	// ForceSendFields is a list of field names (e.g. "Text") to
12045	// unconditionally include in API requests. By default, fields with
12046	// empty values are omitted from API requests. However, any non-pointer,
12047	// non-interface field appearing in ForceSendFields will be sent to the
12048	// server regardless of whether the field is empty or not. This may be
12049	// used to include empty fields in Patch requests.
12050	ForceSendFields []string `json:"-"`
12051
12052	// NullFields is a list of field names (e.g. "Text") to include in API
12053	// requests with the JSON null value. By default, fields with empty
12054	// values are omitted from API requests. However, any field with an
12055	// empty value appearing in NullFields will be sent to the server as
12056	// null. It is an error if a field in this list has a non-empty value.
12057	// This may be used to include null fields in Patch requests.
12058	NullFields []string `json:"-"`
12059}
12060
12061func (s *GoogleCloudDialogflowV2IntentMessageText) MarshalJSON() ([]byte, error) {
12062	type NoMethod GoogleCloudDialogflowV2IntentMessageText
12063	raw := NoMethod(*s)
12064	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12065}
12066
12067// GoogleCloudDialogflowV2IntentParameter: Represents intent parameters.
12068type GoogleCloudDialogflowV2IntentParameter struct {
12069	// DefaultValue: Optional. The default value to use when the `value`
12070	// yields an empty result. Default values can be extracted from contexts
12071	// by using the following syntax: `#context_name.parameter_name`.
12072	DefaultValue string `json:"defaultValue,omitempty"`
12073
12074	// DisplayName: Required. The name of the parameter.
12075	DisplayName string `json:"displayName,omitempty"`
12076
12077	// EntityTypeDisplayName: Optional. The name of the entity type,
12078	// prefixed with `@`, that describes values of the parameter. If the
12079	// parameter is required, this must be provided.
12080	EntityTypeDisplayName string `json:"entityTypeDisplayName,omitempty"`
12081
12082	// IsList: Optional. Indicates whether the parameter represents a list
12083	// of values.
12084	IsList bool `json:"isList,omitempty"`
12085
12086	// Mandatory: Optional. Indicates whether the parameter is required.
12087	// That is, whether the intent cannot be completed without collecting
12088	// the parameter value.
12089	Mandatory bool `json:"mandatory,omitempty"`
12090
12091	// Name: The unique identifier of this parameter.
12092	Name string `json:"name,omitempty"`
12093
12094	// Prompts: Optional. The collection of prompts that the agent can
12095	// present to the user in order to collect a value for the parameter.
12096	Prompts []string `json:"prompts,omitempty"`
12097
12098	// Value: Optional. The definition of the parameter value. It can be: -
12099	// a constant string, - a parameter value defined as `$parameter_name`,
12100	// - an original parameter value defined as `$parameter_name.original`,
12101	// - a parameter value from some context defined as
12102	// `#context_name.parameter_name`.
12103	Value string `json:"value,omitempty"`
12104
12105	// ForceSendFields is a list of field names (e.g. "DefaultValue") to
12106	// unconditionally include in API requests. By default, fields with
12107	// empty values are omitted from API requests. However, any non-pointer,
12108	// non-interface field appearing in ForceSendFields will be sent to the
12109	// server regardless of whether the field is empty or not. This may be
12110	// used to include empty fields in Patch requests.
12111	ForceSendFields []string `json:"-"`
12112
12113	// NullFields is a list of field names (e.g. "DefaultValue") to include
12114	// in API requests with the JSON null value. By default, fields with
12115	// empty values are omitted from API requests. However, any field with
12116	// an empty value appearing in NullFields will be sent to the server as
12117	// null. It is an error if a field in this list has a non-empty value.
12118	// This may be used to include null fields in Patch requests.
12119	NullFields []string `json:"-"`
12120}
12121
12122func (s *GoogleCloudDialogflowV2IntentParameter) MarshalJSON() ([]byte, error) {
12123	type NoMethod GoogleCloudDialogflowV2IntentParameter
12124	raw := NoMethod(*s)
12125	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12126}
12127
12128// GoogleCloudDialogflowV2IntentTrainingPhrase: Represents an example
12129// that the agent is trained on.
12130type GoogleCloudDialogflowV2IntentTrainingPhrase struct {
12131	// Name: Output only. The unique identifier of this training phrase.
12132	Name string `json:"name,omitempty"`
12133
12134	// Parts: Required. The ordered list of training phrase parts. The parts
12135	// are concatenated in order to form the training phrase. Note: The API
12136	// does not automatically annotate training phrases like the Dialogflow
12137	// Console does. Note: Do not forget to include whitespace at part
12138	// boundaries, so the training phrase is well formatted when the parts
12139	// are concatenated. If the training phrase does not need to be
12140	// annotated with parameters, you just need a single part with only the
12141	// Part.text field set. If you want to annotate the training phrase, you
12142	// must create multiple parts, where the fields of each part are
12143	// populated in one of two ways: - `Part.text` is set to a part of the
12144	// phrase that has no parameters. - `Part.text` is set to a part of the
12145	// phrase that you want to annotate, and the `entity_type`, `alias`, and
12146	// `user_defined` fields are all set.
12147	Parts []*GoogleCloudDialogflowV2IntentTrainingPhrasePart `json:"parts,omitempty"`
12148
12149	// TimesAddedCount: Optional. Indicates how many times this example was
12150	// added to the intent. Each time a developer adds an existing sample by
12151	// editing an intent or training, this counter is increased.
12152	TimesAddedCount int64 `json:"timesAddedCount,omitempty"`
12153
12154	// Type: Required. The type of the training phrase.
12155	//
12156	// Possible values:
12157	//   "TYPE_UNSPECIFIED" - Not specified. This value should never be
12158	// used.
12159	//   "EXAMPLE" - Examples do not contain @-prefixed entity type names,
12160	// but example parts can be annotated with entity types.
12161	//   "TEMPLATE" - Templates are not annotated with entity types, but
12162	// they can contain @-prefixed entity type names as substrings. Template
12163	// mode has been deprecated. Example mode is the only supported way to
12164	// create new training phrases. If you have existing training phrases
12165	// that you've created in template mode, those will continue to work.
12166	Type string `json:"type,omitempty"`
12167
12168	// ForceSendFields is a list of field names (e.g. "Name") to
12169	// unconditionally include in API requests. By default, fields with
12170	// empty values are omitted from API requests. However, any non-pointer,
12171	// non-interface field appearing in ForceSendFields will be sent to the
12172	// server regardless of whether the field is empty or not. This may be
12173	// used to include empty fields in Patch requests.
12174	ForceSendFields []string `json:"-"`
12175
12176	// NullFields is a list of field names (e.g. "Name") to include in API
12177	// requests with the JSON null value. By default, fields with empty
12178	// values are omitted from API requests. However, any field with an
12179	// empty value appearing in NullFields will be sent to the server as
12180	// null. It is an error if a field in this list has a non-empty value.
12181	// This may be used to include null fields in Patch requests.
12182	NullFields []string `json:"-"`
12183}
12184
12185func (s *GoogleCloudDialogflowV2IntentTrainingPhrase) MarshalJSON() ([]byte, error) {
12186	type NoMethod GoogleCloudDialogflowV2IntentTrainingPhrase
12187	raw := NoMethod(*s)
12188	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12189}
12190
12191// GoogleCloudDialogflowV2IntentTrainingPhrasePart: Represents a part of
12192// a training phrase.
12193type GoogleCloudDialogflowV2IntentTrainingPhrasePart struct {
12194	// Alias: Optional. The parameter name for the value extracted from the
12195	// annotated part of the example. This field is required for annotated
12196	// parts of the training phrase.
12197	Alias string `json:"alias,omitempty"`
12198
12199	// EntityType: Optional. The entity type name prefixed with `@`. This
12200	// field is required for annotated parts of the training phrase.
12201	EntityType string `json:"entityType,omitempty"`
12202
12203	// Text: Required. The text for this part.
12204	Text string `json:"text,omitempty"`
12205
12206	// UserDefined: Optional. Indicates whether the text was manually
12207	// annotated. This field is set to true when the Dialogflow Console is
12208	// used to manually annotate the part. When creating an annotated part
12209	// with the API, you must set this to true.
12210	UserDefined bool `json:"userDefined,omitempty"`
12211
12212	// ForceSendFields is a list of field names (e.g. "Alias") to
12213	// unconditionally include in API requests. By default, fields with
12214	// empty values are omitted from API requests. However, any non-pointer,
12215	// non-interface field appearing in ForceSendFields will be sent to the
12216	// server regardless of whether the field is empty or not. This may be
12217	// used to include empty fields in Patch requests.
12218	ForceSendFields []string `json:"-"`
12219
12220	// NullFields is a list of field names (e.g. "Alias") to include in API
12221	// requests with the JSON null value. By default, fields with empty
12222	// values are omitted from API requests. However, any field with an
12223	// empty value appearing in NullFields will be sent to the server as
12224	// null. It is an error if a field in this list has a non-empty value.
12225	// This may be used to include null fields in Patch requests.
12226	NullFields []string `json:"-"`
12227}
12228
12229func (s *GoogleCloudDialogflowV2IntentTrainingPhrasePart) MarshalJSON() ([]byte, error) {
12230	type NoMethod GoogleCloudDialogflowV2IntentTrainingPhrasePart
12231	raw := NoMethod(*s)
12232	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12233}
12234
12235// GoogleCloudDialogflowV2KnowledgeOperationMetadata: Metadata in
12236// google::longrunning::Operation for Knowledge operations.
12237type GoogleCloudDialogflowV2KnowledgeOperationMetadata struct {
12238	// State: Output only. The current state of this operation.
12239	//
12240	// Possible values:
12241	//   "STATE_UNSPECIFIED" - State unspecified.
12242	//   "PENDING" - The operation has been created.
12243	//   "RUNNING" - The operation is currently running.
12244	//   "DONE" - The operation is done, either cancelled or completed.
12245	State string `json:"state,omitempty"`
12246
12247	// ForceSendFields is a list of field names (e.g. "State") to
12248	// unconditionally include in API requests. By default, fields with
12249	// empty values are omitted from API requests. However, any non-pointer,
12250	// non-interface field appearing in ForceSendFields will be sent to the
12251	// server regardless of whether the field is empty or not. This may be
12252	// used to include empty fields in Patch requests.
12253	ForceSendFields []string `json:"-"`
12254
12255	// NullFields is a list of field names (e.g. "State") to include in API
12256	// requests with the JSON null value. By default, fields with empty
12257	// values are omitted from API requests. However, any field with an
12258	// empty value appearing in NullFields will be sent to the server as
12259	// null. It is an error if a field in this list has a non-empty value.
12260	// This may be used to include null fields in Patch requests.
12261	NullFields []string `json:"-"`
12262}
12263
12264func (s *GoogleCloudDialogflowV2KnowledgeOperationMetadata) MarshalJSON() ([]byte, error) {
12265	type NoMethod GoogleCloudDialogflowV2KnowledgeOperationMetadata
12266	raw := NoMethod(*s)
12267	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12268}
12269
12270// GoogleCloudDialogflowV2Message: Represents a message posted into a
12271// conversation.
12272type GoogleCloudDialogflowV2Message struct {
12273	// Content: Required. The message content.
12274	Content string `json:"content,omitempty"`
12275
12276	// CreateTime: Output only. The time when the message was created.
12277	CreateTime string `json:"createTime,omitempty"`
12278
12279	// LanguageCode: Optional. The message language. This should be a BCP-47
12280	// (https://www.rfc-editor.org/rfc/bcp/bcp47.txt) language tag. Example:
12281	// "en-US".
12282	LanguageCode string `json:"languageCode,omitempty"`
12283
12284	// MessageAnnotation: Output only. The annotation for the message.
12285	MessageAnnotation *GoogleCloudDialogflowV2MessageAnnotation `json:"messageAnnotation,omitempty"`
12286
12287	// Name: The unique identifier of the message. Format:
12288	// `projects//locations//conversations//messages/`.
12289	Name string `json:"name,omitempty"`
12290
12291	// Participant: Output only. The participant that sends this message.
12292	Participant string `json:"participant,omitempty"`
12293
12294	// ParticipantRole: Output only. The role of the participant.
12295	//
12296	// Possible values:
12297	//   "ROLE_UNSPECIFIED" - Participant role not set.
12298	//   "HUMAN_AGENT" - Participant is a human agent.
12299	//   "AUTOMATED_AGENT" - Participant is an automated agent, such as a
12300	// Dialogflow agent.
12301	//   "END_USER" - Participant is an end user that has called or chatted
12302	// with Dialogflow services.
12303	ParticipantRole string `json:"participantRole,omitempty"`
12304
12305	// ForceSendFields is a list of field names (e.g. "Content") to
12306	// unconditionally include in API requests. By default, fields with
12307	// empty values are omitted from API requests. However, any non-pointer,
12308	// non-interface field appearing in ForceSendFields will be sent to the
12309	// server regardless of whether the field is empty or not. This may be
12310	// used to include empty fields in Patch requests.
12311	ForceSendFields []string `json:"-"`
12312
12313	// NullFields is a list of field names (e.g. "Content") to include in
12314	// API requests with the JSON null value. By default, fields with empty
12315	// values are omitted from API requests. However, any field with an
12316	// empty value appearing in NullFields will be sent to the server as
12317	// null. It is an error if a field in this list has a non-empty value.
12318	// This may be used to include null fields in Patch requests.
12319	NullFields []string `json:"-"`
12320}
12321
12322func (s *GoogleCloudDialogflowV2Message) MarshalJSON() ([]byte, error) {
12323	type NoMethod GoogleCloudDialogflowV2Message
12324	raw := NoMethod(*s)
12325	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12326}
12327
12328// GoogleCloudDialogflowV2MessageAnnotation: Represents the result of
12329// annotation for the message.
12330type GoogleCloudDialogflowV2MessageAnnotation struct {
12331	// ContainEntities: Indicates whether the text message contains
12332	// entities.
12333	ContainEntities bool `json:"containEntities,omitempty"`
12334
12335	// Parts: The collection of annotated message parts ordered by their
12336	// position in the message. You can recover the annotated message by
12337	// concatenating [AnnotatedMessagePart.text].
12338	Parts []*GoogleCloudDialogflowV2AnnotatedMessagePart `json:"parts,omitempty"`
12339
12340	// ForceSendFields is a list of field names (e.g. "ContainEntities") to
12341	// unconditionally include in API requests. By default, fields with
12342	// empty values are omitted from API requests. However, any non-pointer,
12343	// non-interface field appearing in ForceSendFields will be sent to the
12344	// server regardless of whether the field is empty or not. This may be
12345	// used to include empty fields in Patch requests.
12346	ForceSendFields []string `json:"-"`
12347
12348	// NullFields is a list of field names (e.g. "ContainEntities") to
12349	// include in API requests with the JSON null value. By default, fields
12350	// with empty values are omitted from API requests. However, any field
12351	// with an empty value appearing in NullFields will be sent to the
12352	// server as null. It is an error if a field in this list has a
12353	// non-empty value. This may be used to include null fields in Patch
12354	// requests.
12355	NullFields []string `json:"-"`
12356}
12357
12358func (s *GoogleCloudDialogflowV2MessageAnnotation) MarshalJSON() ([]byte, error) {
12359	type NoMethod GoogleCloudDialogflowV2MessageAnnotation
12360	raw := NoMethod(*s)
12361	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12362}
12363
12364// GoogleCloudDialogflowV2OriginalDetectIntentRequest: Represents the
12365// contents of the original request that was passed to the
12366// `[Streaming]DetectIntent` call.
12367type GoogleCloudDialogflowV2OriginalDetectIntentRequest struct {
12368	// Payload: Optional. This field is set to the value of the
12369	// `QueryParameters.payload` field passed in the request. Some
12370	// integrations that query a Dialogflow agent may provide additional
12371	// information in the payload. In particular, for the Dialogflow Phone
12372	// Gateway integration, this field has the form: { "telephony": {
12373	// "caller_id": "+18558363987" } } Note: The caller ID field
12374	// (`caller_id`) will be redacted for Trial Edition agents and populated
12375	// with the caller ID in E.164 format
12376	// (https://en.wikipedia.org/wiki/E.164) for Essentials Edition agents.
12377	Payload googleapi.RawMessage `json:"payload,omitempty"`
12378
12379	// Source: The source of this request, e.g., `google`, `facebook`,
12380	// `slack`. It is set by Dialogflow-owned servers.
12381	Source string `json:"source,omitempty"`
12382
12383	// Version: Optional. The version of the protocol used for this request.
12384	// This field is AoG-specific.
12385	Version string `json:"version,omitempty"`
12386
12387	// ForceSendFields is a list of field names (e.g. "Payload") to
12388	// unconditionally include in API requests. By default, fields with
12389	// empty values are omitted from API requests. However, any non-pointer,
12390	// non-interface field appearing in ForceSendFields will be sent to the
12391	// server regardless of whether the field is empty or not. This may be
12392	// used to include empty fields in Patch requests.
12393	ForceSendFields []string `json:"-"`
12394
12395	// NullFields is a list of field names (e.g. "Payload") to include in
12396	// API requests with the JSON null value. By default, fields with empty
12397	// values are omitted from API requests. However, any field with an
12398	// empty value appearing in NullFields will be sent to the server as
12399	// null. It is an error if a field in this list has a non-empty value.
12400	// This may be used to include null fields in Patch requests.
12401	NullFields []string `json:"-"`
12402}
12403
12404func (s *GoogleCloudDialogflowV2OriginalDetectIntentRequest) MarshalJSON() ([]byte, error) {
12405	type NoMethod GoogleCloudDialogflowV2OriginalDetectIntentRequest
12406	raw := NoMethod(*s)
12407	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12408}
12409
12410// GoogleCloudDialogflowV2QueryResult: Represents the result of
12411// conversational query or event processing.
12412type GoogleCloudDialogflowV2QueryResult struct {
12413	// Action: The action name from the matched intent.
12414	Action string `json:"action,omitempty"`
12415
12416	// AllRequiredParamsPresent: This field is set to: - `false` if the
12417	// matched intent has required parameters and not all of the required
12418	// parameter values have been collected. - `true` if all required
12419	// parameter values have been collected, or if the matched intent
12420	// doesn't contain any required parameters.
12421	AllRequiredParamsPresent bool `json:"allRequiredParamsPresent,omitempty"`
12422
12423	// CancelsSlotFilling: Indicates whether the conversational query
12424	// triggers a cancellation for slot filling.
12425	CancelsSlotFilling bool `json:"cancelsSlotFilling,omitempty"`
12426
12427	// DiagnosticInfo: Free-form diagnostic information for the associated
12428	// detect intent request. The fields of this data can change without
12429	// notice, so you should not write code that depends on its structure.
12430	// The data may contain: - webhook call latency - webhook errors
12431	DiagnosticInfo googleapi.RawMessage `json:"diagnosticInfo,omitempty"`
12432
12433	// FulfillmentMessages: The collection of rich messages to present to
12434	// the user.
12435	FulfillmentMessages []*GoogleCloudDialogflowV2IntentMessage `json:"fulfillmentMessages,omitempty"`
12436
12437	// FulfillmentText: The text to be pronounced to the user or shown on
12438	// the screen. Note: This is a legacy field, `fulfillment_messages`
12439	// should be preferred.
12440	FulfillmentText string `json:"fulfillmentText,omitempty"`
12441
12442	// Intent: The intent that matched the conversational query. Some, not
12443	// all fields are filled in this message, including but not limited to:
12444	// `name`, `display_name`, `end_interaction` and `is_fallback`.
12445	Intent *GoogleCloudDialogflowV2Intent `json:"intent,omitempty"`
12446
12447	// IntentDetectionConfidence: The intent detection confidence. Values
12448	// range from 0.0 (completely uncertain) to 1.0 (completely certain).
12449	// This value is for informational purpose only and is only used to help
12450	// match the best intent within the classification threshold. This value
12451	// may change for the same end-user expression at any time due to a
12452	// model retraining or change in implementation. If there are `multiple
12453	// knowledge_answers` messages, this value is set to the greatest
12454	// `knowledgeAnswers.match_confidence` value in the list.
12455	IntentDetectionConfidence float64 `json:"intentDetectionConfidence,omitempty"`
12456
12457	// LanguageCode: The language that was triggered during intent
12458	// detection. See Language Support
12459	// (https://cloud.google.com/dialogflow/docs/reference/language) for a
12460	// list of the currently supported language codes.
12461	LanguageCode string `json:"languageCode,omitempty"`
12462
12463	// OutputContexts: The collection of output contexts. If applicable,
12464	// `output_contexts.parameters` contains entries with name `.original`
12465	// containing the original parameter values before the query.
12466	OutputContexts []*GoogleCloudDialogflowV2Context `json:"outputContexts,omitempty"`
12467
12468	// Parameters: The collection of extracted parameters. Depending on your
12469	// protocol or client library language, this is a map, associative
12470	// array, symbol table, dictionary, or JSON object composed of a
12471	// collection of (MapKey, MapValue) pairs: - MapKey type: string -
12472	// MapKey value: parameter name - MapValue type: - If parameter's entity
12473	// type is a composite entity: map - Else: depending on parameter value
12474	// type, could be one of string, number, boolean, null, list or map -
12475	// MapValue value: - If parameter's entity type is a composite entity:
12476	// map from composite entity property names to property values - Else:
12477	// parameter value
12478	Parameters googleapi.RawMessage `json:"parameters,omitempty"`
12479
12480	// QueryText: The original conversational query text: - If natural
12481	// language text was provided as input, `query_text` contains a copy of
12482	// the input. - If natural language speech audio was provided as input,
12483	// `query_text` contains the speech recognition result. If speech
12484	// recognizer produced multiple alternatives, a particular one is
12485	// picked. - If automatic spell correction is enabled, `query_text` will
12486	// contain the corrected user input.
12487	QueryText string `json:"queryText,omitempty"`
12488
12489	// SentimentAnalysisResult: The sentiment analysis result, which depends
12490	// on the `sentiment_analysis_request_config` specified in the request.
12491	SentimentAnalysisResult *GoogleCloudDialogflowV2SentimentAnalysisResult `json:"sentimentAnalysisResult,omitempty"`
12492
12493	// SpeechRecognitionConfidence: The Speech recognition confidence
12494	// between 0.0 and 1.0. A higher number indicates an estimated greater
12495	// likelihood that the recognized words are correct. The default of 0.0
12496	// is a sentinel value indicating that confidence was not set. This
12497	// field is not guaranteed to be accurate or set. In particular this
12498	// field isn't set for StreamingDetectIntent since the streaming
12499	// endpoint has separate confidence estimates per portion of the audio
12500	// in StreamingRecognitionResult.
12501	SpeechRecognitionConfidence float64 `json:"speechRecognitionConfidence,omitempty"`
12502
12503	// WebhookPayload: If the query was fulfilled by a webhook call, this
12504	// field is set to the value of the `payload` field returned in the
12505	// webhook response.
12506	WebhookPayload googleapi.RawMessage `json:"webhookPayload,omitempty"`
12507
12508	// WebhookSource: If the query was fulfilled by a webhook call, this
12509	// field is set to the value of the `source` field returned in the
12510	// webhook response.
12511	WebhookSource string `json:"webhookSource,omitempty"`
12512
12513	// ForceSendFields is a list of field names (e.g. "Action") to
12514	// unconditionally include in API requests. By default, fields with
12515	// empty values are omitted from API requests. However, any non-pointer,
12516	// non-interface field appearing in ForceSendFields will be sent to the
12517	// server regardless of whether the field is empty or not. This may be
12518	// used to include empty fields in Patch requests.
12519	ForceSendFields []string `json:"-"`
12520
12521	// NullFields is a list of field names (e.g. "Action") to include in API
12522	// requests with the JSON null value. By default, fields with empty
12523	// values are omitted from API requests. However, any field with an
12524	// empty value appearing in NullFields will be sent to the server as
12525	// null. It is an error if a field in this list has a non-empty value.
12526	// This may be used to include null fields in Patch requests.
12527	NullFields []string `json:"-"`
12528}
12529
12530func (s *GoogleCloudDialogflowV2QueryResult) MarshalJSON() ([]byte, error) {
12531	type NoMethod GoogleCloudDialogflowV2QueryResult
12532	raw := NoMethod(*s)
12533	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12534}
12535
12536func (s *GoogleCloudDialogflowV2QueryResult) UnmarshalJSON(data []byte) error {
12537	type NoMethod GoogleCloudDialogflowV2QueryResult
12538	var s1 struct {
12539		IntentDetectionConfidence   gensupport.JSONFloat64 `json:"intentDetectionConfidence"`
12540		SpeechRecognitionConfidence gensupport.JSONFloat64 `json:"speechRecognitionConfidence"`
12541		*NoMethod
12542	}
12543	s1.NoMethod = (*NoMethod)(s)
12544	if err := json.Unmarshal(data, &s1); err != nil {
12545		return err
12546	}
12547	s.IntentDetectionConfidence = float64(s1.IntentDetectionConfidence)
12548	s.SpeechRecognitionConfidence = float64(s1.SpeechRecognitionConfidence)
12549	return nil
12550}
12551
12552// GoogleCloudDialogflowV2Sentiment: The sentiment, such as
12553// positive/negative feeling or association, for a unit of analysis,
12554// such as the query text.
12555type GoogleCloudDialogflowV2Sentiment struct {
12556	// Magnitude: A non-negative number in the [0, +inf) range, which
12557	// represents the absolute magnitude of sentiment, regardless of score
12558	// (positive or negative).
12559	Magnitude float64 `json:"magnitude,omitempty"`
12560
12561	// Score: Sentiment score between -1.0 (negative sentiment) and 1.0
12562	// (positive sentiment).
12563	Score float64 `json:"score,omitempty"`
12564
12565	// ForceSendFields is a list of field names (e.g. "Magnitude") to
12566	// unconditionally include in API requests. By default, fields with
12567	// empty values are omitted from API requests. However, any non-pointer,
12568	// non-interface field appearing in ForceSendFields will be sent to the
12569	// server regardless of whether the field is empty or not. This may be
12570	// used to include empty fields in Patch requests.
12571	ForceSendFields []string `json:"-"`
12572
12573	// NullFields is a list of field names (e.g. "Magnitude") to include in
12574	// API requests with the JSON null value. By default, fields with empty
12575	// values are omitted from API requests. However, any field with an
12576	// empty value appearing in NullFields will be sent to the server as
12577	// null. It is an error if a field in this list has a non-empty value.
12578	// This may be used to include null fields in Patch requests.
12579	NullFields []string `json:"-"`
12580}
12581
12582func (s *GoogleCloudDialogflowV2Sentiment) MarshalJSON() ([]byte, error) {
12583	type NoMethod GoogleCloudDialogflowV2Sentiment
12584	raw := NoMethod(*s)
12585	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12586}
12587
12588func (s *GoogleCloudDialogflowV2Sentiment) UnmarshalJSON(data []byte) error {
12589	type NoMethod GoogleCloudDialogflowV2Sentiment
12590	var s1 struct {
12591		Magnitude gensupport.JSONFloat64 `json:"magnitude"`
12592		Score     gensupport.JSONFloat64 `json:"score"`
12593		*NoMethod
12594	}
12595	s1.NoMethod = (*NoMethod)(s)
12596	if err := json.Unmarshal(data, &s1); err != nil {
12597		return err
12598	}
12599	s.Magnitude = float64(s1.Magnitude)
12600	s.Score = float64(s1.Score)
12601	return nil
12602}
12603
12604// GoogleCloudDialogflowV2SentimentAnalysisResult: The result of
12605// sentiment analysis. Sentiment analysis inspects user input and
12606// identifies the prevailing subjective opinion, especially to determine
12607// a user's attitude as positive, negative, or neutral. For
12608// Participants.DetectIntent, it needs to be configured in
12609// DetectIntentRequest.query_params. For
12610// Participants.StreamingDetectIntent, it needs to be configured in
12611// StreamingDetectIntentRequest.query_params. And for
12612// Participants.AnalyzeContent and Participants.StreamingAnalyzeContent,
12613// it needs to be configured in
12614// ConversationProfile.human_agent_assistant_config
12615type GoogleCloudDialogflowV2SentimentAnalysisResult struct {
12616	// QueryTextSentiment: The sentiment analysis result for `query_text`.
12617	QueryTextSentiment *GoogleCloudDialogflowV2Sentiment `json:"queryTextSentiment,omitempty"`
12618
12619	// ForceSendFields is a list of field names (e.g. "QueryTextSentiment")
12620	// to unconditionally include in API requests. By default, fields with
12621	// empty values are omitted from API requests. However, any non-pointer,
12622	// non-interface field appearing in ForceSendFields will be sent to the
12623	// server regardless of whether the field is empty or not. This may be
12624	// used to include empty fields in Patch requests.
12625	ForceSendFields []string `json:"-"`
12626
12627	// NullFields is a list of field names (e.g. "QueryTextSentiment") to
12628	// include in API requests with the JSON null value. By default, fields
12629	// with empty values are omitted from API requests. However, any field
12630	// with an empty value appearing in NullFields will be sent to the
12631	// server as null. It is an error if a field in this list has a
12632	// non-empty value. This may be used to include null fields in Patch
12633	// requests.
12634	NullFields []string `json:"-"`
12635}
12636
12637func (s *GoogleCloudDialogflowV2SentimentAnalysisResult) MarshalJSON() ([]byte, error) {
12638	type NoMethod GoogleCloudDialogflowV2SentimentAnalysisResult
12639	raw := NoMethod(*s)
12640	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12641}
12642
12643// GoogleCloudDialogflowV2SessionEntityType: A session represents a
12644// conversation between a Dialogflow agent and an end-user. You can
12645// create special entities, called session entities, during a session.
12646// Session entities can extend or replace custom entity types and only
12647// exist during the session that they were created for. All session
12648// data, including session entities, is stored by Dialogflow for 20
12649// minutes. For more information, see the session entity guide
12650// (https://cloud.google.com/dialogflow/docs/entities-session).
12651type GoogleCloudDialogflowV2SessionEntityType struct {
12652	// Entities: Required. The collection of entities associated with this
12653	// session entity type.
12654	Entities []*GoogleCloudDialogflowV2EntityTypeEntity `json:"entities,omitempty"`
12655
12656	// EntityOverrideMode: Required. Indicates whether the additional data
12657	// should override or supplement the custom entity type definition.
12658	//
12659	// Possible values:
12660	//   "ENTITY_OVERRIDE_MODE_UNSPECIFIED" - Not specified. This value
12661	// should be never used.
12662	//   "ENTITY_OVERRIDE_MODE_OVERRIDE" - The collection of session
12663	// entities overrides the collection of entities in the corresponding
12664	// custom entity type.
12665	//   "ENTITY_OVERRIDE_MODE_SUPPLEMENT" - The collection of session
12666	// entities extends the collection of entities in the corresponding
12667	// custom entity type. Note: Even in this override mode calls to
12668	// `ListSessionEntityTypes`, `GetSessionEntityType`,
12669	// `CreateSessionEntityType` and `UpdateSessionEntityType` only return
12670	// the additional entities added in this session entity type. If you
12671	// want to get the supplemented list, please call
12672	// EntityTypes.GetEntityType on the custom entity type and merge.
12673	EntityOverrideMode string `json:"entityOverrideMode,omitempty"`
12674
12675	// Name: Required. The unique identifier of this session entity type.
12676	// Format: `projects//agent/sessions//entityTypes/`, or
12677	// `projects//agent/environments//users//sessions//entityTypes/`. If
12678	// `Environment ID` is not specified, we assume default 'draft'
12679	// environment. If `User ID` is not specified, we assume default '-'
12680	// user. `` must be the display name of an existing entity type in the
12681	// same agent that will be overridden or supplemented.
12682	Name string `json:"name,omitempty"`
12683
12684	// ForceSendFields is a list of field names (e.g. "Entities") to
12685	// unconditionally include in API requests. By default, fields with
12686	// empty values are omitted from API requests. However, any non-pointer,
12687	// non-interface field appearing in ForceSendFields will be sent to the
12688	// server regardless of whether the field is empty or not. This may be
12689	// used to include empty fields in Patch requests.
12690	ForceSendFields []string `json:"-"`
12691
12692	// NullFields is a list of field names (e.g. "Entities") to include in
12693	// API requests with the JSON null value. By default, fields with empty
12694	// values are omitted from API requests. However, any field with an
12695	// empty value appearing in NullFields will be sent to the server as
12696	// null. It is an error if a field in this list has a non-empty value.
12697	// This may be used to include null fields in Patch requests.
12698	NullFields []string `json:"-"`
12699}
12700
12701func (s *GoogleCloudDialogflowV2SessionEntityType) MarshalJSON() ([]byte, error) {
12702	type NoMethod GoogleCloudDialogflowV2SessionEntityType
12703	raw := NoMethod(*s)
12704	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12705}
12706
12707// GoogleCloudDialogflowV2SuggestArticlesResponse: The response message
12708// for Participants.SuggestArticles.
12709type GoogleCloudDialogflowV2SuggestArticlesResponse struct {
12710	// ArticleAnswers: Articles ordered by score in descending order.
12711	ArticleAnswers []*GoogleCloudDialogflowV2ArticleAnswer `json:"articleAnswers,omitempty"`
12712
12713	// ContextSize: Number of messages prior to and including latest_message
12714	// to compile the suggestion. It may be smaller than the
12715	// SuggestArticlesRequest.context_size field in the request if there
12716	// aren't that many messages in the conversation.
12717	ContextSize int64 `json:"contextSize,omitempty"`
12718
12719	// LatestMessage: The name of the latest conversation message used to
12720	// compile suggestion for. Format:
12721	// `projects//locations//conversations//messages/`.
12722	LatestMessage string `json:"latestMessage,omitempty"`
12723
12724	// ForceSendFields is a list of field names (e.g. "ArticleAnswers") to
12725	// unconditionally include in API requests. By default, fields with
12726	// empty values are omitted from API requests. However, any non-pointer,
12727	// non-interface field appearing in ForceSendFields will be sent to the
12728	// server regardless of whether the field is empty or not. This may be
12729	// used to include empty fields in Patch requests.
12730	ForceSendFields []string `json:"-"`
12731
12732	// NullFields is a list of field names (e.g. "ArticleAnswers") to
12733	// include in API requests with the JSON null value. By default, fields
12734	// with empty values are omitted from API requests. However, any field
12735	// with an empty value appearing in NullFields will be sent to the
12736	// server as null. It is an error if a field in this list has a
12737	// non-empty value. This may be used to include null fields in Patch
12738	// requests.
12739	NullFields []string `json:"-"`
12740}
12741
12742func (s *GoogleCloudDialogflowV2SuggestArticlesResponse) MarshalJSON() ([]byte, error) {
12743	type NoMethod GoogleCloudDialogflowV2SuggestArticlesResponse
12744	raw := NoMethod(*s)
12745	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12746}
12747
12748// GoogleCloudDialogflowV2SuggestFaqAnswersResponse: The request message
12749// for Participants.SuggestFaqAnswers.
12750type GoogleCloudDialogflowV2SuggestFaqAnswersResponse struct {
12751	// ContextSize: Number of messages prior to and including latest_message
12752	// to compile the suggestion. It may be smaller than the
12753	// SuggestFaqAnswersRequest.context_size field in the request if there
12754	// aren't that many messages in the conversation.
12755	ContextSize int64 `json:"contextSize,omitempty"`
12756
12757	// FaqAnswers: Answers extracted from FAQ documents.
12758	FaqAnswers []*GoogleCloudDialogflowV2FaqAnswer `json:"faqAnswers,omitempty"`
12759
12760	// LatestMessage: The name of the latest conversation message used to
12761	// compile suggestion for. Format:
12762	// `projects//locations//conversations//messages/`.
12763	LatestMessage string `json:"latestMessage,omitempty"`
12764
12765	// ForceSendFields is a list of field names (e.g. "ContextSize") to
12766	// unconditionally include in API requests. By default, fields with
12767	// empty values are omitted from API requests. However, any non-pointer,
12768	// non-interface field appearing in ForceSendFields will be sent to the
12769	// server regardless of whether the field is empty or not. This may be
12770	// used to include empty fields in Patch requests.
12771	ForceSendFields []string `json:"-"`
12772
12773	// NullFields is a list of field names (e.g. "ContextSize") to include
12774	// in API requests with the JSON null value. By default, fields with
12775	// empty values are omitted from API requests. However, any field with
12776	// an empty value appearing in NullFields will be sent to the server as
12777	// null. It is an error if a field in this list has a non-empty value.
12778	// This may be used to include null fields in Patch requests.
12779	NullFields []string `json:"-"`
12780}
12781
12782func (s *GoogleCloudDialogflowV2SuggestFaqAnswersResponse) MarshalJSON() ([]byte, error) {
12783	type NoMethod GoogleCloudDialogflowV2SuggestFaqAnswersResponse
12784	raw := NoMethod(*s)
12785	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12786}
12787
12788// GoogleCloudDialogflowV2SuggestionResult: One response of different
12789// type of suggestion response which is used in the response of
12790// Participants.AnalyzeContent and Participants.AnalyzeContent, as well
12791// as HumanAgentAssistantEvent.
12792type GoogleCloudDialogflowV2SuggestionResult struct {
12793	// Error: Error status if the request failed.
12794	Error *GoogleRpcStatus `json:"error,omitempty"`
12795
12796	// SuggestArticlesResponse: SuggestArticlesResponse if request is for
12797	// ARTICLE_SUGGESTION.
12798	SuggestArticlesResponse *GoogleCloudDialogflowV2SuggestArticlesResponse `json:"suggestArticlesResponse,omitempty"`
12799
12800	// SuggestFaqAnswersResponse: SuggestFaqAnswersResponse if request is
12801	// for FAQ_ANSWER.
12802	SuggestFaqAnswersResponse *GoogleCloudDialogflowV2SuggestFaqAnswersResponse `json:"suggestFaqAnswersResponse,omitempty"`
12803
12804	// ForceSendFields is a list of field names (e.g. "Error") to
12805	// unconditionally include in API requests. By default, fields with
12806	// empty values are omitted from API requests. However, any non-pointer,
12807	// non-interface field appearing in ForceSendFields will be sent to the
12808	// server regardless of whether the field is empty or not. This may be
12809	// used to include empty fields in Patch requests.
12810	ForceSendFields []string `json:"-"`
12811
12812	// NullFields is a list of field names (e.g. "Error") to include in API
12813	// requests with the JSON null value. By default, fields with empty
12814	// values are omitted from API requests. However, any field with an
12815	// empty value appearing in NullFields will be sent to the server as
12816	// null. It is an error if a field in this list has a non-empty value.
12817	// This may be used to include null fields in Patch requests.
12818	NullFields []string `json:"-"`
12819}
12820
12821func (s *GoogleCloudDialogflowV2SuggestionResult) MarshalJSON() ([]byte, error) {
12822	type NoMethod GoogleCloudDialogflowV2SuggestionResult
12823	raw := NoMethod(*s)
12824	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12825}
12826
12827// GoogleCloudDialogflowV2WebhookRequest: The request message for a
12828// webhook call.
12829type GoogleCloudDialogflowV2WebhookRequest struct {
12830	// OriginalDetectIntentRequest: Optional. The contents of the original
12831	// request that was passed to `[Streaming]DetectIntent` call.
12832	OriginalDetectIntentRequest *GoogleCloudDialogflowV2OriginalDetectIntentRequest `json:"originalDetectIntentRequest,omitempty"`
12833
12834	// QueryResult: The result of the conversational query or event
12835	// processing. Contains the same value as
12836	// `[Streaming]DetectIntentResponse.query_result`.
12837	QueryResult *GoogleCloudDialogflowV2QueryResult `json:"queryResult,omitempty"`
12838
12839	// ResponseId: The unique identifier of the response. Contains the same
12840	// value as `[Streaming]DetectIntentResponse.response_id`.
12841	ResponseId string `json:"responseId,omitempty"`
12842
12843	// Session: The unique identifier of detectIntent request session. Can
12844	// be used to identify end-user inside webhook implementation. Format:
12845	// `projects//agent/sessions/`, or
12846	// `projects//agent/environments//users//sessions/`.
12847	Session string `json:"session,omitempty"`
12848
12849	// ForceSendFields is a list of field names (e.g.
12850	// "OriginalDetectIntentRequest") to unconditionally include in API
12851	// requests. By default, fields with empty values are omitted from API
12852	// requests. However, any non-pointer, non-interface field appearing in
12853	// ForceSendFields will be sent to the server regardless of whether the
12854	// field is empty or not. This may be used to include empty fields in
12855	// Patch requests.
12856	ForceSendFields []string `json:"-"`
12857
12858	// NullFields is a list of field names (e.g.
12859	// "OriginalDetectIntentRequest") to include in API requests with the
12860	// JSON null value. By default, fields with empty values are omitted
12861	// from API requests. However, any field with an empty value appearing
12862	// in NullFields will be sent to the server as null. It is an error if a
12863	// field in this list has a non-empty value. This may be used to include
12864	// null fields in Patch requests.
12865	NullFields []string `json:"-"`
12866}
12867
12868func (s *GoogleCloudDialogflowV2WebhookRequest) MarshalJSON() ([]byte, error) {
12869	type NoMethod GoogleCloudDialogflowV2WebhookRequest
12870	raw := NoMethod(*s)
12871	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12872}
12873
12874// GoogleCloudDialogflowV2WebhookResponse: The response message for a
12875// webhook call. This response is validated by the Dialogflow server. If
12876// validation fails, an error will be returned in the
12877// QueryResult.diagnostic_info field. Setting JSON fields to an empty
12878// value with the wrong type is a common error. To avoid this error: -
12879// Use "" for empty strings - Use `{}` or `null` for empty objects -
12880// Use `[]` or `null` for empty arrays For more information, see the
12881// Protocol Buffers Language Guide
12882// (https://developers.google.com/protocol-buffers/docs/proto3#json).
12883type GoogleCloudDialogflowV2WebhookResponse struct {
12884	// FollowupEventInput: Optional. Invokes the supplied events. When this
12885	// field is set, Dialogflow ignores the `fulfillment_text`,
12886	// `fulfillment_messages`, and `payload` fields.
12887	FollowupEventInput *GoogleCloudDialogflowV2EventInput `json:"followupEventInput,omitempty"`
12888
12889	// FulfillmentMessages: Optional. The rich response messages intended
12890	// for the end-user. When provided, Dialogflow uses this field to
12891	// populate QueryResult.fulfillment_messages sent to the integration or
12892	// API caller.
12893	FulfillmentMessages []*GoogleCloudDialogflowV2IntentMessage `json:"fulfillmentMessages,omitempty"`
12894
12895	// FulfillmentText: Optional. The text response message intended for the
12896	// end-user. It is recommended to use
12897	// `fulfillment_messages.text.text[0]` instead. When provided,
12898	// Dialogflow uses this field to populate QueryResult.fulfillment_text
12899	// sent to the integration or API caller.
12900	FulfillmentText string `json:"fulfillmentText,omitempty"`
12901
12902	// OutputContexts: Optional. The collection of output contexts that will
12903	// overwrite currently active contexts for the session and reset their
12904	// lifespans. When provided, Dialogflow uses this field to populate
12905	// QueryResult.output_contexts sent to the integration or API caller.
12906	OutputContexts []*GoogleCloudDialogflowV2Context `json:"outputContexts,omitempty"`
12907
12908	// Payload: Optional. This field can be used to pass custom data from
12909	// your webhook to the integration or API caller. Arbitrary JSON objects
12910	// are supported. When provided, Dialogflow uses this field to populate
12911	// QueryResult.webhook_payload sent to the integration or API caller.
12912	// This field is also used by the Google Assistant integration
12913	// (https://cloud.google.com/dialogflow/docs/integrations/aog) for rich
12914	// response messages. See the format definition at Google Assistant
12915	// Dialogflow webhook format
12916	// (https://developers.google.com/assistant/actions/build/json/dialogflow-webhook-json)
12917	Payload googleapi.RawMessage `json:"payload,omitempty"`
12918
12919	// SessionEntityTypes: Optional. Additional session entity types to
12920	// replace or extend developer entity types with. The entity synonyms
12921	// apply to all languages and persist for the session. Setting this data
12922	// from a webhook overwrites the session entity types that have been set
12923	// using `detectIntent`, `streamingDetectIntent` or SessionEntityType
12924	// management methods.
12925	SessionEntityTypes []*GoogleCloudDialogflowV2SessionEntityType `json:"sessionEntityTypes,omitempty"`
12926
12927	// Source: Optional. A custom field used to identify the webhook source.
12928	// Arbitrary strings are supported. When provided, Dialogflow uses this
12929	// field to populate QueryResult.webhook_source sent to the integration
12930	// or API caller.
12931	Source string `json:"source,omitempty"`
12932
12933	// ForceSendFields is a list of field names (e.g. "FollowupEventInput")
12934	// to unconditionally include in API requests. By default, fields with
12935	// empty values are omitted from API requests. However, any non-pointer,
12936	// non-interface field appearing in ForceSendFields will be sent to the
12937	// server regardless of whether the field is empty or not. This may be
12938	// used to include empty fields in Patch requests.
12939	ForceSendFields []string `json:"-"`
12940
12941	// NullFields is a list of field names (e.g. "FollowupEventInput") to
12942	// include in API requests with the JSON null value. By default, fields
12943	// with empty values are omitted from API requests. However, any field
12944	// with an empty value appearing in NullFields will be sent to the
12945	// server as null. It is an error if a field in this list has a
12946	// non-empty value. This may be used to include null fields in Patch
12947	// requests.
12948	NullFields []string `json:"-"`
12949}
12950
12951func (s *GoogleCloudDialogflowV2WebhookResponse) MarshalJSON() ([]byte, error) {
12952	type NoMethod GoogleCloudDialogflowV2WebhookResponse
12953	raw := NoMethod(*s)
12954	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12955}
12956
12957// GoogleCloudDialogflowV2beta1AnnotatedMessagePart: Represents a part
12958// of a message possibly annotated with an entity. The part can be an
12959// entity or purely a part of the message between two entities or
12960// message start/end.
12961type GoogleCloudDialogflowV2beta1AnnotatedMessagePart struct {
12962	// EntityType: Optional. The Dialogflow system entity type
12963	// (https://cloud.google.com/dialogflow/docs/reference/system-entities)
12964	// of this message part. If this is empty, Dialogflow could not annotate
12965	// the phrase part with a system entity.
12966	EntityType string `json:"entityType,omitempty"`
12967
12968	// FormattedValue: Optional. The Dialogflow system entity formatted
12969	// value
12970	// (https://cloud.google.com/dialogflow/docs/reference/system-entities)
12971	// of this message part. For example for a system entity of type
12972	// `@sys.unit-currency`, this may contain: { "amount": 5, "currency":
12973	// "USD" }
12974	FormattedValue interface{} `json:"formattedValue,omitempty"`
12975
12976	// Text: Required. A part of a message possibly annotated with an
12977	// entity.
12978	Text string `json:"text,omitempty"`
12979
12980	// ForceSendFields is a list of field names (e.g. "EntityType") to
12981	// unconditionally include in API requests. By default, fields with
12982	// empty values are omitted from API requests. However, any non-pointer,
12983	// non-interface field appearing in ForceSendFields will be sent to the
12984	// server regardless of whether the field is empty or not. This may be
12985	// used to include empty fields in Patch requests.
12986	ForceSendFields []string `json:"-"`
12987
12988	// NullFields is a list of field names (e.g. "EntityType") to include in
12989	// API requests with the JSON null value. By default, fields with empty
12990	// values are omitted from API requests. However, any field with an
12991	// empty value appearing in NullFields will be sent to the server as
12992	// null. It is an error if a field in this list has a non-empty value.
12993	// This may be used to include null fields in Patch requests.
12994	NullFields []string `json:"-"`
12995}
12996
12997func (s *GoogleCloudDialogflowV2beta1AnnotatedMessagePart) MarshalJSON() ([]byte, error) {
12998	type NoMethod GoogleCloudDialogflowV2beta1AnnotatedMessagePart
12999	raw := NoMethod(*s)
13000	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13001}
13002
13003// GoogleCloudDialogflowV2beta1ArticleAnswer: Represents article answer.
13004type GoogleCloudDialogflowV2beta1ArticleAnswer struct {
13005	// AnswerRecord: The name of answer record, in the format of
13006	// "projects//locations//answerRecords/"
13007	AnswerRecord string `json:"answerRecord,omitempty"`
13008
13009	// Metadata: A map that contains metadata about the answer and the
13010	// document from which it originates.
13011	Metadata map[string]string `json:"metadata,omitempty"`
13012
13013	// Snippets: Output only. Article snippets.
13014	Snippets []string `json:"snippets,omitempty"`
13015
13016	// Title: The article title.
13017	Title string `json:"title,omitempty"`
13018
13019	// Uri: The article URI.
13020	Uri string `json:"uri,omitempty"`
13021
13022	// ForceSendFields is a list of field names (e.g. "AnswerRecord") to
13023	// unconditionally include in API requests. By default, fields with
13024	// empty values are omitted from API requests. However, any non-pointer,
13025	// non-interface field appearing in ForceSendFields will be sent to the
13026	// server regardless of whether the field is empty or not. This may be
13027	// used to include empty fields in Patch requests.
13028	ForceSendFields []string `json:"-"`
13029
13030	// NullFields is a list of field names (e.g. "AnswerRecord") to include
13031	// in API requests with the JSON null value. By default, fields with
13032	// empty values are omitted from API requests. However, any field with
13033	// an empty value appearing in NullFields will be sent to the server as
13034	// null. It is an error if a field in this list has a non-empty value.
13035	// This may be used to include null fields in Patch requests.
13036	NullFields []string `json:"-"`
13037}
13038
13039func (s *GoogleCloudDialogflowV2beta1ArticleAnswer) MarshalJSON() ([]byte, error) {
13040	type NoMethod GoogleCloudDialogflowV2beta1ArticleAnswer
13041	raw := NoMethod(*s)
13042	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13043}
13044
13045// GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse: The
13046// response message for EntityTypes.BatchUpdateEntityTypes.
13047type GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse struct {
13048	// EntityTypes: The collection of updated or created entity types.
13049	EntityTypes []*GoogleCloudDialogflowV2beta1EntityType `json:"entityTypes,omitempty"`
13050
13051	// ForceSendFields is a list of field names (e.g. "EntityTypes") to
13052	// unconditionally include in API requests. By default, fields with
13053	// empty values are omitted from API requests. However, any non-pointer,
13054	// non-interface field appearing in ForceSendFields will be sent to the
13055	// server regardless of whether the field is empty or not. This may be
13056	// used to include empty fields in Patch requests.
13057	ForceSendFields []string `json:"-"`
13058
13059	// NullFields is a list of field names (e.g. "EntityTypes") to include
13060	// in API requests with the JSON null value. By default, fields with
13061	// empty values are omitted from API requests. However, any field with
13062	// an empty value appearing in NullFields will be sent to the server as
13063	// null. It is an error if a field in this list has a non-empty value.
13064	// This may be used to include null fields in Patch requests.
13065	NullFields []string `json:"-"`
13066}
13067
13068func (s *GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse) MarshalJSON() ([]byte, error) {
13069	type NoMethod GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse
13070	raw := NoMethod(*s)
13071	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13072}
13073
13074// GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse: The response
13075// message for Intents.BatchUpdateIntents.
13076type GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse struct {
13077	// Intents: The collection of updated or created intents.
13078	Intents []*GoogleCloudDialogflowV2beta1Intent `json:"intents,omitempty"`
13079
13080	// ForceSendFields is a list of field names (e.g. "Intents") to
13081	// unconditionally include in API requests. By default, fields with
13082	// empty values are omitted from API requests. However, any non-pointer,
13083	// non-interface field appearing in ForceSendFields will be sent to the
13084	// server regardless of whether the field is empty or not. This may be
13085	// used to include empty fields in Patch requests.
13086	ForceSendFields []string `json:"-"`
13087
13088	// NullFields is a list of field names (e.g. "Intents") to include in
13089	// API requests with the JSON null value. By default, fields with empty
13090	// values are omitted from API requests. However, any field with an
13091	// empty value appearing in NullFields will be sent to the server as
13092	// null. It is an error if a field in this list has a non-empty value.
13093	// This may be used to include null fields in Patch requests.
13094	NullFields []string `json:"-"`
13095}
13096
13097func (s *GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse) MarshalJSON() ([]byte, error) {
13098	type NoMethod GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse
13099	raw := NoMethod(*s)
13100	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13101}
13102
13103// GoogleCloudDialogflowV2beta1Context: Dialogflow contexts are similar
13104// to natural language context. If a person says to you "they are
13105// orange", you need context in order to understand what "they" is
13106// referring to. Similarly, for Dialogflow to handle an end-user
13107// expression like that, it needs to be provided with context in order
13108// to correctly match an intent. Using contexts, you can control the
13109// flow of a conversation. You can configure contexts for an intent by
13110// setting input and output contexts, which are identified by string
13111// names. When an intent is matched, any configured output contexts for
13112// that intent become active. While any contexts are active, Dialogflow
13113// is more likely to match intents that are configured with input
13114// contexts that correspond to the currently active contexts. For more
13115// information about context, see the Contexts guide
13116// (https://cloud.google.com/dialogflow/docs/contexts-overview).
13117type GoogleCloudDialogflowV2beta1Context struct {
13118	// LifespanCount: Optional. The number of conversational query requests
13119	// after which the context expires. The default is `0`. If set to `0`,
13120	// the context expires immediately. Contexts expire automatically after
13121	// 20 minutes if there are no matching queries.
13122	LifespanCount int64 `json:"lifespanCount,omitempty"`
13123
13124	// Name: Required. The unique identifier of the context. Supported
13125	// formats: - `projects//agent/sessions//contexts/`, -
13126	// `projects//locations//agent/sessions//contexts/`, -
13127	// `projects//agent/environments//users//sessions//contexts/`, -
13128	// `projects//locations//agent/environments//users//sessions//contexts/`,
13129	//  The `Context ID` is always converted to lowercase, may only contain
13130	// characters in a-zA-Z0-9_-% and may be at most 250 bytes long. If
13131	// `Environment ID` is not specified, we assume default 'draft'
13132	// environment. If `User ID` is not specified, we assume default '-'
13133	// user. The following context names are reserved for internal use by
13134	// Dialogflow. You should not use these contexts or create contexts with
13135	// these names: * `__system_counters__` * `*_id_dialog_context` *
13136	// `*_dialog_params_size`
13137	Name string `json:"name,omitempty"`
13138
13139	// Parameters: Optional. The collection of parameters associated with
13140	// this context. Depending on your protocol or client library language,
13141	// this is a map, associative array, symbol table, dictionary, or JSON
13142	// object composed of a collection of (MapKey, MapValue) pairs: - MapKey
13143	// type: string - MapKey value: parameter name - MapValue type: - If
13144	// parameter's entity type is a composite entity: map - Else: depending
13145	// on parameter value type, could be one of string, number, boolean,
13146	// null, list or map - MapValue value: - If parameter's entity type is a
13147	// composite entity: map from composite entity property names to
13148	// property values - Else: parameter value
13149	Parameters googleapi.RawMessage `json:"parameters,omitempty"`
13150
13151	// ForceSendFields is a list of field names (e.g. "LifespanCount") to
13152	// unconditionally include in API requests. By default, fields with
13153	// empty values are omitted from API requests. However, any non-pointer,
13154	// non-interface field appearing in ForceSendFields will be sent to the
13155	// server regardless of whether the field is empty or not. This may be
13156	// used to include empty fields in Patch requests.
13157	ForceSendFields []string `json:"-"`
13158
13159	// NullFields is a list of field names (e.g. "LifespanCount") to include
13160	// in API requests with the JSON null value. By default, fields with
13161	// empty values are omitted from API requests. However, any field with
13162	// an empty value appearing in NullFields will be sent to the server as
13163	// null. It is an error if a field in this list has a non-empty value.
13164	// This may be used to include null fields in Patch requests.
13165	NullFields []string `json:"-"`
13166}
13167
13168func (s *GoogleCloudDialogflowV2beta1Context) MarshalJSON() ([]byte, error) {
13169	type NoMethod GoogleCloudDialogflowV2beta1Context
13170	raw := NoMethod(*s)
13171	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13172}
13173
13174// GoogleCloudDialogflowV2beta1ConversationEvent: Represents a
13175// notification sent to Pub/Sub subscribers for conversation lifecycle
13176// events.
13177type GoogleCloudDialogflowV2beta1ConversationEvent struct {
13178	// Conversation: Required. The unique identifier of the conversation
13179	// this notification refers to. Format: `projects//conversations/`.
13180	Conversation string `json:"conversation,omitempty"`
13181
13182	// ErrorStatus: Optional. More detailed information about an error. Only
13183	// set for type UNRECOVERABLE_ERROR_IN_PHONE_CALL.
13184	ErrorStatus *GoogleRpcStatus `json:"errorStatus,omitempty"`
13185
13186	// NewMessagePayload: Payload of NEW_MESSAGE event.
13187	NewMessagePayload *GoogleCloudDialogflowV2beta1Message `json:"newMessagePayload,omitempty"`
13188
13189	// Type: Required. The type of the event that this notification refers
13190	// to.
13191	//
13192	// Possible values:
13193	//   "TYPE_UNSPECIFIED" - Type not set.
13194	//   "CONVERSATION_STARTED" - A new conversation has been opened. This
13195	// is fired when a telephone call is answered, or a conversation is
13196	// created via the API.
13197	//   "CONVERSATION_FINISHED" - An existing conversation has closed. This
13198	// is fired when a telephone call is terminated, or a conversation is
13199	// closed via the API.
13200	//   "NEW_MESSAGE" - An existing conversation has received a new
13201	// message, either from API or telephony. It is configured in
13202	// ConversationProfile.new_message_event_notification_config
13203	//   "UNRECOVERABLE_ERROR" - Unrecoverable error during a telephone
13204	// call. In general non-recoverable errors only occur if something was
13205	// misconfigured in the ConversationProfile corresponding to the call.
13206	// After a non-recoverable error, Dialogflow may stop responding. We
13207	// don't fire this event: * in an API call because we can directly
13208	// return the error, or, * when we can recover from an error.
13209	Type string `json:"type,omitempty"`
13210
13211	// ForceSendFields is a list of field names (e.g. "Conversation") to
13212	// unconditionally include in API requests. By default, fields with
13213	// empty values are omitted from API requests. However, any non-pointer,
13214	// non-interface field appearing in ForceSendFields will be sent to the
13215	// server regardless of whether the field is empty or not. This may be
13216	// used to include empty fields in Patch requests.
13217	ForceSendFields []string `json:"-"`
13218
13219	// NullFields is a list of field names (e.g. "Conversation") to include
13220	// in API requests with the JSON null value. By default, fields with
13221	// empty values are omitted from API requests. However, any field with
13222	// an empty value appearing in NullFields will be sent to the server as
13223	// null. It is an error if a field in this list has a non-empty value.
13224	// This may be used to include null fields in Patch requests.
13225	NullFields []string `json:"-"`
13226}
13227
13228func (s *GoogleCloudDialogflowV2beta1ConversationEvent) MarshalJSON() ([]byte, error) {
13229	type NoMethod GoogleCloudDialogflowV2beta1ConversationEvent
13230	raw := NoMethod(*s)
13231	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13232}
13233
13234// GoogleCloudDialogflowV2beta1EntityType: Each intent parameter has a
13235// type, called the entity type, which dictates exactly how data from an
13236// end-user expression is extracted. Dialogflow provides predefined
13237// system entities that can match many common types of data. For
13238// example, there are system entities for matching dates, times, colors,
13239// email addresses, and so on. You can also create your own custom
13240// entities for matching custom data. For example, you could define a
13241// vegetable entity that can match the types of vegetables available for
13242// purchase with a grocery store agent. For more information, see the
13243// Entity guide
13244// (https://cloud.google.com/dialogflow/docs/entities-overview).
13245type GoogleCloudDialogflowV2beta1EntityType struct {
13246	// AutoExpansionMode: Optional. Indicates whether the entity type can be
13247	// automatically expanded.
13248	//
13249	// Possible values:
13250	//   "AUTO_EXPANSION_MODE_UNSPECIFIED" - Auto expansion disabled for the
13251	// entity.
13252	//   "AUTO_EXPANSION_MODE_DEFAULT" - Allows an agent to recognize values
13253	// that have not been explicitly listed in the entity.
13254	AutoExpansionMode string `json:"autoExpansionMode,omitempty"`
13255
13256	// DisplayName: Required. The name of the entity type.
13257	DisplayName string `json:"displayName,omitempty"`
13258
13259	// EnableFuzzyExtraction: Optional. Enables fuzzy entity extraction
13260	// during classification.
13261	EnableFuzzyExtraction bool `json:"enableFuzzyExtraction,omitempty"`
13262
13263	// Entities: Optional. The collection of entity entries associated with
13264	// the entity type.
13265	Entities []*GoogleCloudDialogflowV2beta1EntityTypeEntity `json:"entities,omitempty"`
13266
13267	// Kind: Required. Indicates the kind of entity type.
13268	//
13269	// Possible values:
13270	//   "KIND_UNSPECIFIED" - Not specified. This value should be never
13271	// used.
13272	//   "KIND_MAP" - Map entity types allow mapping of a group of synonyms
13273	// to a reference value.
13274	//   "KIND_LIST" - List entity types contain a set of entries that do
13275	// not map to reference values. However, list entity types can contain
13276	// references to other entity types (with or without aliases).
13277	//   "KIND_REGEXP" - Regexp entity types allow to specify regular
13278	// expressions in entries values.
13279	Kind string `json:"kind,omitempty"`
13280
13281	// Name: The unique identifier of the entity type. Required for
13282	// EntityTypes.UpdateEntityType and EntityTypes.BatchUpdateEntityTypes
13283	// methods. Supported formats: - `projects//agent/entityTypes/` -
13284	// `projects//locations//agent/entityTypes/`
13285	Name string `json:"name,omitempty"`
13286
13287	// ForceSendFields is a list of field names (e.g. "AutoExpansionMode")
13288	// to unconditionally include in API requests. By default, fields with
13289	// empty values are omitted from API requests. However, any non-pointer,
13290	// non-interface field appearing in ForceSendFields will be sent to the
13291	// server regardless of whether the field is empty or not. This may be
13292	// used to include empty fields in Patch requests.
13293	ForceSendFields []string `json:"-"`
13294
13295	// NullFields is a list of field names (e.g. "AutoExpansionMode") to
13296	// include in API requests with the JSON null value. By default, fields
13297	// with empty values are omitted from API requests. However, any field
13298	// with an empty value appearing in NullFields will be sent to the
13299	// server as null. It is an error if a field in this list has a
13300	// non-empty value. This may be used to include null fields in Patch
13301	// requests.
13302	NullFields []string `json:"-"`
13303}
13304
13305func (s *GoogleCloudDialogflowV2beta1EntityType) MarshalJSON() ([]byte, error) {
13306	type NoMethod GoogleCloudDialogflowV2beta1EntityType
13307	raw := NoMethod(*s)
13308	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13309}
13310
13311// GoogleCloudDialogflowV2beta1EntityTypeEntity: An **entity entry** for
13312// an associated entity type.
13313type GoogleCloudDialogflowV2beta1EntityTypeEntity struct {
13314	// Synonyms: Required. A collection of value synonyms. For example, if
13315	// the entity type is *vegetable*, and `value` is *scallions*, a synonym
13316	// could be *green onions*. For `KIND_LIST` entity types: * This
13317	// collection must contain exactly one synonym equal to `value`.
13318	Synonyms []string `json:"synonyms,omitempty"`
13319
13320	// Value: Required. The primary value associated with this entity entry.
13321	// For example, if the entity type is *vegetable*, the value could be
13322	// *scallions*. For `KIND_MAP` entity types: * A reference value to be
13323	// used in place of synonyms. For `KIND_LIST` entity types: * A string
13324	// that can contain references to other entity types (with or without
13325	// aliases).
13326	Value string `json:"value,omitempty"`
13327
13328	// ForceSendFields is a list of field names (e.g. "Synonyms") to
13329	// unconditionally include in API requests. By default, fields with
13330	// empty values are omitted from API requests. However, any non-pointer,
13331	// non-interface field appearing in ForceSendFields will be sent to the
13332	// server regardless of whether the field is empty or not. This may be
13333	// used to include empty fields in Patch requests.
13334	ForceSendFields []string `json:"-"`
13335
13336	// NullFields is a list of field names (e.g. "Synonyms") to include in
13337	// API requests with the JSON null value. By default, fields with empty
13338	// values are omitted from API requests. However, any field with an
13339	// empty value appearing in NullFields will be sent to the server as
13340	// null. It is an error if a field in this list has a non-empty value.
13341	// This may be used to include null fields in Patch requests.
13342	NullFields []string `json:"-"`
13343}
13344
13345func (s *GoogleCloudDialogflowV2beta1EntityTypeEntity) MarshalJSON() ([]byte, error) {
13346	type NoMethod GoogleCloudDialogflowV2beta1EntityTypeEntity
13347	raw := NoMethod(*s)
13348	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13349}
13350
13351// GoogleCloudDialogflowV2beta1EventInput: Events allow for matching
13352// intents by event name instead of the natural language input. For
13353// instance, input `` can trigger a personalized welcome response. The
13354// parameter `name` may be used by the agent in the response: "Hello
13355// #welcome_event.name! What can I do for you today?".
13356type GoogleCloudDialogflowV2beta1EventInput struct {
13357	// LanguageCode: Required. The language of this query. See Language
13358	// Support (https://cloud.google.com/dialogflow/docs/reference/language)
13359	// for a list of the currently supported language codes. Note that
13360	// queries in the same session do not necessarily need to specify the
13361	// same language.
13362	LanguageCode string `json:"languageCode,omitempty"`
13363
13364	// Name: Required. The unique identifier of the event.
13365	Name string `json:"name,omitempty"`
13366
13367	// Parameters: The collection of parameters associated with the event.
13368	// Depending on your protocol or client library language, this is a map,
13369	// associative array, symbol table, dictionary, or JSON object composed
13370	// of a collection of (MapKey, MapValue) pairs: - MapKey type: string -
13371	// MapKey value: parameter name - MapValue type: - If parameter's entity
13372	// type is a composite entity: map - Else: depending on parameter value
13373	// type, could be one of string, number, boolean, null, list or map -
13374	// MapValue value: - If parameter's entity type is a composite entity:
13375	// map from composite entity property names to property values - Else:
13376	// parameter value
13377	Parameters googleapi.RawMessage `json:"parameters,omitempty"`
13378
13379	// ForceSendFields is a list of field names (e.g. "LanguageCode") to
13380	// unconditionally include in API requests. By default, fields with
13381	// empty values are omitted from API requests. However, any non-pointer,
13382	// non-interface field appearing in ForceSendFields will be sent to the
13383	// server regardless of whether the field is empty or not. This may be
13384	// used to include empty fields in Patch requests.
13385	ForceSendFields []string `json:"-"`
13386
13387	// NullFields is a list of field names (e.g. "LanguageCode") to include
13388	// in API requests with the JSON null value. By default, fields with
13389	// empty values are omitted from API requests. However, any field with
13390	// an empty value appearing in NullFields will be sent to the server as
13391	// null. It is an error if a field in this list has a non-empty value.
13392	// This may be used to include null fields in Patch requests.
13393	NullFields []string `json:"-"`
13394}
13395
13396func (s *GoogleCloudDialogflowV2beta1EventInput) MarshalJSON() ([]byte, error) {
13397	type NoMethod GoogleCloudDialogflowV2beta1EventInput
13398	raw := NoMethod(*s)
13399	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13400}
13401
13402// GoogleCloudDialogflowV2beta1ExportAgentResponse: The response message
13403// for Agents.ExportAgent.
13404type GoogleCloudDialogflowV2beta1ExportAgentResponse struct {
13405	// AgentContent: Zip compressed raw byte content for agent.
13406	AgentContent string `json:"agentContent,omitempty"`
13407
13408	// AgentUri: The URI to a file containing the exported agent. This field
13409	// is populated only if `agent_uri` is specified in
13410	// `ExportAgentRequest`.
13411	AgentUri string `json:"agentUri,omitempty"`
13412
13413	// ForceSendFields is a list of field names (e.g. "AgentContent") to
13414	// unconditionally include in API requests. By default, fields with
13415	// empty values are omitted from API requests. However, any non-pointer,
13416	// non-interface field appearing in ForceSendFields will be sent to the
13417	// server regardless of whether the field is empty or not. This may be
13418	// used to include empty fields in Patch requests.
13419	ForceSendFields []string `json:"-"`
13420
13421	// NullFields is a list of field names (e.g. "AgentContent") to include
13422	// in API requests with the JSON null value. By default, fields with
13423	// empty values are omitted from API requests. However, any field with
13424	// an empty value appearing in NullFields will be sent to the server as
13425	// null. It is an error if a field in this list has a non-empty value.
13426	// This may be used to include null fields in Patch requests.
13427	NullFields []string `json:"-"`
13428}
13429
13430func (s *GoogleCloudDialogflowV2beta1ExportAgentResponse) MarshalJSON() ([]byte, error) {
13431	type NoMethod GoogleCloudDialogflowV2beta1ExportAgentResponse
13432	raw := NoMethod(*s)
13433	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13434}
13435
13436// GoogleCloudDialogflowV2beta1FaqAnswer: Represents answer from
13437// "frequently asked questions".
13438type GoogleCloudDialogflowV2beta1FaqAnswer struct {
13439	// Answer: The piece of text from the `source` knowledge base document.
13440	Answer string `json:"answer,omitempty"`
13441
13442	// AnswerRecord: The name of answer record, in the format of
13443	// "projects//locations//answerRecords/"
13444	AnswerRecord string `json:"answerRecord,omitempty"`
13445
13446	// Confidence: The system's confidence score that this Knowledge answer
13447	// is a good match for this conversational query, range from 0.0
13448	// (completely uncertain) to 1.0 (completely certain).
13449	Confidence float64 `json:"confidence,omitempty"`
13450
13451	// Metadata: A map that contains metadata about the answer and the
13452	// document from which it originates.
13453	Metadata map[string]string `json:"metadata,omitempty"`
13454
13455	// Question: The corresponding FAQ question.
13456	Question string `json:"question,omitempty"`
13457
13458	// Source: Indicates which Knowledge Document this answer was extracted
13459	// from. Format:
13460	// `projects//locations//agent/knowledgeBases//documents/`.
13461	Source string `json:"source,omitempty"`
13462
13463	// ForceSendFields is a list of field names (e.g. "Answer") to
13464	// unconditionally include in API requests. By default, fields with
13465	// empty values are omitted from API requests. However, any non-pointer,
13466	// non-interface field appearing in ForceSendFields will be sent to the
13467	// server regardless of whether the field is empty or not. This may be
13468	// used to include empty fields in Patch requests.
13469	ForceSendFields []string `json:"-"`
13470
13471	// NullFields is a list of field names (e.g. "Answer") to include in API
13472	// requests with the JSON null value. By default, fields with empty
13473	// values are omitted from API requests. However, any field with an
13474	// empty value appearing in NullFields will be sent to the server as
13475	// null. It is an error if a field in this list has a non-empty value.
13476	// This may be used to include null fields in Patch requests.
13477	NullFields []string `json:"-"`
13478}
13479
13480func (s *GoogleCloudDialogflowV2beta1FaqAnswer) MarshalJSON() ([]byte, error) {
13481	type NoMethod GoogleCloudDialogflowV2beta1FaqAnswer
13482	raw := NoMethod(*s)
13483	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13484}
13485
13486func (s *GoogleCloudDialogflowV2beta1FaqAnswer) UnmarshalJSON(data []byte) error {
13487	type NoMethod GoogleCloudDialogflowV2beta1FaqAnswer
13488	var s1 struct {
13489		Confidence gensupport.JSONFloat64 `json:"confidence"`
13490		*NoMethod
13491	}
13492	s1.NoMethod = (*NoMethod)(s)
13493	if err := json.Unmarshal(data, &s1); err != nil {
13494		return err
13495	}
13496	s.Confidence = float64(s1.Confidence)
13497	return nil
13498}
13499
13500// GoogleCloudDialogflowV2beta1HumanAgentAssistantEvent: Output only.
13501// Represents a notification sent to Pub/Sub subscribers for agent
13502// assistant events in a specific conversation.
13503type GoogleCloudDialogflowV2beta1HumanAgentAssistantEvent struct {
13504	// Conversation: The conversation this notification refers to. Format:
13505	// `projects//conversations/`.
13506	Conversation string `json:"conversation,omitempty"`
13507
13508	// Participant: The participant that the suggestion is compiled for. And
13509	// This field is used to call Participants.ListSuggestions API. Format:
13510	// `projects//conversations//participants/`. It will not be set in
13511	// legacy workflow. HumanAgentAssistantConfig.name for more information.
13512	Participant string `json:"participant,omitempty"`
13513
13514	// SuggestionResults: The suggestion results payload that this
13515	// notification refers to. It will only be set when
13516	// HumanAgentAssistantConfig.SuggestionConfig.group_suggestion_responses
13517	// sets to true.
13518	SuggestionResults []*GoogleCloudDialogflowV2beta1SuggestionResult `json:"suggestionResults,omitempty"`
13519
13520	// ForceSendFields is a list of field names (e.g. "Conversation") to
13521	// unconditionally include in API requests. By default, fields with
13522	// empty values are omitted from API requests. However, any non-pointer,
13523	// non-interface field appearing in ForceSendFields will be sent to the
13524	// server regardless of whether the field is empty or not. This may be
13525	// used to include empty fields in Patch requests.
13526	ForceSendFields []string `json:"-"`
13527
13528	// NullFields is a list of field names (e.g. "Conversation") to include
13529	// in API requests with the JSON null value. By default, fields with
13530	// empty values are omitted from API requests. However, any field with
13531	// an empty value appearing in NullFields will be sent to the server as
13532	// null. It is an error if a field in this list has a non-empty value.
13533	// This may be used to include null fields in Patch requests.
13534	NullFields []string `json:"-"`
13535}
13536
13537func (s *GoogleCloudDialogflowV2beta1HumanAgentAssistantEvent) MarshalJSON() ([]byte, error) {
13538	type NoMethod GoogleCloudDialogflowV2beta1HumanAgentAssistantEvent
13539	raw := NoMethod(*s)
13540	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13541}
13542
13543// GoogleCloudDialogflowV2beta1ImportDocumentsResponse: Response message
13544// for Documents.ImportDocuments.
13545type GoogleCloudDialogflowV2beta1ImportDocumentsResponse struct {
13546	// Warnings: Includes details about skipped documents or any other
13547	// warnings.
13548	Warnings []*GoogleRpcStatus `json:"warnings,omitempty"`
13549
13550	// ForceSendFields is a list of field names (e.g. "Warnings") to
13551	// unconditionally include in API requests. By default, fields with
13552	// empty values are omitted from API requests. However, any non-pointer,
13553	// non-interface field appearing in ForceSendFields will be sent to the
13554	// server regardless of whether the field is empty or not. This may be
13555	// used to include empty fields in Patch requests.
13556	ForceSendFields []string `json:"-"`
13557
13558	// NullFields is a list of field names (e.g. "Warnings") to include in
13559	// API requests with the JSON null value. By default, fields with empty
13560	// values are omitted from API requests. However, any field with an
13561	// empty value appearing in NullFields will be sent to the server as
13562	// null. It is an error if a field in this list has a non-empty value.
13563	// This may be used to include null fields in Patch requests.
13564	NullFields []string `json:"-"`
13565}
13566
13567func (s *GoogleCloudDialogflowV2beta1ImportDocumentsResponse) MarshalJSON() ([]byte, error) {
13568	type NoMethod GoogleCloudDialogflowV2beta1ImportDocumentsResponse
13569	raw := NoMethod(*s)
13570	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13571}
13572
13573// GoogleCloudDialogflowV2beta1Intent: An intent categorizes an
13574// end-user's intention for one conversation turn. For each agent, you
13575// define many intents, where your combined intents can handle a
13576// complete conversation. When an end-user writes or says something,
13577// referred to as an end-user expression or end-user input, Dialogflow
13578// matches the end-user input to the best intent in your agent. Matching
13579// an intent is also known as intent classification. For more
13580// information, see the intent guide
13581// (https://cloud.google.com/dialogflow/docs/intents-overview).
13582type GoogleCloudDialogflowV2beta1Intent struct {
13583	// Action: Optional. The name of the action associated with the intent.
13584	// Note: The action name must not contain whitespaces.
13585	Action string `json:"action,omitempty"`
13586
13587	// DefaultResponsePlatforms: Optional. The list of platforms for which
13588	// the first responses will be copied from the messages in
13589	// PLATFORM_UNSPECIFIED (i.e. default platform).
13590	//
13591	// Possible values:
13592	//   "PLATFORM_UNSPECIFIED" - Not specified.
13593	//   "FACEBOOK" - Facebook.
13594	//   "SLACK" - Slack.
13595	//   "TELEGRAM" - Telegram.
13596	//   "KIK" - Kik.
13597	//   "SKYPE" - Skype.
13598	//   "LINE" - Line.
13599	//   "VIBER" - Viber.
13600	//   "ACTIONS_ON_GOOGLE" - Google Assistant See [Dialogflow webhook
13601	// format](https://developers.google.com/assistant/actions/build/json/dia
13602	// logflow-webhook-json)
13603	//   "TELEPHONY" - Telephony Gateway.
13604	//   "GOOGLE_HANGOUTS" - Google Hangouts.
13605	DefaultResponsePlatforms []string `json:"defaultResponsePlatforms,omitempty"`
13606
13607	// DisplayName: Required. The name of this intent.
13608	DisplayName string `json:"displayName,omitempty"`
13609
13610	// EndInteraction: Optional. Indicates that this intent ends an
13611	// interaction. Some integrations (e.g., Actions on Google or Dialogflow
13612	// phone gateway) use this information to close interaction with an end
13613	// user. Default is false.
13614	EndInteraction bool `json:"endInteraction,omitempty"`
13615
13616	// Events: Optional. The collection of event names that trigger the
13617	// intent. If the collection of input contexts is not empty, all of the
13618	// contexts must be present in the active user session for an event to
13619	// trigger this intent. Event names are limited to 150 characters.
13620	Events []string `json:"events,omitempty"`
13621
13622	// FollowupIntentInfo: Output only. Information about all followup
13623	// intents that have this intent as a direct or indirect parent. We
13624	// populate this field only in the output.
13625	FollowupIntentInfo []*GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo `json:"followupIntentInfo,omitempty"`
13626
13627	// InputContextNames: Optional. The list of context names required for
13628	// this intent to be triggered. Formats: -
13629	// `projects//agent/sessions/-/contexts/` -
13630	// `projects//locations//agent/sessions/-/contexts/`
13631	InputContextNames []string `json:"inputContextNames,omitempty"`
13632
13633	// IsFallback: Optional. Indicates whether this is a fallback intent.
13634	IsFallback bool `json:"isFallback,omitempty"`
13635
13636	// LiveAgentHandoff: Optional. Indicates that a live agent should be
13637	// brought in to handle the interaction with the user. In most cases,
13638	// when you set this flag to true, you would also want to set
13639	// end_interaction to true as well. Default is false.
13640	LiveAgentHandoff bool `json:"liveAgentHandoff,omitempty"`
13641
13642	// Messages: Optional. The collection of rich messages corresponding to
13643	// the `Response` field in the Dialogflow console.
13644	Messages []*GoogleCloudDialogflowV2beta1IntentMessage `json:"messages,omitempty"`
13645
13646	// MlDisabled: Optional. Indicates whether Machine Learning is disabled
13647	// for the intent. Note: If `ml_disabled` setting is set to true, then
13648	// this intent is not taken into account during inference in `ML ONLY`
13649	// match mode. Also, auto-markup in the UI is turned off.
13650	MlDisabled bool `json:"mlDisabled,omitempty"`
13651
13652	// MlEnabled: Optional. Indicates whether Machine Learning is enabled
13653	// for the intent. Note: If `ml_enabled` setting is set to false, then
13654	// this intent is not taken into account during inference in `ML ONLY`
13655	// match mode. Also, auto-markup in the UI is turned off. DEPRECATED!
13656	// Please use `ml_disabled` field instead. NOTE: If both `ml_enabled`
13657	// and `ml_disabled` are either not set or false, then the default value
13658	// is determined as follows: - Before April 15th, 2018 the default is:
13659	// ml_enabled = false / ml_disabled = true. - After April 15th, 2018 the
13660	// default is: ml_enabled = true / ml_disabled = false.
13661	MlEnabled bool `json:"mlEnabled,omitempty"`
13662
13663	// Name: Optional. The unique identifier of this intent. Required for
13664	// Intents.UpdateIntent and Intents.BatchUpdateIntents methods.
13665	// Supported formats: - `projects//agent/intents/` -
13666	// `projects//locations//agent/intents/`
13667	Name string `json:"name,omitempty"`
13668
13669	// OutputContexts: Optional. The collection of contexts that are
13670	// activated when the intent is matched. Context messages in this
13671	// collection should not set the parameters field. Setting the
13672	// `lifespan_count` to 0 will reset the context when the intent is
13673	// matched. Format: `projects//agent/sessions/-/contexts/`.
13674	OutputContexts []*GoogleCloudDialogflowV2beta1Context `json:"outputContexts,omitempty"`
13675
13676	// Parameters: Optional. The collection of parameters associated with
13677	// the intent.
13678	Parameters []*GoogleCloudDialogflowV2beta1IntentParameter `json:"parameters,omitempty"`
13679
13680	// ParentFollowupIntentName: Optional. The unique identifier of the
13681	// parent intent in the chain of followup intents. You can set this
13682	// field when creating an intent, for example with CreateIntent or
13683	// BatchUpdateIntents, in order to make this intent a followup intent.
13684	// It identifies the parent followup intent. Format:
13685	// `projects//agent/intents/`.
13686	ParentFollowupIntentName string `json:"parentFollowupIntentName,omitempty"`
13687
13688	// Priority: Optional. The priority of this intent. Higher numbers
13689	// represent higher priorities. - If the supplied value is unspecified
13690	// or 0, the service translates the value to 500,000, which corresponds
13691	// to the `Normal` priority in the console. - If the supplied value is
13692	// negative, the intent is ignored in runtime detect intent requests.
13693	Priority int64 `json:"priority,omitempty"`
13694
13695	// ResetContexts: Optional. Indicates whether to delete all contexts in
13696	// the current session when this intent is matched.
13697	ResetContexts bool `json:"resetContexts,omitempty"`
13698
13699	// RootFollowupIntentName: Output only. The unique identifier of the
13700	// root intent in the chain of followup intents. It identifies the
13701	// correct followup intents chain for this intent. Format:
13702	// `projects//agent/intents/`.
13703	RootFollowupIntentName string `json:"rootFollowupIntentName,omitempty"`
13704
13705	// TrainingPhrases: Optional. The collection of examples that the agent
13706	// is trained on.
13707	TrainingPhrases []*GoogleCloudDialogflowV2beta1IntentTrainingPhrase `json:"trainingPhrases,omitempty"`
13708
13709	// WebhookState: Optional. Indicates whether webhooks are enabled for
13710	// the intent.
13711	//
13712	// Possible values:
13713	//   "WEBHOOK_STATE_UNSPECIFIED" - Webhook is disabled in the agent and
13714	// in the intent.
13715	//   "WEBHOOK_STATE_ENABLED" - Webhook is enabled in the agent and in
13716	// the intent.
13717	//   "WEBHOOK_STATE_ENABLED_FOR_SLOT_FILLING" - Webhook is enabled in
13718	// the agent and in the intent. Also, each slot filling prompt is
13719	// forwarded to the webhook.
13720	WebhookState string `json:"webhookState,omitempty"`
13721
13722	// ForceSendFields is a list of field names (e.g. "Action") to
13723	// unconditionally include in API requests. By default, fields with
13724	// empty values are omitted from API requests. However, any non-pointer,
13725	// non-interface field appearing in ForceSendFields will be sent to the
13726	// server regardless of whether the field is empty or not. This may be
13727	// used to include empty fields in Patch requests.
13728	ForceSendFields []string `json:"-"`
13729
13730	// NullFields is a list of field names (e.g. "Action") to include in API
13731	// requests with the JSON null value. By default, fields with empty
13732	// values are omitted from API requests. However, any field with an
13733	// empty value appearing in NullFields will be sent to the server as
13734	// null. It is an error if a field in this list has a non-empty value.
13735	// This may be used to include null fields in Patch requests.
13736	NullFields []string `json:"-"`
13737}
13738
13739func (s *GoogleCloudDialogflowV2beta1Intent) MarshalJSON() ([]byte, error) {
13740	type NoMethod GoogleCloudDialogflowV2beta1Intent
13741	raw := NoMethod(*s)
13742	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13743}
13744
13745// GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo: Represents a
13746// single followup intent in the chain.
13747type GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo struct {
13748	// FollowupIntentName: The unique identifier of the followup intent.
13749	// Format: `projects//agent/intents/`.
13750	FollowupIntentName string `json:"followupIntentName,omitempty"`
13751
13752	// ParentFollowupIntentName: The unique identifier of the followup
13753	// intent's parent. Format: `projects//agent/intents/`.
13754	ParentFollowupIntentName string `json:"parentFollowupIntentName,omitempty"`
13755
13756	// ForceSendFields is a list of field names (e.g. "FollowupIntentName")
13757	// to unconditionally include in API requests. By default, fields with
13758	// empty values are omitted from API requests. However, any non-pointer,
13759	// non-interface field appearing in ForceSendFields will be sent to the
13760	// server regardless of whether the field is empty or not. This may be
13761	// used to include empty fields in Patch requests.
13762	ForceSendFields []string `json:"-"`
13763
13764	// NullFields is a list of field names (e.g. "FollowupIntentName") to
13765	// include in API requests with the JSON null value. By default, fields
13766	// with empty values are omitted from API requests. However, any field
13767	// with an empty value appearing in NullFields will be sent to the
13768	// server as null. It is an error if a field in this list has a
13769	// non-empty value. This may be used to include null fields in Patch
13770	// requests.
13771	NullFields []string `json:"-"`
13772}
13773
13774func (s *GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo) MarshalJSON() ([]byte, error) {
13775	type NoMethod GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo
13776	raw := NoMethod(*s)
13777	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13778}
13779
13780// GoogleCloudDialogflowV2beta1IntentMessage: Corresponds to the
13781// `Response` field in the Dialogflow console.
13782type GoogleCloudDialogflowV2beta1IntentMessage struct {
13783	// BasicCard: Displays a basic card for Actions on Google.
13784	BasicCard *GoogleCloudDialogflowV2beta1IntentMessageBasicCard `json:"basicCard,omitempty"`
13785
13786	// BrowseCarouselCard: Browse carousel card for Actions on Google.
13787	BrowseCarouselCard *GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard `json:"browseCarouselCard,omitempty"`
13788
13789	// Card: Displays a card.
13790	Card *GoogleCloudDialogflowV2beta1IntentMessageCard `json:"card,omitempty"`
13791
13792	// CarouselSelect: Displays a carousel card for Actions on Google.
13793	CarouselSelect *GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect `json:"carouselSelect,omitempty"`
13794
13795	// Image: Displays an image.
13796	Image *GoogleCloudDialogflowV2beta1IntentMessageImage `json:"image,omitempty"`
13797
13798	// LinkOutSuggestion: Displays a link out suggestion chip for Actions on
13799	// Google.
13800	LinkOutSuggestion *GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion `json:"linkOutSuggestion,omitempty"`
13801
13802	// ListSelect: Displays a list card for Actions on Google.
13803	ListSelect *GoogleCloudDialogflowV2beta1IntentMessageListSelect `json:"listSelect,omitempty"`
13804
13805	// MediaContent: The media content card for Actions on Google.
13806	MediaContent *GoogleCloudDialogflowV2beta1IntentMessageMediaContent `json:"mediaContent,omitempty"`
13807
13808	// Payload: A custom platform-specific response.
13809	Payload googleapi.RawMessage `json:"payload,omitempty"`
13810
13811	// Platform: Optional. The platform that this message is intended for.
13812	//
13813	// Possible values:
13814	//   "PLATFORM_UNSPECIFIED" - Not specified.
13815	//   "FACEBOOK" - Facebook.
13816	//   "SLACK" - Slack.
13817	//   "TELEGRAM" - Telegram.
13818	//   "KIK" - Kik.
13819	//   "SKYPE" - Skype.
13820	//   "LINE" - Line.
13821	//   "VIBER" - Viber.
13822	//   "ACTIONS_ON_GOOGLE" - Google Assistant See [Dialogflow webhook
13823	// format](https://developers.google.com/assistant/actions/build/json/dia
13824	// logflow-webhook-json)
13825	//   "TELEPHONY" - Telephony Gateway.
13826	//   "GOOGLE_HANGOUTS" - Google Hangouts.
13827	Platform string `json:"platform,omitempty"`
13828
13829	// QuickReplies: Displays quick replies.
13830	QuickReplies *GoogleCloudDialogflowV2beta1IntentMessageQuickReplies `json:"quickReplies,omitempty"`
13831
13832	// RbmCarouselRichCard: Rich Business Messaging (RBM) carousel rich card
13833	// response.
13834	RbmCarouselRichCard *GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard `json:"rbmCarouselRichCard,omitempty"`
13835
13836	// RbmStandaloneRichCard: Standalone Rich Business Messaging (RBM) rich
13837	// card response.
13838	RbmStandaloneRichCard *GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard `json:"rbmStandaloneRichCard,omitempty"`
13839
13840	// RbmText: Rich Business Messaging (RBM) text response. RBM allows
13841	// businesses to send enriched and branded versions of SMS. See
13842	// https://jibe.google.com/business-messaging.
13843	RbmText *GoogleCloudDialogflowV2beta1IntentMessageRbmText `json:"rbmText,omitempty"`
13844
13845	// SimpleResponses: Returns a voice or text-only response for Actions on
13846	// Google.
13847	SimpleResponses *GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses `json:"simpleResponses,omitempty"`
13848
13849	// Suggestions: Displays suggestion chips for Actions on Google.
13850	Suggestions *GoogleCloudDialogflowV2beta1IntentMessageSuggestions `json:"suggestions,omitempty"`
13851
13852	// TableCard: Table card for Actions on Google.
13853	TableCard *GoogleCloudDialogflowV2beta1IntentMessageTableCard `json:"tableCard,omitempty"`
13854
13855	// TelephonyPlayAudio: Plays audio from a file in Telephony Gateway.
13856	TelephonyPlayAudio *GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio `json:"telephonyPlayAudio,omitempty"`
13857
13858	// TelephonySynthesizeSpeech: Synthesizes speech in Telephony Gateway.
13859	TelephonySynthesizeSpeech *GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech `json:"telephonySynthesizeSpeech,omitempty"`
13860
13861	// TelephonyTransferCall: Transfers the call in Telephony Gateway.
13862	TelephonyTransferCall *GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall `json:"telephonyTransferCall,omitempty"`
13863
13864	// Text: Returns a text response.
13865	Text *GoogleCloudDialogflowV2beta1IntentMessageText `json:"text,omitempty"`
13866
13867	// ForceSendFields is a list of field names (e.g. "BasicCard") to
13868	// unconditionally include in API requests. By default, fields with
13869	// empty values are omitted from API requests. However, any non-pointer,
13870	// non-interface field appearing in ForceSendFields will be sent to the
13871	// server regardless of whether the field is empty or not. This may be
13872	// used to include empty fields in Patch requests.
13873	ForceSendFields []string `json:"-"`
13874
13875	// NullFields is a list of field names (e.g. "BasicCard") to include in
13876	// API requests with the JSON null value. By default, fields with empty
13877	// values are omitted from API requests. However, any field with an
13878	// empty value appearing in NullFields will be sent to the server as
13879	// null. It is an error if a field in this list has a non-empty value.
13880	// This may be used to include null fields in Patch requests.
13881	NullFields []string `json:"-"`
13882}
13883
13884func (s *GoogleCloudDialogflowV2beta1IntentMessage) MarshalJSON() ([]byte, error) {
13885	type NoMethod GoogleCloudDialogflowV2beta1IntentMessage
13886	raw := NoMethod(*s)
13887	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13888}
13889
13890// GoogleCloudDialogflowV2beta1IntentMessageBasicCard: The basic card
13891// message. Useful for displaying information.
13892type GoogleCloudDialogflowV2beta1IntentMessageBasicCard struct {
13893	// Buttons: Optional. The collection of card buttons.
13894	Buttons []*GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton `json:"buttons,omitempty"`
13895
13896	// FormattedText: Required, unless image is present. The body text of
13897	// the card.
13898	FormattedText string `json:"formattedText,omitempty"`
13899
13900	// Image: Optional. The image for the card.
13901	Image *GoogleCloudDialogflowV2beta1IntentMessageImage `json:"image,omitempty"`
13902
13903	// Subtitle: Optional. The subtitle of the card.
13904	Subtitle string `json:"subtitle,omitempty"`
13905
13906	// Title: Optional. The title of the card.
13907	Title string `json:"title,omitempty"`
13908
13909	// ForceSendFields is a list of field names (e.g. "Buttons") to
13910	// unconditionally include in API requests. By default, fields with
13911	// empty values are omitted from API requests. However, any non-pointer,
13912	// non-interface field appearing in ForceSendFields will be sent to the
13913	// server regardless of whether the field is empty or not. This may be
13914	// used to include empty fields in Patch requests.
13915	ForceSendFields []string `json:"-"`
13916
13917	// NullFields is a list of field names (e.g. "Buttons") to include in
13918	// API requests with the JSON null value. By default, fields with empty
13919	// values are omitted from API requests. However, any field with an
13920	// empty value appearing in NullFields will be sent to the server as
13921	// null. It is an error if a field in this list has a non-empty value.
13922	// This may be used to include null fields in Patch requests.
13923	NullFields []string `json:"-"`
13924}
13925
13926func (s *GoogleCloudDialogflowV2beta1IntentMessageBasicCard) MarshalJSON() ([]byte, error) {
13927	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageBasicCard
13928	raw := NoMethod(*s)
13929	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13930}
13931
13932// GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton: The button
13933// object that appears at the bottom of a card.
13934type GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton struct {
13935	// OpenUriAction: Required. Action to take when a user taps on the
13936	// button.
13937	OpenUriAction *GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction `json:"openUriAction,omitempty"`
13938
13939	// Title: Required. The title of the button.
13940	Title string `json:"title,omitempty"`
13941
13942	// ForceSendFields is a list of field names (e.g. "OpenUriAction") to
13943	// unconditionally include in API requests. By default, fields with
13944	// empty values are omitted from API requests. However, any non-pointer,
13945	// non-interface field appearing in ForceSendFields will be sent to the
13946	// server regardless of whether the field is empty or not. This may be
13947	// used to include empty fields in Patch requests.
13948	ForceSendFields []string `json:"-"`
13949
13950	// NullFields is a list of field names (e.g. "OpenUriAction") to include
13951	// in API requests with the JSON null value. By default, fields with
13952	// empty values are omitted from API requests. However, any field with
13953	// an empty value appearing in NullFields will be sent to the server as
13954	// null. It is an error if a field in this list has a non-empty value.
13955	// This may be used to include null fields in Patch requests.
13956	NullFields []string `json:"-"`
13957}
13958
13959func (s *GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton) MarshalJSON() ([]byte, error) {
13960	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton
13961	raw := NoMethod(*s)
13962	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13963}
13964
13965// GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction:
13966//  Opens the given URI.
13967type GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction struct {
13968	// Uri: Required. The HTTP or HTTPS scheme URI.
13969	Uri string `json:"uri,omitempty"`
13970
13971	// ForceSendFields is a list of field names (e.g. "Uri") to
13972	// unconditionally include in API requests. By default, fields with
13973	// empty values are omitted from API requests. However, any non-pointer,
13974	// non-interface field appearing in ForceSendFields will be sent to the
13975	// server regardless of whether the field is empty or not. This may be
13976	// used to include empty fields in Patch requests.
13977	ForceSendFields []string `json:"-"`
13978
13979	// NullFields is a list of field names (e.g. "Uri") to include in API
13980	// requests with the JSON null value. By default, fields with empty
13981	// values are omitted from API requests. However, any field with an
13982	// empty value appearing in NullFields will be sent to the server as
13983	// null. It is an error if a field in this list has a non-empty value.
13984	// This may be used to include null fields in Patch requests.
13985	NullFields []string `json:"-"`
13986}
13987
13988func (s *GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction) MarshalJSON() ([]byte, error) {
13989	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction
13990	raw := NoMethod(*s)
13991	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13992}
13993
13994// GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard: Browse
13995// Carousel Card for Actions on Google.
13996// https://developers.google.com/actions/assistant/responses#browsing_carousel
13997type GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard struct {
13998	// ImageDisplayOptions: Optional. Settings for displaying the image.
13999	// Applies to every image in items.
14000	//
14001	// Possible values:
14002	//   "IMAGE_DISPLAY_OPTIONS_UNSPECIFIED" - Fill the gaps between the
14003	// image and the image container with gray bars.
14004	//   "GRAY" - Fill the gaps between the image and the image container
14005	// with gray bars.
14006	//   "WHITE" - Fill the gaps between the image and the image container
14007	// with white bars.
14008	//   "CROPPED" - Image is scaled such that the image width and height
14009	// match or exceed the container dimensions. This may crop the top and
14010	// bottom of the image if the scaled image height is greater than the
14011	// container height, or crop the left and right of the image if the
14012	// scaled image width is greater than the container width. This is
14013	// similar to "Zoom Mode" on a widescreen TV when playing a 4:3 video.
14014	//   "BLURRED_BACKGROUND" - Pad the gaps between image and image frame
14015	// with a blurred copy of the same image.
14016	ImageDisplayOptions string `json:"imageDisplayOptions,omitempty"`
14017
14018	// Items: Required. List of items in the Browse Carousel Card. Minimum
14019	// of two items, maximum of ten.
14020	Items []*GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItem `json:"items,omitempty"`
14021
14022	// ForceSendFields is a list of field names (e.g. "ImageDisplayOptions")
14023	// to unconditionally include in API requests. By default, fields with
14024	// empty values are omitted from API requests. However, any non-pointer,
14025	// non-interface field appearing in ForceSendFields will be sent to the
14026	// server regardless of whether the field is empty or not. This may be
14027	// used to include empty fields in Patch requests.
14028	ForceSendFields []string `json:"-"`
14029
14030	// NullFields is a list of field names (e.g. "ImageDisplayOptions") to
14031	// include in API requests with the JSON null value. By default, fields
14032	// with empty values are omitted from API requests. However, any field
14033	// with an empty value appearing in NullFields will be sent to the
14034	// server as null. It is an error if a field in this list has a
14035	// non-empty value. This may be used to include null fields in Patch
14036	// requests.
14037	NullFields []string `json:"-"`
14038}
14039
14040func (s *GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard) MarshalJSON() ([]byte, error) {
14041	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard
14042	raw := NoMethod(*s)
14043	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14044}
14045
14046// GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarou
14047// selCardItem: Browsing carousel tile
14048type GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItem struct {
14049	// Description: Optional. Description of the carousel item. Maximum of
14050	// four lines of text.
14051	Description string `json:"description,omitempty"`
14052
14053	// Footer: Optional. Text that appears at the bottom of the Browse
14054	// Carousel Card. Maximum of one line of text.
14055	Footer string `json:"footer,omitempty"`
14056
14057	// Image: Optional. Hero image for the carousel item.
14058	Image *GoogleCloudDialogflowV2beta1IntentMessageImage `json:"image,omitempty"`
14059
14060	// OpenUriAction: Required. Action to present to the user.
14061	OpenUriAction *GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction `json:"openUriAction,omitempty"`
14062
14063	// Title: Required. Title of the carousel item. Maximum of two lines of
14064	// text.
14065	Title string `json:"title,omitempty"`
14066
14067	// ForceSendFields is a list of field names (e.g. "Description") to
14068	// unconditionally include in API requests. By default, fields with
14069	// empty values are omitted from API requests. However, any non-pointer,
14070	// non-interface field appearing in ForceSendFields will be sent to the
14071	// server regardless of whether the field is empty or not. This may be
14072	// used to include empty fields in Patch requests.
14073	ForceSendFields []string `json:"-"`
14074
14075	// NullFields is a list of field names (e.g. "Description") to include
14076	// in API requests with the JSON null value. By default, fields with
14077	// empty values are omitted from API requests. However, any field with
14078	// an empty value appearing in NullFields will be sent to the server as
14079	// null. It is an error if a field in this list has a non-empty value.
14080	// This may be used to include null fields in Patch requests.
14081	NullFields []string `json:"-"`
14082}
14083
14084func (s *GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItem) MarshalJSON() ([]byte, error) {
14085	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItem
14086	raw := NoMethod(*s)
14087	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14088}
14089
14090// GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarou
14091// selCardItemOpenUrlAction: Actions on Google action to open a given
14092// url.
14093type GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction struct {
14094	// Url: Required. URL
14095	Url string `json:"url,omitempty"`
14096
14097	// UrlTypeHint: Optional. Specifies the type of viewer that is used when
14098	// opening the URL. Defaults to opening via web browser.
14099	//
14100	// Possible values:
14101	//   "URL_TYPE_HINT_UNSPECIFIED" - Unspecified
14102	//   "AMP_ACTION" - Url would be an amp action
14103	//   "AMP_CONTENT" - URL that points directly to AMP content, or to a
14104	// canonical URL which refers to AMP content via .
14105	UrlTypeHint string `json:"urlTypeHint,omitempty"`
14106
14107	// ForceSendFields is a list of field names (e.g. "Url") to
14108	// unconditionally include in API requests. By default, fields with
14109	// empty values are omitted from API requests. However, any non-pointer,
14110	// non-interface field appearing in ForceSendFields will be sent to the
14111	// server regardless of whether the field is empty or not. This may be
14112	// used to include empty fields in Patch requests.
14113	ForceSendFields []string `json:"-"`
14114
14115	// NullFields is a list of field names (e.g. "Url") to include in API
14116	// requests with the JSON null value. By default, fields with empty
14117	// values are omitted from API requests. However, any field with an
14118	// empty value appearing in NullFields will be sent to the server as
14119	// null. It is an error if a field in this list has a non-empty value.
14120	// This may be used to include null fields in Patch requests.
14121	NullFields []string `json:"-"`
14122}
14123
14124func (s *GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction) MarshalJSON() ([]byte, error) {
14125	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction
14126	raw := NoMethod(*s)
14127	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14128}
14129
14130// GoogleCloudDialogflowV2beta1IntentMessageCard: The card response
14131// message.
14132type GoogleCloudDialogflowV2beta1IntentMessageCard struct {
14133	// Buttons: Optional. The collection of card buttons.
14134	Buttons []*GoogleCloudDialogflowV2beta1IntentMessageCardButton `json:"buttons,omitempty"`
14135
14136	// ImageUri: Optional. The public URI to an image file for the card.
14137	ImageUri string `json:"imageUri,omitempty"`
14138
14139	// Subtitle: Optional. The subtitle of the card.
14140	Subtitle string `json:"subtitle,omitempty"`
14141
14142	// Title: Optional. The title of the card.
14143	Title string `json:"title,omitempty"`
14144
14145	// ForceSendFields is a list of field names (e.g. "Buttons") to
14146	// unconditionally include in API requests. By default, fields with
14147	// empty values are omitted from API requests. However, any non-pointer,
14148	// non-interface field appearing in ForceSendFields will be sent to the
14149	// server regardless of whether the field is empty or not. This may be
14150	// used to include empty fields in Patch requests.
14151	ForceSendFields []string `json:"-"`
14152
14153	// NullFields is a list of field names (e.g. "Buttons") to include in
14154	// API requests with the JSON null value. By default, fields with empty
14155	// values are omitted from API requests. However, any field with an
14156	// empty value appearing in NullFields will be sent to the server as
14157	// null. It is an error if a field in this list has a non-empty value.
14158	// This may be used to include null fields in Patch requests.
14159	NullFields []string `json:"-"`
14160}
14161
14162func (s *GoogleCloudDialogflowV2beta1IntentMessageCard) MarshalJSON() ([]byte, error) {
14163	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageCard
14164	raw := NoMethod(*s)
14165	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14166}
14167
14168// GoogleCloudDialogflowV2beta1IntentMessageCardButton: Optional.
14169// Contains information about a button.
14170type GoogleCloudDialogflowV2beta1IntentMessageCardButton struct {
14171	// Postback: Optional. The text to send back to the Dialogflow API or a
14172	// URI to open.
14173	Postback string `json:"postback,omitempty"`
14174
14175	// Text: Optional. The text to show on the button.
14176	Text string `json:"text,omitempty"`
14177
14178	// ForceSendFields is a list of field names (e.g. "Postback") to
14179	// unconditionally include in API requests. By default, fields with
14180	// empty values are omitted from API requests. However, any non-pointer,
14181	// non-interface field appearing in ForceSendFields will be sent to the
14182	// server regardless of whether the field is empty or not. This may be
14183	// used to include empty fields in Patch requests.
14184	ForceSendFields []string `json:"-"`
14185
14186	// NullFields is a list of field names (e.g. "Postback") to include in
14187	// API requests with the JSON null value. By default, fields with empty
14188	// values are omitted from API requests. However, any field with an
14189	// empty value appearing in NullFields will be sent to the server as
14190	// null. It is an error if a field in this list has a non-empty value.
14191	// This may be used to include null fields in Patch requests.
14192	NullFields []string `json:"-"`
14193}
14194
14195func (s *GoogleCloudDialogflowV2beta1IntentMessageCardButton) MarshalJSON() ([]byte, error) {
14196	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageCardButton
14197	raw := NoMethod(*s)
14198	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14199}
14200
14201// GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect: The card for
14202// presenting a carousel of options to select from.
14203type GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect struct {
14204	// Items: Required. Carousel items.
14205	Items []*GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem `json:"items,omitempty"`
14206
14207	// ForceSendFields is a list of field names (e.g. "Items") to
14208	// unconditionally include in API requests. By default, fields with
14209	// empty values are omitted from API requests. However, any non-pointer,
14210	// non-interface field appearing in ForceSendFields will be sent to the
14211	// server regardless of whether the field is empty or not. This may be
14212	// used to include empty fields in Patch requests.
14213	ForceSendFields []string `json:"-"`
14214
14215	// NullFields is a list of field names (e.g. "Items") to include in API
14216	// requests with the JSON null value. By default, fields with empty
14217	// values are omitted from API requests. However, any field with an
14218	// empty value appearing in NullFields will be sent to the server as
14219	// null. It is an error if a field in this list has a non-empty value.
14220	// This may be used to include null fields in Patch requests.
14221	NullFields []string `json:"-"`
14222}
14223
14224func (s *GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect) MarshalJSON() ([]byte, error) {
14225	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect
14226	raw := NoMethod(*s)
14227	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14228}
14229
14230// GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem: An item
14231// in the carousel.
14232type GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem struct {
14233	// Description: Optional. The body text of the card.
14234	Description string `json:"description,omitempty"`
14235
14236	// Image: Optional. The image to display.
14237	Image *GoogleCloudDialogflowV2beta1IntentMessageImage `json:"image,omitempty"`
14238
14239	// Info: Required. Additional info about the option item.
14240	Info *GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo `json:"info,omitempty"`
14241
14242	// Title: Required. Title of the carousel item.
14243	Title string `json:"title,omitempty"`
14244
14245	// ForceSendFields is a list of field names (e.g. "Description") to
14246	// unconditionally include in API requests. By default, fields with
14247	// empty values are omitted from API requests. However, any non-pointer,
14248	// non-interface field appearing in ForceSendFields will be sent to the
14249	// server regardless of whether the field is empty or not. This may be
14250	// used to include empty fields in Patch requests.
14251	ForceSendFields []string `json:"-"`
14252
14253	// NullFields is a list of field names (e.g. "Description") to include
14254	// in API requests with the JSON null value. By default, fields with
14255	// empty values are omitted from API requests. However, any field with
14256	// an empty value appearing in NullFields will be sent to the server as
14257	// null. It is an error if a field in this list has a non-empty value.
14258	// This may be used to include null fields in Patch requests.
14259	NullFields []string `json:"-"`
14260}
14261
14262func (s *GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem) MarshalJSON() ([]byte, error) {
14263	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem
14264	raw := NoMethod(*s)
14265	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14266}
14267
14268// GoogleCloudDialogflowV2beta1IntentMessageColumnProperties: Column
14269// properties for TableCard.
14270type GoogleCloudDialogflowV2beta1IntentMessageColumnProperties struct {
14271	// Header: Required. Column heading.
14272	Header string `json:"header,omitempty"`
14273
14274	// HorizontalAlignment: Optional. Defines text alignment for all cells
14275	// in this column.
14276	//
14277	// Possible values:
14278	//   "HORIZONTAL_ALIGNMENT_UNSPECIFIED" - Text is aligned to the leading
14279	// edge of the column.
14280	//   "LEADING" - Text is aligned to the leading edge of the column.
14281	//   "CENTER" - Text is centered in the column.
14282	//   "TRAILING" - Text is aligned to the trailing edge of the column.
14283	HorizontalAlignment string `json:"horizontalAlignment,omitempty"`
14284
14285	// ForceSendFields is a list of field names (e.g. "Header") to
14286	// unconditionally include in API requests. By default, fields with
14287	// empty values are omitted from API requests. However, any non-pointer,
14288	// non-interface field appearing in ForceSendFields will be sent to the
14289	// server regardless of whether the field is empty or not. This may be
14290	// used to include empty fields in Patch requests.
14291	ForceSendFields []string `json:"-"`
14292
14293	// NullFields is a list of field names (e.g. "Header") to include in API
14294	// requests with the JSON null value. By default, fields with empty
14295	// values are omitted from API requests. However, any field with an
14296	// empty value appearing in NullFields will be sent to the server as
14297	// null. It is an error if a field in this list has a non-empty value.
14298	// This may be used to include null fields in Patch requests.
14299	NullFields []string `json:"-"`
14300}
14301
14302func (s *GoogleCloudDialogflowV2beta1IntentMessageColumnProperties) MarshalJSON() ([]byte, error) {
14303	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageColumnProperties
14304	raw := NoMethod(*s)
14305	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14306}
14307
14308// GoogleCloudDialogflowV2beta1IntentMessageImage: The image response
14309// message.
14310type GoogleCloudDialogflowV2beta1IntentMessageImage struct {
14311	// AccessibilityText: A text description of the image to be used for
14312	// accessibility, e.g., screen readers. Required if image_uri is set for
14313	// CarouselSelect.
14314	AccessibilityText string `json:"accessibilityText,omitempty"`
14315
14316	// ImageUri: Optional. The public URI to an image file.
14317	ImageUri string `json:"imageUri,omitempty"`
14318
14319	// ForceSendFields is a list of field names (e.g. "AccessibilityText")
14320	// to unconditionally include in API requests. By default, fields with
14321	// empty values are omitted from API requests. However, any non-pointer,
14322	// non-interface field appearing in ForceSendFields will be sent to the
14323	// server regardless of whether the field is empty or not. This may be
14324	// used to include empty fields in Patch requests.
14325	ForceSendFields []string `json:"-"`
14326
14327	// NullFields is a list of field names (e.g. "AccessibilityText") to
14328	// include in API requests with the JSON null value. By default, fields
14329	// with empty values are omitted from API requests. However, any field
14330	// with an empty value appearing in NullFields will be sent to the
14331	// server as null. It is an error if a field in this list has a
14332	// non-empty value. This may be used to include null fields in Patch
14333	// requests.
14334	NullFields []string `json:"-"`
14335}
14336
14337func (s *GoogleCloudDialogflowV2beta1IntentMessageImage) MarshalJSON() ([]byte, error) {
14338	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageImage
14339	raw := NoMethod(*s)
14340	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14341}
14342
14343// GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion: The
14344// suggestion chip message that allows the user to jump out to the app
14345// or website associated with this agent.
14346type GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion struct {
14347	// DestinationName: Required. The name of the app or site this chip is
14348	// linking to.
14349	DestinationName string `json:"destinationName,omitempty"`
14350
14351	// Uri: Required. The URI of the app or site to open when the user taps
14352	// the suggestion chip.
14353	Uri string `json:"uri,omitempty"`
14354
14355	// ForceSendFields is a list of field names (e.g. "DestinationName") to
14356	// unconditionally include in API requests. By default, fields with
14357	// empty values are omitted from API requests. However, any non-pointer,
14358	// non-interface field appearing in ForceSendFields will be sent to the
14359	// server regardless of whether the field is empty or not. This may be
14360	// used to include empty fields in Patch requests.
14361	ForceSendFields []string `json:"-"`
14362
14363	// NullFields is a list of field names (e.g. "DestinationName") to
14364	// include in API requests with the JSON null value. By default, fields
14365	// with empty values are omitted from API requests. However, any field
14366	// with an empty value appearing in NullFields will be sent to the
14367	// server as null. It is an error if a field in this list has a
14368	// non-empty value. This may be used to include null fields in Patch
14369	// requests.
14370	NullFields []string `json:"-"`
14371}
14372
14373func (s *GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion) MarshalJSON() ([]byte, error) {
14374	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion
14375	raw := NoMethod(*s)
14376	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14377}
14378
14379// GoogleCloudDialogflowV2beta1IntentMessageListSelect: The card for
14380// presenting a list of options to select from.
14381type GoogleCloudDialogflowV2beta1IntentMessageListSelect struct {
14382	// Items: Required. List items.
14383	Items []*GoogleCloudDialogflowV2beta1IntentMessageListSelectItem `json:"items,omitempty"`
14384
14385	// Subtitle: Optional. Subtitle of the list.
14386	Subtitle string `json:"subtitle,omitempty"`
14387
14388	// Title: Optional. The overall title of the list.
14389	Title string `json:"title,omitempty"`
14390
14391	// ForceSendFields is a list of field names (e.g. "Items") to
14392	// unconditionally include in API requests. By default, fields with
14393	// empty values are omitted from API requests. However, any non-pointer,
14394	// non-interface field appearing in ForceSendFields will be sent to the
14395	// server regardless of whether the field is empty or not. This may be
14396	// used to include empty fields in Patch requests.
14397	ForceSendFields []string `json:"-"`
14398
14399	// NullFields is a list of field names (e.g. "Items") to include in API
14400	// requests with the JSON null value. By default, fields with empty
14401	// values are omitted from API requests. However, any field with an
14402	// empty value appearing in NullFields will be sent to the server as
14403	// null. It is an error if a field in this list has a non-empty value.
14404	// This may be used to include null fields in Patch requests.
14405	NullFields []string `json:"-"`
14406}
14407
14408func (s *GoogleCloudDialogflowV2beta1IntentMessageListSelect) MarshalJSON() ([]byte, error) {
14409	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageListSelect
14410	raw := NoMethod(*s)
14411	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14412}
14413
14414// GoogleCloudDialogflowV2beta1IntentMessageListSelectItem: An item in
14415// the list.
14416type GoogleCloudDialogflowV2beta1IntentMessageListSelectItem struct {
14417	// Description: Optional. The main text describing the item.
14418	Description string `json:"description,omitempty"`
14419
14420	// Image: Optional. The image to display.
14421	Image *GoogleCloudDialogflowV2beta1IntentMessageImage `json:"image,omitempty"`
14422
14423	// Info: Required. Additional information about this option.
14424	Info *GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo `json:"info,omitempty"`
14425
14426	// Title: Required. The title of the list item.
14427	Title string `json:"title,omitempty"`
14428
14429	// ForceSendFields is a list of field names (e.g. "Description") to
14430	// unconditionally include in API requests. By default, fields with
14431	// empty values are omitted from API requests. However, any non-pointer,
14432	// non-interface field appearing in ForceSendFields will be sent to the
14433	// server regardless of whether the field is empty or not. This may be
14434	// used to include empty fields in Patch requests.
14435	ForceSendFields []string `json:"-"`
14436
14437	// NullFields is a list of field names (e.g. "Description") to include
14438	// in API requests with the JSON null value. By default, fields with
14439	// empty values are omitted from API requests. However, any field with
14440	// an empty value appearing in NullFields will be sent to the server as
14441	// null. It is an error if a field in this list has a non-empty value.
14442	// This may be used to include null fields in Patch requests.
14443	NullFields []string `json:"-"`
14444}
14445
14446func (s *GoogleCloudDialogflowV2beta1IntentMessageListSelectItem) MarshalJSON() ([]byte, error) {
14447	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageListSelectItem
14448	raw := NoMethod(*s)
14449	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14450}
14451
14452// GoogleCloudDialogflowV2beta1IntentMessageMediaContent: The media
14453// content card for Actions on Google.
14454type GoogleCloudDialogflowV2beta1IntentMessageMediaContent struct {
14455	// MediaObjects: Required. List of media objects.
14456	MediaObjects []*GoogleCloudDialogflowV2beta1IntentMessageMediaContentResponseMediaObject `json:"mediaObjects,omitempty"`
14457
14458	// MediaType: Optional. What type of media is the content (ie "audio").
14459	//
14460	// Possible values:
14461	//   "RESPONSE_MEDIA_TYPE_UNSPECIFIED" - Unspecified.
14462	//   "AUDIO" - Response media type is audio.
14463	MediaType string `json:"mediaType,omitempty"`
14464
14465	// ForceSendFields is a list of field names (e.g. "MediaObjects") to
14466	// unconditionally include in API requests. By default, fields with
14467	// empty values are omitted from API requests. However, any non-pointer,
14468	// non-interface field appearing in ForceSendFields will be sent to the
14469	// server regardless of whether the field is empty or not. This may be
14470	// used to include empty fields in Patch requests.
14471	ForceSendFields []string `json:"-"`
14472
14473	// NullFields is a list of field names (e.g. "MediaObjects") to include
14474	// in API requests with the JSON null value. By default, fields with
14475	// empty values are omitted from API requests. However, any field with
14476	// an empty value appearing in NullFields will be sent to the server as
14477	// null. It is an error if a field in this list has a non-empty value.
14478	// This may be used to include null fields in Patch requests.
14479	NullFields []string `json:"-"`
14480}
14481
14482func (s *GoogleCloudDialogflowV2beta1IntentMessageMediaContent) MarshalJSON() ([]byte, error) {
14483	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageMediaContent
14484	raw := NoMethod(*s)
14485	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14486}
14487
14488// GoogleCloudDialogflowV2beta1IntentMessageMediaContentResponseMediaObje
14489// ct: Response media object for media content card.
14490type GoogleCloudDialogflowV2beta1IntentMessageMediaContentResponseMediaObject struct {
14491	// ContentUrl: Required. Url where the media is stored.
14492	ContentUrl string `json:"contentUrl,omitempty"`
14493
14494	// Description: Optional. Description of media card.
14495	Description string `json:"description,omitempty"`
14496
14497	// Icon: Optional. Icon to display above media content.
14498	Icon *GoogleCloudDialogflowV2beta1IntentMessageImage `json:"icon,omitempty"`
14499
14500	// LargeImage: Optional. Image to display above media content.
14501	LargeImage *GoogleCloudDialogflowV2beta1IntentMessageImage `json:"largeImage,omitempty"`
14502
14503	// Name: Required. Name of media card.
14504	Name string `json:"name,omitempty"`
14505
14506	// ForceSendFields is a list of field names (e.g. "ContentUrl") to
14507	// unconditionally include in API requests. By default, fields with
14508	// empty values are omitted from API requests. However, any non-pointer,
14509	// non-interface field appearing in ForceSendFields will be sent to the
14510	// server regardless of whether the field is empty or not. This may be
14511	// used to include empty fields in Patch requests.
14512	ForceSendFields []string `json:"-"`
14513
14514	// NullFields is a list of field names (e.g. "ContentUrl") to include in
14515	// API requests with the JSON null value. By default, fields with empty
14516	// values are omitted from API requests. However, any field with an
14517	// empty value appearing in NullFields will be sent to the server as
14518	// null. It is an error if a field in this list has a non-empty value.
14519	// This may be used to include null fields in Patch requests.
14520	NullFields []string `json:"-"`
14521}
14522
14523func (s *GoogleCloudDialogflowV2beta1IntentMessageMediaContentResponseMediaObject) MarshalJSON() ([]byte, error) {
14524	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageMediaContentResponseMediaObject
14525	raw := NoMethod(*s)
14526	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14527}
14528
14529// GoogleCloudDialogflowV2beta1IntentMessageQuickReplies: The quick
14530// replies response message.
14531type GoogleCloudDialogflowV2beta1IntentMessageQuickReplies struct {
14532	// QuickReplies: Optional. The collection of quick replies.
14533	QuickReplies []string `json:"quickReplies,omitempty"`
14534
14535	// Title: Optional. The title of the collection of quick replies.
14536	Title string `json:"title,omitempty"`
14537
14538	// ForceSendFields is a list of field names (e.g. "QuickReplies") to
14539	// unconditionally include in API requests. By default, fields with
14540	// empty values are omitted from API requests. However, any non-pointer,
14541	// non-interface field appearing in ForceSendFields will be sent to the
14542	// server regardless of whether the field is empty or not. This may be
14543	// used to include empty fields in Patch requests.
14544	ForceSendFields []string `json:"-"`
14545
14546	// NullFields is a list of field names (e.g. "QuickReplies") to include
14547	// in API requests with the JSON null value. By default, fields with
14548	// empty values are omitted from API requests. However, any field with
14549	// an empty value appearing in NullFields will be sent to the server as
14550	// null. It is an error if a field in this list has a non-empty value.
14551	// This may be used to include null fields in Patch requests.
14552	NullFields []string `json:"-"`
14553}
14554
14555func (s *GoogleCloudDialogflowV2beta1IntentMessageQuickReplies) MarshalJSON() ([]byte, error) {
14556	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageQuickReplies
14557	raw := NoMethod(*s)
14558	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14559}
14560
14561// GoogleCloudDialogflowV2beta1IntentMessageRbmCardContent: Rich
14562// Business Messaging (RBM) Card content
14563type GoogleCloudDialogflowV2beta1IntentMessageRbmCardContent struct {
14564	// Description: Optional. Description of the card (at most 2000 bytes).
14565	// At least one of the title, description or media must be set.
14566	Description string `json:"description,omitempty"`
14567
14568	// Media: Optional. However at least one of the title, description or
14569	// media must be set. Media (image, GIF or a video) to include in the
14570	// card.
14571	Media *GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia `json:"media,omitempty"`
14572
14573	// Suggestions: Optional. List of suggestions to include in the card.
14574	Suggestions []*GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion `json:"suggestions,omitempty"`
14575
14576	// Title: Optional. Title of the card (at most 200 bytes). At least one
14577	// of the title, description or media must be set.
14578	Title string `json:"title,omitempty"`
14579
14580	// ForceSendFields is a list of field names (e.g. "Description") to
14581	// unconditionally include in API requests. By default, fields with
14582	// empty values are omitted from API requests. However, any non-pointer,
14583	// non-interface field appearing in ForceSendFields will be sent to the
14584	// server regardless of whether the field is empty or not. This may be
14585	// used to include empty fields in Patch requests.
14586	ForceSendFields []string `json:"-"`
14587
14588	// NullFields is a list of field names (e.g. "Description") to include
14589	// in API requests with the JSON null value. By default, fields with
14590	// empty values are omitted from API requests. However, any field with
14591	// an empty value appearing in NullFields will be sent to the server as
14592	// null. It is an error if a field in this list has a non-empty value.
14593	// This may be used to include null fields in Patch requests.
14594	NullFields []string `json:"-"`
14595}
14596
14597func (s *GoogleCloudDialogflowV2beta1IntentMessageRbmCardContent) MarshalJSON() ([]byte, error) {
14598	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageRbmCardContent
14599	raw := NoMethod(*s)
14600	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14601}
14602
14603// GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia: Rich
14604// Business Messaging (RBM) Media displayed in Cards The following
14605// media-types are currently supported: Image Types * image/jpeg *
14606// image/jpg' * image/gif * image/png Video Types * video/h263 *
14607// video/m4v * video/mp4 * video/mpeg * video/mpeg4 * video/webm
14608type GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia struct {
14609	// FileUri: Required. Publicly reachable URI of the file. The RBM
14610	// platform determines the MIME type of the file from the content-type
14611	// field in the HTTP headers when the platform fetches the file. The
14612	// content-type field must be present and accurate in the HTTP response
14613	// from the URL.
14614	FileUri string `json:"fileUri,omitempty"`
14615
14616	// Height: Required for cards with vertical orientation. The height of
14617	// the media within a rich card with a vertical layout. For a standalone
14618	// card with horizontal layout, height is not customizable, and this
14619	// field is ignored.
14620	//
14621	// Possible values:
14622	//   "HEIGHT_UNSPECIFIED" - Not specified.
14623	//   "SHORT" - 112 DP.
14624	//   "MEDIUM" - 168 DP.
14625	//   "TALL" - 264 DP. Not available for rich card carousels when the
14626	// card width is set to small.
14627	Height string `json:"height,omitempty"`
14628
14629	// ThumbnailUri: Optional. Publicly reachable URI of the thumbnail.If
14630	// you don't provide a thumbnail URI, the RBM platform displays a blank
14631	// placeholder thumbnail until the user's device downloads the file.
14632	// Depending on the user's setting, the file may not download
14633	// automatically and may require the user to tap a download button.
14634	ThumbnailUri string `json:"thumbnailUri,omitempty"`
14635
14636	// ForceSendFields is a list of field names (e.g. "FileUri") to
14637	// unconditionally include in API requests. By default, fields with
14638	// empty values are omitted from API requests. However, any non-pointer,
14639	// non-interface field appearing in ForceSendFields will be sent to the
14640	// server regardless of whether the field is empty or not. This may be
14641	// used to include empty fields in Patch requests.
14642	ForceSendFields []string `json:"-"`
14643
14644	// NullFields is a list of field names (e.g. "FileUri") to include in
14645	// API requests with the JSON null value. By default, fields with empty
14646	// values are omitted from API requests. However, any field with an
14647	// empty value appearing in NullFields will be sent to the server as
14648	// null. It is an error if a field in this list has a non-empty value.
14649	// This may be used to include null fields in Patch requests.
14650	NullFields []string `json:"-"`
14651}
14652
14653func (s *GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia) MarshalJSON() ([]byte, error) {
14654	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia
14655	raw := NoMethod(*s)
14656	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14657}
14658
14659// GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard: Carousel
14660// Rich Business Messaging (RBM) rich card. Rich cards allow you to
14661// respond to users with more vivid content, e.g. with media and
14662// suggestions. If you want to show a single card with more control over
14663// the layout, please use RbmStandaloneCard instead.
14664type GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard struct {
14665	// CardContents: Required. The cards in the carousel. A carousel must
14666	// have at least 2 cards and at most 10.
14667	CardContents []*GoogleCloudDialogflowV2beta1IntentMessageRbmCardContent `json:"cardContents,omitempty"`
14668
14669	// CardWidth: Required. The width of the cards in the carousel.
14670	//
14671	// Possible values:
14672	//   "CARD_WIDTH_UNSPECIFIED" - Not specified.
14673	//   "SMALL" - 120 DP. Note that tall media cannot be used.
14674	//   "MEDIUM" - 232 DP.
14675	CardWidth string `json:"cardWidth,omitempty"`
14676
14677	// ForceSendFields is a list of field names (e.g. "CardContents") to
14678	// unconditionally include in API requests. By default, fields with
14679	// empty values are omitted from API requests. However, any non-pointer,
14680	// non-interface field appearing in ForceSendFields will be sent to the
14681	// server regardless of whether the field is empty or not. This may be
14682	// used to include empty fields in Patch requests.
14683	ForceSendFields []string `json:"-"`
14684
14685	// NullFields is a list of field names (e.g. "CardContents") to include
14686	// in API requests with the JSON null value. By default, fields with
14687	// empty values are omitted from API requests. However, any field with
14688	// an empty value appearing in NullFields will be sent to the server as
14689	// null. It is an error if a field in this list has a non-empty value.
14690	// This may be used to include null fields in Patch requests.
14691	NullFields []string `json:"-"`
14692}
14693
14694func (s *GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard) MarshalJSON() ([]byte, error) {
14695	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard
14696	raw := NoMethod(*s)
14697	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14698}
14699
14700// GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard:
14701// Standalone Rich Business Messaging (RBM) rich card. Rich cards allow
14702// you to respond to users with more vivid content, e.g. with media and
14703// suggestions. You can group multiple rich cards into one using
14704// RbmCarouselCard but carousel cards will give you less control over
14705// the card layout.
14706type GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard struct {
14707	// CardContent: Required. Card content.
14708	CardContent *GoogleCloudDialogflowV2beta1IntentMessageRbmCardContent `json:"cardContent,omitempty"`
14709
14710	// CardOrientation: Required. Orientation of the card.
14711	//
14712	// Possible values:
14713	//   "CARD_ORIENTATION_UNSPECIFIED" - Not specified.
14714	//   "HORIZONTAL" - Horizontal layout.
14715	//   "VERTICAL" - Vertical layout.
14716	CardOrientation string `json:"cardOrientation,omitempty"`
14717
14718	// ThumbnailImageAlignment: Required if orientation is horizontal. Image
14719	// preview alignment for standalone cards with horizontal layout.
14720	//
14721	// Possible values:
14722	//   "THUMBNAIL_IMAGE_ALIGNMENT_UNSPECIFIED" - Not specified.
14723	//   "LEFT" - Thumbnail preview is left-aligned.
14724	//   "RIGHT" - Thumbnail preview is right-aligned.
14725	ThumbnailImageAlignment string `json:"thumbnailImageAlignment,omitempty"`
14726
14727	// ForceSendFields is a list of field names (e.g. "CardContent") to
14728	// unconditionally include in API requests. By default, fields with
14729	// empty values are omitted from API requests. However, any non-pointer,
14730	// non-interface field appearing in ForceSendFields will be sent to the
14731	// server regardless of whether the field is empty or not. This may be
14732	// used to include empty fields in Patch requests.
14733	ForceSendFields []string `json:"-"`
14734
14735	// NullFields is a list of field names (e.g. "CardContent") to include
14736	// in API requests with the JSON null value. By default, fields with
14737	// empty values are omitted from API requests. However, any field with
14738	// an empty value appearing in NullFields will be sent to the server as
14739	// null. It is an error if a field in this list has a non-empty value.
14740	// This may be used to include null fields in Patch requests.
14741	NullFields []string `json:"-"`
14742}
14743
14744func (s *GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard) MarshalJSON() ([]byte, error) {
14745	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard
14746	raw := NoMethod(*s)
14747	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14748}
14749
14750// GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedAction: Rich
14751// Business Messaging (RBM) suggested client-side action that the user
14752// can choose from the card.
14753type GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedAction struct {
14754	// Dial: Suggested client side action: Dial a phone number
14755	Dial *GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionDial `json:"dial,omitempty"`
14756
14757	// OpenUrl: Suggested client side action: Open a URI on device
14758	OpenUrl *GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionOpenUri `json:"openUrl,omitempty"`
14759
14760	// PostbackData: Opaque payload that the Dialogflow receives in a user
14761	// event when the user taps the suggested action. This data will be also
14762	// forwarded to webhook to allow performing custom business logic.
14763	PostbackData string `json:"postbackData,omitempty"`
14764
14765	// ShareLocation: Suggested client side action: Share user location
14766	ShareLocation *GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionShareLocation `json:"shareLocation,omitempty"`
14767
14768	// Text: Text to display alongside the action.
14769	Text string `json:"text,omitempty"`
14770
14771	// ForceSendFields is a list of field names (e.g. "Dial") to
14772	// unconditionally include in API requests. By default, fields with
14773	// empty values are omitted from API requests. However, any non-pointer,
14774	// non-interface field appearing in ForceSendFields will be sent to the
14775	// server regardless of whether the field is empty or not. This may be
14776	// used to include empty fields in Patch requests.
14777	ForceSendFields []string `json:"-"`
14778
14779	// NullFields is a list of field names (e.g. "Dial") to include in API
14780	// requests with the JSON null value. By default, fields with empty
14781	// values are omitted from API requests. However, any field with an
14782	// empty value appearing in NullFields will be sent to the server as
14783	// null. It is an error if a field in this list has a non-empty value.
14784	// This may be used to include null fields in Patch requests.
14785	NullFields []string `json:"-"`
14786}
14787
14788func (s *GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedAction) MarshalJSON() ([]byte, error) {
14789	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedAction
14790	raw := NoMethod(*s)
14791	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14792}
14793
14794// GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggeste
14795// dActionDial: Opens the user's default dialer app with the specified
14796// phone number but does not dial automatically.
14797type GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionDial struct {
14798	// PhoneNumber: Required. The phone number to fill in the default dialer
14799	// app. This field should be in E.164
14800	// (https://en.wikipedia.org/wiki/E.164) format. An example of a
14801	// correctly formatted phone number: +15556767888.
14802	PhoneNumber string `json:"phoneNumber,omitempty"`
14803
14804	// ForceSendFields is a list of field names (e.g. "PhoneNumber") to
14805	// unconditionally include in API requests. By default, fields with
14806	// empty values are omitted from API requests. However, any non-pointer,
14807	// non-interface field appearing in ForceSendFields will be sent to the
14808	// server regardless of whether the field is empty or not. This may be
14809	// used to include empty fields in Patch requests.
14810	ForceSendFields []string `json:"-"`
14811
14812	// NullFields is a list of field names (e.g. "PhoneNumber") to include
14813	// in API requests with the JSON null value. By default, fields with
14814	// empty values are omitted from API requests. However, any field with
14815	// an empty value appearing in NullFields will be sent to the server as
14816	// null. It is an error if a field in this list has a non-empty value.
14817	// This may be used to include null fields in Patch requests.
14818	NullFields []string `json:"-"`
14819}
14820
14821func (s *GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionDial) MarshalJSON() ([]byte, error) {
14822	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionDial
14823	raw := NoMethod(*s)
14824	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14825}
14826
14827// GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggeste
14828// dActionOpenUri: Opens the user's default web browser app to the
14829// specified uri If the user has an app installed that is registered as
14830// the default handler for the URL, then this app will be opened
14831// instead, and its icon will be used in the suggested action UI.
14832type GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionOpenUri struct {
14833	// Uri: Required. The uri to open on the user device
14834	Uri string `json:"uri,omitempty"`
14835
14836	// ForceSendFields is a list of field names (e.g. "Uri") to
14837	// unconditionally include in API requests. By default, fields with
14838	// empty values are omitted from API requests. However, any non-pointer,
14839	// non-interface field appearing in ForceSendFields will be sent to the
14840	// server regardless of whether the field is empty or not. This may be
14841	// used to include empty fields in Patch requests.
14842	ForceSendFields []string `json:"-"`
14843
14844	// NullFields is a list of field names (e.g. "Uri") to include in API
14845	// requests with the JSON null value. By default, fields with empty
14846	// values are omitted from API requests. However, any field with an
14847	// empty value appearing in NullFields will be sent to the server as
14848	// null. It is an error if a field in this list has a non-empty value.
14849	// This may be used to include null fields in Patch requests.
14850	NullFields []string `json:"-"`
14851}
14852
14853func (s *GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionOpenUri) MarshalJSON() ([]byte, error) {
14854	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionOpenUri
14855	raw := NoMethod(*s)
14856	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14857}
14858
14859// GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggeste
14860// dActionShareLocation: Opens the device's location chooser so the user
14861// can pick a location to send back to the agent.
14862type GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionShareLocation struct {
14863}
14864
14865// GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedReply: Rich
14866// Business Messaging (RBM) suggested reply that the user can click
14867// instead of typing in their own response.
14868type GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedReply struct {
14869	// PostbackData: Opaque payload that the Dialogflow receives in a user
14870	// event when the user taps the suggested reply. This data will be also
14871	// forwarded to webhook to allow performing custom business logic.
14872	PostbackData string `json:"postbackData,omitempty"`
14873
14874	// Text: Suggested reply text.
14875	Text string `json:"text,omitempty"`
14876
14877	// ForceSendFields is a list of field names (e.g. "PostbackData") to
14878	// unconditionally include in API requests. By default, fields with
14879	// empty values are omitted from API requests. However, any non-pointer,
14880	// non-interface field appearing in ForceSendFields will be sent to the
14881	// server regardless of whether the field is empty or not. This may be
14882	// used to include empty fields in Patch requests.
14883	ForceSendFields []string `json:"-"`
14884
14885	// NullFields is a list of field names (e.g. "PostbackData") to include
14886	// in API requests with the JSON null value. By default, fields with
14887	// empty values are omitted from API requests. However, any field with
14888	// an empty value appearing in NullFields will be sent to the server as
14889	// null. It is an error if a field in this list has a non-empty value.
14890	// This may be used to include null fields in Patch requests.
14891	NullFields []string `json:"-"`
14892}
14893
14894func (s *GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedReply) MarshalJSON() ([]byte, error) {
14895	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedReply
14896	raw := NoMethod(*s)
14897	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14898}
14899
14900// GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion: Rich Business
14901// Messaging (RBM) suggestion. Suggestions allow user to easily
14902// select/click a predefined response or perform an action (like opening
14903// a web uri).
14904type GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion struct {
14905	// Action: Predefined client side actions that user can choose
14906	Action *GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedAction `json:"action,omitempty"`
14907
14908	// Reply: Predefined replies for user to select instead of typing
14909	Reply *GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedReply `json:"reply,omitempty"`
14910
14911	// ForceSendFields is a list of field names (e.g. "Action") to
14912	// unconditionally include in API requests. By default, fields with
14913	// empty values are omitted from API requests. However, any non-pointer,
14914	// non-interface field appearing in ForceSendFields will be sent to the
14915	// server regardless of whether the field is empty or not. This may be
14916	// used to include empty fields in Patch requests.
14917	ForceSendFields []string `json:"-"`
14918
14919	// NullFields is a list of field names (e.g. "Action") to include in API
14920	// requests with the JSON null value. By default, fields with empty
14921	// values are omitted from API requests. However, any field with an
14922	// empty value appearing in NullFields will be sent to the server as
14923	// null. It is an error if a field in this list has a non-empty value.
14924	// This may be used to include null fields in Patch requests.
14925	NullFields []string `json:"-"`
14926}
14927
14928func (s *GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion) MarshalJSON() ([]byte, error) {
14929	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion
14930	raw := NoMethod(*s)
14931	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14932}
14933
14934// GoogleCloudDialogflowV2beta1IntentMessageRbmText: Rich Business
14935// Messaging (RBM) text response with suggestions.
14936type GoogleCloudDialogflowV2beta1IntentMessageRbmText struct {
14937	// RbmSuggestion: Optional. One or more suggestions to show to the user.
14938	RbmSuggestion []*GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion `json:"rbmSuggestion,omitempty"`
14939
14940	// Text: Required. Text sent and displayed to the user.
14941	Text string `json:"text,omitempty"`
14942
14943	// ForceSendFields is a list of field names (e.g. "RbmSuggestion") to
14944	// unconditionally include in API requests. By default, fields with
14945	// empty values are omitted from API requests. However, any non-pointer,
14946	// non-interface field appearing in ForceSendFields will be sent to the
14947	// server regardless of whether the field is empty or not. This may be
14948	// used to include empty fields in Patch requests.
14949	ForceSendFields []string `json:"-"`
14950
14951	// NullFields is a list of field names (e.g. "RbmSuggestion") to include
14952	// in API requests with the JSON null value. By default, fields with
14953	// empty values are omitted from API requests. However, any field with
14954	// an empty value appearing in NullFields will be sent to the server as
14955	// null. It is an error if a field in this list has a non-empty value.
14956	// This may be used to include null fields in Patch requests.
14957	NullFields []string `json:"-"`
14958}
14959
14960func (s *GoogleCloudDialogflowV2beta1IntentMessageRbmText) MarshalJSON() ([]byte, error) {
14961	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageRbmText
14962	raw := NoMethod(*s)
14963	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14964}
14965
14966// GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo: Additional
14967// info about the select item for when it is triggered in a dialog.
14968type GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo struct {
14969	// Key: Required. A unique key that will be sent back to the agent if
14970	// this response is given.
14971	Key string `json:"key,omitempty"`
14972
14973	// Synonyms: Optional. A list of synonyms that can also be used to
14974	// trigger this item in dialog.
14975	Synonyms []string `json:"synonyms,omitempty"`
14976
14977	// ForceSendFields is a list of field names (e.g. "Key") to
14978	// unconditionally include in API requests. By default, fields with
14979	// empty values are omitted from API requests. However, any non-pointer,
14980	// non-interface field appearing in ForceSendFields will be sent to the
14981	// server regardless of whether the field is empty or not. This may be
14982	// used to include empty fields in Patch requests.
14983	ForceSendFields []string `json:"-"`
14984
14985	// NullFields is a list of field names (e.g. "Key") to include in API
14986	// requests with the JSON null value. By default, fields with empty
14987	// values are omitted from API requests. However, any field with an
14988	// empty value appearing in NullFields will be sent to the server as
14989	// null. It is an error if a field in this list has a non-empty value.
14990	// This may be used to include null fields in Patch requests.
14991	NullFields []string `json:"-"`
14992}
14993
14994func (s *GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo) MarshalJSON() ([]byte, error) {
14995	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo
14996	raw := NoMethod(*s)
14997	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14998}
14999
15000// GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse: The simple
15001// response message containing speech or text.
15002type GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse struct {
15003	// DisplayText: Optional. The text to display.
15004	DisplayText string `json:"displayText,omitempty"`
15005
15006	// Ssml: One of text_to_speech or ssml must be provided. Structured
15007	// spoken response to the user in the SSML format. Mutually exclusive
15008	// with text_to_speech.
15009	Ssml string `json:"ssml,omitempty"`
15010
15011	// TextToSpeech: One of text_to_speech or ssml must be provided. The
15012	// plain text of the speech output. Mutually exclusive with ssml.
15013	TextToSpeech string `json:"textToSpeech,omitempty"`
15014
15015	// ForceSendFields is a list of field names (e.g. "DisplayText") to
15016	// unconditionally include in API requests. By default, fields with
15017	// empty values are omitted from API requests. However, any non-pointer,
15018	// non-interface field appearing in ForceSendFields will be sent to the
15019	// server regardless of whether the field is empty or not. This may be
15020	// used to include empty fields in Patch requests.
15021	ForceSendFields []string `json:"-"`
15022
15023	// NullFields is a list of field names (e.g. "DisplayText") to include
15024	// in API requests with the JSON null value. By default, fields with
15025	// empty values are omitted from API requests. However, any field with
15026	// an empty value appearing in NullFields will be sent to the server as
15027	// null. It is an error if a field in this list has a non-empty value.
15028	// This may be used to include null fields in Patch requests.
15029	NullFields []string `json:"-"`
15030}
15031
15032func (s *GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse) MarshalJSON() ([]byte, error) {
15033	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse
15034	raw := NoMethod(*s)
15035	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15036}
15037
15038// GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses: The
15039// collection of simple response candidates. This message in
15040// `QueryResult.fulfillment_messages` and
15041// `WebhookResponse.fulfillment_messages` should contain only one
15042// `SimpleResponse`.
15043type GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses struct {
15044	// SimpleResponses: Required. The list of simple responses.
15045	SimpleResponses []*GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse `json:"simpleResponses,omitempty"`
15046
15047	// ForceSendFields is a list of field names (e.g. "SimpleResponses") to
15048	// unconditionally include in API requests. By default, fields with
15049	// empty values are omitted from API requests. However, any non-pointer,
15050	// non-interface field appearing in ForceSendFields will be sent to the
15051	// server regardless of whether the field is empty or not. This may be
15052	// used to include empty fields in Patch requests.
15053	ForceSendFields []string `json:"-"`
15054
15055	// NullFields is a list of field names (e.g. "SimpleResponses") to
15056	// include in API requests with the JSON null value. By default, fields
15057	// with empty values are omitted from API requests. However, any field
15058	// with an empty value appearing in NullFields will be sent to the
15059	// server as null. It is an error if a field in this list has a
15060	// non-empty value. This may be used to include null fields in Patch
15061	// requests.
15062	NullFields []string `json:"-"`
15063}
15064
15065func (s *GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses) MarshalJSON() ([]byte, error) {
15066	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses
15067	raw := NoMethod(*s)
15068	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15069}
15070
15071// GoogleCloudDialogflowV2beta1IntentMessageSuggestion: The suggestion
15072// chip message that the user can tap to quickly post a reply to the
15073// conversation.
15074type GoogleCloudDialogflowV2beta1IntentMessageSuggestion struct {
15075	// Title: Required. The text shown the in the suggestion chip.
15076	Title string `json:"title,omitempty"`
15077
15078	// ForceSendFields is a list of field names (e.g. "Title") to
15079	// unconditionally include in API requests. By default, fields with
15080	// empty values are omitted from API requests. However, any non-pointer,
15081	// non-interface field appearing in ForceSendFields will be sent to the
15082	// server regardless of whether the field is empty or not. This may be
15083	// used to include empty fields in Patch requests.
15084	ForceSendFields []string `json:"-"`
15085
15086	// NullFields is a list of field names (e.g. "Title") to include in API
15087	// requests with the JSON null value. By default, fields with empty
15088	// values are omitted from API requests. However, any field with an
15089	// empty value appearing in NullFields will be sent to the server as
15090	// null. It is an error if a field in this list has a non-empty value.
15091	// This may be used to include null fields in Patch requests.
15092	NullFields []string `json:"-"`
15093}
15094
15095func (s *GoogleCloudDialogflowV2beta1IntentMessageSuggestion) MarshalJSON() ([]byte, error) {
15096	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageSuggestion
15097	raw := NoMethod(*s)
15098	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15099}
15100
15101// GoogleCloudDialogflowV2beta1IntentMessageSuggestions: The collection
15102// of suggestions.
15103type GoogleCloudDialogflowV2beta1IntentMessageSuggestions struct {
15104	// Suggestions: Required. The list of suggested replies.
15105	Suggestions []*GoogleCloudDialogflowV2beta1IntentMessageSuggestion `json:"suggestions,omitempty"`
15106
15107	// ForceSendFields is a list of field names (e.g. "Suggestions") to
15108	// unconditionally include in API requests. By default, fields with
15109	// empty values are omitted from API requests. However, any non-pointer,
15110	// non-interface field appearing in ForceSendFields will be sent to the
15111	// server regardless of whether the field is empty or not. This may be
15112	// used to include empty fields in Patch requests.
15113	ForceSendFields []string `json:"-"`
15114
15115	// NullFields is a list of field names (e.g. "Suggestions") to include
15116	// in API requests with the JSON null value. By default, fields with
15117	// empty values are omitted from API requests. However, any field with
15118	// an empty value appearing in NullFields will be sent to the server as
15119	// null. It is an error if a field in this list has a non-empty value.
15120	// This may be used to include null fields in Patch requests.
15121	NullFields []string `json:"-"`
15122}
15123
15124func (s *GoogleCloudDialogflowV2beta1IntentMessageSuggestions) MarshalJSON() ([]byte, error) {
15125	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageSuggestions
15126	raw := NoMethod(*s)
15127	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15128}
15129
15130// GoogleCloudDialogflowV2beta1IntentMessageTableCard: Table card for
15131// Actions on Google.
15132type GoogleCloudDialogflowV2beta1IntentMessageTableCard struct {
15133	// Buttons: Optional. List of buttons for the card.
15134	Buttons []*GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton `json:"buttons,omitempty"`
15135
15136	// ColumnProperties: Optional. Display properties for the columns in
15137	// this table.
15138	ColumnProperties []*GoogleCloudDialogflowV2beta1IntentMessageColumnProperties `json:"columnProperties,omitempty"`
15139
15140	// Image: Optional. Image which should be displayed on the card.
15141	Image *GoogleCloudDialogflowV2beta1IntentMessageImage `json:"image,omitempty"`
15142
15143	// Rows: Optional. Rows in this table of data.
15144	Rows []*GoogleCloudDialogflowV2beta1IntentMessageTableCardRow `json:"rows,omitempty"`
15145
15146	// Subtitle: Optional. Subtitle to the title.
15147	Subtitle string `json:"subtitle,omitempty"`
15148
15149	// Title: Required. Title of the card.
15150	Title string `json:"title,omitempty"`
15151
15152	// ForceSendFields is a list of field names (e.g. "Buttons") to
15153	// unconditionally include in API requests. By default, fields with
15154	// empty values are omitted from API requests. However, any non-pointer,
15155	// non-interface field appearing in ForceSendFields will be sent to the
15156	// server regardless of whether the field is empty or not. This may be
15157	// used to include empty fields in Patch requests.
15158	ForceSendFields []string `json:"-"`
15159
15160	// NullFields is a list of field names (e.g. "Buttons") to include in
15161	// API requests with the JSON null value. By default, fields with empty
15162	// values are omitted from API requests. However, any field with an
15163	// empty value appearing in NullFields will be sent to the server as
15164	// null. It is an error if a field in this list has a non-empty value.
15165	// This may be used to include null fields in Patch requests.
15166	NullFields []string `json:"-"`
15167}
15168
15169func (s *GoogleCloudDialogflowV2beta1IntentMessageTableCard) MarshalJSON() ([]byte, error) {
15170	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageTableCard
15171	raw := NoMethod(*s)
15172	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15173}
15174
15175// GoogleCloudDialogflowV2beta1IntentMessageTableCardCell: Cell of
15176// TableCardRow.
15177type GoogleCloudDialogflowV2beta1IntentMessageTableCardCell struct {
15178	// Text: Required. Text in this cell.
15179	Text string `json:"text,omitempty"`
15180
15181	// ForceSendFields is a list of field names (e.g. "Text") to
15182	// unconditionally include in API requests. By default, fields with
15183	// empty values are omitted from API requests. However, any non-pointer,
15184	// non-interface field appearing in ForceSendFields will be sent to the
15185	// server regardless of whether the field is empty or not. This may be
15186	// used to include empty fields in Patch requests.
15187	ForceSendFields []string `json:"-"`
15188
15189	// NullFields is a list of field names (e.g. "Text") to include in API
15190	// requests with the JSON null value. By default, fields with empty
15191	// values are omitted from API requests. However, any field with an
15192	// empty value appearing in NullFields will be sent to the server as
15193	// null. It is an error if a field in this list has a non-empty value.
15194	// This may be used to include null fields in Patch requests.
15195	NullFields []string `json:"-"`
15196}
15197
15198func (s *GoogleCloudDialogflowV2beta1IntentMessageTableCardCell) MarshalJSON() ([]byte, error) {
15199	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageTableCardCell
15200	raw := NoMethod(*s)
15201	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15202}
15203
15204// GoogleCloudDialogflowV2beta1IntentMessageTableCardRow: Row of
15205// TableCard.
15206type GoogleCloudDialogflowV2beta1IntentMessageTableCardRow struct {
15207	// Cells: Optional. List of cells that make up this row.
15208	Cells []*GoogleCloudDialogflowV2beta1IntentMessageTableCardCell `json:"cells,omitempty"`
15209
15210	// DividerAfter: Optional. Whether to add a visual divider after this
15211	// row.
15212	DividerAfter bool `json:"dividerAfter,omitempty"`
15213
15214	// ForceSendFields is a list of field names (e.g. "Cells") to
15215	// unconditionally include in API requests. By default, fields with
15216	// empty values are omitted from API requests. However, any non-pointer,
15217	// non-interface field appearing in ForceSendFields will be sent to the
15218	// server regardless of whether the field is empty or not. This may be
15219	// used to include empty fields in Patch requests.
15220	ForceSendFields []string `json:"-"`
15221
15222	// NullFields is a list of field names (e.g. "Cells") to include in API
15223	// requests with the JSON null value. By default, fields with empty
15224	// values are omitted from API requests. However, any field with an
15225	// empty value appearing in NullFields will be sent to the server as
15226	// null. It is an error if a field in this list has a non-empty value.
15227	// This may be used to include null fields in Patch requests.
15228	NullFields []string `json:"-"`
15229}
15230
15231func (s *GoogleCloudDialogflowV2beta1IntentMessageTableCardRow) MarshalJSON() ([]byte, error) {
15232	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageTableCardRow
15233	raw := NoMethod(*s)
15234	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15235}
15236
15237// GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio: Plays
15238// audio from a file in Telephony Gateway.
15239type GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio struct {
15240	// AudioUri: Required. URI to a Google Cloud Storage object containing
15241	// the audio to play, e.g., "gs://bucket/object". The object must
15242	// contain a single channel (mono) of linear PCM audio (2 bytes /
15243	// sample) at 8kHz. This object must be readable by the
15244	// `service-@gcp-sa-dialogflow.iam.gserviceaccount.com` service account
15245	// where is the number of the Telephony Gateway project (usually the
15246	// same as the Dialogflow agent project). If the Google Cloud Storage
15247	// bucket is in the Telephony Gateway project, this permission is added
15248	// by default when enabling the Dialogflow V2 API. For audio from other
15249	// sources, consider using the `TelephonySynthesizeSpeech` message with
15250	// SSML.
15251	AudioUri string `json:"audioUri,omitempty"`
15252
15253	// ForceSendFields is a list of field names (e.g. "AudioUri") to
15254	// unconditionally include in API requests. By default, fields with
15255	// empty values are omitted from API requests. However, any non-pointer,
15256	// non-interface field appearing in ForceSendFields will be sent to the
15257	// server regardless of whether the field is empty or not. This may be
15258	// used to include empty fields in Patch requests.
15259	ForceSendFields []string `json:"-"`
15260
15261	// NullFields is a list of field names (e.g. "AudioUri") to include in
15262	// API requests with the JSON null value. By default, fields with empty
15263	// values are omitted from API requests. However, any field with an
15264	// empty value appearing in NullFields will be sent to the server as
15265	// null. It is an error if a field in this list has a non-empty value.
15266	// This may be used to include null fields in Patch requests.
15267	NullFields []string `json:"-"`
15268}
15269
15270func (s *GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio) MarshalJSON() ([]byte, error) {
15271	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio
15272	raw := NoMethod(*s)
15273	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15274}
15275
15276// GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech:
15277// Synthesizes speech and plays back the synthesized audio to the caller
15278// in Telephony Gateway. Telephony Gateway takes the synthesizer
15279// settings from `DetectIntentResponse.output_audio_config` which can
15280// either be set at request-level or can come from the agent-level
15281// synthesizer config.
15282type GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech struct {
15283	// Ssml: The SSML to be synthesized. For more information, see SSML
15284	// (https://developers.google.com/actions/reference/ssml).
15285	Ssml string `json:"ssml,omitempty"`
15286
15287	// Text: The raw text to be synthesized.
15288	Text string `json:"text,omitempty"`
15289
15290	// ForceSendFields is a list of field names (e.g. "Ssml") to
15291	// unconditionally include in API requests. By default, fields with
15292	// empty values are omitted from API requests. However, any non-pointer,
15293	// non-interface field appearing in ForceSendFields will be sent to the
15294	// server regardless of whether the field is empty or not. This may be
15295	// used to include empty fields in Patch requests.
15296	ForceSendFields []string `json:"-"`
15297
15298	// NullFields is a list of field names (e.g. "Ssml") to include in API
15299	// requests with the JSON null value. By default, fields with empty
15300	// values are omitted from API requests. However, any field with an
15301	// empty value appearing in NullFields will be sent to the server as
15302	// null. It is an error if a field in this list has a non-empty value.
15303	// This may be used to include null fields in Patch requests.
15304	NullFields []string `json:"-"`
15305}
15306
15307func (s *GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech) MarshalJSON() ([]byte, error) {
15308	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech
15309	raw := NoMethod(*s)
15310	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15311}
15312
15313// GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall:
15314// Transfers the call in Telephony Gateway.
15315type GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall struct {
15316	// PhoneNumber: Required. The phone number to transfer the call to in
15317	// E.164 format (https://en.wikipedia.org/wiki/E.164). We currently only
15318	// allow transferring to US numbers (+1xxxyyyzzzz).
15319	PhoneNumber string `json:"phoneNumber,omitempty"`
15320
15321	// ForceSendFields is a list of field names (e.g. "PhoneNumber") to
15322	// unconditionally include in API requests. By default, fields with
15323	// empty values are omitted from API requests. However, any non-pointer,
15324	// non-interface field appearing in ForceSendFields will be sent to the
15325	// server regardless of whether the field is empty or not. This may be
15326	// used to include empty fields in Patch requests.
15327	ForceSendFields []string `json:"-"`
15328
15329	// NullFields is a list of field names (e.g. "PhoneNumber") to include
15330	// in API requests with the JSON null value. By default, fields with
15331	// empty values are omitted from API requests. However, any field with
15332	// an empty value appearing in NullFields will be sent to the server as
15333	// null. It is an error if a field in this list has a non-empty value.
15334	// This may be used to include null fields in Patch requests.
15335	NullFields []string `json:"-"`
15336}
15337
15338func (s *GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall) MarshalJSON() ([]byte, error) {
15339	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall
15340	raw := NoMethod(*s)
15341	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15342}
15343
15344// GoogleCloudDialogflowV2beta1IntentMessageText: The text response
15345// message.
15346type GoogleCloudDialogflowV2beta1IntentMessageText struct {
15347	// Text: Optional. The collection of the agent's responses.
15348	Text []string `json:"text,omitempty"`
15349
15350	// ForceSendFields is a list of field names (e.g. "Text") to
15351	// unconditionally include in API requests. By default, fields with
15352	// empty values are omitted from API requests. However, any non-pointer,
15353	// non-interface field appearing in ForceSendFields will be sent to the
15354	// server regardless of whether the field is empty or not. This may be
15355	// used to include empty fields in Patch requests.
15356	ForceSendFields []string `json:"-"`
15357
15358	// NullFields is a list of field names (e.g. "Text") to include in API
15359	// requests with the JSON null value. By default, fields with empty
15360	// values are omitted from API requests. However, any field with an
15361	// empty value appearing in NullFields will be sent to the server as
15362	// null. It is an error if a field in this list has a non-empty value.
15363	// This may be used to include null fields in Patch requests.
15364	NullFields []string `json:"-"`
15365}
15366
15367func (s *GoogleCloudDialogflowV2beta1IntentMessageText) MarshalJSON() ([]byte, error) {
15368	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageText
15369	raw := NoMethod(*s)
15370	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15371}
15372
15373// GoogleCloudDialogflowV2beta1IntentParameter: Represents intent
15374// parameters.
15375type GoogleCloudDialogflowV2beta1IntentParameter struct {
15376	// DefaultValue: Optional. The default value to use when the `value`
15377	// yields an empty result. Default values can be extracted from contexts
15378	// by using the following syntax: `#context_name.parameter_name`.
15379	DefaultValue string `json:"defaultValue,omitempty"`
15380
15381	// DisplayName: Required. The name of the parameter.
15382	DisplayName string `json:"displayName,omitempty"`
15383
15384	// EntityTypeDisplayName: Optional. The name of the entity type,
15385	// prefixed with `@`, that describes values of the parameter. If the
15386	// parameter is required, this must be provided.
15387	EntityTypeDisplayName string `json:"entityTypeDisplayName,omitempty"`
15388
15389	// IsList: Optional. Indicates whether the parameter represents a list
15390	// of values.
15391	IsList bool `json:"isList,omitempty"`
15392
15393	// Mandatory: Optional. Indicates whether the parameter is required.
15394	// That is, whether the intent cannot be completed without collecting
15395	// the parameter value.
15396	Mandatory bool `json:"mandatory,omitempty"`
15397
15398	// Name: The unique identifier of this parameter.
15399	Name string `json:"name,omitempty"`
15400
15401	// Prompts: Optional. The collection of prompts that the agent can
15402	// present to the user in order to collect a value for the parameter.
15403	Prompts []string `json:"prompts,omitempty"`
15404
15405	// Value: Optional. The definition of the parameter value. It can be: -
15406	// a constant string, - a parameter value defined as `$parameter_name`,
15407	// - an original parameter value defined as `$parameter_name.original`,
15408	// - a parameter value from some context defined as
15409	// `#context_name.parameter_name`.
15410	Value string `json:"value,omitempty"`
15411
15412	// ForceSendFields is a list of field names (e.g. "DefaultValue") to
15413	// unconditionally include in API requests. By default, fields with
15414	// empty values are omitted from API requests. However, any non-pointer,
15415	// non-interface field appearing in ForceSendFields will be sent to the
15416	// server regardless of whether the field is empty or not. This may be
15417	// used to include empty fields in Patch requests.
15418	ForceSendFields []string `json:"-"`
15419
15420	// NullFields is a list of field names (e.g. "DefaultValue") to include
15421	// in API requests with the JSON null value. By default, fields with
15422	// empty values are omitted from API requests. However, any field with
15423	// an empty value appearing in NullFields will be sent to the server as
15424	// null. It is an error if a field in this list has a non-empty value.
15425	// This may be used to include null fields in Patch requests.
15426	NullFields []string `json:"-"`
15427}
15428
15429func (s *GoogleCloudDialogflowV2beta1IntentParameter) MarshalJSON() ([]byte, error) {
15430	type NoMethod GoogleCloudDialogflowV2beta1IntentParameter
15431	raw := NoMethod(*s)
15432	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15433}
15434
15435// GoogleCloudDialogflowV2beta1IntentTrainingPhrase: Represents an
15436// example that the agent is trained on.
15437type GoogleCloudDialogflowV2beta1IntentTrainingPhrase struct {
15438	// Name: Output only. The unique identifier of this training phrase.
15439	Name string `json:"name,omitempty"`
15440
15441	// Parts: Required. The ordered list of training phrase parts. The parts
15442	// are concatenated in order to form the training phrase. Note: The API
15443	// does not automatically annotate training phrases like the Dialogflow
15444	// Console does. Note: Do not forget to include whitespace at part
15445	// boundaries, so the training phrase is well formatted when the parts
15446	// are concatenated. If the training phrase does not need to be
15447	// annotated with parameters, you just need a single part with only the
15448	// Part.text field set. If you want to annotate the training phrase, you
15449	// must create multiple parts, where the fields of each part are
15450	// populated in one of two ways: - `Part.text` is set to a part of the
15451	// phrase that has no parameters. - `Part.text` is set to a part of the
15452	// phrase that you want to annotate, and the `entity_type`, `alias`, and
15453	// `user_defined` fields are all set.
15454	Parts []*GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart `json:"parts,omitempty"`
15455
15456	// TimesAddedCount: Optional. Indicates how many times this example was
15457	// added to the intent. Each time a developer adds an existing sample by
15458	// editing an intent or training, this counter is increased.
15459	TimesAddedCount int64 `json:"timesAddedCount,omitempty"`
15460
15461	// Type: Required. The type of the training phrase.
15462	//
15463	// Possible values:
15464	//   "TYPE_UNSPECIFIED" - Not specified. This value should never be
15465	// used.
15466	//   "EXAMPLE" - Examples do not contain @-prefixed entity type names,
15467	// but example parts can be annotated with entity types.
15468	//   "TEMPLATE" - Templates are not annotated with entity types, but
15469	// they can contain @-prefixed entity type names as substrings. Template
15470	// mode has been deprecated. Example mode is the only supported way to
15471	// create new training phrases. If you have existing training phrases
15472	// that you've created in template mode, those will continue to work.
15473	Type string `json:"type,omitempty"`
15474
15475	// ForceSendFields is a list of field names (e.g. "Name") to
15476	// unconditionally include in API requests. By default, fields with
15477	// empty values are omitted from API requests. However, any non-pointer,
15478	// non-interface field appearing in ForceSendFields will be sent to the
15479	// server regardless of whether the field is empty or not. This may be
15480	// used to include empty fields in Patch requests.
15481	ForceSendFields []string `json:"-"`
15482
15483	// NullFields is a list of field names (e.g. "Name") to include in API
15484	// requests with the JSON null value. By default, fields with empty
15485	// values are omitted from API requests. However, any field with an
15486	// empty value appearing in NullFields will be sent to the server as
15487	// null. It is an error if a field in this list has a non-empty value.
15488	// This may be used to include null fields in Patch requests.
15489	NullFields []string `json:"-"`
15490}
15491
15492func (s *GoogleCloudDialogflowV2beta1IntentTrainingPhrase) MarshalJSON() ([]byte, error) {
15493	type NoMethod GoogleCloudDialogflowV2beta1IntentTrainingPhrase
15494	raw := NoMethod(*s)
15495	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15496}
15497
15498// GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart: Represents a
15499// part of a training phrase.
15500type GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart struct {
15501	// Alias: Optional. The parameter name for the value extracted from the
15502	// annotated part of the example. This field is required for annotated
15503	// parts of the training phrase.
15504	Alias string `json:"alias,omitempty"`
15505
15506	// EntityType: Optional. The entity type name prefixed with `@`. This
15507	// field is required for annotated parts of the training phrase.
15508	EntityType string `json:"entityType,omitempty"`
15509
15510	// Text: Required. The text for this part.
15511	Text string `json:"text,omitempty"`
15512
15513	// UserDefined: Optional. Indicates whether the text was manually
15514	// annotated. This field is set to true when the Dialogflow Console is
15515	// used to manually annotate the part. When creating an annotated part
15516	// with the API, you must set this to true.
15517	UserDefined bool `json:"userDefined,omitempty"`
15518
15519	// ForceSendFields is a list of field names (e.g. "Alias") to
15520	// unconditionally include in API requests. By default, fields with
15521	// empty values are omitted from API requests. However, any non-pointer,
15522	// non-interface field appearing in ForceSendFields will be sent to the
15523	// server regardless of whether the field is empty or not. This may be
15524	// used to include empty fields in Patch requests.
15525	ForceSendFields []string `json:"-"`
15526
15527	// NullFields is a list of field names (e.g. "Alias") to include in API
15528	// requests with the JSON null value. By default, fields with empty
15529	// values are omitted from API requests. However, any field with an
15530	// empty value appearing in NullFields will be sent to the server as
15531	// null. It is an error if a field in this list has a non-empty value.
15532	// This may be used to include null fields in Patch requests.
15533	NullFields []string `json:"-"`
15534}
15535
15536func (s *GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart) MarshalJSON() ([]byte, error) {
15537	type NoMethod GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart
15538	raw := NoMethod(*s)
15539	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15540}
15541
15542// GoogleCloudDialogflowV2beta1KnowledgeAnswers: Represents the result
15543// of querying a Knowledge base.
15544type GoogleCloudDialogflowV2beta1KnowledgeAnswers struct {
15545	// Answers: A list of answers from Knowledge Connector.
15546	Answers []*GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer `json:"answers,omitempty"`
15547
15548	// ForceSendFields is a list of field names (e.g. "Answers") to
15549	// unconditionally include in API requests. By default, fields with
15550	// empty values are omitted from API requests. However, any non-pointer,
15551	// non-interface field appearing in ForceSendFields will be sent to the
15552	// server regardless of whether the field is empty or not. This may be
15553	// used to include empty fields in Patch requests.
15554	ForceSendFields []string `json:"-"`
15555
15556	// NullFields is a list of field names (e.g. "Answers") to include in
15557	// API requests with the JSON null value. By default, fields with empty
15558	// values are omitted from API requests. However, any field with an
15559	// empty value appearing in NullFields will be sent to the server as
15560	// null. It is an error if a field in this list has a non-empty value.
15561	// This may be used to include null fields in Patch requests.
15562	NullFields []string `json:"-"`
15563}
15564
15565func (s *GoogleCloudDialogflowV2beta1KnowledgeAnswers) MarshalJSON() ([]byte, error) {
15566	type NoMethod GoogleCloudDialogflowV2beta1KnowledgeAnswers
15567	raw := NoMethod(*s)
15568	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15569}
15570
15571// GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer: An answer from
15572// Knowledge Connector.
15573type GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer struct {
15574	// Answer: The piece of text from the `source` knowledge base document
15575	// that answers this conversational query.
15576	Answer string `json:"answer,omitempty"`
15577
15578	// FaqQuestion: The corresponding FAQ question if the answer was
15579	// extracted from a FAQ Document, empty otherwise.
15580	FaqQuestion string `json:"faqQuestion,omitempty"`
15581
15582	// MatchConfidence: The system's confidence score that this Knowledge
15583	// answer is a good match for this conversational query. The range is
15584	// from 0.0 (completely uncertain) to 1.0 (completely certain). Note:
15585	// The confidence score is likely to vary somewhat (possibly even for
15586	// identical requests), as the underlying model is under constant
15587	// improvement. It may be deprecated in the future. We recommend using
15588	// `match_confidence_level` which should be generally more stable.
15589	MatchConfidence float64 `json:"matchConfidence,omitempty"`
15590
15591	// MatchConfidenceLevel: The system's confidence level that this
15592	// knowledge answer is a good match for this conversational query. NOTE:
15593	// The confidence level for a given `` pair may change without notice,
15594	// as it depends on models that are constantly being improved. However,
15595	// it will change less frequently than the confidence score below, and
15596	// should be preferred for referencing the quality of an answer.
15597	//
15598	// Possible values:
15599	//   "MATCH_CONFIDENCE_LEVEL_UNSPECIFIED" - Not specified.
15600	//   "LOW" - Indicates that the confidence is low.
15601	//   "MEDIUM" - Indicates our confidence is medium.
15602	//   "HIGH" - Indicates our confidence is high.
15603	MatchConfidenceLevel string `json:"matchConfidenceLevel,omitempty"`
15604
15605	// Source: Indicates which Knowledge Document this answer was extracted
15606	// from. Format: `projects//knowledgeBases//documents/`.
15607	Source string `json:"source,omitempty"`
15608
15609	// ForceSendFields is a list of field names (e.g. "Answer") to
15610	// unconditionally include in API requests. By default, fields with
15611	// empty values are omitted from API requests. However, any non-pointer,
15612	// non-interface field appearing in ForceSendFields will be sent to the
15613	// server regardless of whether the field is empty or not. This may be
15614	// used to include empty fields in Patch requests.
15615	ForceSendFields []string `json:"-"`
15616
15617	// NullFields is a list of field names (e.g. "Answer") to include in API
15618	// requests with the JSON null value. By default, fields with empty
15619	// values are omitted from API requests. However, any field with an
15620	// empty value appearing in NullFields will be sent to the server as
15621	// null. It is an error if a field in this list has a non-empty value.
15622	// This may be used to include null fields in Patch requests.
15623	NullFields []string `json:"-"`
15624}
15625
15626func (s *GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer) MarshalJSON() ([]byte, error) {
15627	type NoMethod GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer
15628	raw := NoMethod(*s)
15629	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15630}
15631
15632func (s *GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer) UnmarshalJSON(data []byte) error {
15633	type NoMethod GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer
15634	var s1 struct {
15635		MatchConfidence gensupport.JSONFloat64 `json:"matchConfidence"`
15636		*NoMethod
15637	}
15638	s1.NoMethod = (*NoMethod)(s)
15639	if err := json.Unmarshal(data, &s1); err != nil {
15640		return err
15641	}
15642	s.MatchConfidence = float64(s1.MatchConfidence)
15643	return nil
15644}
15645
15646// GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata: Metadata in
15647// google::longrunning::Operation for Knowledge operations.
15648type GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata struct {
15649	// State: Required. Output only. The current state of this operation.
15650	//
15651	// Possible values:
15652	//   "STATE_UNSPECIFIED" - State unspecified.
15653	//   "PENDING" - The operation has been created.
15654	//   "RUNNING" - The operation is currently running.
15655	//   "DONE" - The operation is done, either cancelled or completed.
15656	State string `json:"state,omitempty"`
15657
15658	// ForceSendFields is a list of field names (e.g. "State") to
15659	// unconditionally include in API requests. By default, fields with
15660	// empty values are omitted from API requests. However, any non-pointer,
15661	// non-interface field appearing in ForceSendFields will be sent to the
15662	// server regardless of whether the field is empty or not. This may be
15663	// used to include empty fields in Patch requests.
15664	ForceSendFields []string `json:"-"`
15665
15666	// NullFields is a list of field names (e.g. "State") to include in API
15667	// requests with the JSON null value. By default, fields with empty
15668	// values are omitted from API requests. However, any field with an
15669	// empty value appearing in NullFields will be sent to the server as
15670	// null. It is an error if a field in this list has a non-empty value.
15671	// This may be used to include null fields in Patch requests.
15672	NullFields []string `json:"-"`
15673}
15674
15675func (s *GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata) MarshalJSON() ([]byte, error) {
15676	type NoMethod GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata
15677	raw := NoMethod(*s)
15678	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15679}
15680
15681// GoogleCloudDialogflowV2beta1Message: Represents a message posted into
15682// a conversation.
15683type GoogleCloudDialogflowV2beta1Message struct {
15684	// Content: Required. The message content.
15685	Content string `json:"content,omitempty"`
15686
15687	// CreateTime: Output only. The time when the message was created in
15688	// Contact Center AI.
15689	CreateTime string `json:"createTime,omitempty"`
15690
15691	// LanguageCode: Optional. The message language. This should be a BCP-47
15692	// (https://www.rfc-editor.org/rfc/bcp/bcp47.txt) language tag. Example:
15693	// "en-US".
15694	LanguageCode string `json:"languageCode,omitempty"`
15695
15696	// MessageAnnotation: Output only. The annotation for the message.
15697	MessageAnnotation *GoogleCloudDialogflowV2beta1MessageAnnotation `json:"messageAnnotation,omitempty"`
15698
15699	// Name: Optional. The unique identifier of the message. Format:
15700	// `projects//locations//conversations//messages/`.
15701	Name string `json:"name,omitempty"`
15702
15703	// Participant: Output only. The participant that sends this message.
15704	Participant string `json:"participant,omitempty"`
15705
15706	// ParticipantRole: Output only. The role of the participant.
15707	//
15708	// Possible values:
15709	//   "ROLE_UNSPECIFIED" - Participant role not set.
15710	//   "HUMAN_AGENT" - Participant is a human agent.
15711	//   "AUTOMATED_AGENT" - Participant is an automated agent, such as a
15712	// Dialogflow agent.
15713	//   "END_USER" - Participant is an end user that has called or chatted
15714	// with Dialogflow services.
15715	ParticipantRole string `json:"participantRole,omitempty"`
15716
15717	// SendTime: Optional. The time when the message was sent.
15718	SendTime string `json:"sendTime,omitempty"`
15719
15720	// SentimentAnalysis: Output only. The sentiment analysis result for the
15721	// message.
15722	SentimentAnalysis *GoogleCloudDialogflowV2beta1SentimentAnalysisResult `json:"sentimentAnalysis,omitempty"`
15723
15724	// ForceSendFields is a list of field names (e.g. "Content") to
15725	// unconditionally include in API requests. By default, fields with
15726	// empty values are omitted from API requests. However, any non-pointer,
15727	// non-interface field appearing in ForceSendFields will be sent to the
15728	// server regardless of whether the field is empty or not. This may be
15729	// used to include empty fields in Patch requests.
15730	ForceSendFields []string `json:"-"`
15731
15732	// NullFields is a list of field names (e.g. "Content") to include in
15733	// API requests with the JSON null value. By default, fields with empty
15734	// values are omitted from API requests. However, any field with an
15735	// empty value appearing in NullFields will be sent to the server as
15736	// null. It is an error if a field in this list has a non-empty value.
15737	// This may be used to include null fields in Patch requests.
15738	NullFields []string `json:"-"`
15739}
15740
15741func (s *GoogleCloudDialogflowV2beta1Message) MarshalJSON() ([]byte, error) {
15742	type NoMethod GoogleCloudDialogflowV2beta1Message
15743	raw := NoMethod(*s)
15744	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15745}
15746
15747// GoogleCloudDialogflowV2beta1MessageAnnotation: Represents the result
15748// of annotation for the message.
15749type GoogleCloudDialogflowV2beta1MessageAnnotation struct {
15750	// ContainEntities: Required. Indicates whether the text message
15751	// contains entities.
15752	ContainEntities bool `json:"containEntities,omitempty"`
15753
15754	// Parts: Optional. The collection of annotated message parts ordered by
15755	// their position in the message. You can recover the annotated message
15756	// by concatenating [AnnotatedMessagePart.text].
15757	Parts []*GoogleCloudDialogflowV2beta1AnnotatedMessagePart `json:"parts,omitempty"`
15758
15759	// ForceSendFields is a list of field names (e.g. "ContainEntities") to
15760	// unconditionally include in API requests. By default, fields with
15761	// empty values are omitted from API requests. However, any non-pointer,
15762	// non-interface field appearing in ForceSendFields will be sent to the
15763	// server regardless of whether the field is empty or not. This may be
15764	// used to include empty fields in Patch requests.
15765	ForceSendFields []string `json:"-"`
15766
15767	// NullFields is a list of field names (e.g. "ContainEntities") to
15768	// include in API requests with the JSON null value. By default, fields
15769	// with empty values are omitted from API requests. However, any field
15770	// with an empty value appearing in NullFields will be sent to the
15771	// server as null. It is an error if a field in this list has a
15772	// non-empty value. This may be used to include null fields in Patch
15773	// requests.
15774	NullFields []string `json:"-"`
15775}
15776
15777func (s *GoogleCloudDialogflowV2beta1MessageAnnotation) MarshalJSON() ([]byte, error) {
15778	type NoMethod GoogleCloudDialogflowV2beta1MessageAnnotation
15779	raw := NoMethod(*s)
15780	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15781}
15782
15783// GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest: Represents
15784// the contents of the original request that was passed to the
15785// `[Streaming]DetectIntent` call.
15786type GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest struct {
15787	// Payload: Optional. This field is set to the value of the
15788	// `QueryParameters.payload` field passed in the request. Some
15789	// integrations that query a Dialogflow agent may provide additional
15790	// information in the payload. In particular, for the Dialogflow Phone
15791	// Gateway integration, this field has the form: { "telephony": {
15792	// "caller_id": "+18558363987" } } Note: The caller ID field
15793	// (`caller_id`) will be redacted for Trial Edition agents and populated
15794	// with the caller ID in E.164 format
15795	// (https://en.wikipedia.org/wiki/E.164) for Essentials Edition agents.
15796	Payload googleapi.RawMessage `json:"payload,omitempty"`
15797
15798	// Source: The source of this request, e.g., `google`, `facebook`,
15799	// `slack`. It is set by Dialogflow-owned servers.
15800	Source string `json:"source,omitempty"`
15801
15802	// Version: Optional. The version of the protocol used for this request.
15803	// This field is AoG-specific.
15804	Version string `json:"version,omitempty"`
15805
15806	// ForceSendFields is a list of field names (e.g. "Payload") to
15807	// unconditionally include in API requests. By default, fields with
15808	// empty values are omitted from API requests. However, any non-pointer,
15809	// non-interface field appearing in ForceSendFields will be sent to the
15810	// server regardless of whether the field is empty or not. This may be
15811	// used to include empty fields in Patch requests.
15812	ForceSendFields []string `json:"-"`
15813
15814	// NullFields is a list of field names (e.g. "Payload") to include in
15815	// API requests with the JSON null value. By default, fields with empty
15816	// values are omitted from API requests. However, any field with an
15817	// empty value appearing in NullFields will be sent to the server as
15818	// null. It is an error if a field in this list has a non-empty value.
15819	// This may be used to include null fields in Patch requests.
15820	NullFields []string `json:"-"`
15821}
15822
15823func (s *GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest) MarshalJSON() ([]byte, error) {
15824	type NoMethod GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest
15825	raw := NoMethod(*s)
15826	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15827}
15828
15829// GoogleCloudDialogflowV2beta1QueryResult: Represents the result of
15830// conversational query or event processing.
15831type GoogleCloudDialogflowV2beta1QueryResult struct {
15832	// Action: The action name from the matched intent.
15833	Action string `json:"action,omitempty"`
15834
15835	// AllRequiredParamsPresent: This field is set to: - `false` if the
15836	// matched intent has required parameters and not all of the required
15837	// parameter values have been collected. - `true` if all required
15838	// parameter values have been collected, or if the matched intent
15839	// doesn't contain any required parameters.
15840	AllRequiredParamsPresent bool `json:"allRequiredParamsPresent,omitempty"`
15841
15842	// CancelsSlotFilling: Indicates whether the conversational query
15843	// triggers a cancellation for slot filling.
15844	CancelsSlotFilling bool `json:"cancelsSlotFilling,omitempty"`
15845
15846	// DiagnosticInfo: Free-form diagnostic information for the associated
15847	// detect intent request. The fields of this data can change without
15848	// notice, so you should not write code that depends on its structure.
15849	// The data may contain: - webhook call latency - webhook errors
15850	DiagnosticInfo googleapi.RawMessage `json:"diagnosticInfo,omitempty"`
15851
15852	// FulfillmentMessages: The collection of rich messages to present to
15853	// the user.
15854	FulfillmentMessages []*GoogleCloudDialogflowV2beta1IntentMessage `json:"fulfillmentMessages,omitempty"`
15855
15856	// FulfillmentText: The text to be pronounced to the user or shown on
15857	// the screen. Note: This is a legacy field, `fulfillment_messages`
15858	// should be preferred.
15859	FulfillmentText string `json:"fulfillmentText,omitempty"`
15860
15861	// Intent: The intent that matched the conversational query. Some, not
15862	// all fields are filled in this message, including but not limited to:
15863	// `name`, `display_name`, `end_interaction` and `is_fallback`.
15864	Intent *GoogleCloudDialogflowV2beta1Intent `json:"intent,omitempty"`
15865
15866	// IntentDetectionConfidence: The intent detection confidence. Values
15867	// range from 0.0 (completely uncertain) to 1.0 (completely certain).
15868	// This value is for informational purpose only and is only used to help
15869	// match the best intent within the classification threshold. This value
15870	// may change for the same end-user expression at any time due to a
15871	// model retraining or change in implementation. If there are `multiple
15872	// knowledge_answers` messages, this value is set to the greatest
15873	// `knowledgeAnswers.match_confidence` value in the list.
15874	IntentDetectionConfidence float64 `json:"intentDetectionConfidence,omitempty"`
15875
15876	// KnowledgeAnswers: The result from Knowledge Connector (if any),
15877	// ordered by decreasing `KnowledgeAnswers.match_confidence`.
15878	KnowledgeAnswers *GoogleCloudDialogflowV2beta1KnowledgeAnswers `json:"knowledgeAnswers,omitempty"`
15879
15880	// LanguageCode: The language that was triggered during intent
15881	// detection. See Language Support
15882	// (https://cloud.google.com/dialogflow/docs/reference/language) for a
15883	// list of the currently supported language codes.
15884	LanguageCode string `json:"languageCode,omitempty"`
15885
15886	// OutputContexts: The collection of output contexts. If applicable,
15887	// `output_contexts.parameters` contains entries with name `.original`
15888	// containing the original parameter values before the query.
15889	OutputContexts []*GoogleCloudDialogflowV2beta1Context `json:"outputContexts,omitempty"`
15890
15891	// Parameters: The collection of extracted parameters. Depending on your
15892	// protocol or client library language, this is a map, associative
15893	// array, symbol table, dictionary, or JSON object composed of a
15894	// collection of (MapKey, MapValue) pairs: - MapKey type: string -
15895	// MapKey value: parameter name - MapValue type: - If parameter's entity
15896	// type is a composite entity: map - Else: depending on parameter value
15897	// type, could be one of string, number, boolean, null, list or map -
15898	// MapValue value: - If parameter's entity type is a composite entity:
15899	// map from composite entity property names to property values - Else:
15900	// parameter value
15901	Parameters googleapi.RawMessage `json:"parameters,omitempty"`
15902
15903	// QueryText: The original conversational query text: - If natural
15904	// language text was provided as input, `query_text` contains a copy of
15905	// the input. - If natural language speech audio was provided as input,
15906	// `query_text` contains the speech recognition result. If speech
15907	// recognizer produced multiple alternatives, a particular one is
15908	// picked. - If automatic spell correction is enabled, `query_text` will
15909	// contain the corrected user input.
15910	QueryText string `json:"queryText,omitempty"`
15911
15912	// SentimentAnalysisResult: The sentiment analysis result, which depends
15913	// on the `sentiment_analysis_request_config` specified in the request.
15914	SentimentAnalysisResult *GoogleCloudDialogflowV2beta1SentimentAnalysisResult `json:"sentimentAnalysisResult,omitempty"`
15915
15916	// SpeechRecognitionConfidence: The Speech recognition confidence
15917	// between 0.0 and 1.0. A higher number indicates an estimated greater
15918	// likelihood that the recognized words are correct. The default of 0.0
15919	// is a sentinel value indicating that confidence was not set. This
15920	// field is not guaranteed to be accurate or set. In particular this
15921	// field isn't set for StreamingDetectIntent since the streaming
15922	// endpoint has separate confidence estimates per portion of the audio
15923	// in StreamingRecognitionResult.
15924	SpeechRecognitionConfidence float64 `json:"speechRecognitionConfidence,omitempty"`
15925
15926	// WebhookPayload: If the query was fulfilled by a webhook call, this
15927	// field is set to the value of the `payload` field returned in the
15928	// webhook response.
15929	WebhookPayload googleapi.RawMessage `json:"webhookPayload,omitempty"`
15930
15931	// WebhookSource: If the query was fulfilled by a webhook call, this
15932	// field is set to the value of the `source` field returned in the
15933	// webhook response.
15934	WebhookSource string `json:"webhookSource,omitempty"`
15935
15936	// ForceSendFields is a list of field names (e.g. "Action") to
15937	// unconditionally include in API requests. By default, fields with
15938	// empty values are omitted from API requests. However, any non-pointer,
15939	// non-interface field appearing in ForceSendFields will be sent to the
15940	// server regardless of whether the field is empty or not. This may be
15941	// used to include empty fields in Patch requests.
15942	ForceSendFields []string `json:"-"`
15943
15944	// NullFields is a list of field names (e.g. "Action") to include in API
15945	// requests with the JSON null value. By default, fields with empty
15946	// values are omitted from API requests. However, any field with an
15947	// empty value appearing in NullFields will be sent to the server as
15948	// null. It is an error if a field in this list has a non-empty value.
15949	// This may be used to include null fields in Patch requests.
15950	NullFields []string `json:"-"`
15951}
15952
15953func (s *GoogleCloudDialogflowV2beta1QueryResult) MarshalJSON() ([]byte, error) {
15954	type NoMethod GoogleCloudDialogflowV2beta1QueryResult
15955	raw := NoMethod(*s)
15956	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15957}
15958
15959func (s *GoogleCloudDialogflowV2beta1QueryResult) UnmarshalJSON(data []byte) error {
15960	type NoMethod GoogleCloudDialogflowV2beta1QueryResult
15961	var s1 struct {
15962		IntentDetectionConfidence   gensupport.JSONFloat64 `json:"intentDetectionConfidence"`
15963		SpeechRecognitionConfidence gensupport.JSONFloat64 `json:"speechRecognitionConfidence"`
15964		*NoMethod
15965	}
15966	s1.NoMethod = (*NoMethod)(s)
15967	if err := json.Unmarshal(data, &s1); err != nil {
15968		return err
15969	}
15970	s.IntentDetectionConfidence = float64(s1.IntentDetectionConfidence)
15971	s.SpeechRecognitionConfidence = float64(s1.SpeechRecognitionConfidence)
15972	return nil
15973}
15974
15975// GoogleCloudDialogflowV2beta1Sentiment: The sentiment, such as
15976// positive/negative feeling or association, for a unit of analysis,
15977// such as the query text.
15978type GoogleCloudDialogflowV2beta1Sentiment struct {
15979	// Magnitude: A non-negative number in the [0, +inf) range, which
15980	// represents the absolute magnitude of sentiment, regardless of score
15981	// (positive or negative).
15982	Magnitude float64 `json:"magnitude,omitempty"`
15983
15984	// Score: Sentiment score between -1.0 (negative sentiment) and 1.0
15985	// (positive sentiment).
15986	Score float64 `json:"score,omitempty"`
15987
15988	// ForceSendFields is a list of field names (e.g. "Magnitude") to
15989	// unconditionally include in API requests. By default, fields with
15990	// empty values are omitted from API requests. However, any non-pointer,
15991	// non-interface field appearing in ForceSendFields will be sent to the
15992	// server regardless of whether the field is empty or not. This may be
15993	// used to include empty fields in Patch requests.
15994	ForceSendFields []string `json:"-"`
15995
15996	// NullFields is a list of field names (e.g. "Magnitude") to include in
15997	// API requests with the JSON null value. By default, fields with empty
15998	// values are omitted from API requests. However, any field with an
15999	// empty value appearing in NullFields will be sent to the server as
16000	// null. It is an error if a field in this list has a non-empty value.
16001	// This may be used to include null fields in Patch requests.
16002	NullFields []string `json:"-"`
16003}
16004
16005func (s *GoogleCloudDialogflowV2beta1Sentiment) MarshalJSON() ([]byte, error) {
16006	type NoMethod GoogleCloudDialogflowV2beta1Sentiment
16007	raw := NoMethod(*s)
16008	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16009}
16010
16011func (s *GoogleCloudDialogflowV2beta1Sentiment) UnmarshalJSON(data []byte) error {
16012	type NoMethod GoogleCloudDialogflowV2beta1Sentiment
16013	var s1 struct {
16014		Magnitude gensupport.JSONFloat64 `json:"magnitude"`
16015		Score     gensupport.JSONFloat64 `json:"score"`
16016		*NoMethod
16017	}
16018	s1.NoMethod = (*NoMethod)(s)
16019	if err := json.Unmarshal(data, &s1); err != nil {
16020		return err
16021	}
16022	s.Magnitude = float64(s1.Magnitude)
16023	s.Score = float64(s1.Score)
16024	return nil
16025}
16026
16027// GoogleCloudDialogflowV2beta1SentimentAnalysisResult: The result of
16028// sentiment analysis. Sentiment analysis inspects user input and
16029// identifies the prevailing subjective opinion, especially to determine
16030// a user's attitude as positive, negative, or neutral. For
16031// Participants.DetectIntent, it needs to be configured in
16032// DetectIntentRequest.query_params. For
16033// Participants.StreamingDetectIntent, it needs to be configured in
16034// StreamingDetectIntentRequest.query_params. And for
16035// Participants.AnalyzeContent and Participants.StreamingAnalyzeContent,
16036// it needs to be configured in
16037// ConversationProfile.human_agent_assistant_config
16038type GoogleCloudDialogflowV2beta1SentimentAnalysisResult struct {
16039	// QueryTextSentiment: The sentiment analysis result for `query_text`.
16040	QueryTextSentiment *GoogleCloudDialogflowV2beta1Sentiment `json:"queryTextSentiment,omitempty"`
16041
16042	// ForceSendFields is a list of field names (e.g. "QueryTextSentiment")
16043	// to unconditionally include in API requests. By default, fields with
16044	// empty values are omitted from API requests. However, any non-pointer,
16045	// non-interface field appearing in ForceSendFields will be sent to the
16046	// server regardless of whether the field is empty or not. This may be
16047	// used to include empty fields in Patch requests.
16048	ForceSendFields []string `json:"-"`
16049
16050	// NullFields is a list of field names (e.g. "QueryTextSentiment") to
16051	// include in API requests with the JSON null value. By default, fields
16052	// with empty values are omitted from API requests. However, any field
16053	// with an empty value appearing in NullFields will be sent to the
16054	// server as null. It is an error if a field in this list has a
16055	// non-empty value. This may be used to include null fields in Patch
16056	// requests.
16057	NullFields []string `json:"-"`
16058}
16059
16060func (s *GoogleCloudDialogflowV2beta1SentimentAnalysisResult) MarshalJSON() ([]byte, error) {
16061	type NoMethod GoogleCloudDialogflowV2beta1SentimentAnalysisResult
16062	raw := NoMethod(*s)
16063	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16064}
16065
16066// GoogleCloudDialogflowV2beta1SessionEntityType: A session represents a
16067// conversation between a Dialogflow agent and an end-user. You can
16068// create special entities, called session entities, during a session.
16069// Session entities can extend or replace custom entity types and only
16070// exist during the session that they were created for. All session
16071// data, including session entities, is stored by Dialogflow for 20
16072// minutes. For more information, see the session entity guide
16073// (https://cloud.google.com/dialogflow/docs/entities-session).
16074type GoogleCloudDialogflowV2beta1SessionEntityType struct {
16075	// Entities: Required. The collection of entities associated with this
16076	// session entity type.
16077	Entities []*GoogleCloudDialogflowV2beta1EntityTypeEntity `json:"entities,omitempty"`
16078
16079	// EntityOverrideMode: Required. Indicates whether the additional data
16080	// should override or supplement the custom entity type definition.
16081	//
16082	// Possible values:
16083	//   "ENTITY_OVERRIDE_MODE_UNSPECIFIED" - Not specified. This value
16084	// should be never used.
16085	//   "ENTITY_OVERRIDE_MODE_OVERRIDE" - The collection of session
16086	// entities overrides the collection of entities in the corresponding
16087	// custom entity type.
16088	//   "ENTITY_OVERRIDE_MODE_SUPPLEMENT" - The collection of session
16089	// entities extends the collection of entities in the corresponding
16090	// custom entity type. Note: Even in this override mode calls to
16091	// `ListSessionEntityTypes`, `GetSessionEntityType`,
16092	// `CreateSessionEntityType` and `UpdateSessionEntityType` only return
16093	// the additional entities added in this session entity type. If you
16094	// want to get the supplemented list, please call
16095	// EntityTypes.GetEntityType on the custom entity type and merge.
16096	EntityOverrideMode string `json:"entityOverrideMode,omitempty"`
16097
16098	// Name: Required. The unique identifier of this session entity type.
16099	// Supported formats: - `projects//agent/sessions//entityTypes/` -
16100	// `projects//locations//agent/sessions//entityTypes/` -
16101	// `projects//agent/environments//users//sessions//entityTypes/` -
16102	// `projects//locations//agent/environments/
16103	// /users//sessions//entityTypes/` If `Location ID` is not specified we
16104	// assume default 'us' location. If `Environment ID` is not specified,
16105	// we assume default 'draft' environment. If `User ID` is not specified,
16106	// we assume default '-' user. `` must be the display name of an
16107	// existing entity type in the same agent that will be overridden or
16108	// supplemented.
16109	Name string `json:"name,omitempty"`
16110
16111	// ForceSendFields is a list of field names (e.g. "Entities") to
16112	// unconditionally include in API requests. By default, fields with
16113	// empty values are omitted from API requests. However, any non-pointer,
16114	// non-interface field appearing in ForceSendFields will be sent to the
16115	// server regardless of whether the field is empty or not. This may be
16116	// used to include empty fields in Patch requests.
16117	ForceSendFields []string `json:"-"`
16118
16119	// NullFields is a list of field names (e.g. "Entities") to include in
16120	// API requests with the JSON null value. By default, fields with empty
16121	// values are omitted from API requests. However, any field with an
16122	// empty value appearing in NullFields will be sent to the server as
16123	// null. It is an error if a field in this list has a non-empty value.
16124	// This may be used to include null fields in Patch requests.
16125	NullFields []string `json:"-"`
16126}
16127
16128func (s *GoogleCloudDialogflowV2beta1SessionEntityType) MarshalJSON() ([]byte, error) {
16129	type NoMethod GoogleCloudDialogflowV2beta1SessionEntityType
16130	raw := NoMethod(*s)
16131	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16132}
16133
16134// GoogleCloudDialogflowV2beta1SmartReplyAnswer: Represents a smart
16135// reply answer.
16136type GoogleCloudDialogflowV2beta1SmartReplyAnswer struct {
16137	// AnswerRecord: The name of answer record, in the format of
16138	// "projects//locations//answerRecords/"
16139	AnswerRecord string `json:"answerRecord,omitempty"`
16140
16141	// Confidence: Smart reply confidence. The system's confidence score
16142	// that this reply is a good match for this conversation, as a value
16143	// from 0.0 (completely uncertain) to 1.0 (completely certain).
16144	Confidence float64 `json:"confidence,omitempty"`
16145
16146	// Reply: The content of the reply.
16147	Reply string `json:"reply,omitempty"`
16148
16149	// ForceSendFields is a list of field names (e.g. "AnswerRecord") to
16150	// unconditionally include in API requests. By default, fields with
16151	// empty values are omitted from API requests. However, any non-pointer,
16152	// non-interface field appearing in ForceSendFields will be sent to the
16153	// server regardless of whether the field is empty or not. This may be
16154	// used to include empty fields in Patch requests.
16155	ForceSendFields []string `json:"-"`
16156
16157	// NullFields is a list of field names (e.g. "AnswerRecord") to include
16158	// in API requests with the JSON null value. By default, fields with
16159	// empty values are omitted from API requests. However, any field with
16160	// an empty value appearing in NullFields will be sent to the server as
16161	// null. It is an error if a field in this list has a non-empty value.
16162	// This may be used to include null fields in Patch requests.
16163	NullFields []string `json:"-"`
16164}
16165
16166func (s *GoogleCloudDialogflowV2beta1SmartReplyAnswer) MarshalJSON() ([]byte, error) {
16167	type NoMethod GoogleCloudDialogflowV2beta1SmartReplyAnswer
16168	raw := NoMethod(*s)
16169	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16170}
16171
16172func (s *GoogleCloudDialogflowV2beta1SmartReplyAnswer) UnmarshalJSON(data []byte) error {
16173	type NoMethod GoogleCloudDialogflowV2beta1SmartReplyAnswer
16174	var s1 struct {
16175		Confidence gensupport.JSONFloat64 `json:"confidence"`
16176		*NoMethod
16177	}
16178	s1.NoMethod = (*NoMethod)(s)
16179	if err := json.Unmarshal(data, &s1); err != nil {
16180		return err
16181	}
16182	s.Confidence = float64(s1.Confidence)
16183	return nil
16184}
16185
16186// GoogleCloudDialogflowV2beta1SuggestArticlesResponse: The response
16187// message for Participants.SuggestArticles.
16188type GoogleCloudDialogflowV2beta1SuggestArticlesResponse struct {
16189	// ArticleAnswers: Output only. Articles ordered by score in descending
16190	// order.
16191	ArticleAnswers []*GoogleCloudDialogflowV2beta1ArticleAnswer `json:"articleAnswers,omitempty"`
16192
16193	// ContextSize: Number of messages prior to and including latest_message
16194	// to compile the suggestion. It may be smaller than the
16195	// SuggestArticlesResponse.context_size field in the request if there
16196	// aren't that many messages in the conversation.
16197	ContextSize int64 `json:"contextSize,omitempty"`
16198
16199	// LatestMessage: The name of the latest conversation message used to
16200	// compile suggestion for. Format:
16201	// `projects//locations//conversations//messages/`.
16202	LatestMessage string `json:"latestMessage,omitempty"`
16203
16204	// ForceSendFields is a list of field names (e.g. "ArticleAnswers") to
16205	// unconditionally include in API requests. By default, fields with
16206	// empty values are omitted from API requests. However, any non-pointer,
16207	// non-interface field appearing in ForceSendFields will be sent to the
16208	// server regardless of whether the field is empty or not. This may be
16209	// used to include empty fields in Patch requests.
16210	ForceSendFields []string `json:"-"`
16211
16212	// NullFields is a list of field names (e.g. "ArticleAnswers") to
16213	// include in API requests with the JSON null value. By default, fields
16214	// with empty values are omitted from API requests. However, any field
16215	// with an empty value appearing in NullFields will be sent to the
16216	// server as null. It is an error if a field in this list has a
16217	// non-empty value. This may be used to include null fields in Patch
16218	// requests.
16219	NullFields []string `json:"-"`
16220}
16221
16222func (s *GoogleCloudDialogflowV2beta1SuggestArticlesResponse) MarshalJSON() ([]byte, error) {
16223	type NoMethod GoogleCloudDialogflowV2beta1SuggestArticlesResponse
16224	raw := NoMethod(*s)
16225	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16226}
16227
16228// GoogleCloudDialogflowV2beta1SuggestFaqAnswersResponse: The request
16229// message for Participants.SuggestFaqAnswers.
16230type GoogleCloudDialogflowV2beta1SuggestFaqAnswersResponse struct {
16231	// ContextSize: Number of messages prior to and including latest_message
16232	// to compile the suggestion. It may be smaller than the
16233	// SuggestFaqAnswersRequest.context_size field in the request if there
16234	// aren't that many messages in the conversation.
16235	ContextSize int64 `json:"contextSize,omitempty"`
16236
16237	// FaqAnswers: Output only. Answers extracted from FAQ documents.
16238	FaqAnswers []*GoogleCloudDialogflowV2beta1FaqAnswer `json:"faqAnswers,omitempty"`
16239
16240	// LatestMessage: The name of the latest conversation message used to
16241	// compile suggestion for. Format:
16242	// `projects//locations//conversations//messages/`.
16243	LatestMessage string `json:"latestMessage,omitempty"`
16244
16245	// ForceSendFields is a list of field names (e.g. "ContextSize") to
16246	// unconditionally include in API requests. By default, fields with
16247	// empty values are omitted from API requests. However, any non-pointer,
16248	// non-interface field appearing in ForceSendFields will be sent to the
16249	// server regardless of whether the field is empty or not. This may be
16250	// used to include empty fields in Patch requests.
16251	ForceSendFields []string `json:"-"`
16252
16253	// NullFields is a list of field names (e.g. "ContextSize") to include
16254	// in API requests with the JSON null value. By default, fields with
16255	// empty values are omitted from API requests. However, any field with
16256	// an empty value appearing in NullFields will be sent to the server as
16257	// null. It is an error if a field in this list has a non-empty value.
16258	// This may be used to include null fields in Patch requests.
16259	NullFields []string `json:"-"`
16260}
16261
16262func (s *GoogleCloudDialogflowV2beta1SuggestFaqAnswersResponse) MarshalJSON() ([]byte, error) {
16263	type NoMethod GoogleCloudDialogflowV2beta1SuggestFaqAnswersResponse
16264	raw := NoMethod(*s)
16265	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16266}
16267
16268// GoogleCloudDialogflowV2beta1SuggestSmartRepliesResponse: The response
16269// message for Participants.SuggestSmartReplies.
16270type GoogleCloudDialogflowV2beta1SuggestSmartRepliesResponse struct {
16271	// ContextSize: Number of messages prior to and including latest_message
16272	// to compile the suggestion. It may be smaller than the
16273	// SuggestSmartRepliesRequest.context_size field in the request if there
16274	// aren't that many messages in the conversation.
16275	ContextSize int64 `json:"contextSize,omitempty"`
16276
16277	// LatestMessage: The name of the latest conversation message used to
16278	// compile suggestion for. Format:
16279	// `projects//locations//conversations//messages/`.
16280	LatestMessage string `json:"latestMessage,omitempty"`
16281
16282	// SmartReplyAnswers: Output only. Multiple reply options provided by
16283	// smart reply service. The order is based on the rank of the model
16284	// prediction. The maximum number of the returned replies is set in
16285	// SmartReplyConfig.
16286	SmartReplyAnswers []*GoogleCloudDialogflowV2beta1SmartReplyAnswer `json:"smartReplyAnswers,omitempty"`
16287
16288	// ForceSendFields is a list of field names (e.g. "ContextSize") to
16289	// unconditionally include in API requests. By default, fields with
16290	// empty values are omitted from API requests. However, any non-pointer,
16291	// non-interface field appearing in ForceSendFields will be sent to the
16292	// server regardless of whether the field is empty or not. This may be
16293	// used to include empty fields in Patch requests.
16294	ForceSendFields []string `json:"-"`
16295
16296	// NullFields is a list of field names (e.g. "ContextSize") to include
16297	// in API requests with the JSON null value. By default, fields with
16298	// empty values are omitted from API requests. However, any field with
16299	// an empty value appearing in NullFields will be sent to the server as
16300	// null. It is an error if a field in this list has a non-empty value.
16301	// This may be used to include null fields in Patch requests.
16302	NullFields []string `json:"-"`
16303}
16304
16305func (s *GoogleCloudDialogflowV2beta1SuggestSmartRepliesResponse) MarshalJSON() ([]byte, error) {
16306	type NoMethod GoogleCloudDialogflowV2beta1SuggestSmartRepliesResponse
16307	raw := NoMethod(*s)
16308	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16309}
16310
16311// GoogleCloudDialogflowV2beta1SuggestionResult: One response of
16312// different type of suggestion response which is used in the response
16313// of Participants.AnalyzeContent and Participants.AnalyzeContent, as
16314// well as HumanAgentAssistantEvent.
16315type GoogleCloudDialogflowV2beta1SuggestionResult struct {
16316	// Error: Error status if the request failed.
16317	Error *GoogleRpcStatus `json:"error,omitempty"`
16318
16319	// SuggestArticlesResponse: SuggestArticlesResponse if request is for
16320	// ARTICLE_SUGGESTION.
16321	SuggestArticlesResponse *GoogleCloudDialogflowV2beta1SuggestArticlesResponse `json:"suggestArticlesResponse,omitempty"`
16322
16323	// SuggestFaqAnswersResponse: SuggestFaqAnswersResponse if request is
16324	// for FAQ_ANSWER.
16325	SuggestFaqAnswersResponse *GoogleCloudDialogflowV2beta1SuggestFaqAnswersResponse `json:"suggestFaqAnswersResponse,omitempty"`
16326
16327	// SuggestSmartRepliesResponse: SuggestSmartRepliesResponse if request
16328	// is for SMART_REPLY.
16329	SuggestSmartRepliesResponse *GoogleCloudDialogflowV2beta1SuggestSmartRepliesResponse `json:"suggestSmartRepliesResponse,omitempty"`
16330
16331	// ForceSendFields is a list of field names (e.g. "Error") to
16332	// unconditionally include in API requests. By default, fields with
16333	// empty values are omitted from API requests. However, any non-pointer,
16334	// non-interface field appearing in ForceSendFields will be sent to the
16335	// server regardless of whether the field is empty or not. This may be
16336	// used to include empty fields in Patch requests.
16337	ForceSendFields []string `json:"-"`
16338
16339	// NullFields is a list of field names (e.g. "Error") to include in API
16340	// requests with the JSON null value. By default, fields with empty
16341	// values are omitted from API requests. However, any field with an
16342	// empty value appearing in NullFields will be sent to the server as
16343	// null. It is an error if a field in this list has a non-empty value.
16344	// This may be used to include null fields in Patch requests.
16345	NullFields []string `json:"-"`
16346}
16347
16348func (s *GoogleCloudDialogflowV2beta1SuggestionResult) MarshalJSON() ([]byte, error) {
16349	type NoMethod GoogleCloudDialogflowV2beta1SuggestionResult
16350	raw := NoMethod(*s)
16351	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16352}
16353
16354// GoogleCloudDialogflowV2beta1WebhookRequest: The request message for a
16355// webhook call.
16356type GoogleCloudDialogflowV2beta1WebhookRequest struct {
16357	// AlternativeQueryResults: Alternative query results from
16358	// KnowledgeService.
16359	AlternativeQueryResults []*GoogleCloudDialogflowV2beta1QueryResult `json:"alternativeQueryResults,omitempty"`
16360
16361	// OriginalDetectIntentRequest: Optional. The contents of the original
16362	// request that was passed to `[Streaming]DetectIntent` call.
16363	OriginalDetectIntentRequest *GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest `json:"originalDetectIntentRequest,omitempty"`
16364
16365	// QueryResult: The result of the conversational query or event
16366	// processing. Contains the same value as
16367	// `[Streaming]DetectIntentResponse.query_result`.
16368	QueryResult *GoogleCloudDialogflowV2beta1QueryResult `json:"queryResult,omitempty"`
16369
16370	// ResponseId: The unique identifier of the response. Contains the same
16371	// value as `[Streaming]DetectIntentResponse.response_id`.
16372	ResponseId string `json:"responseId,omitempty"`
16373
16374	// Session: The unique identifier of detectIntent request session. Can
16375	// be used to identify end-user inside webhook implementation. Supported
16376	// formats: - `projects//agent/sessions/, -
16377	// `projects//locations//agent/sessions/`, -
16378	// `projects//agent/environments//users//sessions/`, -
16379	// `projects//locations//agent/environments//users//sessions/`,
16380	Session string `json:"session,omitempty"`
16381
16382	// ForceSendFields is a list of field names (e.g.
16383	// "AlternativeQueryResults") to unconditionally include in API
16384	// requests. By default, fields with empty values are omitted from API
16385	// requests. However, any non-pointer, non-interface field appearing in
16386	// ForceSendFields will be sent to the server regardless of whether the
16387	// field is empty or not. This may be used to include empty fields in
16388	// Patch requests.
16389	ForceSendFields []string `json:"-"`
16390
16391	// NullFields is a list of field names (e.g. "AlternativeQueryResults")
16392	// to include in API requests with the JSON null value. By default,
16393	// fields with empty values are omitted from API requests. However, any
16394	// field with an empty value appearing in NullFields will be sent to the
16395	// server as null. It is an error if a field in this list has a
16396	// non-empty value. This may be used to include null fields in Patch
16397	// requests.
16398	NullFields []string `json:"-"`
16399}
16400
16401func (s *GoogleCloudDialogflowV2beta1WebhookRequest) MarshalJSON() ([]byte, error) {
16402	type NoMethod GoogleCloudDialogflowV2beta1WebhookRequest
16403	raw := NoMethod(*s)
16404	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16405}
16406
16407// GoogleCloudDialogflowV2beta1WebhookResponse: The response message for
16408// a webhook call. This response is validated by the Dialogflow server.
16409// If validation fails, an error will be returned in the
16410// QueryResult.diagnostic_info field. Setting JSON fields to an empty
16411// value with the wrong type is a common error. To avoid this error: -
16412// Use "" for empty strings - Use `{}` or `null` for empty objects -
16413// Use `[]` or `null` for empty arrays For more information, see the
16414// Protocol Buffers Language Guide
16415// (https://developers.google.com/protocol-buffers/docs/proto3#json).
16416type GoogleCloudDialogflowV2beta1WebhookResponse struct {
16417	// EndInteraction: Optional. Indicates that this intent ends an
16418	// interaction. Some integrations (e.g., Actions on Google or Dialogflow
16419	// phone gateway) use this information to close interaction with an end
16420	// user. Default is false.
16421	EndInteraction bool `json:"endInteraction,omitempty"`
16422
16423	// FollowupEventInput: Optional. Invokes the supplied events. When this
16424	// field is set, Dialogflow ignores the `fulfillment_text`,
16425	// `fulfillment_messages`, and `payload` fields.
16426	FollowupEventInput *GoogleCloudDialogflowV2beta1EventInput `json:"followupEventInput,omitempty"`
16427
16428	// FulfillmentMessages: Optional. The rich response messages intended
16429	// for the end-user. When provided, Dialogflow uses this field to
16430	// populate QueryResult.fulfillment_messages sent to the integration or
16431	// API caller.
16432	FulfillmentMessages []*GoogleCloudDialogflowV2beta1IntentMessage `json:"fulfillmentMessages,omitempty"`
16433
16434	// FulfillmentText: Optional. The text response message intended for the
16435	// end-user. It is recommended to use
16436	// `fulfillment_messages.text.text[0]` instead. When provided,
16437	// Dialogflow uses this field to populate QueryResult.fulfillment_text
16438	// sent to the integration or API caller.
16439	FulfillmentText string `json:"fulfillmentText,omitempty"`
16440
16441	// LiveAgentHandoff: Indicates that a live agent should be brought in to
16442	// handle the interaction with the user. In most cases, when you set
16443	// this flag to true, you would also want to set end_interaction to true
16444	// as well. Default is false.
16445	LiveAgentHandoff bool `json:"liveAgentHandoff,omitempty"`
16446
16447	// OutputContexts: Optional. The collection of output contexts that will
16448	// overwrite currently active contexts for the session and reset their
16449	// lifespans. When provided, Dialogflow uses this field to populate
16450	// QueryResult.output_contexts sent to the integration or API caller.
16451	OutputContexts []*GoogleCloudDialogflowV2beta1Context `json:"outputContexts,omitempty"`
16452
16453	// Payload: Optional. This field can be used to pass custom data from
16454	// your webhook to the integration or API caller. Arbitrary JSON objects
16455	// are supported. When provided, Dialogflow uses this field to populate
16456	// QueryResult.webhook_payload sent to the integration or API caller.
16457	// This field is also used by the Google Assistant integration
16458	// (https://cloud.google.com/dialogflow/docs/integrations/aog) for rich
16459	// response messages. See the format definition at Google Assistant
16460	// Dialogflow webhook format
16461	// (https://developers.google.com/assistant/actions/build/json/dialogflow-webhook-json)
16462	Payload googleapi.RawMessage `json:"payload,omitempty"`
16463
16464	// SessionEntityTypes: Optional. Additional session entity types to
16465	// replace or extend developer entity types with. The entity synonyms
16466	// apply to all languages and persist for the session. Setting this data
16467	// from a webhook overwrites the session entity types that have been set
16468	// using `detectIntent`, `streamingDetectIntent` or SessionEntityType
16469	// management methods.
16470	SessionEntityTypes []*GoogleCloudDialogflowV2beta1SessionEntityType `json:"sessionEntityTypes,omitempty"`
16471
16472	// Source: Optional. A custom field used to identify the webhook source.
16473	// Arbitrary strings are supported. When provided, Dialogflow uses this
16474	// field to populate QueryResult.webhook_source sent to the integration
16475	// or API caller.
16476	Source string `json:"source,omitempty"`
16477
16478	// ForceSendFields is a list of field names (e.g. "EndInteraction") to
16479	// unconditionally include in API requests. By default, fields with
16480	// empty values are omitted from API requests. However, any non-pointer,
16481	// non-interface field appearing in ForceSendFields will be sent to the
16482	// server regardless of whether the field is empty or not. This may be
16483	// used to include empty fields in Patch requests.
16484	ForceSendFields []string `json:"-"`
16485
16486	// NullFields is a list of field names (e.g. "EndInteraction") to
16487	// include in API requests with the JSON null value. By default, fields
16488	// with empty values are omitted from API requests. However, any field
16489	// with an empty value appearing in NullFields will be sent to the
16490	// server as null. It is an error if a field in this list has a
16491	// non-empty value. This may be used to include null fields in Patch
16492	// requests.
16493	NullFields []string `json:"-"`
16494}
16495
16496func (s *GoogleCloudDialogflowV2beta1WebhookResponse) MarshalJSON() ([]byte, error) {
16497	type NoMethod GoogleCloudDialogflowV2beta1WebhookResponse
16498	raw := NoMethod(*s)
16499	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16500}
16501
16502// GoogleCloudDialogflowV3alpha1CreateDocumentOperationMetadata:
16503// Metadata for CreateDocument operation.
16504type GoogleCloudDialogflowV3alpha1CreateDocumentOperationMetadata struct {
16505	// GenericMetadata: The generic information of the operation.
16506	GenericMetadata *GoogleCloudDialogflowV3alpha1GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
16507
16508	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
16509	// unconditionally include in API requests. By default, fields with
16510	// empty values are omitted from API requests. However, any non-pointer,
16511	// non-interface field appearing in ForceSendFields will be sent to the
16512	// server regardless of whether the field is empty or not. This may be
16513	// used to include empty fields in Patch requests.
16514	ForceSendFields []string `json:"-"`
16515
16516	// NullFields is a list of field names (e.g. "GenericMetadata") to
16517	// include in API requests with the JSON null value. By default, fields
16518	// with empty values are omitted from API requests. However, any field
16519	// with an empty value appearing in NullFields will be sent to the
16520	// server as null. It is an error if a field in this list has a
16521	// non-empty value. This may be used to include null fields in Patch
16522	// requests.
16523	NullFields []string `json:"-"`
16524}
16525
16526func (s *GoogleCloudDialogflowV3alpha1CreateDocumentOperationMetadata) MarshalJSON() ([]byte, error) {
16527	type NoMethod GoogleCloudDialogflowV3alpha1CreateDocumentOperationMetadata
16528	raw := NoMethod(*s)
16529	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16530}
16531
16532// GoogleCloudDialogflowV3alpha1DeleteDocumentOperationMetadata:
16533// Metadata for DeleteDocument operation.
16534type GoogleCloudDialogflowV3alpha1DeleteDocumentOperationMetadata struct {
16535	// GenericMetadata: The generic information of the operation.
16536	GenericMetadata *GoogleCloudDialogflowV3alpha1GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
16537
16538	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
16539	// unconditionally include in API requests. By default, fields with
16540	// empty values are omitted from API requests. However, any non-pointer,
16541	// non-interface field appearing in ForceSendFields will be sent to the
16542	// server regardless of whether the field is empty or not. This may be
16543	// used to include empty fields in Patch requests.
16544	ForceSendFields []string `json:"-"`
16545
16546	// NullFields is a list of field names (e.g. "GenericMetadata") to
16547	// include in API requests with the JSON null value. By default, fields
16548	// with empty values are omitted from API requests. However, any field
16549	// with an empty value appearing in NullFields will be sent to the
16550	// server as null. It is an error if a field in this list has a
16551	// non-empty value. This may be used to include null fields in Patch
16552	// requests.
16553	NullFields []string `json:"-"`
16554}
16555
16556func (s *GoogleCloudDialogflowV3alpha1DeleteDocumentOperationMetadata) MarshalJSON() ([]byte, error) {
16557	type NoMethod GoogleCloudDialogflowV3alpha1DeleteDocumentOperationMetadata
16558	raw := NoMethod(*s)
16559	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16560}
16561
16562// GoogleCloudDialogflowV3alpha1GenericKnowledgeOperationMetadata:
16563// Metadata in google::longrunning::Operation for Knowledge operations.
16564type GoogleCloudDialogflowV3alpha1GenericKnowledgeOperationMetadata struct {
16565	// State: Required. Output only. The current state of this operation.
16566	//
16567	// Possible values:
16568	//   "STATE_UNSPECIFIED" - State unspecified.
16569	//   "PENDING" - The operation has been created.
16570	//   "RUNNING" - The operation is currently running.
16571	//   "DONE" - The operation is done, either cancelled or completed.
16572	State string `json:"state,omitempty"`
16573
16574	// ForceSendFields is a list of field names (e.g. "State") to
16575	// unconditionally include in API requests. By default, fields with
16576	// empty values are omitted from API requests. However, any non-pointer,
16577	// non-interface field appearing in ForceSendFields will be sent to the
16578	// server regardless of whether the field is empty or not. This may be
16579	// used to include empty fields in Patch requests.
16580	ForceSendFields []string `json:"-"`
16581
16582	// NullFields is a list of field names (e.g. "State") to include in API
16583	// requests with the JSON null value. By default, fields with empty
16584	// values are omitted from API requests. However, any field with an
16585	// empty value appearing in NullFields will be sent to the server as
16586	// null. It is an error if a field in this list has a non-empty value.
16587	// This may be used to include null fields in Patch requests.
16588	NullFields []string `json:"-"`
16589}
16590
16591func (s *GoogleCloudDialogflowV3alpha1GenericKnowledgeOperationMetadata) MarshalJSON() ([]byte, error) {
16592	type NoMethod GoogleCloudDialogflowV3alpha1GenericKnowledgeOperationMetadata
16593	raw := NoMethod(*s)
16594	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16595}
16596
16597// GoogleCloudDialogflowV3alpha1ImportDocumentsOperationMetadata:
16598// Metadata for ImportDocuments operation.
16599type GoogleCloudDialogflowV3alpha1ImportDocumentsOperationMetadata struct {
16600	// GenericMetadata: The generic information of the operation.
16601	GenericMetadata *GoogleCloudDialogflowV3alpha1GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
16602
16603	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
16604	// unconditionally include in API requests. By default, fields with
16605	// empty values are omitted from API requests. However, any non-pointer,
16606	// non-interface field appearing in ForceSendFields will be sent to the
16607	// server regardless of whether the field is empty or not. This may be
16608	// used to include empty fields in Patch requests.
16609	ForceSendFields []string `json:"-"`
16610
16611	// NullFields is a list of field names (e.g. "GenericMetadata") to
16612	// include in API requests with the JSON null value. By default, fields
16613	// with empty values are omitted from API requests. However, any field
16614	// with an empty value appearing in NullFields will be sent to the
16615	// server as null. It is an error if a field in this list has a
16616	// non-empty value. This may be used to include null fields in Patch
16617	// requests.
16618	NullFields []string `json:"-"`
16619}
16620
16621func (s *GoogleCloudDialogflowV3alpha1ImportDocumentsOperationMetadata) MarshalJSON() ([]byte, error) {
16622	type NoMethod GoogleCloudDialogflowV3alpha1ImportDocumentsOperationMetadata
16623	raw := NoMethod(*s)
16624	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16625}
16626
16627// GoogleCloudDialogflowV3alpha1ImportDocumentsResponse: Response
16628// message for Documents.ImportDocuments.
16629type GoogleCloudDialogflowV3alpha1ImportDocumentsResponse struct {
16630	// Warnings: Includes details about skipped documents or any other
16631	// warnings.
16632	Warnings []*GoogleRpcStatus `json:"warnings,omitempty"`
16633
16634	// ForceSendFields is a list of field names (e.g. "Warnings") to
16635	// unconditionally include in API requests. By default, fields with
16636	// empty values are omitted from API requests. However, any non-pointer,
16637	// non-interface field appearing in ForceSendFields will be sent to the
16638	// server regardless of whether the field is empty or not. This may be
16639	// used to include empty fields in Patch requests.
16640	ForceSendFields []string `json:"-"`
16641
16642	// NullFields is a list of field names (e.g. "Warnings") to include in
16643	// API requests with the JSON null value. By default, fields with empty
16644	// values are omitted from API requests. However, any field with an
16645	// empty value appearing in NullFields will be sent to the server as
16646	// null. It is an error if a field in this list has a non-empty value.
16647	// This may be used to include null fields in Patch requests.
16648	NullFields []string `json:"-"`
16649}
16650
16651func (s *GoogleCloudDialogflowV3alpha1ImportDocumentsResponse) MarshalJSON() ([]byte, error) {
16652	type NoMethod GoogleCloudDialogflowV3alpha1ImportDocumentsResponse
16653	raw := NoMethod(*s)
16654	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16655}
16656
16657// GoogleCloudDialogflowV3alpha1ReloadDocumentOperationMetadata:
16658// Metadata for ReloadDocument operation.
16659type GoogleCloudDialogflowV3alpha1ReloadDocumentOperationMetadata struct {
16660	// GenericMetadata: The generic information of the operation.
16661	GenericMetadata *GoogleCloudDialogflowV3alpha1GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
16662
16663	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
16664	// unconditionally include in API requests. By default, fields with
16665	// empty values are omitted from API requests. However, any non-pointer,
16666	// non-interface field appearing in ForceSendFields will be sent to the
16667	// server regardless of whether the field is empty or not. This may be
16668	// used to include empty fields in Patch requests.
16669	ForceSendFields []string `json:"-"`
16670
16671	// NullFields is a list of field names (e.g. "GenericMetadata") to
16672	// include in API requests with the JSON null value. By default, fields
16673	// with empty values are omitted from API requests. However, any field
16674	// with an empty value appearing in NullFields will be sent to the
16675	// server as null. It is an error if a field in this list has a
16676	// non-empty value. This may be used to include null fields in Patch
16677	// requests.
16678	NullFields []string `json:"-"`
16679}
16680
16681func (s *GoogleCloudDialogflowV3alpha1ReloadDocumentOperationMetadata) MarshalJSON() ([]byte, error) {
16682	type NoMethod GoogleCloudDialogflowV3alpha1ReloadDocumentOperationMetadata
16683	raw := NoMethod(*s)
16684	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16685}
16686
16687// GoogleCloudDialogflowV3alpha1UpdateDocumentOperationMetadata:
16688// Metadata for UpdateDocument operation.
16689type GoogleCloudDialogflowV3alpha1UpdateDocumentOperationMetadata struct {
16690	// GenericMetadata: The generic information of the operation.
16691	GenericMetadata *GoogleCloudDialogflowV3alpha1GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
16692
16693	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
16694	// unconditionally include in API requests. By default, fields with
16695	// empty values are omitted from API requests. However, any non-pointer,
16696	// non-interface field appearing in ForceSendFields will be sent to the
16697	// server regardless of whether the field is empty or not. This may be
16698	// used to include empty fields in Patch requests.
16699	ForceSendFields []string `json:"-"`
16700
16701	// NullFields is a list of field names (e.g. "GenericMetadata") to
16702	// include in API requests with the JSON null value. By default, fields
16703	// with empty values are omitted from API requests. However, any field
16704	// with an empty value appearing in NullFields will be sent to the
16705	// server as null. It is an error if a field in this list has a
16706	// non-empty value. This may be used to include null fields in Patch
16707	// requests.
16708	NullFields []string `json:"-"`
16709}
16710
16711func (s *GoogleCloudDialogflowV3alpha1UpdateDocumentOperationMetadata) MarshalJSON() ([]byte, error) {
16712	type NoMethod GoogleCloudDialogflowV3alpha1UpdateDocumentOperationMetadata
16713	raw := NoMethod(*s)
16714	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16715}
16716
16717// GoogleLongrunningListOperationsResponse: The response message for
16718// Operations.ListOperations.
16719type GoogleLongrunningListOperationsResponse struct {
16720	// NextPageToken: The standard List next-page token.
16721	NextPageToken string `json:"nextPageToken,omitempty"`
16722
16723	// Operations: A list of operations that matches the specified filter in
16724	// the request.
16725	Operations []*GoogleLongrunningOperation `json:"operations,omitempty"`
16726
16727	// ServerResponse contains the HTTP response code and headers from the
16728	// server.
16729	googleapi.ServerResponse `json:"-"`
16730
16731	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
16732	// unconditionally include in API requests. By default, fields with
16733	// empty values are omitted from API requests. However, any non-pointer,
16734	// non-interface field appearing in ForceSendFields will be sent to the
16735	// server regardless of whether the field is empty or not. This may be
16736	// used to include empty fields in Patch requests.
16737	ForceSendFields []string `json:"-"`
16738
16739	// NullFields is a list of field names (e.g. "NextPageToken") to include
16740	// in API requests with the JSON null value. By default, fields with
16741	// empty values are omitted from API requests. However, any field with
16742	// an empty value appearing in NullFields will be sent to the server as
16743	// null. It is an error if a field in this list has a non-empty value.
16744	// This may be used to include null fields in Patch requests.
16745	NullFields []string `json:"-"`
16746}
16747
16748func (s *GoogleLongrunningListOperationsResponse) MarshalJSON() ([]byte, error) {
16749	type NoMethod GoogleLongrunningListOperationsResponse
16750	raw := NoMethod(*s)
16751	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16752}
16753
16754// GoogleLongrunningOperation: This resource represents a long-running
16755// operation that is the result of a network API call.
16756type GoogleLongrunningOperation struct {
16757	// Done: If the value is `false`, it means the operation is still in
16758	// progress. If `true`, the operation is completed, and either `error`
16759	// or `response` is available.
16760	Done bool `json:"done,omitempty"`
16761
16762	// Error: The error result of the operation in case of failure or
16763	// cancellation.
16764	Error *GoogleRpcStatus `json:"error,omitempty"`
16765
16766	// Metadata: Service-specific metadata associated with the operation. It
16767	// typically contains progress information and common metadata such as
16768	// create time. Some services might not provide such metadata. Any
16769	// method that returns a long-running operation should document the
16770	// metadata type, if any.
16771	Metadata googleapi.RawMessage `json:"metadata,omitempty"`
16772
16773	// Name: The server-assigned name, which is only unique within the same
16774	// service that originally returns it. If you use the default HTTP
16775	// mapping, the `name` should be a resource name ending with
16776	// `operations/{unique_id}`.
16777	Name string `json:"name,omitempty"`
16778
16779	// Response: The normal response of the operation in case of success. If
16780	// the original method returns no data on success, such as `Delete`, the
16781	// response is `google.protobuf.Empty`. If the original method is
16782	// standard `Get`/`Create`/`Update`, the response should be the
16783	// resource. For other methods, the response should have the type
16784	// `XxxResponse`, where `Xxx` is the original method name. For example,
16785	// if the original method name is `TakeSnapshot()`, the inferred
16786	// response type is `TakeSnapshotResponse`.
16787	Response googleapi.RawMessage `json:"response,omitempty"`
16788
16789	// ServerResponse contains the HTTP response code and headers from the
16790	// server.
16791	googleapi.ServerResponse `json:"-"`
16792
16793	// ForceSendFields is a list of field names (e.g. "Done") to
16794	// unconditionally include in API requests. By default, fields with
16795	// empty values are omitted from API requests. However, any non-pointer,
16796	// non-interface field appearing in ForceSendFields will be sent to the
16797	// server regardless of whether the field is empty or not. This may be
16798	// used to include empty fields in Patch requests.
16799	ForceSendFields []string `json:"-"`
16800
16801	// NullFields is a list of field names (e.g. "Done") to include in API
16802	// requests with the JSON null value. By default, fields with empty
16803	// values are omitted from API requests. However, any field with an
16804	// empty value appearing in NullFields will be sent to the server as
16805	// null. It is an error if a field in this list has a non-empty value.
16806	// This may be used to include null fields in Patch requests.
16807	NullFields []string `json:"-"`
16808}
16809
16810func (s *GoogleLongrunningOperation) MarshalJSON() ([]byte, error) {
16811	type NoMethod GoogleLongrunningOperation
16812	raw := NoMethod(*s)
16813	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16814}
16815
16816// GoogleProtobufEmpty: A generic empty message that you can re-use to
16817// avoid defining duplicated empty messages in your APIs. A typical
16818// example is to use it as the request or the response type of an API
16819// method. For instance: service Foo { rpc Bar(google.protobuf.Empty)
16820// returns (google.protobuf.Empty); } The JSON representation for
16821// `Empty` is empty JSON object `{}`.
16822type GoogleProtobufEmpty struct {
16823	// ServerResponse contains the HTTP response code and headers from the
16824	// server.
16825	googleapi.ServerResponse `json:"-"`
16826}
16827
16828// GoogleRpcStatus: The `Status` type defines a logical error model that
16829// is suitable for different programming environments, including REST
16830// APIs and RPC APIs. It is used by gRPC (https://github.com/grpc). Each
16831// `Status` message contains three pieces of data: error code, error
16832// message, and error details. You can find out more about this error
16833// model and how to work with it in the API Design Guide
16834// (https://cloud.google.com/apis/design/errors).
16835type GoogleRpcStatus struct {
16836	// Code: The status code, which should be an enum value of
16837	// google.rpc.Code.
16838	Code int64 `json:"code,omitempty"`
16839
16840	// Details: A list of messages that carry the error details. There is a
16841	// common set of message types for APIs to use.
16842	Details []googleapi.RawMessage `json:"details,omitempty"`
16843
16844	// Message: A developer-facing error message, which should be in
16845	// English. Any user-facing error message should be localized and sent
16846	// in the google.rpc.Status.details field, or localized by the client.
16847	Message string `json:"message,omitempty"`
16848
16849	// ForceSendFields is a list of field names (e.g. "Code") to
16850	// unconditionally include in API requests. By default, fields with
16851	// empty values are omitted from API requests. However, any non-pointer,
16852	// non-interface field appearing in ForceSendFields will be sent to the
16853	// server regardless of whether the field is empty or not. This may be
16854	// used to include empty fields in Patch requests.
16855	ForceSendFields []string `json:"-"`
16856
16857	// NullFields is a list of field names (e.g. "Code") to include in API
16858	// requests with the JSON null value. By default, fields with empty
16859	// values are omitted from API requests. However, any field with an
16860	// empty value appearing in NullFields will be sent to the server as
16861	// null. It is an error if a field in this list has a non-empty value.
16862	// This may be used to include null fields in Patch requests.
16863	NullFields []string `json:"-"`
16864}
16865
16866func (s *GoogleRpcStatus) MarshalJSON() ([]byte, error) {
16867	type NoMethod GoogleRpcStatus
16868	raw := NoMethod(*s)
16869	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16870}
16871
16872// GoogleTypeLatLng: An object that represents a latitude/longitude
16873// pair. This is expressed as a pair of doubles to represent degrees
16874// latitude and degrees longitude. Unless specified otherwise, this
16875// object must conform to the WGS84 standard. Values must be within
16876// normalized ranges.
16877type GoogleTypeLatLng struct {
16878	// Latitude: The latitude in degrees. It must be in the range [-90.0,
16879	// +90.0].
16880	Latitude float64 `json:"latitude,omitempty"`
16881
16882	// Longitude: The longitude in degrees. It must be in the range [-180.0,
16883	// +180.0].
16884	Longitude float64 `json:"longitude,omitempty"`
16885
16886	// ForceSendFields is a list of field names (e.g. "Latitude") to
16887	// unconditionally include in API requests. By default, fields with
16888	// empty values are omitted from API requests. However, any non-pointer,
16889	// non-interface field appearing in ForceSendFields will be sent to the
16890	// server regardless of whether the field is empty or not. This may be
16891	// used to include empty fields in Patch requests.
16892	ForceSendFields []string `json:"-"`
16893
16894	// NullFields is a list of field names (e.g. "Latitude") to include in
16895	// API requests with the JSON null value. By default, fields with empty
16896	// values are omitted from API requests. However, any field with an
16897	// empty value appearing in NullFields will be sent to the server as
16898	// null. It is an error if a field in this list has a non-empty value.
16899	// This may be used to include null fields in Patch requests.
16900	NullFields []string `json:"-"`
16901}
16902
16903func (s *GoogleTypeLatLng) MarshalJSON() ([]byte, error) {
16904	type NoMethod GoogleTypeLatLng
16905	raw := NoMethod(*s)
16906	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16907}
16908
16909func (s *GoogleTypeLatLng) UnmarshalJSON(data []byte) error {
16910	type NoMethod GoogleTypeLatLng
16911	var s1 struct {
16912		Latitude  gensupport.JSONFloat64 `json:"latitude"`
16913		Longitude gensupport.JSONFloat64 `json:"longitude"`
16914		*NoMethod
16915	}
16916	s1.NoMethod = (*NoMethod)(s)
16917	if err := json.Unmarshal(data, &s1); err != nil {
16918		return err
16919	}
16920	s.Latitude = float64(s1.Latitude)
16921	s.Longitude = float64(s1.Longitude)
16922	return nil
16923}
16924
16925// method id "dialogflow.projects.locations.agents.create":
16926
16927type ProjectsLocationsAgentsCreateCall struct {
16928	s                              *Service
16929	parent                         string
16930	googleclouddialogflowcxv3agent *GoogleCloudDialogflowCxV3Agent
16931	urlParams_                     gensupport.URLParams
16932	ctx_                           context.Context
16933	header_                        http.Header
16934}
16935
16936// Create: Creates an agent in the specified location. Note: You should
16937// always train flows prior to sending them queries. See the training
16938// documentation
16939// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
16940//
16941// - parent: The location to create a agent for. Format:
16942//   `projects//locations/`.
16943func (r *ProjectsLocationsAgentsService) Create(parent string, googleclouddialogflowcxv3agent *GoogleCloudDialogflowCxV3Agent) *ProjectsLocationsAgentsCreateCall {
16944	c := &ProjectsLocationsAgentsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
16945	c.parent = parent
16946	c.googleclouddialogflowcxv3agent = googleclouddialogflowcxv3agent
16947	return c
16948}
16949
16950// Fields allows partial responses to be retrieved. See
16951// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
16952// for more information.
16953func (c *ProjectsLocationsAgentsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsCreateCall {
16954	c.urlParams_.Set("fields", googleapi.CombineFields(s))
16955	return c
16956}
16957
16958// Context sets the context to be used in this call's Do method. Any
16959// pending HTTP request will be aborted if the provided context is
16960// canceled.
16961func (c *ProjectsLocationsAgentsCreateCall) Context(ctx context.Context) *ProjectsLocationsAgentsCreateCall {
16962	c.ctx_ = ctx
16963	return c
16964}
16965
16966// Header returns an http.Header that can be modified by the caller to
16967// add HTTP headers to the request.
16968func (c *ProjectsLocationsAgentsCreateCall) Header() http.Header {
16969	if c.header_ == nil {
16970		c.header_ = make(http.Header)
16971	}
16972	return c.header_
16973}
16974
16975func (c *ProjectsLocationsAgentsCreateCall) doRequest(alt string) (*http.Response, error) {
16976	reqHeaders := make(http.Header)
16977	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
16978	for k, v := range c.header_ {
16979		reqHeaders[k] = v
16980	}
16981	reqHeaders.Set("User-Agent", c.s.userAgent())
16982	var body io.Reader = nil
16983	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3agent)
16984	if err != nil {
16985		return nil, err
16986	}
16987	reqHeaders.Set("Content-Type", "application/json")
16988	c.urlParams_.Set("alt", alt)
16989	c.urlParams_.Set("prettyPrint", "false")
16990	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/agents")
16991	urls += "?" + c.urlParams_.Encode()
16992	req, err := http.NewRequest("POST", urls, body)
16993	if err != nil {
16994		return nil, err
16995	}
16996	req.Header = reqHeaders
16997	googleapi.Expand(req.URL, map[string]string{
16998		"parent": c.parent,
16999	})
17000	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17001}
17002
17003// Do executes the "dialogflow.projects.locations.agents.create" call.
17004// Exactly one of *GoogleCloudDialogflowCxV3Agent or error will be
17005// non-nil. Any non-2xx status code is an error. Response headers are in
17006// either *GoogleCloudDialogflowCxV3Agent.ServerResponse.Header or (if a
17007// response was returned at all) in error.(*googleapi.Error).Header. Use
17008// googleapi.IsNotModified to check whether the returned error was
17009// because http.StatusNotModified was returned.
17010func (c *ProjectsLocationsAgentsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3Agent, error) {
17011	gensupport.SetOptions(c.urlParams_, opts...)
17012	res, err := c.doRequest("json")
17013	if res != nil && res.StatusCode == http.StatusNotModified {
17014		if res.Body != nil {
17015			res.Body.Close()
17016		}
17017		return nil, &googleapi.Error{
17018			Code:   res.StatusCode,
17019			Header: res.Header,
17020		}
17021	}
17022	if err != nil {
17023		return nil, err
17024	}
17025	defer googleapi.CloseBody(res)
17026	if err := googleapi.CheckResponse(res); err != nil {
17027		return nil, err
17028	}
17029	ret := &GoogleCloudDialogflowCxV3Agent{
17030		ServerResponse: googleapi.ServerResponse{
17031			Header:         res.Header,
17032			HTTPStatusCode: res.StatusCode,
17033		},
17034	}
17035	target := &ret
17036	if err := gensupport.DecodeResponse(target, res); err != nil {
17037		return nil, err
17038	}
17039	return ret, nil
17040	// {
17041	//   "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).",
17042	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents",
17043	//   "httpMethod": "POST",
17044	//   "id": "dialogflow.projects.locations.agents.create",
17045	//   "parameterOrder": [
17046	//     "parent"
17047	//   ],
17048	//   "parameters": {
17049	//     "parent": {
17050	//       "description": "Required. The location to create a agent for. Format: `projects//locations/`.",
17051	//       "location": "path",
17052	//       "pattern": "^projects/[^/]+/locations/[^/]+$",
17053	//       "required": true,
17054	//       "type": "string"
17055	//     }
17056	//   },
17057	//   "path": "v3/{+parent}/agents",
17058	//   "request": {
17059	//     "$ref": "GoogleCloudDialogflowCxV3Agent"
17060	//   },
17061	//   "response": {
17062	//     "$ref": "GoogleCloudDialogflowCxV3Agent"
17063	//   },
17064	//   "scopes": [
17065	//     "https://www.googleapis.com/auth/cloud-platform",
17066	//     "https://www.googleapis.com/auth/dialogflow"
17067	//   ]
17068	// }
17069
17070}
17071
17072// method id "dialogflow.projects.locations.agents.delete":
17073
17074type ProjectsLocationsAgentsDeleteCall struct {
17075	s          *Service
17076	name       string
17077	urlParams_ gensupport.URLParams
17078	ctx_       context.Context
17079	header_    http.Header
17080}
17081
17082// Delete: Deletes the specified agent.
17083//
17084// - name: The name of the agent to delete. Format:
17085//   `projects//locations//agents/`.
17086func (r *ProjectsLocationsAgentsService) Delete(name string) *ProjectsLocationsAgentsDeleteCall {
17087	c := &ProjectsLocationsAgentsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17088	c.name = name
17089	return c
17090}
17091
17092// Fields allows partial responses to be retrieved. See
17093// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17094// for more information.
17095func (c *ProjectsLocationsAgentsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsDeleteCall {
17096	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17097	return c
17098}
17099
17100// Context sets the context to be used in this call's Do method. Any
17101// pending HTTP request will be aborted if the provided context is
17102// canceled.
17103func (c *ProjectsLocationsAgentsDeleteCall) Context(ctx context.Context) *ProjectsLocationsAgentsDeleteCall {
17104	c.ctx_ = ctx
17105	return c
17106}
17107
17108// Header returns an http.Header that can be modified by the caller to
17109// add HTTP headers to the request.
17110func (c *ProjectsLocationsAgentsDeleteCall) Header() http.Header {
17111	if c.header_ == nil {
17112		c.header_ = make(http.Header)
17113	}
17114	return c.header_
17115}
17116
17117func (c *ProjectsLocationsAgentsDeleteCall) doRequest(alt string) (*http.Response, error) {
17118	reqHeaders := make(http.Header)
17119	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
17120	for k, v := range c.header_ {
17121		reqHeaders[k] = v
17122	}
17123	reqHeaders.Set("User-Agent", c.s.userAgent())
17124	var body io.Reader = nil
17125	c.urlParams_.Set("alt", alt)
17126	c.urlParams_.Set("prettyPrint", "false")
17127	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
17128	urls += "?" + c.urlParams_.Encode()
17129	req, err := http.NewRequest("DELETE", urls, body)
17130	if err != nil {
17131		return nil, err
17132	}
17133	req.Header = reqHeaders
17134	googleapi.Expand(req.URL, map[string]string{
17135		"name": c.name,
17136	})
17137	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17138}
17139
17140// Do executes the "dialogflow.projects.locations.agents.delete" call.
17141// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
17142// non-2xx status code is an error. Response headers are in either
17143// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
17144// returned at all) in error.(*googleapi.Error).Header. Use
17145// googleapi.IsNotModified to check whether the returned error was
17146// because http.StatusNotModified was returned.
17147func (c *ProjectsLocationsAgentsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
17148	gensupport.SetOptions(c.urlParams_, opts...)
17149	res, err := c.doRequest("json")
17150	if res != nil && res.StatusCode == http.StatusNotModified {
17151		if res.Body != nil {
17152			res.Body.Close()
17153		}
17154		return nil, &googleapi.Error{
17155			Code:   res.StatusCode,
17156			Header: res.Header,
17157		}
17158	}
17159	if err != nil {
17160		return nil, err
17161	}
17162	defer googleapi.CloseBody(res)
17163	if err := googleapi.CheckResponse(res); err != nil {
17164		return nil, err
17165	}
17166	ret := &GoogleProtobufEmpty{
17167		ServerResponse: googleapi.ServerResponse{
17168			Header:         res.Header,
17169			HTTPStatusCode: res.StatusCode,
17170		},
17171	}
17172	target := &ret
17173	if err := gensupport.DecodeResponse(target, res); err != nil {
17174		return nil, err
17175	}
17176	return ret, nil
17177	// {
17178	//   "description": "Deletes the specified agent.",
17179	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}",
17180	//   "httpMethod": "DELETE",
17181	//   "id": "dialogflow.projects.locations.agents.delete",
17182	//   "parameterOrder": [
17183	//     "name"
17184	//   ],
17185	//   "parameters": {
17186	//     "name": {
17187	//       "description": "Required. The name of the agent to delete. Format: `projects//locations//agents/`.",
17188	//       "location": "path",
17189	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
17190	//       "required": true,
17191	//       "type": "string"
17192	//     }
17193	//   },
17194	//   "path": "v3/{+name}",
17195	//   "response": {
17196	//     "$ref": "GoogleProtobufEmpty"
17197	//   },
17198	//   "scopes": [
17199	//     "https://www.googleapis.com/auth/cloud-platform",
17200	//     "https://www.googleapis.com/auth/dialogflow"
17201	//   ]
17202	// }
17203
17204}
17205
17206// method id "dialogflow.projects.locations.agents.export":
17207
17208type ProjectsLocationsAgentsExportCall struct {
17209	s                                           *Service
17210	name                                        string
17211	googleclouddialogflowcxv3exportagentrequest *GoogleCloudDialogflowCxV3ExportAgentRequest
17212	urlParams_                                  gensupport.URLParams
17213	ctx_                                        context.Context
17214	header_                                     http.Header
17215}
17216
17217// Export: Exports the specified agent to a binary file.
17218//
17219// - name: The name of the agent to export. Format:
17220//   `projects//locations//agents/`.
17221func (r *ProjectsLocationsAgentsService) Export(name string, googleclouddialogflowcxv3exportagentrequest *GoogleCloudDialogflowCxV3ExportAgentRequest) *ProjectsLocationsAgentsExportCall {
17222	c := &ProjectsLocationsAgentsExportCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17223	c.name = name
17224	c.googleclouddialogflowcxv3exportagentrequest = googleclouddialogflowcxv3exportagentrequest
17225	return c
17226}
17227
17228// Fields allows partial responses to be retrieved. See
17229// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17230// for more information.
17231func (c *ProjectsLocationsAgentsExportCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsExportCall {
17232	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17233	return c
17234}
17235
17236// Context sets the context to be used in this call's Do method. Any
17237// pending HTTP request will be aborted if the provided context is
17238// canceled.
17239func (c *ProjectsLocationsAgentsExportCall) Context(ctx context.Context) *ProjectsLocationsAgentsExportCall {
17240	c.ctx_ = ctx
17241	return c
17242}
17243
17244// Header returns an http.Header that can be modified by the caller to
17245// add HTTP headers to the request.
17246func (c *ProjectsLocationsAgentsExportCall) Header() http.Header {
17247	if c.header_ == nil {
17248		c.header_ = make(http.Header)
17249	}
17250	return c.header_
17251}
17252
17253func (c *ProjectsLocationsAgentsExportCall) doRequest(alt string) (*http.Response, error) {
17254	reqHeaders := make(http.Header)
17255	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
17256	for k, v := range c.header_ {
17257		reqHeaders[k] = v
17258	}
17259	reqHeaders.Set("User-Agent", c.s.userAgent())
17260	var body io.Reader = nil
17261	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3exportagentrequest)
17262	if err != nil {
17263		return nil, err
17264	}
17265	reqHeaders.Set("Content-Type", "application/json")
17266	c.urlParams_.Set("alt", alt)
17267	c.urlParams_.Set("prettyPrint", "false")
17268	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}:export")
17269	urls += "?" + c.urlParams_.Encode()
17270	req, err := http.NewRequest("POST", urls, body)
17271	if err != nil {
17272		return nil, err
17273	}
17274	req.Header = reqHeaders
17275	googleapi.Expand(req.URL, map[string]string{
17276		"name": c.name,
17277	})
17278	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17279}
17280
17281// Do executes the "dialogflow.projects.locations.agents.export" call.
17282// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
17283// Any non-2xx status code is an error. Response headers are in either
17284// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
17285// was returned at all) in error.(*googleapi.Error).Header. Use
17286// googleapi.IsNotModified to check whether the returned error was
17287// because http.StatusNotModified was returned.
17288func (c *ProjectsLocationsAgentsExportCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
17289	gensupport.SetOptions(c.urlParams_, opts...)
17290	res, err := c.doRequest("json")
17291	if res != nil && res.StatusCode == http.StatusNotModified {
17292		if res.Body != nil {
17293			res.Body.Close()
17294		}
17295		return nil, &googleapi.Error{
17296			Code:   res.StatusCode,
17297			Header: res.Header,
17298		}
17299	}
17300	if err != nil {
17301		return nil, err
17302	}
17303	defer googleapi.CloseBody(res)
17304	if err := googleapi.CheckResponse(res); err != nil {
17305		return nil, err
17306	}
17307	ret := &GoogleLongrunningOperation{
17308		ServerResponse: googleapi.ServerResponse{
17309			Header:         res.Header,
17310			HTTPStatusCode: res.StatusCode,
17311		},
17312	}
17313	target := &ret
17314	if err := gensupport.DecodeResponse(target, res); err != nil {
17315		return nil, err
17316	}
17317	return ret, nil
17318	// {
17319	//   "description": "Exports the specified agent to a binary file.",
17320	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}:export",
17321	//   "httpMethod": "POST",
17322	//   "id": "dialogflow.projects.locations.agents.export",
17323	//   "parameterOrder": [
17324	//     "name"
17325	//   ],
17326	//   "parameters": {
17327	//     "name": {
17328	//       "description": "Required. The name of the agent to export. Format: `projects//locations//agents/`.",
17329	//       "location": "path",
17330	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
17331	//       "required": true,
17332	//       "type": "string"
17333	//     }
17334	//   },
17335	//   "path": "v3/{+name}:export",
17336	//   "request": {
17337	//     "$ref": "GoogleCloudDialogflowCxV3ExportAgentRequest"
17338	//   },
17339	//   "response": {
17340	//     "$ref": "GoogleLongrunningOperation"
17341	//   },
17342	//   "scopes": [
17343	//     "https://www.googleapis.com/auth/cloud-platform",
17344	//     "https://www.googleapis.com/auth/dialogflow"
17345	//   ]
17346	// }
17347
17348}
17349
17350// method id "dialogflow.projects.locations.agents.get":
17351
17352type ProjectsLocationsAgentsGetCall struct {
17353	s            *Service
17354	name         string
17355	urlParams_   gensupport.URLParams
17356	ifNoneMatch_ string
17357	ctx_         context.Context
17358	header_      http.Header
17359}
17360
17361// Get: Retrieves the specified agent.
17362//
17363// - name: The name of the agent. Format:
17364//   `projects//locations//agents/`.
17365func (r *ProjectsLocationsAgentsService) Get(name string) *ProjectsLocationsAgentsGetCall {
17366	c := &ProjectsLocationsAgentsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17367	c.name = name
17368	return c
17369}
17370
17371// Fields allows partial responses to be retrieved. See
17372// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17373// for more information.
17374func (c *ProjectsLocationsAgentsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsGetCall {
17375	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17376	return c
17377}
17378
17379// IfNoneMatch sets the optional parameter which makes the operation
17380// fail if the object's ETag matches the given value. This is useful for
17381// getting updates only after the object has changed since the last
17382// request. Use googleapi.IsNotModified to check whether the response
17383// error from Do is the result of In-None-Match.
17384func (c *ProjectsLocationsAgentsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsGetCall {
17385	c.ifNoneMatch_ = entityTag
17386	return c
17387}
17388
17389// Context sets the context to be used in this call's Do method. Any
17390// pending HTTP request will be aborted if the provided context is
17391// canceled.
17392func (c *ProjectsLocationsAgentsGetCall) Context(ctx context.Context) *ProjectsLocationsAgentsGetCall {
17393	c.ctx_ = ctx
17394	return c
17395}
17396
17397// Header returns an http.Header that can be modified by the caller to
17398// add HTTP headers to the request.
17399func (c *ProjectsLocationsAgentsGetCall) Header() http.Header {
17400	if c.header_ == nil {
17401		c.header_ = make(http.Header)
17402	}
17403	return c.header_
17404}
17405
17406func (c *ProjectsLocationsAgentsGetCall) doRequest(alt string) (*http.Response, error) {
17407	reqHeaders := make(http.Header)
17408	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
17409	for k, v := range c.header_ {
17410		reqHeaders[k] = v
17411	}
17412	reqHeaders.Set("User-Agent", c.s.userAgent())
17413	if c.ifNoneMatch_ != "" {
17414		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
17415	}
17416	var body io.Reader = nil
17417	c.urlParams_.Set("alt", alt)
17418	c.urlParams_.Set("prettyPrint", "false")
17419	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
17420	urls += "?" + c.urlParams_.Encode()
17421	req, err := http.NewRequest("GET", urls, body)
17422	if err != nil {
17423		return nil, err
17424	}
17425	req.Header = reqHeaders
17426	googleapi.Expand(req.URL, map[string]string{
17427		"name": c.name,
17428	})
17429	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17430}
17431
17432// Do executes the "dialogflow.projects.locations.agents.get" call.
17433// Exactly one of *GoogleCloudDialogflowCxV3Agent or error will be
17434// non-nil. Any non-2xx status code is an error. Response headers are in
17435// either *GoogleCloudDialogflowCxV3Agent.ServerResponse.Header or (if a
17436// response was returned at all) in error.(*googleapi.Error).Header. Use
17437// googleapi.IsNotModified to check whether the returned error was
17438// because http.StatusNotModified was returned.
17439func (c *ProjectsLocationsAgentsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3Agent, error) {
17440	gensupport.SetOptions(c.urlParams_, opts...)
17441	res, err := c.doRequest("json")
17442	if res != nil && res.StatusCode == http.StatusNotModified {
17443		if res.Body != nil {
17444			res.Body.Close()
17445		}
17446		return nil, &googleapi.Error{
17447			Code:   res.StatusCode,
17448			Header: res.Header,
17449		}
17450	}
17451	if err != nil {
17452		return nil, err
17453	}
17454	defer googleapi.CloseBody(res)
17455	if err := googleapi.CheckResponse(res); err != nil {
17456		return nil, err
17457	}
17458	ret := &GoogleCloudDialogflowCxV3Agent{
17459		ServerResponse: googleapi.ServerResponse{
17460			Header:         res.Header,
17461			HTTPStatusCode: res.StatusCode,
17462		},
17463	}
17464	target := &ret
17465	if err := gensupport.DecodeResponse(target, res); err != nil {
17466		return nil, err
17467	}
17468	return ret, nil
17469	// {
17470	//   "description": "Retrieves the specified agent.",
17471	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}",
17472	//   "httpMethod": "GET",
17473	//   "id": "dialogflow.projects.locations.agents.get",
17474	//   "parameterOrder": [
17475	//     "name"
17476	//   ],
17477	//   "parameters": {
17478	//     "name": {
17479	//       "description": "Required. The name of the agent. Format: `projects//locations//agents/`.",
17480	//       "location": "path",
17481	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
17482	//       "required": true,
17483	//       "type": "string"
17484	//     }
17485	//   },
17486	//   "path": "v3/{+name}",
17487	//   "response": {
17488	//     "$ref": "GoogleCloudDialogflowCxV3Agent"
17489	//   },
17490	//   "scopes": [
17491	//     "https://www.googleapis.com/auth/cloud-platform",
17492	//     "https://www.googleapis.com/auth/dialogflow"
17493	//   ]
17494	// }
17495
17496}
17497
17498// method id "dialogflow.projects.locations.agents.getValidationResult":
17499
17500type ProjectsLocationsAgentsGetValidationResultCall struct {
17501	s            *Service
17502	name         string
17503	urlParams_   gensupport.URLParams
17504	ifNoneMatch_ string
17505	ctx_         context.Context
17506	header_      http.Header
17507}
17508
17509// GetValidationResult: Gets the latest agent validation result. Agent
17510// validation is performed when ValidateAgent is called.
17511//
17512// - name: The agent name. Format:
17513//   `projects//locations//agents//validationResult`.
17514func (r *ProjectsLocationsAgentsService) GetValidationResult(name string) *ProjectsLocationsAgentsGetValidationResultCall {
17515	c := &ProjectsLocationsAgentsGetValidationResultCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17516	c.name = name
17517	return c
17518}
17519
17520// LanguageCode sets the optional parameter "languageCode": If not
17521// specified, the agent's default language is used.
17522func (c *ProjectsLocationsAgentsGetValidationResultCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsGetValidationResultCall {
17523	c.urlParams_.Set("languageCode", languageCode)
17524	return c
17525}
17526
17527// Fields allows partial responses to be retrieved. See
17528// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17529// for more information.
17530func (c *ProjectsLocationsAgentsGetValidationResultCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsGetValidationResultCall {
17531	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17532	return c
17533}
17534
17535// IfNoneMatch sets the optional parameter which makes the operation
17536// fail if the object's ETag matches the given value. This is useful for
17537// getting updates only after the object has changed since the last
17538// request. Use googleapi.IsNotModified to check whether the response
17539// error from Do is the result of In-None-Match.
17540func (c *ProjectsLocationsAgentsGetValidationResultCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsGetValidationResultCall {
17541	c.ifNoneMatch_ = entityTag
17542	return c
17543}
17544
17545// Context sets the context to be used in this call's Do method. Any
17546// pending HTTP request will be aborted if the provided context is
17547// canceled.
17548func (c *ProjectsLocationsAgentsGetValidationResultCall) Context(ctx context.Context) *ProjectsLocationsAgentsGetValidationResultCall {
17549	c.ctx_ = ctx
17550	return c
17551}
17552
17553// Header returns an http.Header that can be modified by the caller to
17554// add HTTP headers to the request.
17555func (c *ProjectsLocationsAgentsGetValidationResultCall) Header() http.Header {
17556	if c.header_ == nil {
17557		c.header_ = make(http.Header)
17558	}
17559	return c.header_
17560}
17561
17562func (c *ProjectsLocationsAgentsGetValidationResultCall) doRequest(alt string) (*http.Response, error) {
17563	reqHeaders := make(http.Header)
17564	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
17565	for k, v := range c.header_ {
17566		reqHeaders[k] = v
17567	}
17568	reqHeaders.Set("User-Agent", c.s.userAgent())
17569	if c.ifNoneMatch_ != "" {
17570		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
17571	}
17572	var body io.Reader = nil
17573	c.urlParams_.Set("alt", alt)
17574	c.urlParams_.Set("prettyPrint", "false")
17575	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
17576	urls += "?" + c.urlParams_.Encode()
17577	req, err := http.NewRequest("GET", urls, body)
17578	if err != nil {
17579		return nil, err
17580	}
17581	req.Header = reqHeaders
17582	googleapi.Expand(req.URL, map[string]string{
17583		"name": c.name,
17584	})
17585	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17586}
17587
17588// Do executes the "dialogflow.projects.locations.agents.getValidationResult" call.
17589// Exactly one of *GoogleCloudDialogflowCxV3AgentValidationResult or
17590// error will be non-nil. Any non-2xx status code is an error. Response
17591// headers are in either
17592// *GoogleCloudDialogflowCxV3AgentValidationResult.ServerResponse.Header
17593// or (if a response was returned at all) in
17594// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
17595// whether the returned error was because http.StatusNotModified was
17596// returned.
17597func (c *ProjectsLocationsAgentsGetValidationResultCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3AgentValidationResult, error) {
17598	gensupport.SetOptions(c.urlParams_, opts...)
17599	res, err := c.doRequest("json")
17600	if res != nil && res.StatusCode == http.StatusNotModified {
17601		if res.Body != nil {
17602			res.Body.Close()
17603		}
17604		return nil, &googleapi.Error{
17605			Code:   res.StatusCode,
17606			Header: res.Header,
17607		}
17608	}
17609	if err != nil {
17610		return nil, err
17611	}
17612	defer googleapi.CloseBody(res)
17613	if err := googleapi.CheckResponse(res); err != nil {
17614		return nil, err
17615	}
17616	ret := &GoogleCloudDialogflowCxV3AgentValidationResult{
17617		ServerResponse: googleapi.ServerResponse{
17618			Header:         res.Header,
17619			HTTPStatusCode: res.StatusCode,
17620		},
17621	}
17622	target := &ret
17623	if err := gensupport.DecodeResponse(target, res); err != nil {
17624		return nil, err
17625	}
17626	return ret, nil
17627	// {
17628	//   "description": "Gets the latest agent validation result. Agent validation is performed when ValidateAgent is called.",
17629	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/validationResult",
17630	//   "httpMethod": "GET",
17631	//   "id": "dialogflow.projects.locations.agents.getValidationResult",
17632	//   "parameterOrder": [
17633	//     "name"
17634	//   ],
17635	//   "parameters": {
17636	//     "languageCode": {
17637	//       "description": "If not specified, the agent's default language is used.",
17638	//       "location": "query",
17639	//       "type": "string"
17640	//     },
17641	//     "name": {
17642	//       "description": "Required. The agent name. Format: `projects//locations//agents//validationResult`.",
17643	//       "location": "path",
17644	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/validationResult$",
17645	//       "required": true,
17646	//       "type": "string"
17647	//     }
17648	//   },
17649	//   "path": "v3/{+name}",
17650	//   "response": {
17651	//     "$ref": "GoogleCloudDialogflowCxV3AgentValidationResult"
17652	//   },
17653	//   "scopes": [
17654	//     "https://www.googleapis.com/auth/cloud-platform",
17655	//     "https://www.googleapis.com/auth/dialogflow"
17656	//   ]
17657	// }
17658
17659}
17660
17661// method id "dialogflow.projects.locations.agents.list":
17662
17663type ProjectsLocationsAgentsListCall struct {
17664	s            *Service
17665	parent       string
17666	urlParams_   gensupport.URLParams
17667	ifNoneMatch_ string
17668	ctx_         context.Context
17669	header_      http.Header
17670}
17671
17672// List: Returns the list of all agents in the specified location.
17673//
17674// - parent: The location to list all agents for. Format:
17675//   `projects//locations/`.
17676func (r *ProjectsLocationsAgentsService) List(parent string) *ProjectsLocationsAgentsListCall {
17677	c := &ProjectsLocationsAgentsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17678	c.parent = parent
17679	return c
17680}
17681
17682// PageSize sets the optional parameter "pageSize": The maximum number
17683// of items to return in a single page. By default 100 and at most 1000.
17684func (c *ProjectsLocationsAgentsListCall) PageSize(pageSize int64) *ProjectsLocationsAgentsListCall {
17685	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
17686	return c
17687}
17688
17689// PageToken sets the optional parameter "pageToken": The
17690// next_page_token value returned from a previous list request.
17691func (c *ProjectsLocationsAgentsListCall) PageToken(pageToken string) *ProjectsLocationsAgentsListCall {
17692	c.urlParams_.Set("pageToken", pageToken)
17693	return c
17694}
17695
17696// Fields allows partial responses to be retrieved. See
17697// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17698// for more information.
17699func (c *ProjectsLocationsAgentsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsListCall {
17700	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17701	return c
17702}
17703
17704// IfNoneMatch sets the optional parameter which makes the operation
17705// fail if the object's ETag matches the given value. This is useful for
17706// getting updates only after the object has changed since the last
17707// request. Use googleapi.IsNotModified to check whether the response
17708// error from Do is the result of In-None-Match.
17709func (c *ProjectsLocationsAgentsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsListCall {
17710	c.ifNoneMatch_ = entityTag
17711	return c
17712}
17713
17714// Context sets the context to be used in this call's Do method. Any
17715// pending HTTP request will be aborted if the provided context is
17716// canceled.
17717func (c *ProjectsLocationsAgentsListCall) Context(ctx context.Context) *ProjectsLocationsAgentsListCall {
17718	c.ctx_ = ctx
17719	return c
17720}
17721
17722// Header returns an http.Header that can be modified by the caller to
17723// add HTTP headers to the request.
17724func (c *ProjectsLocationsAgentsListCall) Header() http.Header {
17725	if c.header_ == nil {
17726		c.header_ = make(http.Header)
17727	}
17728	return c.header_
17729}
17730
17731func (c *ProjectsLocationsAgentsListCall) doRequest(alt string) (*http.Response, error) {
17732	reqHeaders := make(http.Header)
17733	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
17734	for k, v := range c.header_ {
17735		reqHeaders[k] = v
17736	}
17737	reqHeaders.Set("User-Agent", c.s.userAgent())
17738	if c.ifNoneMatch_ != "" {
17739		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
17740	}
17741	var body io.Reader = nil
17742	c.urlParams_.Set("alt", alt)
17743	c.urlParams_.Set("prettyPrint", "false")
17744	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/agents")
17745	urls += "?" + c.urlParams_.Encode()
17746	req, err := http.NewRequest("GET", urls, body)
17747	if err != nil {
17748		return nil, err
17749	}
17750	req.Header = reqHeaders
17751	googleapi.Expand(req.URL, map[string]string{
17752		"parent": c.parent,
17753	})
17754	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17755}
17756
17757// Do executes the "dialogflow.projects.locations.agents.list" call.
17758// Exactly one of *GoogleCloudDialogflowCxV3ListAgentsResponse or error
17759// will be non-nil. Any non-2xx status code is an error. Response
17760// headers are in either
17761// *GoogleCloudDialogflowCxV3ListAgentsResponse.ServerResponse.Header or
17762// (if a response was returned at all) in
17763// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
17764// whether the returned error was because http.StatusNotModified was
17765// returned.
17766func (c *ProjectsLocationsAgentsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3ListAgentsResponse, error) {
17767	gensupport.SetOptions(c.urlParams_, opts...)
17768	res, err := c.doRequest("json")
17769	if res != nil && res.StatusCode == http.StatusNotModified {
17770		if res.Body != nil {
17771			res.Body.Close()
17772		}
17773		return nil, &googleapi.Error{
17774			Code:   res.StatusCode,
17775			Header: res.Header,
17776		}
17777	}
17778	if err != nil {
17779		return nil, err
17780	}
17781	defer googleapi.CloseBody(res)
17782	if err := googleapi.CheckResponse(res); err != nil {
17783		return nil, err
17784	}
17785	ret := &GoogleCloudDialogflowCxV3ListAgentsResponse{
17786		ServerResponse: googleapi.ServerResponse{
17787			Header:         res.Header,
17788			HTTPStatusCode: res.StatusCode,
17789		},
17790	}
17791	target := &ret
17792	if err := gensupport.DecodeResponse(target, res); err != nil {
17793		return nil, err
17794	}
17795	return ret, nil
17796	// {
17797	//   "description": "Returns the list of all agents in the specified location.",
17798	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents",
17799	//   "httpMethod": "GET",
17800	//   "id": "dialogflow.projects.locations.agents.list",
17801	//   "parameterOrder": [
17802	//     "parent"
17803	//   ],
17804	//   "parameters": {
17805	//     "pageSize": {
17806	//       "description": "The maximum number of items to return in a single page. By default 100 and at most 1000.",
17807	//       "format": "int32",
17808	//       "location": "query",
17809	//       "type": "integer"
17810	//     },
17811	//     "pageToken": {
17812	//       "description": "The next_page_token value returned from a previous list request.",
17813	//       "location": "query",
17814	//       "type": "string"
17815	//     },
17816	//     "parent": {
17817	//       "description": "Required. The location to list all agents for. Format: `projects//locations/`.",
17818	//       "location": "path",
17819	//       "pattern": "^projects/[^/]+/locations/[^/]+$",
17820	//       "required": true,
17821	//       "type": "string"
17822	//     }
17823	//   },
17824	//   "path": "v3/{+parent}/agents",
17825	//   "response": {
17826	//     "$ref": "GoogleCloudDialogflowCxV3ListAgentsResponse"
17827	//   },
17828	//   "scopes": [
17829	//     "https://www.googleapis.com/auth/cloud-platform",
17830	//     "https://www.googleapis.com/auth/dialogflow"
17831	//   ]
17832	// }
17833
17834}
17835
17836// Pages invokes f for each page of results.
17837// A non-nil error returned from f will halt the iteration.
17838// The provided context supersedes any context provided to the Context method.
17839func (c *ProjectsLocationsAgentsListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3ListAgentsResponse) error) error {
17840	c.ctx_ = ctx
17841	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
17842	for {
17843		x, err := c.Do()
17844		if err != nil {
17845			return err
17846		}
17847		if err := f(x); err != nil {
17848			return err
17849		}
17850		if x.NextPageToken == "" {
17851			return nil
17852		}
17853		c.PageToken(x.NextPageToken)
17854	}
17855}
17856
17857// method id "dialogflow.projects.locations.agents.patch":
17858
17859type ProjectsLocationsAgentsPatchCall struct {
17860	s                              *Service
17861	nameid                         string
17862	googleclouddialogflowcxv3agent *GoogleCloudDialogflowCxV3Agent
17863	urlParams_                     gensupport.URLParams
17864	ctx_                           context.Context
17865	header_                        http.Header
17866}
17867
17868// Patch: Updates the specified agent. Note: You should always train
17869// flows prior to sending them queries. See the training documentation
17870// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
17871//
17872// - name: The unique identifier of the agent. Required for the
17873//   Agents.UpdateAgent method. Agents.CreateAgent populates the name
17874//   automatically. Format: `projects//locations//agents/`.
17875func (r *ProjectsLocationsAgentsService) Patch(nameid string, googleclouddialogflowcxv3agent *GoogleCloudDialogflowCxV3Agent) *ProjectsLocationsAgentsPatchCall {
17876	c := &ProjectsLocationsAgentsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17877	c.nameid = nameid
17878	c.googleclouddialogflowcxv3agent = googleclouddialogflowcxv3agent
17879	return c
17880}
17881
17882// UpdateMask sets the optional parameter "updateMask": The mask to
17883// control which fields get updated. If the mask is not present, all
17884// fields will be updated.
17885func (c *ProjectsLocationsAgentsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsAgentsPatchCall {
17886	c.urlParams_.Set("updateMask", updateMask)
17887	return c
17888}
17889
17890// Fields allows partial responses to be retrieved. See
17891// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17892// for more information.
17893func (c *ProjectsLocationsAgentsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsPatchCall {
17894	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17895	return c
17896}
17897
17898// Context sets the context to be used in this call's Do method. Any
17899// pending HTTP request will be aborted if the provided context is
17900// canceled.
17901func (c *ProjectsLocationsAgentsPatchCall) Context(ctx context.Context) *ProjectsLocationsAgentsPatchCall {
17902	c.ctx_ = ctx
17903	return c
17904}
17905
17906// Header returns an http.Header that can be modified by the caller to
17907// add HTTP headers to the request.
17908func (c *ProjectsLocationsAgentsPatchCall) Header() http.Header {
17909	if c.header_ == nil {
17910		c.header_ = make(http.Header)
17911	}
17912	return c.header_
17913}
17914
17915func (c *ProjectsLocationsAgentsPatchCall) doRequest(alt string) (*http.Response, error) {
17916	reqHeaders := make(http.Header)
17917	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
17918	for k, v := range c.header_ {
17919		reqHeaders[k] = v
17920	}
17921	reqHeaders.Set("User-Agent", c.s.userAgent())
17922	var body io.Reader = nil
17923	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3agent)
17924	if err != nil {
17925		return nil, err
17926	}
17927	reqHeaders.Set("Content-Type", "application/json")
17928	c.urlParams_.Set("alt", alt)
17929	c.urlParams_.Set("prettyPrint", "false")
17930	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
17931	urls += "?" + c.urlParams_.Encode()
17932	req, err := http.NewRequest("PATCH", urls, body)
17933	if err != nil {
17934		return nil, err
17935	}
17936	req.Header = reqHeaders
17937	googleapi.Expand(req.URL, map[string]string{
17938		"name": c.nameid,
17939	})
17940	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17941}
17942
17943// Do executes the "dialogflow.projects.locations.agents.patch" call.
17944// Exactly one of *GoogleCloudDialogflowCxV3Agent or error will be
17945// non-nil. Any non-2xx status code is an error. Response headers are in
17946// either *GoogleCloudDialogflowCxV3Agent.ServerResponse.Header or (if a
17947// response was returned at all) in error.(*googleapi.Error).Header. Use
17948// googleapi.IsNotModified to check whether the returned error was
17949// because http.StatusNotModified was returned.
17950func (c *ProjectsLocationsAgentsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3Agent, error) {
17951	gensupport.SetOptions(c.urlParams_, opts...)
17952	res, err := c.doRequest("json")
17953	if res != nil && res.StatusCode == http.StatusNotModified {
17954		if res.Body != nil {
17955			res.Body.Close()
17956		}
17957		return nil, &googleapi.Error{
17958			Code:   res.StatusCode,
17959			Header: res.Header,
17960		}
17961	}
17962	if err != nil {
17963		return nil, err
17964	}
17965	defer googleapi.CloseBody(res)
17966	if err := googleapi.CheckResponse(res); err != nil {
17967		return nil, err
17968	}
17969	ret := &GoogleCloudDialogflowCxV3Agent{
17970		ServerResponse: googleapi.ServerResponse{
17971			Header:         res.Header,
17972			HTTPStatusCode: res.StatusCode,
17973		},
17974	}
17975	target := &ret
17976	if err := gensupport.DecodeResponse(target, res); err != nil {
17977		return nil, err
17978	}
17979	return ret, nil
17980	// {
17981	//   "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).",
17982	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}",
17983	//   "httpMethod": "PATCH",
17984	//   "id": "dialogflow.projects.locations.agents.patch",
17985	//   "parameterOrder": [
17986	//     "name"
17987	//   ],
17988	//   "parameters": {
17989	//     "name": {
17990	//       "description": "The unique identifier of the agent. Required for the Agents.UpdateAgent method. Agents.CreateAgent populates the name automatically. Format: `projects//locations//agents/`.",
17991	//       "location": "path",
17992	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
17993	//       "required": true,
17994	//       "type": "string"
17995	//     },
17996	//     "updateMask": {
17997	//       "description": "The mask to control which fields get updated. If the mask is not present, all fields will be updated.",
17998	//       "format": "google-fieldmask",
17999	//       "location": "query",
18000	//       "type": "string"
18001	//     }
18002	//   },
18003	//   "path": "v3/{+name}",
18004	//   "request": {
18005	//     "$ref": "GoogleCloudDialogflowCxV3Agent"
18006	//   },
18007	//   "response": {
18008	//     "$ref": "GoogleCloudDialogflowCxV3Agent"
18009	//   },
18010	//   "scopes": [
18011	//     "https://www.googleapis.com/auth/cloud-platform",
18012	//     "https://www.googleapis.com/auth/dialogflow"
18013	//   ]
18014	// }
18015
18016}
18017
18018// method id "dialogflow.projects.locations.agents.restore":
18019
18020type ProjectsLocationsAgentsRestoreCall struct {
18021	s                                            *Service
18022	name                                         string
18023	googleclouddialogflowcxv3restoreagentrequest *GoogleCloudDialogflowCxV3RestoreAgentRequest
18024	urlParams_                                   gensupport.URLParams
18025	ctx_                                         context.Context
18026	header_                                      http.Header
18027}
18028
18029// Restore: Restores the specified agent from a binary file. Replaces
18030// the current agent with a new one. Note that all existing resources in
18031// agent (e.g. intents, entity types, flows) will be removed. Note: You
18032// should always train flows prior to sending them queries. See the
18033// training documentation
18034// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
18035//
18036// - name: The name of the agent to restore into. Format:
18037//   `projects//locations//agents/`.
18038func (r *ProjectsLocationsAgentsService) Restore(name string, googleclouddialogflowcxv3restoreagentrequest *GoogleCloudDialogflowCxV3RestoreAgentRequest) *ProjectsLocationsAgentsRestoreCall {
18039	c := &ProjectsLocationsAgentsRestoreCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18040	c.name = name
18041	c.googleclouddialogflowcxv3restoreagentrequest = googleclouddialogflowcxv3restoreagentrequest
18042	return c
18043}
18044
18045// Fields allows partial responses to be retrieved. See
18046// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18047// for more information.
18048func (c *ProjectsLocationsAgentsRestoreCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsRestoreCall {
18049	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18050	return c
18051}
18052
18053// Context sets the context to be used in this call's Do method. Any
18054// pending HTTP request will be aborted if the provided context is
18055// canceled.
18056func (c *ProjectsLocationsAgentsRestoreCall) Context(ctx context.Context) *ProjectsLocationsAgentsRestoreCall {
18057	c.ctx_ = ctx
18058	return c
18059}
18060
18061// Header returns an http.Header that can be modified by the caller to
18062// add HTTP headers to the request.
18063func (c *ProjectsLocationsAgentsRestoreCall) Header() http.Header {
18064	if c.header_ == nil {
18065		c.header_ = make(http.Header)
18066	}
18067	return c.header_
18068}
18069
18070func (c *ProjectsLocationsAgentsRestoreCall) doRequest(alt string) (*http.Response, error) {
18071	reqHeaders := make(http.Header)
18072	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
18073	for k, v := range c.header_ {
18074		reqHeaders[k] = v
18075	}
18076	reqHeaders.Set("User-Agent", c.s.userAgent())
18077	var body io.Reader = nil
18078	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3restoreagentrequest)
18079	if err != nil {
18080		return nil, err
18081	}
18082	reqHeaders.Set("Content-Type", "application/json")
18083	c.urlParams_.Set("alt", alt)
18084	c.urlParams_.Set("prettyPrint", "false")
18085	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}:restore")
18086	urls += "?" + c.urlParams_.Encode()
18087	req, err := http.NewRequest("POST", urls, body)
18088	if err != nil {
18089		return nil, err
18090	}
18091	req.Header = reqHeaders
18092	googleapi.Expand(req.URL, map[string]string{
18093		"name": c.name,
18094	})
18095	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18096}
18097
18098// Do executes the "dialogflow.projects.locations.agents.restore" call.
18099// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
18100// Any non-2xx status code is an error. Response headers are in either
18101// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
18102// was returned at all) in error.(*googleapi.Error).Header. Use
18103// googleapi.IsNotModified to check whether the returned error was
18104// because http.StatusNotModified was returned.
18105func (c *ProjectsLocationsAgentsRestoreCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
18106	gensupport.SetOptions(c.urlParams_, opts...)
18107	res, err := c.doRequest("json")
18108	if res != nil && res.StatusCode == http.StatusNotModified {
18109		if res.Body != nil {
18110			res.Body.Close()
18111		}
18112		return nil, &googleapi.Error{
18113			Code:   res.StatusCode,
18114			Header: res.Header,
18115		}
18116	}
18117	if err != nil {
18118		return nil, err
18119	}
18120	defer googleapi.CloseBody(res)
18121	if err := googleapi.CheckResponse(res); err != nil {
18122		return nil, err
18123	}
18124	ret := &GoogleLongrunningOperation{
18125		ServerResponse: googleapi.ServerResponse{
18126			Header:         res.Header,
18127			HTTPStatusCode: res.StatusCode,
18128		},
18129	}
18130	target := &ret
18131	if err := gensupport.DecodeResponse(target, res); err != nil {
18132		return nil, err
18133	}
18134	return ret, nil
18135	// {
18136	//   "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).",
18137	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}:restore",
18138	//   "httpMethod": "POST",
18139	//   "id": "dialogflow.projects.locations.agents.restore",
18140	//   "parameterOrder": [
18141	//     "name"
18142	//   ],
18143	//   "parameters": {
18144	//     "name": {
18145	//       "description": "Required. The name of the agent to restore into. Format: `projects//locations//agents/`.",
18146	//       "location": "path",
18147	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
18148	//       "required": true,
18149	//       "type": "string"
18150	//     }
18151	//   },
18152	//   "path": "v3/{+name}:restore",
18153	//   "request": {
18154	//     "$ref": "GoogleCloudDialogflowCxV3RestoreAgentRequest"
18155	//   },
18156	//   "response": {
18157	//     "$ref": "GoogleLongrunningOperation"
18158	//   },
18159	//   "scopes": [
18160	//     "https://www.googleapis.com/auth/cloud-platform",
18161	//     "https://www.googleapis.com/auth/dialogflow"
18162	//   ]
18163	// }
18164
18165}
18166
18167// method id "dialogflow.projects.locations.agents.validate":
18168
18169type ProjectsLocationsAgentsValidateCall struct {
18170	s                                             *Service
18171	name                                          string
18172	googleclouddialogflowcxv3validateagentrequest *GoogleCloudDialogflowCxV3ValidateAgentRequest
18173	urlParams_                                    gensupport.URLParams
18174	ctx_                                          context.Context
18175	header_                                       http.Header
18176}
18177
18178// Validate: Validates the specified agent and creates or updates
18179// validation results. The agent in draft version is validated. Please
18180// call this API after the training is completed to get the complete
18181// validation results.
18182//
18183// - name: The agent to validate. Format:
18184//   `projects//locations//agents/`.
18185func (r *ProjectsLocationsAgentsService) Validate(name string, googleclouddialogflowcxv3validateagentrequest *GoogleCloudDialogflowCxV3ValidateAgentRequest) *ProjectsLocationsAgentsValidateCall {
18186	c := &ProjectsLocationsAgentsValidateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18187	c.name = name
18188	c.googleclouddialogflowcxv3validateagentrequest = googleclouddialogflowcxv3validateagentrequest
18189	return c
18190}
18191
18192// Fields allows partial responses to be retrieved. See
18193// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18194// for more information.
18195func (c *ProjectsLocationsAgentsValidateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsValidateCall {
18196	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18197	return c
18198}
18199
18200// Context sets the context to be used in this call's Do method. Any
18201// pending HTTP request will be aborted if the provided context is
18202// canceled.
18203func (c *ProjectsLocationsAgentsValidateCall) Context(ctx context.Context) *ProjectsLocationsAgentsValidateCall {
18204	c.ctx_ = ctx
18205	return c
18206}
18207
18208// Header returns an http.Header that can be modified by the caller to
18209// add HTTP headers to the request.
18210func (c *ProjectsLocationsAgentsValidateCall) Header() http.Header {
18211	if c.header_ == nil {
18212		c.header_ = make(http.Header)
18213	}
18214	return c.header_
18215}
18216
18217func (c *ProjectsLocationsAgentsValidateCall) doRequest(alt string) (*http.Response, error) {
18218	reqHeaders := make(http.Header)
18219	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
18220	for k, v := range c.header_ {
18221		reqHeaders[k] = v
18222	}
18223	reqHeaders.Set("User-Agent", c.s.userAgent())
18224	var body io.Reader = nil
18225	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3validateagentrequest)
18226	if err != nil {
18227		return nil, err
18228	}
18229	reqHeaders.Set("Content-Type", "application/json")
18230	c.urlParams_.Set("alt", alt)
18231	c.urlParams_.Set("prettyPrint", "false")
18232	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}:validate")
18233	urls += "?" + c.urlParams_.Encode()
18234	req, err := http.NewRequest("POST", urls, body)
18235	if err != nil {
18236		return nil, err
18237	}
18238	req.Header = reqHeaders
18239	googleapi.Expand(req.URL, map[string]string{
18240		"name": c.name,
18241	})
18242	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18243}
18244
18245// Do executes the "dialogflow.projects.locations.agents.validate" call.
18246// Exactly one of *GoogleCloudDialogflowCxV3AgentValidationResult or
18247// error will be non-nil. Any non-2xx status code is an error. Response
18248// headers are in either
18249// *GoogleCloudDialogflowCxV3AgentValidationResult.ServerResponse.Header
18250// or (if a response was returned at all) in
18251// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
18252// whether the returned error was because http.StatusNotModified was
18253// returned.
18254func (c *ProjectsLocationsAgentsValidateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3AgentValidationResult, error) {
18255	gensupport.SetOptions(c.urlParams_, opts...)
18256	res, err := c.doRequest("json")
18257	if res != nil && res.StatusCode == http.StatusNotModified {
18258		if res.Body != nil {
18259			res.Body.Close()
18260		}
18261		return nil, &googleapi.Error{
18262			Code:   res.StatusCode,
18263			Header: res.Header,
18264		}
18265	}
18266	if err != nil {
18267		return nil, err
18268	}
18269	defer googleapi.CloseBody(res)
18270	if err := googleapi.CheckResponse(res); err != nil {
18271		return nil, err
18272	}
18273	ret := &GoogleCloudDialogflowCxV3AgentValidationResult{
18274		ServerResponse: googleapi.ServerResponse{
18275			Header:         res.Header,
18276			HTTPStatusCode: res.StatusCode,
18277		},
18278	}
18279	target := &ret
18280	if err := gensupport.DecodeResponse(target, res); err != nil {
18281		return nil, err
18282	}
18283	return ret, nil
18284	// {
18285	//   "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.",
18286	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}:validate",
18287	//   "httpMethod": "POST",
18288	//   "id": "dialogflow.projects.locations.agents.validate",
18289	//   "parameterOrder": [
18290	//     "name"
18291	//   ],
18292	//   "parameters": {
18293	//     "name": {
18294	//       "description": "Required. The agent to validate. Format: `projects//locations//agents/`.",
18295	//       "location": "path",
18296	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
18297	//       "required": true,
18298	//       "type": "string"
18299	//     }
18300	//   },
18301	//   "path": "v3/{+name}:validate",
18302	//   "request": {
18303	//     "$ref": "GoogleCloudDialogflowCxV3ValidateAgentRequest"
18304	//   },
18305	//   "response": {
18306	//     "$ref": "GoogleCloudDialogflowCxV3AgentValidationResult"
18307	//   },
18308	//   "scopes": [
18309	//     "https://www.googleapis.com/auth/cloud-platform",
18310	//     "https://www.googleapis.com/auth/dialogflow"
18311	//   ]
18312	// }
18313
18314}
18315
18316// method id "dialogflow.projects.locations.agents.entityTypes.create":
18317
18318type ProjectsLocationsAgentsEntityTypesCreateCall struct {
18319	s                                   *Service
18320	parent                              string
18321	googleclouddialogflowcxv3entitytype *GoogleCloudDialogflowCxV3EntityType
18322	urlParams_                          gensupport.URLParams
18323	ctx_                                context.Context
18324	header_                             http.Header
18325}
18326
18327// Create: Creates an entity type in the specified agent. Note: You
18328// should always train a flow prior to sending it queries. See the
18329// training documentation
18330// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
18331//
18332// - parent: The agent to create a entity type for. Format:
18333//   `projects//locations//agents/`.
18334func (r *ProjectsLocationsAgentsEntityTypesService) Create(parent string, googleclouddialogflowcxv3entitytype *GoogleCloudDialogflowCxV3EntityType) *ProjectsLocationsAgentsEntityTypesCreateCall {
18335	c := &ProjectsLocationsAgentsEntityTypesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18336	c.parent = parent
18337	c.googleclouddialogflowcxv3entitytype = googleclouddialogflowcxv3entitytype
18338	return c
18339}
18340
18341// LanguageCode sets the optional parameter "languageCode": The language
18342// of the following fields in `entity_type`: *
18343// `EntityType.entities.value` * `EntityType.entities.synonyms` *
18344// `EntityType.excluded_phrases.value` If not specified, the agent's
18345// default language is used. Many languages
18346// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
18347// supported. Note: languages must be enabled in the agent before they
18348// can be used.
18349func (c *ProjectsLocationsAgentsEntityTypesCreateCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsEntityTypesCreateCall {
18350	c.urlParams_.Set("languageCode", languageCode)
18351	return c
18352}
18353
18354// Fields allows partial responses to be retrieved. See
18355// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18356// for more information.
18357func (c *ProjectsLocationsAgentsEntityTypesCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEntityTypesCreateCall {
18358	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18359	return c
18360}
18361
18362// Context sets the context to be used in this call's Do method. Any
18363// pending HTTP request will be aborted if the provided context is
18364// canceled.
18365func (c *ProjectsLocationsAgentsEntityTypesCreateCall) Context(ctx context.Context) *ProjectsLocationsAgentsEntityTypesCreateCall {
18366	c.ctx_ = ctx
18367	return c
18368}
18369
18370// Header returns an http.Header that can be modified by the caller to
18371// add HTTP headers to the request.
18372func (c *ProjectsLocationsAgentsEntityTypesCreateCall) Header() http.Header {
18373	if c.header_ == nil {
18374		c.header_ = make(http.Header)
18375	}
18376	return c.header_
18377}
18378
18379func (c *ProjectsLocationsAgentsEntityTypesCreateCall) doRequest(alt string) (*http.Response, error) {
18380	reqHeaders := make(http.Header)
18381	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
18382	for k, v := range c.header_ {
18383		reqHeaders[k] = v
18384	}
18385	reqHeaders.Set("User-Agent", c.s.userAgent())
18386	var body io.Reader = nil
18387	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3entitytype)
18388	if err != nil {
18389		return nil, err
18390	}
18391	reqHeaders.Set("Content-Type", "application/json")
18392	c.urlParams_.Set("alt", alt)
18393	c.urlParams_.Set("prettyPrint", "false")
18394	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/entityTypes")
18395	urls += "?" + c.urlParams_.Encode()
18396	req, err := http.NewRequest("POST", urls, body)
18397	if err != nil {
18398		return nil, err
18399	}
18400	req.Header = reqHeaders
18401	googleapi.Expand(req.URL, map[string]string{
18402		"parent": c.parent,
18403	})
18404	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18405}
18406
18407// Do executes the "dialogflow.projects.locations.agents.entityTypes.create" call.
18408// Exactly one of *GoogleCloudDialogflowCxV3EntityType or error will be
18409// non-nil. Any non-2xx status code is an error. Response headers are in
18410// either *GoogleCloudDialogflowCxV3EntityType.ServerResponse.Header or
18411// (if a response was returned at all) in
18412// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
18413// whether the returned error was because http.StatusNotModified was
18414// returned.
18415func (c *ProjectsLocationsAgentsEntityTypesCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3EntityType, error) {
18416	gensupport.SetOptions(c.urlParams_, opts...)
18417	res, err := c.doRequest("json")
18418	if res != nil && res.StatusCode == http.StatusNotModified {
18419		if res.Body != nil {
18420			res.Body.Close()
18421		}
18422		return nil, &googleapi.Error{
18423			Code:   res.StatusCode,
18424			Header: res.Header,
18425		}
18426	}
18427	if err != nil {
18428		return nil, err
18429	}
18430	defer googleapi.CloseBody(res)
18431	if err := googleapi.CheckResponse(res); err != nil {
18432		return nil, err
18433	}
18434	ret := &GoogleCloudDialogflowCxV3EntityType{
18435		ServerResponse: googleapi.ServerResponse{
18436			Header:         res.Header,
18437			HTTPStatusCode: res.StatusCode,
18438		},
18439	}
18440	target := &ret
18441	if err := gensupport.DecodeResponse(target, res); err != nil {
18442		return nil, err
18443	}
18444	return ret, nil
18445	// {
18446	//   "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).",
18447	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/entityTypes",
18448	//   "httpMethod": "POST",
18449	//   "id": "dialogflow.projects.locations.agents.entityTypes.create",
18450	//   "parameterOrder": [
18451	//     "parent"
18452	//   ],
18453	//   "parameters": {
18454	//     "languageCode": {
18455	//       "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.",
18456	//       "location": "query",
18457	//       "type": "string"
18458	//     },
18459	//     "parent": {
18460	//       "description": "Required. The agent to create a entity type for. Format: `projects//locations//agents/`.",
18461	//       "location": "path",
18462	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
18463	//       "required": true,
18464	//       "type": "string"
18465	//     }
18466	//   },
18467	//   "path": "v3/{+parent}/entityTypes",
18468	//   "request": {
18469	//     "$ref": "GoogleCloudDialogflowCxV3EntityType"
18470	//   },
18471	//   "response": {
18472	//     "$ref": "GoogleCloudDialogflowCxV3EntityType"
18473	//   },
18474	//   "scopes": [
18475	//     "https://www.googleapis.com/auth/cloud-platform",
18476	//     "https://www.googleapis.com/auth/dialogflow"
18477	//   ]
18478	// }
18479
18480}
18481
18482// method id "dialogflow.projects.locations.agents.entityTypes.delete":
18483
18484type ProjectsLocationsAgentsEntityTypesDeleteCall struct {
18485	s          *Service
18486	name       string
18487	urlParams_ gensupport.URLParams
18488	ctx_       context.Context
18489	header_    http.Header
18490}
18491
18492// Delete: Deletes the specified entity type. Note: You should always
18493// train a flow prior to sending it queries. See the training
18494// documentation
18495// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
18496//
18497// - name: The name of the entity type to delete. Format:
18498//   `projects//locations//agents//entityTypes/`.
18499func (r *ProjectsLocationsAgentsEntityTypesService) Delete(name string) *ProjectsLocationsAgentsEntityTypesDeleteCall {
18500	c := &ProjectsLocationsAgentsEntityTypesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18501	c.name = name
18502	return c
18503}
18504
18505// Force sets the optional parameter "force": This field has no effect
18506// for entity type not being used. For entity types that are used by
18507// intents or pages: * If `force` is set to false, an error will be
18508// returned with message indicating the referencing resources. * If
18509// `force` is set to true, Dialogflow will remove the entity type, as
18510// well as any references to the entity type (i.e. Page parameter of the
18511// entity type will be changed to '@sys.any' and intent parameter of the
18512// entity type will be removed).
18513func (c *ProjectsLocationsAgentsEntityTypesDeleteCall) Force(force bool) *ProjectsLocationsAgentsEntityTypesDeleteCall {
18514	c.urlParams_.Set("force", fmt.Sprint(force))
18515	return c
18516}
18517
18518// Fields allows partial responses to be retrieved. See
18519// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18520// for more information.
18521func (c *ProjectsLocationsAgentsEntityTypesDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEntityTypesDeleteCall {
18522	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18523	return c
18524}
18525
18526// Context sets the context to be used in this call's Do method. Any
18527// pending HTTP request will be aborted if the provided context is
18528// canceled.
18529func (c *ProjectsLocationsAgentsEntityTypesDeleteCall) Context(ctx context.Context) *ProjectsLocationsAgentsEntityTypesDeleteCall {
18530	c.ctx_ = ctx
18531	return c
18532}
18533
18534// Header returns an http.Header that can be modified by the caller to
18535// add HTTP headers to the request.
18536func (c *ProjectsLocationsAgentsEntityTypesDeleteCall) Header() http.Header {
18537	if c.header_ == nil {
18538		c.header_ = make(http.Header)
18539	}
18540	return c.header_
18541}
18542
18543func (c *ProjectsLocationsAgentsEntityTypesDeleteCall) doRequest(alt string) (*http.Response, error) {
18544	reqHeaders := make(http.Header)
18545	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
18546	for k, v := range c.header_ {
18547		reqHeaders[k] = v
18548	}
18549	reqHeaders.Set("User-Agent", c.s.userAgent())
18550	var body io.Reader = nil
18551	c.urlParams_.Set("alt", alt)
18552	c.urlParams_.Set("prettyPrint", "false")
18553	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
18554	urls += "?" + c.urlParams_.Encode()
18555	req, err := http.NewRequest("DELETE", urls, body)
18556	if err != nil {
18557		return nil, err
18558	}
18559	req.Header = reqHeaders
18560	googleapi.Expand(req.URL, map[string]string{
18561		"name": c.name,
18562	})
18563	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18564}
18565
18566// Do executes the "dialogflow.projects.locations.agents.entityTypes.delete" call.
18567// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
18568// non-2xx status code is an error. Response headers are in either
18569// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
18570// returned at all) in error.(*googleapi.Error).Header. Use
18571// googleapi.IsNotModified to check whether the returned error was
18572// because http.StatusNotModified was returned.
18573func (c *ProjectsLocationsAgentsEntityTypesDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
18574	gensupport.SetOptions(c.urlParams_, opts...)
18575	res, err := c.doRequest("json")
18576	if res != nil && res.StatusCode == http.StatusNotModified {
18577		if res.Body != nil {
18578			res.Body.Close()
18579		}
18580		return nil, &googleapi.Error{
18581			Code:   res.StatusCode,
18582			Header: res.Header,
18583		}
18584	}
18585	if err != nil {
18586		return nil, err
18587	}
18588	defer googleapi.CloseBody(res)
18589	if err := googleapi.CheckResponse(res); err != nil {
18590		return nil, err
18591	}
18592	ret := &GoogleProtobufEmpty{
18593		ServerResponse: googleapi.ServerResponse{
18594			Header:         res.Header,
18595			HTTPStatusCode: res.StatusCode,
18596		},
18597	}
18598	target := &ret
18599	if err := gensupport.DecodeResponse(target, res); err != nil {
18600		return nil, err
18601	}
18602	return ret, nil
18603	// {
18604	//   "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).",
18605	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/entityTypes/{entityTypesId}",
18606	//   "httpMethod": "DELETE",
18607	//   "id": "dialogflow.projects.locations.agents.entityTypes.delete",
18608	//   "parameterOrder": [
18609	//     "name"
18610	//   ],
18611	//   "parameters": {
18612	//     "force": {
18613	//       "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).",
18614	//       "location": "query",
18615	//       "type": "boolean"
18616	//     },
18617	//     "name": {
18618	//       "description": "Required. The name of the entity type to delete. Format: `projects//locations//agents//entityTypes/`.",
18619	//       "location": "path",
18620	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/entityTypes/[^/]+$",
18621	//       "required": true,
18622	//       "type": "string"
18623	//     }
18624	//   },
18625	//   "path": "v3/{+name}",
18626	//   "response": {
18627	//     "$ref": "GoogleProtobufEmpty"
18628	//   },
18629	//   "scopes": [
18630	//     "https://www.googleapis.com/auth/cloud-platform",
18631	//     "https://www.googleapis.com/auth/dialogflow"
18632	//   ]
18633	// }
18634
18635}
18636
18637// method id "dialogflow.projects.locations.agents.entityTypes.get":
18638
18639type ProjectsLocationsAgentsEntityTypesGetCall struct {
18640	s            *Service
18641	name         string
18642	urlParams_   gensupport.URLParams
18643	ifNoneMatch_ string
18644	ctx_         context.Context
18645	header_      http.Header
18646}
18647
18648// Get: Retrieves the specified entity type.
18649//
18650// - name: The name of the entity type. Format:
18651//   `projects//locations//agents//entityTypes/`.
18652func (r *ProjectsLocationsAgentsEntityTypesService) Get(name string) *ProjectsLocationsAgentsEntityTypesGetCall {
18653	c := &ProjectsLocationsAgentsEntityTypesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18654	c.name = name
18655	return c
18656}
18657
18658// LanguageCode sets the optional parameter "languageCode": The language
18659// to retrieve the entity type for. The following fields are language
18660// dependent: * `EntityType.entities.value` *
18661// `EntityType.entities.synonyms` * `EntityType.excluded_phrases.value`
18662// If not specified, the agent's default language is used. Many
18663// languages
18664// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
18665// supported. Note: languages must be enabled in the agent before they
18666// can be used.
18667func (c *ProjectsLocationsAgentsEntityTypesGetCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsEntityTypesGetCall {
18668	c.urlParams_.Set("languageCode", languageCode)
18669	return c
18670}
18671
18672// Fields allows partial responses to be retrieved. See
18673// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18674// for more information.
18675func (c *ProjectsLocationsAgentsEntityTypesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEntityTypesGetCall {
18676	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18677	return c
18678}
18679
18680// IfNoneMatch sets the optional parameter which makes the operation
18681// fail if the object's ETag matches the given value. This is useful for
18682// getting updates only after the object has changed since the last
18683// request. Use googleapi.IsNotModified to check whether the response
18684// error from Do is the result of In-None-Match.
18685func (c *ProjectsLocationsAgentsEntityTypesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsEntityTypesGetCall {
18686	c.ifNoneMatch_ = entityTag
18687	return c
18688}
18689
18690// Context sets the context to be used in this call's Do method. Any
18691// pending HTTP request will be aborted if the provided context is
18692// canceled.
18693func (c *ProjectsLocationsAgentsEntityTypesGetCall) Context(ctx context.Context) *ProjectsLocationsAgentsEntityTypesGetCall {
18694	c.ctx_ = ctx
18695	return c
18696}
18697
18698// Header returns an http.Header that can be modified by the caller to
18699// add HTTP headers to the request.
18700func (c *ProjectsLocationsAgentsEntityTypesGetCall) Header() http.Header {
18701	if c.header_ == nil {
18702		c.header_ = make(http.Header)
18703	}
18704	return c.header_
18705}
18706
18707func (c *ProjectsLocationsAgentsEntityTypesGetCall) doRequest(alt string) (*http.Response, error) {
18708	reqHeaders := make(http.Header)
18709	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
18710	for k, v := range c.header_ {
18711		reqHeaders[k] = v
18712	}
18713	reqHeaders.Set("User-Agent", c.s.userAgent())
18714	if c.ifNoneMatch_ != "" {
18715		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
18716	}
18717	var body io.Reader = nil
18718	c.urlParams_.Set("alt", alt)
18719	c.urlParams_.Set("prettyPrint", "false")
18720	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
18721	urls += "?" + c.urlParams_.Encode()
18722	req, err := http.NewRequest("GET", urls, body)
18723	if err != nil {
18724		return nil, err
18725	}
18726	req.Header = reqHeaders
18727	googleapi.Expand(req.URL, map[string]string{
18728		"name": c.name,
18729	})
18730	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18731}
18732
18733// Do executes the "dialogflow.projects.locations.agents.entityTypes.get" call.
18734// Exactly one of *GoogleCloudDialogflowCxV3EntityType or error will be
18735// non-nil. Any non-2xx status code is an error. Response headers are in
18736// either *GoogleCloudDialogflowCxV3EntityType.ServerResponse.Header or
18737// (if a response was returned at all) in
18738// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
18739// whether the returned error was because http.StatusNotModified was
18740// returned.
18741func (c *ProjectsLocationsAgentsEntityTypesGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3EntityType, error) {
18742	gensupport.SetOptions(c.urlParams_, opts...)
18743	res, err := c.doRequest("json")
18744	if res != nil && res.StatusCode == http.StatusNotModified {
18745		if res.Body != nil {
18746			res.Body.Close()
18747		}
18748		return nil, &googleapi.Error{
18749			Code:   res.StatusCode,
18750			Header: res.Header,
18751		}
18752	}
18753	if err != nil {
18754		return nil, err
18755	}
18756	defer googleapi.CloseBody(res)
18757	if err := googleapi.CheckResponse(res); err != nil {
18758		return nil, err
18759	}
18760	ret := &GoogleCloudDialogflowCxV3EntityType{
18761		ServerResponse: googleapi.ServerResponse{
18762			Header:         res.Header,
18763			HTTPStatusCode: res.StatusCode,
18764		},
18765	}
18766	target := &ret
18767	if err := gensupport.DecodeResponse(target, res); err != nil {
18768		return nil, err
18769	}
18770	return ret, nil
18771	// {
18772	//   "description": "Retrieves the specified entity type.",
18773	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/entityTypes/{entityTypesId}",
18774	//   "httpMethod": "GET",
18775	//   "id": "dialogflow.projects.locations.agents.entityTypes.get",
18776	//   "parameterOrder": [
18777	//     "name"
18778	//   ],
18779	//   "parameters": {
18780	//     "languageCode": {
18781	//       "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.",
18782	//       "location": "query",
18783	//       "type": "string"
18784	//     },
18785	//     "name": {
18786	//       "description": "Required. The name of the entity type. Format: `projects//locations//agents//entityTypes/`.",
18787	//       "location": "path",
18788	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/entityTypes/[^/]+$",
18789	//       "required": true,
18790	//       "type": "string"
18791	//     }
18792	//   },
18793	//   "path": "v3/{+name}",
18794	//   "response": {
18795	//     "$ref": "GoogleCloudDialogflowCxV3EntityType"
18796	//   },
18797	//   "scopes": [
18798	//     "https://www.googleapis.com/auth/cloud-platform",
18799	//     "https://www.googleapis.com/auth/dialogflow"
18800	//   ]
18801	// }
18802
18803}
18804
18805// method id "dialogflow.projects.locations.agents.entityTypes.list":
18806
18807type ProjectsLocationsAgentsEntityTypesListCall struct {
18808	s            *Service
18809	parent       string
18810	urlParams_   gensupport.URLParams
18811	ifNoneMatch_ string
18812	ctx_         context.Context
18813	header_      http.Header
18814}
18815
18816// List: Returns the list of all entity types in the specified agent.
18817//
18818// - parent: The agent to list all entity types for. Format:
18819//   `projects//locations//agents/`.
18820func (r *ProjectsLocationsAgentsEntityTypesService) List(parent string) *ProjectsLocationsAgentsEntityTypesListCall {
18821	c := &ProjectsLocationsAgentsEntityTypesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18822	c.parent = parent
18823	return c
18824}
18825
18826// LanguageCode sets the optional parameter "languageCode": The language
18827// to list entity types for. The following fields are language
18828// dependent: * `EntityType.entities.value` *
18829// `EntityType.entities.synonyms` * `EntityType.excluded_phrases.value`
18830// If not specified, the agent's default language is used. Many
18831// languages
18832// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
18833// supported. Note: languages must be enabled in the agent before they
18834// can be used.
18835func (c *ProjectsLocationsAgentsEntityTypesListCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsEntityTypesListCall {
18836	c.urlParams_.Set("languageCode", languageCode)
18837	return c
18838}
18839
18840// PageSize sets the optional parameter "pageSize": The maximum number
18841// of items to return in a single page. By default 100 and at most 1000.
18842func (c *ProjectsLocationsAgentsEntityTypesListCall) PageSize(pageSize int64) *ProjectsLocationsAgentsEntityTypesListCall {
18843	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
18844	return c
18845}
18846
18847// PageToken sets the optional parameter "pageToken": The
18848// next_page_token value returned from a previous list request.
18849func (c *ProjectsLocationsAgentsEntityTypesListCall) PageToken(pageToken string) *ProjectsLocationsAgentsEntityTypesListCall {
18850	c.urlParams_.Set("pageToken", pageToken)
18851	return c
18852}
18853
18854// Fields allows partial responses to be retrieved. See
18855// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18856// for more information.
18857func (c *ProjectsLocationsAgentsEntityTypesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEntityTypesListCall {
18858	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18859	return c
18860}
18861
18862// IfNoneMatch sets the optional parameter which makes the operation
18863// fail if the object's ETag matches the given value. This is useful for
18864// getting updates only after the object has changed since the last
18865// request. Use googleapi.IsNotModified to check whether the response
18866// error from Do is the result of In-None-Match.
18867func (c *ProjectsLocationsAgentsEntityTypesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsEntityTypesListCall {
18868	c.ifNoneMatch_ = entityTag
18869	return c
18870}
18871
18872// Context sets the context to be used in this call's Do method. Any
18873// pending HTTP request will be aborted if the provided context is
18874// canceled.
18875func (c *ProjectsLocationsAgentsEntityTypesListCall) Context(ctx context.Context) *ProjectsLocationsAgentsEntityTypesListCall {
18876	c.ctx_ = ctx
18877	return c
18878}
18879
18880// Header returns an http.Header that can be modified by the caller to
18881// add HTTP headers to the request.
18882func (c *ProjectsLocationsAgentsEntityTypesListCall) Header() http.Header {
18883	if c.header_ == nil {
18884		c.header_ = make(http.Header)
18885	}
18886	return c.header_
18887}
18888
18889func (c *ProjectsLocationsAgentsEntityTypesListCall) doRequest(alt string) (*http.Response, error) {
18890	reqHeaders := make(http.Header)
18891	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
18892	for k, v := range c.header_ {
18893		reqHeaders[k] = v
18894	}
18895	reqHeaders.Set("User-Agent", c.s.userAgent())
18896	if c.ifNoneMatch_ != "" {
18897		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
18898	}
18899	var body io.Reader = nil
18900	c.urlParams_.Set("alt", alt)
18901	c.urlParams_.Set("prettyPrint", "false")
18902	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/entityTypes")
18903	urls += "?" + c.urlParams_.Encode()
18904	req, err := http.NewRequest("GET", urls, body)
18905	if err != nil {
18906		return nil, err
18907	}
18908	req.Header = reqHeaders
18909	googleapi.Expand(req.URL, map[string]string{
18910		"parent": c.parent,
18911	})
18912	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18913}
18914
18915// Do executes the "dialogflow.projects.locations.agents.entityTypes.list" call.
18916// Exactly one of *GoogleCloudDialogflowCxV3ListEntityTypesResponse or
18917// error will be non-nil. Any non-2xx status code is an error. Response
18918// headers are in either
18919// *GoogleCloudDialogflowCxV3ListEntityTypesResponse.ServerResponse.Heade
18920// r or (if a response was returned at all) in
18921// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
18922// whether the returned error was because http.StatusNotModified was
18923// returned.
18924func (c *ProjectsLocationsAgentsEntityTypesListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3ListEntityTypesResponse, error) {
18925	gensupport.SetOptions(c.urlParams_, opts...)
18926	res, err := c.doRequest("json")
18927	if res != nil && res.StatusCode == http.StatusNotModified {
18928		if res.Body != nil {
18929			res.Body.Close()
18930		}
18931		return nil, &googleapi.Error{
18932			Code:   res.StatusCode,
18933			Header: res.Header,
18934		}
18935	}
18936	if err != nil {
18937		return nil, err
18938	}
18939	defer googleapi.CloseBody(res)
18940	if err := googleapi.CheckResponse(res); err != nil {
18941		return nil, err
18942	}
18943	ret := &GoogleCloudDialogflowCxV3ListEntityTypesResponse{
18944		ServerResponse: googleapi.ServerResponse{
18945			Header:         res.Header,
18946			HTTPStatusCode: res.StatusCode,
18947		},
18948	}
18949	target := &ret
18950	if err := gensupport.DecodeResponse(target, res); err != nil {
18951		return nil, err
18952	}
18953	return ret, nil
18954	// {
18955	//   "description": "Returns the list of all entity types in the specified agent.",
18956	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/entityTypes",
18957	//   "httpMethod": "GET",
18958	//   "id": "dialogflow.projects.locations.agents.entityTypes.list",
18959	//   "parameterOrder": [
18960	//     "parent"
18961	//   ],
18962	//   "parameters": {
18963	//     "languageCode": {
18964	//       "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.",
18965	//       "location": "query",
18966	//       "type": "string"
18967	//     },
18968	//     "pageSize": {
18969	//       "description": "The maximum number of items to return in a single page. By default 100 and at most 1000.",
18970	//       "format": "int32",
18971	//       "location": "query",
18972	//       "type": "integer"
18973	//     },
18974	//     "pageToken": {
18975	//       "description": "The next_page_token value returned from a previous list request.",
18976	//       "location": "query",
18977	//       "type": "string"
18978	//     },
18979	//     "parent": {
18980	//       "description": "Required. The agent to list all entity types for. Format: `projects//locations//agents/`.",
18981	//       "location": "path",
18982	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
18983	//       "required": true,
18984	//       "type": "string"
18985	//     }
18986	//   },
18987	//   "path": "v3/{+parent}/entityTypes",
18988	//   "response": {
18989	//     "$ref": "GoogleCloudDialogflowCxV3ListEntityTypesResponse"
18990	//   },
18991	//   "scopes": [
18992	//     "https://www.googleapis.com/auth/cloud-platform",
18993	//     "https://www.googleapis.com/auth/dialogflow"
18994	//   ]
18995	// }
18996
18997}
18998
18999// Pages invokes f for each page of results.
19000// A non-nil error returned from f will halt the iteration.
19001// The provided context supersedes any context provided to the Context method.
19002func (c *ProjectsLocationsAgentsEntityTypesListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3ListEntityTypesResponse) error) error {
19003	c.ctx_ = ctx
19004	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
19005	for {
19006		x, err := c.Do()
19007		if err != nil {
19008			return err
19009		}
19010		if err := f(x); err != nil {
19011			return err
19012		}
19013		if x.NextPageToken == "" {
19014			return nil
19015		}
19016		c.PageToken(x.NextPageToken)
19017	}
19018}
19019
19020// method id "dialogflow.projects.locations.agents.entityTypes.patch":
19021
19022type ProjectsLocationsAgentsEntityTypesPatchCall struct {
19023	s                                   *Service
19024	nameid                              string
19025	googleclouddialogflowcxv3entitytype *GoogleCloudDialogflowCxV3EntityType
19026	urlParams_                          gensupport.URLParams
19027	ctx_                                context.Context
19028	header_                             http.Header
19029}
19030
19031// Patch: Updates the specified entity type. Note: You should always
19032// train a flow prior to sending it queries. See the training
19033// documentation
19034// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
19035//
19036// - name: The unique identifier of the entity type. Required for
19037//   EntityTypes.UpdateEntityType. Format:
19038//   `projects//locations//agents//entityTypes/`.
19039func (r *ProjectsLocationsAgentsEntityTypesService) Patch(nameid string, googleclouddialogflowcxv3entitytype *GoogleCloudDialogflowCxV3EntityType) *ProjectsLocationsAgentsEntityTypesPatchCall {
19040	c := &ProjectsLocationsAgentsEntityTypesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19041	c.nameid = nameid
19042	c.googleclouddialogflowcxv3entitytype = googleclouddialogflowcxv3entitytype
19043	return c
19044}
19045
19046// LanguageCode sets the optional parameter "languageCode": The language
19047// of the following fields in `entity_type`: *
19048// `EntityType.entities.value` * `EntityType.entities.synonyms` *
19049// `EntityType.excluded_phrases.value` If not specified, the agent's
19050// default language is used. Many languages
19051// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
19052// supported. Note: languages must be enabled in the agent before they
19053// can be used.
19054func (c *ProjectsLocationsAgentsEntityTypesPatchCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsEntityTypesPatchCall {
19055	c.urlParams_.Set("languageCode", languageCode)
19056	return c
19057}
19058
19059// UpdateMask sets the optional parameter "updateMask": The mask to
19060// control which fields get updated.
19061func (c *ProjectsLocationsAgentsEntityTypesPatchCall) UpdateMask(updateMask string) *ProjectsLocationsAgentsEntityTypesPatchCall {
19062	c.urlParams_.Set("updateMask", updateMask)
19063	return c
19064}
19065
19066// Fields allows partial responses to be retrieved. See
19067// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19068// for more information.
19069func (c *ProjectsLocationsAgentsEntityTypesPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEntityTypesPatchCall {
19070	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19071	return c
19072}
19073
19074// Context sets the context to be used in this call's Do method. Any
19075// pending HTTP request will be aborted if the provided context is
19076// canceled.
19077func (c *ProjectsLocationsAgentsEntityTypesPatchCall) Context(ctx context.Context) *ProjectsLocationsAgentsEntityTypesPatchCall {
19078	c.ctx_ = ctx
19079	return c
19080}
19081
19082// Header returns an http.Header that can be modified by the caller to
19083// add HTTP headers to the request.
19084func (c *ProjectsLocationsAgentsEntityTypesPatchCall) Header() http.Header {
19085	if c.header_ == nil {
19086		c.header_ = make(http.Header)
19087	}
19088	return c.header_
19089}
19090
19091func (c *ProjectsLocationsAgentsEntityTypesPatchCall) doRequest(alt string) (*http.Response, error) {
19092	reqHeaders := make(http.Header)
19093	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
19094	for k, v := range c.header_ {
19095		reqHeaders[k] = v
19096	}
19097	reqHeaders.Set("User-Agent", c.s.userAgent())
19098	var body io.Reader = nil
19099	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3entitytype)
19100	if err != nil {
19101		return nil, err
19102	}
19103	reqHeaders.Set("Content-Type", "application/json")
19104	c.urlParams_.Set("alt", alt)
19105	c.urlParams_.Set("prettyPrint", "false")
19106	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
19107	urls += "?" + c.urlParams_.Encode()
19108	req, err := http.NewRequest("PATCH", urls, body)
19109	if err != nil {
19110		return nil, err
19111	}
19112	req.Header = reqHeaders
19113	googleapi.Expand(req.URL, map[string]string{
19114		"name": c.nameid,
19115	})
19116	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19117}
19118
19119// Do executes the "dialogflow.projects.locations.agents.entityTypes.patch" call.
19120// Exactly one of *GoogleCloudDialogflowCxV3EntityType or error will be
19121// non-nil. Any non-2xx status code is an error. Response headers are in
19122// either *GoogleCloudDialogflowCxV3EntityType.ServerResponse.Header or
19123// (if a response was returned at all) in
19124// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
19125// whether the returned error was because http.StatusNotModified was
19126// returned.
19127func (c *ProjectsLocationsAgentsEntityTypesPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3EntityType, error) {
19128	gensupport.SetOptions(c.urlParams_, opts...)
19129	res, err := c.doRequest("json")
19130	if res != nil && res.StatusCode == http.StatusNotModified {
19131		if res.Body != nil {
19132			res.Body.Close()
19133		}
19134		return nil, &googleapi.Error{
19135			Code:   res.StatusCode,
19136			Header: res.Header,
19137		}
19138	}
19139	if err != nil {
19140		return nil, err
19141	}
19142	defer googleapi.CloseBody(res)
19143	if err := googleapi.CheckResponse(res); err != nil {
19144		return nil, err
19145	}
19146	ret := &GoogleCloudDialogflowCxV3EntityType{
19147		ServerResponse: googleapi.ServerResponse{
19148			Header:         res.Header,
19149			HTTPStatusCode: res.StatusCode,
19150		},
19151	}
19152	target := &ret
19153	if err := gensupport.DecodeResponse(target, res); err != nil {
19154		return nil, err
19155	}
19156	return ret, nil
19157	// {
19158	//   "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).",
19159	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/entityTypes/{entityTypesId}",
19160	//   "httpMethod": "PATCH",
19161	//   "id": "dialogflow.projects.locations.agents.entityTypes.patch",
19162	//   "parameterOrder": [
19163	//     "name"
19164	//   ],
19165	//   "parameters": {
19166	//     "languageCode": {
19167	//       "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.",
19168	//       "location": "query",
19169	//       "type": "string"
19170	//     },
19171	//     "name": {
19172	//       "description": "The unique identifier of the entity type. Required for EntityTypes.UpdateEntityType. Format: `projects//locations//agents//entityTypes/`.",
19173	//       "location": "path",
19174	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/entityTypes/[^/]+$",
19175	//       "required": true,
19176	//       "type": "string"
19177	//     },
19178	//     "updateMask": {
19179	//       "description": "The mask to control which fields get updated.",
19180	//       "format": "google-fieldmask",
19181	//       "location": "query",
19182	//       "type": "string"
19183	//     }
19184	//   },
19185	//   "path": "v3/{+name}",
19186	//   "request": {
19187	//     "$ref": "GoogleCloudDialogflowCxV3EntityType"
19188	//   },
19189	//   "response": {
19190	//     "$ref": "GoogleCloudDialogflowCxV3EntityType"
19191	//   },
19192	//   "scopes": [
19193	//     "https://www.googleapis.com/auth/cloud-platform",
19194	//     "https://www.googleapis.com/auth/dialogflow"
19195	//   ]
19196	// }
19197
19198}
19199
19200// method id "dialogflow.projects.locations.agents.environments.create":
19201
19202type ProjectsLocationsAgentsEnvironmentsCreateCall struct {
19203	s                                    *Service
19204	parent                               string
19205	googleclouddialogflowcxv3environment *GoogleCloudDialogflowCxV3Environment
19206	urlParams_                           gensupport.URLParams
19207	ctx_                                 context.Context
19208	header_                              http.Header
19209}
19210
19211// Create: Creates an Environment in the specified Agent.
19212//
19213// - parent: The Agent to create an Environment for. Format:
19214//   `projects//locations//agents/`.
19215func (r *ProjectsLocationsAgentsEnvironmentsService) Create(parent string, googleclouddialogflowcxv3environment *GoogleCloudDialogflowCxV3Environment) *ProjectsLocationsAgentsEnvironmentsCreateCall {
19216	c := &ProjectsLocationsAgentsEnvironmentsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19217	c.parent = parent
19218	c.googleclouddialogflowcxv3environment = googleclouddialogflowcxv3environment
19219	return c
19220}
19221
19222// Fields allows partial responses to be retrieved. See
19223// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19224// for more information.
19225func (c *ProjectsLocationsAgentsEnvironmentsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsCreateCall {
19226	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19227	return c
19228}
19229
19230// Context sets the context to be used in this call's Do method. Any
19231// pending HTTP request will be aborted if the provided context is
19232// canceled.
19233func (c *ProjectsLocationsAgentsEnvironmentsCreateCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsCreateCall {
19234	c.ctx_ = ctx
19235	return c
19236}
19237
19238// Header returns an http.Header that can be modified by the caller to
19239// add HTTP headers to the request.
19240func (c *ProjectsLocationsAgentsEnvironmentsCreateCall) Header() http.Header {
19241	if c.header_ == nil {
19242		c.header_ = make(http.Header)
19243	}
19244	return c.header_
19245}
19246
19247func (c *ProjectsLocationsAgentsEnvironmentsCreateCall) doRequest(alt string) (*http.Response, error) {
19248	reqHeaders := make(http.Header)
19249	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
19250	for k, v := range c.header_ {
19251		reqHeaders[k] = v
19252	}
19253	reqHeaders.Set("User-Agent", c.s.userAgent())
19254	var body io.Reader = nil
19255	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3environment)
19256	if err != nil {
19257		return nil, err
19258	}
19259	reqHeaders.Set("Content-Type", "application/json")
19260	c.urlParams_.Set("alt", alt)
19261	c.urlParams_.Set("prettyPrint", "false")
19262	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/environments")
19263	urls += "?" + c.urlParams_.Encode()
19264	req, err := http.NewRequest("POST", urls, body)
19265	if err != nil {
19266		return nil, err
19267	}
19268	req.Header = reqHeaders
19269	googleapi.Expand(req.URL, map[string]string{
19270		"parent": c.parent,
19271	})
19272	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19273}
19274
19275// Do executes the "dialogflow.projects.locations.agents.environments.create" call.
19276// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
19277// Any non-2xx status code is an error. Response headers are in either
19278// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
19279// was returned at all) in error.(*googleapi.Error).Header. Use
19280// googleapi.IsNotModified to check whether the returned error was
19281// because http.StatusNotModified was returned.
19282func (c *ProjectsLocationsAgentsEnvironmentsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
19283	gensupport.SetOptions(c.urlParams_, opts...)
19284	res, err := c.doRequest("json")
19285	if res != nil && res.StatusCode == http.StatusNotModified {
19286		if res.Body != nil {
19287			res.Body.Close()
19288		}
19289		return nil, &googleapi.Error{
19290			Code:   res.StatusCode,
19291			Header: res.Header,
19292		}
19293	}
19294	if err != nil {
19295		return nil, err
19296	}
19297	defer googleapi.CloseBody(res)
19298	if err := googleapi.CheckResponse(res); err != nil {
19299		return nil, err
19300	}
19301	ret := &GoogleLongrunningOperation{
19302		ServerResponse: googleapi.ServerResponse{
19303			Header:         res.Header,
19304			HTTPStatusCode: res.StatusCode,
19305		},
19306	}
19307	target := &ret
19308	if err := gensupport.DecodeResponse(target, res); err != nil {
19309		return nil, err
19310	}
19311	return ret, nil
19312	// {
19313	//   "description": "Creates an Environment in the specified Agent.",
19314	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments",
19315	//   "httpMethod": "POST",
19316	//   "id": "dialogflow.projects.locations.agents.environments.create",
19317	//   "parameterOrder": [
19318	//     "parent"
19319	//   ],
19320	//   "parameters": {
19321	//     "parent": {
19322	//       "description": "Required. The Agent to create an Environment for. Format: `projects//locations//agents/`.",
19323	//       "location": "path",
19324	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
19325	//       "required": true,
19326	//       "type": "string"
19327	//     }
19328	//   },
19329	//   "path": "v3/{+parent}/environments",
19330	//   "request": {
19331	//     "$ref": "GoogleCloudDialogflowCxV3Environment"
19332	//   },
19333	//   "response": {
19334	//     "$ref": "GoogleLongrunningOperation"
19335	//   },
19336	//   "scopes": [
19337	//     "https://www.googleapis.com/auth/cloud-platform",
19338	//     "https://www.googleapis.com/auth/dialogflow"
19339	//   ]
19340	// }
19341
19342}
19343
19344// method id "dialogflow.projects.locations.agents.environments.delete":
19345
19346type ProjectsLocationsAgentsEnvironmentsDeleteCall struct {
19347	s          *Service
19348	name       string
19349	urlParams_ gensupport.URLParams
19350	ctx_       context.Context
19351	header_    http.Header
19352}
19353
19354// Delete: Deletes the specified Environment.
19355//
19356// - name: The name of the Environment to delete. Format:
19357//   `projects//locations//agents//environments/`.
19358func (r *ProjectsLocationsAgentsEnvironmentsService) Delete(name string) *ProjectsLocationsAgentsEnvironmentsDeleteCall {
19359	c := &ProjectsLocationsAgentsEnvironmentsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19360	c.name = name
19361	return c
19362}
19363
19364// Fields allows partial responses to be retrieved. See
19365// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19366// for more information.
19367func (c *ProjectsLocationsAgentsEnvironmentsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsDeleteCall {
19368	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19369	return c
19370}
19371
19372// Context sets the context to be used in this call's Do method. Any
19373// pending HTTP request will be aborted if the provided context is
19374// canceled.
19375func (c *ProjectsLocationsAgentsEnvironmentsDeleteCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsDeleteCall {
19376	c.ctx_ = ctx
19377	return c
19378}
19379
19380// Header returns an http.Header that can be modified by the caller to
19381// add HTTP headers to the request.
19382func (c *ProjectsLocationsAgentsEnvironmentsDeleteCall) Header() http.Header {
19383	if c.header_ == nil {
19384		c.header_ = make(http.Header)
19385	}
19386	return c.header_
19387}
19388
19389func (c *ProjectsLocationsAgentsEnvironmentsDeleteCall) doRequest(alt string) (*http.Response, error) {
19390	reqHeaders := make(http.Header)
19391	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
19392	for k, v := range c.header_ {
19393		reqHeaders[k] = v
19394	}
19395	reqHeaders.Set("User-Agent", c.s.userAgent())
19396	var body io.Reader = nil
19397	c.urlParams_.Set("alt", alt)
19398	c.urlParams_.Set("prettyPrint", "false")
19399	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
19400	urls += "?" + c.urlParams_.Encode()
19401	req, err := http.NewRequest("DELETE", urls, body)
19402	if err != nil {
19403		return nil, err
19404	}
19405	req.Header = reqHeaders
19406	googleapi.Expand(req.URL, map[string]string{
19407		"name": c.name,
19408	})
19409	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19410}
19411
19412// Do executes the "dialogflow.projects.locations.agents.environments.delete" call.
19413// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
19414// non-2xx status code is an error. Response headers are in either
19415// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
19416// returned at all) in error.(*googleapi.Error).Header. Use
19417// googleapi.IsNotModified to check whether the returned error was
19418// because http.StatusNotModified was returned.
19419func (c *ProjectsLocationsAgentsEnvironmentsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
19420	gensupport.SetOptions(c.urlParams_, opts...)
19421	res, err := c.doRequest("json")
19422	if res != nil && res.StatusCode == http.StatusNotModified {
19423		if res.Body != nil {
19424			res.Body.Close()
19425		}
19426		return nil, &googleapi.Error{
19427			Code:   res.StatusCode,
19428			Header: res.Header,
19429		}
19430	}
19431	if err != nil {
19432		return nil, err
19433	}
19434	defer googleapi.CloseBody(res)
19435	if err := googleapi.CheckResponse(res); err != nil {
19436		return nil, err
19437	}
19438	ret := &GoogleProtobufEmpty{
19439		ServerResponse: googleapi.ServerResponse{
19440			Header:         res.Header,
19441			HTTPStatusCode: res.StatusCode,
19442		},
19443	}
19444	target := &ret
19445	if err := gensupport.DecodeResponse(target, res); err != nil {
19446		return nil, err
19447	}
19448	return ret, nil
19449	// {
19450	//   "description": "Deletes the specified Environment.",
19451	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}",
19452	//   "httpMethod": "DELETE",
19453	//   "id": "dialogflow.projects.locations.agents.environments.delete",
19454	//   "parameterOrder": [
19455	//     "name"
19456	//   ],
19457	//   "parameters": {
19458	//     "name": {
19459	//       "description": "Required. The name of the Environment to delete. Format: `projects//locations//agents//environments/`.",
19460	//       "location": "path",
19461	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+$",
19462	//       "required": true,
19463	//       "type": "string"
19464	//     }
19465	//   },
19466	//   "path": "v3/{+name}",
19467	//   "response": {
19468	//     "$ref": "GoogleProtobufEmpty"
19469	//   },
19470	//   "scopes": [
19471	//     "https://www.googleapis.com/auth/cloud-platform",
19472	//     "https://www.googleapis.com/auth/dialogflow"
19473	//   ]
19474	// }
19475
19476}
19477
19478// method id "dialogflow.projects.locations.agents.environments.get":
19479
19480type ProjectsLocationsAgentsEnvironmentsGetCall struct {
19481	s            *Service
19482	name         string
19483	urlParams_   gensupport.URLParams
19484	ifNoneMatch_ string
19485	ctx_         context.Context
19486	header_      http.Header
19487}
19488
19489// Get: Retrieves the specified Environment.
19490//
19491// - name: The name of the Environment. Format:
19492//   `projects//locations//agents//environments/`.
19493func (r *ProjectsLocationsAgentsEnvironmentsService) Get(name string) *ProjectsLocationsAgentsEnvironmentsGetCall {
19494	c := &ProjectsLocationsAgentsEnvironmentsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19495	c.name = name
19496	return c
19497}
19498
19499// Fields allows partial responses to be retrieved. See
19500// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19501// for more information.
19502func (c *ProjectsLocationsAgentsEnvironmentsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsGetCall {
19503	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19504	return c
19505}
19506
19507// IfNoneMatch sets the optional parameter which makes the operation
19508// fail if the object's ETag matches the given value. This is useful for
19509// getting updates only after the object has changed since the last
19510// request. Use googleapi.IsNotModified to check whether the response
19511// error from Do is the result of In-None-Match.
19512func (c *ProjectsLocationsAgentsEnvironmentsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsEnvironmentsGetCall {
19513	c.ifNoneMatch_ = entityTag
19514	return c
19515}
19516
19517// Context sets the context to be used in this call's Do method. Any
19518// pending HTTP request will be aborted if the provided context is
19519// canceled.
19520func (c *ProjectsLocationsAgentsEnvironmentsGetCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsGetCall {
19521	c.ctx_ = ctx
19522	return c
19523}
19524
19525// Header returns an http.Header that can be modified by the caller to
19526// add HTTP headers to the request.
19527func (c *ProjectsLocationsAgentsEnvironmentsGetCall) Header() http.Header {
19528	if c.header_ == nil {
19529		c.header_ = make(http.Header)
19530	}
19531	return c.header_
19532}
19533
19534func (c *ProjectsLocationsAgentsEnvironmentsGetCall) doRequest(alt string) (*http.Response, error) {
19535	reqHeaders := make(http.Header)
19536	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
19537	for k, v := range c.header_ {
19538		reqHeaders[k] = v
19539	}
19540	reqHeaders.Set("User-Agent", c.s.userAgent())
19541	if c.ifNoneMatch_ != "" {
19542		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
19543	}
19544	var body io.Reader = nil
19545	c.urlParams_.Set("alt", alt)
19546	c.urlParams_.Set("prettyPrint", "false")
19547	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
19548	urls += "?" + c.urlParams_.Encode()
19549	req, err := http.NewRequest("GET", urls, body)
19550	if err != nil {
19551		return nil, err
19552	}
19553	req.Header = reqHeaders
19554	googleapi.Expand(req.URL, map[string]string{
19555		"name": c.name,
19556	})
19557	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19558}
19559
19560// Do executes the "dialogflow.projects.locations.agents.environments.get" call.
19561// Exactly one of *GoogleCloudDialogflowCxV3Environment or error will be
19562// non-nil. Any non-2xx status code is an error. Response headers are in
19563// either *GoogleCloudDialogflowCxV3Environment.ServerResponse.Header or
19564// (if a response was returned at all) in
19565// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
19566// whether the returned error was because http.StatusNotModified was
19567// returned.
19568func (c *ProjectsLocationsAgentsEnvironmentsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3Environment, error) {
19569	gensupport.SetOptions(c.urlParams_, opts...)
19570	res, err := c.doRequest("json")
19571	if res != nil && res.StatusCode == http.StatusNotModified {
19572		if res.Body != nil {
19573			res.Body.Close()
19574		}
19575		return nil, &googleapi.Error{
19576			Code:   res.StatusCode,
19577			Header: res.Header,
19578		}
19579	}
19580	if err != nil {
19581		return nil, err
19582	}
19583	defer googleapi.CloseBody(res)
19584	if err := googleapi.CheckResponse(res); err != nil {
19585		return nil, err
19586	}
19587	ret := &GoogleCloudDialogflowCxV3Environment{
19588		ServerResponse: googleapi.ServerResponse{
19589			Header:         res.Header,
19590			HTTPStatusCode: res.StatusCode,
19591		},
19592	}
19593	target := &ret
19594	if err := gensupport.DecodeResponse(target, res); err != nil {
19595		return nil, err
19596	}
19597	return ret, nil
19598	// {
19599	//   "description": "Retrieves the specified Environment.",
19600	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}",
19601	//   "httpMethod": "GET",
19602	//   "id": "dialogflow.projects.locations.agents.environments.get",
19603	//   "parameterOrder": [
19604	//     "name"
19605	//   ],
19606	//   "parameters": {
19607	//     "name": {
19608	//       "description": "Required. The name of the Environment. Format: `projects//locations//agents//environments/`.",
19609	//       "location": "path",
19610	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+$",
19611	//       "required": true,
19612	//       "type": "string"
19613	//     }
19614	//   },
19615	//   "path": "v3/{+name}",
19616	//   "response": {
19617	//     "$ref": "GoogleCloudDialogflowCxV3Environment"
19618	//   },
19619	//   "scopes": [
19620	//     "https://www.googleapis.com/auth/cloud-platform",
19621	//     "https://www.googleapis.com/auth/dialogflow"
19622	//   ]
19623	// }
19624
19625}
19626
19627// method id "dialogflow.projects.locations.agents.environments.list":
19628
19629type ProjectsLocationsAgentsEnvironmentsListCall struct {
19630	s            *Service
19631	parent       string
19632	urlParams_   gensupport.URLParams
19633	ifNoneMatch_ string
19634	ctx_         context.Context
19635	header_      http.Header
19636}
19637
19638// List: Returns the list of all environments in the specified Agent.
19639//
19640// - parent: The Agent to list all environments for. Format:
19641//   `projects//locations//agents/`.
19642func (r *ProjectsLocationsAgentsEnvironmentsService) List(parent string) *ProjectsLocationsAgentsEnvironmentsListCall {
19643	c := &ProjectsLocationsAgentsEnvironmentsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19644	c.parent = parent
19645	return c
19646}
19647
19648// PageSize sets the optional parameter "pageSize": The maximum number
19649// of items to return in a single page. By default 20 and at most 100.
19650func (c *ProjectsLocationsAgentsEnvironmentsListCall) PageSize(pageSize int64) *ProjectsLocationsAgentsEnvironmentsListCall {
19651	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
19652	return c
19653}
19654
19655// PageToken sets the optional parameter "pageToken": The
19656// next_page_token value returned from a previous list request.
19657func (c *ProjectsLocationsAgentsEnvironmentsListCall) PageToken(pageToken string) *ProjectsLocationsAgentsEnvironmentsListCall {
19658	c.urlParams_.Set("pageToken", pageToken)
19659	return c
19660}
19661
19662// Fields allows partial responses to be retrieved. See
19663// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19664// for more information.
19665func (c *ProjectsLocationsAgentsEnvironmentsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsListCall {
19666	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19667	return c
19668}
19669
19670// IfNoneMatch sets the optional parameter which makes the operation
19671// fail if the object's ETag matches the given value. This is useful for
19672// getting updates only after the object has changed since the last
19673// request. Use googleapi.IsNotModified to check whether the response
19674// error from Do is the result of In-None-Match.
19675func (c *ProjectsLocationsAgentsEnvironmentsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsEnvironmentsListCall {
19676	c.ifNoneMatch_ = entityTag
19677	return c
19678}
19679
19680// Context sets the context to be used in this call's Do method. Any
19681// pending HTTP request will be aborted if the provided context is
19682// canceled.
19683func (c *ProjectsLocationsAgentsEnvironmentsListCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsListCall {
19684	c.ctx_ = ctx
19685	return c
19686}
19687
19688// Header returns an http.Header that can be modified by the caller to
19689// add HTTP headers to the request.
19690func (c *ProjectsLocationsAgentsEnvironmentsListCall) Header() http.Header {
19691	if c.header_ == nil {
19692		c.header_ = make(http.Header)
19693	}
19694	return c.header_
19695}
19696
19697func (c *ProjectsLocationsAgentsEnvironmentsListCall) doRequest(alt string) (*http.Response, error) {
19698	reqHeaders := make(http.Header)
19699	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
19700	for k, v := range c.header_ {
19701		reqHeaders[k] = v
19702	}
19703	reqHeaders.Set("User-Agent", c.s.userAgent())
19704	if c.ifNoneMatch_ != "" {
19705		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
19706	}
19707	var body io.Reader = nil
19708	c.urlParams_.Set("alt", alt)
19709	c.urlParams_.Set("prettyPrint", "false")
19710	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/environments")
19711	urls += "?" + c.urlParams_.Encode()
19712	req, err := http.NewRequest("GET", urls, body)
19713	if err != nil {
19714		return nil, err
19715	}
19716	req.Header = reqHeaders
19717	googleapi.Expand(req.URL, map[string]string{
19718		"parent": c.parent,
19719	})
19720	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19721}
19722
19723// Do executes the "dialogflow.projects.locations.agents.environments.list" call.
19724// Exactly one of *GoogleCloudDialogflowCxV3ListEnvironmentsResponse or
19725// error will be non-nil. Any non-2xx status code is an error. Response
19726// headers are in either
19727// *GoogleCloudDialogflowCxV3ListEnvironmentsResponse.ServerResponse.Head
19728// er or (if a response was returned at all) in
19729// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
19730// whether the returned error was because http.StatusNotModified was
19731// returned.
19732func (c *ProjectsLocationsAgentsEnvironmentsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3ListEnvironmentsResponse, error) {
19733	gensupport.SetOptions(c.urlParams_, opts...)
19734	res, err := c.doRequest("json")
19735	if res != nil && res.StatusCode == http.StatusNotModified {
19736		if res.Body != nil {
19737			res.Body.Close()
19738		}
19739		return nil, &googleapi.Error{
19740			Code:   res.StatusCode,
19741			Header: res.Header,
19742		}
19743	}
19744	if err != nil {
19745		return nil, err
19746	}
19747	defer googleapi.CloseBody(res)
19748	if err := googleapi.CheckResponse(res); err != nil {
19749		return nil, err
19750	}
19751	ret := &GoogleCloudDialogflowCxV3ListEnvironmentsResponse{
19752		ServerResponse: googleapi.ServerResponse{
19753			Header:         res.Header,
19754			HTTPStatusCode: res.StatusCode,
19755		},
19756	}
19757	target := &ret
19758	if err := gensupport.DecodeResponse(target, res); err != nil {
19759		return nil, err
19760	}
19761	return ret, nil
19762	// {
19763	//   "description": "Returns the list of all environments in the specified Agent.",
19764	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments",
19765	//   "httpMethod": "GET",
19766	//   "id": "dialogflow.projects.locations.agents.environments.list",
19767	//   "parameterOrder": [
19768	//     "parent"
19769	//   ],
19770	//   "parameters": {
19771	//     "pageSize": {
19772	//       "description": "The maximum number of items to return in a single page. By default 20 and at most 100.",
19773	//       "format": "int32",
19774	//       "location": "query",
19775	//       "type": "integer"
19776	//     },
19777	//     "pageToken": {
19778	//       "description": "The next_page_token value returned from a previous list request.",
19779	//       "location": "query",
19780	//       "type": "string"
19781	//     },
19782	//     "parent": {
19783	//       "description": "Required. The Agent to list all environments for. Format: `projects//locations//agents/`.",
19784	//       "location": "path",
19785	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
19786	//       "required": true,
19787	//       "type": "string"
19788	//     }
19789	//   },
19790	//   "path": "v3/{+parent}/environments",
19791	//   "response": {
19792	//     "$ref": "GoogleCloudDialogflowCxV3ListEnvironmentsResponse"
19793	//   },
19794	//   "scopes": [
19795	//     "https://www.googleapis.com/auth/cloud-platform",
19796	//     "https://www.googleapis.com/auth/dialogflow"
19797	//   ]
19798	// }
19799
19800}
19801
19802// Pages invokes f for each page of results.
19803// A non-nil error returned from f will halt the iteration.
19804// The provided context supersedes any context provided to the Context method.
19805func (c *ProjectsLocationsAgentsEnvironmentsListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3ListEnvironmentsResponse) error) error {
19806	c.ctx_ = ctx
19807	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
19808	for {
19809		x, err := c.Do()
19810		if err != nil {
19811			return err
19812		}
19813		if err := f(x); err != nil {
19814			return err
19815		}
19816		if x.NextPageToken == "" {
19817			return nil
19818		}
19819		c.PageToken(x.NextPageToken)
19820	}
19821}
19822
19823// method id "dialogflow.projects.locations.agents.environments.lookupEnvironmentHistory":
19824
19825type ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall struct {
19826	s            *Service
19827	name         string
19828	urlParams_   gensupport.URLParams
19829	ifNoneMatch_ string
19830	ctx_         context.Context
19831	header_      http.Header
19832}
19833
19834// LookupEnvironmentHistory: Looks up the history of the specified
19835// Environment.
19836//
19837// - name: Resource name of the environment to look up the history for.
19838//   Format: `projects//locations//agents//environments/`.
19839func (r *ProjectsLocationsAgentsEnvironmentsService) LookupEnvironmentHistory(name string) *ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall {
19840	c := &ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19841	c.name = name
19842	return c
19843}
19844
19845// PageSize sets the optional parameter "pageSize": The maximum number
19846// of items to return in a single page. By default 100 and at most 1000.
19847func (c *ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall) PageSize(pageSize int64) *ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall {
19848	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
19849	return c
19850}
19851
19852// PageToken sets the optional parameter "pageToken": The
19853// next_page_token value returned from a previous list request.
19854func (c *ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall) PageToken(pageToken string) *ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall {
19855	c.urlParams_.Set("pageToken", pageToken)
19856	return c
19857}
19858
19859// Fields allows partial responses to be retrieved. See
19860// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19861// for more information.
19862func (c *ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall {
19863	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19864	return c
19865}
19866
19867// IfNoneMatch sets the optional parameter which makes the operation
19868// fail if the object's ETag matches the given value. This is useful for
19869// getting updates only after the object has changed since the last
19870// request. Use googleapi.IsNotModified to check whether the response
19871// error from Do is the result of In-None-Match.
19872func (c *ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall {
19873	c.ifNoneMatch_ = entityTag
19874	return c
19875}
19876
19877// Context sets the context to be used in this call's Do method. Any
19878// pending HTTP request will be aborted if the provided context is
19879// canceled.
19880func (c *ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall {
19881	c.ctx_ = ctx
19882	return c
19883}
19884
19885// Header returns an http.Header that can be modified by the caller to
19886// add HTTP headers to the request.
19887func (c *ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall) Header() http.Header {
19888	if c.header_ == nil {
19889		c.header_ = make(http.Header)
19890	}
19891	return c.header_
19892}
19893
19894func (c *ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall) doRequest(alt string) (*http.Response, error) {
19895	reqHeaders := make(http.Header)
19896	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
19897	for k, v := range c.header_ {
19898		reqHeaders[k] = v
19899	}
19900	reqHeaders.Set("User-Agent", c.s.userAgent())
19901	if c.ifNoneMatch_ != "" {
19902		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
19903	}
19904	var body io.Reader = nil
19905	c.urlParams_.Set("alt", alt)
19906	c.urlParams_.Set("prettyPrint", "false")
19907	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}:lookupEnvironmentHistory")
19908	urls += "?" + c.urlParams_.Encode()
19909	req, err := http.NewRequest("GET", urls, body)
19910	if err != nil {
19911		return nil, err
19912	}
19913	req.Header = reqHeaders
19914	googleapi.Expand(req.URL, map[string]string{
19915		"name": c.name,
19916	})
19917	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19918}
19919
19920// Do executes the "dialogflow.projects.locations.agents.environments.lookupEnvironmentHistory" call.
19921// Exactly one of
19922// *GoogleCloudDialogflowCxV3LookupEnvironmentHistoryResponse or error
19923// will be non-nil. Any non-2xx status code is an error. Response
19924// headers are in either
19925// *GoogleCloudDialogflowCxV3LookupEnvironmentHistoryResponse.ServerRespo
19926// nse.Header or (if a response was returned at all) in
19927// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
19928// whether the returned error was because http.StatusNotModified was
19929// returned.
19930func (c *ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3LookupEnvironmentHistoryResponse, error) {
19931	gensupport.SetOptions(c.urlParams_, opts...)
19932	res, err := c.doRequest("json")
19933	if res != nil && res.StatusCode == http.StatusNotModified {
19934		if res.Body != nil {
19935			res.Body.Close()
19936		}
19937		return nil, &googleapi.Error{
19938			Code:   res.StatusCode,
19939			Header: res.Header,
19940		}
19941	}
19942	if err != nil {
19943		return nil, err
19944	}
19945	defer googleapi.CloseBody(res)
19946	if err := googleapi.CheckResponse(res); err != nil {
19947		return nil, err
19948	}
19949	ret := &GoogleCloudDialogflowCxV3LookupEnvironmentHistoryResponse{
19950		ServerResponse: googleapi.ServerResponse{
19951			Header:         res.Header,
19952			HTTPStatusCode: res.StatusCode,
19953		},
19954	}
19955	target := &ret
19956	if err := gensupport.DecodeResponse(target, res); err != nil {
19957		return nil, err
19958	}
19959	return ret, nil
19960	// {
19961	//   "description": "Looks up the history of the specified Environment.",
19962	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}:lookupEnvironmentHistory",
19963	//   "httpMethod": "GET",
19964	//   "id": "dialogflow.projects.locations.agents.environments.lookupEnvironmentHistory",
19965	//   "parameterOrder": [
19966	//     "name"
19967	//   ],
19968	//   "parameters": {
19969	//     "name": {
19970	//       "description": "Required. Resource name of the environment to look up the history for. Format: `projects//locations//agents//environments/`.",
19971	//       "location": "path",
19972	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+$",
19973	//       "required": true,
19974	//       "type": "string"
19975	//     },
19976	//     "pageSize": {
19977	//       "description": "The maximum number of items to return in a single page. By default 100 and at most 1000.",
19978	//       "format": "int32",
19979	//       "location": "query",
19980	//       "type": "integer"
19981	//     },
19982	//     "pageToken": {
19983	//       "description": "The next_page_token value returned from a previous list request.",
19984	//       "location": "query",
19985	//       "type": "string"
19986	//     }
19987	//   },
19988	//   "path": "v3/{+name}:lookupEnvironmentHistory",
19989	//   "response": {
19990	//     "$ref": "GoogleCloudDialogflowCxV3LookupEnvironmentHistoryResponse"
19991	//   },
19992	//   "scopes": [
19993	//     "https://www.googleapis.com/auth/cloud-platform",
19994	//     "https://www.googleapis.com/auth/dialogflow"
19995	//   ]
19996	// }
19997
19998}
19999
20000// Pages invokes f for each page of results.
20001// A non-nil error returned from f will halt the iteration.
20002// The provided context supersedes any context provided to the Context method.
20003func (c *ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3LookupEnvironmentHistoryResponse) error) error {
20004	c.ctx_ = ctx
20005	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
20006	for {
20007		x, err := c.Do()
20008		if err != nil {
20009			return err
20010		}
20011		if err := f(x); err != nil {
20012			return err
20013		}
20014		if x.NextPageToken == "" {
20015			return nil
20016		}
20017		c.PageToken(x.NextPageToken)
20018	}
20019}
20020
20021// method id "dialogflow.projects.locations.agents.environments.patch":
20022
20023type ProjectsLocationsAgentsEnvironmentsPatchCall struct {
20024	s                                    *Service
20025	name                                 string
20026	googleclouddialogflowcxv3environment *GoogleCloudDialogflowCxV3Environment
20027	urlParams_                           gensupport.URLParams
20028	ctx_                                 context.Context
20029	header_                              http.Header
20030}
20031
20032// Patch: Updates the specified Environment.
20033//
20034// - name: The name of the environment. Format:
20035//   `projects//locations//agents//environments/`.
20036func (r *ProjectsLocationsAgentsEnvironmentsService) Patch(name string, googleclouddialogflowcxv3environment *GoogleCloudDialogflowCxV3Environment) *ProjectsLocationsAgentsEnvironmentsPatchCall {
20037	c := &ProjectsLocationsAgentsEnvironmentsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20038	c.name = name
20039	c.googleclouddialogflowcxv3environment = googleclouddialogflowcxv3environment
20040	return c
20041}
20042
20043// UpdateMask sets the optional parameter "updateMask": Required. The
20044// mask to control which fields get updated.
20045func (c *ProjectsLocationsAgentsEnvironmentsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsAgentsEnvironmentsPatchCall {
20046	c.urlParams_.Set("updateMask", updateMask)
20047	return c
20048}
20049
20050// Fields allows partial responses to be retrieved. See
20051// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20052// for more information.
20053func (c *ProjectsLocationsAgentsEnvironmentsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsPatchCall {
20054	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20055	return c
20056}
20057
20058// Context sets the context to be used in this call's Do method. Any
20059// pending HTTP request will be aborted if the provided context is
20060// canceled.
20061func (c *ProjectsLocationsAgentsEnvironmentsPatchCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsPatchCall {
20062	c.ctx_ = ctx
20063	return c
20064}
20065
20066// Header returns an http.Header that can be modified by the caller to
20067// add HTTP headers to the request.
20068func (c *ProjectsLocationsAgentsEnvironmentsPatchCall) Header() http.Header {
20069	if c.header_ == nil {
20070		c.header_ = make(http.Header)
20071	}
20072	return c.header_
20073}
20074
20075func (c *ProjectsLocationsAgentsEnvironmentsPatchCall) doRequest(alt string) (*http.Response, error) {
20076	reqHeaders := make(http.Header)
20077	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
20078	for k, v := range c.header_ {
20079		reqHeaders[k] = v
20080	}
20081	reqHeaders.Set("User-Agent", c.s.userAgent())
20082	var body io.Reader = nil
20083	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3environment)
20084	if err != nil {
20085		return nil, err
20086	}
20087	reqHeaders.Set("Content-Type", "application/json")
20088	c.urlParams_.Set("alt", alt)
20089	c.urlParams_.Set("prettyPrint", "false")
20090	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
20091	urls += "?" + c.urlParams_.Encode()
20092	req, err := http.NewRequest("PATCH", urls, body)
20093	if err != nil {
20094		return nil, err
20095	}
20096	req.Header = reqHeaders
20097	googleapi.Expand(req.URL, map[string]string{
20098		"name": c.name,
20099	})
20100	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20101}
20102
20103// Do executes the "dialogflow.projects.locations.agents.environments.patch" call.
20104// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
20105// Any non-2xx status code is an error. Response headers are in either
20106// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
20107// was returned at all) in error.(*googleapi.Error).Header. Use
20108// googleapi.IsNotModified to check whether the returned error was
20109// because http.StatusNotModified was returned.
20110func (c *ProjectsLocationsAgentsEnvironmentsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
20111	gensupport.SetOptions(c.urlParams_, opts...)
20112	res, err := c.doRequest("json")
20113	if res != nil && res.StatusCode == http.StatusNotModified {
20114		if res.Body != nil {
20115			res.Body.Close()
20116		}
20117		return nil, &googleapi.Error{
20118			Code:   res.StatusCode,
20119			Header: res.Header,
20120		}
20121	}
20122	if err != nil {
20123		return nil, err
20124	}
20125	defer googleapi.CloseBody(res)
20126	if err := googleapi.CheckResponse(res); err != nil {
20127		return nil, err
20128	}
20129	ret := &GoogleLongrunningOperation{
20130		ServerResponse: googleapi.ServerResponse{
20131			Header:         res.Header,
20132			HTTPStatusCode: res.StatusCode,
20133		},
20134	}
20135	target := &ret
20136	if err := gensupport.DecodeResponse(target, res); err != nil {
20137		return nil, err
20138	}
20139	return ret, nil
20140	// {
20141	//   "description": "Updates the specified Environment.",
20142	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}",
20143	//   "httpMethod": "PATCH",
20144	//   "id": "dialogflow.projects.locations.agents.environments.patch",
20145	//   "parameterOrder": [
20146	//     "name"
20147	//   ],
20148	//   "parameters": {
20149	//     "name": {
20150	//       "description": "The name of the environment. Format: `projects//locations//agents//environments/`.",
20151	//       "location": "path",
20152	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+$",
20153	//       "required": true,
20154	//       "type": "string"
20155	//     },
20156	//     "updateMask": {
20157	//       "description": "Required. The mask to control which fields get updated.",
20158	//       "format": "google-fieldmask",
20159	//       "location": "query",
20160	//       "type": "string"
20161	//     }
20162	//   },
20163	//   "path": "v3/{+name}",
20164	//   "request": {
20165	//     "$ref": "GoogleCloudDialogflowCxV3Environment"
20166	//   },
20167	//   "response": {
20168	//     "$ref": "GoogleLongrunningOperation"
20169	//   },
20170	//   "scopes": [
20171	//     "https://www.googleapis.com/auth/cloud-platform",
20172	//     "https://www.googleapis.com/auth/dialogflow"
20173	//   ]
20174	// }
20175
20176}
20177
20178// method id "dialogflow.projects.locations.agents.environments.runContinuousTest":
20179
20180type ProjectsLocationsAgentsEnvironmentsRunContinuousTestCall struct {
20181	s                                                 *Service
20182	environment                                       string
20183	googleclouddialogflowcxv3runcontinuoustestrequest *GoogleCloudDialogflowCxV3RunContinuousTestRequest
20184	urlParams_                                        gensupport.URLParams
20185	ctx_                                              context.Context
20186	header_                                           http.Header
20187}
20188
20189// RunContinuousTest: Kicks off a continuous test under the specified
20190// Environment.
20191//
20192// - environment: Format: `projects//locations//agents//environments/`.
20193func (r *ProjectsLocationsAgentsEnvironmentsService) RunContinuousTest(environment string, googleclouddialogflowcxv3runcontinuoustestrequest *GoogleCloudDialogflowCxV3RunContinuousTestRequest) *ProjectsLocationsAgentsEnvironmentsRunContinuousTestCall {
20194	c := &ProjectsLocationsAgentsEnvironmentsRunContinuousTestCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20195	c.environment = environment
20196	c.googleclouddialogflowcxv3runcontinuoustestrequest = googleclouddialogflowcxv3runcontinuoustestrequest
20197	return c
20198}
20199
20200// Fields allows partial responses to be retrieved. See
20201// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20202// for more information.
20203func (c *ProjectsLocationsAgentsEnvironmentsRunContinuousTestCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsRunContinuousTestCall {
20204	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20205	return c
20206}
20207
20208// Context sets the context to be used in this call's Do method. Any
20209// pending HTTP request will be aborted if the provided context is
20210// canceled.
20211func (c *ProjectsLocationsAgentsEnvironmentsRunContinuousTestCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsRunContinuousTestCall {
20212	c.ctx_ = ctx
20213	return c
20214}
20215
20216// Header returns an http.Header that can be modified by the caller to
20217// add HTTP headers to the request.
20218func (c *ProjectsLocationsAgentsEnvironmentsRunContinuousTestCall) Header() http.Header {
20219	if c.header_ == nil {
20220		c.header_ = make(http.Header)
20221	}
20222	return c.header_
20223}
20224
20225func (c *ProjectsLocationsAgentsEnvironmentsRunContinuousTestCall) doRequest(alt string) (*http.Response, error) {
20226	reqHeaders := make(http.Header)
20227	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
20228	for k, v := range c.header_ {
20229		reqHeaders[k] = v
20230	}
20231	reqHeaders.Set("User-Agent", c.s.userAgent())
20232	var body io.Reader = nil
20233	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3runcontinuoustestrequest)
20234	if err != nil {
20235		return nil, err
20236	}
20237	reqHeaders.Set("Content-Type", "application/json")
20238	c.urlParams_.Set("alt", alt)
20239	c.urlParams_.Set("prettyPrint", "false")
20240	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+environment}:runContinuousTest")
20241	urls += "?" + c.urlParams_.Encode()
20242	req, err := http.NewRequest("POST", urls, body)
20243	if err != nil {
20244		return nil, err
20245	}
20246	req.Header = reqHeaders
20247	googleapi.Expand(req.URL, map[string]string{
20248		"environment": c.environment,
20249	})
20250	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20251}
20252
20253// Do executes the "dialogflow.projects.locations.agents.environments.runContinuousTest" call.
20254// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
20255// Any non-2xx status code is an error. Response headers are in either
20256// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
20257// was returned at all) in error.(*googleapi.Error).Header. Use
20258// googleapi.IsNotModified to check whether the returned error was
20259// because http.StatusNotModified was returned.
20260func (c *ProjectsLocationsAgentsEnvironmentsRunContinuousTestCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
20261	gensupport.SetOptions(c.urlParams_, opts...)
20262	res, err := c.doRequest("json")
20263	if res != nil && res.StatusCode == http.StatusNotModified {
20264		if res.Body != nil {
20265			res.Body.Close()
20266		}
20267		return nil, &googleapi.Error{
20268			Code:   res.StatusCode,
20269			Header: res.Header,
20270		}
20271	}
20272	if err != nil {
20273		return nil, err
20274	}
20275	defer googleapi.CloseBody(res)
20276	if err := googleapi.CheckResponse(res); err != nil {
20277		return nil, err
20278	}
20279	ret := &GoogleLongrunningOperation{
20280		ServerResponse: googleapi.ServerResponse{
20281			Header:         res.Header,
20282			HTTPStatusCode: res.StatusCode,
20283		},
20284	}
20285	target := &ret
20286	if err := gensupport.DecodeResponse(target, res); err != nil {
20287		return nil, err
20288	}
20289	return ret, nil
20290	// {
20291	//   "description": "Kicks off a continuous test under the specified Environment.",
20292	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}:runContinuousTest",
20293	//   "httpMethod": "POST",
20294	//   "id": "dialogflow.projects.locations.agents.environments.runContinuousTest",
20295	//   "parameterOrder": [
20296	//     "environment"
20297	//   ],
20298	//   "parameters": {
20299	//     "environment": {
20300	//       "description": "Required. Format: `projects//locations//agents//environments/`.",
20301	//       "location": "path",
20302	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+$",
20303	//       "required": true,
20304	//       "type": "string"
20305	//     }
20306	//   },
20307	//   "path": "v3/{+environment}:runContinuousTest",
20308	//   "request": {
20309	//     "$ref": "GoogleCloudDialogflowCxV3RunContinuousTestRequest"
20310	//   },
20311	//   "response": {
20312	//     "$ref": "GoogleLongrunningOperation"
20313	//   },
20314	//   "scopes": [
20315	//     "https://www.googleapis.com/auth/cloud-platform",
20316	//     "https://www.googleapis.com/auth/dialogflow"
20317	//   ]
20318	// }
20319
20320}
20321
20322// method id "dialogflow.projects.locations.agents.environments.continuousTestResults.list":
20323
20324type ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall struct {
20325	s            *Service
20326	parent       string
20327	urlParams_   gensupport.URLParams
20328	ifNoneMatch_ string
20329	ctx_         context.Context
20330	header_      http.Header
20331}
20332
20333// List: Fetches a list of continuous test results for a given
20334// environment.
20335//
20336// - parent: The environment to list results for. Format:
20337//   `projects//locations//agents// environments/`.
20338func (r *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsService) List(parent string) *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall {
20339	c := &ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20340	c.parent = parent
20341	return c
20342}
20343
20344// PageSize sets the optional parameter "pageSize": The maximum number
20345// of items to return in a single page. By default 100 and at most 1000.
20346func (c *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall) PageSize(pageSize int64) *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall {
20347	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
20348	return c
20349}
20350
20351// PageToken sets the optional parameter "pageToken": The
20352// next_page_token value returned from a previous list request.
20353func (c *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall) PageToken(pageToken string) *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall {
20354	c.urlParams_.Set("pageToken", pageToken)
20355	return c
20356}
20357
20358// Fields allows partial responses to be retrieved. See
20359// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20360// for more information.
20361func (c *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall {
20362	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20363	return c
20364}
20365
20366// IfNoneMatch sets the optional parameter which makes the operation
20367// fail if the object's ETag matches the given value. This is useful for
20368// getting updates only after the object has changed since the last
20369// request. Use googleapi.IsNotModified to check whether the response
20370// error from Do is the result of In-None-Match.
20371func (c *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall {
20372	c.ifNoneMatch_ = entityTag
20373	return c
20374}
20375
20376// Context sets the context to be used in this call's Do method. Any
20377// pending HTTP request will be aborted if the provided context is
20378// canceled.
20379func (c *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall {
20380	c.ctx_ = ctx
20381	return c
20382}
20383
20384// Header returns an http.Header that can be modified by the caller to
20385// add HTTP headers to the request.
20386func (c *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall) Header() http.Header {
20387	if c.header_ == nil {
20388		c.header_ = make(http.Header)
20389	}
20390	return c.header_
20391}
20392
20393func (c *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall) doRequest(alt string) (*http.Response, error) {
20394	reqHeaders := make(http.Header)
20395	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
20396	for k, v := range c.header_ {
20397		reqHeaders[k] = v
20398	}
20399	reqHeaders.Set("User-Agent", c.s.userAgent())
20400	if c.ifNoneMatch_ != "" {
20401		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
20402	}
20403	var body io.Reader = nil
20404	c.urlParams_.Set("alt", alt)
20405	c.urlParams_.Set("prettyPrint", "false")
20406	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/continuousTestResults")
20407	urls += "?" + c.urlParams_.Encode()
20408	req, err := http.NewRequest("GET", urls, body)
20409	if err != nil {
20410		return nil, err
20411	}
20412	req.Header = reqHeaders
20413	googleapi.Expand(req.URL, map[string]string{
20414		"parent": c.parent,
20415	})
20416	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20417}
20418
20419// Do executes the "dialogflow.projects.locations.agents.environments.continuousTestResults.list" call.
20420// Exactly one of
20421// *GoogleCloudDialogflowCxV3ListContinuousTestResultsResponse or error
20422// will be non-nil. Any non-2xx status code is an error. Response
20423// headers are in either
20424// *GoogleCloudDialogflowCxV3ListContinuousTestResultsResponse.ServerResp
20425// onse.Header or (if a response was returned at all) in
20426// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
20427// whether the returned error was because http.StatusNotModified was
20428// returned.
20429func (c *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3ListContinuousTestResultsResponse, error) {
20430	gensupport.SetOptions(c.urlParams_, opts...)
20431	res, err := c.doRequest("json")
20432	if res != nil && res.StatusCode == http.StatusNotModified {
20433		if res.Body != nil {
20434			res.Body.Close()
20435		}
20436		return nil, &googleapi.Error{
20437			Code:   res.StatusCode,
20438			Header: res.Header,
20439		}
20440	}
20441	if err != nil {
20442		return nil, err
20443	}
20444	defer googleapi.CloseBody(res)
20445	if err := googleapi.CheckResponse(res); err != nil {
20446		return nil, err
20447	}
20448	ret := &GoogleCloudDialogflowCxV3ListContinuousTestResultsResponse{
20449		ServerResponse: googleapi.ServerResponse{
20450			Header:         res.Header,
20451			HTTPStatusCode: res.StatusCode,
20452		},
20453	}
20454	target := &ret
20455	if err := gensupport.DecodeResponse(target, res); err != nil {
20456		return nil, err
20457	}
20458	return ret, nil
20459	// {
20460	//   "description": "Fetches a list of continuous test results for a given environment.",
20461	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/continuousTestResults",
20462	//   "httpMethod": "GET",
20463	//   "id": "dialogflow.projects.locations.agents.environments.continuousTestResults.list",
20464	//   "parameterOrder": [
20465	//     "parent"
20466	//   ],
20467	//   "parameters": {
20468	//     "pageSize": {
20469	//       "description": "The maximum number of items to return in a single page. By default 100 and at most 1000.",
20470	//       "format": "int32",
20471	//       "location": "query",
20472	//       "type": "integer"
20473	//     },
20474	//     "pageToken": {
20475	//       "description": "The next_page_token value returned from a previous list request.",
20476	//       "location": "query",
20477	//       "type": "string"
20478	//     },
20479	//     "parent": {
20480	//       "description": "Required. The environment to list results for. Format: `projects//locations//agents// environments/`.",
20481	//       "location": "path",
20482	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+$",
20483	//       "required": true,
20484	//       "type": "string"
20485	//     }
20486	//   },
20487	//   "path": "v3/{+parent}/continuousTestResults",
20488	//   "response": {
20489	//     "$ref": "GoogleCloudDialogflowCxV3ListContinuousTestResultsResponse"
20490	//   },
20491	//   "scopes": [
20492	//     "https://www.googleapis.com/auth/cloud-platform",
20493	//     "https://www.googleapis.com/auth/dialogflow"
20494	//   ]
20495	// }
20496
20497}
20498
20499// Pages invokes f for each page of results.
20500// A non-nil error returned from f will halt the iteration.
20501// The provided context supersedes any context provided to the Context method.
20502func (c *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3ListContinuousTestResultsResponse) error) error {
20503	c.ctx_ = ctx
20504	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
20505	for {
20506		x, err := c.Do()
20507		if err != nil {
20508			return err
20509		}
20510		if err := f(x); err != nil {
20511			return err
20512		}
20513		if x.NextPageToken == "" {
20514			return nil
20515		}
20516		c.PageToken(x.NextPageToken)
20517	}
20518}
20519
20520// method id "dialogflow.projects.locations.agents.environments.experiments.create":
20521
20522type ProjectsLocationsAgentsEnvironmentsExperimentsCreateCall struct {
20523	s                                   *Service
20524	parent                              string
20525	googleclouddialogflowcxv3experiment *GoogleCloudDialogflowCxV3Experiment
20526	urlParams_                          gensupport.URLParams
20527	ctx_                                context.Context
20528	header_                             http.Header
20529}
20530
20531// Create: Creates an Experiment in the specified Environment.
20532//
20533// - parent: The Agent to create an Environment for. Format:
20534//   `projects//locations//agents//environments/`.
20535func (r *ProjectsLocationsAgentsEnvironmentsExperimentsService) Create(parent string, googleclouddialogflowcxv3experiment *GoogleCloudDialogflowCxV3Experiment) *ProjectsLocationsAgentsEnvironmentsExperimentsCreateCall {
20536	c := &ProjectsLocationsAgentsEnvironmentsExperimentsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20537	c.parent = parent
20538	c.googleclouddialogflowcxv3experiment = googleclouddialogflowcxv3experiment
20539	return c
20540}
20541
20542// Fields allows partial responses to be retrieved. See
20543// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20544// for more information.
20545func (c *ProjectsLocationsAgentsEnvironmentsExperimentsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsExperimentsCreateCall {
20546	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20547	return c
20548}
20549
20550// Context sets the context to be used in this call's Do method. Any
20551// pending HTTP request will be aborted if the provided context is
20552// canceled.
20553func (c *ProjectsLocationsAgentsEnvironmentsExperimentsCreateCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsExperimentsCreateCall {
20554	c.ctx_ = ctx
20555	return c
20556}
20557
20558// Header returns an http.Header that can be modified by the caller to
20559// add HTTP headers to the request.
20560func (c *ProjectsLocationsAgentsEnvironmentsExperimentsCreateCall) Header() http.Header {
20561	if c.header_ == nil {
20562		c.header_ = make(http.Header)
20563	}
20564	return c.header_
20565}
20566
20567func (c *ProjectsLocationsAgentsEnvironmentsExperimentsCreateCall) doRequest(alt string) (*http.Response, error) {
20568	reqHeaders := make(http.Header)
20569	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
20570	for k, v := range c.header_ {
20571		reqHeaders[k] = v
20572	}
20573	reqHeaders.Set("User-Agent", c.s.userAgent())
20574	var body io.Reader = nil
20575	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3experiment)
20576	if err != nil {
20577		return nil, err
20578	}
20579	reqHeaders.Set("Content-Type", "application/json")
20580	c.urlParams_.Set("alt", alt)
20581	c.urlParams_.Set("prettyPrint", "false")
20582	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/experiments")
20583	urls += "?" + c.urlParams_.Encode()
20584	req, err := http.NewRequest("POST", urls, body)
20585	if err != nil {
20586		return nil, err
20587	}
20588	req.Header = reqHeaders
20589	googleapi.Expand(req.URL, map[string]string{
20590		"parent": c.parent,
20591	})
20592	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20593}
20594
20595// Do executes the "dialogflow.projects.locations.agents.environments.experiments.create" call.
20596// Exactly one of *GoogleCloudDialogflowCxV3Experiment or error will be
20597// non-nil. Any non-2xx status code is an error. Response headers are in
20598// either *GoogleCloudDialogflowCxV3Experiment.ServerResponse.Header or
20599// (if a response was returned at all) in
20600// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
20601// whether the returned error was because http.StatusNotModified was
20602// returned.
20603func (c *ProjectsLocationsAgentsEnvironmentsExperimentsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3Experiment, error) {
20604	gensupport.SetOptions(c.urlParams_, opts...)
20605	res, err := c.doRequest("json")
20606	if res != nil && res.StatusCode == http.StatusNotModified {
20607		if res.Body != nil {
20608			res.Body.Close()
20609		}
20610		return nil, &googleapi.Error{
20611			Code:   res.StatusCode,
20612			Header: res.Header,
20613		}
20614	}
20615	if err != nil {
20616		return nil, err
20617	}
20618	defer googleapi.CloseBody(res)
20619	if err := googleapi.CheckResponse(res); err != nil {
20620		return nil, err
20621	}
20622	ret := &GoogleCloudDialogflowCxV3Experiment{
20623		ServerResponse: googleapi.ServerResponse{
20624			Header:         res.Header,
20625			HTTPStatusCode: res.StatusCode,
20626		},
20627	}
20628	target := &ret
20629	if err := gensupport.DecodeResponse(target, res); err != nil {
20630		return nil, err
20631	}
20632	return ret, nil
20633	// {
20634	//   "description": "Creates an Experiment in the specified Environment.",
20635	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/experiments",
20636	//   "httpMethod": "POST",
20637	//   "id": "dialogflow.projects.locations.agents.environments.experiments.create",
20638	//   "parameterOrder": [
20639	//     "parent"
20640	//   ],
20641	//   "parameters": {
20642	//     "parent": {
20643	//       "description": "Required. The Agent to create an Environment for. Format: `projects//locations//agents//environments/`.",
20644	//       "location": "path",
20645	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+$",
20646	//       "required": true,
20647	//       "type": "string"
20648	//     }
20649	//   },
20650	//   "path": "v3/{+parent}/experiments",
20651	//   "request": {
20652	//     "$ref": "GoogleCloudDialogflowCxV3Experiment"
20653	//   },
20654	//   "response": {
20655	//     "$ref": "GoogleCloudDialogflowCxV3Experiment"
20656	//   },
20657	//   "scopes": [
20658	//     "https://www.googleapis.com/auth/cloud-platform",
20659	//     "https://www.googleapis.com/auth/dialogflow"
20660	//   ]
20661	// }
20662
20663}
20664
20665// method id "dialogflow.projects.locations.agents.environments.experiments.delete":
20666
20667type ProjectsLocationsAgentsEnvironmentsExperimentsDeleteCall struct {
20668	s          *Service
20669	name       string
20670	urlParams_ gensupport.URLParams
20671	ctx_       context.Context
20672	header_    http.Header
20673}
20674
20675// Delete: Deletes the specified Experiment.
20676//
20677// - name: The name of the Environment to delete. Format:
20678//   `projects//locations//agents//environments//experiments/`.
20679func (r *ProjectsLocationsAgentsEnvironmentsExperimentsService) Delete(name string) *ProjectsLocationsAgentsEnvironmentsExperimentsDeleteCall {
20680	c := &ProjectsLocationsAgentsEnvironmentsExperimentsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20681	c.name = name
20682	return c
20683}
20684
20685// Fields allows partial responses to be retrieved. See
20686// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20687// for more information.
20688func (c *ProjectsLocationsAgentsEnvironmentsExperimentsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsExperimentsDeleteCall {
20689	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20690	return c
20691}
20692
20693// Context sets the context to be used in this call's Do method. Any
20694// pending HTTP request will be aborted if the provided context is
20695// canceled.
20696func (c *ProjectsLocationsAgentsEnvironmentsExperimentsDeleteCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsExperimentsDeleteCall {
20697	c.ctx_ = ctx
20698	return c
20699}
20700
20701// Header returns an http.Header that can be modified by the caller to
20702// add HTTP headers to the request.
20703func (c *ProjectsLocationsAgentsEnvironmentsExperimentsDeleteCall) Header() http.Header {
20704	if c.header_ == nil {
20705		c.header_ = make(http.Header)
20706	}
20707	return c.header_
20708}
20709
20710func (c *ProjectsLocationsAgentsEnvironmentsExperimentsDeleteCall) doRequest(alt string) (*http.Response, error) {
20711	reqHeaders := make(http.Header)
20712	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
20713	for k, v := range c.header_ {
20714		reqHeaders[k] = v
20715	}
20716	reqHeaders.Set("User-Agent", c.s.userAgent())
20717	var body io.Reader = nil
20718	c.urlParams_.Set("alt", alt)
20719	c.urlParams_.Set("prettyPrint", "false")
20720	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
20721	urls += "?" + c.urlParams_.Encode()
20722	req, err := http.NewRequest("DELETE", urls, body)
20723	if err != nil {
20724		return nil, err
20725	}
20726	req.Header = reqHeaders
20727	googleapi.Expand(req.URL, map[string]string{
20728		"name": c.name,
20729	})
20730	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20731}
20732
20733// Do executes the "dialogflow.projects.locations.agents.environments.experiments.delete" call.
20734// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
20735// non-2xx status code is an error. Response headers are in either
20736// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
20737// returned at all) in error.(*googleapi.Error).Header. Use
20738// googleapi.IsNotModified to check whether the returned error was
20739// because http.StatusNotModified was returned.
20740func (c *ProjectsLocationsAgentsEnvironmentsExperimentsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
20741	gensupport.SetOptions(c.urlParams_, opts...)
20742	res, err := c.doRequest("json")
20743	if res != nil && res.StatusCode == http.StatusNotModified {
20744		if res.Body != nil {
20745			res.Body.Close()
20746		}
20747		return nil, &googleapi.Error{
20748			Code:   res.StatusCode,
20749			Header: res.Header,
20750		}
20751	}
20752	if err != nil {
20753		return nil, err
20754	}
20755	defer googleapi.CloseBody(res)
20756	if err := googleapi.CheckResponse(res); err != nil {
20757		return nil, err
20758	}
20759	ret := &GoogleProtobufEmpty{
20760		ServerResponse: googleapi.ServerResponse{
20761			Header:         res.Header,
20762			HTTPStatusCode: res.StatusCode,
20763		},
20764	}
20765	target := &ret
20766	if err := gensupport.DecodeResponse(target, res); err != nil {
20767		return nil, err
20768	}
20769	return ret, nil
20770	// {
20771	//   "description": "Deletes the specified Experiment.",
20772	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/experiments/{experimentsId}",
20773	//   "httpMethod": "DELETE",
20774	//   "id": "dialogflow.projects.locations.agents.environments.experiments.delete",
20775	//   "parameterOrder": [
20776	//     "name"
20777	//   ],
20778	//   "parameters": {
20779	//     "name": {
20780	//       "description": "Required. The name of the Environment to delete. Format: `projects//locations//agents//environments//experiments/`.",
20781	//       "location": "path",
20782	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+/experiments/[^/]+$",
20783	//       "required": true,
20784	//       "type": "string"
20785	//     }
20786	//   },
20787	//   "path": "v3/{+name}",
20788	//   "response": {
20789	//     "$ref": "GoogleProtobufEmpty"
20790	//   },
20791	//   "scopes": [
20792	//     "https://www.googleapis.com/auth/cloud-platform",
20793	//     "https://www.googleapis.com/auth/dialogflow"
20794	//   ]
20795	// }
20796
20797}
20798
20799// method id "dialogflow.projects.locations.agents.environments.experiments.get":
20800
20801type ProjectsLocationsAgentsEnvironmentsExperimentsGetCall struct {
20802	s            *Service
20803	name         string
20804	urlParams_   gensupport.URLParams
20805	ifNoneMatch_ string
20806	ctx_         context.Context
20807	header_      http.Header
20808}
20809
20810// Get: Retrieves the specified Experiment.
20811//
20812// - name: The name of the Environment. Format:
20813//   `projects//locations//agents//environments//experiments/`.
20814func (r *ProjectsLocationsAgentsEnvironmentsExperimentsService) Get(name string) *ProjectsLocationsAgentsEnvironmentsExperimentsGetCall {
20815	c := &ProjectsLocationsAgentsEnvironmentsExperimentsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20816	c.name = name
20817	return c
20818}
20819
20820// Fields allows partial responses to be retrieved. See
20821// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20822// for more information.
20823func (c *ProjectsLocationsAgentsEnvironmentsExperimentsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsExperimentsGetCall {
20824	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20825	return c
20826}
20827
20828// IfNoneMatch sets the optional parameter which makes the operation
20829// fail if the object's ETag matches the given value. This is useful for
20830// getting updates only after the object has changed since the last
20831// request. Use googleapi.IsNotModified to check whether the response
20832// error from Do is the result of In-None-Match.
20833func (c *ProjectsLocationsAgentsEnvironmentsExperimentsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsEnvironmentsExperimentsGetCall {
20834	c.ifNoneMatch_ = entityTag
20835	return c
20836}
20837
20838// Context sets the context to be used in this call's Do method. Any
20839// pending HTTP request will be aborted if the provided context is
20840// canceled.
20841func (c *ProjectsLocationsAgentsEnvironmentsExperimentsGetCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsExperimentsGetCall {
20842	c.ctx_ = ctx
20843	return c
20844}
20845
20846// Header returns an http.Header that can be modified by the caller to
20847// add HTTP headers to the request.
20848func (c *ProjectsLocationsAgentsEnvironmentsExperimentsGetCall) Header() http.Header {
20849	if c.header_ == nil {
20850		c.header_ = make(http.Header)
20851	}
20852	return c.header_
20853}
20854
20855func (c *ProjectsLocationsAgentsEnvironmentsExperimentsGetCall) doRequest(alt string) (*http.Response, error) {
20856	reqHeaders := make(http.Header)
20857	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
20858	for k, v := range c.header_ {
20859		reqHeaders[k] = v
20860	}
20861	reqHeaders.Set("User-Agent", c.s.userAgent())
20862	if c.ifNoneMatch_ != "" {
20863		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
20864	}
20865	var body io.Reader = nil
20866	c.urlParams_.Set("alt", alt)
20867	c.urlParams_.Set("prettyPrint", "false")
20868	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
20869	urls += "?" + c.urlParams_.Encode()
20870	req, err := http.NewRequest("GET", urls, body)
20871	if err != nil {
20872		return nil, err
20873	}
20874	req.Header = reqHeaders
20875	googleapi.Expand(req.URL, map[string]string{
20876		"name": c.name,
20877	})
20878	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20879}
20880
20881// Do executes the "dialogflow.projects.locations.agents.environments.experiments.get" call.
20882// Exactly one of *GoogleCloudDialogflowCxV3Experiment or error will be
20883// non-nil. Any non-2xx status code is an error. Response headers are in
20884// either *GoogleCloudDialogflowCxV3Experiment.ServerResponse.Header or
20885// (if a response was returned at all) in
20886// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
20887// whether the returned error was because http.StatusNotModified was
20888// returned.
20889func (c *ProjectsLocationsAgentsEnvironmentsExperimentsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3Experiment, error) {
20890	gensupport.SetOptions(c.urlParams_, opts...)
20891	res, err := c.doRequest("json")
20892	if res != nil && res.StatusCode == http.StatusNotModified {
20893		if res.Body != nil {
20894			res.Body.Close()
20895		}
20896		return nil, &googleapi.Error{
20897			Code:   res.StatusCode,
20898			Header: res.Header,
20899		}
20900	}
20901	if err != nil {
20902		return nil, err
20903	}
20904	defer googleapi.CloseBody(res)
20905	if err := googleapi.CheckResponse(res); err != nil {
20906		return nil, err
20907	}
20908	ret := &GoogleCloudDialogflowCxV3Experiment{
20909		ServerResponse: googleapi.ServerResponse{
20910			Header:         res.Header,
20911			HTTPStatusCode: res.StatusCode,
20912		},
20913	}
20914	target := &ret
20915	if err := gensupport.DecodeResponse(target, res); err != nil {
20916		return nil, err
20917	}
20918	return ret, nil
20919	// {
20920	//   "description": "Retrieves the specified Experiment.",
20921	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/experiments/{experimentsId}",
20922	//   "httpMethod": "GET",
20923	//   "id": "dialogflow.projects.locations.agents.environments.experiments.get",
20924	//   "parameterOrder": [
20925	//     "name"
20926	//   ],
20927	//   "parameters": {
20928	//     "name": {
20929	//       "description": "Required. The name of the Environment. Format: `projects//locations//agents//environments//experiments/`.",
20930	//       "location": "path",
20931	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+/experiments/[^/]+$",
20932	//       "required": true,
20933	//       "type": "string"
20934	//     }
20935	//   },
20936	//   "path": "v3/{+name}",
20937	//   "response": {
20938	//     "$ref": "GoogleCloudDialogflowCxV3Experiment"
20939	//   },
20940	//   "scopes": [
20941	//     "https://www.googleapis.com/auth/cloud-platform",
20942	//     "https://www.googleapis.com/auth/dialogflow"
20943	//   ]
20944	// }
20945
20946}
20947
20948// method id "dialogflow.projects.locations.agents.environments.experiments.list":
20949
20950type ProjectsLocationsAgentsEnvironmentsExperimentsListCall struct {
20951	s            *Service
20952	parent       string
20953	urlParams_   gensupport.URLParams
20954	ifNoneMatch_ string
20955	ctx_         context.Context
20956	header_      http.Header
20957}
20958
20959// List: Returns the list of all experiments in the specified
20960// Environment.
20961//
20962// - parent: The Environment to list all environments for. Format:
20963//   `projects//locations//agents//environments/`.
20964func (r *ProjectsLocationsAgentsEnvironmentsExperimentsService) List(parent string) *ProjectsLocationsAgentsEnvironmentsExperimentsListCall {
20965	c := &ProjectsLocationsAgentsEnvironmentsExperimentsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20966	c.parent = parent
20967	return c
20968}
20969
20970// PageSize sets the optional parameter "pageSize": The maximum number
20971// of items to return in a single page. By default 20 and at most 100.
20972func (c *ProjectsLocationsAgentsEnvironmentsExperimentsListCall) PageSize(pageSize int64) *ProjectsLocationsAgentsEnvironmentsExperimentsListCall {
20973	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
20974	return c
20975}
20976
20977// PageToken sets the optional parameter "pageToken": The
20978// next_page_token value returned from a previous list request.
20979func (c *ProjectsLocationsAgentsEnvironmentsExperimentsListCall) PageToken(pageToken string) *ProjectsLocationsAgentsEnvironmentsExperimentsListCall {
20980	c.urlParams_.Set("pageToken", pageToken)
20981	return c
20982}
20983
20984// Fields allows partial responses to be retrieved. See
20985// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20986// for more information.
20987func (c *ProjectsLocationsAgentsEnvironmentsExperimentsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsExperimentsListCall {
20988	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20989	return c
20990}
20991
20992// IfNoneMatch sets the optional parameter which makes the operation
20993// fail if the object's ETag matches the given value. This is useful for
20994// getting updates only after the object has changed since the last
20995// request. Use googleapi.IsNotModified to check whether the response
20996// error from Do is the result of In-None-Match.
20997func (c *ProjectsLocationsAgentsEnvironmentsExperimentsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsEnvironmentsExperimentsListCall {
20998	c.ifNoneMatch_ = entityTag
20999	return c
21000}
21001
21002// Context sets the context to be used in this call's Do method. Any
21003// pending HTTP request will be aborted if the provided context is
21004// canceled.
21005func (c *ProjectsLocationsAgentsEnvironmentsExperimentsListCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsExperimentsListCall {
21006	c.ctx_ = ctx
21007	return c
21008}
21009
21010// Header returns an http.Header that can be modified by the caller to
21011// add HTTP headers to the request.
21012func (c *ProjectsLocationsAgentsEnvironmentsExperimentsListCall) Header() http.Header {
21013	if c.header_ == nil {
21014		c.header_ = make(http.Header)
21015	}
21016	return c.header_
21017}
21018
21019func (c *ProjectsLocationsAgentsEnvironmentsExperimentsListCall) doRequest(alt string) (*http.Response, error) {
21020	reqHeaders := make(http.Header)
21021	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
21022	for k, v := range c.header_ {
21023		reqHeaders[k] = v
21024	}
21025	reqHeaders.Set("User-Agent", c.s.userAgent())
21026	if c.ifNoneMatch_ != "" {
21027		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
21028	}
21029	var body io.Reader = nil
21030	c.urlParams_.Set("alt", alt)
21031	c.urlParams_.Set("prettyPrint", "false")
21032	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/experiments")
21033	urls += "?" + c.urlParams_.Encode()
21034	req, err := http.NewRequest("GET", urls, body)
21035	if err != nil {
21036		return nil, err
21037	}
21038	req.Header = reqHeaders
21039	googleapi.Expand(req.URL, map[string]string{
21040		"parent": c.parent,
21041	})
21042	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21043}
21044
21045// Do executes the "dialogflow.projects.locations.agents.environments.experiments.list" call.
21046// Exactly one of *GoogleCloudDialogflowCxV3ListExperimentsResponse or
21047// error will be non-nil. Any non-2xx status code is an error. Response
21048// headers are in either
21049// *GoogleCloudDialogflowCxV3ListExperimentsResponse.ServerResponse.Heade
21050// r or (if a response was returned at all) in
21051// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
21052// whether the returned error was because http.StatusNotModified was
21053// returned.
21054func (c *ProjectsLocationsAgentsEnvironmentsExperimentsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3ListExperimentsResponse, error) {
21055	gensupport.SetOptions(c.urlParams_, opts...)
21056	res, err := c.doRequest("json")
21057	if res != nil && res.StatusCode == http.StatusNotModified {
21058		if res.Body != nil {
21059			res.Body.Close()
21060		}
21061		return nil, &googleapi.Error{
21062			Code:   res.StatusCode,
21063			Header: res.Header,
21064		}
21065	}
21066	if err != nil {
21067		return nil, err
21068	}
21069	defer googleapi.CloseBody(res)
21070	if err := googleapi.CheckResponse(res); err != nil {
21071		return nil, err
21072	}
21073	ret := &GoogleCloudDialogflowCxV3ListExperimentsResponse{
21074		ServerResponse: googleapi.ServerResponse{
21075			Header:         res.Header,
21076			HTTPStatusCode: res.StatusCode,
21077		},
21078	}
21079	target := &ret
21080	if err := gensupport.DecodeResponse(target, res); err != nil {
21081		return nil, err
21082	}
21083	return ret, nil
21084	// {
21085	//   "description": "Returns the list of all experiments in the specified Environment.",
21086	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/experiments",
21087	//   "httpMethod": "GET",
21088	//   "id": "dialogflow.projects.locations.agents.environments.experiments.list",
21089	//   "parameterOrder": [
21090	//     "parent"
21091	//   ],
21092	//   "parameters": {
21093	//     "pageSize": {
21094	//       "description": "The maximum number of items to return in a single page. By default 20 and at most 100.",
21095	//       "format": "int32",
21096	//       "location": "query",
21097	//       "type": "integer"
21098	//     },
21099	//     "pageToken": {
21100	//       "description": "The next_page_token value returned from a previous list request.",
21101	//       "location": "query",
21102	//       "type": "string"
21103	//     },
21104	//     "parent": {
21105	//       "description": "Required. The Environment to list all environments for. Format: `projects//locations//agents//environments/`.",
21106	//       "location": "path",
21107	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+$",
21108	//       "required": true,
21109	//       "type": "string"
21110	//     }
21111	//   },
21112	//   "path": "v3/{+parent}/experiments",
21113	//   "response": {
21114	//     "$ref": "GoogleCloudDialogflowCxV3ListExperimentsResponse"
21115	//   },
21116	//   "scopes": [
21117	//     "https://www.googleapis.com/auth/cloud-platform",
21118	//     "https://www.googleapis.com/auth/dialogflow"
21119	//   ]
21120	// }
21121
21122}
21123
21124// Pages invokes f for each page of results.
21125// A non-nil error returned from f will halt the iteration.
21126// The provided context supersedes any context provided to the Context method.
21127func (c *ProjectsLocationsAgentsEnvironmentsExperimentsListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3ListExperimentsResponse) error) error {
21128	c.ctx_ = ctx
21129	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
21130	for {
21131		x, err := c.Do()
21132		if err != nil {
21133			return err
21134		}
21135		if err := f(x); err != nil {
21136			return err
21137		}
21138		if x.NextPageToken == "" {
21139			return nil
21140		}
21141		c.PageToken(x.NextPageToken)
21142	}
21143}
21144
21145// method id "dialogflow.projects.locations.agents.environments.experiments.patch":
21146
21147type ProjectsLocationsAgentsEnvironmentsExperimentsPatchCall struct {
21148	s                                   *Service
21149	name                                string
21150	googleclouddialogflowcxv3experiment *GoogleCloudDialogflowCxV3Experiment
21151	urlParams_                          gensupport.URLParams
21152	ctx_                                context.Context
21153	header_                             http.Header
21154}
21155
21156// Patch: Updates the specified Experiment.
21157//
21158// - name: The name of the experiment. Format:
21159//   projects//locations//agents//environments//experiments/..
21160func (r *ProjectsLocationsAgentsEnvironmentsExperimentsService) Patch(name string, googleclouddialogflowcxv3experiment *GoogleCloudDialogflowCxV3Experiment) *ProjectsLocationsAgentsEnvironmentsExperimentsPatchCall {
21161	c := &ProjectsLocationsAgentsEnvironmentsExperimentsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21162	c.name = name
21163	c.googleclouddialogflowcxv3experiment = googleclouddialogflowcxv3experiment
21164	return c
21165}
21166
21167// UpdateMask sets the optional parameter "updateMask": Required. The
21168// mask to control which fields get updated.
21169func (c *ProjectsLocationsAgentsEnvironmentsExperimentsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsAgentsEnvironmentsExperimentsPatchCall {
21170	c.urlParams_.Set("updateMask", updateMask)
21171	return c
21172}
21173
21174// Fields allows partial responses to be retrieved. See
21175// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21176// for more information.
21177func (c *ProjectsLocationsAgentsEnvironmentsExperimentsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsExperimentsPatchCall {
21178	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21179	return c
21180}
21181
21182// Context sets the context to be used in this call's Do method. Any
21183// pending HTTP request will be aborted if the provided context is
21184// canceled.
21185func (c *ProjectsLocationsAgentsEnvironmentsExperimentsPatchCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsExperimentsPatchCall {
21186	c.ctx_ = ctx
21187	return c
21188}
21189
21190// Header returns an http.Header that can be modified by the caller to
21191// add HTTP headers to the request.
21192func (c *ProjectsLocationsAgentsEnvironmentsExperimentsPatchCall) Header() http.Header {
21193	if c.header_ == nil {
21194		c.header_ = make(http.Header)
21195	}
21196	return c.header_
21197}
21198
21199func (c *ProjectsLocationsAgentsEnvironmentsExperimentsPatchCall) doRequest(alt string) (*http.Response, error) {
21200	reqHeaders := make(http.Header)
21201	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
21202	for k, v := range c.header_ {
21203		reqHeaders[k] = v
21204	}
21205	reqHeaders.Set("User-Agent", c.s.userAgent())
21206	var body io.Reader = nil
21207	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3experiment)
21208	if err != nil {
21209		return nil, err
21210	}
21211	reqHeaders.Set("Content-Type", "application/json")
21212	c.urlParams_.Set("alt", alt)
21213	c.urlParams_.Set("prettyPrint", "false")
21214	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
21215	urls += "?" + c.urlParams_.Encode()
21216	req, err := http.NewRequest("PATCH", urls, body)
21217	if err != nil {
21218		return nil, err
21219	}
21220	req.Header = reqHeaders
21221	googleapi.Expand(req.URL, map[string]string{
21222		"name": c.name,
21223	})
21224	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21225}
21226
21227// Do executes the "dialogflow.projects.locations.agents.environments.experiments.patch" call.
21228// Exactly one of *GoogleCloudDialogflowCxV3Experiment or error will be
21229// non-nil. Any non-2xx status code is an error. Response headers are in
21230// either *GoogleCloudDialogflowCxV3Experiment.ServerResponse.Header or
21231// (if a response was returned at all) in
21232// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
21233// whether the returned error was because http.StatusNotModified was
21234// returned.
21235func (c *ProjectsLocationsAgentsEnvironmentsExperimentsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3Experiment, error) {
21236	gensupport.SetOptions(c.urlParams_, opts...)
21237	res, err := c.doRequest("json")
21238	if res != nil && res.StatusCode == http.StatusNotModified {
21239		if res.Body != nil {
21240			res.Body.Close()
21241		}
21242		return nil, &googleapi.Error{
21243			Code:   res.StatusCode,
21244			Header: res.Header,
21245		}
21246	}
21247	if err != nil {
21248		return nil, err
21249	}
21250	defer googleapi.CloseBody(res)
21251	if err := googleapi.CheckResponse(res); err != nil {
21252		return nil, err
21253	}
21254	ret := &GoogleCloudDialogflowCxV3Experiment{
21255		ServerResponse: googleapi.ServerResponse{
21256			Header:         res.Header,
21257			HTTPStatusCode: res.StatusCode,
21258		},
21259	}
21260	target := &ret
21261	if err := gensupport.DecodeResponse(target, res); err != nil {
21262		return nil, err
21263	}
21264	return ret, nil
21265	// {
21266	//   "description": "Updates the specified Experiment.",
21267	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/experiments/{experimentsId}",
21268	//   "httpMethod": "PATCH",
21269	//   "id": "dialogflow.projects.locations.agents.environments.experiments.patch",
21270	//   "parameterOrder": [
21271	//     "name"
21272	//   ],
21273	//   "parameters": {
21274	//     "name": {
21275	//       "description": "The name of the experiment. Format: projects//locations//agents//environments//experiments/..",
21276	//       "location": "path",
21277	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+/experiments/[^/]+$",
21278	//       "required": true,
21279	//       "type": "string"
21280	//     },
21281	//     "updateMask": {
21282	//       "description": "Required. The mask to control which fields get updated.",
21283	//       "format": "google-fieldmask",
21284	//       "location": "query",
21285	//       "type": "string"
21286	//     }
21287	//   },
21288	//   "path": "v3/{+name}",
21289	//   "request": {
21290	//     "$ref": "GoogleCloudDialogflowCxV3Experiment"
21291	//   },
21292	//   "response": {
21293	//     "$ref": "GoogleCloudDialogflowCxV3Experiment"
21294	//   },
21295	//   "scopes": [
21296	//     "https://www.googleapis.com/auth/cloud-platform",
21297	//     "https://www.googleapis.com/auth/dialogflow"
21298	//   ]
21299	// }
21300
21301}
21302
21303// method id "dialogflow.projects.locations.agents.environments.experiments.start":
21304
21305type ProjectsLocationsAgentsEnvironmentsExperimentsStartCall struct {
21306	s                                               *Service
21307	name                                            string
21308	googleclouddialogflowcxv3startexperimentrequest *GoogleCloudDialogflowCxV3StartExperimentRequest
21309	urlParams_                                      gensupport.URLParams
21310	ctx_                                            context.Context
21311	header_                                         http.Header
21312}
21313
21314// Start: Starts the specified Experiment. This rpc only changes the
21315// state of experiment from PENDING to RUNNING.
21316//
21317// - name: Resource name of the experiment to start. Format:
21318//   `projects//locations//agents//environments//experiments/`.
21319func (r *ProjectsLocationsAgentsEnvironmentsExperimentsService) Start(name string, googleclouddialogflowcxv3startexperimentrequest *GoogleCloudDialogflowCxV3StartExperimentRequest) *ProjectsLocationsAgentsEnvironmentsExperimentsStartCall {
21320	c := &ProjectsLocationsAgentsEnvironmentsExperimentsStartCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21321	c.name = name
21322	c.googleclouddialogflowcxv3startexperimentrequest = googleclouddialogflowcxv3startexperimentrequest
21323	return c
21324}
21325
21326// Fields allows partial responses to be retrieved. See
21327// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21328// for more information.
21329func (c *ProjectsLocationsAgentsEnvironmentsExperimentsStartCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsExperimentsStartCall {
21330	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21331	return c
21332}
21333
21334// Context sets the context to be used in this call's Do method. Any
21335// pending HTTP request will be aborted if the provided context is
21336// canceled.
21337func (c *ProjectsLocationsAgentsEnvironmentsExperimentsStartCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsExperimentsStartCall {
21338	c.ctx_ = ctx
21339	return c
21340}
21341
21342// Header returns an http.Header that can be modified by the caller to
21343// add HTTP headers to the request.
21344func (c *ProjectsLocationsAgentsEnvironmentsExperimentsStartCall) Header() http.Header {
21345	if c.header_ == nil {
21346		c.header_ = make(http.Header)
21347	}
21348	return c.header_
21349}
21350
21351func (c *ProjectsLocationsAgentsEnvironmentsExperimentsStartCall) doRequest(alt string) (*http.Response, error) {
21352	reqHeaders := make(http.Header)
21353	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
21354	for k, v := range c.header_ {
21355		reqHeaders[k] = v
21356	}
21357	reqHeaders.Set("User-Agent", c.s.userAgent())
21358	var body io.Reader = nil
21359	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3startexperimentrequest)
21360	if err != nil {
21361		return nil, err
21362	}
21363	reqHeaders.Set("Content-Type", "application/json")
21364	c.urlParams_.Set("alt", alt)
21365	c.urlParams_.Set("prettyPrint", "false")
21366	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}:start")
21367	urls += "?" + c.urlParams_.Encode()
21368	req, err := http.NewRequest("POST", urls, body)
21369	if err != nil {
21370		return nil, err
21371	}
21372	req.Header = reqHeaders
21373	googleapi.Expand(req.URL, map[string]string{
21374		"name": c.name,
21375	})
21376	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21377}
21378
21379// Do executes the "dialogflow.projects.locations.agents.environments.experiments.start" call.
21380// Exactly one of *GoogleCloudDialogflowCxV3Experiment or error will be
21381// non-nil. Any non-2xx status code is an error. Response headers are in
21382// either *GoogleCloudDialogflowCxV3Experiment.ServerResponse.Header or
21383// (if a response was returned at all) in
21384// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
21385// whether the returned error was because http.StatusNotModified was
21386// returned.
21387func (c *ProjectsLocationsAgentsEnvironmentsExperimentsStartCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3Experiment, error) {
21388	gensupport.SetOptions(c.urlParams_, opts...)
21389	res, err := c.doRequest("json")
21390	if res != nil && res.StatusCode == http.StatusNotModified {
21391		if res.Body != nil {
21392			res.Body.Close()
21393		}
21394		return nil, &googleapi.Error{
21395			Code:   res.StatusCode,
21396			Header: res.Header,
21397		}
21398	}
21399	if err != nil {
21400		return nil, err
21401	}
21402	defer googleapi.CloseBody(res)
21403	if err := googleapi.CheckResponse(res); err != nil {
21404		return nil, err
21405	}
21406	ret := &GoogleCloudDialogflowCxV3Experiment{
21407		ServerResponse: googleapi.ServerResponse{
21408			Header:         res.Header,
21409			HTTPStatusCode: res.StatusCode,
21410		},
21411	}
21412	target := &ret
21413	if err := gensupport.DecodeResponse(target, res); err != nil {
21414		return nil, err
21415	}
21416	return ret, nil
21417	// {
21418	//   "description": "Starts the specified Experiment. This rpc only changes the state of experiment from PENDING to RUNNING.",
21419	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/experiments/{experimentsId}:start",
21420	//   "httpMethod": "POST",
21421	//   "id": "dialogflow.projects.locations.agents.environments.experiments.start",
21422	//   "parameterOrder": [
21423	//     "name"
21424	//   ],
21425	//   "parameters": {
21426	//     "name": {
21427	//       "description": "Required. Resource name of the experiment to start. Format: `projects//locations//agents//environments//experiments/`.",
21428	//       "location": "path",
21429	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+/experiments/[^/]+$",
21430	//       "required": true,
21431	//       "type": "string"
21432	//     }
21433	//   },
21434	//   "path": "v3/{+name}:start",
21435	//   "request": {
21436	//     "$ref": "GoogleCloudDialogflowCxV3StartExperimentRequest"
21437	//   },
21438	//   "response": {
21439	//     "$ref": "GoogleCloudDialogflowCxV3Experiment"
21440	//   },
21441	//   "scopes": [
21442	//     "https://www.googleapis.com/auth/cloud-platform",
21443	//     "https://www.googleapis.com/auth/dialogflow"
21444	//   ]
21445	// }
21446
21447}
21448
21449// method id "dialogflow.projects.locations.agents.environments.experiments.stop":
21450
21451type ProjectsLocationsAgentsEnvironmentsExperimentsStopCall struct {
21452	s                                              *Service
21453	name                                           string
21454	googleclouddialogflowcxv3stopexperimentrequest *GoogleCloudDialogflowCxV3StopExperimentRequest
21455	urlParams_                                     gensupport.URLParams
21456	ctx_                                           context.Context
21457	header_                                        http.Header
21458}
21459
21460// Stop: Stops the specified Experiment. This rpc only changes the state
21461// of experiment from RUNNING to DONE.
21462//
21463// - name: Resource name of the experiment to stop. Format:
21464//   `projects//locations//agents//environments//experiments/`.
21465func (r *ProjectsLocationsAgentsEnvironmentsExperimentsService) Stop(name string, googleclouddialogflowcxv3stopexperimentrequest *GoogleCloudDialogflowCxV3StopExperimentRequest) *ProjectsLocationsAgentsEnvironmentsExperimentsStopCall {
21466	c := &ProjectsLocationsAgentsEnvironmentsExperimentsStopCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21467	c.name = name
21468	c.googleclouddialogflowcxv3stopexperimentrequest = googleclouddialogflowcxv3stopexperimentrequest
21469	return c
21470}
21471
21472// Fields allows partial responses to be retrieved. See
21473// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21474// for more information.
21475func (c *ProjectsLocationsAgentsEnvironmentsExperimentsStopCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsExperimentsStopCall {
21476	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21477	return c
21478}
21479
21480// Context sets the context to be used in this call's Do method. Any
21481// pending HTTP request will be aborted if the provided context is
21482// canceled.
21483func (c *ProjectsLocationsAgentsEnvironmentsExperimentsStopCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsExperimentsStopCall {
21484	c.ctx_ = ctx
21485	return c
21486}
21487
21488// Header returns an http.Header that can be modified by the caller to
21489// add HTTP headers to the request.
21490func (c *ProjectsLocationsAgentsEnvironmentsExperimentsStopCall) Header() http.Header {
21491	if c.header_ == nil {
21492		c.header_ = make(http.Header)
21493	}
21494	return c.header_
21495}
21496
21497func (c *ProjectsLocationsAgentsEnvironmentsExperimentsStopCall) doRequest(alt string) (*http.Response, error) {
21498	reqHeaders := make(http.Header)
21499	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
21500	for k, v := range c.header_ {
21501		reqHeaders[k] = v
21502	}
21503	reqHeaders.Set("User-Agent", c.s.userAgent())
21504	var body io.Reader = nil
21505	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3stopexperimentrequest)
21506	if err != nil {
21507		return nil, err
21508	}
21509	reqHeaders.Set("Content-Type", "application/json")
21510	c.urlParams_.Set("alt", alt)
21511	c.urlParams_.Set("prettyPrint", "false")
21512	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}:stop")
21513	urls += "?" + c.urlParams_.Encode()
21514	req, err := http.NewRequest("POST", urls, body)
21515	if err != nil {
21516		return nil, err
21517	}
21518	req.Header = reqHeaders
21519	googleapi.Expand(req.URL, map[string]string{
21520		"name": c.name,
21521	})
21522	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21523}
21524
21525// Do executes the "dialogflow.projects.locations.agents.environments.experiments.stop" call.
21526// Exactly one of *GoogleCloudDialogflowCxV3Experiment or error will be
21527// non-nil. Any non-2xx status code is an error. Response headers are in
21528// either *GoogleCloudDialogflowCxV3Experiment.ServerResponse.Header or
21529// (if a response was returned at all) in
21530// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
21531// whether the returned error was because http.StatusNotModified was
21532// returned.
21533func (c *ProjectsLocationsAgentsEnvironmentsExperimentsStopCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3Experiment, error) {
21534	gensupport.SetOptions(c.urlParams_, opts...)
21535	res, err := c.doRequest("json")
21536	if res != nil && res.StatusCode == http.StatusNotModified {
21537		if res.Body != nil {
21538			res.Body.Close()
21539		}
21540		return nil, &googleapi.Error{
21541			Code:   res.StatusCode,
21542			Header: res.Header,
21543		}
21544	}
21545	if err != nil {
21546		return nil, err
21547	}
21548	defer googleapi.CloseBody(res)
21549	if err := googleapi.CheckResponse(res); err != nil {
21550		return nil, err
21551	}
21552	ret := &GoogleCloudDialogflowCxV3Experiment{
21553		ServerResponse: googleapi.ServerResponse{
21554			Header:         res.Header,
21555			HTTPStatusCode: res.StatusCode,
21556		},
21557	}
21558	target := &ret
21559	if err := gensupport.DecodeResponse(target, res); err != nil {
21560		return nil, err
21561	}
21562	return ret, nil
21563	// {
21564	//   "description": "Stops the specified Experiment. This rpc only changes the state of experiment from RUNNING to DONE.",
21565	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/experiments/{experimentsId}:stop",
21566	//   "httpMethod": "POST",
21567	//   "id": "dialogflow.projects.locations.agents.environments.experiments.stop",
21568	//   "parameterOrder": [
21569	//     "name"
21570	//   ],
21571	//   "parameters": {
21572	//     "name": {
21573	//       "description": "Required. Resource name of the experiment to stop. Format: `projects//locations//agents//environments//experiments/`.",
21574	//       "location": "path",
21575	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+/experiments/[^/]+$",
21576	//       "required": true,
21577	//       "type": "string"
21578	//     }
21579	//   },
21580	//   "path": "v3/{+name}:stop",
21581	//   "request": {
21582	//     "$ref": "GoogleCloudDialogflowCxV3StopExperimentRequest"
21583	//   },
21584	//   "response": {
21585	//     "$ref": "GoogleCloudDialogflowCxV3Experiment"
21586	//   },
21587	//   "scopes": [
21588	//     "https://www.googleapis.com/auth/cloud-platform",
21589	//     "https://www.googleapis.com/auth/dialogflow"
21590	//   ]
21591	// }
21592
21593}
21594
21595// method id "dialogflow.projects.locations.agents.environments.sessions.detectIntent":
21596
21597type ProjectsLocationsAgentsEnvironmentsSessionsDetectIntentCall struct {
21598	s                                            *Service
21599	sessionid                                    string
21600	googleclouddialogflowcxv3detectintentrequest *GoogleCloudDialogflowCxV3DetectIntentRequest
21601	urlParams_                                   gensupport.URLParams
21602	ctx_                                         context.Context
21603	header_                                      http.Header
21604}
21605
21606// DetectIntent: Processes a natural language query and returns
21607// structured, actionable data as a result. This method is not
21608// idempotent, because it may cause session entity types to be updated,
21609// which in turn might affect results of future queries. Note: Always
21610// use agent versions for production traffic. See Versions and
21611// environments
21612// (https://cloud.google.com/dialogflow/cx/docs/concept/version).
21613//
21614// - session: The name of the session this query is sent to. Format:
21615//   `projects//locations//agents//sessions/` or
21616//   `projects//locations//agents//environments//sessions/`. If
21617//   `Environment ID` is not specified, we assume default 'draft'
21618//   environment. It's up to the API caller to choose an appropriate
21619//   `Session ID`. It can be a random number or some type of session
21620//   identifiers (preferably hashed). The length of the `Session ID`
21621//   must not exceed 36 characters. For more information, see the
21622//   sessions guide
21623//   (https://cloud.google.com/dialogflow/cx/docs/concept/session).
21624//   Note: Always use agent versions for production traffic. See
21625//   Versions and environments
21626//   (https://cloud.google.com/dialogflow/cx/docs/concept/version).
21627func (r *ProjectsLocationsAgentsEnvironmentsSessionsService) DetectIntent(sessionid string, googleclouddialogflowcxv3detectintentrequest *GoogleCloudDialogflowCxV3DetectIntentRequest) *ProjectsLocationsAgentsEnvironmentsSessionsDetectIntentCall {
21628	c := &ProjectsLocationsAgentsEnvironmentsSessionsDetectIntentCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21629	c.sessionid = sessionid
21630	c.googleclouddialogflowcxv3detectintentrequest = googleclouddialogflowcxv3detectintentrequest
21631	return c
21632}
21633
21634// Fields allows partial responses to be retrieved. See
21635// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21636// for more information.
21637func (c *ProjectsLocationsAgentsEnvironmentsSessionsDetectIntentCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsSessionsDetectIntentCall {
21638	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21639	return c
21640}
21641
21642// Context sets the context to be used in this call's Do method. Any
21643// pending HTTP request will be aborted if the provided context is
21644// canceled.
21645func (c *ProjectsLocationsAgentsEnvironmentsSessionsDetectIntentCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsSessionsDetectIntentCall {
21646	c.ctx_ = ctx
21647	return c
21648}
21649
21650// Header returns an http.Header that can be modified by the caller to
21651// add HTTP headers to the request.
21652func (c *ProjectsLocationsAgentsEnvironmentsSessionsDetectIntentCall) Header() http.Header {
21653	if c.header_ == nil {
21654		c.header_ = make(http.Header)
21655	}
21656	return c.header_
21657}
21658
21659func (c *ProjectsLocationsAgentsEnvironmentsSessionsDetectIntentCall) doRequest(alt string) (*http.Response, error) {
21660	reqHeaders := make(http.Header)
21661	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
21662	for k, v := range c.header_ {
21663		reqHeaders[k] = v
21664	}
21665	reqHeaders.Set("User-Agent", c.s.userAgent())
21666	var body io.Reader = nil
21667	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3detectintentrequest)
21668	if err != nil {
21669		return nil, err
21670	}
21671	reqHeaders.Set("Content-Type", "application/json")
21672	c.urlParams_.Set("alt", alt)
21673	c.urlParams_.Set("prettyPrint", "false")
21674	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+session}:detectIntent")
21675	urls += "?" + c.urlParams_.Encode()
21676	req, err := http.NewRequest("POST", urls, body)
21677	if err != nil {
21678		return nil, err
21679	}
21680	req.Header = reqHeaders
21681	googleapi.Expand(req.URL, map[string]string{
21682		"session": c.sessionid,
21683	})
21684	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21685}
21686
21687// Do executes the "dialogflow.projects.locations.agents.environments.sessions.detectIntent" call.
21688// Exactly one of *GoogleCloudDialogflowCxV3DetectIntentResponse or
21689// error will be non-nil. Any non-2xx status code is an error. Response
21690// headers are in either
21691// *GoogleCloudDialogflowCxV3DetectIntentResponse.ServerResponse.Header
21692// or (if a response was returned at all) in
21693// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
21694// whether the returned error was because http.StatusNotModified was
21695// returned.
21696func (c *ProjectsLocationsAgentsEnvironmentsSessionsDetectIntentCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3DetectIntentResponse, error) {
21697	gensupport.SetOptions(c.urlParams_, opts...)
21698	res, err := c.doRequest("json")
21699	if res != nil && res.StatusCode == http.StatusNotModified {
21700		if res.Body != nil {
21701			res.Body.Close()
21702		}
21703		return nil, &googleapi.Error{
21704			Code:   res.StatusCode,
21705			Header: res.Header,
21706		}
21707	}
21708	if err != nil {
21709		return nil, err
21710	}
21711	defer googleapi.CloseBody(res)
21712	if err := googleapi.CheckResponse(res); err != nil {
21713		return nil, err
21714	}
21715	ret := &GoogleCloudDialogflowCxV3DetectIntentResponse{
21716		ServerResponse: googleapi.ServerResponse{
21717			Header:         res.Header,
21718			HTTPStatusCode: res.StatusCode,
21719		},
21720	}
21721	target := &ret
21722	if err := gensupport.DecodeResponse(target, res); err != nil {
21723		return nil, err
21724	}
21725	return ret, nil
21726	// {
21727	//   "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).",
21728	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/sessions/{sessionsId}:detectIntent",
21729	//   "httpMethod": "POST",
21730	//   "id": "dialogflow.projects.locations.agents.environments.sessions.detectIntent",
21731	//   "parameterOrder": [
21732	//     "session"
21733	//   ],
21734	//   "parameters": {
21735	//     "session": {
21736	//       "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).",
21737	//       "location": "path",
21738	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+/sessions/[^/]+$",
21739	//       "required": true,
21740	//       "type": "string"
21741	//     }
21742	//   },
21743	//   "path": "v3/{+session}:detectIntent",
21744	//   "request": {
21745	//     "$ref": "GoogleCloudDialogflowCxV3DetectIntentRequest"
21746	//   },
21747	//   "response": {
21748	//     "$ref": "GoogleCloudDialogflowCxV3DetectIntentResponse"
21749	//   },
21750	//   "scopes": [
21751	//     "https://www.googleapis.com/auth/cloud-platform",
21752	//     "https://www.googleapis.com/auth/dialogflow"
21753	//   ]
21754	// }
21755
21756}
21757
21758// method id "dialogflow.projects.locations.agents.environments.sessions.fulfillIntent":
21759
21760type ProjectsLocationsAgentsEnvironmentsSessionsFulfillIntentCall struct {
21761	s                                             *Service
21762	sessionid                                     string
21763	googleclouddialogflowcxv3fulfillintentrequest *GoogleCloudDialogflowCxV3FulfillIntentRequest
21764	urlParams_                                    gensupport.URLParams
21765	ctx_                                          context.Context
21766	header_                                       http.Header
21767}
21768
21769// FulfillIntent: Fulfills a matched intent returned by MatchIntent.
21770// Must be called after MatchIntent, with input from
21771// MatchIntentResponse. Otherwise, the behavior is undefined.
21772//
21773// - session: The name of the session this query is sent to. Format:
21774//   `projects//locations//agents//sessions/` or
21775//   `projects//locations//agents//environments//sessions/`. If
21776//   `Environment ID` is not specified, we assume default 'draft'
21777//   environment. It's up to the API caller to choose an appropriate
21778//   `Session ID`. It can be a random number or some type of session
21779//   identifiers (preferably hashed). The length of the `Session ID`
21780//   must not exceed 36 characters. For more information, see the
21781//   sessions guide
21782//   (https://cloud.google.com/dialogflow/cx/docs/concept/session).
21783func (r *ProjectsLocationsAgentsEnvironmentsSessionsService) FulfillIntent(sessionid string, googleclouddialogflowcxv3fulfillintentrequest *GoogleCloudDialogflowCxV3FulfillIntentRequest) *ProjectsLocationsAgentsEnvironmentsSessionsFulfillIntentCall {
21784	c := &ProjectsLocationsAgentsEnvironmentsSessionsFulfillIntentCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21785	c.sessionid = sessionid
21786	c.googleclouddialogflowcxv3fulfillintentrequest = googleclouddialogflowcxv3fulfillintentrequest
21787	return c
21788}
21789
21790// Fields allows partial responses to be retrieved. See
21791// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21792// for more information.
21793func (c *ProjectsLocationsAgentsEnvironmentsSessionsFulfillIntentCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsSessionsFulfillIntentCall {
21794	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21795	return c
21796}
21797
21798// Context sets the context to be used in this call's Do method. Any
21799// pending HTTP request will be aborted if the provided context is
21800// canceled.
21801func (c *ProjectsLocationsAgentsEnvironmentsSessionsFulfillIntentCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsSessionsFulfillIntentCall {
21802	c.ctx_ = ctx
21803	return c
21804}
21805
21806// Header returns an http.Header that can be modified by the caller to
21807// add HTTP headers to the request.
21808func (c *ProjectsLocationsAgentsEnvironmentsSessionsFulfillIntentCall) Header() http.Header {
21809	if c.header_ == nil {
21810		c.header_ = make(http.Header)
21811	}
21812	return c.header_
21813}
21814
21815func (c *ProjectsLocationsAgentsEnvironmentsSessionsFulfillIntentCall) doRequest(alt string) (*http.Response, error) {
21816	reqHeaders := make(http.Header)
21817	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
21818	for k, v := range c.header_ {
21819		reqHeaders[k] = v
21820	}
21821	reqHeaders.Set("User-Agent", c.s.userAgent())
21822	var body io.Reader = nil
21823	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3fulfillintentrequest)
21824	if err != nil {
21825		return nil, err
21826	}
21827	reqHeaders.Set("Content-Type", "application/json")
21828	c.urlParams_.Set("alt", alt)
21829	c.urlParams_.Set("prettyPrint", "false")
21830	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+session}:fulfillIntent")
21831	urls += "?" + c.urlParams_.Encode()
21832	req, err := http.NewRequest("POST", urls, body)
21833	if err != nil {
21834		return nil, err
21835	}
21836	req.Header = reqHeaders
21837	googleapi.Expand(req.URL, map[string]string{
21838		"session": c.sessionid,
21839	})
21840	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21841}
21842
21843// Do executes the "dialogflow.projects.locations.agents.environments.sessions.fulfillIntent" call.
21844// Exactly one of *GoogleCloudDialogflowCxV3FulfillIntentResponse or
21845// error will be non-nil. Any non-2xx status code is an error. Response
21846// headers are in either
21847// *GoogleCloudDialogflowCxV3FulfillIntentResponse.ServerResponse.Header
21848// or (if a response was returned at all) in
21849// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
21850// whether the returned error was because http.StatusNotModified was
21851// returned.
21852func (c *ProjectsLocationsAgentsEnvironmentsSessionsFulfillIntentCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3FulfillIntentResponse, error) {
21853	gensupport.SetOptions(c.urlParams_, opts...)
21854	res, err := c.doRequest("json")
21855	if res != nil && res.StatusCode == http.StatusNotModified {
21856		if res.Body != nil {
21857			res.Body.Close()
21858		}
21859		return nil, &googleapi.Error{
21860			Code:   res.StatusCode,
21861			Header: res.Header,
21862		}
21863	}
21864	if err != nil {
21865		return nil, err
21866	}
21867	defer googleapi.CloseBody(res)
21868	if err := googleapi.CheckResponse(res); err != nil {
21869		return nil, err
21870	}
21871	ret := &GoogleCloudDialogflowCxV3FulfillIntentResponse{
21872		ServerResponse: googleapi.ServerResponse{
21873			Header:         res.Header,
21874			HTTPStatusCode: res.StatusCode,
21875		},
21876	}
21877	target := &ret
21878	if err := gensupport.DecodeResponse(target, res); err != nil {
21879		return nil, err
21880	}
21881	return ret, nil
21882	// {
21883	//   "description": "Fulfills a matched intent returned by MatchIntent. Must be called after MatchIntent, with input from MatchIntentResponse. Otherwise, the behavior is undefined.",
21884	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/sessions/{sessionsId}:fulfillIntent",
21885	//   "httpMethod": "POST",
21886	//   "id": "dialogflow.projects.locations.agents.environments.sessions.fulfillIntent",
21887	//   "parameterOrder": [
21888	//     "session"
21889	//   ],
21890	//   "parameters": {
21891	//     "session": {
21892	//       "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).",
21893	//       "location": "path",
21894	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+/sessions/[^/]+$",
21895	//       "required": true,
21896	//       "type": "string"
21897	//     }
21898	//   },
21899	//   "path": "v3/{+session}:fulfillIntent",
21900	//   "request": {
21901	//     "$ref": "GoogleCloudDialogflowCxV3FulfillIntentRequest"
21902	//   },
21903	//   "response": {
21904	//     "$ref": "GoogleCloudDialogflowCxV3FulfillIntentResponse"
21905	//   },
21906	//   "scopes": [
21907	//     "https://www.googleapis.com/auth/cloud-platform",
21908	//     "https://www.googleapis.com/auth/dialogflow"
21909	//   ]
21910	// }
21911
21912}
21913
21914// method id "dialogflow.projects.locations.agents.environments.sessions.matchIntent":
21915
21916type ProjectsLocationsAgentsEnvironmentsSessionsMatchIntentCall struct {
21917	s                                           *Service
21918	sessionid                                   string
21919	googleclouddialogflowcxv3matchintentrequest *GoogleCloudDialogflowCxV3MatchIntentRequest
21920	urlParams_                                  gensupport.URLParams
21921	ctx_                                        context.Context
21922	header_                                     http.Header
21923}
21924
21925// MatchIntent: Returns preliminary intent match results, doesn't change
21926// the session status.
21927//
21928// - session: The name of the session this query is sent to. Format:
21929//   `projects//locations//agents//sessions/` or
21930//   `projects//locations//agents//environments//sessions/`. If
21931//   `Environment ID` is not specified, we assume default 'draft'
21932//   environment. It's up to the API caller to choose an appropriate
21933//   `Session ID`. It can be a random number or some type of session
21934//   identifiers (preferably hashed). The length of the `Session ID`
21935//   must not exceed 36 characters. For more information, see the
21936//   sessions guide
21937//   (https://cloud.google.com/dialogflow/cx/docs/concept/session).
21938func (r *ProjectsLocationsAgentsEnvironmentsSessionsService) MatchIntent(sessionid string, googleclouddialogflowcxv3matchintentrequest *GoogleCloudDialogflowCxV3MatchIntentRequest) *ProjectsLocationsAgentsEnvironmentsSessionsMatchIntentCall {
21939	c := &ProjectsLocationsAgentsEnvironmentsSessionsMatchIntentCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21940	c.sessionid = sessionid
21941	c.googleclouddialogflowcxv3matchintentrequest = googleclouddialogflowcxv3matchintentrequest
21942	return c
21943}
21944
21945// Fields allows partial responses to be retrieved. See
21946// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21947// for more information.
21948func (c *ProjectsLocationsAgentsEnvironmentsSessionsMatchIntentCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsSessionsMatchIntentCall {
21949	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21950	return c
21951}
21952
21953// Context sets the context to be used in this call's Do method. Any
21954// pending HTTP request will be aborted if the provided context is
21955// canceled.
21956func (c *ProjectsLocationsAgentsEnvironmentsSessionsMatchIntentCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsSessionsMatchIntentCall {
21957	c.ctx_ = ctx
21958	return c
21959}
21960
21961// Header returns an http.Header that can be modified by the caller to
21962// add HTTP headers to the request.
21963func (c *ProjectsLocationsAgentsEnvironmentsSessionsMatchIntentCall) Header() http.Header {
21964	if c.header_ == nil {
21965		c.header_ = make(http.Header)
21966	}
21967	return c.header_
21968}
21969
21970func (c *ProjectsLocationsAgentsEnvironmentsSessionsMatchIntentCall) doRequest(alt string) (*http.Response, error) {
21971	reqHeaders := make(http.Header)
21972	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
21973	for k, v := range c.header_ {
21974		reqHeaders[k] = v
21975	}
21976	reqHeaders.Set("User-Agent", c.s.userAgent())
21977	var body io.Reader = nil
21978	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3matchintentrequest)
21979	if err != nil {
21980		return nil, err
21981	}
21982	reqHeaders.Set("Content-Type", "application/json")
21983	c.urlParams_.Set("alt", alt)
21984	c.urlParams_.Set("prettyPrint", "false")
21985	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+session}:matchIntent")
21986	urls += "?" + c.urlParams_.Encode()
21987	req, err := http.NewRequest("POST", urls, body)
21988	if err != nil {
21989		return nil, err
21990	}
21991	req.Header = reqHeaders
21992	googleapi.Expand(req.URL, map[string]string{
21993		"session": c.sessionid,
21994	})
21995	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21996}
21997
21998// Do executes the "dialogflow.projects.locations.agents.environments.sessions.matchIntent" call.
21999// Exactly one of *GoogleCloudDialogflowCxV3MatchIntentResponse or error
22000// will be non-nil. Any non-2xx status code is an error. Response
22001// headers are in either
22002// *GoogleCloudDialogflowCxV3MatchIntentResponse.ServerResponse.Header
22003// or (if a response was returned at all) in
22004// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
22005// whether the returned error was because http.StatusNotModified was
22006// returned.
22007func (c *ProjectsLocationsAgentsEnvironmentsSessionsMatchIntentCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3MatchIntentResponse, error) {
22008	gensupport.SetOptions(c.urlParams_, opts...)
22009	res, err := c.doRequest("json")
22010	if res != nil && res.StatusCode == http.StatusNotModified {
22011		if res.Body != nil {
22012			res.Body.Close()
22013		}
22014		return nil, &googleapi.Error{
22015			Code:   res.StatusCode,
22016			Header: res.Header,
22017		}
22018	}
22019	if err != nil {
22020		return nil, err
22021	}
22022	defer googleapi.CloseBody(res)
22023	if err := googleapi.CheckResponse(res); err != nil {
22024		return nil, err
22025	}
22026	ret := &GoogleCloudDialogflowCxV3MatchIntentResponse{
22027		ServerResponse: googleapi.ServerResponse{
22028			Header:         res.Header,
22029			HTTPStatusCode: res.StatusCode,
22030		},
22031	}
22032	target := &ret
22033	if err := gensupport.DecodeResponse(target, res); err != nil {
22034		return nil, err
22035	}
22036	return ret, nil
22037	// {
22038	//   "description": "Returns preliminary intent match results, doesn't change the session status.",
22039	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/sessions/{sessionsId}:matchIntent",
22040	//   "httpMethod": "POST",
22041	//   "id": "dialogflow.projects.locations.agents.environments.sessions.matchIntent",
22042	//   "parameterOrder": [
22043	//     "session"
22044	//   ],
22045	//   "parameters": {
22046	//     "session": {
22047	//       "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).",
22048	//       "location": "path",
22049	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+/sessions/[^/]+$",
22050	//       "required": true,
22051	//       "type": "string"
22052	//     }
22053	//   },
22054	//   "path": "v3/{+session}:matchIntent",
22055	//   "request": {
22056	//     "$ref": "GoogleCloudDialogflowCxV3MatchIntentRequest"
22057	//   },
22058	//   "response": {
22059	//     "$ref": "GoogleCloudDialogflowCxV3MatchIntentResponse"
22060	//   },
22061	//   "scopes": [
22062	//     "https://www.googleapis.com/auth/cloud-platform",
22063	//     "https://www.googleapis.com/auth/dialogflow"
22064	//   ]
22065	// }
22066
22067}
22068
22069// method id "dialogflow.projects.locations.agents.environments.sessions.entityTypes.create":
22070
22071type ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreateCall struct {
22072	s                                          *Service
22073	parent                                     string
22074	googleclouddialogflowcxv3sessionentitytype *GoogleCloudDialogflowCxV3SessionEntityType
22075	urlParams_                                 gensupport.URLParams
22076	ctx_                                       context.Context
22077	header_                                    http.Header
22078}
22079
22080// Create: Creates a session entity type.
22081//
22082// - parent: The session to create a session entity type for. Format:
22083//   `projects//locations//agents//sessions/` or
22084//   `projects//locations//agents//environments//sessions/`. If
22085//   `Environment ID` is not specified, we assume default 'draft'
22086//   environment.
22087func (r *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesService) Create(parent string, googleclouddialogflowcxv3sessionentitytype *GoogleCloudDialogflowCxV3SessionEntityType) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreateCall {
22088	c := &ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22089	c.parent = parent
22090	c.googleclouddialogflowcxv3sessionentitytype = googleclouddialogflowcxv3sessionentitytype
22091	return c
22092}
22093
22094// Fields allows partial responses to be retrieved. See
22095// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22096// for more information.
22097func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreateCall {
22098	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22099	return c
22100}
22101
22102// Context sets the context to be used in this call's Do method. Any
22103// pending HTTP request will be aborted if the provided context is
22104// canceled.
22105func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreateCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreateCall {
22106	c.ctx_ = ctx
22107	return c
22108}
22109
22110// Header returns an http.Header that can be modified by the caller to
22111// add HTTP headers to the request.
22112func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreateCall) Header() http.Header {
22113	if c.header_ == nil {
22114		c.header_ = make(http.Header)
22115	}
22116	return c.header_
22117}
22118
22119func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreateCall) doRequest(alt string) (*http.Response, error) {
22120	reqHeaders := make(http.Header)
22121	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
22122	for k, v := range c.header_ {
22123		reqHeaders[k] = v
22124	}
22125	reqHeaders.Set("User-Agent", c.s.userAgent())
22126	var body io.Reader = nil
22127	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3sessionentitytype)
22128	if err != nil {
22129		return nil, err
22130	}
22131	reqHeaders.Set("Content-Type", "application/json")
22132	c.urlParams_.Set("alt", alt)
22133	c.urlParams_.Set("prettyPrint", "false")
22134	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/entityTypes")
22135	urls += "?" + c.urlParams_.Encode()
22136	req, err := http.NewRequest("POST", urls, body)
22137	if err != nil {
22138		return nil, err
22139	}
22140	req.Header = reqHeaders
22141	googleapi.Expand(req.URL, map[string]string{
22142		"parent": c.parent,
22143	})
22144	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22145}
22146
22147// Do executes the "dialogflow.projects.locations.agents.environments.sessions.entityTypes.create" call.
22148// Exactly one of *GoogleCloudDialogflowCxV3SessionEntityType or error
22149// will be non-nil. Any non-2xx status code is an error. Response
22150// headers are in either
22151// *GoogleCloudDialogflowCxV3SessionEntityType.ServerResponse.Header or
22152// (if a response was returned at all) in
22153// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
22154// whether the returned error was because http.StatusNotModified was
22155// returned.
22156func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3SessionEntityType, error) {
22157	gensupport.SetOptions(c.urlParams_, opts...)
22158	res, err := c.doRequest("json")
22159	if res != nil && res.StatusCode == http.StatusNotModified {
22160		if res.Body != nil {
22161			res.Body.Close()
22162		}
22163		return nil, &googleapi.Error{
22164			Code:   res.StatusCode,
22165			Header: res.Header,
22166		}
22167	}
22168	if err != nil {
22169		return nil, err
22170	}
22171	defer googleapi.CloseBody(res)
22172	if err := googleapi.CheckResponse(res); err != nil {
22173		return nil, err
22174	}
22175	ret := &GoogleCloudDialogflowCxV3SessionEntityType{
22176		ServerResponse: googleapi.ServerResponse{
22177			Header:         res.Header,
22178			HTTPStatusCode: res.StatusCode,
22179		},
22180	}
22181	target := &ret
22182	if err := gensupport.DecodeResponse(target, res); err != nil {
22183		return nil, err
22184	}
22185	return ret, nil
22186	// {
22187	//   "description": "Creates a session entity type.",
22188	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/sessions/{sessionsId}/entityTypes",
22189	//   "httpMethod": "POST",
22190	//   "id": "dialogflow.projects.locations.agents.environments.sessions.entityTypes.create",
22191	//   "parameterOrder": [
22192	//     "parent"
22193	//   ],
22194	//   "parameters": {
22195	//     "parent": {
22196	//       "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.",
22197	//       "location": "path",
22198	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+/sessions/[^/]+$",
22199	//       "required": true,
22200	//       "type": "string"
22201	//     }
22202	//   },
22203	//   "path": "v3/{+parent}/entityTypes",
22204	//   "request": {
22205	//     "$ref": "GoogleCloudDialogflowCxV3SessionEntityType"
22206	//   },
22207	//   "response": {
22208	//     "$ref": "GoogleCloudDialogflowCxV3SessionEntityType"
22209	//   },
22210	//   "scopes": [
22211	//     "https://www.googleapis.com/auth/cloud-platform",
22212	//     "https://www.googleapis.com/auth/dialogflow"
22213	//   ]
22214	// }
22215
22216}
22217
22218// method id "dialogflow.projects.locations.agents.environments.sessions.entityTypes.delete":
22219
22220type ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDeleteCall struct {
22221	s          *Service
22222	name       string
22223	urlParams_ gensupport.URLParams
22224	ctx_       context.Context
22225	header_    http.Header
22226}
22227
22228// Delete: Deletes the specified session entity type.
22229//
22230// - name: The name of the session entity type to delete. Format:
22231//   `projects//locations//agents//sessions//entityTypes/` or
22232//   `projects//locations//agents//environments//sessions//entityTypes/`.
22233//    If `Environment ID` is not specified, we assume default 'draft'
22234//   environment.
22235func (r *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesService) Delete(name string) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDeleteCall {
22236	c := &ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22237	c.name = name
22238	return c
22239}
22240
22241// Fields allows partial responses to be retrieved. See
22242// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22243// for more information.
22244func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDeleteCall {
22245	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22246	return c
22247}
22248
22249// Context sets the context to be used in this call's Do method. Any
22250// pending HTTP request will be aborted if the provided context is
22251// canceled.
22252func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDeleteCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDeleteCall {
22253	c.ctx_ = ctx
22254	return c
22255}
22256
22257// Header returns an http.Header that can be modified by the caller to
22258// add HTTP headers to the request.
22259func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDeleteCall) Header() http.Header {
22260	if c.header_ == nil {
22261		c.header_ = make(http.Header)
22262	}
22263	return c.header_
22264}
22265
22266func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDeleteCall) doRequest(alt string) (*http.Response, error) {
22267	reqHeaders := make(http.Header)
22268	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
22269	for k, v := range c.header_ {
22270		reqHeaders[k] = v
22271	}
22272	reqHeaders.Set("User-Agent", c.s.userAgent())
22273	var body io.Reader = nil
22274	c.urlParams_.Set("alt", alt)
22275	c.urlParams_.Set("prettyPrint", "false")
22276	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
22277	urls += "?" + c.urlParams_.Encode()
22278	req, err := http.NewRequest("DELETE", urls, body)
22279	if err != nil {
22280		return nil, err
22281	}
22282	req.Header = reqHeaders
22283	googleapi.Expand(req.URL, map[string]string{
22284		"name": c.name,
22285	})
22286	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22287}
22288
22289// Do executes the "dialogflow.projects.locations.agents.environments.sessions.entityTypes.delete" call.
22290// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
22291// non-2xx status code is an error. Response headers are in either
22292// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
22293// returned at all) in error.(*googleapi.Error).Header. Use
22294// googleapi.IsNotModified to check whether the returned error was
22295// because http.StatusNotModified was returned.
22296func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
22297	gensupport.SetOptions(c.urlParams_, opts...)
22298	res, err := c.doRequest("json")
22299	if res != nil && res.StatusCode == http.StatusNotModified {
22300		if res.Body != nil {
22301			res.Body.Close()
22302		}
22303		return nil, &googleapi.Error{
22304			Code:   res.StatusCode,
22305			Header: res.Header,
22306		}
22307	}
22308	if err != nil {
22309		return nil, err
22310	}
22311	defer googleapi.CloseBody(res)
22312	if err := googleapi.CheckResponse(res); err != nil {
22313		return nil, err
22314	}
22315	ret := &GoogleProtobufEmpty{
22316		ServerResponse: googleapi.ServerResponse{
22317			Header:         res.Header,
22318			HTTPStatusCode: res.StatusCode,
22319		},
22320	}
22321	target := &ret
22322	if err := gensupport.DecodeResponse(target, res); err != nil {
22323		return nil, err
22324	}
22325	return ret, nil
22326	// {
22327	//   "description": "Deletes the specified session entity type.",
22328	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/sessions/{sessionsId}/entityTypes/{entityTypesId}",
22329	//   "httpMethod": "DELETE",
22330	//   "id": "dialogflow.projects.locations.agents.environments.sessions.entityTypes.delete",
22331	//   "parameterOrder": [
22332	//     "name"
22333	//   ],
22334	//   "parameters": {
22335	//     "name": {
22336	//       "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.",
22337	//       "location": "path",
22338	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+/sessions/[^/]+/entityTypes/[^/]+$",
22339	//       "required": true,
22340	//       "type": "string"
22341	//     }
22342	//   },
22343	//   "path": "v3/{+name}",
22344	//   "response": {
22345	//     "$ref": "GoogleProtobufEmpty"
22346	//   },
22347	//   "scopes": [
22348	//     "https://www.googleapis.com/auth/cloud-platform",
22349	//     "https://www.googleapis.com/auth/dialogflow"
22350	//   ]
22351	// }
22352
22353}
22354
22355// method id "dialogflow.projects.locations.agents.environments.sessions.entityTypes.get":
22356
22357type ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGetCall struct {
22358	s            *Service
22359	name         string
22360	urlParams_   gensupport.URLParams
22361	ifNoneMatch_ string
22362	ctx_         context.Context
22363	header_      http.Header
22364}
22365
22366// Get: Retrieves the specified session entity type.
22367//
22368// - name: The name of the session entity type. Format:
22369//   `projects//locations//agents//sessions//entityTypes/` or
22370//   `projects//locations//agents//environments//sessions//entityTypes/`.
22371//    If `Environment ID` is not specified, we assume default 'draft'
22372//   environment.
22373func (r *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesService) Get(name string) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGetCall {
22374	c := &ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22375	c.name = name
22376	return c
22377}
22378
22379// Fields allows partial responses to be retrieved. See
22380// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22381// for more information.
22382func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGetCall {
22383	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22384	return c
22385}
22386
22387// IfNoneMatch sets the optional parameter which makes the operation
22388// fail if the object's ETag matches the given value. This is useful for
22389// getting updates only after the object has changed since the last
22390// request. Use googleapi.IsNotModified to check whether the response
22391// error from Do is the result of In-None-Match.
22392func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGetCall {
22393	c.ifNoneMatch_ = entityTag
22394	return c
22395}
22396
22397// Context sets the context to be used in this call's Do method. Any
22398// pending HTTP request will be aborted if the provided context is
22399// canceled.
22400func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGetCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGetCall {
22401	c.ctx_ = ctx
22402	return c
22403}
22404
22405// Header returns an http.Header that can be modified by the caller to
22406// add HTTP headers to the request.
22407func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGetCall) Header() http.Header {
22408	if c.header_ == nil {
22409		c.header_ = make(http.Header)
22410	}
22411	return c.header_
22412}
22413
22414func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGetCall) doRequest(alt string) (*http.Response, error) {
22415	reqHeaders := make(http.Header)
22416	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
22417	for k, v := range c.header_ {
22418		reqHeaders[k] = v
22419	}
22420	reqHeaders.Set("User-Agent", c.s.userAgent())
22421	if c.ifNoneMatch_ != "" {
22422		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
22423	}
22424	var body io.Reader = nil
22425	c.urlParams_.Set("alt", alt)
22426	c.urlParams_.Set("prettyPrint", "false")
22427	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
22428	urls += "?" + c.urlParams_.Encode()
22429	req, err := http.NewRequest("GET", urls, body)
22430	if err != nil {
22431		return nil, err
22432	}
22433	req.Header = reqHeaders
22434	googleapi.Expand(req.URL, map[string]string{
22435		"name": c.name,
22436	})
22437	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22438}
22439
22440// Do executes the "dialogflow.projects.locations.agents.environments.sessions.entityTypes.get" call.
22441// Exactly one of *GoogleCloudDialogflowCxV3SessionEntityType or error
22442// will be non-nil. Any non-2xx status code is an error. Response
22443// headers are in either
22444// *GoogleCloudDialogflowCxV3SessionEntityType.ServerResponse.Header or
22445// (if a response was returned at all) in
22446// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
22447// whether the returned error was because http.StatusNotModified was
22448// returned.
22449func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3SessionEntityType, error) {
22450	gensupport.SetOptions(c.urlParams_, opts...)
22451	res, err := c.doRequest("json")
22452	if res != nil && res.StatusCode == http.StatusNotModified {
22453		if res.Body != nil {
22454			res.Body.Close()
22455		}
22456		return nil, &googleapi.Error{
22457			Code:   res.StatusCode,
22458			Header: res.Header,
22459		}
22460	}
22461	if err != nil {
22462		return nil, err
22463	}
22464	defer googleapi.CloseBody(res)
22465	if err := googleapi.CheckResponse(res); err != nil {
22466		return nil, err
22467	}
22468	ret := &GoogleCloudDialogflowCxV3SessionEntityType{
22469		ServerResponse: googleapi.ServerResponse{
22470			Header:         res.Header,
22471			HTTPStatusCode: res.StatusCode,
22472		},
22473	}
22474	target := &ret
22475	if err := gensupport.DecodeResponse(target, res); err != nil {
22476		return nil, err
22477	}
22478	return ret, nil
22479	// {
22480	//   "description": "Retrieves the specified session entity type.",
22481	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/sessions/{sessionsId}/entityTypes/{entityTypesId}",
22482	//   "httpMethod": "GET",
22483	//   "id": "dialogflow.projects.locations.agents.environments.sessions.entityTypes.get",
22484	//   "parameterOrder": [
22485	//     "name"
22486	//   ],
22487	//   "parameters": {
22488	//     "name": {
22489	//       "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.",
22490	//       "location": "path",
22491	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+/sessions/[^/]+/entityTypes/[^/]+$",
22492	//       "required": true,
22493	//       "type": "string"
22494	//     }
22495	//   },
22496	//   "path": "v3/{+name}",
22497	//   "response": {
22498	//     "$ref": "GoogleCloudDialogflowCxV3SessionEntityType"
22499	//   },
22500	//   "scopes": [
22501	//     "https://www.googleapis.com/auth/cloud-platform",
22502	//     "https://www.googleapis.com/auth/dialogflow"
22503	//   ]
22504	// }
22505
22506}
22507
22508// method id "dialogflow.projects.locations.agents.environments.sessions.entityTypes.list":
22509
22510type ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall struct {
22511	s            *Service
22512	parent       string
22513	urlParams_   gensupport.URLParams
22514	ifNoneMatch_ string
22515	ctx_         context.Context
22516	header_      http.Header
22517}
22518
22519// List: Returns the list of all session entity types in the specified
22520// session.
22521//
22522// - parent: The session to list all session entity types from. Format:
22523//   `projects//locations//agents//sessions/` or
22524//   `projects//locations//agents//environments//sessions/`. If
22525//   `Environment ID` is not specified, we assume default 'draft'
22526//   environment.
22527func (r *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesService) List(parent string) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall {
22528	c := &ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22529	c.parent = parent
22530	return c
22531}
22532
22533// PageSize sets the optional parameter "pageSize": The maximum number
22534// of items to return in a single page. By default 100 and at most 1000.
22535func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall) PageSize(pageSize int64) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall {
22536	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
22537	return c
22538}
22539
22540// PageToken sets the optional parameter "pageToken": The
22541// next_page_token value returned from a previous list request.
22542func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall) PageToken(pageToken string) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall {
22543	c.urlParams_.Set("pageToken", pageToken)
22544	return c
22545}
22546
22547// Fields allows partial responses to be retrieved. See
22548// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22549// for more information.
22550func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall {
22551	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22552	return c
22553}
22554
22555// IfNoneMatch sets the optional parameter which makes the operation
22556// fail if the object's ETag matches the given value. This is useful for
22557// getting updates only after the object has changed since the last
22558// request. Use googleapi.IsNotModified to check whether the response
22559// error from Do is the result of In-None-Match.
22560func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall {
22561	c.ifNoneMatch_ = entityTag
22562	return c
22563}
22564
22565// Context sets the context to be used in this call's Do method. Any
22566// pending HTTP request will be aborted if the provided context is
22567// canceled.
22568func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall {
22569	c.ctx_ = ctx
22570	return c
22571}
22572
22573// Header returns an http.Header that can be modified by the caller to
22574// add HTTP headers to the request.
22575func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall) Header() http.Header {
22576	if c.header_ == nil {
22577		c.header_ = make(http.Header)
22578	}
22579	return c.header_
22580}
22581
22582func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall) doRequest(alt string) (*http.Response, error) {
22583	reqHeaders := make(http.Header)
22584	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
22585	for k, v := range c.header_ {
22586		reqHeaders[k] = v
22587	}
22588	reqHeaders.Set("User-Agent", c.s.userAgent())
22589	if c.ifNoneMatch_ != "" {
22590		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
22591	}
22592	var body io.Reader = nil
22593	c.urlParams_.Set("alt", alt)
22594	c.urlParams_.Set("prettyPrint", "false")
22595	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/entityTypes")
22596	urls += "?" + c.urlParams_.Encode()
22597	req, err := http.NewRequest("GET", urls, body)
22598	if err != nil {
22599		return nil, err
22600	}
22601	req.Header = reqHeaders
22602	googleapi.Expand(req.URL, map[string]string{
22603		"parent": c.parent,
22604	})
22605	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22606}
22607
22608// Do executes the "dialogflow.projects.locations.agents.environments.sessions.entityTypes.list" call.
22609// Exactly one of
22610// *GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse or error
22611// will be non-nil. Any non-2xx status code is an error. Response
22612// headers are in either
22613// *GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse.ServerRespons
22614// e.Header or (if a response was returned at all) in
22615// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
22616// whether the returned error was because http.StatusNotModified was
22617// returned.
22618func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse, error) {
22619	gensupport.SetOptions(c.urlParams_, opts...)
22620	res, err := c.doRequest("json")
22621	if res != nil && res.StatusCode == http.StatusNotModified {
22622		if res.Body != nil {
22623			res.Body.Close()
22624		}
22625		return nil, &googleapi.Error{
22626			Code:   res.StatusCode,
22627			Header: res.Header,
22628		}
22629	}
22630	if err != nil {
22631		return nil, err
22632	}
22633	defer googleapi.CloseBody(res)
22634	if err := googleapi.CheckResponse(res); err != nil {
22635		return nil, err
22636	}
22637	ret := &GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse{
22638		ServerResponse: googleapi.ServerResponse{
22639			Header:         res.Header,
22640			HTTPStatusCode: res.StatusCode,
22641		},
22642	}
22643	target := &ret
22644	if err := gensupport.DecodeResponse(target, res); err != nil {
22645		return nil, err
22646	}
22647	return ret, nil
22648	// {
22649	//   "description": "Returns the list of all session entity types in the specified session.",
22650	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/sessions/{sessionsId}/entityTypes",
22651	//   "httpMethod": "GET",
22652	//   "id": "dialogflow.projects.locations.agents.environments.sessions.entityTypes.list",
22653	//   "parameterOrder": [
22654	//     "parent"
22655	//   ],
22656	//   "parameters": {
22657	//     "pageSize": {
22658	//       "description": "The maximum number of items to return in a single page. By default 100 and at most 1000.",
22659	//       "format": "int32",
22660	//       "location": "query",
22661	//       "type": "integer"
22662	//     },
22663	//     "pageToken": {
22664	//       "description": "The next_page_token value returned from a previous list request.",
22665	//       "location": "query",
22666	//       "type": "string"
22667	//     },
22668	//     "parent": {
22669	//       "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.",
22670	//       "location": "path",
22671	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+/sessions/[^/]+$",
22672	//       "required": true,
22673	//       "type": "string"
22674	//     }
22675	//   },
22676	//   "path": "v3/{+parent}/entityTypes",
22677	//   "response": {
22678	//     "$ref": "GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse"
22679	//   },
22680	//   "scopes": [
22681	//     "https://www.googleapis.com/auth/cloud-platform",
22682	//     "https://www.googleapis.com/auth/dialogflow"
22683	//   ]
22684	// }
22685
22686}
22687
22688// Pages invokes f for each page of results.
22689// A non-nil error returned from f will halt the iteration.
22690// The provided context supersedes any context provided to the Context method.
22691func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse) error) error {
22692	c.ctx_ = ctx
22693	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
22694	for {
22695		x, err := c.Do()
22696		if err != nil {
22697			return err
22698		}
22699		if err := f(x); err != nil {
22700			return err
22701		}
22702		if x.NextPageToken == "" {
22703			return nil
22704		}
22705		c.PageToken(x.NextPageToken)
22706	}
22707}
22708
22709// method id "dialogflow.projects.locations.agents.environments.sessions.entityTypes.patch":
22710
22711type ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatchCall struct {
22712	s                                          *Service
22713	nameid                                     string
22714	googleclouddialogflowcxv3sessionentitytype *GoogleCloudDialogflowCxV3SessionEntityType
22715	urlParams_                                 gensupport.URLParams
22716	ctx_                                       context.Context
22717	header_                                    http.Header
22718}
22719
22720// Patch: Updates the specified session entity type.
22721//
22722// - name: The unique identifier of the session entity type. Format:
22723//   `projects//locations//agents//sessions//entityTypes/` or
22724//   `projects//locations//agents//environments//sessions//entityTypes/`.
22725//    If `Environment ID` is not specified, we assume default 'draft'
22726//   environment.
22727func (r *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesService) Patch(nameid string, googleclouddialogflowcxv3sessionentitytype *GoogleCloudDialogflowCxV3SessionEntityType) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatchCall {
22728	c := &ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22729	c.nameid = nameid
22730	c.googleclouddialogflowcxv3sessionentitytype = googleclouddialogflowcxv3sessionentitytype
22731	return c
22732}
22733
22734// UpdateMask sets the optional parameter "updateMask": The mask to
22735// control which fields get updated.
22736func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatchCall) UpdateMask(updateMask string) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatchCall {
22737	c.urlParams_.Set("updateMask", updateMask)
22738	return c
22739}
22740
22741// Fields allows partial responses to be retrieved. See
22742// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22743// for more information.
22744func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatchCall {
22745	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22746	return c
22747}
22748
22749// Context sets the context to be used in this call's Do method. Any
22750// pending HTTP request will be aborted if the provided context is
22751// canceled.
22752func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatchCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatchCall {
22753	c.ctx_ = ctx
22754	return c
22755}
22756
22757// Header returns an http.Header that can be modified by the caller to
22758// add HTTP headers to the request.
22759func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatchCall) Header() http.Header {
22760	if c.header_ == nil {
22761		c.header_ = make(http.Header)
22762	}
22763	return c.header_
22764}
22765
22766func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatchCall) doRequest(alt string) (*http.Response, error) {
22767	reqHeaders := make(http.Header)
22768	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
22769	for k, v := range c.header_ {
22770		reqHeaders[k] = v
22771	}
22772	reqHeaders.Set("User-Agent", c.s.userAgent())
22773	var body io.Reader = nil
22774	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3sessionentitytype)
22775	if err != nil {
22776		return nil, err
22777	}
22778	reqHeaders.Set("Content-Type", "application/json")
22779	c.urlParams_.Set("alt", alt)
22780	c.urlParams_.Set("prettyPrint", "false")
22781	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
22782	urls += "?" + c.urlParams_.Encode()
22783	req, err := http.NewRequest("PATCH", urls, body)
22784	if err != nil {
22785		return nil, err
22786	}
22787	req.Header = reqHeaders
22788	googleapi.Expand(req.URL, map[string]string{
22789		"name": c.nameid,
22790	})
22791	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22792}
22793
22794// Do executes the "dialogflow.projects.locations.agents.environments.sessions.entityTypes.patch" call.
22795// Exactly one of *GoogleCloudDialogflowCxV3SessionEntityType or error
22796// will be non-nil. Any non-2xx status code is an error. Response
22797// headers are in either
22798// *GoogleCloudDialogflowCxV3SessionEntityType.ServerResponse.Header or
22799// (if a response was returned at all) in
22800// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
22801// whether the returned error was because http.StatusNotModified was
22802// returned.
22803func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3SessionEntityType, error) {
22804	gensupport.SetOptions(c.urlParams_, opts...)
22805	res, err := c.doRequest("json")
22806	if res != nil && res.StatusCode == http.StatusNotModified {
22807		if res.Body != nil {
22808			res.Body.Close()
22809		}
22810		return nil, &googleapi.Error{
22811			Code:   res.StatusCode,
22812			Header: res.Header,
22813		}
22814	}
22815	if err != nil {
22816		return nil, err
22817	}
22818	defer googleapi.CloseBody(res)
22819	if err := googleapi.CheckResponse(res); err != nil {
22820		return nil, err
22821	}
22822	ret := &GoogleCloudDialogflowCxV3SessionEntityType{
22823		ServerResponse: googleapi.ServerResponse{
22824			Header:         res.Header,
22825			HTTPStatusCode: res.StatusCode,
22826		},
22827	}
22828	target := &ret
22829	if err := gensupport.DecodeResponse(target, res); err != nil {
22830		return nil, err
22831	}
22832	return ret, nil
22833	// {
22834	//   "description": "Updates the specified session entity type.",
22835	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/sessions/{sessionsId}/entityTypes/{entityTypesId}",
22836	//   "httpMethod": "PATCH",
22837	//   "id": "dialogflow.projects.locations.agents.environments.sessions.entityTypes.patch",
22838	//   "parameterOrder": [
22839	//     "name"
22840	//   ],
22841	//   "parameters": {
22842	//     "name": {
22843	//       "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.",
22844	//       "location": "path",
22845	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+/sessions/[^/]+/entityTypes/[^/]+$",
22846	//       "required": true,
22847	//       "type": "string"
22848	//     },
22849	//     "updateMask": {
22850	//       "description": "The mask to control which fields get updated.",
22851	//       "format": "google-fieldmask",
22852	//       "location": "query",
22853	//       "type": "string"
22854	//     }
22855	//   },
22856	//   "path": "v3/{+name}",
22857	//   "request": {
22858	//     "$ref": "GoogleCloudDialogflowCxV3SessionEntityType"
22859	//   },
22860	//   "response": {
22861	//     "$ref": "GoogleCloudDialogflowCxV3SessionEntityType"
22862	//   },
22863	//   "scopes": [
22864	//     "https://www.googleapis.com/auth/cloud-platform",
22865	//     "https://www.googleapis.com/auth/dialogflow"
22866	//   ]
22867	// }
22868
22869}
22870
22871// method id "dialogflow.projects.locations.agents.flows.create":
22872
22873type ProjectsLocationsAgentsFlowsCreateCall struct {
22874	s                             *Service
22875	parent                        string
22876	googleclouddialogflowcxv3flow *GoogleCloudDialogflowCxV3Flow
22877	urlParams_                    gensupport.URLParams
22878	ctx_                          context.Context
22879	header_                       http.Header
22880}
22881
22882// Create: Creates a flow in the specified agent. Note: You should
22883// always train a flow prior to sending it queries. See the training
22884// documentation
22885// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
22886//
22887// - parent: The agent to create a flow for. Format:
22888//   `projects//locations//agents/`.
22889func (r *ProjectsLocationsAgentsFlowsService) Create(parent string, googleclouddialogflowcxv3flow *GoogleCloudDialogflowCxV3Flow) *ProjectsLocationsAgentsFlowsCreateCall {
22890	c := &ProjectsLocationsAgentsFlowsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22891	c.parent = parent
22892	c.googleclouddialogflowcxv3flow = googleclouddialogflowcxv3flow
22893	return c
22894}
22895
22896// LanguageCode sets the optional parameter "languageCode": The language
22897// of the following fields in `flow`: *
22898// `Flow.event_handlers.trigger_fulfillment.messages` *
22899// `Flow.event_handlers.trigger_fulfillment.conditional_cases` *
22900// `Flow.transition_routes.trigger_fulfillment.messages` *
22901// `Flow.transition_routes.trigger_fulfillment.conditional_cases` If not
22902// specified, the agent's default language is used. Many languages
22903// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
22904// supported. Note: languages must be enabled in the agent before they
22905// can be used.
22906func (c *ProjectsLocationsAgentsFlowsCreateCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsFlowsCreateCall {
22907	c.urlParams_.Set("languageCode", languageCode)
22908	return c
22909}
22910
22911// Fields allows partial responses to be retrieved. See
22912// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22913// for more information.
22914func (c *ProjectsLocationsAgentsFlowsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsCreateCall {
22915	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22916	return c
22917}
22918
22919// Context sets the context to be used in this call's Do method. Any
22920// pending HTTP request will be aborted if the provided context is
22921// canceled.
22922func (c *ProjectsLocationsAgentsFlowsCreateCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsCreateCall {
22923	c.ctx_ = ctx
22924	return c
22925}
22926
22927// Header returns an http.Header that can be modified by the caller to
22928// add HTTP headers to the request.
22929func (c *ProjectsLocationsAgentsFlowsCreateCall) Header() http.Header {
22930	if c.header_ == nil {
22931		c.header_ = make(http.Header)
22932	}
22933	return c.header_
22934}
22935
22936func (c *ProjectsLocationsAgentsFlowsCreateCall) doRequest(alt string) (*http.Response, error) {
22937	reqHeaders := make(http.Header)
22938	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
22939	for k, v := range c.header_ {
22940		reqHeaders[k] = v
22941	}
22942	reqHeaders.Set("User-Agent", c.s.userAgent())
22943	var body io.Reader = nil
22944	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3flow)
22945	if err != nil {
22946		return nil, err
22947	}
22948	reqHeaders.Set("Content-Type", "application/json")
22949	c.urlParams_.Set("alt", alt)
22950	c.urlParams_.Set("prettyPrint", "false")
22951	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/flows")
22952	urls += "?" + c.urlParams_.Encode()
22953	req, err := http.NewRequest("POST", urls, body)
22954	if err != nil {
22955		return nil, err
22956	}
22957	req.Header = reqHeaders
22958	googleapi.Expand(req.URL, map[string]string{
22959		"parent": c.parent,
22960	})
22961	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22962}
22963
22964// Do executes the "dialogflow.projects.locations.agents.flows.create" call.
22965// Exactly one of *GoogleCloudDialogflowCxV3Flow or error will be
22966// non-nil. Any non-2xx status code is an error. Response headers are in
22967// either *GoogleCloudDialogflowCxV3Flow.ServerResponse.Header or (if a
22968// response was returned at all) in error.(*googleapi.Error).Header. Use
22969// googleapi.IsNotModified to check whether the returned error was
22970// because http.StatusNotModified was returned.
22971func (c *ProjectsLocationsAgentsFlowsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3Flow, error) {
22972	gensupport.SetOptions(c.urlParams_, opts...)
22973	res, err := c.doRequest("json")
22974	if res != nil && res.StatusCode == http.StatusNotModified {
22975		if res.Body != nil {
22976			res.Body.Close()
22977		}
22978		return nil, &googleapi.Error{
22979			Code:   res.StatusCode,
22980			Header: res.Header,
22981		}
22982	}
22983	if err != nil {
22984		return nil, err
22985	}
22986	defer googleapi.CloseBody(res)
22987	if err := googleapi.CheckResponse(res); err != nil {
22988		return nil, err
22989	}
22990	ret := &GoogleCloudDialogflowCxV3Flow{
22991		ServerResponse: googleapi.ServerResponse{
22992			Header:         res.Header,
22993			HTTPStatusCode: res.StatusCode,
22994		},
22995	}
22996	target := &ret
22997	if err := gensupport.DecodeResponse(target, res); err != nil {
22998		return nil, err
22999	}
23000	return ret, nil
23001	// {
23002	//   "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).",
23003	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows",
23004	//   "httpMethod": "POST",
23005	//   "id": "dialogflow.projects.locations.agents.flows.create",
23006	//   "parameterOrder": [
23007	//     "parent"
23008	//   ],
23009	//   "parameters": {
23010	//     "languageCode": {
23011	//       "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.",
23012	//       "location": "query",
23013	//       "type": "string"
23014	//     },
23015	//     "parent": {
23016	//       "description": "Required. The agent to create a flow for. Format: `projects//locations//agents/`.",
23017	//       "location": "path",
23018	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
23019	//       "required": true,
23020	//       "type": "string"
23021	//     }
23022	//   },
23023	//   "path": "v3/{+parent}/flows",
23024	//   "request": {
23025	//     "$ref": "GoogleCloudDialogflowCxV3Flow"
23026	//   },
23027	//   "response": {
23028	//     "$ref": "GoogleCloudDialogflowCxV3Flow"
23029	//   },
23030	//   "scopes": [
23031	//     "https://www.googleapis.com/auth/cloud-platform",
23032	//     "https://www.googleapis.com/auth/dialogflow"
23033	//   ]
23034	// }
23035
23036}
23037
23038// method id "dialogflow.projects.locations.agents.flows.delete":
23039
23040type ProjectsLocationsAgentsFlowsDeleteCall struct {
23041	s          *Service
23042	name       string
23043	urlParams_ gensupport.URLParams
23044	ctx_       context.Context
23045	header_    http.Header
23046}
23047
23048// Delete: Deletes a specified flow.
23049//
23050// - name: The name of the flow to delete. Format:
23051//   `projects//locations//agents//flows/`.
23052func (r *ProjectsLocationsAgentsFlowsService) Delete(name string) *ProjectsLocationsAgentsFlowsDeleteCall {
23053	c := &ProjectsLocationsAgentsFlowsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23054	c.name = name
23055	return c
23056}
23057
23058// Force sets the optional parameter "force": This field has no effect
23059// for flows with no incoming transitions. For flows with incoming
23060// transitions: * If `force` is set to false, an error will be returned
23061// with message indicating the incoming transitions. * If `force` is set
23062// to true, Dialogflow will remove the flow, as well as any transitions
23063// to the flow (i.e. Target flow in event handlers or Target flow in
23064// transition routes that point to this flow will be cleared).
23065func (c *ProjectsLocationsAgentsFlowsDeleteCall) Force(force bool) *ProjectsLocationsAgentsFlowsDeleteCall {
23066	c.urlParams_.Set("force", fmt.Sprint(force))
23067	return c
23068}
23069
23070// Fields allows partial responses to be retrieved. See
23071// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23072// for more information.
23073func (c *ProjectsLocationsAgentsFlowsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsDeleteCall {
23074	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23075	return c
23076}
23077
23078// Context sets the context to be used in this call's Do method. Any
23079// pending HTTP request will be aborted if the provided context is
23080// canceled.
23081func (c *ProjectsLocationsAgentsFlowsDeleteCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsDeleteCall {
23082	c.ctx_ = ctx
23083	return c
23084}
23085
23086// Header returns an http.Header that can be modified by the caller to
23087// add HTTP headers to the request.
23088func (c *ProjectsLocationsAgentsFlowsDeleteCall) Header() http.Header {
23089	if c.header_ == nil {
23090		c.header_ = make(http.Header)
23091	}
23092	return c.header_
23093}
23094
23095func (c *ProjectsLocationsAgentsFlowsDeleteCall) doRequest(alt string) (*http.Response, error) {
23096	reqHeaders := make(http.Header)
23097	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
23098	for k, v := range c.header_ {
23099		reqHeaders[k] = v
23100	}
23101	reqHeaders.Set("User-Agent", c.s.userAgent())
23102	var body io.Reader = nil
23103	c.urlParams_.Set("alt", alt)
23104	c.urlParams_.Set("prettyPrint", "false")
23105	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
23106	urls += "?" + c.urlParams_.Encode()
23107	req, err := http.NewRequest("DELETE", urls, body)
23108	if err != nil {
23109		return nil, err
23110	}
23111	req.Header = reqHeaders
23112	googleapi.Expand(req.URL, map[string]string{
23113		"name": c.name,
23114	})
23115	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23116}
23117
23118// Do executes the "dialogflow.projects.locations.agents.flows.delete" call.
23119// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
23120// non-2xx status code is an error. Response headers are in either
23121// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
23122// returned at all) in error.(*googleapi.Error).Header. Use
23123// googleapi.IsNotModified to check whether the returned error was
23124// because http.StatusNotModified was returned.
23125func (c *ProjectsLocationsAgentsFlowsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
23126	gensupport.SetOptions(c.urlParams_, opts...)
23127	res, err := c.doRequest("json")
23128	if res != nil && res.StatusCode == http.StatusNotModified {
23129		if res.Body != nil {
23130			res.Body.Close()
23131		}
23132		return nil, &googleapi.Error{
23133			Code:   res.StatusCode,
23134			Header: res.Header,
23135		}
23136	}
23137	if err != nil {
23138		return nil, err
23139	}
23140	defer googleapi.CloseBody(res)
23141	if err := googleapi.CheckResponse(res); err != nil {
23142		return nil, err
23143	}
23144	ret := &GoogleProtobufEmpty{
23145		ServerResponse: googleapi.ServerResponse{
23146			Header:         res.Header,
23147			HTTPStatusCode: res.StatusCode,
23148		},
23149	}
23150	target := &ret
23151	if err := gensupport.DecodeResponse(target, res); err != nil {
23152		return nil, err
23153	}
23154	return ret, nil
23155	// {
23156	//   "description": "Deletes a specified flow.",
23157	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}",
23158	//   "httpMethod": "DELETE",
23159	//   "id": "dialogflow.projects.locations.agents.flows.delete",
23160	//   "parameterOrder": [
23161	//     "name"
23162	//   ],
23163	//   "parameters": {
23164	//     "force": {
23165	//       "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).",
23166	//       "location": "query",
23167	//       "type": "boolean"
23168	//     },
23169	//     "name": {
23170	//       "description": "Required. The name of the flow to delete. Format: `projects//locations//agents//flows/`.",
23171	//       "location": "path",
23172	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+$",
23173	//       "required": true,
23174	//       "type": "string"
23175	//     }
23176	//   },
23177	//   "path": "v3/{+name}",
23178	//   "response": {
23179	//     "$ref": "GoogleProtobufEmpty"
23180	//   },
23181	//   "scopes": [
23182	//     "https://www.googleapis.com/auth/cloud-platform",
23183	//     "https://www.googleapis.com/auth/dialogflow"
23184	//   ]
23185	// }
23186
23187}
23188
23189// method id "dialogflow.projects.locations.agents.flows.export":
23190
23191type ProjectsLocationsAgentsFlowsExportCall struct {
23192	s                                          *Service
23193	name                                       string
23194	googleclouddialogflowcxv3exportflowrequest *GoogleCloudDialogflowCxV3ExportFlowRequest
23195	urlParams_                                 gensupport.URLParams
23196	ctx_                                       context.Context
23197	header_                                    http.Header
23198}
23199
23200// Export: Exports the specified flow to a binary file. Note that
23201// resources (e.g. intents, entities, webhooks) that the flow references
23202// will also be exported.
23203//
23204// - name: The name of the flow to export. Format:
23205//   `projects//locations//agents//flows/`.
23206func (r *ProjectsLocationsAgentsFlowsService) Export(name string, googleclouddialogflowcxv3exportflowrequest *GoogleCloudDialogflowCxV3ExportFlowRequest) *ProjectsLocationsAgentsFlowsExportCall {
23207	c := &ProjectsLocationsAgentsFlowsExportCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23208	c.name = name
23209	c.googleclouddialogflowcxv3exportflowrequest = googleclouddialogflowcxv3exportflowrequest
23210	return c
23211}
23212
23213// Fields allows partial responses to be retrieved. See
23214// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23215// for more information.
23216func (c *ProjectsLocationsAgentsFlowsExportCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsExportCall {
23217	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23218	return c
23219}
23220
23221// Context sets the context to be used in this call's Do method. Any
23222// pending HTTP request will be aborted if the provided context is
23223// canceled.
23224func (c *ProjectsLocationsAgentsFlowsExportCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsExportCall {
23225	c.ctx_ = ctx
23226	return c
23227}
23228
23229// Header returns an http.Header that can be modified by the caller to
23230// add HTTP headers to the request.
23231func (c *ProjectsLocationsAgentsFlowsExportCall) Header() http.Header {
23232	if c.header_ == nil {
23233		c.header_ = make(http.Header)
23234	}
23235	return c.header_
23236}
23237
23238func (c *ProjectsLocationsAgentsFlowsExportCall) doRequest(alt string) (*http.Response, error) {
23239	reqHeaders := make(http.Header)
23240	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
23241	for k, v := range c.header_ {
23242		reqHeaders[k] = v
23243	}
23244	reqHeaders.Set("User-Agent", c.s.userAgent())
23245	var body io.Reader = nil
23246	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3exportflowrequest)
23247	if err != nil {
23248		return nil, err
23249	}
23250	reqHeaders.Set("Content-Type", "application/json")
23251	c.urlParams_.Set("alt", alt)
23252	c.urlParams_.Set("prettyPrint", "false")
23253	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}:export")
23254	urls += "?" + c.urlParams_.Encode()
23255	req, err := http.NewRequest("POST", urls, body)
23256	if err != nil {
23257		return nil, err
23258	}
23259	req.Header = reqHeaders
23260	googleapi.Expand(req.URL, map[string]string{
23261		"name": c.name,
23262	})
23263	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23264}
23265
23266// Do executes the "dialogflow.projects.locations.agents.flows.export" call.
23267// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
23268// Any non-2xx status code is an error. Response headers are in either
23269// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
23270// was returned at all) in error.(*googleapi.Error).Header. Use
23271// googleapi.IsNotModified to check whether the returned error was
23272// because http.StatusNotModified was returned.
23273func (c *ProjectsLocationsAgentsFlowsExportCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
23274	gensupport.SetOptions(c.urlParams_, opts...)
23275	res, err := c.doRequest("json")
23276	if res != nil && res.StatusCode == http.StatusNotModified {
23277		if res.Body != nil {
23278			res.Body.Close()
23279		}
23280		return nil, &googleapi.Error{
23281			Code:   res.StatusCode,
23282			Header: res.Header,
23283		}
23284	}
23285	if err != nil {
23286		return nil, err
23287	}
23288	defer googleapi.CloseBody(res)
23289	if err := googleapi.CheckResponse(res); err != nil {
23290		return nil, err
23291	}
23292	ret := &GoogleLongrunningOperation{
23293		ServerResponse: googleapi.ServerResponse{
23294			Header:         res.Header,
23295			HTTPStatusCode: res.StatusCode,
23296		},
23297	}
23298	target := &ret
23299	if err := gensupport.DecodeResponse(target, res); err != nil {
23300		return nil, err
23301	}
23302	return ret, nil
23303	// {
23304	//   "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.",
23305	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}:export",
23306	//   "httpMethod": "POST",
23307	//   "id": "dialogflow.projects.locations.agents.flows.export",
23308	//   "parameterOrder": [
23309	//     "name"
23310	//   ],
23311	//   "parameters": {
23312	//     "name": {
23313	//       "description": "Required. The name of the flow to export. Format: `projects//locations//agents//flows/`.",
23314	//       "location": "path",
23315	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+$",
23316	//       "required": true,
23317	//       "type": "string"
23318	//     }
23319	//   },
23320	//   "path": "v3/{+name}:export",
23321	//   "request": {
23322	//     "$ref": "GoogleCloudDialogflowCxV3ExportFlowRequest"
23323	//   },
23324	//   "response": {
23325	//     "$ref": "GoogleLongrunningOperation"
23326	//   },
23327	//   "scopes": [
23328	//     "https://www.googleapis.com/auth/cloud-platform",
23329	//     "https://www.googleapis.com/auth/dialogflow"
23330	//   ]
23331	// }
23332
23333}
23334
23335// method id "dialogflow.projects.locations.agents.flows.get":
23336
23337type ProjectsLocationsAgentsFlowsGetCall struct {
23338	s            *Service
23339	name         string
23340	urlParams_   gensupport.URLParams
23341	ifNoneMatch_ string
23342	ctx_         context.Context
23343	header_      http.Header
23344}
23345
23346// Get: Retrieves the specified flow.
23347//
23348// - name: The name of the flow to get. Format:
23349//   `projects//locations//agents//flows/`.
23350func (r *ProjectsLocationsAgentsFlowsService) Get(name string) *ProjectsLocationsAgentsFlowsGetCall {
23351	c := &ProjectsLocationsAgentsFlowsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23352	c.name = name
23353	return c
23354}
23355
23356// LanguageCode sets the optional parameter "languageCode": The language
23357// to retrieve the flow for. The following fields are language
23358// dependent: * `Flow.event_handlers.trigger_fulfillment.messages` *
23359// `Flow.event_handlers.trigger_fulfillment.conditional_cases` *
23360// `Flow.transition_routes.trigger_fulfillment.messages` *
23361// `Flow.transition_routes.trigger_fulfillment.conditional_cases` If not
23362// specified, the agent's default language is used. Many languages
23363// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
23364// supported. Note: languages must be enabled in the agent before they
23365// can be used.
23366func (c *ProjectsLocationsAgentsFlowsGetCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsFlowsGetCall {
23367	c.urlParams_.Set("languageCode", languageCode)
23368	return c
23369}
23370
23371// Fields allows partial responses to be retrieved. See
23372// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23373// for more information.
23374func (c *ProjectsLocationsAgentsFlowsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsGetCall {
23375	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23376	return c
23377}
23378
23379// IfNoneMatch sets the optional parameter which makes the operation
23380// fail if the object's ETag matches the given value. This is useful for
23381// getting updates only after the object has changed since the last
23382// request. Use googleapi.IsNotModified to check whether the response
23383// error from Do is the result of In-None-Match.
23384func (c *ProjectsLocationsAgentsFlowsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsFlowsGetCall {
23385	c.ifNoneMatch_ = entityTag
23386	return c
23387}
23388
23389// Context sets the context to be used in this call's Do method. Any
23390// pending HTTP request will be aborted if the provided context is
23391// canceled.
23392func (c *ProjectsLocationsAgentsFlowsGetCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsGetCall {
23393	c.ctx_ = ctx
23394	return c
23395}
23396
23397// Header returns an http.Header that can be modified by the caller to
23398// add HTTP headers to the request.
23399func (c *ProjectsLocationsAgentsFlowsGetCall) Header() http.Header {
23400	if c.header_ == nil {
23401		c.header_ = make(http.Header)
23402	}
23403	return c.header_
23404}
23405
23406func (c *ProjectsLocationsAgentsFlowsGetCall) doRequest(alt string) (*http.Response, error) {
23407	reqHeaders := make(http.Header)
23408	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
23409	for k, v := range c.header_ {
23410		reqHeaders[k] = v
23411	}
23412	reqHeaders.Set("User-Agent", c.s.userAgent())
23413	if c.ifNoneMatch_ != "" {
23414		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
23415	}
23416	var body io.Reader = nil
23417	c.urlParams_.Set("alt", alt)
23418	c.urlParams_.Set("prettyPrint", "false")
23419	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
23420	urls += "?" + c.urlParams_.Encode()
23421	req, err := http.NewRequest("GET", urls, body)
23422	if err != nil {
23423		return nil, err
23424	}
23425	req.Header = reqHeaders
23426	googleapi.Expand(req.URL, map[string]string{
23427		"name": c.name,
23428	})
23429	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23430}
23431
23432// Do executes the "dialogflow.projects.locations.agents.flows.get" call.
23433// Exactly one of *GoogleCloudDialogflowCxV3Flow or error will be
23434// non-nil. Any non-2xx status code is an error. Response headers are in
23435// either *GoogleCloudDialogflowCxV3Flow.ServerResponse.Header or (if a
23436// response was returned at all) in error.(*googleapi.Error).Header. Use
23437// googleapi.IsNotModified to check whether the returned error was
23438// because http.StatusNotModified was returned.
23439func (c *ProjectsLocationsAgentsFlowsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3Flow, error) {
23440	gensupport.SetOptions(c.urlParams_, opts...)
23441	res, err := c.doRequest("json")
23442	if res != nil && res.StatusCode == http.StatusNotModified {
23443		if res.Body != nil {
23444			res.Body.Close()
23445		}
23446		return nil, &googleapi.Error{
23447			Code:   res.StatusCode,
23448			Header: res.Header,
23449		}
23450	}
23451	if err != nil {
23452		return nil, err
23453	}
23454	defer googleapi.CloseBody(res)
23455	if err := googleapi.CheckResponse(res); err != nil {
23456		return nil, err
23457	}
23458	ret := &GoogleCloudDialogflowCxV3Flow{
23459		ServerResponse: googleapi.ServerResponse{
23460			Header:         res.Header,
23461			HTTPStatusCode: res.StatusCode,
23462		},
23463	}
23464	target := &ret
23465	if err := gensupport.DecodeResponse(target, res); err != nil {
23466		return nil, err
23467	}
23468	return ret, nil
23469	// {
23470	//   "description": "Retrieves the specified flow.",
23471	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}",
23472	//   "httpMethod": "GET",
23473	//   "id": "dialogflow.projects.locations.agents.flows.get",
23474	//   "parameterOrder": [
23475	//     "name"
23476	//   ],
23477	//   "parameters": {
23478	//     "languageCode": {
23479	//       "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.",
23480	//       "location": "query",
23481	//       "type": "string"
23482	//     },
23483	//     "name": {
23484	//       "description": "Required. The name of the flow to get. Format: `projects//locations//agents//flows/`.",
23485	//       "location": "path",
23486	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+$",
23487	//       "required": true,
23488	//       "type": "string"
23489	//     }
23490	//   },
23491	//   "path": "v3/{+name}",
23492	//   "response": {
23493	//     "$ref": "GoogleCloudDialogflowCxV3Flow"
23494	//   },
23495	//   "scopes": [
23496	//     "https://www.googleapis.com/auth/cloud-platform",
23497	//     "https://www.googleapis.com/auth/dialogflow"
23498	//   ]
23499	// }
23500
23501}
23502
23503// method id "dialogflow.projects.locations.agents.flows.getValidationResult":
23504
23505type ProjectsLocationsAgentsFlowsGetValidationResultCall struct {
23506	s            *Service
23507	name         string
23508	urlParams_   gensupport.URLParams
23509	ifNoneMatch_ string
23510	ctx_         context.Context
23511	header_      http.Header
23512}
23513
23514// GetValidationResult: Gets the latest flow validation result. Flow
23515// validation is performed when ValidateFlow is called.
23516//
23517// - name: The flow name. Format:
23518//   `projects//locations//agents//flows//validationResult`.
23519func (r *ProjectsLocationsAgentsFlowsService) GetValidationResult(name string) *ProjectsLocationsAgentsFlowsGetValidationResultCall {
23520	c := &ProjectsLocationsAgentsFlowsGetValidationResultCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23521	c.name = name
23522	return c
23523}
23524
23525// LanguageCode sets the optional parameter "languageCode": If not
23526// specified, the agent's default language is used.
23527func (c *ProjectsLocationsAgentsFlowsGetValidationResultCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsFlowsGetValidationResultCall {
23528	c.urlParams_.Set("languageCode", languageCode)
23529	return c
23530}
23531
23532// Fields allows partial responses to be retrieved. See
23533// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23534// for more information.
23535func (c *ProjectsLocationsAgentsFlowsGetValidationResultCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsGetValidationResultCall {
23536	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23537	return c
23538}
23539
23540// IfNoneMatch sets the optional parameter which makes the operation
23541// fail if the object's ETag matches the given value. This is useful for
23542// getting updates only after the object has changed since the last
23543// request. Use googleapi.IsNotModified to check whether the response
23544// error from Do is the result of In-None-Match.
23545func (c *ProjectsLocationsAgentsFlowsGetValidationResultCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsFlowsGetValidationResultCall {
23546	c.ifNoneMatch_ = entityTag
23547	return c
23548}
23549
23550// Context sets the context to be used in this call's Do method. Any
23551// pending HTTP request will be aborted if the provided context is
23552// canceled.
23553func (c *ProjectsLocationsAgentsFlowsGetValidationResultCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsGetValidationResultCall {
23554	c.ctx_ = ctx
23555	return c
23556}
23557
23558// Header returns an http.Header that can be modified by the caller to
23559// add HTTP headers to the request.
23560func (c *ProjectsLocationsAgentsFlowsGetValidationResultCall) Header() http.Header {
23561	if c.header_ == nil {
23562		c.header_ = make(http.Header)
23563	}
23564	return c.header_
23565}
23566
23567func (c *ProjectsLocationsAgentsFlowsGetValidationResultCall) doRequest(alt string) (*http.Response, error) {
23568	reqHeaders := make(http.Header)
23569	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
23570	for k, v := range c.header_ {
23571		reqHeaders[k] = v
23572	}
23573	reqHeaders.Set("User-Agent", c.s.userAgent())
23574	if c.ifNoneMatch_ != "" {
23575		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
23576	}
23577	var body io.Reader = nil
23578	c.urlParams_.Set("alt", alt)
23579	c.urlParams_.Set("prettyPrint", "false")
23580	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
23581	urls += "?" + c.urlParams_.Encode()
23582	req, err := http.NewRequest("GET", urls, body)
23583	if err != nil {
23584		return nil, err
23585	}
23586	req.Header = reqHeaders
23587	googleapi.Expand(req.URL, map[string]string{
23588		"name": c.name,
23589	})
23590	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23591}
23592
23593// Do executes the "dialogflow.projects.locations.agents.flows.getValidationResult" call.
23594// Exactly one of *GoogleCloudDialogflowCxV3FlowValidationResult or
23595// error will be non-nil. Any non-2xx status code is an error. Response
23596// headers are in either
23597// *GoogleCloudDialogflowCxV3FlowValidationResult.ServerResponse.Header
23598// or (if a response was returned at all) in
23599// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
23600// whether the returned error was because http.StatusNotModified was
23601// returned.
23602func (c *ProjectsLocationsAgentsFlowsGetValidationResultCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3FlowValidationResult, error) {
23603	gensupport.SetOptions(c.urlParams_, opts...)
23604	res, err := c.doRequest("json")
23605	if res != nil && res.StatusCode == http.StatusNotModified {
23606		if res.Body != nil {
23607			res.Body.Close()
23608		}
23609		return nil, &googleapi.Error{
23610			Code:   res.StatusCode,
23611			Header: res.Header,
23612		}
23613	}
23614	if err != nil {
23615		return nil, err
23616	}
23617	defer googleapi.CloseBody(res)
23618	if err := googleapi.CheckResponse(res); err != nil {
23619		return nil, err
23620	}
23621	ret := &GoogleCloudDialogflowCxV3FlowValidationResult{
23622		ServerResponse: googleapi.ServerResponse{
23623			Header:         res.Header,
23624			HTTPStatusCode: res.StatusCode,
23625		},
23626	}
23627	target := &ret
23628	if err := gensupport.DecodeResponse(target, res); err != nil {
23629		return nil, err
23630	}
23631	return ret, nil
23632	// {
23633	//   "description": "Gets the latest flow validation result. Flow validation is performed when ValidateFlow is called.",
23634	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/validationResult",
23635	//   "httpMethod": "GET",
23636	//   "id": "dialogflow.projects.locations.agents.flows.getValidationResult",
23637	//   "parameterOrder": [
23638	//     "name"
23639	//   ],
23640	//   "parameters": {
23641	//     "languageCode": {
23642	//       "description": "If not specified, the agent's default language is used.",
23643	//       "location": "query",
23644	//       "type": "string"
23645	//     },
23646	//     "name": {
23647	//       "description": "Required. The flow name. Format: `projects//locations//agents//flows//validationResult`.",
23648	//       "location": "path",
23649	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+/validationResult$",
23650	//       "required": true,
23651	//       "type": "string"
23652	//     }
23653	//   },
23654	//   "path": "v3/{+name}",
23655	//   "response": {
23656	//     "$ref": "GoogleCloudDialogflowCxV3FlowValidationResult"
23657	//   },
23658	//   "scopes": [
23659	//     "https://www.googleapis.com/auth/cloud-platform",
23660	//     "https://www.googleapis.com/auth/dialogflow"
23661	//   ]
23662	// }
23663
23664}
23665
23666// method id "dialogflow.projects.locations.agents.flows.import":
23667
23668type ProjectsLocationsAgentsFlowsImportCall struct {
23669	s                                          *Service
23670	parent                                     string
23671	googleclouddialogflowcxv3importflowrequest *GoogleCloudDialogflowCxV3ImportFlowRequest
23672	urlParams_                                 gensupport.URLParams
23673	ctx_                                       context.Context
23674	header_                                    http.Header
23675}
23676
23677// Import: Imports the specified flow to the specified agent from a
23678// binary file. Note: You should always train a flow prior to sending it
23679// queries. See the training documentation
23680// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
23681//
23682// - parent: The agent to import the flow into. Format:
23683//   `projects//locations//agents/`.
23684func (r *ProjectsLocationsAgentsFlowsService) Import(parent string, googleclouddialogflowcxv3importflowrequest *GoogleCloudDialogflowCxV3ImportFlowRequest) *ProjectsLocationsAgentsFlowsImportCall {
23685	c := &ProjectsLocationsAgentsFlowsImportCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23686	c.parent = parent
23687	c.googleclouddialogflowcxv3importflowrequest = googleclouddialogflowcxv3importflowrequest
23688	return c
23689}
23690
23691// Fields allows partial responses to be retrieved. See
23692// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23693// for more information.
23694func (c *ProjectsLocationsAgentsFlowsImportCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsImportCall {
23695	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23696	return c
23697}
23698
23699// Context sets the context to be used in this call's Do method. Any
23700// pending HTTP request will be aborted if the provided context is
23701// canceled.
23702func (c *ProjectsLocationsAgentsFlowsImportCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsImportCall {
23703	c.ctx_ = ctx
23704	return c
23705}
23706
23707// Header returns an http.Header that can be modified by the caller to
23708// add HTTP headers to the request.
23709func (c *ProjectsLocationsAgentsFlowsImportCall) Header() http.Header {
23710	if c.header_ == nil {
23711		c.header_ = make(http.Header)
23712	}
23713	return c.header_
23714}
23715
23716func (c *ProjectsLocationsAgentsFlowsImportCall) doRequest(alt string) (*http.Response, error) {
23717	reqHeaders := make(http.Header)
23718	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
23719	for k, v := range c.header_ {
23720		reqHeaders[k] = v
23721	}
23722	reqHeaders.Set("User-Agent", c.s.userAgent())
23723	var body io.Reader = nil
23724	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3importflowrequest)
23725	if err != nil {
23726		return nil, err
23727	}
23728	reqHeaders.Set("Content-Type", "application/json")
23729	c.urlParams_.Set("alt", alt)
23730	c.urlParams_.Set("prettyPrint", "false")
23731	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/flows:import")
23732	urls += "?" + c.urlParams_.Encode()
23733	req, err := http.NewRequest("POST", urls, body)
23734	if err != nil {
23735		return nil, err
23736	}
23737	req.Header = reqHeaders
23738	googleapi.Expand(req.URL, map[string]string{
23739		"parent": c.parent,
23740	})
23741	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23742}
23743
23744// Do executes the "dialogflow.projects.locations.agents.flows.import" call.
23745// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
23746// Any non-2xx status code is an error. Response headers are in either
23747// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
23748// was returned at all) in error.(*googleapi.Error).Header. Use
23749// googleapi.IsNotModified to check whether the returned error was
23750// because http.StatusNotModified was returned.
23751func (c *ProjectsLocationsAgentsFlowsImportCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
23752	gensupport.SetOptions(c.urlParams_, opts...)
23753	res, err := c.doRequest("json")
23754	if res != nil && res.StatusCode == http.StatusNotModified {
23755		if res.Body != nil {
23756			res.Body.Close()
23757		}
23758		return nil, &googleapi.Error{
23759			Code:   res.StatusCode,
23760			Header: res.Header,
23761		}
23762	}
23763	if err != nil {
23764		return nil, err
23765	}
23766	defer googleapi.CloseBody(res)
23767	if err := googleapi.CheckResponse(res); err != nil {
23768		return nil, err
23769	}
23770	ret := &GoogleLongrunningOperation{
23771		ServerResponse: googleapi.ServerResponse{
23772			Header:         res.Header,
23773			HTTPStatusCode: res.StatusCode,
23774		},
23775	}
23776	target := &ret
23777	if err := gensupport.DecodeResponse(target, res); err != nil {
23778		return nil, err
23779	}
23780	return ret, nil
23781	// {
23782	//   "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).",
23783	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows:import",
23784	//   "httpMethod": "POST",
23785	//   "id": "dialogflow.projects.locations.agents.flows.import",
23786	//   "parameterOrder": [
23787	//     "parent"
23788	//   ],
23789	//   "parameters": {
23790	//     "parent": {
23791	//       "description": "Required. The agent to import the flow into. Format: `projects//locations//agents/`.",
23792	//       "location": "path",
23793	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
23794	//       "required": true,
23795	//       "type": "string"
23796	//     }
23797	//   },
23798	//   "path": "v3/{+parent}/flows:import",
23799	//   "request": {
23800	//     "$ref": "GoogleCloudDialogflowCxV3ImportFlowRequest"
23801	//   },
23802	//   "response": {
23803	//     "$ref": "GoogleLongrunningOperation"
23804	//   },
23805	//   "scopes": [
23806	//     "https://www.googleapis.com/auth/cloud-platform",
23807	//     "https://www.googleapis.com/auth/dialogflow"
23808	//   ]
23809	// }
23810
23811}
23812
23813// method id "dialogflow.projects.locations.agents.flows.list":
23814
23815type ProjectsLocationsAgentsFlowsListCall struct {
23816	s            *Service
23817	parent       string
23818	urlParams_   gensupport.URLParams
23819	ifNoneMatch_ string
23820	ctx_         context.Context
23821	header_      http.Header
23822}
23823
23824// List: Returns the list of all flows in the specified agent.
23825//
23826// - parent: The agent containing the flows. Format:
23827//   `projects//locations//agents/`.
23828func (r *ProjectsLocationsAgentsFlowsService) List(parent string) *ProjectsLocationsAgentsFlowsListCall {
23829	c := &ProjectsLocationsAgentsFlowsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23830	c.parent = parent
23831	return c
23832}
23833
23834// LanguageCode sets the optional parameter "languageCode": The language
23835// to list flows for. The following fields are language dependent: *
23836// `Flow.event_handlers.trigger_fulfillment.messages` *
23837// `Flow.event_handlers.trigger_fulfillment.conditional_cases` *
23838// `Flow.transition_routes.trigger_fulfillment.messages` *
23839// `Flow.transition_routes.trigger_fulfillment.conditional_cases` If not
23840// specified, the agent's default language is used. Many languages
23841// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
23842// supported. Note: languages must be enabled in the agent before they
23843// can be used.
23844func (c *ProjectsLocationsAgentsFlowsListCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsFlowsListCall {
23845	c.urlParams_.Set("languageCode", languageCode)
23846	return c
23847}
23848
23849// PageSize sets the optional parameter "pageSize": The maximum number
23850// of items to return in a single page. By default 100 and at most 1000.
23851func (c *ProjectsLocationsAgentsFlowsListCall) PageSize(pageSize int64) *ProjectsLocationsAgentsFlowsListCall {
23852	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
23853	return c
23854}
23855
23856// PageToken sets the optional parameter "pageToken": The
23857// next_page_token value returned from a previous list request.
23858func (c *ProjectsLocationsAgentsFlowsListCall) PageToken(pageToken string) *ProjectsLocationsAgentsFlowsListCall {
23859	c.urlParams_.Set("pageToken", pageToken)
23860	return c
23861}
23862
23863// Fields allows partial responses to be retrieved. See
23864// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23865// for more information.
23866func (c *ProjectsLocationsAgentsFlowsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsListCall {
23867	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23868	return c
23869}
23870
23871// IfNoneMatch sets the optional parameter which makes the operation
23872// fail if the object's ETag matches the given value. This is useful for
23873// getting updates only after the object has changed since the last
23874// request. Use googleapi.IsNotModified to check whether the response
23875// error from Do is the result of In-None-Match.
23876func (c *ProjectsLocationsAgentsFlowsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsFlowsListCall {
23877	c.ifNoneMatch_ = entityTag
23878	return c
23879}
23880
23881// Context sets the context to be used in this call's Do method. Any
23882// pending HTTP request will be aborted if the provided context is
23883// canceled.
23884func (c *ProjectsLocationsAgentsFlowsListCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsListCall {
23885	c.ctx_ = ctx
23886	return c
23887}
23888
23889// Header returns an http.Header that can be modified by the caller to
23890// add HTTP headers to the request.
23891func (c *ProjectsLocationsAgentsFlowsListCall) Header() http.Header {
23892	if c.header_ == nil {
23893		c.header_ = make(http.Header)
23894	}
23895	return c.header_
23896}
23897
23898func (c *ProjectsLocationsAgentsFlowsListCall) doRequest(alt string) (*http.Response, error) {
23899	reqHeaders := make(http.Header)
23900	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
23901	for k, v := range c.header_ {
23902		reqHeaders[k] = v
23903	}
23904	reqHeaders.Set("User-Agent", c.s.userAgent())
23905	if c.ifNoneMatch_ != "" {
23906		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
23907	}
23908	var body io.Reader = nil
23909	c.urlParams_.Set("alt", alt)
23910	c.urlParams_.Set("prettyPrint", "false")
23911	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/flows")
23912	urls += "?" + c.urlParams_.Encode()
23913	req, err := http.NewRequest("GET", urls, body)
23914	if err != nil {
23915		return nil, err
23916	}
23917	req.Header = reqHeaders
23918	googleapi.Expand(req.URL, map[string]string{
23919		"parent": c.parent,
23920	})
23921	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23922}
23923
23924// Do executes the "dialogflow.projects.locations.agents.flows.list" call.
23925// Exactly one of *GoogleCloudDialogflowCxV3ListFlowsResponse or error
23926// will be non-nil. Any non-2xx status code is an error. Response
23927// headers are in either
23928// *GoogleCloudDialogflowCxV3ListFlowsResponse.ServerResponse.Header or
23929// (if a response was returned at all) in
23930// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
23931// whether the returned error was because http.StatusNotModified was
23932// returned.
23933func (c *ProjectsLocationsAgentsFlowsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3ListFlowsResponse, error) {
23934	gensupport.SetOptions(c.urlParams_, opts...)
23935	res, err := c.doRequest("json")
23936	if res != nil && res.StatusCode == http.StatusNotModified {
23937		if res.Body != nil {
23938			res.Body.Close()
23939		}
23940		return nil, &googleapi.Error{
23941			Code:   res.StatusCode,
23942			Header: res.Header,
23943		}
23944	}
23945	if err != nil {
23946		return nil, err
23947	}
23948	defer googleapi.CloseBody(res)
23949	if err := googleapi.CheckResponse(res); err != nil {
23950		return nil, err
23951	}
23952	ret := &GoogleCloudDialogflowCxV3ListFlowsResponse{
23953		ServerResponse: googleapi.ServerResponse{
23954			Header:         res.Header,
23955			HTTPStatusCode: res.StatusCode,
23956		},
23957	}
23958	target := &ret
23959	if err := gensupport.DecodeResponse(target, res); err != nil {
23960		return nil, err
23961	}
23962	return ret, nil
23963	// {
23964	//   "description": "Returns the list of all flows in the specified agent.",
23965	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows",
23966	//   "httpMethod": "GET",
23967	//   "id": "dialogflow.projects.locations.agents.flows.list",
23968	//   "parameterOrder": [
23969	//     "parent"
23970	//   ],
23971	//   "parameters": {
23972	//     "languageCode": {
23973	//       "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.",
23974	//       "location": "query",
23975	//       "type": "string"
23976	//     },
23977	//     "pageSize": {
23978	//       "description": "The maximum number of items to return in a single page. By default 100 and at most 1000.",
23979	//       "format": "int32",
23980	//       "location": "query",
23981	//       "type": "integer"
23982	//     },
23983	//     "pageToken": {
23984	//       "description": "The next_page_token value returned from a previous list request.",
23985	//       "location": "query",
23986	//       "type": "string"
23987	//     },
23988	//     "parent": {
23989	//       "description": "Required. The agent containing the flows. Format: `projects//locations//agents/`.",
23990	//       "location": "path",
23991	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
23992	//       "required": true,
23993	//       "type": "string"
23994	//     }
23995	//   },
23996	//   "path": "v3/{+parent}/flows",
23997	//   "response": {
23998	//     "$ref": "GoogleCloudDialogflowCxV3ListFlowsResponse"
23999	//   },
24000	//   "scopes": [
24001	//     "https://www.googleapis.com/auth/cloud-platform",
24002	//     "https://www.googleapis.com/auth/dialogflow"
24003	//   ]
24004	// }
24005
24006}
24007
24008// Pages invokes f for each page of results.
24009// A non-nil error returned from f will halt the iteration.
24010// The provided context supersedes any context provided to the Context method.
24011func (c *ProjectsLocationsAgentsFlowsListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3ListFlowsResponse) error) error {
24012	c.ctx_ = ctx
24013	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
24014	for {
24015		x, err := c.Do()
24016		if err != nil {
24017			return err
24018		}
24019		if err := f(x); err != nil {
24020			return err
24021		}
24022		if x.NextPageToken == "" {
24023			return nil
24024		}
24025		c.PageToken(x.NextPageToken)
24026	}
24027}
24028
24029// method id "dialogflow.projects.locations.agents.flows.patch":
24030
24031type ProjectsLocationsAgentsFlowsPatchCall struct {
24032	s                             *Service
24033	nameid                        string
24034	googleclouddialogflowcxv3flow *GoogleCloudDialogflowCxV3Flow
24035	urlParams_                    gensupport.URLParams
24036	ctx_                          context.Context
24037	header_                       http.Header
24038}
24039
24040// Patch: Updates the specified flow. Note: You should always train a
24041// flow prior to sending it queries. See the training documentation
24042// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
24043//
24044// - name: The unique identifier of the flow. Format:
24045//   `projects//locations//agents//flows/`.
24046func (r *ProjectsLocationsAgentsFlowsService) Patch(nameid string, googleclouddialogflowcxv3flow *GoogleCloudDialogflowCxV3Flow) *ProjectsLocationsAgentsFlowsPatchCall {
24047	c := &ProjectsLocationsAgentsFlowsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24048	c.nameid = nameid
24049	c.googleclouddialogflowcxv3flow = googleclouddialogflowcxv3flow
24050	return c
24051}
24052
24053// LanguageCode sets the optional parameter "languageCode": The language
24054// of the following fields in `flow`: *
24055// `Flow.event_handlers.trigger_fulfillment.messages` *
24056// `Flow.event_handlers.trigger_fulfillment.conditional_cases` *
24057// `Flow.transition_routes.trigger_fulfillment.messages` *
24058// `Flow.transition_routes.trigger_fulfillment.conditional_cases` If not
24059// specified, the agent's default language is used. Many languages
24060// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
24061// supported. Note: languages must be enabled in the agent before they
24062// can be used.
24063func (c *ProjectsLocationsAgentsFlowsPatchCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsFlowsPatchCall {
24064	c.urlParams_.Set("languageCode", languageCode)
24065	return c
24066}
24067
24068// UpdateMask sets the optional parameter "updateMask": Required. The
24069// mask to control which fields get updated. If `update_mask` is not
24070// specified, an error will be returned.
24071func (c *ProjectsLocationsAgentsFlowsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsAgentsFlowsPatchCall {
24072	c.urlParams_.Set("updateMask", updateMask)
24073	return c
24074}
24075
24076// Fields allows partial responses to be retrieved. See
24077// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24078// for more information.
24079func (c *ProjectsLocationsAgentsFlowsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsPatchCall {
24080	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24081	return c
24082}
24083
24084// Context sets the context to be used in this call's Do method. Any
24085// pending HTTP request will be aborted if the provided context is
24086// canceled.
24087func (c *ProjectsLocationsAgentsFlowsPatchCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsPatchCall {
24088	c.ctx_ = ctx
24089	return c
24090}
24091
24092// Header returns an http.Header that can be modified by the caller to
24093// add HTTP headers to the request.
24094func (c *ProjectsLocationsAgentsFlowsPatchCall) Header() http.Header {
24095	if c.header_ == nil {
24096		c.header_ = make(http.Header)
24097	}
24098	return c.header_
24099}
24100
24101func (c *ProjectsLocationsAgentsFlowsPatchCall) doRequest(alt string) (*http.Response, error) {
24102	reqHeaders := make(http.Header)
24103	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
24104	for k, v := range c.header_ {
24105		reqHeaders[k] = v
24106	}
24107	reqHeaders.Set("User-Agent", c.s.userAgent())
24108	var body io.Reader = nil
24109	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3flow)
24110	if err != nil {
24111		return nil, err
24112	}
24113	reqHeaders.Set("Content-Type", "application/json")
24114	c.urlParams_.Set("alt", alt)
24115	c.urlParams_.Set("prettyPrint", "false")
24116	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
24117	urls += "?" + c.urlParams_.Encode()
24118	req, err := http.NewRequest("PATCH", urls, body)
24119	if err != nil {
24120		return nil, err
24121	}
24122	req.Header = reqHeaders
24123	googleapi.Expand(req.URL, map[string]string{
24124		"name": c.nameid,
24125	})
24126	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24127}
24128
24129// Do executes the "dialogflow.projects.locations.agents.flows.patch" call.
24130// Exactly one of *GoogleCloudDialogflowCxV3Flow or error will be
24131// non-nil. Any non-2xx status code is an error. Response headers are in
24132// either *GoogleCloudDialogflowCxV3Flow.ServerResponse.Header or (if a
24133// response was returned at all) in error.(*googleapi.Error).Header. Use
24134// googleapi.IsNotModified to check whether the returned error was
24135// because http.StatusNotModified was returned.
24136func (c *ProjectsLocationsAgentsFlowsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3Flow, error) {
24137	gensupport.SetOptions(c.urlParams_, opts...)
24138	res, err := c.doRequest("json")
24139	if res != nil && res.StatusCode == http.StatusNotModified {
24140		if res.Body != nil {
24141			res.Body.Close()
24142		}
24143		return nil, &googleapi.Error{
24144			Code:   res.StatusCode,
24145			Header: res.Header,
24146		}
24147	}
24148	if err != nil {
24149		return nil, err
24150	}
24151	defer googleapi.CloseBody(res)
24152	if err := googleapi.CheckResponse(res); err != nil {
24153		return nil, err
24154	}
24155	ret := &GoogleCloudDialogflowCxV3Flow{
24156		ServerResponse: googleapi.ServerResponse{
24157			Header:         res.Header,
24158			HTTPStatusCode: res.StatusCode,
24159		},
24160	}
24161	target := &ret
24162	if err := gensupport.DecodeResponse(target, res); err != nil {
24163		return nil, err
24164	}
24165	return ret, nil
24166	// {
24167	//   "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).",
24168	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}",
24169	//   "httpMethod": "PATCH",
24170	//   "id": "dialogflow.projects.locations.agents.flows.patch",
24171	//   "parameterOrder": [
24172	//     "name"
24173	//   ],
24174	//   "parameters": {
24175	//     "languageCode": {
24176	//       "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.",
24177	//       "location": "query",
24178	//       "type": "string"
24179	//     },
24180	//     "name": {
24181	//       "description": "The unique identifier of the flow. Format: `projects//locations//agents//flows/`.",
24182	//       "location": "path",
24183	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+$",
24184	//       "required": true,
24185	//       "type": "string"
24186	//     },
24187	//     "updateMask": {
24188	//       "description": "Required. The mask to control which fields get updated. If `update_mask` is not specified, an error will be returned.",
24189	//       "format": "google-fieldmask",
24190	//       "location": "query",
24191	//       "type": "string"
24192	//     }
24193	//   },
24194	//   "path": "v3/{+name}",
24195	//   "request": {
24196	//     "$ref": "GoogleCloudDialogflowCxV3Flow"
24197	//   },
24198	//   "response": {
24199	//     "$ref": "GoogleCloudDialogflowCxV3Flow"
24200	//   },
24201	//   "scopes": [
24202	//     "https://www.googleapis.com/auth/cloud-platform",
24203	//     "https://www.googleapis.com/auth/dialogflow"
24204	//   ]
24205	// }
24206
24207}
24208
24209// method id "dialogflow.projects.locations.agents.flows.train":
24210
24211type ProjectsLocationsAgentsFlowsTrainCall struct {
24212	s                                         *Service
24213	name                                      string
24214	googleclouddialogflowcxv3trainflowrequest *GoogleCloudDialogflowCxV3TrainFlowRequest
24215	urlParams_                                gensupport.URLParams
24216	ctx_                                      context.Context
24217	header_                                   http.Header
24218}
24219
24220// Train: Trains the specified flow. Note that only the flow in 'draft'
24221// environment is trained. Note: You should always train a flow prior to
24222// sending it queries. See the training documentation
24223// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
24224//
24225// - name: The flow to train. Format:
24226//   `projects//locations//agents//flows/`.
24227func (r *ProjectsLocationsAgentsFlowsService) Train(name string, googleclouddialogflowcxv3trainflowrequest *GoogleCloudDialogflowCxV3TrainFlowRequest) *ProjectsLocationsAgentsFlowsTrainCall {
24228	c := &ProjectsLocationsAgentsFlowsTrainCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24229	c.name = name
24230	c.googleclouddialogflowcxv3trainflowrequest = googleclouddialogflowcxv3trainflowrequest
24231	return c
24232}
24233
24234// Fields allows partial responses to be retrieved. See
24235// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24236// for more information.
24237func (c *ProjectsLocationsAgentsFlowsTrainCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsTrainCall {
24238	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24239	return c
24240}
24241
24242// Context sets the context to be used in this call's Do method. Any
24243// pending HTTP request will be aborted if the provided context is
24244// canceled.
24245func (c *ProjectsLocationsAgentsFlowsTrainCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsTrainCall {
24246	c.ctx_ = ctx
24247	return c
24248}
24249
24250// Header returns an http.Header that can be modified by the caller to
24251// add HTTP headers to the request.
24252func (c *ProjectsLocationsAgentsFlowsTrainCall) Header() http.Header {
24253	if c.header_ == nil {
24254		c.header_ = make(http.Header)
24255	}
24256	return c.header_
24257}
24258
24259func (c *ProjectsLocationsAgentsFlowsTrainCall) doRequest(alt string) (*http.Response, error) {
24260	reqHeaders := make(http.Header)
24261	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
24262	for k, v := range c.header_ {
24263		reqHeaders[k] = v
24264	}
24265	reqHeaders.Set("User-Agent", c.s.userAgent())
24266	var body io.Reader = nil
24267	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3trainflowrequest)
24268	if err != nil {
24269		return nil, err
24270	}
24271	reqHeaders.Set("Content-Type", "application/json")
24272	c.urlParams_.Set("alt", alt)
24273	c.urlParams_.Set("prettyPrint", "false")
24274	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}:train")
24275	urls += "?" + c.urlParams_.Encode()
24276	req, err := http.NewRequest("POST", urls, body)
24277	if err != nil {
24278		return nil, err
24279	}
24280	req.Header = reqHeaders
24281	googleapi.Expand(req.URL, map[string]string{
24282		"name": c.name,
24283	})
24284	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24285}
24286
24287// Do executes the "dialogflow.projects.locations.agents.flows.train" call.
24288// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
24289// Any non-2xx status code is an error. Response headers are in either
24290// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
24291// was returned at all) in error.(*googleapi.Error).Header. Use
24292// googleapi.IsNotModified to check whether the returned error was
24293// because http.StatusNotModified was returned.
24294func (c *ProjectsLocationsAgentsFlowsTrainCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
24295	gensupport.SetOptions(c.urlParams_, opts...)
24296	res, err := c.doRequest("json")
24297	if res != nil && res.StatusCode == http.StatusNotModified {
24298		if res.Body != nil {
24299			res.Body.Close()
24300		}
24301		return nil, &googleapi.Error{
24302			Code:   res.StatusCode,
24303			Header: res.Header,
24304		}
24305	}
24306	if err != nil {
24307		return nil, err
24308	}
24309	defer googleapi.CloseBody(res)
24310	if err := googleapi.CheckResponse(res); err != nil {
24311		return nil, err
24312	}
24313	ret := &GoogleLongrunningOperation{
24314		ServerResponse: googleapi.ServerResponse{
24315			Header:         res.Header,
24316			HTTPStatusCode: res.StatusCode,
24317		},
24318	}
24319	target := &ret
24320	if err := gensupport.DecodeResponse(target, res); err != nil {
24321		return nil, err
24322	}
24323	return ret, nil
24324	// {
24325	//   "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).",
24326	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}:train",
24327	//   "httpMethod": "POST",
24328	//   "id": "dialogflow.projects.locations.agents.flows.train",
24329	//   "parameterOrder": [
24330	//     "name"
24331	//   ],
24332	//   "parameters": {
24333	//     "name": {
24334	//       "description": "Required. The flow to train. Format: `projects//locations//agents//flows/`.",
24335	//       "location": "path",
24336	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+$",
24337	//       "required": true,
24338	//       "type": "string"
24339	//     }
24340	//   },
24341	//   "path": "v3/{+name}:train",
24342	//   "request": {
24343	//     "$ref": "GoogleCloudDialogflowCxV3TrainFlowRequest"
24344	//   },
24345	//   "response": {
24346	//     "$ref": "GoogleLongrunningOperation"
24347	//   },
24348	//   "scopes": [
24349	//     "https://www.googleapis.com/auth/cloud-platform",
24350	//     "https://www.googleapis.com/auth/dialogflow"
24351	//   ]
24352	// }
24353
24354}
24355
24356// method id "dialogflow.projects.locations.agents.flows.validate":
24357
24358type ProjectsLocationsAgentsFlowsValidateCall struct {
24359	s                                            *Service
24360	name                                         string
24361	googleclouddialogflowcxv3validateflowrequest *GoogleCloudDialogflowCxV3ValidateFlowRequest
24362	urlParams_                                   gensupport.URLParams
24363	ctx_                                         context.Context
24364	header_                                      http.Header
24365}
24366
24367// Validate: Validates the specified flow and creates or updates
24368// validation results. Please call this API after the training is
24369// completed to get the complete validation results.
24370//
24371// - name: The flow to validate. Format:
24372//   `projects//locations//agents//flows/`.
24373func (r *ProjectsLocationsAgentsFlowsService) Validate(name string, googleclouddialogflowcxv3validateflowrequest *GoogleCloudDialogflowCxV3ValidateFlowRequest) *ProjectsLocationsAgentsFlowsValidateCall {
24374	c := &ProjectsLocationsAgentsFlowsValidateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24375	c.name = name
24376	c.googleclouddialogflowcxv3validateflowrequest = googleclouddialogflowcxv3validateflowrequest
24377	return c
24378}
24379
24380// Fields allows partial responses to be retrieved. See
24381// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24382// for more information.
24383func (c *ProjectsLocationsAgentsFlowsValidateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsValidateCall {
24384	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24385	return c
24386}
24387
24388// Context sets the context to be used in this call's Do method. Any
24389// pending HTTP request will be aborted if the provided context is
24390// canceled.
24391func (c *ProjectsLocationsAgentsFlowsValidateCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsValidateCall {
24392	c.ctx_ = ctx
24393	return c
24394}
24395
24396// Header returns an http.Header that can be modified by the caller to
24397// add HTTP headers to the request.
24398func (c *ProjectsLocationsAgentsFlowsValidateCall) Header() http.Header {
24399	if c.header_ == nil {
24400		c.header_ = make(http.Header)
24401	}
24402	return c.header_
24403}
24404
24405func (c *ProjectsLocationsAgentsFlowsValidateCall) doRequest(alt string) (*http.Response, error) {
24406	reqHeaders := make(http.Header)
24407	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
24408	for k, v := range c.header_ {
24409		reqHeaders[k] = v
24410	}
24411	reqHeaders.Set("User-Agent", c.s.userAgent())
24412	var body io.Reader = nil
24413	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3validateflowrequest)
24414	if err != nil {
24415		return nil, err
24416	}
24417	reqHeaders.Set("Content-Type", "application/json")
24418	c.urlParams_.Set("alt", alt)
24419	c.urlParams_.Set("prettyPrint", "false")
24420	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}:validate")
24421	urls += "?" + c.urlParams_.Encode()
24422	req, err := http.NewRequest("POST", urls, body)
24423	if err != nil {
24424		return nil, err
24425	}
24426	req.Header = reqHeaders
24427	googleapi.Expand(req.URL, map[string]string{
24428		"name": c.name,
24429	})
24430	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24431}
24432
24433// Do executes the "dialogflow.projects.locations.agents.flows.validate" call.
24434// Exactly one of *GoogleCloudDialogflowCxV3FlowValidationResult or
24435// error will be non-nil. Any non-2xx status code is an error. Response
24436// headers are in either
24437// *GoogleCloudDialogflowCxV3FlowValidationResult.ServerResponse.Header
24438// or (if a response was returned at all) in
24439// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
24440// whether the returned error was because http.StatusNotModified was
24441// returned.
24442func (c *ProjectsLocationsAgentsFlowsValidateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3FlowValidationResult, error) {
24443	gensupport.SetOptions(c.urlParams_, opts...)
24444	res, err := c.doRequest("json")
24445	if res != nil && res.StatusCode == http.StatusNotModified {
24446		if res.Body != nil {
24447			res.Body.Close()
24448		}
24449		return nil, &googleapi.Error{
24450			Code:   res.StatusCode,
24451			Header: res.Header,
24452		}
24453	}
24454	if err != nil {
24455		return nil, err
24456	}
24457	defer googleapi.CloseBody(res)
24458	if err := googleapi.CheckResponse(res); err != nil {
24459		return nil, err
24460	}
24461	ret := &GoogleCloudDialogflowCxV3FlowValidationResult{
24462		ServerResponse: googleapi.ServerResponse{
24463			Header:         res.Header,
24464			HTTPStatusCode: res.StatusCode,
24465		},
24466	}
24467	target := &ret
24468	if err := gensupport.DecodeResponse(target, res); err != nil {
24469		return nil, err
24470	}
24471	return ret, nil
24472	// {
24473	//   "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.",
24474	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}:validate",
24475	//   "httpMethod": "POST",
24476	//   "id": "dialogflow.projects.locations.agents.flows.validate",
24477	//   "parameterOrder": [
24478	//     "name"
24479	//   ],
24480	//   "parameters": {
24481	//     "name": {
24482	//       "description": "Required. The flow to validate. Format: `projects//locations//agents//flows/`.",
24483	//       "location": "path",
24484	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+$",
24485	//       "required": true,
24486	//       "type": "string"
24487	//     }
24488	//   },
24489	//   "path": "v3/{+name}:validate",
24490	//   "request": {
24491	//     "$ref": "GoogleCloudDialogflowCxV3ValidateFlowRequest"
24492	//   },
24493	//   "response": {
24494	//     "$ref": "GoogleCloudDialogflowCxV3FlowValidationResult"
24495	//   },
24496	//   "scopes": [
24497	//     "https://www.googleapis.com/auth/cloud-platform",
24498	//     "https://www.googleapis.com/auth/dialogflow"
24499	//   ]
24500	// }
24501
24502}
24503
24504// method id "dialogflow.projects.locations.agents.flows.pages.create":
24505
24506type ProjectsLocationsAgentsFlowsPagesCreateCall struct {
24507	s                             *Service
24508	parent                        string
24509	googleclouddialogflowcxv3page *GoogleCloudDialogflowCxV3Page
24510	urlParams_                    gensupport.URLParams
24511	ctx_                          context.Context
24512	header_                       http.Header
24513}
24514
24515// Create: Creates a page in the specified flow. Note: You should always
24516// train a flow prior to sending it queries. See the training
24517// documentation
24518// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
24519//
24520// - parent: The flow to create a page for. Format:
24521//   `projects//locations//agents//flows/`.
24522func (r *ProjectsLocationsAgentsFlowsPagesService) Create(parent string, googleclouddialogflowcxv3page *GoogleCloudDialogflowCxV3Page) *ProjectsLocationsAgentsFlowsPagesCreateCall {
24523	c := &ProjectsLocationsAgentsFlowsPagesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24524	c.parent = parent
24525	c.googleclouddialogflowcxv3page = googleclouddialogflowcxv3page
24526	return c
24527}
24528
24529// LanguageCode sets the optional parameter "languageCode": The language
24530// of the following fields in `page`: *
24531// `Page.entry_fulfillment.messages` *
24532// `Page.entry_fulfillment.conditional_cases` *
24533// `Page.event_handlers.trigger_fulfillment.messages` *
24534// `Page.event_handlers.trigger_fulfillment.conditional_cases` *
24535// `Page.form.parameters.fill_behavior.initial_prompt_fulfillment.message
24536// s` *
24537// `Page.form.parameters.fill_behavior.initial_prompt_fulfillment.conditi
24538// onal_cases` *
24539// `Page.form.parameters.fill_behavior.reprompt_event_handlers.messages`
24540// *
24541// `Page.form.parameters.fill_behavior.reprompt_event_handlers.conditiona
24542// l_cases` * `Page.transition_routes.trigger_fulfillment.messages` *
24543// `Page.transition_routes.trigger_fulfillment.conditional_cases` If not
24544// specified, the agent's default language is used. Many languages
24545// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
24546// supported. Note: languages must be enabled in the agent before they
24547// can be used.
24548func (c *ProjectsLocationsAgentsFlowsPagesCreateCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsFlowsPagesCreateCall {
24549	c.urlParams_.Set("languageCode", languageCode)
24550	return c
24551}
24552
24553// Fields allows partial responses to be retrieved. See
24554// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24555// for more information.
24556func (c *ProjectsLocationsAgentsFlowsPagesCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsPagesCreateCall {
24557	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24558	return c
24559}
24560
24561// Context sets the context to be used in this call's Do method. Any
24562// pending HTTP request will be aborted if the provided context is
24563// canceled.
24564func (c *ProjectsLocationsAgentsFlowsPagesCreateCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsPagesCreateCall {
24565	c.ctx_ = ctx
24566	return c
24567}
24568
24569// Header returns an http.Header that can be modified by the caller to
24570// add HTTP headers to the request.
24571func (c *ProjectsLocationsAgentsFlowsPagesCreateCall) Header() http.Header {
24572	if c.header_ == nil {
24573		c.header_ = make(http.Header)
24574	}
24575	return c.header_
24576}
24577
24578func (c *ProjectsLocationsAgentsFlowsPagesCreateCall) doRequest(alt string) (*http.Response, error) {
24579	reqHeaders := make(http.Header)
24580	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
24581	for k, v := range c.header_ {
24582		reqHeaders[k] = v
24583	}
24584	reqHeaders.Set("User-Agent", c.s.userAgent())
24585	var body io.Reader = nil
24586	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3page)
24587	if err != nil {
24588		return nil, err
24589	}
24590	reqHeaders.Set("Content-Type", "application/json")
24591	c.urlParams_.Set("alt", alt)
24592	c.urlParams_.Set("prettyPrint", "false")
24593	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/pages")
24594	urls += "?" + c.urlParams_.Encode()
24595	req, err := http.NewRequest("POST", urls, body)
24596	if err != nil {
24597		return nil, err
24598	}
24599	req.Header = reqHeaders
24600	googleapi.Expand(req.URL, map[string]string{
24601		"parent": c.parent,
24602	})
24603	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24604}
24605
24606// Do executes the "dialogflow.projects.locations.agents.flows.pages.create" call.
24607// Exactly one of *GoogleCloudDialogflowCxV3Page or error will be
24608// non-nil. Any non-2xx status code is an error. Response headers are in
24609// either *GoogleCloudDialogflowCxV3Page.ServerResponse.Header or (if a
24610// response was returned at all) in error.(*googleapi.Error).Header. Use
24611// googleapi.IsNotModified to check whether the returned error was
24612// because http.StatusNotModified was returned.
24613func (c *ProjectsLocationsAgentsFlowsPagesCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3Page, error) {
24614	gensupport.SetOptions(c.urlParams_, opts...)
24615	res, err := c.doRequest("json")
24616	if res != nil && res.StatusCode == http.StatusNotModified {
24617		if res.Body != nil {
24618			res.Body.Close()
24619		}
24620		return nil, &googleapi.Error{
24621			Code:   res.StatusCode,
24622			Header: res.Header,
24623		}
24624	}
24625	if err != nil {
24626		return nil, err
24627	}
24628	defer googleapi.CloseBody(res)
24629	if err := googleapi.CheckResponse(res); err != nil {
24630		return nil, err
24631	}
24632	ret := &GoogleCloudDialogflowCxV3Page{
24633		ServerResponse: googleapi.ServerResponse{
24634			Header:         res.Header,
24635			HTTPStatusCode: res.StatusCode,
24636		},
24637	}
24638	target := &ret
24639	if err := gensupport.DecodeResponse(target, res); err != nil {
24640		return nil, err
24641	}
24642	return ret, nil
24643	// {
24644	//   "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).",
24645	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/pages",
24646	//   "httpMethod": "POST",
24647	//   "id": "dialogflow.projects.locations.agents.flows.pages.create",
24648	//   "parameterOrder": [
24649	//     "parent"
24650	//   ],
24651	//   "parameters": {
24652	//     "languageCode": {
24653	//       "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.",
24654	//       "location": "query",
24655	//       "type": "string"
24656	//     },
24657	//     "parent": {
24658	//       "description": "Required. The flow to create a page for. Format: `projects//locations//agents//flows/`.",
24659	//       "location": "path",
24660	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+$",
24661	//       "required": true,
24662	//       "type": "string"
24663	//     }
24664	//   },
24665	//   "path": "v3/{+parent}/pages",
24666	//   "request": {
24667	//     "$ref": "GoogleCloudDialogflowCxV3Page"
24668	//   },
24669	//   "response": {
24670	//     "$ref": "GoogleCloudDialogflowCxV3Page"
24671	//   },
24672	//   "scopes": [
24673	//     "https://www.googleapis.com/auth/cloud-platform",
24674	//     "https://www.googleapis.com/auth/dialogflow"
24675	//   ]
24676	// }
24677
24678}
24679
24680// method id "dialogflow.projects.locations.agents.flows.pages.delete":
24681
24682type ProjectsLocationsAgentsFlowsPagesDeleteCall struct {
24683	s          *Service
24684	name       string
24685	urlParams_ gensupport.URLParams
24686	ctx_       context.Context
24687	header_    http.Header
24688}
24689
24690// Delete: Deletes the specified page. Note: You should always train a
24691// flow prior to sending it queries. See the training documentation
24692// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
24693//
24694// - name: The name of the page to delete. Format:
24695//   `projects//locations//agents//Flows//pages/`.
24696func (r *ProjectsLocationsAgentsFlowsPagesService) Delete(name string) *ProjectsLocationsAgentsFlowsPagesDeleteCall {
24697	c := &ProjectsLocationsAgentsFlowsPagesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24698	c.name = name
24699	return c
24700}
24701
24702// Force sets the optional parameter "force": This field has no effect
24703// for pages with no incoming transitions. For pages with incoming
24704// transitions: * If `force` is set to false, an error will be returned
24705// with message indicating the incoming transitions. * If `force` is set
24706// to true, Dialogflow will remove the page, as well as any transitions
24707// to the page (i.e. Target page in event handlers or Target page in
24708// transition routes that point to this page will be cleared).
24709func (c *ProjectsLocationsAgentsFlowsPagesDeleteCall) Force(force bool) *ProjectsLocationsAgentsFlowsPagesDeleteCall {
24710	c.urlParams_.Set("force", fmt.Sprint(force))
24711	return c
24712}
24713
24714// Fields allows partial responses to be retrieved. See
24715// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24716// for more information.
24717func (c *ProjectsLocationsAgentsFlowsPagesDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsPagesDeleteCall {
24718	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24719	return c
24720}
24721
24722// Context sets the context to be used in this call's Do method. Any
24723// pending HTTP request will be aborted if the provided context is
24724// canceled.
24725func (c *ProjectsLocationsAgentsFlowsPagesDeleteCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsPagesDeleteCall {
24726	c.ctx_ = ctx
24727	return c
24728}
24729
24730// Header returns an http.Header that can be modified by the caller to
24731// add HTTP headers to the request.
24732func (c *ProjectsLocationsAgentsFlowsPagesDeleteCall) Header() http.Header {
24733	if c.header_ == nil {
24734		c.header_ = make(http.Header)
24735	}
24736	return c.header_
24737}
24738
24739func (c *ProjectsLocationsAgentsFlowsPagesDeleteCall) doRequest(alt string) (*http.Response, error) {
24740	reqHeaders := make(http.Header)
24741	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
24742	for k, v := range c.header_ {
24743		reqHeaders[k] = v
24744	}
24745	reqHeaders.Set("User-Agent", c.s.userAgent())
24746	var body io.Reader = nil
24747	c.urlParams_.Set("alt", alt)
24748	c.urlParams_.Set("prettyPrint", "false")
24749	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
24750	urls += "?" + c.urlParams_.Encode()
24751	req, err := http.NewRequest("DELETE", urls, body)
24752	if err != nil {
24753		return nil, err
24754	}
24755	req.Header = reqHeaders
24756	googleapi.Expand(req.URL, map[string]string{
24757		"name": c.name,
24758	})
24759	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24760}
24761
24762// Do executes the "dialogflow.projects.locations.agents.flows.pages.delete" call.
24763// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
24764// non-2xx status code is an error. Response headers are in either
24765// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
24766// returned at all) in error.(*googleapi.Error).Header. Use
24767// googleapi.IsNotModified to check whether the returned error was
24768// because http.StatusNotModified was returned.
24769func (c *ProjectsLocationsAgentsFlowsPagesDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
24770	gensupport.SetOptions(c.urlParams_, opts...)
24771	res, err := c.doRequest("json")
24772	if res != nil && res.StatusCode == http.StatusNotModified {
24773		if res.Body != nil {
24774			res.Body.Close()
24775		}
24776		return nil, &googleapi.Error{
24777			Code:   res.StatusCode,
24778			Header: res.Header,
24779		}
24780	}
24781	if err != nil {
24782		return nil, err
24783	}
24784	defer googleapi.CloseBody(res)
24785	if err := googleapi.CheckResponse(res); err != nil {
24786		return nil, err
24787	}
24788	ret := &GoogleProtobufEmpty{
24789		ServerResponse: googleapi.ServerResponse{
24790			Header:         res.Header,
24791			HTTPStatusCode: res.StatusCode,
24792		},
24793	}
24794	target := &ret
24795	if err := gensupport.DecodeResponse(target, res); err != nil {
24796		return nil, err
24797	}
24798	return ret, nil
24799	// {
24800	//   "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).",
24801	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/pages/{pagesId}",
24802	//   "httpMethod": "DELETE",
24803	//   "id": "dialogflow.projects.locations.agents.flows.pages.delete",
24804	//   "parameterOrder": [
24805	//     "name"
24806	//   ],
24807	//   "parameters": {
24808	//     "force": {
24809	//       "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).",
24810	//       "location": "query",
24811	//       "type": "boolean"
24812	//     },
24813	//     "name": {
24814	//       "description": "Required. The name of the page to delete. Format: `projects//locations//agents//Flows//pages/`.",
24815	//       "location": "path",
24816	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+/pages/[^/]+$",
24817	//       "required": true,
24818	//       "type": "string"
24819	//     }
24820	//   },
24821	//   "path": "v3/{+name}",
24822	//   "response": {
24823	//     "$ref": "GoogleProtobufEmpty"
24824	//   },
24825	//   "scopes": [
24826	//     "https://www.googleapis.com/auth/cloud-platform",
24827	//     "https://www.googleapis.com/auth/dialogflow"
24828	//   ]
24829	// }
24830
24831}
24832
24833// method id "dialogflow.projects.locations.agents.flows.pages.get":
24834
24835type ProjectsLocationsAgentsFlowsPagesGetCall struct {
24836	s            *Service
24837	name         string
24838	urlParams_   gensupport.URLParams
24839	ifNoneMatch_ string
24840	ctx_         context.Context
24841	header_      http.Header
24842}
24843
24844// Get: Retrieves the specified page.
24845//
24846// - name: The name of the page. Format:
24847//   `projects//locations//agents//flows//pages/`.
24848func (r *ProjectsLocationsAgentsFlowsPagesService) Get(name string) *ProjectsLocationsAgentsFlowsPagesGetCall {
24849	c := &ProjectsLocationsAgentsFlowsPagesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24850	c.name = name
24851	return c
24852}
24853
24854// LanguageCode sets the optional parameter "languageCode": The language
24855// to retrieve the page for. The following fields are language
24856// dependent: * `Page.entry_fulfillment.messages` *
24857// `Page.entry_fulfillment.conditional_cases` *
24858// `Page.event_handlers.trigger_fulfillment.messages` *
24859// `Page.event_handlers.trigger_fulfillment.conditional_cases` *
24860// `Page.form.parameters.fill_behavior.initial_prompt_fulfillment.message
24861// s` *
24862// `Page.form.parameters.fill_behavior.initial_prompt_fulfillment.conditi
24863// onal_cases` *
24864// `Page.form.parameters.fill_behavior.reprompt_event_handlers.messages`
24865// *
24866// `Page.form.parameters.fill_behavior.reprompt_event_handlers.conditiona
24867// l_cases` * `Page.transition_routes.trigger_fulfillment.messages` *
24868// `Page.transition_routes.trigger_fulfillment.conditional_cases` If not
24869// specified, the agent's default language is used. Many languages
24870// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
24871// supported. Note: languages must be enabled in the agent before they
24872// can be used.
24873func (c *ProjectsLocationsAgentsFlowsPagesGetCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsFlowsPagesGetCall {
24874	c.urlParams_.Set("languageCode", languageCode)
24875	return c
24876}
24877
24878// Fields allows partial responses to be retrieved. See
24879// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24880// for more information.
24881func (c *ProjectsLocationsAgentsFlowsPagesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsPagesGetCall {
24882	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24883	return c
24884}
24885
24886// IfNoneMatch sets the optional parameter which makes the operation
24887// fail if the object's ETag matches the given value. This is useful for
24888// getting updates only after the object has changed since the last
24889// request. Use googleapi.IsNotModified to check whether the response
24890// error from Do is the result of In-None-Match.
24891func (c *ProjectsLocationsAgentsFlowsPagesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsFlowsPagesGetCall {
24892	c.ifNoneMatch_ = entityTag
24893	return c
24894}
24895
24896// Context sets the context to be used in this call's Do method. Any
24897// pending HTTP request will be aborted if the provided context is
24898// canceled.
24899func (c *ProjectsLocationsAgentsFlowsPagesGetCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsPagesGetCall {
24900	c.ctx_ = ctx
24901	return c
24902}
24903
24904// Header returns an http.Header that can be modified by the caller to
24905// add HTTP headers to the request.
24906func (c *ProjectsLocationsAgentsFlowsPagesGetCall) Header() http.Header {
24907	if c.header_ == nil {
24908		c.header_ = make(http.Header)
24909	}
24910	return c.header_
24911}
24912
24913func (c *ProjectsLocationsAgentsFlowsPagesGetCall) doRequest(alt string) (*http.Response, error) {
24914	reqHeaders := make(http.Header)
24915	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
24916	for k, v := range c.header_ {
24917		reqHeaders[k] = v
24918	}
24919	reqHeaders.Set("User-Agent", c.s.userAgent())
24920	if c.ifNoneMatch_ != "" {
24921		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
24922	}
24923	var body io.Reader = nil
24924	c.urlParams_.Set("alt", alt)
24925	c.urlParams_.Set("prettyPrint", "false")
24926	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
24927	urls += "?" + c.urlParams_.Encode()
24928	req, err := http.NewRequest("GET", urls, body)
24929	if err != nil {
24930		return nil, err
24931	}
24932	req.Header = reqHeaders
24933	googleapi.Expand(req.URL, map[string]string{
24934		"name": c.name,
24935	})
24936	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24937}
24938
24939// Do executes the "dialogflow.projects.locations.agents.flows.pages.get" call.
24940// Exactly one of *GoogleCloudDialogflowCxV3Page or error will be
24941// non-nil. Any non-2xx status code is an error. Response headers are in
24942// either *GoogleCloudDialogflowCxV3Page.ServerResponse.Header or (if a
24943// response was returned at all) in error.(*googleapi.Error).Header. Use
24944// googleapi.IsNotModified to check whether the returned error was
24945// because http.StatusNotModified was returned.
24946func (c *ProjectsLocationsAgentsFlowsPagesGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3Page, error) {
24947	gensupport.SetOptions(c.urlParams_, opts...)
24948	res, err := c.doRequest("json")
24949	if res != nil && res.StatusCode == http.StatusNotModified {
24950		if res.Body != nil {
24951			res.Body.Close()
24952		}
24953		return nil, &googleapi.Error{
24954			Code:   res.StatusCode,
24955			Header: res.Header,
24956		}
24957	}
24958	if err != nil {
24959		return nil, err
24960	}
24961	defer googleapi.CloseBody(res)
24962	if err := googleapi.CheckResponse(res); err != nil {
24963		return nil, err
24964	}
24965	ret := &GoogleCloudDialogflowCxV3Page{
24966		ServerResponse: googleapi.ServerResponse{
24967			Header:         res.Header,
24968			HTTPStatusCode: res.StatusCode,
24969		},
24970	}
24971	target := &ret
24972	if err := gensupport.DecodeResponse(target, res); err != nil {
24973		return nil, err
24974	}
24975	return ret, nil
24976	// {
24977	//   "description": "Retrieves the specified page.",
24978	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/pages/{pagesId}",
24979	//   "httpMethod": "GET",
24980	//   "id": "dialogflow.projects.locations.agents.flows.pages.get",
24981	//   "parameterOrder": [
24982	//     "name"
24983	//   ],
24984	//   "parameters": {
24985	//     "languageCode": {
24986	//       "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.",
24987	//       "location": "query",
24988	//       "type": "string"
24989	//     },
24990	//     "name": {
24991	//       "description": "Required. The name of the page. Format: `projects//locations//agents//flows//pages/`.",
24992	//       "location": "path",
24993	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+/pages/[^/]+$",
24994	//       "required": true,
24995	//       "type": "string"
24996	//     }
24997	//   },
24998	//   "path": "v3/{+name}",
24999	//   "response": {
25000	//     "$ref": "GoogleCloudDialogflowCxV3Page"
25001	//   },
25002	//   "scopes": [
25003	//     "https://www.googleapis.com/auth/cloud-platform",
25004	//     "https://www.googleapis.com/auth/dialogflow"
25005	//   ]
25006	// }
25007
25008}
25009
25010// method id "dialogflow.projects.locations.agents.flows.pages.list":
25011
25012type ProjectsLocationsAgentsFlowsPagesListCall struct {
25013	s            *Service
25014	parent       string
25015	urlParams_   gensupport.URLParams
25016	ifNoneMatch_ string
25017	ctx_         context.Context
25018	header_      http.Header
25019}
25020
25021// List: Returns the list of all pages in the specified flow.
25022//
25023// - parent: The flow to list all pages for. Format:
25024//   `projects//locations//agents//flows/`.
25025func (r *ProjectsLocationsAgentsFlowsPagesService) List(parent string) *ProjectsLocationsAgentsFlowsPagesListCall {
25026	c := &ProjectsLocationsAgentsFlowsPagesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25027	c.parent = parent
25028	return c
25029}
25030
25031// LanguageCode sets the optional parameter "languageCode": The language
25032// to list pages for. The following fields are language dependent: *
25033// `Page.entry_fulfillment.messages` *
25034// `Page.entry_fulfillment.conditional_cases` *
25035// `Page.event_handlers.trigger_fulfillment.messages` *
25036// `Page.event_handlers.trigger_fulfillment.conditional_cases` *
25037// `Page.form.parameters.fill_behavior.initial_prompt_fulfillment.message
25038// s` *
25039// `Page.form.parameters.fill_behavior.initial_prompt_fulfillment.conditi
25040// onal_cases` *
25041// `Page.form.parameters.fill_behavior.reprompt_event_handlers.messages`
25042// *
25043// `Page.form.parameters.fill_behavior.reprompt_event_handlers.conditiona
25044// l_cases` * `Page.transition_routes.trigger_fulfillment.messages` *
25045// `Page.transition_routes.trigger_fulfillment.conditional_cases` If not
25046// specified, the agent's default language is used. Many languages
25047// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
25048// supported. Note: languages must be enabled in the agent before they
25049// can be used.
25050func (c *ProjectsLocationsAgentsFlowsPagesListCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsFlowsPagesListCall {
25051	c.urlParams_.Set("languageCode", languageCode)
25052	return c
25053}
25054
25055// PageSize sets the optional parameter "pageSize": The maximum number
25056// of items to return in a single page. By default 100 and at most 1000.
25057func (c *ProjectsLocationsAgentsFlowsPagesListCall) PageSize(pageSize int64) *ProjectsLocationsAgentsFlowsPagesListCall {
25058	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
25059	return c
25060}
25061
25062// PageToken sets the optional parameter "pageToken": The
25063// next_page_token value returned from a previous list request.
25064func (c *ProjectsLocationsAgentsFlowsPagesListCall) PageToken(pageToken string) *ProjectsLocationsAgentsFlowsPagesListCall {
25065	c.urlParams_.Set("pageToken", pageToken)
25066	return c
25067}
25068
25069// Fields allows partial responses to be retrieved. See
25070// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25071// for more information.
25072func (c *ProjectsLocationsAgentsFlowsPagesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsPagesListCall {
25073	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25074	return c
25075}
25076
25077// IfNoneMatch sets the optional parameter which makes the operation
25078// fail if the object's ETag matches the given value. This is useful for
25079// getting updates only after the object has changed since the last
25080// request. Use googleapi.IsNotModified to check whether the response
25081// error from Do is the result of In-None-Match.
25082func (c *ProjectsLocationsAgentsFlowsPagesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsFlowsPagesListCall {
25083	c.ifNoneMatch_ = entityTag
25084	return c
25085}
25086
25087// Context sets the context to be used in this call's Do method. Any
25088// pending HTTP request will be aborted if the provided context is
25089// canceled.
25090func (c *ProjectsLocationsAgentsFlowsPagesListCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsPagesListCall {
25091	c.ctx_ = ctx
25092	return c
25093}
25094
25095// Header returns an http.Header that can be modified by the caller to
25096// add HTTP headers to the request.
25097func (c *ProjectsLocationsAgentsFlowsPagesListCall) Header() http.Header {
25098	if c.header_ == nil {
25099		c.header_ = make(http.Header)
25100	}
25101	return c.header_
25102}
25103
25104func (c *ProjectsLocationsAgentsFlowsPagesListCall) doRequest(alt string) (*http.Response, error) {
25105	reqHeaders := make(http.Header)
25106	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
25107	for k, v := range c.header_ {
25108		reqHeaders[k] = v
25109	}
25110	reqHeaders.Set("User-Agent", c.s.userAgent())
25111	if c.ifNoneMatch_ != "" {
25112		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
25113	}
25114	var body io.Reader = nil
25115	c.urlParams_.Set("alt", alt)
25116	c.urlParams_.Set("prettyPrint", "false")
25117	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/pages")
25118	urls += "?" + c.urlParams_.Encode()
25119	req, err := http.NewRequest("GET", urls, body)
25120	if err != nil {
25121		return nil, err
25122	}
25123	req.Header = reqHeaders
25124	googleapi.Expand(req.URL, map[string]string{
25125		"parent": c.parent,
25126	})
25127	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25128}
25129
25130// Do executes the "dialogflow.projects.locations.agents.flows.pages.list" call.
25131// Exactly one of *GoogleCloudDialogflowCxV3ListPagesResponse or error
25132// will be non-nil. Any non-2xx status code is an error. Response
25133// headers are in either
25134// *GoogleCloudDialogflowCxV3ListPagesResponse.ServerResponse.Header or
25135// (if a response was returned at all) in
25136// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
25137// whether the returned error was because http.StatusNotModified was
25138// returned.
25139func (c *ProjectsLocationsAgentsFlowsPagesListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3ListPagesResponse, error) {
25140	gensupport.SetOptions(c.urlParams_, opts...)
25141	res, err := c.doRequest("json")
25142	if res != nil && res.StatusCode == http.StatusNotModified {
25143		if res.Body != nil {
25144			res.Body.Close()
25145		}
25146		return nil, &googleapi.Error{
25147			Code:   res.StatusCode,
25148			Header: res.Header,
25149		}
25150	}
25151	if err != nil {
25152		return nil, err
25153	}
25154	defer googleapi.CloseBody(res)
25155	if err := googleapi.CheckResponse(res); err != nil {
25156		return nil, err
25157	}
25158	ret := &GoogleCloudDialogflowCxV3ListPagesResponse{
25159		ServerResponse: googleapi.ServerResponse{
25160			Header:         res.Header,
25161			HTTPStatusCode: res.StatusCode,
25162		},
25163	}
25164	target := &ret
25165	if err := gensupport.DecodeResponse(target, res); err != nil {
25166		return nil, err
25167	}
25168	return ret, nil
25169	// {
25170	//   "description": "Returns the list of all pages in the specified flow.",
25171	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/pages",
25172	//   "httpMethod": "GET",
25173	//   "id": "dialogflow.projects.locations.agents.flows.pages.list",
25174	//   "parameterOrder": [
25175	//     "parent"
25176	//   ],
25177	//   "parameters": {
25178	//     "languageCode": {
25179	//       "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.",
25180	//       "location": "query",
25181	//       "type": "string"
25182	//     },
25183	//     "pageSize": {
25184	//       "description": "The maximum number of items to return in a single page. By default 100 and at most 1000.",
25185	//       "format": "int32",
25186	//       "location": "query",
25187	//       "type": "integer"
25188	//     },
25189	//     "pageToken": {
25190	//       "description": "The next_page_token value returned from a previous list request.",
25191	//       "location": "query",
25192	//       "type": "string"
25193	//     },
25194	//     "parent": {
25195	//       "description": "Required. The flow to list all pages for. Format: `projects//locations//agents//flows/`.",
25196	//       "location": "path",
25197	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+$",
25198	//       "required": true,
25199	//       "type": "string"
25200	//     }
25201	//   },
25202	//   "path": "v3/{+parent}/pages",
25203	//   "response": {
25204	//     "$ref": "GoogleCloudDialogflowCxV3ListPagesResponse"
25205	//   },
25206	//   "scopes": [
25207	//     "https://www.googleapis.com/auth/cloud-platform",
25208	//     "https://www.googleapis.com/auth/dialogflow"
25209	//   ]
25210	// }
25211
25212}
25213
25214// Pages invokes f for each page of results.
25215// A non-nil error returned from f will halt the iteration.
25216// The provided context supersedes any context provided to the Context method.
25217func (c *ProjectsLocationsAgentsFlowsPagesListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3ListPagesResponse) error) error {
25218	c.ctx_ = ctx
25219	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
25220	for {
25221		x, err := c.Do()
25222		if err != nil {
25223			return err
25224		}
25225		if err := f(x); err != nil {
25226			return err
25227		}
25228		if x.NextPageToken == "" {
25229			return nil
25230		}
25231		c.PageToken(x.NextPageToken)
25232	}
25233}
25234
25235// method id "dialogflow.projects.locations.agents.flows.pages.patch":
25236
25237type ProjectsLocationsAgentsFlowsPagesPatchCall struct {
25238	s                             *Service
25239	nameid                        string
25240	googleclouddialogflowcxv3page *GoogleCloudDialogflowCxV3Page
25241	urlParams_                    gensupport.URLParams
25242	ctx_                          context.Context
25243	header_                       http.Header
25244}
25245
25246// Patch: Updates the specified page. Note: You should always train a
25247// flow prior to sending it queries. See the training documentation
25248// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
25249//
25250// - name: The unique identifier of the page. Required for the
25251//   Pages.UpdatePage method. Pages.CreatePage populates the name
25252//   automatically. Format:
25253//   `projects//locations//agents//flows//pages/`.
25254func (r *ProjectsLocationsAgentsFlowsPagesService) Patch(nameid string, googleclouddialogflowcxv3page *GoogleCloudDialogflowCxV3Page) *ProjectsLocationsAgentsFlowsPagesPatchCall {
25255	c := &ProjectsLocationsAgentsFlowsPagesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25256	c.nameid = nameid
25257	c.googleclouddialogflowcxv3page = googleclouddialogflowcxv3page
25258	return c
25259}
25260
25261// LanguageCode sets the optional parameter "languageCode": The language
25262// of the following fields in `page`: *
25263// `Page.entry_fulfillment.messages` *
25264// `Page.entry_fulfillment.conditional_cases` *
25265// `Page.event_handlers.trigger_fulfillment.messages` *
25266// `Page.event_handlers.trigger_fulfillment.conditional_cases` *
25267// `Page.form.parameters.fill_behavior.initial_prompt_fulfillment.message
25268// s` *
25269// `Page.form.parameters.fill_behavior.initial_prompt_fulfillment.conditi
25270// onal_cases` *
25271// `Page.form.parameters.fill_behavior.reprompt_event_handlers.messages`
25272// *
25273// `Page.form.parameters.fill_behavior.reprompt_event_handlers.conditiona
25274// l_cases` * `Page.transition_routes.trigger_fulfillment.messages` *
25275// `Page.transition_routes.trigger_fulfillment.conditional_cases` If not
25276// specified, the agent's default language is used. Many languages
25277// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
25278// supported. Note: languages must be enabled in the agent before they
25279// can be used.
25280func (c *ProjectsLocationsAgentsFlowsPagesPatchCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsFlowsPagesPatchCall {
25281	c.urlParams_.Set("languageCode", languageCode)
25282	return c
25283}
25284
25285// UpdateMask sets the optional parameter "updateMask": The mask to
25286// control which fields get updated. If the mask is not present, all
25287// fields will be updated.
25288func (c *ProjectsLocationsAgentsFlowsPagesPatchCall) UpdateMask(updateMask string) *ProjectsLocationsAgentsFlowsPagesPatchCall {
25289	c.urlParams_.Set("updateMask", updateMask)
25290	return c
25291}
25292
25293// Fields allows partial responses to be retrieved. See
25294// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25295// for more information.
25296func (c *ProjectsLocationsAgentsFlowsPagesPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsPagesPatchCall {
25297	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25298	return c
25299}
25300
25301// Context sets the context to be used in this call's Do method. Any
25302// pending HTTP request will be aborted if the provided context is
25303// canceled.
25304func (c *ProjectsLocationsAgentsFlowsPagesPatchCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsPagesPatchCall {
25305	c.ctx_ = ctx
25306	return c
25307}
25308
25309// Header returns an http.Header that can be modified by the caller to
25310// add HTTP headers to the request.
25311func (c *ProjectsLocationsAgentsFlowsPagesPatchCall) Header() http.Header {
25312	if c.header_ == nil {
25313		c.header_ = make(http.Header)
25314	}
25315	return c.header_
25316}
25317
25318func (c *ProjectsLocationsAgentsFlowsPagesPatchCall) doRequest(alt string) (*http.Response, error) {
25319	reqHeaders := make(http.Header)
25320	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
25321	for k, v := range c.header_ {
25322		reqHeaders[k] = v
25323	}
25324	reqHeaders.Set("User-Agent", c.s.userAgent())
25325	var body io.Reader = nil
25326	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3page)
25327	if err != nil {
25328		return nil, err
25329	}
25330	reqHeaders.Set("Content-Type", "application/json")
25331	c.urlParams_.Set("alt", alt)
25332	c.urlParams_.Set("prettyPrint", "false")
25333	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
25334	urls += "?" + c.urlParams_.Encode()
25335	req, err := http.NewRequest("PATCH", urls, body)
25336	if err != nil {
25337		return nil, err
25338	}
25339	req.Header = reqHeaders
25340	googleapi.Expand(req.URL, map[string]string{
25341		"name": c.nameid,
25342	})
25343	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25344}
25345
25346// Do executes the "dialogflow.projects.locations.agents.flows.pages.patch" call.
25347// Exactly one of *GoogleCloudDialogflowCxV3Page or error will be
25348// non-nil. Any non-2xx status code is an error. Response headers are in
25349// either *GoogleCloudDialogflowCxV3Page.ServerResponse.Header or (if a
25350// response was returned at all) in error.(*googleapi.Error).Header. Use
25351// googleapi.IsNotModified to check whether the returned error was
25352// because http.StatusNotModified was returned.
25353func (c *ProjectsLocationsAgentsFlowsPagesPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3Page, error) {
25354	gensupport.SetOptions(c.urlParams_, opts...)
25355	res, err := c.doRequest("json")
25356	if res != nil && res.StatusCode == http.StatusNotModified {
25357		if res.Body != nil {
25358			res.Body.Close()
25359		}
25360		return nil, &googleapi.Error{
25361			Code:   res.StatusCode,
25362			Header: res.Header,
25363		}
25364	}
25365	if err != nil {
25366		return nil, err
25367	}
25368	defer googleapi.CloseBody(res)
25369	if err := googleapi.CheckResponse(res); err != nil {
25370		return nil, err
25371	}
25372	ret := &GoogleCloudDialogflowCxV3Page{
25373		ServerResponse: googleapi.ServerResponse{
25374			Header:         res.Header,
25375			HTTPStatusCode: res.StatusCode,
25376		},
25377	}
25378	target := &ret
25379	if err := gensupport.DecodeResponse(target, res); err != nil {
25380		return nil, err
25381	}
25382	return ret, nil
25383	// {
25384	//   "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).",
25385	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/pages/{pagesId}",
25386	//   "httpMethod": "PATCH",
25387	//   "id": "dialogflow.projects.locations.agents.flows.pages.patch",
25388	//   "parameterOrder": [
25389	//     "name"
25390	//   ],
25391	//   "parameters": {
25392	//     "languageCode": {
25393	//       "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.",
25394	//       "location": "query",
25395	//       "type": "string"
25396	//     },
25397	//     "name": {
25398	//       "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/`.",
25399	//       "location": "path",
25400	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+/pages/[^/]+$",
25401	//       "required": true,
25402	//       "type": "string"
25403	//     },
25404	//     "updateMask": {
25405	//       "description": "The mask to control which fields get updated. If the mask is not present, all fields will be updated.",
25406	//       "format": "google-fieldmask",
25407	//       "location": "query",
25408	//       "type": "string"
25409	//     }
25410	//   },
25411	//   "path": "v3/{+name}",
25412	//   "request": {
25413	//     "$ref": "GoogleCloudDialogflowCxV3Page"
25414	//   },
25415	//   "response": {
25416	//     "$ref": "GoogleCloudDialogflowCxV3Page"
25417	//   },
25418	//   "scopes": [
25419	//     "https://www.googleapis.com/auth/cloud-platform",
25420	//     "https://www.googleapis.com/auth/dialogflow"
25421	//   ]
25422	// }
25423
25424}
25425
25426// method id "dialogflow.projects.locations.agents.flows.transitionRouteGroups.create":
25427
25428type ProjectsLocationsAgentsFlowsTransitionRouteGroupsCreateCall struct {
25429	s                                             *Service
25430	parent                                        string
25431	googleclouddialogflowcxv3transitionroutegroup *GoogleCloudDialogflowCxV3TransitionRouteGroup
25432	urlParams_                                    gensupport.URLParams
25433	ctx_                                          context.Context
25434	header_                                       http.Header
25435}
25436
25437// Create: Creates an TransitionRouteGroup in the specified flow. Note:
25438// You should always train a flow prior to sending it queries. See the
25439// training documentation
25440// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
25441//
25442// - parent: The flow to create an TransitionRouteGroup for. Format:
25443//   `projects//locations//agents//flows/`.
25444func (r *ProjectsLocationsAgentsFlowsTransitionRouteGroupsService) Create(parent string, googleclouddialogflowcxv3transitionroutegroup *GoogleCloudDialogflowCxV3TransitionRouteGroup) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsCreateCall {
25445	c := &ProjectsLocationsAgentsFlowsTransitionRouteGroupsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25446	c.parent = parent
25447	c.googleclouddialogflowcxv3transitionroutegroup = googleclouddialogflowcxv3transitionroutegroup
25448	return c
25449}
25450
25451// LanguageCode sets the optional parameter "languageCode": The language
25452// of the following fields in `TransitionRouteGroup`: *
25453// `TransitionRouteGroup.transition_routes.trigger_fulfillment.messages`
25454// *
25455// `TransitionRouteGroup.transition_routes.trigger_fulfillment.conditiona
25456// l_cases` If not specified, the agent's default language is used. Many
25457// languages
25458// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
25459// supported. Note: languages must be enabled in the agent before they
25460// can be used.
25461func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsCreateCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsCreateCall {
25462	c.urlParams_.Set("languageCode", languageCode)
25463	return c
25464}
25465
25466// Fields allows partial responses to be retrieved. See
25467// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25468// for more information.
25469func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsCreateCall {
25470	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25471	return c
25472}
25473
25474// Context sets the context to be used in this call's Do method. Any
25475// pending HTTP request will be aborted if the provided context is
25476// canceled.
25477func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsCreateCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsCreateCall {
25478	c.ctx_ = ctx
25479	return c
25480}
25481
25482// Header returns an http.Header that can be modified by the caller to
25483// add HTTP headers to the request.
25484func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsCreateCall) Header() http.Header {
25485	if c.header_ == nil {
25486		c.header_ = make(http.Header)
25487	}
25488	return c.header_
25489}
25490
25491func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsCreateCall) doRequest(alt string) (*http.Response, error) {
25492	reqHeaders := make(http.Header)
25493	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
25494	for k, v := range c.header_ {
25495		reqHeaders[k] = v
25496	}
25497	reqHeaders.Set("User-Agent", c.s.userAgent())
25498	var body io.Reader = nil
25499	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3transitionroutegroup)
25500	if err != nil {
25501		return nil, err
25502	}
25503	reqHeaders.Set("Content-Type", "application/json")
25504	c.urlParams_.Set("alt", alt)
25505	c.urlParams_.Set("prettyPrint", "false")
25506	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/transitionRouteGroups")
25507	urls += "?" + c.urlParams_.Encode()
25508	req, err := http.NewRequest("POST", urls, body)
25509	if err != nil {
25510		return nil, err
25511	}
25512	req.Header = reqHeaders
25513	googleapi.Expand(req.URL, map[string]string{
25514		"parent": c.parent,
25515	})
25516	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25517}
25518
25519// Do executes the "dialogflow.projects.locations.agents.flows.transitionRouteGroups.create" call.
25520// Exactly one of *GoogleCloudDialogflowCxV3TransitionRouteGroup or
25521// error will be non-nil. Any non-2xx status code is an error. Response
25522// headers are in either
25523// *GoogleCloudDialogflowCxV3TransitionRouteGroup.ServerResponse.Header
25524// or (if a response was returned at all) in
25525// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
25526// whether the returned error was because http.StatusNotModified was
25527// returned.
25528func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3TransitionRouteGroup, error) {
25529	gensupport.SetOptions(c.urlParams_, opts...)
25530	res, err := c.doRequest("json")
25531	if res != nil && res.StatusCode == http.StatusNotModified {
25532		if res.Body != nil {
25533			res.Body.Close()
25534		}
25535		return nil, &googleapi.Error{
25536			Code:   res.StatusCode,
25537			Header: res.Header,
25538		}
25539	}
25540	if err != nil {
25541		return nil, err
25542	}
25543	defer googleapi.CloseBody(res)
25544	if err := googleapi.CheckResponse(res); err != nil {
25545		return nil, err
25546	}
25547	ret := &GoogleCloudDialogflowCxV3TransitionRouteGroup{
25548		ServerResponse: googleapi.ServerResponse{
25549			Header:         res.Header,
25550			HTTPStatusCode: res.StatusCode,
25551		},
25552	}
25553	target := &ret
25554	if err := gensupport.DecodeResponse(target, res); err != nil {
25555		return nil, err
25556	}
25557	return ret, nil
25558	// {
25559	//   "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).",
25560	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/transitionRouteGroups",
25561	//   "httpMethod": "POST",
25562	//   "id": "dialogflow.projects.locations.agents.flows.transitionRouteGroups.create",
25563	//   "parameterOrder": [
25564	//     "parent"
25565	//   ],
25566	//   "parameters": {
25567	//     "languageCode": {
25568	//       "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.",
25569	//       "location": "query",
25570	//       "type": "string"
25571	//     },
25572	//     "parent": {
25573	//       "description": "Required. The flow to create an TransitionRouteGroup for. Format: `projects//locations//agents//flows/`.",
25574	//       "location": "path",
25575	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+$",
25576	//       "required": true,
25577	//       "type": "string"
25578	//     }
25579	//   },
25580	//   "path": "v3/{+parent}/transitionRouteGroups",
25581	//   "request": {
25582	//     "$ref": "GoogleCloudDialogflowCxV3TransitionRouteGroup"
25583	//   },
25584	//   "response": {
25585	//     "$ref": "GoogleCloudDialogflowCxV3TransitionRouteGroup"
25586	//   },
25587	//   "scopes": [
25588	//     "https://www.googleapis.com/auth/cloud-platform",
25589	//     "https://www.googleapis.com/auth/dialogflow"
25590	//   ]
25591	// }
25592
25593}
25594
25595// method id "dialogflow.projects.locations.agents.flows.transitionRouteGroups.delete":
25596
25597type ProjectsLocationsAgentsFlowsTransitionRouteGroupsDeleteCall struct {
25598	s          *Service
25599	name       string
25600	urlParams_ gensupport.URLParams
25601	ctx_       context.Context
25602	header_    http.Header
25603}
25604
25605// Delete: Deletes the specified TransitionRouteGroup. Note: You should
25606// always train a flow prior to sending it queries. See the training
25607// documentation
25608// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
25609//
25610// - name: The name of the TransitionRouteGroup to delete. Format:
25611//   `projects//locations//agents//flows//transitionRouteGroups/`.
25612func (r *ProjectsLocationsAgentsFlowsTransitionRouteGroupsService) Delete(name string) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsDeleteCall {
25613	c := &ProjectsLocationsAgentsFlowsTransitionRouteGroupsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25614	c.name = name
25615	return c
25616}
25617
25618// Force sets the optional parameter "force": This field has no effect
25619// for transition route group that no page is using. If the transition
25620// route group is referenced by any page: * If `force` is set to false,
25621// an error will be returned with message indicating pages that
25622// reference the transition route group. * If `force` is set to true,
25623// Dialogflow will remove the transition route group, as well as any
25624// reference to it.
25625func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsDeleteCall) Force(force bool) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsDeleteCall {
25626	c.urlParams_.Set("force", fmt.Sprint(force))
25627	return c
25628}
25629
25630// Fields allows partial responses to be retrieved. See
25631// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25632// for more information.
25633func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsDeleteCall {
25634	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25635	return c
25636}
25637
25638// Context sets the context to be used in this call's Do method. Any
25639// pending HTTP request will be aborted if the provided context is
25640// canceled.
25641func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsDeleteCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsDeleteCall {
25642	c.ctx_ = ctx
25643	return c
25644}
25645
25646// Header returns an http.Header that can be modified by the caller to
25647// add HTTP headers to the request.
25648func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsDeleteCall) Header() http.Header {
25649	if c.header_ == nil {
25650		c.header_ = make(http.Header)
25651	}
25652	return c.header_
25653}
25654
25655func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsDeleteCall) doRequest(alt string) (*http.Response, error) {
25656	reqHeaders := make(http.Header)
25657	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
25658	for k, v := range c.header_ {
25659		reqHeaders[k] = v
25660	}
25661	reqHeaders.Set("User-Agent", c.s.userAgent())
25662	var body io.Reader = nil
25663	c.urlParams_.Set("alt", alt)
25664	c.urlParams_.Set("prettyPrint", "false")
25665	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
25666	urls += "?" + c.urlParams_.Encode()
25667	req, err := http.NewRequest("DELETE", urls, body)
25668	if err != nil {
25669		return nil, err
25670	}
25671	req.Header = reqHeaders
25672	googleapi.Expand(req.URL, map[string]string{
25673		"name": c.name,
25674	})
25675	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25676}
25677
25678// Do executes the "dialogflow.projects.locations.agents.flows.transitionRouteGroups.delete" call.
25679// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
25680// non-2xx status code is an error. Response headers are in either
25681// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
25682// returned at all) in error.(*googleapi.Error).Header. Use
25683// googleapi.IsNotModified to check whether the returned error was
25684// because http.StatusNotModified was returned.
25685func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
25686	gensupport.SetOptions(c.urlParams_, opts...)
25687	res, err := c.doRequest("json")
25688	if res != nil && res.StatusCode == http.StatusNotModified {
25689		if res.Body != nil {
25690			res.Body.Close()
25691		}
25692		return nil, &googleapi.Error{
25693			Code:   res.StatusCode,
25694			Header: res.Header,
25695		}
25696	}
25697	if err != nil {
25698		return nil, err
25699	}
25700	defer googleapi.CloseBody(res)
25701	if err := googleapi.CheckResponse(res); err != nil {
25702		return nil, err
25703	}
25704	ret := &GoogleProtobufEmpty{
25705		ServerResponse: googleapi.ServerResponse{
25706			Header:         res.Header,
25707			HTTPStatusCode: res.StatusCode,
25708		},
25709	}
25710	target := &ret
25711	if err := gensupport.DecodeResponse(target, res); err != nil {
25712		return nil, err
25713	}
25714	return ret, nil
25715	// {
25716	//   "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).",
25717	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/transitionRouteGroups/{transitionRouteGroupsId}",
25718	//   "httpMethod": "DELETE",
25719	//   "id": "dialogflow.projects.locations.agents.flows.transitionRouteGroups.delete",
25720	//   "parameterOrder": [
25721	//     "name"
25722	//   ],
25723	//   "parameters": {
25724	//     "force": {
25725	//       "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.",
25726	//       "location": "query",
25727	//       "type": "boolean"
25728	//     },
25729	//     "name": {
25730	//       "description": "Required. The name of the TransitionRouteGroup to delete. Format: `projects//locations//agents//flows//transitionRouteGroups/`.",
25731	//       "location": "path",
25732	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+/transitionRouteGroups/[^/]+$",
25733	//       "required": true,
25734	//       "type": "string"
25735	//     }
25736	//   },
25737	//   "path": "v3/{+name}",
25738	//   "response": {
25739	//     "$ref": "GoogleProtobufEmpty"
25740	//   },
25741	//   "scopes": [
25742	//     "https://www.googleapis.com/auth/cloud-platform",
25743	//     "https://www.googleapis.com/auth/dialogflow"
25744	//   ]
25745	// }
25746
25747}
25748
25749// method id "dialogflow.projects.locations.agents.flows.transitionRouteGroups.get":
25750
25751type ProjectsLocationsAgentsFlowsTransitionRouteGroupsGetCall struct {
25752	s            *Service
25753	name         string
25754	urlParams_   gensupport.URLParams
25755	ifNoneMatch_ string
25756	ctx_         context.Context
25757	header_      http.Header
25758}
25759
25760// Get: Retrieves the specified TransitionRouteGroup.
25761//
25762// - name: The name of the TransitionRouteGroup. Format:
25763//   `projects//locations//agents//flows//transitionRouteGroups/`.
25764func (r *ProjectsLocationsAgentsFlowsTransitionRouteGroupsService) Get(name string) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsGetCall {
25765	c := &ProjectsLocationsAgentsFlowsTransitionRouteGroupsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25766	c.name = name
25767	return c
25768}
25769
25770// LanguageCode sets the optional parameter "languageCode": The language
25771// to retrieve the transition route group for. The following fields are
25772// language dependent: *
25773// `TransitionRouteGroup.transition_routes.trigger_fulfillment.messages`
25774// *
25775// `TransitionRouteGroup.transition_routes.trigger_fulfillment.conditiona
25776// l_cases` If not specified, the agent's default language is used. Many
25777// languages
25778// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
25779// supported. Note: languages must be enabled in the agent before they
25780// can be used.
25781func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsGetCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsGetCall {
25782	c.urlParams_.Set("languageCode", languageCode)
25783	return c
25784}
25785
25786// Fields allows partial responses to be retrieved. See
25787// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25788// for more information.
25789func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsGetCall {
25790	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25791	return c
25792}
25793
25794// IfNoneMatch sets the optional parameter which makes the operation
25795// fail if the object's ETag matches the given value. This is useful for
25796// getting updates only after the object has changed since the last
25797// request. Use googleapi.IsNotModified to check whether the response
25798// error from Do is the result of In-None-Match.
25799func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsGetCall {
25800	c.ifNoneMatch_ = entityTag
25801	return c
25802}
25803
25804// Context sets the context to be used in this call's Do method. Any
25805// pending HTTP request will be aborted if the provided context is
25806// canceled.
25807func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsGetCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsGetCall {
25808	c.ctx_ = ctx
25809	return c
25810}
25811
25812// Header returns an http.Header that can be modified by the caller to
25813// add HTTP headers to the request.
25814func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsGetCall) Header() http.Header {
25815	if c.header_ == nil {
25816		c.header_ = make(http.Header)
25817	}
25818	return c.header_
25819}
25820
25821func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsGetCall) doRequest(alt string) (*http.Response, error) {
25822	reqHeaders := make(http.Header)
25823	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
25824	for k, v := range c.header_ {
25825		reqHeaders[k] = v
25826	}
25827	reqHeaders.Set("User-Agent", c.s.userAgent())
25828	if c.ifNoneMatch_ != "" {
25829		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
25830	}
25831	var body io.Reader = nil
25832	c.urlParams_.Set("alt", alt)
25833	c.urlParams_.Set("prettyPrint", "false")
25834	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
25835	urls += "?" + c.urlParams_.Encode()
25836	req, err := http.NewRequest("GET", urls, body)
25837	if err != nil {
25838		return nil, err
25839	}
25840	req.Header = reqHeaders
25841	googleapi.Expand(req.URL, map[string]string{
25842		"name": c.name,
25843	})
25844	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25845}
25846
25847// Do executes the "dialogflow.projects.locations.agents.flows.transitionRouteGroups.get" call.
25848// Exactly one of *GoogleCloudDialogflowCxV3TransitionRouteGroup or
25849// error will be non-nil. Any non-2xx status code is an error. Response
25850// headers are in either
25851// *GoogleCloudDialogflowCxV3TransitionRouteGroup.ServerResponse.Header
25852// or (if a response was returned at all) in
25853// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
25854// whether the returned error was because http.StatusNotModified was
25855// returned.
25856func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3TransitionRouteGroup, error) {
25857	gensupport.SetOptions(c.urlParams_, opts...)
25858	res, err := c.doRequest("json")
25859	if res != nil && res.StatusCode == http.StatusNotModified {
25860		if res.Body != nil {
25861			res.Body.Close()
25862		}
25863		return nil, &googleapi.Error{
25864			Code:   res.StatusCode,
25865			Header: res.Header,
25866		}
25867	}
25868	if err != nil {
25869		return nil, err
25870	}
25871	defer googleapi.CloseBody(res)
25872	if err := googleapi.CheckResponse(res); err != nil {
25873		return nil, err
25874	}
25875	ret := &GoogleCloudDialogflowCxV3TransitionRouteGroup{
25876		ServerResponse: googleapi.ServerResponse{
25877			Header:         res.Header,
25878			HTTPStatusCode: res.StatusCode,
25879		},
25880	}
25881	target := &ret
25882	if err := gensupport.DecodeResponse(target, res); err != nil {
25883		return nil, err
25884	}
25885	return ret, nil
25886	// {
25887	//   "description": "Retrieves the specified TransitionRouteGroup.",
25888	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/transitionRouteGroups/{transitionRouteGroupsId}",
25889	//   "httpMethod": "GET",
25890	//   "id": "dialogflow.projects.locations.agents.flows.transitionRouteGroups.get",
25891	//   "parameterOrder": [
25892	//     "name"
25893	//   ],
25894	//   "parameters": {
25895	//     "languageCode": {
25896	//       "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.",
25897	//       "location": "query",
25898	//       "type": "string"
25899	//     },
25900	//     "name": {
25901	//       "description": "Required. The name of the TransitionRouteGroup. Format: `projects//locations//agents//flows//transitionRouteGroups/`.",
25902	//       "location": "path",
25903	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+/transitionRouteGroups/[^/]+$",
25904	//       "required": true,
25905	//       "type": "string"
25906	//     }
25907	//   },
25908	//   "path": "v3/{+name}",
25909	//   "response": {
25910	//     "$ref": "GoogleCloudDialogflowCxV3TransitionRouteGroup"
25911	//   },
25912	//   "scopes": [
25913	//     "https://www.googleapis.com/auth/cloud-platform",
25914	//     "https://www.googleapis.com/auth/dialogflow"
25915	//   ]
25916	// }
25917
25918}
25919
25920// method id "dialogflow.projects.locations.agents.flows.transitionRouteGroups.list":
25921
25922type ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall struct {
25923	s            *Service
25924	parent       string
25925	urlParams_   gensupport.URLParams
25926	ifNoneMatch_ string
25927	ctx_         context.Context
25928	header_      http.Header
25929}
25930
25931// List: Returns the list of all transition route groups in the
25932// specified flow.
25933//
25934// - parent: The flow to list all transition route groups for. Format:
25935//   `projects//locations//agents//flows/`.
25936func (r *ProjectsLocationsAgentsFlowsTransitionRouteGroupsService) List(parent string) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall {
25937	c := &ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25938	c.parent = parent
25939	return c
25940}
25941
25942// LanguageCode sets the optional parameter "languageCode": The language
25943// to list transition route groups for. The following fields are
25944// language dependent: *
25945// `TransitionRouteGroup.transition_routes.trigger_fulfillment.messages`
25946// *
25947// `TransitionRouteGroup.transition_routes.trigger_fulfillment.conditiona
25948// l_cases` If not specified, the agent's default language is used. Many
25949// languages
25950// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
25951// supported. Note: languages must be enabled in the agent before they
25952// can be used.
25953func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall {
25954	c.urlParams_.Set("languageCode", languageCode)
25955	return c
25956}
25957
25958// PageSize sets the optional parameter "pageSize": The maximum number
25959// of items to return in a single page. By default 100 and at most 1000.
25960func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall) PageSize(pageSize int64) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall {
25961	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
25962	return c
25963}
25964
25965// PageToken sets the optional parameter "pageToken": The
25966// next_page_token value returned from a previous list request.
25967func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall) PageToken(pageToken string) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall {
25968	c.urlParams_.Set("pageToken", pageToken)
25969	return c
25970}
25971
25972// Fields allows partial responses to be retrieved. See
25973// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25974// for more information.
25975func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall {
25976	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25977	return c
25978}
25979
25980// IfNoneMatch sets the optional parameter which makes the operation
25981// fail if the object's ETag matches the given value. This is useful for
25982// getting updates only after the object has changed since the last
25983// request. Use googleapi.IsNotModified to check whether the response
25984// error from Do is the result of In-None-Match.
25985func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall {
25986	c.ifNoneMatch_ = entityTag
25987	return c
25988}
25989
25990// Context sets the context to be used in this call's Do method. Any
25991// pending HTTP request will be aborted if the provided context is
25992// canceled.
25993func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall {
25994	c.ctx_ = ctx
25995	return c
25996}
25997
25998// Header returns an http.Header that can be modified by the caller to
25999// add HTTP headers to the request.
26000func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall) Header() http.Header {
26001	if c.header_ == nil {
26002		c.header_ = make(http.Header)
26003	}
26004	return c.header_
26005}
26006
26007func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall) doRequest(alt string) (*http.Response, error) {
26008	reqHeaders := make(http.Header)
26009	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
26010	for k, v := range c.header_ {
26011		reqHeaders[k] = v
26012	}
26013	reqHeaders.Set("User-Agent", c.s.userAgent())
26014	if c.ifNoneMatch_ != "" {
26015		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
26016	}
26017	var body io.Reader = nil
26018	c.urlParams_.Set("alt", alt)
26019	c.urlParams_.Set("prettyPrint", "false")
26020	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/transitionRouteGroups")
26021	urls += "?" + c.urlParams_.Encode()
26022	req, err := http.NewRequest("GET", urls, body)
26023	if err != nil {
26024		return nil, err
26025	}
26026	req.Header = reqHeaders
26027	googleapi.Expand(req.URL, map[string]string{
26028		"parent": c.parent,
26029	})
26030	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26031}
26032
26033// Do executes the "dialogflow.projects.locations.agents.flows.transitionRouteGroups.list" call.
26034// Exactly one of
26035// *GoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse or error
26036// will be non-nil. Any non-2xx status code is an error. Response
26037// headers are in either
26038// *GoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse.ServerResp
26039// onse.Header or (if a response was returned at all) in
26040// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
26041// whether the returned error was because http.StatusNotModified was
26042// returned.
26043func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse, error) {
26044	gensupport.SetOptions(c.urlParams_, opts...)
26045	res, err := c.doRequest("json")
26046	if res != nil && res.StatusCode == http.StatusNotModified {
26047		if res.Body != nil {
26048			res.Body.Close()
26049		}
26050		return nil, &googleapi.Error{
26051			Code:   res.StatusCode,
26052			Header: res.Header,
26053		}
26054	}
26055	if err != nil {
26056		return nil, err
26057	}
26058	defer googleapi.CloseBody(res)
26059	if err := googleapi.CheckResponse(res); err != nil {
26060		return nil, err
26061	}
26062	ret := &GoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse{
26063		ServerResponse: googleapi.ServerResponse{
26064			Header:         res.Header,
26065			HTTPStatusCode: res.StatusCode,
26066		},
26067	}
26068	target := &ret
26069	if err := gensupport.DecodeResponse(target, res); err != nil {
26070		return nil, err
26071	}
26072	return ret, nil
26073	// {
26074	//   "description": "Returns the list of all transition route groups in the specified flow.",
26075	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/transitionRouteGroups",
26076	//   "httpMethod": "GET",
26077	//   "id": "dialogflow.projects.locations.agents.flows.transitionRouteGroups.list",
26078	//   "parameterOrder": [
26079	//     "parent"
26080	//   ],
26081	//   "parameters": {
26082	//     "languageCode": {
26083	//       "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.",
26084	//       "location": "query",
26085	//       "type": "string"
26086	//     },
26087	//     "pageSize": {
26088	//       "description": "The maximum number of items to return in a single page. By default 100 and at most 1000.",
26089	//       "format": "int32",
26090	//       "location": "query",
26091	//       "type": "integer"
26092	//     },
26093	//     "pageToken": {
26094	//       "description": "The next_page_token value returned from a previous list request.",
26095	//       "location": "query",
26096	//       "type": "string"
26097	//     },
26098	//     "parent": {
26099	//       "description": "Required. The flow to list all transition route groups for. Format: `projects//locations//agents//flows/`.",
26100	//       "location": "path",
26101	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+$",
26102	//       "required": true,
26103	//       "type": "string"
26104	//     }
26105	//   },
26106	//   "path": "v3/{+parent}/transitionRouteGroups",
26107	//   "response": {
26108	//     "$ref": "GoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse"
26109	//   },
26110	//   "scopes": [
26111	//     "https://www.googleapis.com/auth/cloud-platform",
26112	//     "https://www.googleapis.com/auth/dialogflow"
26113	//   ]
26114	// }
26115
26116}
26117
26118// Pages invokes f for each page of results.
26119// A non-nil error returned from f will halt the iteration.
26120// The provided context supersedes any context provided to the Context method.
26121func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse) error) error {
26122	c.ctx_ = ctx
26123	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
26124	for {
26125		x, err := c.Do()
26126		if err != nil {
26127			return err
26128		}
26129		if err := f(x); err != nil {
26130			return err
26131		}
26132		if x.NextPageToken == "" {
26133			return nil
26134		}
26135		c.PageToken(x.NextPageToken)
26136	}
26137}
26138
26139// method id "dialogflow.projects.locations.agents.flows.transitionRouteGroups.patch":
26140
26141type ProjectsLocationsAgentsFlowsTransitionRouteGroupsPatchCall struct {
26142	s                                             *Service
26143	nameid                                        string
26144	googleclouddialogflowcxv3transitionroutegroup *GoogleCloudDialogflowCxV3TransitionRouteGroup
26145	urlParams_                                    gensupport.URLParams
26146	ctx_                                          context.Context
26147	header_                                       http.Header
26148}
26149
26150// Patch: Updates the specified TransitionRouteGroup. Note: You should
26151// always train a flow prior to sending it queries. See the training
26152// documentation
26153// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
26154//
26155// - name: The unique identifier of the transition route group.
26156//   TransitionRouteGroups.CreateTransitionRouteGroup populates the name
26157//   automatically. Format:
26158//   `projects//locations//agents//flows//transitionRouteGroups/`.
26159func (r *ProjectsLocationsAgentsFlowsTransitionRouteGroupsService) Patch(nameid string, googleclouddialogflowcxv3transitionroutegroup *GoogleCloudDialogflowCxV3TransitionRouteGroup) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsPatchCall {
26160	c := &ProjectsLocationsAgentsFlowsTransitionRouteGroupsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26161	c.nameid = nameid
26162	c.googleclouddialogflowcxv3transitionroutegroup = googleclouddialogflowcxv3transitionroutegroup
26163	return c
26164}
26165
26166// LanguageCode sets the optional parameter "languageCode": The language
26167// of the following fields in `TransitionRouteGroup`: *
26168// `TransitionRouteGroup.transition_routes.trigger_fulfillment.messages`
26169// *
26170// `TransitionRouteGroup.transition_routes.trigger_fulfillment.conditiona
26171// l_cases` If not specified, the agent's default language is used. Many
26172// languages
26173// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
26174// supported. Note: languages must be enabled in the agent before they
26175// can be used.
26176func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsPatchCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsPatchCall {
26177	c.urlParams_.Set("languageCode", languageCode)
26178	return c
26179}
26180
26181// UpdateMask sets the optional parameter "updateMask": The mask to
26182// control which fields get updated.
26183func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsPatchCall {
26184	c.urlParams_.Set("updateMask", updateMask)
26185	return c
26186}
26187
26188// Fields allows partial responses to be retrieved. See
26189// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26190// for more information.
26191func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsPatchCall {
26192	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26193	return c
26194}
26195
26196// Context sets the context to be used in this call's Do method. Any
26197// pending HTTP request will be aborted if the provided context is
26198// canceled.
26199func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsPatchCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsPatchCall {
26200	c.ctx_ = ctx
26201	return c
26202}
26203
26204// Header returns an http.Header that can be modified by the caller to
26205// add HTTP headers to the request.
26206func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsPatchCall) Header() http.Header {
26207	if c.header_ == nil {
26208		c.header_ = make(http.Header)
26209	}
26210	return c.header_
26211}
26212
26213func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsPatchCall) doRequest(alt string) (*http.Response, error) {
26214	reqHeaders := make(http.Header)
26215	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
26216	for k, v := range c.header_ {
26217		reqHeaders[k] = v
26218	}
26219	reqHeaders.Set("User-Agent", c.s.userAgent())
26220	var body io.Reader = nil
26221	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3transitionroutegroup)
26222	if err != nil {
26223		return nil, err
26224	}
26225	reqHeaders.Set("Content-Type", "application/json")
26226	c.urlParams_.Set("alt", alt)
26227	c.urlParams_.Set("prettyPrint", "false")
26228	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
26229	urls += "?" + c.urlParams_.Encode()
26230	req, err := http.NewRequest("PATCH", urls, body)
26231	if err != nil {
26232		return nil, err
26233	}
26234	req.Header = reqHeaders
26235	googleapi.Expand(req.URL, map[string]string{
26236		"name": c.nameid,
26237	})
26238	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26239}
26240
26241// Do executes the "dialogflow.projects.locations.agents.flows.transitionRouteGroups.patch" call.
26242// Exactly one of *GoogleCloudDialogflowCxV3TransitionRouteGroup or
26243// error will be non-nil. Any non-2xx status code is an error. Response
26244// headers are in either
26245// *GoogleCloudDialogflowCxV3TransitionRouteGroup.ServerResponse.Header
26246// or (if a response was returned at all) in
26247// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
26248// whether the returned error was because http.StatusNotModified was
26249// returned.
26250func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3TransitionRouteGroup, error) {
26251	gensupport.SetOptions(c.urlParams_, opts...)
26252	res, err := c.doRequest("json")
26253	if res != nil && res.StatusCode == http.StatusNotModified {
26254		if res.Body != nil {
26255			res.Body.Close()
26256		}
26257		return nil, &googleapi.Error{
26258			Code:   res.StatusCode,
26259			Header: res.Header,
26260		}
26261	}
26262	if err != nil {
26263		return nil, err
26264	}
26265	defer googleapi.CloseBody(res)
26266	if err := googleapi.CheckResponse(res); err != nil {
26267		return nil, err
26268	}
26269	ret := &GoogleCloudDialogflowCxV3TransitionRouteGroup{
26270		ServerResponse: googleapi.ServerResponse{
26271			Header:         res.Header,
26272			HTTPStatusCode: res.StatusCode,
26273		},
26274	}
26275	target := &ret
26276	if err := gensupport.DecodeResponse(target, res); err != nil {
26277		return nil, err
26278	}
26279	return ret, nil
26280	// {
26281	//   "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).",
26282	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/transitionRouteGroups/{transitionRouteGroupsId}",
26283	//   "httpMethod": "PATCH",
26284	//   "id": "dialogflow.projects.locations.agents.flows.transitionRouteGroups.patch",
26285	//   "parameterOrder": [
26286	//     "name"
26287	//   ],
26288	//   "parameters": {
26289	//     "languageCode": {
26290	//       "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.",
26291	//       "location": "query",
26292	//       "type": "string"
26293	//     },
26294	//     "name": {
26295	//       "description": "The unique identifier of the transition route group. TransitionRouteGroups.CreateTransitionRouteGroup populates the name automatically. Format: `projects//locations//agents//flows//transitionRouteGroups/`.",
26296	//       "location": "path",
26297	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+/transitionRouteGroups/[^/]+$",
26298	//       "required": true,
26299	//       "type": "string"
26300	//     },
26301	//     "updateMask": {
26302	//       "description": "The mask to control which fields get updated.",
26303	//       "format": "google-fieldmask",
26304	//       "location": "query",
26305	//       "type": "string"
26306	//     }
26307	//   },
26308	//   "path": "v3/{+name}",
26309	//   "request": {
26310	//     "$ref": "GoogleCloudDialogflowCxV3TransitionRouteGroup"
26311	//   },
26312	//   "response": {
26313	//     "$ref": "GoogleCloudDialogflowCxV3TransitionRouteGroup"
26314	//   },
26315	//   "scopes": [
26316	//     "https://www.googleapis.com/auth/cloud-platform",
26317	//     "https://www.googleapis.com/auth/dialogflow"
26318	//   ]
26319	// }
26320
26321}
26322
26323// method id "dialogflow.projects.locations.agents.flows.versions.create":
26324
26325type ProjectsLocationsAgentsFlowsVersionsCreateCall struct {
26326	s                                *Service
26327	parent                           string
26328	googleclouddialogflowcxv3version *GoogleCloudDialogflowCxV3Version
26329	urlParams_                       gensupport.URLParams
26330	ctx_                             context.Context
26331	header_                          http.Header
26332}
26333
26334// Create: Creates a Version in the specified Flow.
26335//
26336// - parent: The Flow to create an Version for. Format:
26337//   `projects//locations//agents//flows/`.
26338func (r *ProjectsLocationsAgentsFlowsVersionsService) Create(parent string, googleclouddialogflowcxv3version *GoogleCloudDialogflowCxV3Version) *ProjectsLocationsAgentsFlowsVersionsCreateCall {
26339	c := &ProjectsLocationsAgentsFlowsVersionsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26340	c.parent = parent
26341	c.googleclouddialogflowcxv3version = googleclouddialogflowcxv3version
26342	return c
26343}
26344
26345// Fields allows partial responses to be retrieved. See
26346// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26347// for more information.
26348func (c *ProjectsLocationsAgentsFlowsVersionsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsVersionsCreateCall {
26349	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26350	return c
26351}
26352
26353// Context sets the context to be used in this call's Do method. Any
26354// pending HTTP request will be aborted if the provided context is
26355// canceled.
26356func (c *ProjectsLocationsAgentsFlowsVersionsCreateCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsVersionsCreateCall {
26357	c.ctx_ = ctx
26358	return c
26359}
26360
26361// Header returns an http.Header that can be modified by the caller to
26362// add HTTP headers to the request.
26363func (c *ProjectsLocationsAgentsFlowsVersionsCreateCall) Header() http.Header {
26364	if c.header_ == nil {
26365		c.header_ = make(http.Header)
26366	}
26367	return c.header_
26368}
26369
26370func (c *ProjectsLocationsAgentsFlowsVersionsCreateCall) doRequest(alt string) (*http.Response, error) {
26371	reqHeaders := make(http.Header)
26372	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
26373	for k, v := range c.header_ {
26374		reqHeaders[k] = v
26375	}
26376	reqHeaders.Set("User-Agent", c.s.userAgent())
26377	var body io.Reader = nil
26378	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3version)
26379	if err != nil {
26380		return nil, err
26381	}
26382	reqHeaders.Set("Content-Type", "application/json")
26383	c.urlParams_.Set("alt", alt)
26384	c.urlParams_.Set("prettyPrint", "false")
26385	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/versions")
26386	urls += "?" + c.urlParams_.Encode()
26387	req, err := http.NewRequest("POST", urls, body)
26388	if err != nil {
26389		return nil, err
26390	}
26391	req.Header = reqHeaders
26392	googleapi.Expand(req.URL, map[string]string{
26393		"parent": c.parent,
26394	})
26395	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26396}
26397
26398// Do executes the "dialogflow.projects.locations.agents.flows.versions.create" call.
26399// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
26400// Any non-2xx status code is an error. Response headers are in either
26401// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
26402// was 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 *ProjectsLocationsAgentsFlowsVersionsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, 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 := &GoogleLongrunningOperation{
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": "Creates a Version in the specified Flow.",
26437	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/versions",
26438	//   "httpMethod": "POST",
26439	//   "id": "dialogflow.projects.locations.agents.flows.versions.create",
26440	//   "parameterOrder": [
26441	//     "parent"
26442	//   ],
26443	//   "parameters": {
26444	//     "parent": {
26445	//       "description": "Required. The Flow to create an Version for. Format: `projects//locations//agents//flows/`.",
26446	//       "location": "path",
26447	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+$",
26448	//       "required": true,
26449	//       "type": "string"
26450	//     }
26451	//   },
26452	//   "path": "v3/{+parent}/versions",
26453	//   "request": {
26454	//     "$ref": "GoogleCloudDialogflowCxV3Version"
26455	//   },
26456	//   "response": {
26457	//     "$ref": "GoogleLongrunningOperation"
26458	//   },
26459	//   "scopes": [
26460	//     "https://www.googleapis.com/auth/cloud-platform",
26461	//     "https://www.googleapis.com/auth/dialogflow"
26462	//   ]
26463	// }
26464
26465}
26466
26467// method id "dialogflow.projects.locations.agents.flows.versions.delete":
26468
26469type ProjectsLocationsAgentsFlowsVersionsDeleteCall struct {
26470	s          *Service
26471	name       string
26472	urlParams_ gensupport.URLParams
26473	ctx_       context.Context
26474	header_    http.Header
26475}
26476
26477// Delete: Deletes the specified Version.
26478//
26479// - name: The name of the Version to delete. Format:
26480//   `projects//locations//agents//flows//versions/`.
26481func (r *ProjectsLocationsAgentsFlowsVersionsService) Delete(name string) *ProjectsLocationsAgentsFlowsVersionsDeleteCall {
26482	c := &ProjectsLocationsAgentsFlowsVersionsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26483	c.name = name
26484	return c
26485}
26486
26487// Fields allows partial responses to be retrieved. See
26488// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26489// for more information.
26490func (c *ProjectsLocationsAgentsFlowsVersionsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsVersionsDeleteCall {
26491	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26492	return c
26493}
26494
26495// Context sets the context to be used in this call's Do method. Any
26496// pending HTTP request will be aborted if the provided context is
26497// canceled.
26498func (c *ProjectsLocationsAgentsFlowsVersionsDeleteCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsVersionsDeleteCall {
26499	c.ctx_ = ctx
26500	return c
26501}
26502
26503// Header returns an http.Header that can be modified by the caller to
26504// add HTTP headers to the request.
26505func (c *ProjectsLocationsAgentsFlowsVersionsDeleteCall) Header() http.Header {
26506	if c.header_ == nil {
26507		c.header_ = make(http.Header)
26508	}
26509	return c.header_
26510}
26511
26512func (c *ProjectsLocationsAgentsFlowsVersionsDeleteCall) doRequest(alt string) (*http.Response, error) {
26513	reqHeaders := make(http.Header)
26514	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
26515	for k, v := range c.header_ {
26516		reqHeaders[k] = v
26517	}
26518	reqHeaders.Set("User-Agent", c.s.userAgent())
26519	var body io.Reader = nil
26520	c.urlParams_.Set("alt", alt)
26521	c.urlParams_.Set("prettyPrint", "false")
26522	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
26523	urls += "?" + c.urlParams_.Encode()
26524	req, err := http.NewRequest("DELETE", urls, body)
26525	if err != nil {
26526		return nil, err
26527	}
26528	req.Header = reqHeaders
26529	googleapi.Expand(req.URL, map[string]string{
26530		"name": c.name,
26531	})
26532	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26533}
26534
26535// Do executes the "dialogflow.projects.locations.agents.flows.versions.delete" call.
26536// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
26537// non-2xx status code is an error. Response headers are in either
26538// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
26539// returned at all) in error.(*googleapi.Error).Header. Use
26540// googleapi.IsNotModified to check whether the returned error was
26541// because http.StatusNotModified was returned.
26542func (c *ProjectsLocationsAgentsFlowsVersionsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
26543	gensupport.SetOptions(c.urlParams_, opts...)
26544	res, err := c.doRequest("json")
26545	if res != nil && res.StatusCode == http.StatusNotModified {
26546		if res.Body != nil {
26547			res.Body.Close()
26548		}
26549		return nil, &googleapi.Error{
26550			Code:   res.StatusCode,
26551			Header: res.Header,
26552		}
26553	}
26554	if err != nil {
26555		return nil, err
26556	}
26557	defer googleapi.CloseBody(res)
26558	if err := googleapi.CheckResponse(res); err != nil {
26559		return nil, err
26560	}
26561	ret := &GoogleProtobufEmpty{
26562		ServerResponse: googleapi.ServerResponse{
26563			Header:         res.Header,
26564			HTTPStatusCode: res.StatusCode,
26565		},
26566	}
26567	target := &ret
26568	if err := gensupport.DecodeResponse(target, res); err != nil {
26569		return nil, err
26570	}
26571	return ret, nil
26572	// {
26573	//   "description": "Deletes the specified Version.",
26574	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/versions/{versionsId}",
26575	//   "httpMethod": "DELETE",
26576	//   "id": "dialogflow.projects.locations.agents.flows.versions.delete",
26577	//   "parameterOrder": [
26578	//     "name"
26579	//   ],
26580	//   "parameters": {
26581	//     "name": {
26582	//       "description": "Required. The name of the Version to delete. Format: `projects//locations//agents//flows//versions/`.",
26583	//       "location": "path",
26584	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+/versions/[^/]+$",
26585	//       "required": true,
26586	//       "type": "string"
26587	//     }
26588	//   },
26589	//   "path": "v3/{+name}",
26590	//   "response": {
26591	//     "$ref": "GoogleProtobufEmpty"
26592	//   },
26593	//   "scopes": [
26594	//     "https://www.googleapis.com/auth/cloud-platform",
26595	//     "https://www.googleapis.com/auth/dialogflow"
26596	//   ]
26597	// }
26598
26599}
26600
26601// method id "dialogflow.projects.locations.agents.flows.versions.get":
26602
26603type ProjectsLocationsAgentsFlowsVersionsGetCall struct {
26604	s            *Service
26605	name         string
26606	urlParams_   gensupport.URLParams
26607	ifNoneMatch_ string
26608	ctx_         context.Context
26609	header_      http.Header
26610}
26611
26612// Get: Retrieves the specified Version.
26613//
26614// - name: The name of the Version. Format:
26615//   `projects//locations//agents//flows//versions/`.
26616func (r *ProjectsLocationsAgentsFlowsVersionsService) Get(name string) *ProjectsLocationsAgentsFlowsVersionsGetCall {
26617	c := &ProjectsLocationsAgentsFlowsVersionsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26618	c.name = name
26619	return c
26620}
26621
26622// Fields allows partial responses to be retrieved. See
26623// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26624// for more information.
26625func (c *ProjectsLocationsAgentsFlowsVersionsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsVersionsGetCall {
26626	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26627	return c
26628}
26629
26630// IfNoneMatch sets the optional parameter which makes the operation
26631// fail if the object's ETag matches the given value. This is useful for
26632// getting updates only after the object has changed since the last
26633// request. Use googleapi.IsNotModified to check whether the response
26634// error from Do is the result of In-None-Match.
26635func (c *ProjectsLocationsAgentsFlowsVersionsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsFlowsVersionsGetCall {
26636	c.ifNoneMatch_ = entityTag
26637	return c
26638}
26639
26640// Context sets the context to be used in this call's Do method. Any
26641// pending HTTP request will be aborted if the provided context is
26642// canceled.
26643func (c *ProjectsLocationsAgentsFlowsVersionsGetCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsVersionsGetCall {
26644	c.ctx_ = ctx
26645	return c
26646}
26647
26648// Header returns an http.Header that can be modified by the caller to
26649// add HTTP headers to the request.
26650func (c *ProjectsLocationsAgentsFlowsVersionsGetCall) Header() http.Header {
26651	if c.header_ == nil {
26652		c.header_ = make(http.Header)
26653	}
26654	return c.header_
26655}
26656
26657func (c *ProjectsLocationsAgentsFlowsVersionsGetCall) doRequest(alt string) (*http.Response, error) {
26658	reqHeaders := make(http.Header)
26659	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
26660	for k, v := range c.header_ {
26661		reqHeaders[k] = v
26662	}
26663	reqHeaders.Set("User-Agent", c.s.userAgent())
26664	if c.ifNoneMatch_ != "" {
26665		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
26666	}
26667	var body io.Reader = nil
26668	c.urlParams_.Set("alt", alt)
26669	c.urlParams_.Set("prettyPrint", "false")
26670	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
26671	urls += "?" + c.urlParams_.Encode()
26672	req, err := http.NewRequest("GET", urls, body)
26673	if err != nil {
26674		return nil, err
26675	}
26676	req.Header = reqHeaders
26677	googleapi.Expand(req.URL, map[string]string{
26678		"name": c.name,
26679	})
26680	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26681}
26682
26683// Do executes the "dialogflow.projects.locations.agents.flows.versions.get" call.
26684// Exactly one of *GoogleCloudDialogflowCxV3Version or error will be
26685// non-nil. Any non-2xx status code is an error. Response headers are in
26686// either *GoogleCloudDialogflowCxV3Version.ServerResponse.Header or (if
26687// a response was returned at all) in error.(*googleapi.Error).Header.
26688// Use googleapi.IsNotModified to check whether the returned error was
26689// because http.StatusNotModified was returned.
26690func (c *ProjectsLocationsAgentsFlowsVersionsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3Version, error) {
26691	gensupport.SetOptions(c.urlParams_, opts...)
26692	res, err := c.doRequest("json")
26693	if res != nil && res.StatusCode == http.StatusNotModified {
26694		if res.Body != nil {
26695			res.Body.Close()
26696		}
26697		return nil, &googleapi.Error{
26698			Code:   res.StatusCode,
26699			Header: res.Header,
26700		}
26701	}
26702	if err != nil {
26703		return nil, err
26704	}
26705	defer googleapi.CloseBody(res)
26706	if err := googleapi.CheckResponse(res); err != nil {
26707		return nil, err
26708	}
26709	ret := &GoogleCloudDialogflowCxV3Version{
26710		ServerResponse: googleapi.ServerResponse{
26711			Header:         res.Header,
26712			HTTPStatusCode: res.StatusCode,
26713		},
26714	}
26715	target := &ret
26716	if err := gensupport.DecodeResponse(target, res); err != nil {
26717		return nil, err
26718	}
26719	return ret, nil
26720	// {
26721	//   "description": "Retrieves the specified Version.",
26722	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/versions/{versionsId}",
26723	//   "httpMethod": "GET",
26724	//   "id": "dialogflow.projects.locations.agents.flows.versions.get",
26725	//   "parameterOrder": [
26726	//     "name"
26727	//   ],
26728	//   "parameters": {
26729	//     "name": {
26730	//       "description": "Required. The name of the Version. Format: `projects//locations//agents//flows//versions/`.",
26731	//       "location": "path",
26732	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+/versions/[^/]+$",
26733	//       "required": true,
26734	//       "type": "string"
26735	//     }
26736	//   },
26737	//   "path": "v3/{+name}",
26738	//   "response": {
26739	//     "$ref": "GoogleCloudDialogflowCxV3Version"
26740	//   },
26741	//   "scopes": [
26742	//     "https://www.googleapis.com/auth/cloud-platform",
26743	//     "https://www.googleapis.com/auth/dialogflow"
26744	//   ]
26745	// }
26746
26747}
26748
26749// method id "dialogflow.projects.locations.agents.flows.versions.list":
26750
26751type ProjectsLocationsAgentsFlowsVersionsListCall struct {
26752	s            *Service
26753	parent       string
26754	urlParams_   gensupport.URLParams
26755	ifNoneMatch_ string
26756	ctx_         context.Context
26757	header_      http.Header
26758}
26759
26760// List: Returns the list of all versions in the specified Flow.
26761//
26762// - parent: The Flow to list all versions for. Format:
26763//   `projects//locations//agents//flows/`.
26764func (r *ProjectsLocationsAgentsFlowsVersionsService) List(parent string) *ProjectsLocationsAgentsFlowsVersionsListCall {
26765	c := &ProjectsLocationsAgentsFlowsVersionsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26766	c.parent = parent
26767	return c
26768}
26769
26770// PageSize sets the optional parameter "pageSize": The maximum number
26771// of items to return in a single page. By default 20 and at most 100.
26772func (c *ProjectsLocationsAgentsFlowsVersionsListCall) PageSize(pageSize int64) *ProjectsLocationsAgentsFlowsVersionsListCall {
26773	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
26774	return c
26775}
26776
26777// PageToken sets the optional parameter "pageToken": The
26778// next_page_token value returned from a previous list request.
26779func (c *ProjectsLocationsAgentsFlowsVersionsListCall) PageToken(pageToken string) *ProjectsLocationsAgentsFlowsVersionsListCall {
26780	c.urlParams_.Set("pageToken", pageToken)
26781	return c
26782}
26783
26784// Fields allows partial responses to be retrieved. See
26785// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26786// for more information.
26787func (c *ProjectsLocationsAgentsFlowsVersionsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsVersionsListCall {
26788	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26789	return c
26790}
26791
26792// IfNoneMatch sets the optional parameter which makes the operation
26793// fail if the object's ETag matches the given value. This is useful for
26794// getting updates only after the object has changed since the last
26795// request. Use googleapi.IsNotModified to check whether the response
26796// error from Do is the result of In-None-Match.
26797func (c *ProjectsLocationsAgentsFlowsVersionsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsFlowsVersionsListCall {
26798	c.ifNoneMatch_ = entityTag
26799	return c
26800}
26801
26802// Context sets the context to be used in this call's Do method. Any
26803// pending HTTP request will be aborted if the provided context is
26804// canceled.
26805func (c *ProjectsLocationsAgentsFlowsVersionsListCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsVersionsListCall {
26806	c.ctx_ = ctx
26807	return c
26808}
26809
26810// Header returns an http.Header that can be modified by the caller to
26811// add HTTP headers to the request.
26812func (c *ProjectsLocationsAgentsFlowsVersionsListCall) Header() http.Header {
26813	if c.header_ == nil {
26814		c.header_ = make(http.Header)
26815	}
26816	return c.header_
26817}
26818
26819func (c *ProjectsLocationsAgentsFlowsVersionsListCall) doRequest(alt string) (*http.Response, error) {
26820	reqHeaders := make(http.Header)
26821	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
26822	for k, v := range c.header_ {
26823		reqHeaders[k] = v
26824	}
26825	reqHeaders.Set("User-Agent", c.s.userAgent())
26826	if c.ifNoneMatch_ != "" {
26827		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
26828	}
26829	var body io.Reader = nil
26830	c.urlParams_.Set("alt", alt)
26831	c.urlParams_.Set("prettyPrint", "false")
26832	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/versions")
26833	urls += "?" + c.urlParams_.Encode()
26834	req, err := http.NewRequest("GET", urls, body)
26835	if err != nil {
26836		return nil, err
26837	}
26838	req.Header = reqHeaders
26839	googleapi.Expand(req.URL, map[string]string{
26840		"parent": c.parent,
26841	})
26842	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26843}
26844
26845// Do executes the "dialogflow.projects.locations.agents.flows.versions.list" call.
26846// Exactly one of *GoogleCloudDialogflowCxV3ListVersionsResponse or
26847// error will be non-nil. Any non-2xx status code is an error. Response
26848// headers are in either
26849// *GoogleCloudDialogflowCxV3ListVersionsResponse.ServerResponse.Header
26850// or (if a response was returned at all) in
26851// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
26852// whether the returned error was because http.StatusNotModified was
26853// returned.
26854func (c *ProjectsLocationsAgentsFlowsVersionsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3ListVersionsResponse, error) {
26855	gensupport.SetOptions(c.urlParams_, opts...)
26856	res, err := c.doRequest("json")
26857	if res != nil && res.StatusCode == http.StatusNotModified {
26858		if res.Body != nil {
26859			res.Body.Close()
26860		}
26861		return nil, &googleapi.Error{
26862			Code:   res.StatusCode,
26863			Header: res.Header,
26864		}
26865	}
26866	if err != nil {
26867		return nil, err
26868	}
26869	defer googleapi.CloseBody(res)
26870	if err := googleapi.CheckResponse(res); err != nil {
26871		return nil, err
26872	}
26873	ret := &GoogleCloudDialogflowCxV3ListVersionsResponse{
26874		ServerResponse: googleapi.ServerResponse{
26875			Header:         res.Header,
26876			HTTPStatusCode: res.StatusCode,
26877		},
26878	}
26879	target := &ret
26880	if err := gensupport.DecodeResponse(target, res); err != nil {
26881		return nil, err
26882	}
26883	return ret, nil
26884	// {
26885	//   "description": "Returns the list of all versions in the specified Flow.",
26886	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/versions",
26887	//   "httpMethod": "GET",
26888	//   "id": "dialogflow.projects.locations.agents.flows.versions.list",
26889	//   "parameterOrder": [
26890	//     "parent"
26891	//   ],
26892	//   "parameters": {
26893	//     "pageSize": {
26894	//       "description": "The maximum number of items to return in a single page. By default 20 and at most 100.",
26895	//       "format": "int32",
26896	//       "location": "query",
26897	//       "type": "integer"
26898	//     },
26899	//     "pageToken": {
26900	//       "description": "The next_page_token value returned from a previous list request.",
26901	//       "location": "query",
26902	//       "type": "string"
26903	//     },
26904	//     "parent": {
26905	//       "description": "Required. The Flow to list all versions for. Format: `projects//locations//agents//flows/`.",
26906	//       "location": "path",
26907	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+$",
26908	//       "required": true,
26909	//       "type": "string"
26910	//     }
26911	//   },
26912	//   "path": "v3/{+parent}/versions",
26913	//   "response": {
26914	//     "$ref": "GoogleCloudDialogflowCxV3ListVersionsResponse"
26915	//   },
26916	//   "scopes": [
26917	//     "https://www.googleapis.com/auth/cloud-platform",
26918	//     "https://www.googleapis.com/auth/dialogflow"
26919	//   ]
26920	// }
26921
26922}
26923
26924// Pages invokes f for each page of results.
26925// A non-nil error returned from f will halt the iteration.
26926// The provided context supersedes any context provided to the Context method.
26927func (c *ProjectsLocationsAgentsFlowsVersionsListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3ListVersionsResponse) error) error {
26928	c.ctx_ = ctx
26929	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
26930	for {
26931		x, err := c.Do()
26932		if err != nil {
26933			return err
26934		}
26935		if err := f(x); err != nil {
26936			return err
26937		}
26938		if x.NextPageToken == "" {
26939			return nil
26940		}
26941		c.PageToken(x.NextPageToken)
26942	}
26943}
26944
26945// method id "dialogflow.projects.locations.agents.flows.versions.load":
26946
26947type ProjectsLocationsAgentsFlowsVersionsLoadCall struct {
26948	s                                           *Service
26949	name                                        string
26950	googleclouddialogflowcxv3loadversionrequest *GoogleCloudDialogflowCxV3LoadVersionRequest
26951	urlParams_                                  gensupport.URLParams
26952	ctx_                                        context.Context
26953	header_                                     http.Header
26954}
26955
26956// Load: Loads resources in the specified version to the draft flow.
26957//
26958// - name: The Version to be loaded to draft flow. Format:
26959//   `projects//locations//agents//flows//versions/`.
26960func (r *ProjectsLocationsAgentsFlowsVersionsService) Load(name string, googleclouddialogflowcxv3loadversionrequest *GoogleCloudDialogflowCxV3LoadVersionRequest) *ProjectsLocationsAgentsFlowsVersionsLoadCall {
26961	c := &ProjectsLocationsAgentsFlowsVersionsLoadCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26962	c.name = name
26963	c.googleclouddialogflowcxv3loadversionrequest = googleclouddialogflowcxv3loadversionrequest
26964	return c
26965}
26966
26967// Fields allows partial responses to be retrieved. See
26968// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26969// for more information.
26970func (c *ProjectsLocationsAgentsFlowsVersionsLoadCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsVersionsLoadCall {
26971	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26972	return c
26973}
26974
26975// Context sets the context to be used in this call's Do method. Any
26976// pending HTTP request will be aborted if the provided context is
26977// canceled.
26978func (c *ProjectsLocationsAgentsFlowsVersionsLoadCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsVersionsLoadCall {
26979	c.ctx_ = ctx
26980	return c
26981}
26982
26983// Header returns an http.Header that can be modified by the caller to
26984// add HTTP headers to the request.
26985func (c *ProjectsLocationsAgentsFlowsVersionsLoadCall) Header() http.Header {
26986	if c.header_ == nil {
26987		c.header_ = make(http.Header)
26988	}
26989	return c.header_
26990}
26991
26992func (c *ProjectsLocationsAgentsFlowsVersionsLoadCall) doRequest(alt string) (*http.Response, error) {
26993	reqHeaders := make(http.Header)
26994	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
26995	for k, v := range c.header_ {
26996		reqHeaders[k] = v
26997	}
26998	reqHeaders.Set("User-Agent", c.s.userAgent())
26999	var body io.Reader = nil
27000	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3loadversionrequest)
27001	if err != nil {
27002		return nil, err
27003	}
27004	reqHeaders.Set("Content-Type", "application/json")
27005	c.urlParams_.Set("alt", alt)
27006	c.urlParams_.Set("prettyPrint", "false")
27007	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}:load")
27008	urls += "?" + c.urlParams_.Encode()
27009	req, err := http.NewRequest("POST", urls, body)
27010	if err != nil {
27011		return nil, err
27012	}
27013	req.Header = reqHeaders
27014	googleapi.Expand(req.URL, map[string]string{
27015		"name": c.name,
27016	})
27017	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27018}
27019
27020// Do executes the "dialogflow.projects.locations.agents.flows.versions.load" call.
27021// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
27022// Any non-2xx status code is an error. Response headers are in either
27023// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
27024// was returned at all) in error.(*googleapi.Error).Header. Use
27025// googleapi.IsNotModified to check whether the returned error was
27026// because http.StatusNotModified was returned.
27027func (c *ProjectsLocationsAgentsFlowsVersionsLoadCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
27028	gensupport.SetOptions(c.urlParams_, opts...)
27029	res, err := c.doRequest("json")
27030	if res != nil && res.StatusCode == http.StatusNotModified {
27031		if res.Body != nil {
27032			res.Body.Close()
27033		}
27034		return nil, &googleapi.Error{
27035			Code:   res.StatusCode,
27036			Header: res.Header,
27037		}
27038	}
27039	if err != nil {
27040		return nil, err
27041	}
27042	defer googleapi.CloseBody(res)
27043	if err := googleapi.CheckResponse(res); err != nil {
27044		return nil, err
27045	}
27046	ret := &GoogleLongrunningOperation{
27047		ServerResponse: googleapi.ServerResponse{
27048			Header:         res.Header,
27049			HTTPStatusCode: res.StatusCode,
27050		},
27051	}
27052	target := &ret
27053	if err := gensupport.DecodeResponse(target, res); err != nil {
27054		return nil, err
27055	}
27056	return ret, nil
27057	// {
27058	//   "description": "Loads resources in the specified version to the draft flow.",
27059	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/versions/{versionsId}:load",
27060	//   "httpMethod": "POST",
27061	//   "id": "dialogflow.projects.locations.agents.flows.versions.load",
27062	//   "parameterOrder": [
27063	//     "name"
27064	//   ],
27065	//   "parameters": {
27066	//     "name": {
27067	//       "description": "Required. The Version to be loaded to draft flow. Format: `projects//locations//agents//flows//versions/`.",
27068	//       "location": "path",
27069	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+/versions/[^/]+$",
27070	//       "required": true,
27071	//       "type": "string"
27072	//     }
27073	//   },
27074	//   "path": "v3/{+name}:load",
27075	//   "request": {
27076	//     "$ref": "GoogleCloudDialogflowCxV3LoadVersionRequest"
27077	//   },
27078	//   "response": {
27079	//     "$ref": "GoogleLongrunningOperation"
27080	//   },
27081	//   "scopes": [
27082	//     "https://www.googleapis.com/auth/cloud-platform",
27083	//     "https://www.googleapis.com/auth/dialogflow"
27084	//   ]
27085	// }
27086
27087}
27088
27089// method id "dialogflow.projects.locations.agents.flows.versions.patch":
27090
27091type ProjectsLocationsAgentsFlowsVersionsPatchCall struct {
27092	s                                *Service
27093	name                             string
27094	googleclouddialogflowcxv3version *GoogleCloudDialogflowCxV3Version
27095	urlParams_                       gensupport.URLParams
27096	ctx_                             context.Context
27097	header_                          http.Header
27098}
27099
27100// Patch: Updates the specified Version.
27101//
27102// - name: Format: projects//locations//agents//flows//versions/.
27103//   Version ID is a self-increasing number generated by Dialogflow upon
27104//   version creation.
27105func (r *ProjectsLocationsAgentsFlowsVersionsService) Patch(name string, googleclouddialogflowcxv3version *GoogleCloudDialogflowCxV3Version) *ProjectsLocationsAgentsFlowsVersionsPatchCall {
27106	c := &ProjectsLocationsAgentsFlowsVersionsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27107	c.name = name
27108	c.googleclouddialogflowcxv3version = googleclouddialogflowcxv3version
27109	return c
27110}
27111
27112// UpdateMask sets the optional parameter "updateMask": Required. The
27113// mask to control which fields get updated. Currently only
27114// `description` and `display_name` can be updated.
27115func (c *ProjectsLocationsAgentsFlowsVersionsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsAgentsFlowsVersionsPatchCall {
27116	c.urlParams_.Set("updateMask", updateMask)
27117	return c
27118}
27119
27120// Fields allows partial responses to be retrieved. See
27121// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27122// for more information.
27123func (c *ProjectsLocationsAgentsFlowsVersionsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsVersionsPatchCall {
27124	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27125	return c
27126}
27127
27128// Context sets the context to be used in this call's Do method. Any
27129// pending HTTP request will be aborted if the provided context is
27130// canceled.
27131func (c *ProjectsLocationsAgentsFlowsVersionsPatchCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsVersionsPatchCall {
27132	c.ctx_ = ctx
27133	return c
27134}
27135
27136// Header returns an http.Header that can be modified by the caller to
27137// add HTTP headers to the request.
27138func (c *ProjectsLocationsAgentsFlowsVersionsPatchCall) Header() http.Header {
27139	if c.header_ == nil {
27140		c.header_ = make(http.Header)
27141	}
27142	return c.header_
27143}
27144
27145func (c *ProjectsLocationsAgentsFlowsVersionsPatchCall) doRequest(alt string) (*http.Response, error) {
27146	reqHeaders := make(http.Header)
27147	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
27148	for k, v := range c.header_ {
27149		reqHeaders[k] = v
27150	}
27151	reqHeaders.Set("User-Agent", c.s.userAgent())
27152	var body io.Reader = nil
27153	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3version)
27154	if err != nil {
27155		return nil, err
27156	}
27157	reqHeaders.Set("Content-Type", "application/json")
27158	c.urlParams_.Set("alt", alt)
27159	c.urlParams_.Set("prettyPrint", "false")
27160	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
27161	urls += "?" + c.urlParams_.Encode()
27162	req, err := http.NewRequest("PATCH", urls, body)
27163	if err != nil {
27164		return nil, err
27165	}
27166	req.Header = reqHeaders
27167	googleapi.Expand(req.URL, map[string]string{
27168		"name": c.name,
27169	})
27170	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27171}
27172
27173// Do executes the "dialogflow.projects.locations.agents.flows.versions.patch" call.
27174// Exactly one of *GoogleCloudDialogflowCxV3Version or error will be
27175// non-nil. Any non-2xx status code is an error. Response headers are in
27176// either *GoogleCloudDialogflowCxV3Version.ServerResponse.Header or (if
27177// a response was returned at all) in error.(*googleapi.Error).Header.
27178// Use googleapi.IsNotModified to check whether the returned error was
27179// because http.StatusNotModified was returned.
27180func (c *ProjectsLocationsAgentsFlowsVersionsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3Version, error) {
27181	gensupport.SetOptions(c.urlParams_, opts...)
27182	res, err := c.doRequest("json")
27183	if res != nil && res.StatusCode == http.StatusNotModified {
27184		if res.Body != nil {
27185			res.Body.Close()
27186		}
27187		return nil, &googleapi.Error{
27188			Code:   res.StatusCode,
27189			Header: res.Header,
27190		}
27191	}
27192	if err != nil {
27193		return nil, err
27194	}
27195	defer googleapi.CloseBody(res)
27196	if err := googleapi.CheckResponse(res); err != nil {
27197		return nil, err
27198	}
27199	ret := &GoogleCloudDialogflowCxV3Version{
27200		ServerResponse: googleapi.ServerResponse{
27201			Header:         res.Header,
27202			HTTPStatusCode: res.StatusCode,
27203		},
27204	}
27205	target := &ret
27206	if err := gensupport.DecodeResponse(target, res); err != nil {
27207		return nil, err
27208	}
27209	return ret, nil
27210	// {
27211	//   "description": "Updates the specified Version.",
27212	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/versions/{versionsId}",
27213	//   "httpMethod": "PATCH",
27214	//   "id": "dialogflow.projects.locations.agents.flows.versions.patch",
27215	//   "parameterOrder": [
27216	//     "name"
27217	//   ],
27218	//   "parameters": {
27219	//     "name": {
27220	//       "description": "Format: projects//locations//agents//flows//versions/. Version ID is a self-increasing number generated by Dialogflow upon version creation.",
27221	//       "location": "path",
27222	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+/versions/[^/]+$",
27223	//       "required": true,
27224	//       "type": "string"
27225	//     },
27226	//     "updateMask": {
27227	//       "description": "Required. The mask to control which fields get updated. Currently only `description` and `display_name` can be updated.",
27228	//       "format": "google-fieldmask",
27229	//       "location": "query",
27230	//       "type": "string"
27231	//     }
27232	//   },
27233	//   "path": "v3/{+name}",
27234	//   "request": {
27235	//     "$ref": "GoogleCloudDialogflowCxV3Version"
27236	//   },
27237	//   "response": {
27238	//     "$ref": "GoogleCloudDialogflowCxV3Version"
27239	//   },
27240	//   "scopes": [
27241	//     "https://www.googleapis.com/auth/cloud-platform",
27242	//     "https://www.googleapis.com/auth/dialogflow"
27243	//   ]
27244	// }
27245
27246}
27247
27248// method id "dialogflow.projects.locations.agents.intents.create":
27249
27250type ProjectsLocationsAgentsIntentsCreateCall struct {
27251	s                               *Service
27252	parent                          string
27253	googleclouddialogflowcxv3intent *GoogleCloudDialogflowCxV3Intent
27254	urlParams_                      gensupport.URLParams
27255	ctx_                            context.Context
27256	header_                         http.Header
27257}
27258
27259// Create: Creates an intent in the specified agent. Note: You should
27260// always train a flow prior to sending it queries. See the training
27261// documentation
27262// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
27263//
27264// - parent: The agent to create an intent for. Format:
27265//   `projects//locations//agents/`.
27266func (r *ProjectsLocationsAgentsIntentsService) Create(parent string, googleclouddialogflowcxv3intent *GoogleCloudDialogflowCxV3Intent) *ProjectsLocationsAgentsIntentsCreateCall {
27267	c := &ProjectsLocationsAgentsIntentsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27268	c.parent = parent
27269	c.googleclouddialogflowcxv3intent = googleclouddialogflowcxv3intent
27270	return c
27271}
27272
27273// LanguageCode sets the optional parameter "languageCode": The language
27274// of the following fields in `intent`: *
27275// `Intent.training_phrases.parts.text` If not specified, the agent's
27276// default language is used. Many languages
27277// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
27278// supported. Note: languages must be enabled in the agent before they
27279// can be used.
27280func (c *ProjectsLocationsAgentsIntentsCreateCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsIntentsCreateCall {
27281	c.urlParams_.Set("languageCode", languageCode)
27282	return c
27283}
27284
27285// Fields allows partial responses to be retrieved. See
27286// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27287// for more information.
27288func (c *ProjectsLocationsAgentsIntentsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsIntentsCreateCall {
27289	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27290	return c
27291}
27292
27293// Context sets the context to be used in this call's Do method. Any
27294// pending HTTP request will be aborted if the provided context is
27295// canceled.
27296func (c *ProjectsLocationsAgentsIntentsCreateCall) Context(ctx context.Context) *ProjectsLocationsAgentsIntentsCreateCall {
27297	c.ctx_ = ctx
27298	return c
27299}
27300
27301// Header returns an http.Header that can be modified by the caller to
27302// add HTTP headers to the request.
27303func (c *ProjectsLocationsAgentsIntentsCreateCall) Header() http.Header {
27304	if c.header_ == nil {
27305		c.header_ = make(http.Header)
27306	}
27307	return c.header_
27308}
27309
27310func (c *ProjectsLocationsAgentsIntentsCreateCall) doRequest(alt string) (*http.Response, error) {
27311	reqHeaders := make(http.Header)
27312	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
27313	for k, v := range c.header_ {
27314		reqHeaders[k] = v
27315	}
27316	reqHeaders.Set("User-Agent", c.s.userAgent())
27317	var body io.Reader = nil
27318	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3intent)
27319	if err != nil {
27320		return nil, err
27321	}
27322	reqHeaders.Set("Content-Type", "application/json")
27323	c.urlParams_.Set("alt", alt)
27324	c.urlParams_.Set("prettyPrint", "false")
27325	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/intents")
27326	urls += "?" + c.urlParams_.Encode()
27327	req, err := http.NewRequest("POST", urls, body)
27328	if err != nil {
27329		return nil, err
27330	}
27331	req.Header = reqHeaders
27332	googleapi.Expand(req.URL, map[string]string{
27333		"parent": c.parent,
27334	})
27335	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27336}
27337
27338// Do executes the "dialogflow.projects.locations.agents.intents.create" call.
27339// Exactly one of *GoogleCloudDialogflowCxV3Intent or error will be
27340// non-nil. Any non-2xx status code is an error. Response headers are in
27341// either *GoogleCloudDialogflowCxV3Intent.ServerResponse.Header or (if
27342// a response was returned at all) in error.(*googleapi.Error).Header.
27343// Use googleapi.IsNotModified to check whether the returned error was
27344// because http.StatusNotModified was returned.
27345func (c *ProjectsLocationsAgentsIntentsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3Intent, error) {
27346	gensupport.SetOptions(c.urlParams_, opts...)
27347	res, err := c.doRequest("json")
27348	if res != nil && res.StatusCode == http.StatusNotModified {
27349		if res.Body != nil {
27350			res.Body.Close()
27351		}
27352		return nil, &googleapi.Error{
27353			Code:   res.StatusCode,
27354			Header: res.Header,
27355		}
27356	}
27357	if err != nil {
27358		return nil, err
27359	}
27360	defer googleapi.CloseBody(res)
27361	if err := googleapi.CheckResponse(res); err != nil {
27362		return nil, err
27363	}
27364	ret := &GoogleCloudDialogflowCxV3Intent{
27365		ServerResponse: googleapi.ServerResponse{
27366			Header:         res.Header,
27367			HTTPStatusCode: res.StatusCode,
27368		},
27369	}
27370	target := &ret
27371	if err := gensupport.DecodeResponse(target, res); err != nil {
27372		return nil, err
27373	}
27374	return ret, nil
27375	// {
27376	//   "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).",
27377	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/intents",
27378	//   "httpMethod": "POST",
27379	//   "id": "dialogflow.projects.locations.agents.intents.create",
27380	//   "parameterOrder": [
27381	//     "parent"
27382	//   ],
27383	//   "parameters": {
27384	//     "languageCode": {
27385	//       "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.",
27386	//       "location": "query",
27387	//       "type": "string"
27388	//     },
27389	//     "parent": {
27390	//       "description": "Required. The agent to create an intent for. Format: `projects//locations//agents/`.",
27391	//       "location": "path",
27392	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
27393	//       "required": true,
27394	//       "type": "string"
27395	//     }
27396	//   },
27397	//   "path": "v3/{+parent}/intents",
27398	//   "request": {
27399	//     "$ref": "GoogleCloudDialogflowCxV3Intent"
27400	//   },
27401	//   "response": {
27402	//     "$ref": "GoogleCloudDialogflowCxV3Intent"
27403	//   },
27404	//   "scopes": [
27405	//     "https://www.googleapis.com/auth/cloud-platform",
27406	//     "https://www.googleapis.com/auth/dialogflow"
27407	//   ]
27408	// }
27409
27410}
27411
27412// method id "dialogflow.projects.locations.agents.intents.delete":
27413
27414type ProjectsLocationsAgentsIntentsDeleteCall struct {
27415	s          *Service
27416	name       string
27417	urlParams_ gensupport.URLParams
27418	ctx_       context.Context
27419	header_    http.Header
27420}
27421
27422// Delete: Deletes the specified intent. Note: You should always train a
27423// flow prior to sending it queries. See the training documentation
27424// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
27425//
27426// - name: The name of the intent to delete. Format:
27427//   `projects//locations//agents//intents/`.
27428func (r *ProjectsLocationsAgentsIntentsService) Delete(name string) *ProjectsLocationsAgentsIntentsDeleteCall {
27429	c := &ProjectsLocationsAgentsIntentsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27430	c.name = name
27431	return c
27432}
27433
27434// Fields allows partial responses to be retrieved. See
27435// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27436// for more information.
27437func (c *ProjectsLocationsAgentsIntentsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsIntentsDeleteCall {
27438	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27439	return c
27440}
27441
27442// Context sets the context to be used in this call's Do method. Any
27443// pending HTTP request will be aborted if the provided context is
27444// canceled.
27445func (c *ProjectsLocationsAgentsIntentsDeleteCall) Context(ctx context.Context) *ProjectsLocationsAgentsIntentsDeleteCall {
27446	c.ctx_ = ctx
27447	return c
27448}
27449
27450// Header returns an http.Header that can be modified by the caller to
27451// add HTTP headers to the request.
27452func (c *ProjectsLocationsAgentsIntentsDeleteCall) Header() http.Header {
27453	if c.header_ == nil {
27454		c.header_ = make(http.Header)
27455	}
27456	return c.header_
27457}
27458
27459func (c *ProjectsLocationsAgentsIntentsDeleteCall) doRequest(alt string) (*http.Response, error) {
27460	reqHeaders := make(http.Header)
27461	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
27462	for k, v := range c.header_ {
27463		reqHeaders[k] = v
27464	}
27465	reqHeaders.Set("User-Agent", c.s.userAgent())
27466	var body io.Reader = nil
27467	c.urlParams_.Set("alt", alt)
27468	c.urlParams_.Set("prettyPrint", "false")
27469	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
27470	urls += "?" + c.urlParams_.Encode()
27471	req, err := http.NewRequest("DELETE", urls, body)
27472	if err != nil {
27473		return nil, err
27474	}
27475	req.Header = reqHeaders
27476	googleapi.Expand(req.URL, map[string]string{
27477		"name": c.name,
27478	})
27479	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27480}
27481
27482// Do executes the "dialogflow.projects.locations.agents.intents.delete" call.
27483// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
27484// non-2xx status code is an error. Response headers are in either
27485// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
27486// returned at all) in error.(*googleapi.Error).Header. Use
27487// googleapi.IsNotModified to check whether the returned error was
27488// because http.StatusNotModified was returned.
27489func (c *ProjectsLocationsAgentsIntentsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
27490	gensupport.SetOptions(c.urlParams_, opts...)
27491	res, err := c.doRequest("json")
27492	if res != nil && res.StatusCode == http.StatusNotModified {
27493		if res.Body != nil {
27494			res.Body.Close()
27495		}
27496		return nil, &googleapi.Error{
27497			Code:   res.StatusCode,
27498			Header: res.Header,
27499		}
27500	}
27501	if err != nil {
27502		return nil, err
27503	}
27504	defer googleapi.CloseBody(res)
27505	if err := googleapi.CheckResponse(res); err != nil {
27506		return nil, err
27507	}
27508	ret := &GoogleProtobufEmpty{
27509		ServerResponse: googleapi.ServerResponse{
27510			Header:         res.Header,
27511			HTTPStatusCode: res.StatusCode,
27512		},
27513	}
27514	target := &ret
27515	if err := gensupport.DecodeResponse(target, res); err != nil {
27516		return nil, err
27517	}
27518	return ret, nil
27519	// {
27520	//   "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).",
27521	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/intents/{intentsId}",
27522	//   "httpMethod": "DELETE",
27523	//   "id": "dialogflow.projects.locations.agents.intents.delete",
27524	//   "parameterOrder": [
27525	//     "name"
27526	//   ],
27527	//   "parameters": {
27528	//     "name": {
27529	//       "description": "Required. The name of the intent to delete. Format: `projects//locations//agents//intents/`.",
27530	//       "location": "path",
27531	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/intents/[^/]+$",
27532	//       "required": true,
27533	//       "type": "string"
27534	//     }
27535	//   },
27536	//   "path": "v3/{+name}",
27537	//   "response": {
27538	//     "$ref": "GoogleProtobufEmpty"
27539	//   },
27540	//   "scopes": [
27541	//     "https://www.googleapis.com/auth/cloud-platform",
27542	//     "https://www.googleapis.com/auth/dialogflow"
27543	//   ]
27544	// }
27545
27546}
27547
27548// method id "dialogflow.projects.locations.agents.intents.get":
27549
27550type ProjectsLocationsAgentsIntentsGetCall struct {
27551	s            *Service
27552	name         string
27553	urlParams_   gensupport.URLParams
27554	ifNoneMatch_ string
27555	ctx_         context.Context
27556	header_      http.Header
27557}
27558
27559// Get: Retrieves the specified intent.
27560//
27561// - name: The name of the intent. Format:
27562//   `projects//locations//agents//intents/`.
27563func (r *ProjectsLocationsAgentsIntentsService) Get(name string) *ProjectsLocationsAgentsIntentsGetCall {
27564	c := &ProjectsLocationsAgentsIntentsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27565	c.name = name
27566	return c
27567}
27568
27569// LanguageCode sets the optional parameter "languageCode": The language
27570// to retrieve the intent for. The following fields are language
27571// dependent: * `Intent.training_phrases.parts.text` If not specified,
27572// the agent's default language is used. Many languages
27573// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
27574// supported. Note: languages must be enabled in the agent before they
27575// can be used.
27576func (c *ProjectsLocationsAgentsIntentsGetCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsIntentsGetCall {
27577	c.urlParams_.Set("languageCode", languageCode)
27578	return c
27579}
27580
27581// Fields allows partial responses to be retrieved. See
27582// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27583// for more information.
27584func (c *ProjectsLocationsAgentsIntentsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsIntentsGetCall {
27585	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27586	return c
27587}
27588
27589// IfNoneMatch sets the optional parameter which makes the operation
27590// fail if the object's ETag matches the given value. This is useful for
27591// getting updates only after the object has changed since the last
27592// request. Use googleapi.IsNotModified to check whether the response
27593// error from Do is the result of In-None-Match.
27594func (c *ProjectsLocationsAgentsIntentsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsIntentsGetCall {
27595	c.ifNoneMatch_ = entityTag
27596	return c
27597}
27598
27599// Context sets the context to be used in this call's Do method. Any
27600// pending HTTP request will be aborted if the provided context is
27601// canceled.
27602func (c *ProjectsLocationsAgentsIntentsGetCall) Context(ctx context.Context) *ProjectsLocationsAgentsIntentsGetCall {
27603	c.ctx_ = ctx
27604	return c
27605}
27606
27607// Header returns an http.Header that can be modified by the caller to
27608// add HTTP headers to the request.
27609func (c *ProjectsLocationsAgentsIntentsGetCall) Header() http.Header {
27610	if c.header_ == nil {
27611		c.header_ = make(http.Header)
27612	}
27613	return c.header_
27614}
27615
27616func (c *ProjectsLocationsAgentsIntentsGetCall) doRequest(alt string) (*http.Response, error) {
27617	reqHeaders := make(http.Header)
27618	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
27619	for k, v := range c.header_ {
27620		reqHeaders[k] = v
27621	}
27622	reqHeaders.Set("User-Agent", c.s.userAgent())
27623	if c.ifNoneMatch_ != "" {
27624		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
27625	}
27626	var body io.Reader = nil
27627	c.urlParams_.Set("alt", alt)
27628	c.urlParams_.Set("prettyPrint", "false")
27629	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
27630	urls += "?" + c.urlParams_.Encode()
27631	req, err := http.NewRequest("GET", urls, body)
27632	if err != nil {
27633		return nil, err
27634	}
27635	req.Header = reqHeaders
27636	googleapi.Expand(req.URL, map[string]string{
27637		"name": c.name,
27638	})
27639	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27640}
27641
27642// Do executes the "dialogflow.projects.locations.agents.intents.get" call.
27643// Exactly one of *GoogleCloudDialogflowCxV3Intent or error will be
27644// non-nil. Any non-2xx status code is an error. Response headers are in
27645// either *GoogleCloudDialogflowCxV3Intent.ServerResponse.Header or (if
27646// a response was returned at all) in error.(*googleapi.Error).Header.
27647// Use googleapi.IsNotModified to check whether the returned error was
27648// because http.StatusNotModified was returned.
27649func (c *ProjectsLocationsAgentsIntentsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3Intent, error) {
27650	gensupport.SetOptions(c.urlParams_, opts...)
27651	res, err := c.doRequest("json")
27652	if res != nil && res.StatusCode == http.StatusNotModified {
27653		if res.Body != nil {
27654			res.Body.Close()
27655		}
27656		return nil, &googleapi.Error{
27657			Code:   res.StatusCode,
27658			Header: res.Header,
27659		}
27660	}
27661	if err != nil {
27662		return nil, err
27663	}
27664	defer googleapi.CloseBody(res)
27665	if err := googleapi.CheckResponse(res); err != nil {
27666		return nil, err
27667	}
27668	ret := &GoogleCloudDialogflowCxV3Intent{
27669		ServerResponse: googleapi.ServerResponse{
27670			Header:         res.Header,
27671			HTTPStatusCode: res.StatusCode,
27672		},
27673	}
27674	target := &ret
27675	if err := gensupport.DecodeResponse(target, res); err != nil {
27676		return nil, err
27677	}
27678	return ret, nil
27679	// {
27680	//   "description": "Retrieves the specified intent.",
27681	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/intents/{intentsId}",
27682	//   "httpMethod": "GET",
27683	//   "id": "dialogflow.projects.locations.agents.intents.get",
27684	//   "parameterOrder": [
27685	//     "name"
27686	//   ],
27687	//   "parameters": {
27688	//     "languageCode": {
27689	//       "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.",
27690	//       "location": "query",
27691	//       "type": "string"
27692	//     },
27693	//     "name": {
27694	//       "description": "Required. The name of the intent. Format: `projects//locations//agents//intents/`.",
27695	//       "location": "path",
27696	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/intents/[^/]+$",
27697	//       "required": true,
27698	//       "type": "string"
27699	//     }
27700	//   },
27701	//   "path": "v3/{+name}",
27702	//   "response": {
27703	//     "$ref": "GoogleCloudDialogflowCxV3Intent"
27704	//   },
27705	//   "scopes": [
27706	//     "https://www.googleapis.com/auth/cloud-platform",
27707	//     "https://www.googleapis.com/auth/dialogflow"
27708	//   ]
27709	// }
27710
27711}
27712
27713// method id "dialogflow.projects.locations.agents.intents.list":
27714
27715type ProjectsLocationsAgentsIntentsListCall struct {
27716	s            *Service
27717	parent       string
27718	urlParams_   gensupport.URLParams
27719	ifNoneMatch_ string
27720	ctx_         context.Context
27721	header_      http.Header
27722}
27723
27724// List: Returns the list of all intents in the specified agent.
27725//
27726// - parent: The agent to list all intents for. Format:
27727//   `projects//locations//agents/`.
27728func (r *ProjectsLocationsAgentsIntentsService) List(parent string) *ProjectsLocationsAgentsIntentsListCall {
27729	c := &ProjectsLocationsAgentsIntentsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27730	c.parent = parent
27731	return c
27732}
27733
27734// IntentView sets the optional parameter "intentView": The resource
27735// view to apply to the returned intent.
27736//
27737// Possible values:
27738//   "INTENT_VIEW_UNSPECIFIED" - Not specified. Treated as
27739// INTENT_VIEW_FULL.
27740//   "INTENT_VIEW_PARTIAL" - Training phrases field is not populated in
27741// the response.
27742//   "INTENT_VIEW_FULL" - All fields are populated.
27743func (c *ProjectsLocationsAgentsIntentsListCall) IntentView(intentView string) *ProjectsLocationsAgentsIntentsListCall {
27744	c.urlParams_.Set("intentView", intentView)
27745	return c
27746}
27747
27748// LanguageCode sets the optional parameter "languageCode": The language
27749// to list intents for. The following fields are language dependent: *
27750// `Intent.training_phrases.parts.text` If not specified, the agent's
27751// default language is used. Many languages
27752// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
27753// supported. Note: languages must be enabled in the agent before they
27754// can be used.
27755func (c *ProjectsLocationsAgentsIntentsListCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsIntentsListCall {
27756	c.urlParams_.Set("languageCode", languageCode)
27757	return c
27758}
27759
27760// PageSize sets the optional parameter "pageSize": The maximum number
27761// of items to return in a single page. By default 100 and at most 1000.
27762func (c *ProjectsLocationsAgentsIntentsListCall) PageSize(pageSize int64) *ProjectsLocationsAgentsIntentsListCall {
27763	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
27764	return c
27765}
27766
27767// PageToken sets the optional parameter "pageToken": The
27768// next_page_token value returned from a previous list request.
27769func (c *ProjectsLocationsAgentsIntentsListCall) PageToken(pageToken string) *ProjectsLocationsAgentsIntentsListCall {
27770	c.urlParams_.Set("pageToken", pageToken)
27771	return c
27772}
27773
27774// Fields allows partial responses to be retrieved. See
27775// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27776// for more information.
27777func (c *ProjectsLocationsAgentsIntentsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsIntentsListCall {
27778	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27779	return c
27780}
27781
27782// IfNoneMatch sets the optional parameter which makes the operation
27783// fail if the object's ETag matches the given value. This is useful for
27784// getting updates only after the object has changed since the last
27785// request. Use googleapi.IsNotModified to check whether the response
27786// error from Do is the result of In-None-Match.
27787func (c *ProjectsLocationsAgentsIntentsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsIntentsListCall {
27788	c.ifNoneMatch_ = entityTag
27789	return c
27790}
27791
27792// Context sets the context to be used in this call's Do method. Any
27793// pending HTTP request will be aborted if the provided context is
27794// canceled.
27795func (c *ProjectsLocationsAgentsIntentsListCall) Context(ctx context.Context) *ProjectsLocationsAgentsIntentsListCall {
27796	c.ctx_ = ctx
27797	return c
27798}
27799
27800// Header returns an http.Header that can be modified by the caller to
27801// add HTTP headers to the request.
27802func (c *ProjectsLocationsAgentsIntentsListCall) Header() http.Header {
27803	if c.header_ == nil {
27804		c.header_ = make(http.Header)
27805	}
27806	return c.header_
27807}
27808
27809func (c *ProjectsLocationsAgentsIntentsListCall) doRequest(alt string) (*http.Response, error) {
27810	reqHeaders := make(http.Header)
27811	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
27812	for k, v := range c.header_ {
27813		reqHeaders[k] = v
27814	}
27815	reqHeaders.Set("User-Agent", c.s.userAgent())
27816	if c.ifNoneMatch_ != "" {
27817		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
27818	}
27819	var body io.Reader = nil
27820	c.urlParams_.Set("alt", alt)
27821	c.urlParams_.Set("prettyPrint", "false")
27822	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/intents")
27823	urls += "?" + c.urlParams_.Encode()
27824	req, err := http.NewRequest("GET", urls, body)
27825	if err != nil {
27826		return nil, err
27827	}
27828	req.Header = reqHeaders
27829	googleapi.Expand(req.URL, map[string]string{
27830		"parent": c.parent,
27831	})
27832	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27833}
27834
27835// Do executes the "dialogflow.projects.locations.agents.intents.list" call.
27836// Exactly one of *GoogleCloudDialogflowCxV3ListIntentsResponse or error
27837// will be non-nil. Any non-2xx status code is an error. Response
27838// headers are in either
27839// *GoogleCloudDialogflowCxV3ListIntentsResponse.ServerResponse.Header
27840// or (if a response was returned at all) in
27841// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
27842// whether the returned error was because http.StatusNotModified was
27843// returned.
27844func (c *ProjectsLocationsAgentsIntentsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3ListIntentsResponse, error) {
27845	gensupport.SetOptions(c.urlParams_, opts...)
27846	res, err := c.doRequest("json")
27847	if res != nil && res.StatusCode == http.StatusNotModified {
27848		if res.Body != nil {
27849			res.Body.Close()
27850		}
27851		return nil, &googleapi.Error{
27852			Code:   res.StatusCode,
27853			Header: res.Header,
27854		}
27855	}
27856	if err != nil {
27857		return nil, err
27858	}
27859	defer googleapi.CloseBody(res)
27860	if err := googleapi.CheckResponse(res); err != nil {
27861		return nil, err
27862	}
27863	ret := &GoogleCloudDialogflowCxV3ListIntentsResponse{
27864		ServerResponse: googleapi.ServerResponse{
27865			Header:         res.Header,
27866			HTTPStatusCode: res.StatusCode,
27867		},
27868	}
27869	target := &ret
27870	if err := gensupport.DecodeResponse(target, res); err != nil {
27871		return nil, err
27872	}
27873	return ret, nil
27874	// {
27875	//   "description": "Returns the list of all intents in the specified agent.",
27876	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/intents",
27877	//   "httpMethod": "GET",
27878	//   "id": "dialogflow.projects.locations.agents.intents.list",
27879	//   "parameterOrder": [
27880	//     "parent"
27881	//   ],
27882	//   "parameters": {
27883	//     "intentView": {
27884	//       "description": "The resource view to apply to the returned intent.",
27885	//       "enum": [
27886	//         "INTENT_VIEW_UNSPECIFIED",
27887	//         "INTENT_VIEW_PARTIAL",
27888	//         "INTENT_VIEW_FULL"
27889	//       ],
27890	//       "enumDescriptions": [
27891	//         "Not specified. Treated as INTENT_VIEW_FULL.",
27892	//         "Training phrases field is not populated in the response.",
27893	//         "All fields are populated."
27894	//       ],
27895	//       "location": "query",
27896	//       "type": "string"
27897	//     },
27898	//     "languageCode": {
27899	//       "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.",
27900	//       "location": "query",
27901	//       "type": "string"
27902	//     },
27903	//     "pageSize": {
27904	//       "description": "The maximum number of items to return in a single page. By default 100 and at most 1000.",
27905	//       "format": "int32",
27906	//       "location": "query",
27907	//       "type": "integer"
27908	//     },
27909	//     "pageToken": {
27910	//       "description": "The next_page_token value returned from a previous list request.",
27911	//       "location": "query",
27912	//       "type": "string"
27913	//     },
27914	//     "parent": {
27915	//       "description": "Required. The agent to list all intents for. Format: `projects//locations//agents/`.",
27916	//       "location": "path",
27917	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
27918	//       "required": true,
27919	//       "type": "string"
27920	//     }
27921	//   },
27922	//   "path": "v3/{+parent}/intents",
27923	//   "response": {
27924	//     "$ref": "GoogleCloudDialogflowCxV3ListIntentsResponse"
27925	//   },
27926	//   "scopes": [
27927	//     "https://www.googleapis.com/auth/cloud-platform",
27928	//     "https://www.googleapis.com/auth/dialogflow"
27929	//   ]
27930	// }
27931
27932}
27933
27934// Pages invokes f for each page of results.
27935// A non-nil error returned from f will halt the iteration.
27936// The provided context supersedes any context provided to the Context method.
27937func (c *ProjectsLocationsAgentsIntentsListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3ListIntentsResponse) error) error {
27938	c.ctx_ = ctx
27939	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
27940	for {
27941		x, err := c.Do()
27942		if err != nil {
27943			return err
27944		}
27945		if err := f(x); err != nil {
27946			return err
27947		}
27948		if x.NextPageToken == "" {
27949			return nil
27950		}
27951		c.PageToken(x.NextPageToken)
27952	}
27953}
27954
27955// method id "dialogflow.projects.locations.agents.intents.patch":
27956
27957type ProjectsLocationsAgentsIntentsPatchCall struct {
27958	s                               *Service
27959	nameid                          string
27960	googleclouddialogflowcxv3intent *GoogleCloudDialogflowCxV3Intent
27961	urlParams_                      gensupport.URLParams
27962	ctx_                            context.Context
27963	header_                         http.Header
27964}
27965
27966// Patch: Updates the specified intent. Note: You should always train a
27967// flow prior to sending it queries. See the training documentation
27968// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
27969//
27970// - name: The unique identifier of the intent. Required for the
27971//   Intents.UpdateIntent method. Intents.CreateIntent populates the
27972//   name automatically. Format:
27973//   `projects//locations//agents//intents/`.
27974func (r *ProjectsLocationsAgentsIntentsService) Patch(nameid string, googleclouddialogflowcxv3intent *GoogleCloudDialogflowCxV3Intent) *ProjectsLocationsAgentsIntentsPatchCall {
27975	c := &ProjectsLocationsAgentsIntentsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27976	c.nameid = nameid
27977	c.googleclouddialogflowcxv3intent = googleclouddialogflowcxv3intent
27978	return c
27979}
27980
27981// LanguageCode sets the optional parameter "languageCode": The language
27982// of the following fields in `intent`: *
27983// `Intent.training_phrases.parts.text` If not specified, the agent's
27984// default language is used. Many languages
27985// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
27986// supported. Note: languages must be enabled in the agent before they
27987// can be used.
27988func (c *ProjectsLocationsAgentsIntentsPatchCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsIntentsPatchCall {
27989	c.urlParams_.Set("languageCode", languageCode)
27990	return c
27991}
27992
27993// UpdateMask sets the optional parameter "updateMask": The mask to
27994// control which fields get updated. If the mask is not present, all
27995// fields will be updated.
27996func (c *ProjectsLocationsAgentsIntentsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsAgentsIntentsPatchCall {
27997	c.urlParams_.Set("updateMask", updateMask)
27998	return c
27999}
28000
28001// Fields allows partial responses to be retrieved. See
28002// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28003// for more information.
28004func (c *ProjectsLocationsAgentsIntentsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsIntentsPatchCall {
28005	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28006	return c
28007}
28008
28009// Context sets the context to be used in this call's Do method. Any
28010// pending HTTP request will be aborted if the provided context is
28011// canceled.
28012func (c *ProjectsLocationsAgentsIntentsPatchCall) Context(ctx context.Context) *ProjectsLocationsAgentsIntentsPatchCall {
28013	c.ctx_ = ctx
28014	return c
28015}
28016
28017// Header returns an http.Header that can be modified by the caller to
28018// add HTTP headers to the request.
28019func (c *ProjectsLocationsAgentsIntentsPatchCall) Header() http.Header {
28020	if c.header_ == nil {
28021		c.header_ = make(http.Header)
28022	}
28023	return c.header_
28024}
28025
28026func (c *ProjectsLocationsAgentsIntentsPatchCall) doRequest(alt string) (*http.Response, error) {
28027	reqHeaders := make(http.Header)
28028	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
28029	for k, v := range c.header_ {
28030		reqHeaders[k] = v
28031	}
28032	reqHeaders.Set("User-Agent", c.s.userAgent())
28033	var body io.Reader = nil
28034	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3intent)
28035	if err != nil {
28036		return nil, err
28037	}
28038	reqHeaders.Set("Content-Type", "application/json")
28039	c.urlParams_.Set("alt", alt)
28040	c.urlParams_.Set("prettyPrint", "false")
28041	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
28042	urls += "?" + c.urlParams_.Encode()
28043	req, err := http.NewRequest("PATCH", urls, body)
28044	if err != nil {
28045		return nil, err
28046	}
28047	req.Header = reqHeaders
28048	googleapi.Expand(req.URL, map[string]string{
28049		"name": c.nameid,
28050	})
28051	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28052}
28053
28054// Do executes the "dialogflow.projects.locations.agents.intents.patch" call.
28055// Exactly one of *GoogleCloudDialogflowCxV3Intent or error will be
28056// non-nil. Any non-2xx status code is an error. Response headers are in
28057// either *GoogleCloudDialogflowCxV3Intent.ServerResponse.Header or (if
28058// a response was returned at all) in error.(*googleapi.Error).Header.
28059// Use googleapi.IsNotModified to check whether the returned error was
28060// because http.StatusNotModified was returned.
28061func (c *ProjectsLocationsAgentsIntentsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3Intent, error) {
28062	gensupport.SetOptions(c.urlParams_, opts...)
28063	res, err := c.doRequest("json")
28064	if res != nil && res.StatusCode == http.StatusNotModified {
28065		if res.Body != nil {
28066			res.Body.Close()
28067		}
28068		return nil, &googleapi.Error{
28069			Code:   res.StatusCode,
28070			Header: res.Header,
28071		}
28072	}
28073	if err != nil {
28074		return nil, err
28075	}
28076	defer googleapi.CloseBody(res)
28077	if err := googleapi.CheckResponse(res); err != nil {
28078		return nil, err
28079	}
28080	ret := &GoogleCloudDialogflowCxV3Intent{
28081		ServerResponse: googleapi.ServerResponse{
28082			Header:         res.Header,
28083			HTTPStatusCode: res.StatusCode,
28084		},
28085	}
28086	target := &ret
28087	if err := gensupport.DecodeResponse(target, res); err != nil {
28088		return nil, err
28089	}
28090	return ret, nil
28091	// {
28092	//   "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).",
28093	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/intents/{intentsId}",
28094	//   "httpMethod": "PATCH",
28095	//   "id": "dialogflow.projects.locations.agents.intents.patch",
28096	//   "parameterOrder": [
28097	//     "name"
28098	//   ],
28099	//   "parameters": {
28100	//     "languageCode": {
28101	//       "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.",
28102	//       "location": "query",
28103	//       "type": "string"
28104	//     },
28105	//     "name": {
28106	//       "description": "The unique identifier of the intent. Required for the Intents.UpdateIntent method. Intents.CreateIntent populates the name automatically. Format: `projects//locations//agents//intents/`.",
28107	//       "location": "path",
28108	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/intents/[^/]+$",
28109	//       "required": true,
28110	//       "type": "string"
28111	//     },
28112	//     "updateMask": {
28113	//       "description": "The mask to control which fields get updated. If the mask is not present, all fields will be updated.",
28114	//       "format": "google-fieldmask",
28115	//       "location": "query",
28116	//       "type": "string"
28117	//     }
28118	//   },
28119	//   "path": "v3/{+name}",
28120	//   "request": {
28121	//     "$ref": "GoogleCloudDialogflowCxV3Intent"
28122	//   },
28123	//   "response": {
28124	//     "$ref": "GoogleCloudDialogflowCxV3Intent"
28125	//   },
28126	//   "scopes": [
28127	//     "https://www.googleapis.com/auth/cloud-platform",
28128	//     "https://www.googleapis.com/auth/dialogflow"
28129	//   ]
28130	// }
28131
28132}
28133
28134// method id "dialogflow.projects.locations.agents.sessions.detectIntent":
28135
28136type ProjectsLocationsAgentsSessionsDetectIntentCall struct {
28137	s                                            *Service
28138	sessionid                                    string
28139	googleclouddialogflowcxv3detectintentrequest *GoogleCloudDialogflowCxV3DetectIntentRequest
28140	urlParams_                                   gensupport.URLParams
28141	ctx_                                         context.Context
28142	header_                                      http.Header
28143}
28144
28145// DetectIntent: Processes a natural language query and returns
28146// structured, actionable data as a result. This method is not
28147// idempotent, because it may cause session entity types to be updated,
28148// which in turn might affect results of future queries. Note: Always
28149// use agent versions for production traffic. See Versions and
28150// environments
28151// (https://cloud.google.com/dialogflow/cx/docs/concept/version).
28152//
28153// - session: The name of the session this query is sent to. Format:
28154//   `projects//locations//agents//sessions/` or
28155//   `projects//locations//agents//environments//sessions/`. If
28156//   `Environment ID` is not specified, we assume default 'draft'
28157//   environment. It's up to the API caller to choose an appropriate
28158//   `Session ID`. It can be a random number or some type of session
28159//   identifiers (preferably hashed). The length of the `Session ID`
28160//   must not exceed 36 characters. For more information, see the
28161//   sessions guide
28162//   (https://cloud.google.com/dialogflow/cx/docs/concept/session).
28163//   Note: Always use agent versions for production traffic. See
28164//   Versions and environments
28165//   (https://cloud.google.com/dialogflow/cx/docs/concept/version).
28166func (r *ProjectsLocationsAgentsSessionsService) DetectIntent(sessionid string, googleclouddialogflowcxv3detectintentrequest *GoogleCloudDialogflowCxV3DetectIntentRequest) *ProjectsLocationsAgentsSessionsDetectIntentCall {
28167	c := &ProjectsLocationsAgentsSessionsDetectIntentCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28168	c.sessionid = sessionid
28169	c.googleclouddialogflowcxv3detectintentrequest = googleclouddialogflowcxv3detectintentrequest
28170	return c
28171}
28172
28173// Fields allows partial responses to be retrieved. See
28174// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28175// for more information.
28176func (c *ProjectsLocationsAgentsSessionsDetectIntentCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsSessionsDetectIntentCall {
28177	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28178	return c
28179}
28180
28181// Context sets the context to be used in this call's Do method. Any
28182// pending HTTP request will be aborted if the provided context is
28183// canceled.
28184func (c *ProjectsLocationsAgentsSessionsDetectIntentCall) Context(ctx context.Context) *ProjectsLocationsAgentsSessionsDetectIntentCall {
28185	c.ctx_ = ctx
28186	return c
28187}
28188
28189// Header returns an http.Header that can be modified by the caller to
28190// add HTTP headers to the request.
28191func (c *ProjectsLocationsAgentsSessionsDetectIntentCall) Header() http.Header {
28192	if c.header_ == nil {
28193		c.header_ = make(http.Header)
28194	}
28195	return c.header_
28196}
28197
28198func (c *ProjectsLocationsAgentsSessionsDetectIntentCall) doRequest(alt string) (*http.Response, error) {
28199	reqHeaders := make(http.Header)
28200	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
28201	for k, v := range c.header_ {
28202		reqHeaders[k] = v
28203	}
28204	reqHeaders.Set("User-Agent", c.s.userAgent())
28205	var body io.Reader = nil
28206	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3detectintentrequest)
28207	if err != nil {
28208		return nil, err
28209	}
28210	reqHeaders.Set("Content-Type", "application/json")
28211	c.urlParams_.Set("alt", alt)
28212	c.urlParams_.Set("prettyPrint", "false")
28213	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+session}:detectIntent")
28214	urls += "?" + c.urlParams_.Encode()
28215	req, err := http.NewRequest("POST", urls, body)
28216	if err != nil {
28217		return nil, err
28218	}
28219	req.Header = reqHeaders
28220	googleapi.Expand(req.URL, map[string]string{
28221		"session": c.sessionid,
28222	})
28223	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28224}
28225
28226// Do executes the "dialogflow.projects.locations.agents.sessions.detectIntent" call.
28227// Exactly one of *GoogleCloudDialogflowCxV3DetectIntentResponse or
28228// error will be non-nil. Any non-2xx status code is an error. Response
28229// headers are in either
28230// *GoogleCloudDialogflowCxV3DetectIntentResponse.ServerResponse.Header
28231// or (if a response was returned at all) in
28232// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
28233// whether the returned error was because http.StatusNotModified was
28234// returned.
28235func (c *ProjectsLocationsAgentsSessionsDetectIntentCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3DetectIntentResponse, error) {
28236	gensupport.SetOptions(c.urlParams_, opts...)
28237	res, err := c.doRequest("json")
28238	if res != nil && res.StatusCode == http.StatusNotModified {
28239		if res.Body != nil {
28240			res.Body.Close()
28241		}
28242		return nil, &googleapi.Error{
28243			Code:   res.StatusCode,
28244			Header: res.Header,
28245		}
28246	}
28247	if err != nil {
28248		return nil, err
28249	}
28250	defer googleapi.CloseBody(res)
28251	if err := googleapi.CheckResponse(res); err != nil {
28252		return nil, err
28253	}
28254	ret := &GoogleCloudDialogflowCxV3DetectIntentResponse{
28255		ServerResponse: googleapi.ServerResponse{
28256			Header:         res.Header,
28257			HTTPStatusCode: res.StatusCode,
28258		},
28259	}
28260	target := &ret
28261	if err := gensupport.DecodeResponse(target, res); err != nil {
28262		return nil, err
28263	}
28264	return ret, nil
28265	// {
28266	//   "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).",
28267	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/sessions/{sessionsId}:detectIntent",
28268	//   "httpMethod": "POST",
28269	//   "id": "dialogflow.projects.locations.agents.sessions.detectIntent",
28270	//   "parameterOrder": [
28271	//     "session"
28272	//   ],
28273	//   "parameters": {
28274	//     "session": {
28275	//       "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).",
28276	//       "location": "path",
28277	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/sessions/[^/]+$",
28278	//       "required": true,
28279	//       "type": "string"
28280	//     }
28281	//   },
28282	//   "path": "v3/{+session}:detectIntent",
28283	//   "request": {
28284	//     "$ref": "GoogleCloudDialogflowCxV3DetectIntentRequest"
28285	//   },
28286	//   "response": {
28287	//     "$ref": "GoogleCloudDialogflowCxV3DetectIntentResponse"
28288	//   },
28289	//   "scopes": [
28290	//     "https://www.googleapis.com/auth/cloud-platform",
28291	//     "https://www.googleapis.com/auth/dialogflow"
28292	//   ]
28293	// }
28294
28295}
28296
28297// method id "dialogflow.projects.locations.agents.sessions.fulfillIntent":
28298
28299type ProjectsLocationsAgentsSessionsFulfillIntentCall struct {
28300	s                                             *Service
28301	sessionid                                     string
28302	googleclouddialogflowcxv3fulfillintentrequest *GoogleCloudDialogflowCxV3FulfillIntentRequest
28303	urlParams_                                    gensupport.URLParams
28304	ctx_                                          context.Context
28305	header_                                       http.Header
28306}
28307
28308// FulfillIntent: Fulfills a matched intent returned by MatchIntent.
28309// Must be called after MatchIntent, with input from
28310// MatchIntentResponse. Otherwise, the behavior is undefined.
28311//
28312// - session: The name of the session this query is sent to. Format:
28313//   `projects//locations//agents//sessions/` or
28314//   `projects//locations//agents//environments//sessions/`. If
28315//   `Environment ID` is not specified, we assume default 'draft'
28316//   environment. It's up to the API caller to choose an appropriate
28317//   `Session ID`. It can be a random number or some type of session
28318//   identifiers (preferably hashed). The length of the `Session ID`
28319//   must not exceed 36 characters. For more information, see the
28320//   sessions guide
28321//   (https://cloud.google.com/dialogflow/cx/docs/concept/session).
28322func (r *ProjectsLocationsAgentsSessionsService) FulfillIntent(sessionid string, googleclouddialogflowcxv3fulfillintentrequest *GoogleCloudDialogflowCxV3FulfillIntentRequest) *ProjectsLocationsAgentsSessionsFulfillIntentCall {
28323	c := &ProjectsLocationsAgentsSessionsFulfillIntentCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28324	c.sessionid = sessionid
28325	c.googleclouddialogflowcxv3fulfillintentrequest = googleclouddialogflowcxv3fulfillintentrequest
28326	return c
28327}
28328
28329// Fields allows partial responses to be retrieved. See
28330// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28331// for more information.
28332func (c *ProjectsLocationsAgentsSessionsFulfillIntentCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsSessionsFulfillIntentCall {
28333	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28334	return c
28335}
28336
28337// Context sets the context to be used in this call's Do method. Any
28338// pending HTTP request will be aborted if the provided context is
28339// canceled.
28340func (c *ProjectsLocationsAgentsSessionsFulfillIntentCall) Context(ctx context.Context) *ProjectsLocationsAgentsSessionsFulfillIntentCall {
28341	c.ctx_ = ctx
28342	return c
28343}
28344
28345// Header returns an http.Header that can be modified by the caller to
28346// add HTTP headers to the request.
28347func (c *ProjectsLocationsAgentsSessionsFulfillIntentCall) Header() http.Header {
28348	if c.header_ == nil {
28349		c.header_ = make(http.Header)
28350	}
28351	return c.header_
28352}
28353
28354func (c *ProjectsLocationsAgentsSessionsFulfillIntentCall) doRequest(alt string) (*http.Response, error) {
28355	reqHeaders := make(http.Header)
28356	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
28357	for k, v := range c.header_ {
28358		reqHeaders[k] = v
28359	}
28360	reqHeaders.Set("User-Agent", c.s.userAgent())
28361	var body io.Reader = nil
28362	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3fulfillintentrequest)
28363	if err != nil {
28364		return nil, err
28365	}
28366	reqHeaders.Set("Content-Type", "application/json")
28367	c.urlParams_.Set("alt", alt)
28368	c.urlParams_.Set("prettyPrint", "false")
28369	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+session}:fulfillIntent")
28370	urls += "?" + c.urlParams_.Encode()
28371	req, err := http.NewRequest("POST", urls, body)
28372	if err != nil {
28373		return nil, err
28374	}
28375	req.Header = reqHeaders
28376	googleapi.Expand(req.URL, map[string]string{
28377		"session": c.sessionid,
28378	})
28379	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28380}
28381
28382// Do executes the "dialogflow.projects.locations.agents.sessions.fulfillIntent" call.
28383// Exactly one of *GoogleCloudDialogflowCxV3FulfillIntentResponse or
28384// error will be non-nil. Any non-2xx status code is an error. Response
28385// headers are in either
28386// *GoogleCloudDialogflowCxV3FulfillIntentResponse.ServerResponse.Header
28387// or (if a response was returned at all) in
28388// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
28389// whether the returned error was because http.StatusNotModified was
28390// returned.
28391func (c *ProjectsLocationsAgentsSessionsFulfillIntentCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3FulfillIntentResponse, error) {
28392	gensupport.SetOptions(c.urlParams_, opts...)
28393	res, err := c.doRequest("json")
28394	if res != nil && res.StatusCode == http.StatusNotModified {
28395		if res.Body != nil {
28396			res.Body.Close()
28397		}
28398		return nil, &googleapi.Error{
28399			Code:   res.StatusCode,
28400			Header: res.Header,
28401		}
28402	}
28403	if err != nil {
28404		return nil, err
28405	}
28406	defer googleapi.CloseBody(res)
28407	if err := googleapi.CheckResponse(res); err != nil {
28408		return nil, err
28409	}
28410	ret := &GoogleCloudDialogflowCxV3FulfillIntentResponse{
28411		ServerResponse: googleapi.ServerResponse{
28412			Header:         res.Header,
28413			HTTPStatusCode: res.StatusCode,
28414		},
28415	}
28416	target := &ret
28417	if err := gensupport.DecodeResponse(target, res); err != nil {
28418		return nil, err
28419	}
28420	return ret, nil
28421	// {
28422	//   "description": "Fulfills a matched intent returned by MatchIntent. Must be called after MatchIntent, with input from MatchIntentResponse. Otherwise, the behavior is undefined.",
28423	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/sessions/{sessionsId}:fulfillIntent",
28424	//   "httpMethod": "POST",
28425	//   "id": "dialogflow.projects.locations.agents.sessions.fulfillIntent",
28426	//   "parameterOrder": [
28427	//     "session"
28428	//   ],
28429	//   "parameters": {
28430	//     "session": {
28431	//       "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).",
28432	//       "location": "path",
28433	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/sessions/[^/]+$",
28434	//       "required": true,
28435	//       "type": "string"
28436	//     }
28437	//   },
28438	//   "path": "v3/{+session}:fulfillIntent",
28439	//   "request": {
28440	//     "$ref": "GoogleCloudDialogflowCxV3FulfillIntentRequest"
28441	//   },
28442	//   "response": {
28443	//     "$ref": "GoogleCloudDialogflowCxV3FulfillIntentResponse"
28444	//   },
28445	//   "scopes": [
28446	//     "https://www.googleapis.com/auth/cloud-platform",
28447	//     "https://www.googleapis.com/auth/dialogflow"
28448	//   ]
28449	// }
28450
28451}
28452
28453// method id "dialogflow.projects.locations.agents.sessions.matchIntent":
28454
28455type ProjectsLocationsAgentsSessionsMatchIntentCall struct {
28456	s                                           *Service
28457	sessionid                                   string
28458	googleclouddialogflowcxv3matchintentrequest *GoogleCloudDialogflowCxV3MatchIntentRequest
28459	urlParams_                                  gensupport.URLParams
28460	ctx_                                        context.Context
28461	header_                                     http.Header
28462}
28463
28464// MatchIntent: Returns preliminary intent match results, doesn't change
28465// the session status.
28466//
28467// - session: The name of the session this query is sent to. Format:
28468//   `projects//locations//agents//sessions/` or
28469//   `projects//locations//agents//environments//sessions/`. If
28470//   `Environment ID` is not specified, we assume default 'draft'
28471//   environment. It's up to the API caller to choose an appropriate
28472//   `Session ID`. It can be a random number or some type of session
28473//   identifiers (preferably hashed). The length of the `Session ID`
28474//   must not exceed 36 characters. For more information, see the
28475//   sessions guide
28476//   (https://cloud.google.com/dialogflow/cx/docs/concept/session).
28477func (r *ProjectsLocationsAgentsSessionsService) MatchIntent(sessionid string, googleclouddialogflowcxv3matchintentrequest *GoogleCloudDialogflowCxV3MatchIntentRequest) *ProjectsLocationsAgentsSessionsMatchIntentCall {
28478	c := &ProjectsLocationsAgentsSessionsMatchIntentCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28479	c.sessionid = sessionid
28480	c.googleclouddialogflowcxv3matchintentrequest = googleclouddialogflowcxv3matchintentrequest
28481	return c
28482}
28483
28484// Fields allows partial responses to be retrieved. See
28485// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28486// for more information.
28487func (c *ProjectsLocationsAgentsSessionsMatchIntentCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsSessionsMatchIntentCall {
28488	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28489	return c
28490}
28491
28492// Context sets the context to be used in this call's Do method. Any
28493// pending HTTP request will be aborted if the provided context is
28494// canceled.
28495func (c *ProjectsLocationsAgentsSessionsMatchIntentCall) Context(ctx context.Context) *ProjectsLocationsAgentsSessionsMatchIntentCall {
28496	c.ctx_ = ctx
28497	return c
28498}
28499
28500// Header returns an http.Header that can be modified by the caller to
28501// add HTTP headers to the request.
28502func (c *ProjectsLocationsAgentsSessionsMatchIntentCall) Header() http.Header {
28503	if c.header_ == nil {
28504		c.header_ = make(http.Header)
28505	}
28506	return c.header_
28507}
28508
28509func (c *ProjectsLocationsAgentsSessionsMatchIntentCall) doRequest(alt string) (*http.Response, error) {
28510	reqHeaders := make(http.Header)
28511	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
28512	for k, v := range c.header_ {
28513		reqHeaders[k] = v
28514	}
28515	reqHeaders.Set("User-Agent", c.s.userAgent())
28516	var body io.Reader = nil
28517	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3matchintentrequest)
28518	if err != nil {
28519		return nil, err
28520	}
28521	reqHeaders.Set("Content-Type", "application/json")
28522	c.urlParams_.Set("alt", alt)
28523	c.urlParams_.Set("prettyPrint", "false")
28524	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+session}:matchIntent")
28525	urls += "?" + c.urlParams_.Encode()
28526	req, err := http.NewRequest("POST", urls, body)
28527	if err != nil {
28528		return nil, err
28529	}
28530	req.Header = reqHeaders
28531	googleapi.Expand(req.URL, map[string]string{
28532		"session": c.sessionid,
28533	})
28534	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28535}
28536
28537// Do executes the "dialogflow.projects.locations.agents.sessions.matchIntent" call.
28538// Exactly one of *GoogleCloudDialogflowCxV3MatchIntentResponse or error
28539// will be non-nil. Any non-2xx status code is an error. Response
28540// headers are in either
28541// *GoogleCloudDialogflowCxV3MatchIntentResponse.ServerResponse.Header
28542// or (if a response was returned at all) in
28543// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
28544// whether the returned error was because http.StatusNotModified was
28545// returned.
28546func (c *ProjectsLocationsAgentsSessionsMatchIntentCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3MatchIntentResponse, error) {
28547	gensupport.SetOptions(c.urlParams_, opts...)
28548	res, err := c.doRequest("json")
28549	if res != nil && res.StatusCode == http.StatusNotModified {
28550		if res.Body != nil {
28551			res.Body.Close()
28552		}
28553		return nil, &googleapi.Error{
28554			Code:   res.StatusCode,
28555			Header: res.Header,
28556		}
28557	}
28558	if err != nil {
28559		return nil, err
28560	}
28561	defer googleapi.CloseBody(res)
28562	if err := googleapi.CheckResponse(res); err != nil {
28563		return nil, err
28564	}
28565	ret := &GoogleCloudDialogflowCxV3MatchIntentResponse{
28566		ServerResponse: googleapi.ServerResponse{
28567			Header:         res.Header,
28568			HTTPStatusCode: res.StatusCode,
28569		},
28570	}
28571	target := &ret
28572	if err := gensupport.DecodeResponse(target, res); err != nil {
28573		return nil, err
28574	}
28575	return ret, nil
28576	// {
28577	//   "description": "Returns preliminary intent match results, doesn't change the session status.",
28578	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/sessions/{sessionsId}:matchIntent",
28579	//   "httpMethod": "POST",
28580	//   "id": "dialogflow.projects.locations.agents.sessions.matchIntent",
28581	//   "parameterOrder": [
28582	//     "session"
28583	//   ],
28584	//   "parameters": {
28585	//     "session": {
28586	//       "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).",
28587	//       "location": "path",
28588	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/sessions/[^/]+$",
28589	//       "required": true,
28590	//       "type": "string"
28591	//     }
28592	//   },
28593	//   "path": "v3/{+session}:matchIntent",
28594	//   "request": {
28595	//     "$ref": "GoogleCloudDialogflowCxV3MatchIntentRequest"
28596	//   },
28597	//   "response": {
28598	//     "$ref": "GoogleCloudDialogflowCxV3MatchIntentResponse"
28599	//   },
28600	//   "scopes": [
28601	//     "https://www.googleapis.com/auth/cloud-platform",
28602	//     "https://www.googleapis.com/auth/dialogflow"
28603	//   ]
28604	// }
28605
28606}
28607
28608// method id "dialogflow.projects.locations.agents.sessions.entityTypes.create":
28609
28610type ProjectsLocationsAgentsSessionsEntityTypesCreateCall struct {
28611	s                                          *Service
28612	parent                                     string
28613	googleclouddialogflowcxv3sessionentitytype *GoogleCloudDialogflowCxV3SessionEntityType
28614	urlParams_                                 gensupport.URLParams
28615	ctx_                                       context.Context
28616	header_                                    http.Header
28617}
28618
28619// Create: Creates a session entity type.
28620//
28621// - parent: The session to create a session entity type for. Format:
28622//   `projects//locations//agents//sessions/` or
28623//   `projects//locations//agents//environments//sessions/`. If
28624//   `Environment ID` is not specified, we assume default 'draft'
28625//   environment.
28626func (r *ProjectsLocationsAgentsSessionsEntityTypesService) Create(parent string, googleclouddialogflowcxv3sessionentitytype *GoogleCloudDialogflowCxV3SessionEntityType) *ProjectsLocationsAgentsSessionsEntityTypesCreateCall {
28627	c := &ProjectsLocationsAgentsSessionsEntityTypesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28628	c.parent = parent
28629	c.googleclouddialogflowcxv3sessionentitytype = googleclouddialogflowcxv3sessionentitytype
28630	return c
28631}
28632
28633// Fields allows partial responses to be retrieved. See
28634// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28635// for more information.
28636func (c *ProjectsLocationsAgentsSessionsEntityTypesCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsSessionsEntityTypesCreateCall {
28637	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28638	return c
28639}
28640
28641// Context sets the context to be used in this call's Do method. Any
28642// pending HTTP request will be aborted if the provided context is
28643// canceled.
28644func (c *ProjectsLocationsAgentsSessionsEntityTypesCreateCall) Context(ctx context.Context) *ProjectsLocationsAgentsSessionsEntityTypesCreateCall {
28645	c.ctx_ = ctx
28646	return c
28647}
28648
28649// Header returns an http.Header that can be modified by the caller to
28650// add HTTP headers to the request.
28651func (c *ProjectsLocationsAgentsSessionsEntityTypesCreateCall) Header() http.Header {
28652	if c.header_ == nil {
28653		c.header_ = make(http.Header)
28654	}
28655	return c.header_
28656}
28657
28658func (c *ProjectsLocationsAgentsSessionsEntityTypesCreateCall) doRequest(alt string) (*http.Response, error) {
28659	reqHeaders := make(http.Header)
28660	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
28661	for k, v := range c.header_ {
28662		reqHeaders[k] = v
28663	}
28664	reqHeaders.Set("User-Agent", c.s.userAgent())
28665	var body io.Reader = nil
28666	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3sessionentitytype)
28667	if err != nil {
28668		return nil, err
28669	}
28670	reqHeaders.Set("Content-Type", "application/json")
28671	c.urlParams_.Set("alt", alt)
28672	c.urlParams_.Set("prettyPrint", "false")
28673	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/entityTypes")
28674	urls += "?" + c.urlParams_.Encode()
28675	req, err := http.NewRequest("POST", urls, body)
28676	if err != nil {
28677		return nil, err
28678	}
28679	req.Header = reqHeaders
28680	googleapi.Expand(req.URL, map[string]string{
28681		"parent": c.parent,
28682	})
28683	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28684}
28685
28686// Do executes the "dialogflow.projects.locations.agents.sessions.entityTypes.create" call.
28687// Exactly one of *GoogleCloudDialogflowCxV3SessionEntityType or error
28688// will be non-nil. Any non-2xx status code is an error. Response
28689// headers are in either
28690// *GoogleCloudDialogflowCxV3SessionEntityType.ServerResponse.Header or
28691// (if a response was returned at all) in
28692// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
28693// whether the returned error was because http.StatusNotModified was
28694// returned.
28695func (c *ProjectsLocationsAgentsSessionsEntityTypesCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3SessionEntityType, error) {
28696	gensupport.SetOptions(c.urlParams_, opts...)
28697	res, err := c.doRequest("json")
28698	if res != nil && res.StatusCode == http.StatusNotModified {
28699		if res.Body != nil {
28700			res.Body.Close()
28701		}
28702		return nil, &googleapi.Error{
28703			Code:   res.StatusCode,
28704			Header: res.Header,
28705		}
28706	}
28707	if err != nil {
28708		return nil, err
28709	}
28710	defer googleapi.CloseBody(res)
28711	if err := googleapi.CheckResponse(res); err != nil {
28712		return nil, err
28713	}
28714	ret := &GoogleCloudDialogflowCxV3SessionEntityType{
28715		ServerResponse: googleapi.ServerResponse{
28716			Header:         res.Header,
28717			HTTPStatusCode: res.StatusCode,
28718		},
28719	}
28720	target := &ret
28721	if err := gensupport.DecodeResponse(target, res); err != nil {
28722		return nil, err
28723	}
28724	return ret, nil
28725	// {
28726	//   "description": "Creates a session entity type.",
28727	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/sessions/{sessionsId}/entityTypes",
28728	//   "httpMethod": "POST",
28729	//   "id": "dialogflow.projects.locations.agents.sessions.entityTypes.create",
28730	//   "parameterOrder": [
28731	//     "parent"
28732	//   ],
28733	//   "parameters": {
28734	//     "parent": {
28735	//       "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.",
28736	//       "location": "path",
28737	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/sessions/[^/]+$",
28738	//       "required": true,
28739	//       "type": "string"
28740	//     }
28741	//   },
28742	//   "path": "v3/{+parent}/entityTypes",
28743	//   "request": {
28744	//     "$ref": "GoogleCloudDialogflowCxV3SessionEntityType"
28745	//   },
28746	//   "response": {
28747	//     "$ref": "GoogleCloudDialogflowCxV3SessionEntityType"
28748	//   },
28749	//   "scopes": [
28750	//     "https://www.googleapis.com/auth/cloud-platform",
28751	//     "https://www.googleapis.com/auth/dialogflow"
28752	//   ]
28753	// }
28754
28755}
28756
28757// method id "dialogflow.projects.locations.agents.sessions.entityTypes.delete":
28758
28759type ProjectsLocationsAgentsSessionsEntityTypesDeleteCall struct {
28760	s          *Service
28761	name       string
28762	urlParams_ gensupport.URLParams
28763	ctx_       context.Context
28764	header_    http.Header
28765}
28766
28767// Delete: Deletes the specified session entity type.
28768//
28769// - name: The name of the session entity type to delete. Format:
28770//   `projects//locations//agents//sessions//entityTypes/` or
28771//   `projects//locations//agents//environments//sessions//entityTypes/`.
28772//    If `Environment ID` is not specified, we assume default 'draft'
28773//   environment.
28774func (r *ProjectsLocationsAgentsSessionsEntityTypesService) Delete(name string) *ProjectsLocationsAgentsSessionsEntityTypesDeleteCall {
28775	c := &ProjectsLocationsAgentsSessionsEntityTypesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28776	c.name = name
28777	return c
28778}
28779
28780// Fields allows partial responses to be retrieved. See
28781// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28782// for more information.
28783func (c *ProjectsLocationsAgentsSessionsEntityTypesDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsSessionsEntityTypesDeleteCall {
28784	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28785	return c
28786}
28787
28788// Context sets the context to be used in this call's Do method. Any
28789// pending HTTP request will be aborted if the provided context is
28790// canceled.
28791func (c *ProjectsLocationsAgentsSessionsEntityTypesDeleteCall) Context(ctx context.Context) *ProjectsLocationsAgentsSessionsEntityTypesDeleteCall {
28792	c.ctx_ = ctx
28793	return c
28794}
28795
28796// Header returns an http.Header that can be modified by the caller to
28797// add HTTP headers to the request.
28798func (c *ProjectsLocationsAgentsSessionsEntityTypesDeleteCall) Header() http.Header {
28799	if c.header_ == nil {
28800		c.header_ = make(http.Header)
28801	}
28802	return c.header_
28803}
28804
28805func (c *ProjectsLocationsAgentsSessionsEntityTypesDeleteCall) doRequest(alt string) (*http.Response, error) {
28806	reqHeaders := make(http.Header)
28807	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
28808	for k, v := range c.header_ {
28809		reqHeaders[k] = v
28810	}
28811	reqHeaders.Set("User-Agent", c.s.userAgent())
28812	var body io.Reader = nil
28813	c.urlParams_.Set("alt", alt)
28814	c.urlParams_.Set("prettyPrint", "false")
28815	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
28816	urls += "?" + c.urlParams_.Encode()
28817	req, err := http.NewRequest("DELETE", urls, body)
28818	if err != nil {
28819		return nil, err
28820	}
28821	req.Header = reqHeaders
28822	googleapi.Expand(req.URL, map[string]string{
28823		"name": c.name,
28824	})
28825	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28826}
28827
28828// Do executes the "dialogflow.projects.locations.agents.sessions.entityTypes.delete" call.
28829// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
28830// non-2xx status code is an error. Response headers are in either
28831// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
28832// returned at all) in error.(*googleapi.Error).Header. Use
28833// googleapi.IsNotModified to check whether the returned error was
28834// because http.StatusNotModified was returned.
28835func (c *ProjectsLocationsAgentsSessionsEntityTypesDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
28836	gensupport.SetOptions(c.urlParams_, opts...)
28837	res, err := c.doRequest("json")
28838	if res != nil && res.StatusCode == http.StatusNotModified {
28839		if res.Body != nil {
28840			res.Body.Close()
28841		}
28842		return nil, &googleapi.Error{
28843			Code:   res.StatusCode,
28844			Header: res.Header,
28845		}
28846	}
28847	if err != nil {
28848		return nil, err
28849	}
28850	defer googleapi.CloseBody(res)
28851	if err := googleapi.CheckResponse(res); err != nil {
28852		return nil, err
28853	}
28854	ret := &GoogleProtobufEmpty{
28855		ServerResponse: googleapi.ServerResponse{
28856			Header:         res.Header,
28857			HTTPStatusCode: res.StatusCode,
28858		},
28859	}
28860	target := &ret
28861	if err := gensupport.DecodeResponse(target, res); err != nil {
28862		return nil, err
28863	}
28864	return ret, nil
28865	// {
28866	//   "description": "Deletes the specified session entity type.",
28867	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/sessions/{sessionsId}/entityTypes/{entityTypesId}",
28868	//   "httpMethod": "DELETE",
28869	//   "id": "dialogflow.projects.locations.agents.sessions.entityTypes.delete",
28870	//   "parameterOrder": [
28871	//     "name"
28872	//   ],
28873	//   "parameters": {
28874	//     "name": {
28875	//       "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.",
28876	//       "location": "path",
28877	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/sessions/[^/]+/entityTypes/[^/]+$",
28878	//       "required": true,
28879	//       "type": "string"
28880	//     }
28881	//   },
28882	//   "path": "v3/{+name}",
28883	//   "response": {
28884	//     "$ref": "GoogleProtobufEmpty"
28885	//   },
28886	//   "scopes": [
28887	//     "https://www.googleapis.com/auth/cloud-platform",
28888	//     "https://www.googleapis.com/auth/dialogflow"
28889	//   ]
28890	// }
28891
28892}
28893
28894// method id "dialogflow.projects.locations.agents.sessions.entityTypes.get":
28895
28896type ProjectsLocationsAgentsSessionsEntityTypesGetCall struct {
28897	s            *Service
28898	name         string
28899	urlParams_   gensupport.URLParams
28900	ifNoneMatch_ string
28901	ctx_         context.Context
28902	header_      http.Header
28903}
28904
28905// Get: Retrieves the specified session entity type.
28906//
28907// - name: The name of the session entity type. Format:
28908//   `projects//locations//agents//sessions//entityTypes/` or
28909//   `projects//locations//agents//environments//sessions//entityTypes/`.
28910//    If `Environment ID` is not specified, we assume default 'draft'
28911//   environment.
28912func (r *ProjectsLocationsAgentsSessionsEntityTypesService) Get(name string) *ProjectsLocationsAgentsSessionsEntityTypesGetCall {
28913	c := &ProjectsLocationsAgentsSessionsEntityTypesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28914	c.name = name
28915	return c
28916}
28917
28918// Fields allows partial responses to be retrieved. See
28919// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28920// for more information.
28921func (c *ProjectsLocationsAgentsSessionsEntityTypesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsSessionsEntityTypesGetCall {
28922	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28923	return c
28924}
28925
28926// IfNoneMatch sets the optional parameter which makes the operation
28927// fail if the object's ETag matches the given value. This is useful for
28928// getting updates only after the object has changed since the last
28929// request. Use googleapi.IsNotModified to check whether the response
28930// error from Do is the result of In-None-Match.
28931func (c *ProjectsLocationsAgentsSessionsEntityTypesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsSessionsEntityTypesGetCall {
28932	c.ifNoneMatch_ = entityTag
28933	return c
28934}
28935
28936// Context sets the context to be used in this call's Do method. Any
28937// pending HTTP request will be aborted if the provided context is
28938// canceled.
28939func (c *ProjectsLocationsAgentsSessionsEntityTypesGetCall) Context(ctx context.Context) *ProjectsLocationsAgentsSessionsEntityTypesGetCall {
28940	c.ctx_ = ctx
28941	return c
28942}
28943
28944// Header returns an http.Header that can be modified by the caller to
28945// add HTTP headers to the request.
28946func (c *ProjectsLocationsAgentsSessionsEntityTypesGetCall) Header() http.Header {
28947	if c.header_ == nil {
28948		c.header_ = make(http.Header)
28949	}
28950	return c.header_
28951}
28952
28953func (c *ProjectsLocationsAgentsSessionsEntityTypesGetCall) doRequest(alt string) (*http.Response, error) {
28954	reqHeaders := make(http.Header)
28955	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
28956	for k, v := range c.header_ {
28957		reqHeaders[k] = v
28958	}
28959	reqHeaders.Set("User-Agent", c.s.userAgent())
28960	if c.ifNoneMatch_ != "" {
28961		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
28962	}
28963	var body io.Reader = nil
28964	c.urlParams_.Set("alt", alt)
28965	c.urlParams_.Set("prettyPrint", "false")
28966	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
28967	urls += "?" + c.urlParams_.Encode()
28968	req, err := http.NewRequest("GET", urls, body)
28969	if err != nil {
28970		return nil, err
28971	}
28972	req.Header = reqHeaders
28973	googleapi.Expand(req.URL, map[string]string{
28974		"name": c.name,
28975	})
28976	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28977}
28978
28979// Do executes the "dialogflow.projects.locations.agents.sessions.entityTypes.get" call.
28980// Exactly one of *GoogleCloudDialogflowCxV3SessionEntityType or error
28981// will be non-nil. Any non-2xx status code is an error. Response
28982// headers are in either
28983// *GoogleCloudDialogflowCxV3SessionEntityType.ServerResponse.Header or
28984// (if a response was returned at all) in
28985// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
28986// whether the returned error was because http.StatusNotModified was
28987// returned.
28988func (c *ProjectsLocationsAgentsSessionsEntityTypesGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3SessionEntityType, error) {
28989	gensupport.SetOptions(c.urlParams_, opts...)
28990	res, err := c.doRequest("json")
28991	if res != nil && res.StatusCode == http.StatusNotModified {
28992		if res.Body != nil {
28993			res.Body.Close()
28994		}
28995		return nil, &googleapi.Error{
28996			Code:   res.StatusCode,
28997			Header: res.Header,
28998		}
28999	}
29000	if err != nil {
29001		return nil, err
29002	}
29003	defer googleapi.CloseBody(res)
29004	if err := googleapi.CheckResponse(res); err != nil {
29005		return nil, err
29006	}
29007	ret := &GoogleCloudDialogflowCxV3SessionEntityType{
29008		ServerResponse: googleapi.ServerResponse{
29009			Header:         res.Header,
29010			HTTPStatusCode: res.StatusCode,
29011		},
29012	}
29013	target := &ret
29014	if err := gensupport.DecodeResponse(target, res); err != nil {
29015		return nil, err
29016	}
29017	return ret, nil
29018	// {
29019	//   "description": "Retrieves the specified session entity type.",
29020	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/sessions/{sessionsId}/entityTypes/{entityTypesId}",
29021	//   "httpMethod": "GET",
29022	//   "id": "dialogflow.projects.locations.agents.sessions.entityTypes.get",
29023	//   "parameterOrder": [
29024	//     "name"
29025	//   ],
29026	//   "parameters": {
29027	//     "name": {
29028	//       "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.",
29029	//       "location": "path",
29030	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/sessions/[^/]+/entityTypes/[^/]+$",
29031	//       "required": true,
29032	//       "type": "string"
29033	//     }
29034	//   },
29035	//   "path": "v3/{+name}",
29036	//   "response": {
29037	//     "$ref": "GoogleCloudDialogflowCxV3SessionEntityType"
29038	//   },
29039	//   "scopes": [
29040	//     "https://www.googleapis.com/auth/cloud-platform",
29041	//     "https://www.googleapis.com/auth/dialogflow"
29042	//   ]
29043	// }
29044
29045}
29046
29047// method id "dialogflow.projects.locations.agents.sessions.entityTypes.list":
29048
29049type ProjectsLocationsAgentsSessionsEntityTypesListCall struct {
29050	s            *Service
29051	parent       string
29052	urlParams_   gensupport.URLParams
29053	ifNoneMatch_ string
29054	ctx_         context.Context
29055	header_      http.Header
29056}
29057
29058// List: Returns the list of all session entity types in the specified
29059// session.
29060//
29061// - parent: The session to list all session entity types from. Format:
29062//   `projects//locations//agents//sessions/` or
29063//   `projects//locations//agents//environments//sessions/`. If
29064//   `Environment ID` is not specified, we assume default 'draft'
29065//   environment.
29066func (r *ProjectsLocationsAgentsSessionsEntityTypesService) List(parent string) *ProjectsLocationsAgentsSessionsEntityTypesListCall {
29067	c := &ProjectsLocationsAgentsSessionsEntityTypesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29068	c.parent = parent
29069	return c
29070}
29071
29072// PageSize sets the optional parameter "pageSize": The maximum number
29073// of items to return in a single page. By default 100 and at most 1000.
29074func (c *ProjectsLocationsAgentsSessionsEntityTypesListCall) PageSize(pageSize int64) *ProjectsLocationsAgentsSessionsEntityTypesListCall {
29075	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
29076	return c
29077}
29078
29079// PageToken sets the optional parameter "pageToken": The
29080// next_page_token value returned from a previous list request.
29081func (c *ProjectsLocationsAgentsSessionsEntityTypesListCall) PageToken(pageToken string) *ProjectsLocationsAgentsSessionsEntityTypesListCall {
29082	c.urlParams_.Set("pageToken", pageToken)
29083	return c
29084}
29085
29086// Fields allows partial responses to be retrieved. See
29087// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29088// for more information.
29089func (c *ProjectsLocationsAgentsSessionsEntityTypesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsSessionsEntityTypesListCall {
29090	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29091	return c
29092}
29093
29094// IfNoneMatch sets the optional parameter which makes the operation
29095// fail if the object's ETag matches the given value. This is useful for
29096// getting updates only after the object has changed since the last
29097// request. Use googleapi.IsNotModified to check whether the response
29098// error from Do is the result of In-None-Match.
29099func (c *ProjectsLocationsAgentsSessionsEntityTypesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsSessionsEntityTypesListCall {
29100	c.ifNoneMatch_ = entityTag
29101	return c
29102}
29103
29104// Context sets the context to be used in this call's Do method. Any
29105// pending HTTP request will be aborted if the provided context is
29106// canceled.
29107func (c *ProjectsLocationsAgentsSessionsEntityTypesListCall) Context(ctx context.Context) *ProjectsLocationsAgentsSessionsEntityTypesListCall {
29108	c.ctx_ = ctx
29109	return c
29110}
29111
29112// Header returns an http.Header that can be modified by the caller to
29113// add HTTP headers to the request.
29114func (c *ProjectsLocationsAgentsSessionsEntityTypesListCall) Header() http.Header {
29115	if c.header_ == nil {
29116		c.header_ = make(http.Header)
29117	}
29118	return c.header_
29119}
29120
29121func (c *ProjectsLocationsAgentsSessionsEntityTypesListCall) doRequest(alt string) (*http.Response, error) {
29122	reqHeaders := make(http.Header)
29123	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
29124	for k, v := range c.header_ {
29125		reqHeaders[k] = v
29126	}
29127	reqHeaders.Set("User-Agent", c.s.userAgent())
29128	if c.ifNoneMatch_ != "" {
29129		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
29130	}
29131	var body io.Reader = nil
29132	c.urlParams_.Set("alt", alt)
29133	c.urlParams_.Set("prettyPrint", "false")
29134	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/entityTypes")
29135	urls += "?" + c.urlParams_.Encode()
29136	req, err := http.NewRequest("GET", urls, body)
29137	if err != nil {
29138		return nil, err
29139	}
29140	req.Header = reqHeaders
29141	googleapi.Expand(req.URL, map[string]string{
29142		"parent": c.parent,
29143	})
29144	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29145}
29146
29147// Do executes the "dialogflow.projects.locations.agents.sessions.entityTypes.list" call.
29148// Exactly one of
29149// *GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse or error
29150// will be non-nil. Any non-2xx status code is an error. Response
29151// headers are in either
29152// *GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse.ServerRespons
29153// e.Header or (if a response was returned at all) in
29154// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
29155// whether the returned error was because http.StatusNotModified was
29156// returned.
29157func (c *ProjectsLocationsAgentsSessionsEntityTypesListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse, error) {
29158	gensupport.SetOptions(c.urlParams_, opts...)
29159	res, err := c.doRequest("json")
29160	if res != nil && res.StatusCode == http.StatusNotModified {
29161		if res.Body != nil {
29162			res.Body.Close()
29163		}
29164		return nil, &googleapi.Error{
29165			Code:   res.StatusCode,
29166			Header: res.Header,
29167		}
29168	}
29169	if err != nil {
29170		return nil, err
29171	}
29172	defer googleapi.CloseBody(res)
29173	if err := googleapi.CheckResponse(res); err != nil {
29174		return nil, err
29175	}
29176	ret := &GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse{
29177		ServerResponse: googleapi.ServerResponse{
29178			Header:         res.Header,
29179			HTTPStatusCode: res.StatusCode,
29180		},
29181	}
29182	target := &ret
29183	if err := gensupport.DecodeResponse(target, res); err != nil {
29184		return nil, err
29185	}
29186	return ret, nil
29187	// {
29188	//   "description": "Returns the list of all session entity types in the specified session.",
29189	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/sessions/{sessionsId}/entityTypes",
29190	//   "httpMethod": "GET",
29191	//   "id": "dialogflow.projects.locations.agents.sessions.entityTypes.list",
29192	//   "parameterOrder": [
29193	//     "parent"
29194	//   ],
29195	//   "parameters": {
29196	//     "pageSize": {
29197	//       "description": "The maximum number of items to return in a single page. By default 100 and at most 1000.",
29198	//       "format": "int32",
29199	//       "location": "query",
29200	//       "type": "integer"
29201	//     },
29202	//     "pageToken": {
29203	//       "description": "The next_page_token value returned from a previous list request.",
29204	//       "location": "query",
29205	//       "type": "string"
29206	//     },
29207	//     "parent": {
29208	//       "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.",
29209	//       "location": "path",
29210	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/sessions/[^/]+$",
29211	//       "required": true,
29212	//       "type": "string"
29213	//     }
29214	//   },
29215	//   "path": "v3/{+parent}/entityTypes",
29216	//   "response": {
29217	//     "$ref": "GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse"
29218	//   },
29219	//   "scopes": [
29220	//     "https://www.googleapis.com/auth/cloud-platform",
29221	//     "https://www.googleapis.com/auth/dialogflow"
29222	//   ]
29223	// }
29224
29225}
29226
29227// Pages invokes f for each page of results.
29228// A non-nil error returned from f will halt the iteration.
29229// The provided context supersedes any context provided to the Context method.
29230func (c *ProjectsLocationsAgentsSessionsEntityTypesListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse) error) error {
29231	c.ctx_ = ctx
29232	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
29233	for {
29234		x, err := c.Do()
29235		if err != nil {
29236			return err
29237		}
29238		if err := f(x); err != nil {
29239			return err
29240		}
29241		if x.NextPageToken == "" {
29242			return nil
29243		}
29244		c.PageToken(x.NextPageToken)
29245	}
29246}
29247
29248// method id "dialogflow.projects.locations.agents.sessions.entityTypes.patch":
29249
29250type ProjectsLocationsAgentsSessionsEntityTypesPatchCall struct {
29251	s                                          *Service
29252	nameid                                     string
29253	googleclouddialogflowcxv3sessionentitytype *GoogleCloudDialogflowCxV3SessionEntityType
29254	urlParams_                                 gensupport.URLParams
29255	ctx_                                       context.Context
29256	header_                                    http.Header
29257}
29258
29259// Patch: Updates the specified session entity type.
29260//
29261// - name: The unique identifier of the session entity type. Format:
29262//   `projects//locations//agents//sessions//entityTypes/` or
29263//   `projects//locations//agents//environments//sessions//entityTypes/`.
29264//    If `Environment ID` is not specified, we assume default 'draft'
29265//   environment.
29266func (r *ProjectsLocationsAgentsSessionsEntityTypesService) Patch(nameid string, googleclouddialogflowcxv3sessionentitytype *GoogleCloudDialogflowCxV3SessionEntityType) *ProjectsLocationsAgentsSessionsEntityTypesPatchCall {
29267	c := &ProjectsLocationsAgentsSessionsEntityTypesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29268	c.nameid = nameid
29269	c.googleclouddialogflowcxv3sessionentitytype = googleclouddialogflowcxv3sessionentitytype
29270	return c
29271}
29272
29273// UpdateMask sets the optional parameter "updateMask": The mask to
29274// control which fields get updated.
29275func (c *ProjectsLocationsAgentsSessionsEntityTypesPatchCall) UpdateMask(updateMask string) *ProjectsLocationsAgentsSessionsEntityTypesPatchCall {
29276	c.urlParams_.Set("updateMask", updateMask)
29277	return c
29278}
29279
29280// Fields allows partial responses to be retrieved. See
29281// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29282// for more information.
29283func (c *ProjectsLocationsAgentsSessionsEntityTypesPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsSessionsEntityTypesPatchCall {
29284	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29285	return c
29286}
29287
29288// Context sets the context to be used in this call's Do method. Any
29289// pending HTTP request will be aborted if the provided context is
29290// canceled.
29291func (c *ProjectsLocationsAgentsSessionsEntityTypesPatchCall) Context(ctx context.Context) *ProjectsLocationsAgentsSessionsEntityTypesPatchCall {
29292	c.ctx_ = ctx
29293	return c
29294}
29295
29296// Header returns an http.Header that can be modified by the caller to
29297// add HTTP headers to the request.
29298func (c *ProjectsLocationsAgentsSessionsEntityTypesPatchCall) Header() http.Header {
29299	if c.header_ == nil {
29300		c.header_ = make(http.Header)
29301	}
29302	return c.header_
29303}
29304
29305func (c *ProjectsLocationsAgentsSessionsEntityTypesPatchCall) doRequest(alt string) (*http.Response, error) {
29306	reqHeaders := make(http.Header)
29307	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
29308	for k, v := range c.header_ {
29309		reqHeaders[k] = v
29310	}
29311	reqHeaders.Set("User-Agent", c.s.userAgent())
29312	var body io.Reader = nil
29313	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3sessionentitytype)
29314	if err != nil {
29315		return nil, err
29316	}
29317	reqHeaders.Set("Content-Type", "application/json")
29318	c.urlParams_.Set("alt", alt)
29319	c.urlParams_.Set("prettyPrint", "false")
29320	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
29321	urls += "?" + c.urlParams_.Encode()
29322	req, err := http.NewRequest("PATCH", urls, body)
29323	if err != nil {
29324		return nil, err
29325	}
29326	req.Header = reqHeaders
29327	googleapi.Expand(req.URL, map[string]string{
29328		"name": c.nameid,
29329	})
29330	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29331}
29332
29333// Do executes the "dialogflow.projects.locations.agents.sessions.entityTypes.patch" call.
29334// Exactly one of *GoogleCloudDialogflowCxV3SessionEntityType or error
29335// will be non-nil. Any non-2xx status code is an error. Response
29336// headers are in either
29337// *GoogleCloudDialogflowCxV3SessionEntityType.ServerResponse.Header or
29338// (if a response was returned at all) in
29339// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
29340// whether the returned error was because http.StatusNotModified was
29341// returned.
29342func (c *ProjectsLocationsAgentsSessionsEntityTypesPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3SessionEntityType, error) {
29343	gensupport.SetOptions(c.urlParams_, opts...)
29344	res, err := c.doRequest("json")
29345	if res != nil && res.StatusCode == http.StatusNotModified {
29346		if res.Body != nil {
29347			res.Body.Close()
29348		}
29349		return nil, &googleapi.Error{
29350			Code:   res.StatusCode,
29351			Header: res.Header,
29352		}
29353	}
29354	if err != nil {
29355		return nil, err
29356	}
29357	defer googleapi.CloseBody(res)
29358	if err := googleapi.CheckResponse(res); err != nil {
29359		return nil, err
29360	}
29361	ret := &GoogleCloudDialogflowCxV3SessionEntityType{
29362		ServerResponse: googleapi.ServerResponse{
29363			Header:         res.Header,
29364			HTTPStatusCode: res.StatusCode,
29365		},
29366	}
29367	target := &ret
29368	if err := gensupport.DecodeResponse(target, res); err != nil {
29369		return nil, err
29370	}
29371	return ret, nil
29372	// {
29373	//   "description": "Updates the specified session entity type.",
29374	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/sessions/{sessionsId}/entityTypes/{entityTypesId}",
29375	//   "httpMethod": "PATCH",
29376	//   "id": "dialogflow.projects.locations.agents.sessions.entityTypes.patch",
29377	//   "parameterOrder": [
29378	//     "name"
29379	//   ],
29380	//   "parameters": {
29381	//     "name": {
29382	//       "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.",
29383	//       "location": "path",
29384	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/sessions/[^/]+/entityTypes/[^/]+$",
29385	//       "required": true,
29386	//       "type": "string"
29387	//     },
29388	//     "updateMask": {
29389	//       "description": "The mask to control which fields get updated.",
29390	//       "format": "google-fieldmask",
29391	//       "location": "query",
29392	//       "type": "string"
29393	//     }
29394	//   },
29395	//   "path": "v3/{+name}",
29396	//   "request": {
29397	//     "$ref": "GoogleCloudDialogflowCxV3SessionEntityType"
29398	//   },
29399	//   "response": {
29400	//     "$ref": "GoogleCloudDialogflowCxV3SessionEntityType"
29401	//   },
29402	//   "scopes": [
29403	//     "https://www.googleapis.com/auth/cloud-platform",
29404	//     "https://www.googleapis.com/auth/dialogflow"
29405	//   ]
29406	// }
29407
29408}
29409
29410// method id "dialogflow.projects.locations.agents.testCases.batchDelete":
29411
29412type ProjectsLocationsAgentsTestCasesBatchDeleteCall struct {
29413	s                                                    *Service
29414	parent                                               string
29415	googleclouddialogflowcxv3batchdeletetestcasesrequest *GoogleCloudDialogflowCxV3BatchDeleteTestCasesRequest
29416	urlParams_                                           gensupport.URLParams
29417	ctx_                                                 context.Context
29418	header_                                              http.Header
29419}
29420
29421// BatchDelete: Batch deletes test cases.
29422//
29423// - parent: The agent to delete test cases from. Format:
29424//   `projects//locations//agents/`.
29425func (r *ProjectsLocationsAgentsTestCasesService) BatchDelete(parent string, googleclouddialogflowcxv3batchdeletetestcasesrequest *GoogleCloudDialogflowCxV3BatchDeleteTestCasesRequest) *ProjectsLocationsAgentsTestCasesBatchDeleteCall {
29426	c := &ProjectsLocationsAgentsTestCasesBatchDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29427	c.parent = parent
29428	c.googleclouddialogflowcxv3batchdeletetestcasesrequest = googleclouddialogflowcxv3batchdeletetestcasesrequest
29429	return c
29430}
29431
29432// Fields allows partial responses to be retrieved. See
29433// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29434// for more information.
29435func (c *ProjectsLocationsAgentsTestCasesBatchDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsTestCasesBatchDeleteCall {
29436	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29437	return c
29438}
29439
29440// Context sets the context to be used in this call's Do method. Any
29441// pending HTTP request will be aborted if the provided context is
29442// canceled.
29443func (c *ProjectsLocationsAgentsTestCasesBatchDeleteCall) Context(ctx context.Context) *ProjectsLocationsAgentsTestCasesBatchDeleteCall {
29444	c.ctx_ = ctx
29445	return c
29446}
29447
29448// Header returns an http.Header that can be modified by the caller to
29449// add HTTP headers to the request.
29450func (c *ProjectsLocationsAgentsTestCasesBatchDeleteCall) Header() http.Header {
29451	if c.header_ == nil {
29452		c.header_ = make(http.Header)
29453	}
29454	return c.header_
29455}
29456
29457func (c *ProjectsLocationsAgentsTestCasesBatchDeleteCall) doRequest(alt string) (*http.Response, error) {
29458	reqHeaders := make(http.Header)
29459	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
29460	for k, v := range c.header_ {
29461		reqHeaders[k] = v
29462	}
29463	reqHeaders.Set("User-Agent", c.s.userAgent())
29464	var body io.Reader = nil
29465	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3batchdeletetestcasesrequest)
29466	if err != nil {
29467		return nil, err
29468	}
29469	reqHeaders.Set("Content-Type", "application/json")
29470	c.urlParams_.Set("alt", alt)
29471	c.urlParams_.Set("prettyPrint", "false")
29472	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/testCases:batchDelete")
29473	urls += "?" + c.urlParams_.Encode()
29474	req, err := http.NewRequest("POST", urls, body)
29475	if err != nil {
29476		return nil, err
29477	}
29478	req.Header = reqHeaders
29479	googleapi.Expand(req.URL, map[string]string{
29480		"parent": c.parent,
29481	})
29482	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29483}
29484
29485// Do executes the "dialogflow.projects.locations.agents.testCases.batchDelete" call.
29486// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
29487// non-2xx status code is an error. Response headers are in either
29488// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
29489// returned at all) in error.(*googleapi.Error).Header. Use
29490// googleapi.IsNotModified to check whether the returned error was
29491// because http.StatusNotModified was returned.
29492func (c *ProjectsLocationsAgentsTestCasesBatchDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
29493	gensupport.SetOptions(c.urlParams_, opts...)
29494	res, err := c.doRequest("json")
29495	if res != nil && res.StatusCode == http.StatusNotModified {
29496		if res.Body != nil {
29497			res.Body.Close()
29498		}
29499		return nil, &googleapi.Error{
29500			Code:   res.StatusCode,
29501			Header: res.Header,
29502		}
29503	}
29504	if err != nil {
29505		return nil, err
29506	}
29507	defer googleapi.CloseBody(res)
29508	if err := googleapi.CheckResponse(res); err != nil {
29509		return nil, err
29510	}
29511	ret := &GoogleProtobufEmpty{
29512		ServerResponse: googleapi.ServerResponse{
29513			Header:         res.Header,
29514			HTTPStatusCode: res.StatusCode,
29515		},
29516	}
29517	target := &ret
29518	if err := gensupport.DecodeResponse(target, res); err != nil {
29519		return nil, err
29520	}
29521	return ret, nil
29522	// {
29523	//   "description": "Batch deletes test cases.",
29524	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/testCases:batchDelete",
29525	//   "httpMethod": "POST",
29526	//   "id": "dialogflow.projects.locations.agents.testCases.batchDelete",
29527	//   "parameterOrder": [
29528	//     "parent"
29529	//   ],
29530	//   "parameters": {
29531	//     "parent": {
29532	//       "description": "Required. The agent to delete test cases from. Format: `projects//locations//agents/`.",
29533	//       "location": "path",
29534	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
29535	//       "required": true,
29536	//       "type": "string"
29537	//     }
29538	//   },
29539	//   "path": "v3/{+parent}/testCases:batchDelete",
29540	//   "request": {
29541	//     "$ref": "GoogleCloudDialogflowCxV3BatchDeleteTestCasesRequest"
29542	//   },
29543	//   "response": {
29544	//     "$ref": "GoogleProtobufEmpty"
29545	//   },
29546	//   "scopes": [
29547	//     "https://www.googleapis.com/auth/cloud-platform",
29548	//     "https://www.googleapis.com/auth/dialogflow"
29549	//   ]
29550	// }
29551
29552}
29553
29554// method id "dialogflow.projects.locations.agents.testCases.batchRun":
29555
29556type ProjectsLocationsAgentsTestCasesBatchRunCall struct {
29557	s                                                 *Service
29558	parent                                            string
29559	googleclouddialogflowcxv3batchruntestcasesrequest *GoogleCloudDialogflowCxV3BatchRunTestCasesRequest
29560	urlParams_                                        gensupport.URLParams
29561	ctx_                                              context.Context
29562	header_                                           http.Header
29563}
29564
29565// BatchRun: Kicks off a batch run of test cases.
29566//
29567// - parent: Agent name. Format: `projects//locations//agents/ `.
29568func (r *ProjectsLocationsAgentsTestCasesService) BatchRun(parent string, googleclouddialogflowcxv3batchruntestcasesrequest *GoogleCloudDialogflowCxV3BatchRunTestCasesRequest) *ProjectsLocationsAgentsTestCasesBatchRunCall {
29569	c := &ProjectsLocationsAgentsTestCasesBatchRunCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29570	c.parent = parent
29571	c.googleclouddialogflowcxv3batchruntestcasesrequest = googleclouddialogflowcxv3batchruntestcasesrequest
29572	return c
29573}
29574
29575// Fields allows partial responses to be retrieved. See
29576// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29577// for more information.
29578func (c *ProjectsLocationsAgentsTestCasesBatchRunCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsTestCasesBatchRunCall {
29579	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29580	return c
29581}
29582
29583// Context sets the context to be used in this call's Do method. Any
29584// pending HTTP request will be aborted if the provided context is
29585// canceled.
29586func (c *ProjectsLocationsAgentsTestCasesBatchRunCall) Context(ctx context.Context) *ProjectsLocationsAgentsTestCasesBatchRunCall {
29587	c.ctx_ = ctx
29588	return c
29589}
29590
29591// Header returns an http.Header that can be modified by the caller to
29592// add HTTP headers to the request.
29593func (c *ProjectsLocationsAgentsTestCasesBatchRunCall) Header() http.Header {
29594	if c.header_ == nil {
29595		c.header_ = make(http.Header)
29596	}
29597	return c.header_
29598}
29599
29600func (c *ProjectsLocationsAgentsTestCasesBatchRunCall) doRequest(alt string) (*http.Response, error) {
29601	reqHeaders := make(http.Header)
29602	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
29603	for k, v := range c.header_ {
29604		reqHeaders[k] = v
29605	}
29606	reqHeaders.Set("User-Agent", c.s.userAgent())
29607	var body io.Reader = nil
29608	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3batchruntestcasesrequest)
29609	if err != nil {
29610		return nil, err
29611	}
29612	reqHeaders.Set("Content-Type", "application/json")
29613	c.urlParams_.Set("alt", alt)
29614	c.urlParams_.Set("prettyPrint", "false")
29615	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/testCases:batchRun")
29616	urls += "?" + c.urlParams_.Encode()
29617	req, err := http.NewRequest("POST", urls, body)
29618	if err != nil {
29619		return nil, err
29620	}
29621	req.Header = reqHeaders
29622	googleapi.Expand(req.URL, map[string]string{
29623		"parent": c.parent,
29624	})
29625	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29626}
29627
29628// Do executes the "dialogflow.projects.locations.agents.testCases.batchRun" call.
29629// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
29630// Any non-2xx status code is an error. Response headers are in either
29631// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
29632// was returned at all) in error.(*googleapi.Error).Header. Use
29633// googleapi.IsNotModified to check whether the returned error was
29634// because http.StatusNotModified was returned.
29635func (c *ProjectsLocationsAgentsTestCasesBatchRunCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
29636	gensupport.SetOptions(c.urlParams_, opts...)
29637	res, err := c.doRequest("json")
29638	if res != nil && res.StatusCode == http.StatusNotModified {
29639		if res.Body != nil {
29640			res.Body.Close()
29641		}
29642		return nil, &googleapi.Error{
29643			Code:   res.StatusCode,
29644			Header: res.Header,
29645		}
29646	}
29647	if err != nil {
29648		return nil, err
29649	}
29650	defer googleapi.CloseBody(res)
29651	if err := googleapi.CheckResponse(res); err != nil {
29652		return nil, err
29653	}
29654	ret := &GoogleLongrunningOperation{
29655		ServerResponse: googleapi.ServerResponse{
29656			Header:         res.Header,
29657			HTTPStatusCode: res.StatusCode,
29658		},
29659	}
29660	target := &ret
29661	if err := gensupport.DecodeResponse(target, res); err != nil {
29662		return nil, err
29663	}
29664	return ret, nil
29665	// {
29666	//   "description": "Kicks off a batch run of test cases.",
29667	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/testCases:batchRun",
29668	//   "httpMethod": "POST",
29669	//   "id": "dialogflow.projects.locations.agents.testCases.batchRun",
29670	//   "parameterOrder": [
29671	//     "parent"
29672	//   ],
29673	//   "parameters": {
29674	//     "parent": {
29675	//       "description": "Required. Agent name. Format: `projects//locations//agents/ `.",
29676	//       "location": "path",
29677	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
29678	//       "required": true,
29679	//       "type": "string"
29680	//     }
29681	//   },
29682	//   "path": "v3/{+parent}/testCases:batchRun",
29683	//   "request": {
29684	//     "$ref": "GoogleCloudDialogflowCxV3BatchRunTestCasesRequest"
29685	//   },
29686	//   "response": {
29687	//     "$ref": "GoogleLongrunningOperation"
29688	//   },
29689	//   "scopes": [
29690	//     "https://www.googleapis.com/auth/cloud-platform",
29691	//     "https://www.googleapis.com/auth/dialogflow"
29692	//   ]
29693	// }
29694
29695}
29696
29697// method id "dialogflow.projects.locations.agents.testCases.calculateCoverage":
29698
29699type ProjectsLocationsAgentsTestCasesCalculateCoverageCall struct {
29700	s            *Service
29701	agent        string
29702	urlParams_   gensupport.URLParams
29703	ifNoneMatch_ string
29704	ctx_         context.Context
29705	header_      http.Header
29706}
29707
29708// CalculateCoverage: Calculates the test coverage for an agent.
29709//
29710// - agent: The agent to calculate coverage for. Format:
29711//   `projects//locations//agents/`.
29712func (r *ProjectsLocationsAgentsTestCasesService) CalculateCoverage(agent string) *ProjectsLocationsAgentsTestCasesCalculateCoverageCall {
29713	c := &ProjectsLocationsAgentsTestCasesCalculateCoverageCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29714	c.agent = agent
29715	return c
29716}
29717
29718// Type sets the optional parameter "type": Required. The type of
29719// coverage requested.
29720//
29721// Possible values:
29722//   "COVERAGE_TYPE_UNSPECIFIED" - Should never be used.
29723//   "INTENT" - Intent coverage.
29724//   "PAGE_TRANSITION" - Page transition coverage.
29725//   "TRANSITION_ROUTE_GROUP" - Transition route group coverage.
29726func (c *ProjectsLocationsAgentsTestCasesCalculateCoverageCall) Type(type_ string) *ProjectsLocationsAgentsTestCasesCalculateCoverageCall {
29727	c.urlParams_.Set("type", type_)
29728	return c
29729}
29730
29731// Fields allows partial responses to be retrieved. See
29732// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29733// for more information.
29734func (c *ProjectsLocationsAgentsTestCasesCalculateCoverageCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsTestCasesCalculateCoverageCall {
29735	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29736	return c
29737}
29738
29739// IfNoneMatch sets the optional parameter which makes the operation
29740// fail if the object's ETag matches the given value. This is useful for
29741// getting updates only after the object has changed since the last
29742// request. Use googleapi.IsNotModified to check whether the response
29743// error from Do is the result of In-None-Match.
29744func (c *ProjectsLocationsAgentsTestCasesCalculateCoverageCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsTestCasesCalculateCoverageCall {
29745	c.ifNoneMatch_ = entityTag
29746	return c
29747}
29748
29749// Context sets the context to be used in this call's Do method. Any
29750// pending HTTP request will be aborted if the provided context is
29751// canceled.
29752func (c *ProjectsLocationsAgentsTestCasesCalculateCoverageCall) Context(ctx context.Context) *ProjectsLocationsAgentsTestCasesCalculateCoverageCall {
29753	c.ctx_ = ctx
29754	return c
29755}
29756
29757// Header returns an http.Header that can be modified by the caller to
29758// add HTTP headers to the request.
29759func (c *ProjectsLocationsAgentsTestCasesCalculateCoverageCall) Header() http.Header {
29760	if c.header_ == nil {
29761		c.header_ = make(http.Header)
29762	}
29763	return c.header_
29764}
29765
29766func (c *ProjectsLocationsAgentsTestCasesCalculateCoverageCall) doRequest(alt string) (*http.Response, error) {
29767	reqHeaders := make(http.Header)
29768	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
29769	for k, v := range c.header_ {
29770		reqHeaders[k] = v
29771	}
29772	reqHeaders.Set("User-Agent", c.s.userAgent())
29773	if c.ifNoneMatch_ != "" {
29774		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
29775	}
29776	var body io.Reader = nil
29777	c.urlParams_.Set("alt", alt)
29778	c.urlParams_.Set("prettyPrint", "false")
29779	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+agent}/testCases:calculateCoverage")
29780	urls += "?" + c.urlParams_.Encode()
29781	req, err := http.NewRequest("GET", urls, body)
29782	if err != nil {
29783		return nil, err
29784	}
29785	req.Header = reqHeaders
29786	googleapi.Expand(req.URL, map[string]string{
29787		"agent": c.agent,
29788	})
29789	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29790}
29791
29792// Do executes the "dialogflow.projects.locations.agents.testCases.calculateCoverage" call.
29793// Exactly one of *GoogleCloudDialogflowCxV3CalculateCoverageResponse or
29794// error will be non-nil. Any non-2xx status code is an error. Response
29795// headers are in either
29796// *GoogleCloudDialogflowCxV3CalculateCoverageResponse.ServerResponse.Hea
29797// der or (if a response was returned at all) in
29798// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
29799// whether the returned error was because http.StatusNotModified was
29800// returned.
29801func (c *ProjectsLocationsAgentsTestCasesCalculateCoverageCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3CalculateCoverageResponse, error) {
29802	gensupport.SetOptions(c.urlParams_, opts...)
29803	res, err := c.doRequest("json")
29804	if res != nil && res.StatusCode == http.StatusNotModified {
29805		if res.Body != nil {
29806			res.Body.Close()
29807		}
29808		return nil, &googleapi.Error{
29809			Code:   res.StatusCode,
29810			Header: res.Header,
29811		}
29812	}
29813	if err != nil {
29814		return nil, err
29815	}
29816	defer googleapi.CloseBody(res)
29817	if err := googleapi.CheckResponse(res); err != nil {
29818		return nil, err
29819	}
29820	ret := &GoogleCloudDialogflowCxV3CalculateCoverageResponse{
29821		ServerResponse: googleapi.ServerResponse{
29822			Header:         res.Header,
29823			HTTPStatusCode: res.StatusCode,
29824		},
29825	}
29826	target := &ret
29827	if err := gensupport.DecodeResponse(target, res); err != nil {
29828		return nil, err
29829	}
29830	return ret, nil
29831	// {
29832	//   "description": "Calculates the test coverage for an agent.",
29833	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/testCases:calculateCoverage",
29834	//   "httpMethod": "GET",
29835	//   "id": "dialogflow.projects.locations.agents.testCases.calculateCoverage",
29836	//   "parameterOrder": [
29837	//     "agent"
29838	//   ],
29839	//   "parameters": {
29840	//     "agent": {
29841	//       "description": "Required. The agent to calculate coverage for. Format: `projects//locations//agents/`.",
29842	//       "location": "path",
29843	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
29844	//       "required": true,
29845	//       "type": "string"
29846	//     },
29847	//     "type": {
29848	//       "description": "Required. The type of coverage requested.",
29849	//       "enum": [
29850	//         "COVERAGE_TYPE_UNSPECIFIED",
29851	//         "INTENT",
29852	//         "PAGE_TRANSITION",
29853	//         "TRANSITION_ROUTE_GROUP"
29854	//       ],
29855	//       "enumDescriptions": [
29856	//         "Should never be used.",
29857	//         "Intent coverage.",
29858	//         "Page transition coverage.",
29859	//         "Transition route group coverage."
29860	//       ],
29861	//       "location": "query",
29862	//       "type": "string"
29863	//     }
29864	//   },
29865	//   "path": "v3/{+agent}/testCases:calculateCoverage",
29866	//   "response": {
29867	//     "$ref": "GoogleCloudDialogflowCxV3CalculateCoverageResponse"
29868	//   },
29869	//   "scopes": [
29870	//     "https://www.googleapis.com/auth/cloud-platform",
29871	//     "https://www.googleapis.com/auth/dialogflow"
29872	//   ]
29873	// }
29874
29875}
29876
29877// method id "dialogflow.projects.locations.agents.testCases.create":
29878
29879type ProjectsLocationsAgentsTestCasesCreateCall struct {
29880	s                                 *Service
29881	parent                            string
29882	googleclouddialogflowcxv3testcase *GoogleCloudDialogflowCxV3TestCase
29883	urlParams_                        gensupport.URLParams
29884	ctx_                              context.Context
29885	header_                           http.Header
29886}
29887
29888// Create: Creates a test case for the given agent.
29889//
29890// - parent: The agent to create the test case for. Format:
29891//   `projects//locations//agents/`.
29892func (r *ProjectsLocationsAgentsTestCasesService) Create(parent string, googleclouddialogflowcxv3testcase *GoogleCloudDialogflowCxV3TestCase) *ProjectsLocationsAgentsTestCasesCreateCall {
29893	c := &ProjectsLocationsAgentsTestCasesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29894	c.parent = parent
29895	c.googleclouddialogflowcxv3testcase = googleclouddialogflowcxv3testcase
29896	return c
29897}
29898
29899// Fields allows partial responses to be retrieved. See
29900// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29901// for more information.
29902func (c *ProjectsLocationsAgentsTestCasesCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsTestCasesCreateCall {
29903	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29904	return c
29905}
29906
29907// Context sets the context to be used in this call's Do method. Any
29908// pending HTTP request will be aborted if the provided context is
29909// canceled.
29910func (c *ProjectsLocationsAgentsTestCasesCreateCall) Context(ctx context.Context) *ProjectsLocationsAgentsTestCasesCreateCall {
29911	c.ctx_ = ctx
29912	return c
29913}
29914
29915// Header returns an http.Header that can be modified by the caller to
29916// add HTTP headers to the request.
29917func (c *ProjectsLocationsAgentsTestCasesCreateCall) Header() http.Header {
29918	if c.header_ == nil {
29919		c.header_ = make(http.Header)
29920	}
29921	return c.header_
29922}
29923
29924func (c *ProjectsLocationsAgentsTestCasesCreateCall) doRequest(alt string) (*http.Response, error) {
29925	reqHeaders := make(http.Header)
29926	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
29927	for k, v := range c.header_ {
29928		reqHeaders[k] = v
29929	}
29930	reqHeaders.Set("User-Agent", c.s.userAgent())
29931	var body io.Reader = nil
29932	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3testcase)
29933	if err != nil {
29934		return nil, err
29935	}
29936	reqHeaders.Set("Content-Type", "application/json")
29937	c.urlParams_.Set("alt", alt)
29938	c.urlParams_.Set("prettyPrint", "false")
29939	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/testCases")
29940	urls += "?" + c.urlParams_.Encode()
29941	req, err := http.NewRequest("POST", urls, body)
29942	if err != nil {
29943		return nil, err
29944	}
29945	req.Header = reqHeaders
29946	googleapi.Expand(req.URL, map[string]string{
29947		"parent": c.parent,
29948	})
29949	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29950}
29951
29952// Do executes the "dialogflow.projects.locations.agents.testCases.create" call.
29953// Exactly one of *GoogleCloudDialogflowCxV3TestCase or error will be
29954// non-nil. Any non-2xx status code is an error. Response headers are in
29955// either *GoogleCloudDialogflowCxV3TestCase.ServerResponse.Header or
29956// (if a response was returned at all) in
29957// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
29958// whether the returned error was because http.StatusNotModified was
29959// returned.
29960func (c *ProjectsLocationsAgentsTestCasesCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3TestCase, error) {
29961	gensupport.SetOptions(c.urlParams_, opts...)
29962	res, err := c.doRequest("json")
29963	if res != nil && res.StatusCode == http.StatusNotModified {
29964		if res.Body != nil {
29965			res.Body.Close()
29966		}
29967		return nil, &googleapi.Error{
29968			Code:   res.StatusCode,
29969			Header: res.Header,
29970		}
29971	}
29972	if err != nil {
29973		return nil, err
29974	}
29975	defer googleapi.CloseBody(res)
29976	if err := googleapi.CheckResponse(res); err != nil {
29977		return nil, err
29978	}
29979	ret := &GoogleCloudDialogflowCxV3TestCase{
29980		ServerResponse: googleapi.ServerResponse{
29981			Header:         res.Header,
29982			HTTPStatusCode: res.StatusCode,
29983		},
29984	}
29985	target := &ret
29986	if err := gensupport.DecodeResponse(target, res); err != nil {
29987		return nil, err
29988	}
29989	return ret, nil
29990	// {
29991	//   "description": "Creates a test case for the given agent.",
29992	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/testCases",
29993	//   "httpMethod": "POST",
29994	//   "id": "dialogflow.projects.locations.agents.testCases.create",
29995	//   "parameterOrder": [
29996	//     "parent"
29997	//   ],
29998	//   "parameters": {
29999	//     "parent": {
30000	//       "description": "Required. The agent to create the test case for. Format: `projects//locations//agents/`.",
30001	//       "location": "path",
30002	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
30003	//       "required": true,
30004	//       "type": "string"
30005	//     }
30006	//   },
30007	//   "path": "v3/{+parent}/testCases",
30008	//   "request": {
30009	//     "$ref": "GoogleCloudDialogflowCxV3TestCase"
30010	//   },
30011	//   "response": {
30012	//     "$ref": "GoogleCloudDialogflowCxV3TestCase"
30013	//   },
30014	//   "scopes": [
30015	//     "https://www.googleapis.com/auth/cloud-platform",
30016	//     "https://www.googleapis.com/auth/dialogflow"
30017	//   ]
30018	// }
30019
30020}
30021
30022// method id "dialogflow.projects.locations.agents.testCases.export":
30023
30024type ProjectsLocationsAgentsTestCasesExportCall struct {
30025	s                                               *Service
30026	parent                                          string
30027	googleclouddialogflowcxv3exporttestcasesrequest *GoogleCloudDialogflowCxV3ExportTestCasesRequest
30028	urlParams_                                      gensupport.URLParams
30029	ctx_                                            context.Context
30030	header_                                         http.Header
30031}
30032
30033// Export: Exports the test cases under the agent to a Cloud Storage
30034// bucket or a local file. Filter can be applied to export a subset of
30035// test cases.
30036//
30037// - parent: The agent where to export test cases from. Format:
30038//   `projects//locations//agents/`.
30039func (r *ProjectsLocationsAgentsTestCasesService) Export(parent string, googleclouddialogflowcxv3exporttestcasesrequest *GoogleCloudDialogflowCxV3ExportTestCasesRequest) *ProjectsLocationsAgentsTestCasesExportCall {
30040	c := &ProjectsLocationsAgentsTestCasesExportCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30041	c.parent = parent
30042	c.googleclouddialogflowcxv3exporttestcasesrequest = googleclouddialogflowcxv3exporttestcasesrequest
30043	return c
30044}
30045
30046// Fields allows partial responses to be retrieved. See
30047// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30048// for more information.
30049func (c *ProjectsLocationsAgentsTestCasesExportCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsTestCasesExportCall {
30050	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30051	return c
30052}
30053
30054// Context sets the context to be used in this call's Do method. Any
30055// pending HTTP request will be aborted if the provided context is
30056// canceled.
30057func (c *ProjectsLocationsAgentsTestCasesExportCall) Context(ctx context.Context) *ProjectsLocationsAgentsTestCasesExportCall {
30058	c.ctx_ = ctx
30059	return c
30060}
30061
30062// Header returns an http.Header that can be modified by the caller to
30063// add HTTP headers to the request.
30064func (c *ProjectsLocationsAgentsTestCasesExportCall) Header() http.Header {
30065	if c.header_ == nil {
30066		c.header_ = make(http.Header)
30067	}
30068	return c.header_
30069}
30070
30071func (c *ProjectsLocationsAgentsTestCasesExportCall) doRequest(alt string) (*http.Response, error) {
30072	reqHeaders := make(http.Header)
30073	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
30074	for k, v := range c.header_ {
30075		reqHeaders[k] = v
30076	}
30077	reqHeaders.Set("User-Agent", c.s.userAgent())
30078	var body io.Reader = nil
30079	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3exporttestcasesrequest)
30080	if err != nil {
30081		return nil, err
30082	}
30083	reqHeaders.Set("Content-Type", "application/json")
30084	c.urlParams_.Set("alt", alt)
30085	c.urlParams_.Set("prettyPrint", "false")
30086	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/testCases:export")
30087	urls += "?" + c.urlParams_.Encode()
30088	req, err := http.NewRequest("POST", urls, body)
30089	if err != nil {
30090		return nil, err
30091	}
30092	req.Header = reqHeaders
30093	googleapi.Expand(req.URL, map[string]string{
30094		"parent": c.parent,
30095	})
30096	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30097}
30098
30099// Do executes the "dialogflow.projects.locations.agents.testCases.export" call.
30100// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
30101// Any non-2xx status code is an error. Response headers are in either
30102// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
30103// was returned at all) in error.(*googleapi.Error).Header. Use
30104// googleapi.IsNotModified to check whether the returned error was
30105// because http.StatusNotModified was returned.
30106func (c *ProjectsLocationsAgentsTestCasesExportCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
30107	gensupport.SetOptions(c.urlParams_, opts...)
30108	res, err := c.doRequest("json")
30109	if res != nil && res.StatusCode == http.StatusNotModified {
30110		if res.Body != nil {
30111			res.Body.Close()
30112		}
30113		return nil, &googleapi.Error{
30114			Code:   res.StatusCode,
30115			Header: res.Header,
30116		}
30117	}
30118	if err != nil {
30119		return nil, err
30120	}
30121	defer googleapi.CloseBody(res)
30122	if err := googleapi.CheckResponse(res); err != nil {
30123		return nil, err
30124	}
30125	ret := &GoogleLongrunningOperation{
30126		ServerResponse: googleapi.ServerResponse{
30127			Header:         res.Header,
30128			HTTPStatusCode: res.StatusCode,
30129		},
30130	}
30131	target := &ret
30132	if err := gensupport.DecodeResponse(target, res); err != nil {
30133		return nil, err
30134	}
30135	return ret, nil
30136	// {
30137	//   "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.",
30138	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/testCases:export",
30139	//   "httpMethod": "POST",
30140	//   "id": "dialogflow.projects.locations.agents.testCases.export",
30141	//   "parameterOrder": [
30142	//     "parent"
30143	//   ],
30144	//   "parameters": {
30145	//     "parent": {
30146	//       "description": "Required. The agent where to export test cases from. Format: `projects//locations//agents/`.",
30147	//       "location": "path",
30148	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
30149	//       "required": true,
30150	//       "type": "string"
30151	//     }
30152	//   },
30153	//   "path": "v3/{+parent}/testCases:export",
30154	//   "request": {
30155	//     "$ref": "GoogleCloudDialogflowCxV3ExportTestCasesRequest"
30156	//   },
30157	//   "response": {
30158	//     "$ref": "GoogleLongrunningOperation"
30159	//   },
30160	//   "scopes": [
30161	//     "https://www.googleapis.com/auth/cloud-platform",
30162	//     "https://www.googleapis.com/auth/dialogflow"
30163	//   ]
30164	// }
30165
30166}
30167
30168// method id "dialogflow.projects.locations.agents.testCases.get":
30169
30170type ProjectsLocationsAgentsTestCasesGetCall struct {
30171	s            *Service
30172	name         string
30173	urlParams_   gensupport.URLParams
30174	ifNoneMatch_ string
30175	ctx_         context.Context
30176	header_      http.Header
30177}
30178
30179// Get: Gets a test case.
30180//
30181// - name: The name of the testcase. Format:
30182//   `projects//locations//agents//testCases/`.
30183func (r *ProjectsLocationsAgentsTestCasesService) Get(name string) *ProjectsLocationsAgentsTestCasesGetCall {
30184	c := &ProjectsLocationsAgentsTestCasesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30185	c.name = name
30186	return c
30187}
30188
30189// Fields allows partial responses to be retrieved. See
30190// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30191// for more information.
30192func (c *ProjectsLocationsAgentsTestCasesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsTestCasesGetCall {
30193	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30194	return c
30195}
30196
30197// IfNoneMatch sets the optional parameter which makes the operation
30198// fail if the object's ETag matches the given value. This is useful for
30199// getting updates only after the object has changed since the last
30200// request. Use googleapi.IsNotModified to check whether the response
30201// error from Do is the result of In-None-Match.
30202func (c *ProjectsLocationsAgentsTestCasesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsTestCasesGetCall {
30203	c.ifNoneMatch_ = entityTag
30204	return c
30205}
30206
30207// Context sets the context to be used in this call's Do method. Any
30208// pending HTTP request will be aborted if the provided context is
30209// canceled.
30210func (c *ProjectsLocationsAgentsTestCasesGetCall) Context(ctx context.Context) *ProjectsLocationsAgentsTestCasesGetCall {
30211	c.ctx_ = ctx
30212	return c
30213}
30214
30215// Header returns an http.Header that can be modified by the caller to
30216// add HTTP headers to the request.
30217func (c *ProjectsLocationsAgentsTestCasesGetCall) Header() http.Header {
30218	if c.header_ == nil {
30219		c.header_ = make(http.Header)
30220	}
30221	return c.header_
30222}
30223
30224func (c *ProjectsLocationsAgentsTestCasesGetCall) doRequest(alt string) (*http.Response, error) {
30225	reqHeaders := make(http.Header)
30226	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
30227	for k, v := range c.header_ {
30228		reqHeaders[k] = v
30229	}
30230	reqHeaders.Set("User-Agent", c.s.userAgent())
30231	if c.ifNoneMatch_ != "" {
30232		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
30233	}
30234	var body io.Reader = nil
30235	c.urlParams_.Set("alt", alt)
30236	c.urlParams_.Set("prettyPrint", "false")
30237	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
30238	urls += "?" + c.urlParams_.Encode()
30239	req, err := http.NewRequest("GET", urls, body)
30240	if err != nil {
30241		return nil, err
30242	}
30243	req.Header = reqHeaders
30244	googleapi.Expand(req.URL, map[string]string{
30245		"name": c.name,
30246	})
30247	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30248}
30249
30250// Do executes the "dialogflow.projects.locations.agents.testCases.get" call.
30251// Exactly one of *GoogleCloudDialogflowCxV3TestCase or error will be
30252// non-nil. Any non-2xx status code is an error. Response headers are in
30253// either *GoogleCloudDialogflowCxV3TestCase.ServerResponse.Header or
30254// (if a response was returned at all) in
30255// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
30256// whether the returned error was because http.StatusNotModified was
30257// returned.
30258func (c *ProjectsLocationsAgentsTestCasesGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3TestCase, error) {
30259	gensupport.SetOptions(c.urlParams_, opts...)
30260	res, err := c.doRequest("json")
30261	if res != nil && res.StatusCode == http.StatusNotModified {
30262		if res.Body != nil {
30263			res.Body.Close()
30264		}
30265		return nil, &googleapi.Error{
30266			Code:   res.StatusCode,
30267			Header: res.Header,
30268		}
30269	}
30270	if err != nil {
30271		return nil, err
30272	}
30273	defer googleapi.CloseBody(res)
30274	if err := googleapi.CheckResponse(res); err != nil {
30275		return nil, err
30276	}
30277	ret := &GoogleCloudDialogflowCxV3TestCase{
30278		ServerResponse: googleapi.ServerResponse{
30279			Header:         res.Header,
30280			HTTPStatusCode: res.StatusCode,
30281		},
30282	}
30283	target := &ret
30284	if err := gensupport.DecodeResponse(target, res); err != nil {
30285		return nil, err
30286	}
30287	return ret, nil
30288	// {
30289	//   "description": "Gets a test case.",
30290	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/testCases/{testCasesId}",
30291	//   "httpMethod": "GET",
30292	//   "id": "dialogflow.projects.locations.agents.testCases.get",
30293	//   "parameterOrder": [
30294	//     "name"
30295	//   ],
30296	//   "parameters": {
30297	//     "name": {
30298	//       "description": "Required. The name of the testcase. Format: `projects//locations//agents//testCases/`.",
30299	//       "location": "path",
30300	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/testCases/[^/]+$",
30301	//       "required": true,
30302	//       "type": "string"
30303	//     }
30304	//   },
30305	//   "path": "v3/{+name}",
30306	//   "response": {
30307	//     "$ref": "GoogleCloudDialogflowCxV3TestCase"
30308	//   },
30309	//   "scopes": [
30310	//     "https://www.googleapis.com/auth/cloud-platform",
30311	//     "https://www.googleapis.com/auth/dialogflow"
30312	//   ]
30313	// }
30314
30315}
30316
30317// method id "dialogflow.projects.locations.agents.testCases.import":
30318
30319type ProjectsLocationsAgentsTestCasesImportCall struct {
30320	s                                               *Service
30321	parent                                          string
30322	googleclouddialogflowcxv3importtestcasesrequest *GoogleCloudDialogflowCxV3ImportTestCasesRequest
30323	urlParams_                                      gensupport.URLParams
30324	ctx_                                            context.Context
30325	header_                                         http.Header
30326}
30327
30328// Import: Imports the test cases from a Cloud Storage bucket or a local
30329// file. It always creates new test cases and won't overwite any
30330// existing ones. The provided ID in the imported test case is
30331// neglected.
30332//
30333// - parent: The agent to import test cases to. Format:
30334//   `projects//locations//agents/`.
30335func (r *ProjectsLocationsAgentsTestCasesService) Import(parent string, googleclouddialogflowcxv3importtestcasesrequest *GoogleCloudDialogflowCxV3ImportTestCasesRequest) *ProjectsLocationsAgentsTestCasesImportCall {
30336	c := &ProjectsLocationsAgentsTestCasesImportCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30337	c.parent = parent
30338	c.googleclouddialogflowcxv3importtestcasesrequest = googleclouddialogflowcxv3importtestcasesrequest
30339	return c
30340}
30341
30342// Fields allows partial responses to be retrieved. See
30343// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30344// for more information.
30345func (c *ProjectsLocationsAgentsTestCasesImportCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsTestCasesImportCall {
30346	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30347	return c
30348}
30349
30350// Context sets the context to be used in this call's Do method. Any
30351// pending HTTP request will be aborted if the provided context is
30352// canceled.
30353func (c *ProjectsLocationsAgentsTestCasesImportCall) Context(ctx context.Context) *ProjectsLocationsAgentsTestCasesImportCall {
30354	c.ctx_ = ctx
30355	return c
30356}
30357
30358// Header returns an http.Header that can be modified by the caller to
30359// add HTTP headers to the request.
30360func (c *ProjectsLocationsAgentsTestCasesImportCall) Header() http.Header {
30361	if c.header_ == nil {
30362		c.header_ = make(http.Header)
30363	}
30364	return c.header_
30365}
30366
30367func (c *ProjectsLocationsAgentsTestCasesImportCall) doRequest(alt string) (*http.Response, error) {
30368	reqHeaders := make(http.Header)
30369	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
30370	for k, v := range c.header_ {
30371		reqHeaders[k] = v
30372	}
30373	reqHeaders.Set("User-Agent", c.s.userAgent())
30374	var body io.Reader = nil
30375	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3importtestcasesrequest)
30376	if err != nil {
30377		return nil, err
30378	}
30379	reqHeaders.Set("Content-Type", "application/json")
30380	c.urlParams_.Set("alt", alt)
30381	c.urlParams_.Set("prettyPrint", "false")
30382	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/testCases:import")
30383	urls += "?" + c.urlParams_.Encode()
30384	req, err := http.NewRequest("POST", urls, body)
30385	if err != nil {
30386		return nil, err
30387	}
30388	req.Header = reqHeaders
30389	googleapi.Expand(req.URL, map[string]string{
30390		"parent": c.parent,
30391	})
30392	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30393}
30394
30395// Do executes the "dialogflow.projects.locations.agents.testCases.import" call.
30396// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
30397// Any non-2xx status code is an error. Response headers are in either
30398// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
30399// was returned at all) in error.(*googleapi.Error).Header. Use
30400// googleapi.IsNotModified to check whether the returned error was
30401// because http.StatusNotModified was returned.
30402func (c *ProjectsLocationsAgentsTestCasesImportCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
30403	gensupport.SetOptions(c.urlParams_, opts...)
30404	res, err := c.doRequest("json")
30405	if res != nil && res.StatusCode == http.StatusNotModified {
30406		if res.Body != nil {
30407			res.Body.Close()
30408		}
30409		return nil, &googleapi.Error{
30410			Code:   res.StatusCode,
30411			Header: res.Header,
30412		}
30413	}
30414	if err != nil {
30415		return nil, err
30416	}
30417	defer googleapi.CloseBody(res)
30418	if err := googleapi.CheckResponse(res); err != nil {
30419		return nil, err
30420	}
30421	ret := &GoogleLongrunningOperation{
30422		ServerResponse: googleapi.ServerResponse{
30423			Header:         res.Header,
30424			HTTPStatusCode: res.StatusCode,
30425		},
30426	}
30427	target := &ret
30428	if err := gensupport.DecodeResponse(target, res); err != nil {
30429		return nil, err
30430	}
30431	return ret, nil
30432	// {
30433	//   "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.",
30434	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/testCases:import",
30435	//   "httpMethod": "POST",
30436	//   "id": "dialogflow.projects.locations.agents.testCases.import",
30437	//   "parameterOrder": [
30438	//     "parent"
30439	//   ],
30440	//   "parameters": {
30441	//     "parent": {
30442	//       "description": "Required. The agent to import test cases to. Format: `projects//locations//agents/`.",
30443	//       "location": "path",
30444	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
30445	//       "required": true,
30446	//       "type": "string"
30447	//     }
30448	//   },
30449	//   "path": "v3/{+parent}/testCases:import",
30450	//   "request": {
30451	//     "$ref": "GoogleCloudDialogflowCxV3ImportTestCasesRequest"
30452	//   },
30453	//   "response": {
30454	//     "$ref": "GoogleLongrunningOperation"
30455	//   },
30456	//   "scopes": [
30457	//     "https://www.googleapis.com/auth/cloud-platform",
30458	//     "https://www.googleapis.com/auth/dialogflow"
30459	//   ]
30460	// }
30461
30462}
30463
30464// method id "dialogflow.projects.locations.agents.testCases.list":
30465
30466type ProjectsLocationsAgentsTestCasesListCall struct {
30467	s            *Service
30468	parent       string
30469	urlParams_   gensupport.URLParams
30470	ifNoneMatch_ string
30471	ctx_         context.Context
30472	header_      http.Header
30473}
30474
30475// List: Fetches a list of test cases for a given agent.
30476//
30477// - parent: The agent to list all pages for. Format:
30478//   `projects//locations//agents/`.
30479func (r *ProjectsLocationsAgentsTestCasesService) List(parent string) *ProjectsLocationsAgentsTestCasesListCall {
30480	c := &ProjectsLocationsAgentsTestCasesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30481	c.parent = parent
30482	return c
30483}
30484
30485// PageSize sets the optional parameter "pageSize": The maximum number
30486// of items to return in a single page. By default 20. Note that when
30487// TestCaseView = FULL, the maximum page size allowed is 20. When
30488// TestCaseView = BASIC, the maximum page size allowed is 500.
30489func (c *ProjectsLocationsAgentsTestCasesListCall) PageSize(pageSize int64) *ProjectsLocationsAgentsTestCasesListCall {
30490	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
30491	return c
30492}
30493
30494// PageToken sets the optional parameter "pageToken": The
30495// next_page_token value returned from a previous list request.
30496func (c *ProjectsLocationsAgentsTestCasesListCall) PageToken(pageToken string) *ProjectsLocationsAgentsTestCasesListCall {
30497	c.urlParams_.Set("pageToken", pageToken)
30498	return c
30499}
30500
30501// View sets the optional parameter "view": Specifies whether response
30502// should include all fields or just the metadata.
30503//
30504// Possible values:
30505//   "TEST_CASE_VIEW_UNSPECIFIED" - The default / unset value. The API
30506// will default to the BASIC view.
30507//   "BASIC" - Include basic metadata about the test case, but not the
30508// conversation turns. This is the default value.
30509//   "FULL" - Include everything.
30510func (c *ProjectsLocationsAgentsTestCasesListCall) View(view string) *ProjectsLocationsAgentsTestCasesListCall {
30511	c.urlParams_.Set("view", view)
30512	return c
30513}
30514
30515// Fields allows partial responses to be retrieved. See
30516// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30517// for more information.
30518func (c *ProjectsLocationsAgentsTestCasesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsTestCasesListCall {
30519	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30520	return c
30521}
30522
30523// IfNoneMatch sets the optional parameter which makes the operation
30524// fail if the object's ETag matches the given value. This is useful for
30525// getting updates only after the object has changed since the last
30526// request. Use googleapi.IsNotModified to check whether the response
30527// error from Do is the result of In-None-Match.
30528func (c *ProjectsLocationsAgentsTestCasesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsTestCasesListCall {
30529	c.ifNoneMatch_ = entityTag
30530	return c
30531}
30532
30533// Context sets the context to be used in this call's Do method. Any
30534// pending HTTP request will be aborted if the provided context is
30535// canceled.
30536func (c *ProjectsLocationsAgentsTestCasesListCall) Context(ctx context.Context) *ProjectsLocationsAgentsTestCasesListCall {
30537	c.ctx_ = ctx
30538	return c
30539}
30540
30541// Header returns an http.Header that can be modified by the caller to
30542// add HTTP headers to the request.
30543func (c *ProjectsLocationsAgentsTestCasesListCall) Header() http.Header {
30544	if c.header_ == nil {
30545		c.header_ = make(http.Header)
30546	}
30547	return c.header_
30548}
30549
30550func (c *ProjectsLocationsAgentsTestCasesListCall) doRequest(alt string) (*http.Response, error) {
30551	reqHeaders := make(http.Header)
30552	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
30553	for k, v := range c.header_ {
30554		reqHeaders[k] = v
30555	}
30556	reqHeaders.Set("User-Agent", c.s.userAgent())
30557	if c.ifNoneMatch_ != "" {
30558		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
30559	}
30560	var body io.Reader = nil
30561	c.urlParams_.Set("alt", alt)
30562	c.urlParams_.Set("prettyPrint", "false")
30563	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/testCases")
30564	urls += "?" + c.urlParams_.Encode()
30565	req, err := http.NewRequest("GET", urls, body)
30566	if err != nil {
30567		return nil, err
30568	}
30569	req.Header = reqHeaders
30570	googleapi.Expand(req.URL, map[string]string{
30571		"parent": c.parent,
30572	})
30573	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30574}
30575
30576// Do executes the "dialogflow.projects.locations.agents.testCases.list" call.
30577// Exactly one of *GoogleCloudDialogflowCxV3ListTestCasesResponse or
30578// error will be non-nil. Any non-2xx status code is an error. Response
30579// headers are in either
30580// *GoogleCloudDialogflowCxV3ListTestCasesResponse.ServerResponse.Header
30581// or (if a response was returned at all) in
30582// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
30583// whether the returned error was because http.StatusNotModified was
30584// returned.
30585func (c *ProjectsLocationsAgentsTestCasesListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3ListTestCasesResponse, error) {
30586	gensupport.SetOptions(c.urlParams_, opts...)
30587	res, err := c.doRequest("json")
30588	if res != nil && res.StatusCode == http.StatusNotModified {
30589		if res.Body != nil {
30590			res.Body.Close()
30591		}
30592		return nil, &googleapi.Error{
30593			Code:   res.StatusCode,
30594			Header: res.Header,
30595		}
30596	}
30597	if err != nil {
30598		return nil, err
30599	}
30600	defer googleapi.CloseBody(res)
30601	if err := googleapi.CheckResponse(res); err != nil {
30602		return nil, err
30603	}
30604	ret := &GoogleCloudDialogflowCxV3ListTestCasesResponse{
30605		ServerResponse: googleapi.ServerResponse{
30606			Header:         res.Header,
30607			HTTPStatusCode: res.StatusCode,
30608		},
30609	}
30610	target := &ret
30611	if err := gensupport.DecodeResponse(target, res); err != nil {
30612		return nil, err
30613	}
30614	return ret, nil
30615	// {
30616	//   "description": "Fetches a list of test cases for a given agent.",
30617	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/testCases",
30618	//   "httpMethod": "GET",
30619	//   "id": "dialogflow.projects.locations.agents.testCases.list",
30620	//   "parameterOrder": [
30621	//     "parent"
30622	//   ],
30623	//   "parameters": {
30624	//     "pageSize": {
30625	//       "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.",
30626	//       "format": "int32",
30627	//       "location": "query",
30628	//       "type": "integer"
30629	//     },
30630	//     "pageToken": {
30631	//       "description": "The next_page_token value returned from a previous list request.",
30632	//       "location": "query",
30633	//       "type": "string"
30634	//     },
30635	//     "parent": {
30636	//       "description": "Required. The agent to list all pages for. Format: `projects//locations//agents/`.",
30637	//       "location": "path",
30638	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
30639	//       "required": true,
30640	//       "type": "string"
30641	//     },
30642	//     "view": {
30643	//       "description": "Specifies whether response should include all fields or just the metadata.",
30644	//       "enum": [
30645	//         "TEST_CASE_VIEW_UNSPECIFIED",
30646	//         "BASIC",
30647	//         "FULL"
30648	//       ],
30649	//       "enumDescriptions": [
30650	//         "The default / unset value. The API will default to the BASIC view.",
30651	//         "Include basic metadata about the test case, but not the conversation turns. This is the default value.",
30652	//         "Include everything."
30653	//       ],
30654	//       "location": "query",
30655	//       "type": "string"
30656	//     }
30657	//   },
30658	//   "path": "v3/{+parent}/testCases",
30659	//   "response": {
30660	//     "$ref": "GoogleCloudDialogflowCxV3ListTestCasesResponse"
30661	//   },
30662	//   "scopes": [
30663	//     "https://www.googleapis.com/auth/cloud-platform",
30664	//     "https://www.googleapis.com/auth/dialogflow"
30665	//   ]
30666	// }
30667
30668}
30669
30670// Pages invokes f for each page of results.
30671// A non-nil error returned from f will halt the iteration.
30672// The provided context supersedes any context provided to the Context method.
30673func (c *ProjectsLocationsAgentsTestCasesListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3ListTestCasesResponse) error) error {
30674	c.ctx_ = ctx
30675	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
30676	for {
30677		x, err := c.Do()
30678		if err != nil {
30679			return err
30680		}
30681		if err := f(x); err != nil {
30682			return err
30683		}
30684		if x.NextPageToken == "" {
30685			return nil
30686		}
30687		c.PageToken(x.NextPageToken)
30688	}
30689}
30690
30691// method id "dialogflow.projects.locations.agents.testCases.patch":
30692
30693type ProjectsLocationsAgentsTestCasesPatchCall struct {
30694	s                                 *Service
30695	nameid                            string
30696	googleclouddialogflowcxv3testcase *GoogleCloudDialogflowCxV3TestCase
30697	urlParams_                        gensupport.URLParams
30698	ctx_                              context.Context
30699	header_                           http.Header
30700}
30701
30702// Patch: Updates the specified test case.
30703//
30704// - name: The unique identifier of the test case.
30705//   TestCases.CreateTestCase will populate the name automatically.
30706//   Otherwise use format: `projects//locations//agents/ /testCases/`.
30707func (r *ProjectsLocationsAgentsTestCasesService) Patch(nameid string, googleclouddialogflowcxv3testcase *GoogleCloudDialogflowCxV3TestCase) *ProjectsLocationsAgentsTestCasesPatchCall {
30708	c := &ProjectsLocationsAgentsTestCasesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30709	c.nameid = nameid
30710	c.googleclouddialogflowcxv3testcase = googleclouddialogflowcxv3testcase
30711	return c
30712}
30713
30714// UpdateMask sets the optional parameter "updateMask": Required. The
30715// mask to specify which fields should be updated. The `creationTime`
30716// and `lastTestResult` cannot be updated.
30717func (c *ProjectsLocationsAgentsTestCasesPatchCall) UpdateMask(updateMask string) *ProjectsLocationsAgentsTestCasesPatchCall {
30718	c.urlParams_.Set("updateMask", updateMask)
30719	return c
30720}
30721
30722// Fields allows partial responses to be retrieved. See
30723// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30724// for more information.
30725func (c *ProjectsLocationsAgentsTestCasesPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsTestCasesPatchCall {
30726	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30727	return c
30728}
30729
30730// Context sets the context to be used in this call's Do method. Any
30731// pending HTTP request will be aborted if the provided context is
30732// canceled.
30733func (c *ProjectsLocationsAgentsTestCasesPatchCall) Context(ctx context.Context) *ProjectsLocationsAgentsTestCasesPatchCall {
30734	c.ctx_ = ctx
30735	return c
30736}
30737
30738// Header returns an http.Header that can be modified by the caller to
30739// add HTTP headers to the request.
30740func (c *ProjectsLocationsAgentsTestCasesPatchCall) Header() http.Header {
30741	if c.header_ == nil {
30742		c.header_ = make(http.Header)
30743	}
30744	return c.header_
30745}
30746
30747func (c *ProjectsLocationsAgentsTestCasesPatchCall) doRequest(alt string) (*http.Response, error) {
30748	reqHeaders := make(http.Header)
30749	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
30750	for k, v := range c.header_ {
30751		reqHeaders[k] = v
30752	}
30753	reqHeaders.Set("User-Agent", c.s.userAgent())
30754	var body io.Reader = nil
30755	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3testcase)
30756	if err != nil {
30757		return nil, err
30758	}
30759	reqHeaders.Set("Content-Type", "application/json")
30760	c.urlParams_.Set("alt", alt)
30761	c.urlParams_.Set("prettyPrint", "false")
30762	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
30763	urls += "?" + c.urlParams_.Encode()
30764	req, err := http.NewRequest("PATCH", urls, body)
30765	if err != nil {
30766		return nil, err
30767	}
30768	req.Header = reqHeaders
30769	googleapi.Expand(req.URL, map[string]string{
30770		"name": c.nameid,
30771	})
30772	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30773}
30774
30775// Do executes the "dialogflow.projects.locations.agents.testCases.patch" call.
30776// Exactly one of *GoogleCloudDialogflowCxV3TestCase or error will be
30777// non-nil. Any non-2xx status code is an error. Response headers are in
30778// either *GoogleCloudDialogflowCxV3TestCase.ServerResponse.Header or
30779// (if a response was returned at all) in
30780// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
30781// whether the returned error was because http.StatusNotModified was
30782// returned.
30783func (c *ProjectsLocationsAgentsTestCasesPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3TestCase, error) {
30784	gensupport.SetOptions(c.urlParams_, opts...)
30785	res, err := c.doRequest("json")
30786	if res != nil && res.StatusCode == http.StatusNotModified {
30787		if res.Body != nil {
30788			res.Body.Close()
30789		}
30790		return nil, &googleapi.Error{
30791			Code:   res.StatusCode,
30792			Header: res.Header,
30793		}
30794	}
30795	if err != nil {
30796		return nil, err
30797	}
30798	defer googleapi.CloseBody(res)
30799	if err := googleapi.CheckResponse(res); err != nil {
30800		return nil, err
30801	}
30802	ret := &GoogleCloudDialogflowCxV3TestCase{
30803		ServerResponse: googleapi.ServerResponse{
30804			Header:         res.Header,
30805			HTTPStatusCode: res.StatusCode,
30806		},
30807	}
30808	target := &ret
30809	if err := gensupport.DecodeResponse(target, res); err != nil {
30810		return nil, err
30811	}
30812	return ret, nil
30813	// {
30814	//   "description": "Updates the specified test case.",
30815	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/testCases/{testCasesId}",
30816	//   "httpMethod": "PATCH",
30817	//   "id": "dialogflow.projects.locations.agents.testCases.patch",
30818	//   "parameterOrder": [
30819	//     "name"
30820	//   ],
30821	//   "parameters": {
30822	//     "name": {
30823	//       "description": "The unique identifier of the test case. TestCases.CreateTestCase will populate the name automatically. Otherwise use format: `projects//locations//agents/ /testCases/`.",
30824	//       "location": "path",
30825	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/testCases/[^/]+$",
30826	//       "required": true,
30827	//       "type": "string"
30828	//     },
30829	//     "updateMask": {
30830	//       "description": "Required. The mask to specify which fields should be updated. The `creationTime` and `lastTestResult` cannot be updated.",
30831	//       "format": "google-fieldmask",
30832	//       "location": "query",
30833	//       "type": "string"
30834	//     }
30835	//   },
30836	//   "path": "v3/{+name}",
30837	//   "request": {
30838	//     "$ref": "GoogleCloudDialogflowCxV3TestCase"
30839	//   },
30840	//   "response": {
30841	//     "$ref": "GoogleCloudDialogflowCxV3TestCase"
30842	//   },
30843	//   "scopes": [
30844	//     "https://www.googleapis.com/auth/cloud-platform",
30845	//     "https://www.googleapis.com/auth/dialogflow"
30846	//   ]
30847	// }
30848
30849}
30850
30851// method id "dialogflow.projects.locations.agents.testCases.run":
30852
30853type ProjectsLocationsAgentsTestCasesRunCall struct {
30854	s                                           *Service
30855	name                                        string
30856	googleclouddialogflowcxv3runtestcaserequest *GoogleCloudDialogflowCxV3RunTestCaseRequest
30857	urlParams_                                  gensupport.URLParams
30858	ctx_                                        context.Context
30859	header_                                     http.Header
30860}
30861
30862// Run: Kicks off a test case run.
30863//
30864// - name: Format of test case name to run: `projects//locations/
30865//   /agents//testCases/`.
30866func (r *ProjectsLocationsAgentsTestCasesService) Run(name string, googleclouddialogflowcxv3runtestcaserequest *GoogleCloudDialogflowCxV3RunTestCaseRequest) *ProjectsLocationsAgentsTestCasesRunCall {
30867	c := &ProjectsLocationsAgentsTestCasesRunCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30868	c.name = name
30869	c.googleclouddialogflowcxv3runtestcaserequest = googleclouddialogflowcxv3runtestcaserequest
30870	return c
30871}
30872
30873// Fields allows partial responses to be retrieved. See
30874// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30875// for more information.
30876func (c *ProjectsLocationsAgentsTestCasesRunCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsTestCasesRunCall {
30877	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30878	return c
30879}
30880
30881// Context sets the context to be used in this call's Do method. Any
30882// pending HTTP request will be aborted if the provided context is
30883// canceled.
30884func (c *ProjectsLocationsAgentsTestCasesRunCall) Context(ctx context.Context) *ProjectsLocationsAgentsTestCasesRunCall {
30885	c.ctx_ = ctx
30886	return c
30887}
30888
30889// Header returns an http.Header that can be modified by the caller to
30890// add HTTP headers to the request.
30891func (c *ProjectsLocationsAgentsTestCasesRunCall) Header() http.Header {
30892	if c.header_ == nil {
30893		c.header_ = make(http.Header)
30894	}
30895	return c.header_
30896}
30897
30898func (c *ProjectsLocationsAgentsTestCasesRunCall) doRequest(alt string) (*http.Response, error) {
30899	reqHeaders := make(http.Header)
30900	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
30901	for k, v := range c.header_ {
30902		reqHeaders[k] = v
30903	}
30904	reqHeaders.Set("User-Agent", c.s.userAgent())
30905	var body io.Reader = nil
30906	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3runtestcaserequest)
30907	if err != nil {
30908		return nil, err
30909	}
30910	reqHeaders.Set("Content-Type", "application/json")
30911	c.urlParams_.Set("alt", alt)
30912	c.urlParams_.Set("prettyPrint", "false")
30913	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}:run")
30914	urls += "?" + c.urlParams_.Encode()
30915	req, err := http.NewRequest("POST", urls, body)
30916	if err != nil {
30917		return nil, err
30918	}
30919	req.Header = reqHeaders
30920	googleapi.Expand(req.URL, map[string]string{
30921		"name": c.name,
30922	})
30923	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30924}
30925
30926// Do executes the "dialogflow.projects.locations.agents.testCases.run" call.
30927// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
30928// Any non-2xx status code is an error. Response headers are in either
30929// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
30930// was returned at all) in error.(*googleapi.Error).Header. Use
30931// googleapi.IsNotModified to check whether the returned error was
30932// because http.StatusNotModified was returned.
30933func (c *ProjectsLocationsAgentsTestCasesRunCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
30934	gensupport.SetOptions(c.urlParams_, opts...)
30935	res, err := c.doRequest("json")
30936	if res != nil && res.StatusCode == http.StatusNotModified {
30937		if res.Body != nil {
30938			res.Body.Close()
30939		}
30940		return nil, &googleapi.Error{
30941			Code:   res.StatusCode,
30942			Header: res.Header,
30943		}
30944	}
30945	if err != nil {
30946		return nil, err
30947	}
30948	defer googleapi.CloseBody(res)
30949	if err := googleapi.CheckResponse(res); err != nil {
30950		return nil, err
30951	}
30952	ret := &GoogleLongrunningOperation{
30953		ServerResponse: googleapi.ServerResponse{
30954			Header:         res.Header,
30955			HTTPStatusCode: res.StatusCode,
30956		},
30957	}
30958	target := &ret
30959	if err := gensupport.DecodeResponse(target, res); err != nil {
30960		return nil, err
30961	}
30962	return ret, nil
30963	// {
30964	//   "description": "Kicks off a test case run.",
30965	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/testCases/{testCasesId}:run",
30966	//   "httpMethod": "POST",
30967	//   "id": "dialogflow.projects.locations.agents.testCases.run",
30968	//   "parameterOrder": [
30969	//     "name"
30970	//   ],
30971	//   "parameters": {
30972	//     "name": {
30973	//       "description": "Required. Format of test case name to run: `projects//locations/ /agents//testCases/`.",
30974	//       "location": "path",
30975	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/testCases/[^/]+$",
30976	//       "required": true,
30977	//       "type": "string"
30978	//     }
30979	//   },
30980	//   "path": "v3/{+name}:run",
30981	//   "request": {
30982	//     "$ref": "GoogleCloudDialogflowCxV3RunTestCaseRequest"
30983	//   },
30984	//   "response": {
30985	//     "$ref": "GoogleLongrunningOperation"
30986	//   },
30987	//   "scopes": [
30988	//     "https://www.googleapis.com/auth/cloud-platform",
30989	//     "https://www.googleapis.com/auth/dialogflow"
30990	//   ]
30991	// }
30992
30993}
30994
30995// method id "dialogflow.projects.locations.agents.testCases.results.get":
30996
30997type ProjectsLocationsAgentsTestCasesResultsGetCall struct {
30998	s            *Service
30999	name         string
31000	urlParams_   gensupport.URLParams
31001	ifNoneMatch_ string
31002	ctx_         context.Context
31003	header_      http.Header
31004}
31005
31006// Get: Gets a test case result.
31007//
31008// - name: The name of the testcase. Format:
31009//   `projects//locations//agents//testCases//results/`.
31010func (r *ProjectsLocationsAgentsTestCasesResultsService) Get(name string) *ProjectsLocationsAgentsTestCasesResultsGetCall {
31011	c := &ProjectsLocationsAgentsTestCasesResultsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31012	c.name = name
31013	return c
31014}
31015
31016// Fields allows partial responses to be retrieved. See
31017// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31018// for more information.
31019func (c *ProjectsLocationsAgentsTestCasesResultsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsTestCasesResultsGetCall {
31020	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31021	return c
31022}
31023
31024// IfNoneMatch sets the optional parameter which makes the operation
31025// fail if the object's ETag matches the given value. This is useful for
31026// getting updates only after the object has changed since the last
31027// request. Use googleapi.IsNotModified to check whether the response
31028// error from Do is the result of In-None-Match.
31029func (c *ProjectsLocationsAgentsTestCasesResultsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsTestCasesResultsGetCall {
31030	c.ifNoneMatch_ = entityTag
31031	return c
31032}
31033
31034// Context sets the context to be used in this call's Do method. Any
31035// pending HTTP request will be aborted if the provided context is
31036// canceled.
31037func (c *ProjectsLocationsAgentsTestCasesResultsGetCall) Context(ctx context.Context) *ProjectsLocationsAgentsTestCasesResultsGetCall {
31038	c.ctx_ = ctx
31039	return c
31040}
31041
31042// Header returns an http.Header that can be modified by the caller to
31043// add HTTP headers to the request.
31044func (c *ProjectsLocationsAgentsTestCasesResultsGetCall) Header() http.Header {
31045	if c.header_ == nil {
31046		c.header_ = make(http.Header)
31047	}
31048	return c.header_
31049}
31050
31051func (c *ProjectsLocationsAgentsTestCasesResultsGetCall) doRequest(alt string) (*http.Response, error) {
31052	reqHeaders := make(http.Header)
31053	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
31054	for k, v := range c.header_ {
31055		reqHeaders[k] = v
31056	}
31057	reqHeaders.Set("User-Agent", c.s.userAgent())
31058	if c.ifNoneMatch_ != "" {
31059		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
31060	}
31061	var body io.Reader = nil
31062	c.urlParams_.Set("alt", alt)
31063	c.urlParams_.Set("prettyPrint", "false")
31064	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
31065	urls += "?" + c.urlParams_.Encode()
31066	req, err := http.NewRequest("GET", urls, body)
31067	if err != nil {
31068		return nil, err
31069	}
31070	req.Header = reqHeaders
31071	googleapi.Expand(req.URL, map[string]string{
31072		"name": c.name,
31073	})
31074	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31075}
31076
31077// Do executes the "dialogflow.projects.locations.agents.testCases.results.get" call.
31078// Exactly one of *GoogleCloudDialogflowCxV3TestCaseResult or error will
31079// be non-nil. Any non-2xx status code is an error. Response headers are
31080// in either
31081// *GoogleCloudDialogflowCxV3TestCaseResult.ServerResponse.Header or (if
31082// a response was returned at all) in error.(*googleapi.Error).Header.
31083// Use googleapi.IsNotModified to check whether the returned error was
31084// because http.StatusNotModified was returned.
31085func (c *ProjectsLocationsAgentsTestCasesResultsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3TestCaseResult, error) {
31086	gensupport.SetOptions(c.urlParams_, opts...)
31087	res, err := c.doRequest("json")
31088	if res != nil && res.StatusCode == http.StatusNotModified {
31089		if res.Body != nil {
31090			res.Body.Close()
31091		}
31092		return nil, &googleapi.Error{
31093			Code:   res.StatusCode,
31094			Header: res.Header,
31095		}
31096	}
31097	if err != nil {
31098		return nil, err
31099	}
31100	defer googleapi.CloseBody(res)
31101	if err := googleapi.CheckResponse(res); err != nil {
31102		return nil, err
31103	}
31104	ret := &GoogleCloudDialogflowCxV3TestCaseResult{
31105		ServerResponse: googleapi.ServerResponse{
31106			Header:         res.Header,
31107			HTTPStatusCode: res.StatusCode,
31108		},
31109	}
31110	target := &ret
31111	if err := gensupport.DecodeResponse(target, res); err != nil {
31112		return nil, err
31113	}
31114	return ret, nil
31115	// {
31116	//   "description": "Gets a test case result.",
31117	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/testCases/{testCasesId}/results/{resultsId}",
31118	//   "httpMethod": "GET",
31119	//   "id": "dialogflow.projects.locations.agents.testCases.results.get",
31120	//   "parameterOrder": [
31121	//     "name"
31122	//   ],
31123	//   "parameters": {
31124	//     "name": {
31125	//       "description": "Required. The name of the testcase. Format: `projects//locations//agents//testCases//results/`.",
31126	//       "location": "path",
31127	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/testCases/[^/]+/results/[^/]+$",
31128	//       "required": true,
31129	//       "type": "string"
31130	//     }
31131	//   },
31132	//   "path": "v3/{+name}",
31133	//   "response": {
31134	//     "$ref": "GoogleCloudDialogflowCxV3TestCaseResult"
31135	//   },
31136	//   "scopes": [
31137	//     "https://www.googleapis.com/auth/cloud-platform",
31138	//     "https://www.googleapis.com/auth/dialogflow"
31139	//   ]
31140	// }
31141
31142}
31143
31144// method id "dialogflow.projects.locations.agents.testCases.results.list":
31145
31146type ProjectsLocationsAgentsTestCasesResultsListCall struct {
31147	s            *Service
31148	parent       string
31149	urlParams_   gensupport.URLParams
31150	ifNoneMatch_ string
31151	ctx_         context.Context
31152	header_      http.Header
31153}
31154
31155// List: Fetches a list of results for a given test case.
31156//
31157// - parent: The test case to list results for. Format:
31158//   `projects//locations//agents// testCases/`. Specify a `-` as a
31159//   wildcard for TestCase ID to list results across multiple test
31160//   cases.
31161func (r *ProjectsLocationsAgentsTestCasesResultsService) List(parent string) *ProjectsLocationsAgentsTestCasesResultsListCall {
31162	c := &ProjectsLocationsAgentsTestCasesResultsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31163	c.parent = parent
31164	return c
31165}
31166
31167// Filter sets the optional parameter "filter": The filter expression
31168// used to filter test case results. See API Filtering
31169// (https://aip.dev/160). The expression is case insensitive. Only 'AND'
31170// is supported for logical operators. The supported syntax is listed
31171// below in detail: [AND ] ... [AND latest] The supported fields and
31172// operators are: field operator `environment` `=`, `IN` (Use value
31173// `draft` for draft environment) `test_time` `>`, `<` `latest` only
31174// returns the latest test result in all results for each test case.
31175// Examples: * "environment=draft AND latest" matches the latest test
31176// result for each test case in the draft environment. * "environment IN
31177// (e1,e2)" matches any test case results with an environment resource
31178// name of either "e1" or "e2". * "test_time > 1602540713" matches any
31179// test case results with test time later than a unix timestamp in
31180// seconds 1602540713.
31181func (c *ProjectsLocationsAgentsTestCasesResultsListCall) Filter(filter string) *ProjectsLocationsAgentsTestCasesResultsListCall {
31182	c.urlParams_.Set("filter", filter)
31183	return c
31184}
31185
31186// PageSize sets the optional parameter "pageSize": The maximum number
31187// of items to return in a single page. By default 100 and at most 1000.
31188func (c *ProjectsLocationsAgentsTestCasesResultsListCall) PageSize(pageSize int64) *ProjectsLocationsAgentsTestCasesResultsListCall {
31189	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
31190	return c
31191}
31192
31193// PageToken sets the optional parameter "pageToken": The
31194// next_page_token value returned from a previous list request.
31195func (c *ProjectsLocationsAgentsTestCasesResultsListCall) PageToken(pageToken string) *ProjectsLocationsAgentsTestCasesResultsListCall {
31196	c.urlParams_.Set("pageToken", pageToken)
31197	return c
31198}
31199
31200// Fields allows partial responses to be retrieved. See
31201// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31202// for more information.
31203func (c *ProjectsLocationsAgentsTestCasesResultsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsTestCasesResultsListCall {
31204	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31205	return c
31206}
31207
31208// IfNoneMatch sets the optional parameter which makes the operation
31209// fail if the object's ETag matches the given value. This is useful for
31210// getting updates only after the object has changed since the last
31211// request. Use googleapi.IsNotModified to check whether the response
31212// error from Do is the result of In-None-Match.
31213func (c *ProjectsLocationsAgentsTestCasesResultsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsTestCasesResultsListCall {
31214	c.ifNoneMatch_ = entityTag
31215	return c
31216}
31217
31218// Context sets the context to be used in this call's Do method. Any
31219// pending HTTP request will be aborted if the provided context is
31220// canceled.
31221func (c *ProjectsLocationsAgentsTestCasesResultsListCall) Context(ctx context.Context) *ProjectsLocationsAgentsTestCasesResultsListCall {
31222	c.ctx_ = ctx
31223	return c
31224}
31225
31226// Header returns an http.Header that can be modified by the caller to
31227// add HTTP headers to the request.
31228func (c *ProjectsLocationsAgentsTestCasesResultsListCall) Header() http.Header {
31229	if c.header_ == nil {
31230		c.header_ = make(http.Header)
31231	}
31232	return c.header_
31233}
31234
31235func (c *ProjectsLocationsAgentsTestCasesResultsListCall) doRequest(alt string) (*http.Response, error) {
31236	reqHeaders := make(http.Header)
31237	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
31238	for k, v := range c.header_ {
31239		reqHeaders[k] = v
31240	}
31241	reqHeaders.Set("User-Agent", c.s.userAgent())
31242	if c.ifNoneMatch_ != "" {
31243		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
31244	}
31245	var body io.Reader = nil
31246	c.urlParams_.Set("alt", alt)
31247	c.urlParams_.Set("prettyPrint", "false")
31248	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/results")
31249	urls += "?" + c.urlParams_.Encode()
31250	req, err := http.NewRequest("GET", urls, body)
31251	if err != nil {
31252		return nil, err
31253	}
31254	req.Header = reqHeaders
31255	googleapi.Expand(req.URL, map[string]string{
31256		"parent": c.parent,
31257	})
31258	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31259}
31260
31261// Do executes the "dialogflow.projects.locations.agents.testCases.results.list" call.
31262// Exactly one of *GoogleCloudDialogflowCxV3ListTestCaseResultsResponse
31263// or error will be non-nil. Any non-2xx status code is an error.
31264// Response headers are in either
31265// *GoogleCloudDialogflowCxV3ListTestCaseResultsResponse.ServerResponse.H
31266// eader or (if a response was returned at all) in
31267// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
31268// whether the returned error was because http.StatusNotModified was
31269// returned.
31270func (c *ProjectsLocationsAgentsTestCasesResultsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3ListTestCaseResultsResponse, error) {
31271	gensupport.SetOptions(c.urlParams_, opts...)
31272	res, err := c.doRequest("json")
31273	if res != nil && res.StatusCode == http.StatusNotModified {
31274		if res.Body != nil {
31275			res.Body.Close()
31276		}
31277		return nil, &googleapi.Error{
31278			Code:   res.StatusCode,
31279			Header: res.Header,
31280		}
31281	}
31282	if err != nil {
31283		return nil, err
31284	}
31285	defer googleapi.CloseBody(res)
31286	if err := googleapi.CheckResponse(res); err != nil {
31287		return nil, err
31288	}
31289	ret := &GoogleCloudDialogflowCxV3ListTestCaseResultsResponse{
31290		ServerResponse: googleapi.ServerResponse{
31291			Header:         res.Header,
31292			HTTPStatusCode: res.StatusCode,
31293		},
31294	}
31295	target := &ret
31296	if err := gensupport.DecodeResponse(target, res); err != nil {
31297		return nil, err
31298	}
31299	return ret, nil
31300	// {
31301	//   "description": "Fetches a list of results for a given test case.",
31302	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/testCases/{testCasesId}/results",
31303	//   "httpMethod": "GET",
31304	//   "id": "dialogflow.projects.locations.agents.testCases.results.list",
31305	//   "parameterOrder": [
31306	//     "parent"
31307	//   ],
31308	//   "parameters": {
31309	//     "filter": {
31310	//       "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.",
31311	//       "location": "query",
31312	//       "type": "string"
31313	//     },
31314	//     "pageSize": {
31315	//       "description": "The maximum number of items to return in a single page. By default 100 and at most 1000.",
31316	//       "format": "int32",
31317	//       "location": "query",
31318	//       "type": "integer"
31319	//     },
31320	//     "pageToken": {
31321	//       "description": "The next_page_token value returned from a previous list request.",
31322	//       "location": "query",
31323	//       "type": "string"
31324	//     },
31325	//     "parent": {
31326	//       "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.",
31327	//       "location": "path",
31328	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/testCases/[^/]+$",
31329	//       "required": true,
31330	//       "type": "string"
31331	//     }
31332	//   },
31333	//   "path": "v3/{+parent}/results",
31334	//   "response": {
31335	//     "$ref": "GoogleCloudDialogflowCxV3ListTestCaseResultsResponse"
31336	//   },
31337	//   "scopes": [
31338	//     "https://www.googleapis.com/auth/cloud-platform",
31339	//     "https://www.googleapis.com/auth/dialogflow"
31340	//   ]
31341	// }
31342
31343}
31344
31345// Pages invokes f for each page of results.
31346// A non-nil error returned from f will halt the iteration.
31347// The provided context supersedes any context provided to the Context method.
31348func (c *ProjectsLocationsAgentsTestCasesResultsListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3ListTestCaseResultsResponse) error) error {
31349	c.ctx_ = ctx
31350	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
31351	for {
31352		x, err := c.Do()
31353		if err != nil {
31354			return err
31355		}
31356		if err := f(x); err != nil {
31357			return err
31358		}
31359		if x.NextPageToken == "" {
31360			return nil
31361		}
31362		c.PageToken(x.NextPageToken)
31363	}
31364}
31365
31366// method id "dialogflow.projects.locations.agents.webhooks.create":
31367
31368type ProjectsLocationsAgentsWebhooksCreateCall struct {
31369	s                                *Service
31370	parent                           string
31371	googleclouddialogflowcxv3webhook *GoogleCloudDialogflowCxV3Webhook
31372	urlParams_                       gensupport.URLParams
31373	ctx_                             context.Context
31374	header_                          http.Header
31375}
31376
31377// Create: Creates a webhook in the specified agent.
31378//
31379// - parent: The agent to create a webhook for. Format:
31380//   `projects//locations//agents/`.
31381func (r *ProjectsLocationsAgentsWebhooksService) Create(parent string, googleclouddialogflowcxv3webhook *GoogleCloudDialogflowCxV3Webhook) *ProjectsLocationsAgentsWebhooksCreateCall {
31382	c := &ProjectsLocationsAgentsWebhooksCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31383	c.parent = parent
31384	c.googleclouddialogflowcxv3webhook = googleclouddialogflowcxv3webhook
31385	return c
31386}
31387
31388// Fields allows partial responses to be retrieved. See
31389// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31390// for more information.
31391func (c *ProjectsLocationsAgentsWebhooksCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsWebhooksCreateCall {
31392	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31393	return c
31394}
31395
31396// Context sets the context to be used in this call's Do method. Any
31397// pending HTTP request will be aborted if the provided context is
31398// canceled.
31399func (c *ProjectsLocationsAgentsWebhooksCreateCall) Context(ctx context.Context) *ProjectsLocationsAgentsWebhooksCreateCall {
31400	c.ctx_ = ctx
31401	return c
31402}
31403
31404// Header returns an http.Header that can be modified by the caller to
31405// add HTTP headers to the request.
31406func (c *ProjectsLocationsAgentsWebhooksCreateCall) Header() http.Header {
31407	if c.header_ == nil {
31408		c.header_ = make(http.Header)
31409	}
31410	return c.header_
31411}
31412
31413func (c *ProjectsLocationsAgentsWebhooksCreateCall) doRequest(alt string) (*http.Response, error) {
31414	reqHeaders := make(http.Header)
31415	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
31416	for k, v := range c.header_ {
31417		reqHeaders[k] = v
31418	}
31419	reqHeaders.Set("User-Agent", c.s.userAgent())
31420	var body io.Reader = nil
31421	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3webhook)
31422	if err != nil {
31423		return nil, err
31424	}
31425	reqHeaders.Set("Content-Type", "application/json")
31426	c.urlParams_.Set("alt", alt)
31427	c.urlParams_.Set("prettyPrint", "false")
31428	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/webhooks")
31429	urls += "?" + c.urlParams_.Encode()
31430	req, err := http.NewRequest("POST", urls, body)
31431	if err != nil {
31432		return nil, err
31433	}
31434	req.Header = reqHeaders
31435	googleapi.Expand(req.URL, map[string]string{
31436		"parent": c.parent,
31437	})
31438	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31439}
31440
31441// Do executes the "dialogflow.projects.locations.agents.webhooks.create" call.
31442// Exactly one of *GoogleCloudDialogflowCxV3Webhook or error will be
31443// non-nil. Any non-2xx status code is an error. Response headers are in
31444// either *GoogleCloudDialogflowCxV3Webhook.ServerResponse.Header or (if
31445// a response was returned at all) in error.(*googleapi.Error).Header.
31446// Use googleapi.IsNotModified to check whether the returned error was
31447// because http.StatusNotModified was returned.
31448func (c *ProjectsLocationsAgentsWebhooksCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3Webhook, error) {
31449	gensupport.SetOptions(c.urlParams_, opts...)
31450	res, err := c.doRequest("json")
31451	if res != nil && res.StatusCode == http.StatusNotModified {
31452		if res.Body != nil {
31453			res.Body.Close()
31454		}
31455		return nil, &googleapi.Error{
31456			Code:   res.StatusCode,
31457			Header: res.Header,
31458		}
31459	}
31460	if err != nil {
31461		return nil, err
31462	}
31463	defer googleapi.CloseBody(res)
31464	if err := googleapi.CheckResponse(res); err != nil {
31465		return nil, err
31466	}
31467	ret := &GoogleCloudDialogflowCxV3Webhook{
31468		ServerResponse: googleapi.ServerResponse{
31469			Header:         res.Header,
31470			HTTPStatusCode: res.StatusCode,
31471		},
31472	}
31473	target := &ret
31474	if err := gensupport.DecodeResponse(target, res); err != nil {
31475		return nil, err
31476	}
31477	return ret, nil
31478	// {
31479	//   "description": "Creates a webhook in the specified agent.",
31480	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/webhooks",
31481	//   "httpMethod": "POST",
31482	//   "id": "dialogflow.projects.locations.agents.webhooks.create",
31483	//   "parameterOrder": [
31484	//     "parent"
31485	//   ],
31486	//   "parameters": {
31487	//     "parent": {
31488	//       "description": "Required. The agent to create a webhook for. Format: `projects//locations//agents/`.",
31489	//       "location": "path",
31490	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
31491	//       "required": true,
31492	//       "type": "string"
31493	//     }
31494	//   },
31495	//   "path": "v3/{+parent}/webhooks",
31496	//   "request": {
31497	//     "$ref": "GoogleCloudDialogflowCxV3Webhook"
31498	//   },
31499	//   "response": {
31500	//     "$ref": "GoogleCloudDialogflowCxV3Webhook"
31501	//   },
31502	//   "scopes": [
31503	//     "https://www.googleapis.com/auth/cloud-platform",
31504	//     "https://www.googleapis.com/auth/dialogflow"
31505	//   ]
31506	// }
31507
31508}
31509
31510// method id "dialogflow.projects.locations.agents.webhooks.delete":
31511
31512type ProjectsLocationsAgentsWebhooksDeleteCall struct {
31513	s          *Service
31514	name       string
31515	urlParams_ gensupport.URLParams
31516	ctx_       context.Context
31517	header_    http.Header
31518}
31519
31520// Delete: Deletes the specified webhook.
31521//
31522// - name: The name of the webhook to delete. Format:
31523//   `projects//locations//agents//webhooks/`.
31524func (r *ProjectsLocationsAgentsWebhooksService) Delete(name string) *ProjectsLocationsAgentsWebhooksDeleteCall {
31525	c := &ProjectsLocationsAgentsWebhooksDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31526	c.name = name
31527	return c
31528}
31529
31530// Force sets the optional parameter "force": This field has no effect
31531// for webhook not being used. For webhooks that are used by
31532// pages/flows/transition route groups: * If `force` is set to false, an
31533// error will be returned with message indicating the referenced
31534// resources. * If `force` is set to true, Dialogflow will remove the
31535// webhook, as well as any references to the webhook (i.e. Webhook and
31536// tagin fulfillments that point to this webhook will be removed).
31537func (c *ProjectsLocationsAgentsWebhooksDeleteCall) Force(force bool) *ProjectsLocationsAgentsWebhooksDeleteCall {
31538	c.urlParams_.Set("force", fmt.Sprint(force))
31539	return c
31540}
31541
31542// Fields allows partial responses to be retrieved. See
31543// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31544// for more information.
31545func (c *ProjectsLocationsAgentsWebhooksDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsWebhooksDeleteCall {
31546	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31547	return c
31548}
31549
31550// Context sets the context to be used in this call's Do method. Any
31551// pending HTTP request will be aborted if the provided context is
31552// canceled.
31553func (c *ProjectsLocationsAgentsWebhooksDeleteCall) Context(ctx context.Context) *ProjectsLocationsAgentsWebhooksDeleteCall {
31554	c.ctx_ = ctx
31555	return c
31556}
31557
31558// Header returns an http.Header that can be modified by the caller to
31559// add HTTP headers to the request.
31560func (c *ProjectsLocationsAgentsWebhooksDeleteCall) Header() http.Header {
31561	if c.header_ == nil {
31562		c.header_ = make(http.Header)
31563	}
31564	return c.header_
31565}
31566
31567func (c *ProjectsLocationsAgentsWebhooksDeleteCall) doRequest(alt string) (*http.Response, error) {
31568	reqHeaders := make(http.Header)
31569	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
31570	for k, v := range c.header_ {
31571		reqHeaders[k] = v
31572	}
31573	reqHeaders.Set("User-Agent", c.s.userAgent())
31574	var body io.Reader = nil
31575	c.urlParams_.Set("alt", alt)
31576	c.urlParams_.Set("prettyPrint", "false")
31577	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
31578	urls += "?" + c.urlParams_.Encode()
31579	req, err := http.NewRequest("DELETE", urls, body)
31580	if err != nil {
31581		return nil, err
31582	}
31583	req.Header = reqHeaders
31584	googleapi.Expand(req.URL, map[string]string{
31585		"name": c.name,
31586	})
31587	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31588}
31589
31590// Do executes the "dialogflow.projects.locations.agents.webhooks.delete" call.
31591// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
31592// non-2xx status code is an error. Response headers are in either
31593// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
31594// returned at all) in error.(*googleapi.Error).Header. Use
31595// googleapi.IsNotModified to check whether the returned error was
31596// because http.StatusNotModified was returned.
31597func (c *ProjectsLocationsAgentsWebhooksDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
31598	gensupport.SetOptions(c.urlParams_, opts...)
31599	res, err := c.doRequest("json")
31600	if res != nil && res.StatusCode == http.StatusNotModified {
31601		if res.Body != nil {
31602			res.Body.Close()
31603		}
31604		return nil, &googleapi.Error{
31605			Code:   res.StatusCode,
31606			Header: res.Header,
31607		}
31608	}
31609	if err != nil {
31610		return nil, err
31611	}
31612	defer googleapi.CloseBody(res)
31613	if err := googleapi.CheckResponse(res); err != nil {
31614		return nil, err
31615	}
31616	ret := &GoogleProtobufEmpty{
31617		ServerResponse: googleapi.ServerResponse{
31618			Header:         res.Header,
31619			HTTPStatusCode: res.StatusCode,
31620		},
31621	}
31622	target := &ret
31623	if err := gensupport.DecodeResponse(target, res); err != nil {
31624		return nil, err
31625	}
31626	return ret, nil
31627	// {
31628	//   "description": "Deletes the specified webhook.",
31629	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/webhooks/{webhooksId}",
31630	//   "httpMethod": "DELETE",
31631	//   "id": "dialogflow.projects.locations.agents.webhooks.delete",
31632	//   "parameterOrder": [
31633	//     "name"
31634	//   ],
31635	//   "parameters": {
31636	//     "force": {
31637	//       "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).",
31638	//       "location": "query",
31639	//       "type": "boolean"
31640	//     },
31641	//     "name": {
31642	//       "description": "Required. The name of the webhook to delete. Format: `projects//locations//agents//webhooks/`.",
31643	//       "location": "path",
31644	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/webhooks/[^/]+$",
31645	//       "required": true,
31646	//       "type": "string"
31647	//     }
31648	//   },
31649	//   "path": "v3/{+name}",
31650	//   "response": {
31651	//     "$ref": "GoogleProtobufEmpty"
31652	//   },
31653	//   "scopes": [
31654	//     "https://www.googleapis.com/auth/cloud-platform",
31655	//     "https://www.googleapis.com/auth/dialogflow"
31656	//   ]
31657	// }
31658
31659}
31660
31661// method id "dialogflow.projects.locations.agents.webhooks.get":
31662
31663type ProjectsLocationsAgentsWebhooksGetCall struct {
31664	s            *Service
31665	name         string
31666	urlParams_   gensupport.URLParams
31667	ifNoneMatch_ string
31668	ctx_         context.Context
31669	header_      http.Header
31670}
31671
31672// Get: Retrieves the specified webhook.
31673//
31674// - name: The name of the webhook. Format:
31675//   `projects//locations//agents//webhooks/`.
31676func (r *ProjectsLocationsAgentsWebhooksService) Get(name string) *ProjectsLocationsAgentsWebhooksGetCall {
31677	c := &ProjectsLocationsAgentsWebhooksGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31678	c.name = name
31679	return c
31680}
31681
31682// Fields allows partial responses to be retrieved. See
31683// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31684// for more information.
31685func (c *ProjectsLocationsAgentsWebhooksGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsWebhooksGetCall {
31686	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31687	return c
31688}
31689
31690// IfNoneMatch sets the optional parameter which makes the operation
31691// fail if the object's ETag matches the given value. This is useful for
31692// getting updates only after the object has changed since the last
31693// request. Use googleapi.IsNotModified to check whether the response
31694// error from Do is the result of In-None-Match.
31695func (c *ProjectsLocationsAgentsWebhooksGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsWebhooksGetCall {
31696	c.ifNoneMatch_ = entityTag
31697	return c
31698}
31699
31700// Context sets the context to be used in this call's Do method. Any
31701// pending HTTP request will be aborted if the provided context is
31702// canceled.
31703func (c *ProjectsLocationsAgentsWebhooksGetCall) Context(ctx context.Context) *ProjectsLocationsAgentsWebhooksGetCall {
31704	c.ctx_ = ctx
31705	return c
31706}
31707
31708// Header returns an http.Header that can be modified by the caller to
31709// add HTTP headers to the request.
31710func (c *ProjectsLocationsAgentsWebhooksGetCall) Header() http.Header {
31711	if c.header_ == nil {
31712		c.header_ = make(http.Header)
31713	}
31714	return c.header_
31715}
31716
31717func (c *ProjectsLocationsAgentsWebhooksGetCall) doRequest(alt string) (*http.Response, error) {
31718	reqHeaders := make(http.Header)
31719	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
31720	for k, v := range c.header_ {
31721		reqHeaders[k] = v
31722	}
31723	reqHeaders.Set("User-Agent", c.s.userAgent())
31724	if c.ifNoneMatch_ != "" {
31725		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
31726	}
31727	var body io.Reader = nil
31728	c.urlParams_.Set("alt", alt)
31729	c.urlParams_.Set("prettyPrint", "false")
31730	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
31731	urls += "?" + c.urlParams_.Encode()
31732	req, err := http.NewRequest("GET", urls, body)
31733	if err != nil {
31734		return nil, err
31735	}
31736	req.Header = reqHeaders
31737	googleapi.Expand(req.URL, map[string]string{
31738		"name": c.name,
31739	})
31740	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31741}
31742
31743// Do executes the "dialogflow.projects.locations.agents.webhooks.get" call.
31744// Exactly one of *GoogleCloudDialogflowCxV3Webhook or error will be
31745// non-nil. Any non-2xx status code is an error. Response headers are in
31746// either *GoogleCloudDialogflowCxV3Webhook.ServerResponse.Header or (if
31747// a response was returned at all) in error.(*googleapi.Error).Header.
31748// Use googleapi.IsNotModified to check whether the returned error was
31749// because http.StatusNotModified was returned.
31750func (c *ProjectsLocationsAgentsWebhooksGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3Webhook, error) {
31751	gensupport.SetOptions(c.urlParams_, opts...)
31752	res, err := c.doRequest("json")
31753	if res != nil && res.StatusCode == http.StatusNotModified {
31754		if res.Body != nil {
31755			res.Body.Close()
31756		}
31757		return nil, &googleapi.Error{
31758			Code:   res.StatusCode,
31759			Header: res.Header,
31760		}
31761	}
31762	if err != nil {
31763		return nil, err
31764	}
31765	defer googleapi.CloseBody(res)
31766	if err := googleapi.CheckResponse(res); err != nil {
31767		return nil, err
31768	}
31769	ret := &GoogleCloudDialogflowCxV3Webhook{
31770		ServerResponse: googleapi.ServerResponse{
31771			Header:         res.Header,
31772			HTTPStatusCode: res.StatusCode,
31773		},
31774	}
31775	target := &ret
31776	if err := gensupport.DecodeResponse(target, res); err != nil {
31777		return nil, err
31778	}
31779	return ret, nil
31780	// {
31781	//   "description": "Retrieves the specified webhook.",
31782	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/webhooks/{webhooksId}",
31783	//   "httpMethod": "GET",
31784	//   "id": "dialogflow.projects.locations.agents.webhooks.get",
31785	//   "parameterOrder": [
31786	//     "name"
31787	//   ],
31788	//   "parameters": {
31789	//     "name": {
31790	//       "description": "Required. The name of the webhook. Format: `projects//locations//agents//webhooks/`.",
31791	//       "location": "path",
31792	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/webhooks/[^/]+$",
31793	//       "required": true,
31794	//       "type": "string"
31795	//     }
31796	//   },
31797	//   "path": "v3/{+name}",
31798	//   "response": {
31799	//     "$ref": "GoogleCloudDialogflowCxV3Webhook"
31800	//   },
31801	//   "scopes": [
31802	//     "https://www.googleapis.com/auth/cloud-platform",
31803	//     "https://www.googleapis.com/auth/dialogflow"
31804	//   ]
31805	// }
31806
31807}
31808
31809// method id "dialogflow.projects.locations.agents.webhooks.list":
31810
31811type ProjectsLocationsAgentsWebhooksListCall struct {
31812	s            *Service
31813	parent       string
31814	urlParams_   gensupport.URLParams
31815	ifNoneMatch_ string
31816	ctx_         context.Context
31817	header_      http.Header
31818}
31819
31820// List: Returns the list of all webhooks in the specified agent.
31821//
31822// - parent: The agent to list all webhooks for. Format:
31823//   `projects//locations//agents/`.
31824func (r *ProjectsLocationsAgentsWebhooksService) List(parent string) *ProjectsLocationsAgentsWebhooksListCall {
31825	c := &ProjectsLocationsAgentsWebhooksListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31826	c.parent = parent
31827	return c
31828}
31829
31830// PageSize sets the optional parameter "pageSize": The maximum number
31831// of items to return in a single page. By default 100 and at most 1000.
31832func (c *ProjectsLocationsAgentsWebhooksListCall) PageSize(pageSize int64) *ProjectsLocationsAgentsWebhooksListCall {
31833	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
31834	return c
31835}
31836
31837// PageToken sets the optional parameter "pageToken": The
31838// next_page_token value returned from a previous list request.
31839func (c *ProjectsLocationsAgentsWebhooksListCall) PageToken(pageToken string) *ProjectsLocationsAgentsWebhooksListCall {
31840	c.urlParams_.Set("pageToken", pageToken)
31841	return c
31842}
31843
31844// Fields allows partial responses to be retrieved. See
31845// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31846// for more information.
31847func (c *ProjectsLocationsAgentsWebhooksListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsWebhooksListCall {
31848	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31849	return c
31850}
31851
31852// IfNoneMatch sets the optional parameter which makes the operation
31853// fail if the object's ETag matches the given value. This is useful for
31854// getting updates only after the object has changed since the last
31855// request. Use googleapi.IsNotModified to check whether the response
31856// error from Do is the result of In-None-Match.
31857func (c *ProjectsLocationsAgentsWebhooksListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsWebhooksListCall {
31858	c.ifNoneMatch_ = entityTag
31859	return c
31860}
31861
31862// Context sets the context to be used in this call's Do method. Any
31863// pending HTTP request will be aborted if the provided context is
31864// canceled.
31865func (c *ProjectsLocationsAgentsWebhooksListCall) Context(ctx context.Context) *ProjectsLocationsAgentsWebhooksListCall {
31866	c.ctx_ = ctx
31867	return c
31868}
31869
31870// Header returns an http.Header that can be modified by the caller to
31871// add HTTP headers to the request.
31872func (c *ProjectsLocationsAgentsWebhooksListCall) Header() http.Header {
31873	if c.header_ == nil {
31874		c.header_ = make(http.Header)
31875	}
31876	return c.header_
31877}
31878
31879func (c *ProjectsLocationsAgentsWebhooksListCall) doRequest(alt string) (*http.Response, error) {
31880	reqHeaders := make(http.Header)
31881	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
31882	for k, v := range c.header_ {
31883		reqHeaders[k] = v
31884	}
31885	reqHeaders.Set("User-Agent", c.s.userAgent())
31886	if c.ifNoneMatch_ != "" {
31887		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
31888	}
31889	var body io.Reader = nil
31890	c.urlParams_.Set("alt", alt)
31891	c.urlParams_.Set("prettyPrint", "false")
31892	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/webhooks")
31893	urls += "?" + c.urlParams_.Encode()
31894	req, err := http.NewRequest("GET", urls, body)
31895	if err != nil {
31896		return nil, err
31897	}
31898	req.Header = reqHeaders
31899	googleapi.Expand(req.URL, map[string]string{
31900		"parent": c.parent,
31901	})
31902	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31903}
31904
31905// Do executes the "dialogflow.projects.locations.agents.webhooks.list" call.
31906// Exactly one of *GoogleCloudDialogflowCxV3ListWebhooksResponse or
31907// error will be non-nil. Any non-2xx status code is an error. Response
31908// headers are in either
31909// *GoogleCloudDialogflowCxV3ListWebhooksResponse.ServerResponse.Header
31910// or (if a response was returned at all) in
31911// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
31912// whether the returned error was because http.StatusNotModified was
31913// returned.
31914func (c *ProjectsLocationsAgentsWebhooksListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3ListWebhooksResponse, error) {
31915	gensupport.SetOptions(c.urlParams_, opts...)
31916	res, err := c.doRequest("json")
31917	if res != nil && res.StatusCode == http.StatusNotModified {
31918		if res.Body != nil {
31919			res.Body.Close()
31920		}
31921		return nil, &googleapi.Error{
31922			Code:   res.StatusCode,
31923			Header: res.Header,
31924		}
31925	}
31926	if err != nil {
31927		return nil, err
31928	}
31929	defer googleapi.CloseBody(res)
31930	if err := googleapi.CheckResponse(res); err != nil {
31931		return nil, err
31932	}
31933	ret := &GoogleCloudDialogflowCxV3ListWebhooksResponse{
31934		ServerResponse: googleapi.ServerResponse{
31935			Header:         res.Header,
31936			HTTPStatusCode: res.StatusCode,
31937		},
31938	}
31939	target := &ret
31940	if err := gensupport.DecodeResponse(target, res); err != nil {
31941		return nil, err
31942	}
31943	return ret, nil
31944	// {
31945	//   "description": "Returns the list of all webhooks in the specified agent.",
31946	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/webhooks",
31947	//   "httpMethod": "GET",
31948	//   "id": "dialogflow.projects.locations.agents.webhooks.list",
31949	//   "parameterOrder": [
31950	//     "parent"
31951	//   ],
31952	//   "parameters": {
31953	//     "pageSize": {
31954	//       "description": "The maximum number of items to return in a single page. By default 100 and at most 1000.",
31955	//       "format": "int32",
31956	//       "location": "query",
31957	//       "type": "integer"
31958	//     },
31959	//     "pageToken": {
31960	//       "description": "The next_page_token value returned from a previous list request.",
31961	//       "location": "query",
31962	//       "type": "string"
31963	//     },
31964	//     "parent": {
31965	//       "description": "Required. The agent to list all webhooks for. Format: `projects//locations//agents/`.",
31966	//       "location": "path",
31967	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
31968	//       "required": true,
31969	//       "type": "string"
31970	//     }
31971	//   },
31972	//   "path": "v3/{+parent}/webhooks",
31973	//   "response": {
31974	//     "$ref": "GoogleCloudDialogflowCxV3ListWebhooksResponse"
31975	//   },
31976	//   "scopes": [
31977	//     "https://www.googleapis.com/auth/cloud-platform",
31978	//     "https://www.googleapis.com/auth/dialogflow"
31979	//   ]
31980	// }
31981
31982}
31983
31984// Pages invokes f for each page of results.
31985// A non-nil error returned from f will halt the iteration.
31986// The provided context supersedes any context provided to the Context method.
31987func (c *ProjectsLocationsAgentsWebhooksListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3ListWebhooksResponse) error) error {
31988	c.ctx_ = ctx
31989	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
31990	for {
31991		x, err := c.Do()
31992		if err != nil {
31993			return err
31994		}
31995		if err := f(x); err != nil {
31996			return err
31997		}
31998		if x.NextPageToken == "" {
31999			return nil
32000		}
32001		c.PageToken(x.NextPageToken)
32002	}
32003}
32004
32005// method id "dialogflow.projects.locations.agents.webhooks.patch":
32006
32007type ProjectsLocationsAgentsWebhooksPatchCall struct {
32008	s                                *Service
32009	nameid                           string
32010	googleclouddialogflowcxv3webhook *GoogleCloudDialogflowCxV3Webhook
32011	urlParams_                       gensupport.URLParams
32012	ctx_                             context.Context
32013	header_                          http.Header
32014}
32015
32016// Patch: Updates the specified webhook.
32017//
32018// - name: The unique identifier of the webhook. Required for the
32019//   Webhooks.UpdateWebhook method. Webhooks.CreateWebhook populates the
32020//   name automatically. Format:
32021//   `projects//locations//agents//webhooks/`.
32022func (r *ProjectsLocationsAgentsWebhooksService) Patch(nameid string, googleclouddialogflowcxv3webhook *GoogleCloudDialogflowCxV3Webhook) *ProjectsLocationsAgentsWebhooksPatchCall {
32023	c := &ProjectsLocationsAgentsWebhooksPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32024	c.nameid = nameid
32025	c.googleclouddialogflowcxv3webhook = googleclouddialogflowcxv3webhook
32026	return c
32027}
32028
32029// UpdateMask sets the optional parameter "updateMask": The mask to
32030// control which fields get updated. If the mask is not present, all
32031// fields will be updated.
32032func (c *ProjectsLocationsAgentsWebhooksPatchCall) UpdateMask(updateMask string) *ProjectsLocationsAgentsWebhooksPatchCall {
32033	c.urlParams_.Set("updateMask", updateMask)
32034	return c
32035}
32036
32037// Fields allows partial responses to be retrieved. See
32038// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32039// for more information.
32040func (c *ProjectsLocationsAgentsWebhooksPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsWebhooksPatchCall {
32041	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32042	return c
32043}
32044
32045// Context sets the context to be used in this call's Do method. Any
32046// pending HTTP request will be aborted if the provided context is
32047// canceled.
32048func (c *ProjectsLocationsAgentsWebhooksPatchCall) Context(ctx context.Context) *ProjectsLocationsAgentsWebhooksPatchCall {
32049	c.ctx_ = ctx
32050	return c
32051}
32052
32053// Header returns an http.Header that can be modified by the caller to
32054// add HTTP headers to the request.
32055func (c *ProjectsLocationsAgentsWebhooksPatchCall) Header() http.Header {
32056	if c.header_ == nil {
32057		c.header_ = make(http.Header)
32058	}
32059	return c.header_
32060}
32061
32062func (c *ProjectsLocationsAgentsWebhooksPatchCall) doRequest(alt string) (*http.Response, error) {
32063	reqHeaders := make(http.Header)
32064	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
32065	for k, v := range c.header_ {
32066		reqHeaders[k] = v
32067	}
32068	reqHeaders.Set("User-Agent", c.s.userAgent())
32069	var body io.Reader = nil
32070	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3webhook)
32071	if err != nil {
32072		return nil, err
32073	}
32074	reqHeaders.Set("Content-Type", "application/json")
32075	c.urlParams_.Set("alt", alt)
32076	c.urlParams_.Set("prettyPrint", "false")
32077	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
32078	urls += "?" + c.urlParams_.Encode()
32079	req, err := http.NewRequest("PATCH", urls, body)
32080	if err != nil {
32081		return nil, err
32082	}
32083	req.Header = reqHeaders
32084	googleapi.Expand(req.URL, map[string]string{
32085		"name": c.nameid,
32086	})
32087	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32088}
32089
32090// Do executes the "dialogflow.projects.locations.agents.webhooks.patch" call.
32091// Exactly one of *GoogleCloudDialogflowCxV3Webhook or error will be
32092// non-nil. Any non-2xx status code is an error. Response headers are in
32093// either *GoogleCloudDialogflowCxV3Webhook.ServerResponse.Header or (if
32094// a response was returned at all) in error.(*googleapi.Error).Header.
32095// Use googleapi.IsNotModified to check whether the returned error was
32096// because http.StatusNotModified was returned.
32097func (c *ProjectsLocationsAgentsWebhooksPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3Webhook, error) {
32098	gensupport.SetOptions(c.urlParams_, opts...)
32099	res, err := c.doRequest("json")
32100	if res != nil && res.StatusCode == http.StatusNotModified {
32101		if res.Body != nil {
32102			res.Body.Close()
32103		}
32104		return nil, &googleapi.Error{
32105			Code:   res.StatusCode,
32106			Header: res.Header,
32107		}
32108	}
32109	if err != nil {
32110		return nil, err
32111	}
32112	defer googleapi.CloseBody(res)
32113	if err := googleapi.CheckResponse(res); err != nil {
32114		return nil, err
32115	}
32116	ret := &GoogleCloudDialogflowCxV3Webhook{
32117		ServerResponse: googleapi.ServerResponse{
32118			Header:         res.Header,
32119			HTTPStatusCode: res.StatusCode,
32120		},
32121	}
32122	target := &ret
32123	if err := gensupport.DecodeResponse(target, res); err != nil {
32124		return nil, err
32125	}
32126	return ret, nil
32127	// {
32128	//   "description": "Updates the specified webhook.",
32129	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/webhooks/{webhooksId}",
32130	//   "httpMethod": "PATCH",
32131	//   "id": "dialogflow.projects.locations.agents.webhooks.patch",
32132	//   "parameterOrder": [
32133	//     "name"
32134	//   ],
32135	//   "parameters": {
32136	//     "name": {
32137	//       "description": "The unique identifier of the webhook. Required for the Webhooks.UpdateWebhook method. Webhooks.CreateWebhook populates the name automatically. Format: `projects//locations//agents//webhooks/`.",
32138	//       "location": "path",
32139	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/webhooks/[^/]+$",
32140	//       "required": true,
32141	//       "type": "string"
32142	//     },
32143	//     "updateMask": {
32144	//       "description": "The mask to control which fields get updated. If the mask is not present, all fields will be updated.",
32145	//       "format": "google-fieldmask",
32146	//       "location": "query",
32147	//       "type": "string"
32148	//     }
32149	//   },
32150	//   "path": "v3/{+name}",
32151	//   "request": {
32152	//     "$ref": "GoogleCloudDialogflowCxV3Webhook"
32153	//   },
32154	//   "response": {
32155	//     "$ref": "GoogleCloudDialogflowCxV3Webhook"
32156	//   },
32157	//   "scopes": [
32158	//     "https://www.googleapis.com/auth/cloud-platform",
32159	//     "https://www.googleapis.com/auth/dialogflow"
32160	//   ]
32161	// }
32162
32163}
32164
32165// method id "dialogflow.projects.locations.operations.cancel":
32166
32167type ProjectsLocationsOperationsCancelCall struct {
32168	s          *Service
32169	name       string
32170	urlParams_ gensupport.URLParams
32171	ctx_       context.Context
32172	header_    http.Header
32173}
32174
32175// Cancel: Starts asynchronous cancellation on a long-running operation.
32176// The server makes a best effort to cancel the operation, but success
32177// is not guaranteed. If the server doesn't support this method, it
32178// returns `google.rpc.Code.UNIMPLEMENTED`. Clients can use
32179// Operations.GetOperation or other methods to check whether the
32180// cancellation succeeded or whether the operation completed despite
32181// cancellation. On successful cancellation, the operation is not
32182// deleted; instead, it becomes an operation with an Operation.error
32183// value with a google.rpc.Status.code of 1, corresponding to
32184// `Code.CANCELLED`.
32185//
32186// - name: The name of the operation resource to be cancelled.
32187func (r *ProjectsLocationsOperationsService) Cancel(name string) *ProjectsLocationsOperationsCancelCall {
32188	c := &ProjectsLocationsOperationsCancelCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32189	c.name = name
32190	return c
32191}
32192
32193// Fields allows partial responses to be retrieved. See
32194// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32195// for more information.
32196func (c *ProjectsLocationsOperationsCancelCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsCancelCall {
32197	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32198	return c
32199}
32200
32201// Context sets the context to be used in this call's Do method. Any
32202// pending HTTP request will be aborted if the provided context is
32203// canceled.
32204func (c *ProjectsLocationsOperationsCancelCall) Context(ctx context.Context) *ProjectsLocationsOperationsCancelCall {
32205	c.ctx_ = ctx
32206	return c
32207}
32208
32209// Header returns an http.Header that can be modified by the caller to
32210// add HTTP headers to the request.
32211func (c *ProjectsLocationsOperationsCancelCall) Header() http.Header {
32212	if c.header_ == nil {
32213		c.header_ = make(http.Header)
32214	}
32215	return c.header_
32216}
32217
32218func (c *ProjectsLocationsOperationsCancelCall) doRequest(alt string) (*http.Response, error) {
32219	reqHeaders := make(http.Header)
32220	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
32221	for k, v := range c.header_ {
32222		reqHeaders[k] = v
32223	}
32224	reqHeaders.Set("User-Agent", c.s.userAgent())
32225	var body io.Reader = nil
32226	c.urlParams_.Set("alt", alt)
32227	c.urlParams_.Set("prettyPrint", "false")
32228	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}:cancel")
32229	urls += "?" + c.urlParams_.Encode()
32230	req, err := http.NewRequest("POST", urls, body)
32231	if err != nil {
32232		return nil, err
32233	}
32234	req.Header = reqHeaders
32235	googleapi.Expand(req.URL, map[string]string{
32236		"name": c.name,
32237	})
32238	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32239}
32240
32241// Do executes the "dialogflow.projects.locations.operations.cancel" call.
32242// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
32243// non-2xx status code is an error. Response headers are in either
32244// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
32245// returned at all) in error.(*googleapi.Error).Header. Use
32246// googleapi.IsNotModified to check whether the returned error was
32247// because http.StatusNotModified was returned.
32248func (c *ProjectsLocationsOperationsCancelCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
32249	gensupport.SetOptions(c.urlParams_, opts...)
32250	res, err := c.doRequest("json")
32251	if res != nil && res.StatusCode == http.StatusNotModified {
32252		if res.Body != nil {
32253			res.Body.Close()
32254		}
32255		return nil, &googleapi.Error{
32256			Code:   res.StatusCode,
32257			Header: res.Header,
32258		}
32259	}
32260	if err != nil {
32261		return nil, err
32262	}
32263	defer googleapi.CloseBody(res)
32264	if err := googleapi.CheckResponse(res); err != nil {
32265		return nil, err
32266	}
32267	ret := &GoogleProtobufEmpty{
32268		ServerResponse: googleapi.ServerResponse{
32269			Header:         res.Header,
32270			HTTPStatusCode: res.StatusCode,
32271		},
32272	}
32273	target := &ret
32274	if err := gensupport.DecodeResponse(target, res); err != nil {
32275		return nil, err
32276	}
32277	return ret, nil
32278	// {
32279	//   "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`.",
32280	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}:cancel",
32281	//   "httpMethod": "POST",
32282	//   "id": "dialogflow.projects.locations.operations.cancel",
32283	//   "parameterOrder": [
32284	//     "name"
32285	//   ],
32286	//   "parameters": {
32287	//     "name": {
32288	//       "description": "The name of the operation resource to be cancelled.",
32289	//       "location": "path",
32290	//       "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$",
32291	//       "required": true,
32292	//       "type": "string"
32293	//     }
32294	//   },
32295	//   "path": "v3/{+name}:cancel",
32296	//   "response": {
32297	//     "$ref": "GoogleProtobufEmpty"
32298	//   },
32299	//   "scopes": [
32300	//     "https://www.googleapis.com/auth/cloud-platform",
32301	//     "https://www.googleapis.com/auth/dialogflow"
32302	//   ]
32303	// }
32304
32305}
32306
32307// method id "dialogflow.projects.locations.operations.get":
32308
32309type ProjectsLocationsOperationsGetCall struct {
32310	s            *Service
32311	name         string
32312	urlParams_   gensupport.URLParams
32313	ifNoneMatch_ string
32314	ctx_         context.Context
32315	header_      http.Header
32316}
32317
32318// Get: Gets the latest state of a long-running operation. Clients can
32319// use this method to poll the operation result at intervals as
32320// recommended by the API service.
32321//
32322// - name: The name of the operation resource.
32323func (r *ProjectsLocationsOperationsService) Get(name string) *ProjectsLocationsOperationsGetCall {
32324	c := &ProjectsLocationsOperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32325	c.name = name
32326	return c
32327}
32328
32329// Fields allows partial responses to be retrieved. See
32330// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32331// for more information.
32332func (c *ProjectsLocationsOperationsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsGetCall {
32333	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32334	return c
32335}
32336
32337// IfNoneMatch sets the optional parameter which makes the operation
32338// fail if the object's ETag matches the given value. This is useful for
32339// getting updates only after the object has changed since the last
32340// request. Use googleapi.IsNotModified to check whether the response
32341// error from Do is the result of In-None-Match.
32342func (c *ProjectsLocationsOperationsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsOperationsGetCall {
32343	c.ifNoneMatch_ = entityTag
32344	return c
32345}
32346
32347// Context sets the context to be used in this call's Do method. Any
32348// pending HTTP request will be aborted if the provided context is
32349// canceled.
32350func (c *ProjectsLocationsOperationsGetCall) Context(ctx context.Context) *ProjectsLocationsOperationsGetCall {
32351	c.ctx_ = ctx
32352	return c
32353}
32354
32355// Header returns an http.Header that can be modified by the caller to
32356// add HTTP headers to the request.
32357func (c *ProjectsLocationsOperationsGetCall) Header() http.Header {
32358	if c.header_ == nil {
32359		c.header_ = make(http.Header)
32360	}
32361	return c.header_
32362}
32363
32364func (c *ProjectsLocationsOperationsGetCall) doRequest(alt string) (*http.Response, error) {
32365	reqHeaders := make(http.Header)
32366	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
32367	for k, v := range c.header_ {
32368		reqHeaders[k] = v
32369	}
32370	reqHeaders.Set("User-Agent", c.s.userAgent())
32371	if c.ifNoneMatch_ != "" {
32372		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
32373	}
32374	var body io.Reader = nil
32375	c.urlParams_.Set("alt", alt)
32376	c.urlParams_.Set("prettyPrint", "false")
32377	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
32378	urls += "?" + c.urlParams_.Encode()
32379	req, err := http.NewRequest("GET", urls, body)
32380	if err != nil {
32381		return nil, err
32382	}
32383	req.Header = reqHeaders
32384	googleapi.Expand(req.URL, map[string]string{
32385		"name": c.name,
32386	})
32387	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32388}
32389
32390// Do executes the "dialogflow.projects.locations.operations.get" call.
32391// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
32392// Any non-2xx status code is an error. Response headers are in either
32393// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
32394// was returned at all) in error.(*googleapi.Error).Header. Use
32395// googleapi.IsNotModified to check whether the returned error was
32396// because http.StatusNotModified was returned.
32397func (c *ProjectsLocationsOperationsGetCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
32398	gensupport.SetOptions(c.urlParams_, opts...)
32399	res, err := c.doRequest("json")
32400	if res != nil && res.StatusCode == http.StatusNotModified {
32401		if res.Body != nil {
32402			res.Body.Close()
32403		}
32404		return nil, &googleapi.Error{
32405			Code:   res.StatusCode,
32406			Header: res.Header,
32407		}
32408	}
32409	if err != nil {
32410		return nil, err
32411	}
32412	defer googleapi.CloseBody(res)
32413	if err := googleapi.CheckResponse(res); err != nil {
32414		return nil, err
32415	}
32416	ret := &GoogleLongrunningOperation{
32417		ServerResponse: googleapi.ServerResponse{
32418			Header:         res.Header,
32419			HTTPStatusCode: res.StatusCode,
32420		},
32421	}
32422	target := &ret
32423	if err := gensupport.DecodeResponse(target, res); err != nil {
32424		return nil, err
32425	}
32426	return ret, nil
32427	// {
32428	//   "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.",
32429	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}",
32430	//   "httpMethod": "GET",
32431	//   "id": "dialogflow.projects.locations.operations.get",
32432	//   "parameterOrder": [
32433	//     "name"
32434	//   ],
32435	//   "parameters": {
32436	//     "name": {
32437	//       "description": "The name of the operation resource.",
32438	//       "location": "path",
32439	//       "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$",
32440	//       "required": true,
32441	//       "type": "string"
32442	//     }
32443	//   },
32444	//   "path": "v3/{+name}",
32445	//   "response": {
32446	//     "$ref": "GoogleLongrunningOperation"
32447	//   },
32448	//   "scopes": [
32449	//     "https://www.googleapis.com/auth/cloud-platform",
32450	//     "https://www.googleapis.com/auth/dialogflow"
32451	//   ]
32452	// }
32453
32454}
32455
32456// method id "dialogflow.projects.locations.operations.list":
32457
32458type ProjectsLocationsOperationsListCall struct {
32459	s            *Service
32460	name         string
32461	urlParams_   gensupport.URLParams
32462	ifNoneMatch_ string
32463	ctx_         context.Context
32464	header_      http.Header
32465}
32466
32467// List: Lists operations that match the specified filter in the
32468// request. If the server doesn't support this method, it returns
32469// `UNIMPLEMENTED`. NOTE: the `name` binding allows API services to
32470// override the binding to use different resource name schemes, such as
32471// `users/*/operations`. To override the binding, API services can add a
32472// binding such as "/v1/{name=users/*}/operations" to their service
32473// configuration. For backwards compatibility, the default name includes
32474// the operations collection id, however overriding users must ensure
32475// the name binding is the parent resource, without the operations
32476// collection id.
32477//
32478// - name: The name of the operation's parent resource.
32479func (r *ProjectsLocationsOperationsService) List(name string) *ProjectsLocationsOperationsListCall {
32480	c := &ProjectsLocationsOperationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32481	c.name = name
32482	return c
32483}
32484
32485// Filter sets the optional parameter "filter": The standard list
32486// filter.
32487func (c *ProjectsLocationsOperationsListCall) Filter(filter string) *ProjectsLocationsOperationsListCall {
32488	c.urlParams_.Set("filter", filter)
32489	return c
32490}
32491
32492// PageSize sets the optional parameter "pageSize": The standard list
32493// page size.
32494func (c *ProjectsLocationsOperationsListCall) PageSize(pageSize int64) *ProjectsLocationsOperationsListCall {
32495	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
32496	return c
32497}
32498
32499// PageToken sets the optional parameter "pageToken": The standard list
32500// page token.
32501func (c *ProjectsLocationsOperationsListCall) PageToken(pageToken string) *ProjectsLocationsOperationsListCall {
32502	c.urlParams_.Set("pageToken", pageToken)
32503	return c
32504}
32505
32506// Fields allows partial responses to be retrieved. See
32507// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32508// for more information.
32509func (c *ProjectsLocationsOperationsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsListCall {
32510	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32511	return c
32512}
32513
32514// IfNoneMatch sets the optional parameter which makes the operation
32515// fail if the object's ETag matches the given value. This is useful for
32516// getting updates only after the object has changed since the last
32517// request. Use googleapi.IsNotModified to check whether the response
32518// error from Do is the result of In-None-Match.
32519func (c *ProjectsLocationsOperationsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsOperationsListCall {
32520	c.ifNoneMatch_ = entityTag
32521	return c
32522}
32523
32524// Context sets the context to be used in this call's Do method. Any
32525// pending HTTP request will be aborted if the provided context is
32526// canceled.
32527func (c *ProjectsLocationsOperationsListCall) Context(ctx context.Context) *ProjectsLocationsOperationsListCall {
32528	c.ctx_ = ctx
32529	return c
32530}
32531
32532// Header returns an http.Header that can be modified by the caller to
32533// add HTTP headers to the request.
32534func (c *ProjectsLocationsOperationsListCall) Header() http.Header {
32535	if c.header_ == nil {
32536		c.header_ = make(http.Header)
32537	}
32538	return c.header_
32539}
32540
32541func (c *ProjectsLocationsOperationsListCall) doRequest(alt string) (*http.Response, error) {
32542	reqHeaders := make(http.Header)
32543	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
32544	for k, v := range c.header_ {
32545		reqHeaders[k] = v
32546	}
32547	reqHeaders.Set("User-Agent", c.s.userAgent())
32548	if c.ifNoneMatch_ != "" {
32549		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
32550	}
32551	var body io.Reader = nil
32552	c.urlParams_.Set("alt", alt)
32553	c.urlParams_.Set("prettyPrint", "false")
32554	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}/operations")
32555	urls += "?" + c.urlParams_.Encode()
32556	req, err := http.NewRequest("GET", urls, body)
32557	if err != nil {
32558		return nil, err
32559	}
32560	req.Header = reqHeaders
32561	googleapi.Expand(req.URL, map[string]string{
32562		"name": c.name,
32563	})
32564	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32565}
32566
32567// Do executes the "dialogflow.projects.locations.operations.list" call.
32568// Exactly one of *GoogleLongrunningListOperationsResponse or error will
32569// be non-nil. Any non-2xx status code is an error. Response headers are
32570// in either
32571// *GoogleLongrunningListOperationsResponse.ServerResponse.Header or (if
32572// a response was returned at all) in error.(*googleapi.Error).Header.
32573// Use googleapi.IsNotModified to check whether the returned error was
32574// because http.StatusNotModified was returned.
32575func (c *ProjectsLocationsOperationsListCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningListOperationsResponse, error) {
32576	gensupport.SetOptions(c.urlParams_, opts...)
32577	res, err := c.doRequest("json")
32578	if res != nil && res.StatusCode == http.StatusNotModified {
32579		if res.Body != nil {
32580			res.Body.Close()
32581		}
32582		return nil, &googleapi.Error{
32583			Code:   res.StatusCode,
32584			Header: res.Header,
32585		}
32586	}
32587	if err != nil {
32588		return nil, err
32589	}
32590	defer googleapi.CloseBody(res)
32591	if err := googleapi.CheckResponse(res); err != nil {
32592		return nil, err
32593	}
32594	ret := &GoogleLongrunningListOperationsResponse{
32595		ServerResponse: googleapi.ServerResponse{
32596			Header:         res.Header,
32597			HTTPStatusCode: res.StatusCode,
32598		},
32599	}
32600	target := &ret
32601	if err := gensupport.DecodeResponse(target, res); err != nil {
32602		return nil, err
32603	}
32604	return ret, nil
32605	// {
32606	//   "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.",
32607	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/operations",
32608	//   "httpMethod": "GET",
32609	//   "id": "dialogflow.projects.locations.operations.list",
32610	//   "parameterOrder": [
32611	//     "name"
32612	//   ],
32613	//   "parameters": {
32614	//     "filter": {
32615	//       "description": "The standard list filter.",
32616	//       "location": "query",
32617	//       "type": "string"
32618	//     },
32619	//     "name": {
32620	//       "description": "The name of the operation's parent resource.",
32621	//       "location": "path",
32622	//       "pattern": "^projects/[^/]+/locations/[^/]+$",
32623	//       "required": true,
32624	//       "type": "string"
32625	//     },
32626	//     "pageSize": {
32627	//       "description": "The standard list page size.",
32628	//       "format": "int32",
32629	//       "location": "query",
32630	//       "type": "integer"
32631	//     },
32632	//     "pageToken": {
32633	//       "description": "The standard list page token.",
32634	//       "location": "query",
32635	//       "type": "string"
32636	//     }
32637	//   },
32638	//   "path": "v3/{+name}/operations",
32639	//   "response": {
32640	//     "$ref": "GoogleLongrunningListOperationsResponse"
32641	//   },
32642	//   "scopes": [
32643	//     "https://www.googleapis.com/auth/cloud-platform",
32644	//     "https://www.googleapis.com/auth/dialogflow"
32645	//   ]
32646	// }
32647
32648}
32649
32650// Pages invokes f for each page of results.
32651// A non-nil error returned from f will halt the iteration.
32652// The provided context supersedes any context provided to the Context method.
32653func (c *ProjectsLocationsOperationsListCall) Pages(ctx context.Context, f func(*GoogleLongrunningListOperationsResponse) error) error {
32654	c.ctx_ = ctx
32655	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
32656	for {
32657		x, err := c.Do()
32658		if err != nil {
32659			return err
32660		}
32661		if err := f(x); err != nil {
32662			return err
32663		}
32664		if x.NextPageToken == "" {
32665			return nil
32666		}
32667		c.PageToken(x.NextPageToken)
32668	}
32669}
32670
32671// method id "dialogflow.projects.locations.securitySettings.create":
32672
32673type ProjectsLocationsSecuritySettingsCreateCall struct {
32674	s                                         *Service
32675	parent                                    string
32676	googleclouddialogflowcxv3securitysettings *GoogleCloudDialogflowCxV3SecuritySettings
32677	urlParams_                                gensupport.URLParams
32678	ctx_                                      context.Context
32679	header_                                   http.Header
32680}
32681
32682// Create: Create security settings in the specified location.
32683//
32684// - parent: The location to create an SecuritySettings for. Format:
32685//   `projects//locations/`.
32686func (r *ProjectsLocationsSecuritySettingsService) Create(parent string, googleclouddialogflowcxv3securitysettings *GoogleCloudDialogflowCxV3SecuritySettings) *ProjectsLocationsSecuritySettingsCreateCall {
32687	c := &ProjectsLocationsSecuritySettingsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32688	c.parent = parent
32689	c.googleclouddialogflowcxv3securitysettings = googleclouddialogflowcxv3securitysettings
32690	return c
32691}
32692
32693// Fields allows partial responses to be retrieved. See
32694// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32695// for more information.
32696func (c *ProjectsLocationsSecuritySettingsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsSecuritySettingsCreateCall {
32697	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32698	return c
32699}
32700
32701// Context sets the context to be used in this call's Do method. Any
32702// pending HTTP request will be aborted if the provided context is
32703// canceled.
32704func (c *ProjectsLocationsSecuritySettingsCreateCall) Context(ctx context.Context) *ProjectsLocationsSecuritySettingsCreateCall {
32705	c.ctx_ = ctx
32706	return c
32707}
32708
32709// Header returns an http.Header that can be modified by the caller to
32710// add HTTP headers to the request.
32711func (c *ProjectsLocationsSecuritySettingsCreateCall) Header() http.Header {
32712	if c.header_ == nil {
32713		c.header_ = make(http.Header)
32714	}
32715	return c.header_
32716}
32717
32718func (c *ProjectsLocationsSecuritySettingsCreateCall) doRequest(alt string) (*http.Response, error) {
32719	reqHeaders := make(http.Header)
32720	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
32721	for k, v := range c.header_ {
32722		reqHeaders[k] = v
32723	}
32724	reqHeaders.Set("User-Agent", c.s.userAgent())
32725	var body io.Reader = nil
32726	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3securitysettings)
32727	if err != nil {
32728		return nil, err
32729	}
32730	reqHeaders.Set("Content-Type", "application/json")
32731	c.urlParams_.Set("alt", alt)
32732	c.urlParams_.Set("prettyPrint", "false")
32733	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/securitySettings")
32734	urls += "?" + c.urlParams_.Encode()
32735	req, err := http.NewRequest("POST", urls, body)
32736	if err != nil {
32737		return nil, err
32738	}
32739	req.Header = reqHeaders
32740	googleapi.Expand(req.URL, map[string]string{
32741		"parent": c.parent,
32742	})
32743	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32744}
32745
32746// Do executes the "dialogflow.projects.locations.securitySettings.create" call.
32747// Exactly one of *GoogleCloudDialogflowCxV3SecuritySettings or error
32748// will be non-nil. Any non-2xx status code is an error. Response
32749// headers are in either
32750// *GoogleCloudDialogflowCxV3SecuritySettings.ServerResponse.Header or
32751// (if a response was returned at all) in
32752// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
32753// whether the returned error was because http.StatusNotModified was
32754// returned.
32755func (c *ProjectsLocationsSecuritySettingsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3SecuritySettings, error) {
32756	gensupport.SetOptions(c.urlParams_, opts...)
32757	res, err := c.doRequest("json")
32758	if res != nil && res.StatusCode == http.StatusNotModified {
32759		if res.Body != nil {
32760			res.Body.Close()
32761		}
32762		return nil, &googleapi.Error{
32763			Code:   res.StatusCode,
32764			Header: res.Header,
32765		}
32766	}
32767	if err != nil {
32768		return nil, err
32769	}
32770	defer googleapi.CloseBody(res)
32771	if err := googleapi.CheckResponse(res); err != nil {
32772		return nil, err
32773	}
32774	ret := &GoogleCloudDialogflowCxV3SecuritySettings{
32775		ServerResponse: googleapi.ServerResponse{
32776			Header:         res.Header,
32777			HTTPStatusCode: res.StatusCode,
32778		},
32779	}
32780	target := &ret
32781	if err := gensupport.DecodeResponse(target, res); err != nil {
32782		return nil, err
32783	}
32784	return ret, nil
32785	// {
32786	//   "description": "Create security settings in the specified location.",
32787	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/securitySettings",
32788	//   "httpMethod": "POST",
32789	//   "id": "dialogflow.projects.locations.securitySettings.create",
32790	//   "parameterOrder": [
32791	//     "parent"
32792	//   ],
32793	//   "parameters": {
32794	//     "parent": {
32795	//       "description": "Required. The location to create an SecuritySettings for. Format: `projects//locations/`.",
32796	//       "location": "path",
32797	//       "pattern": "^projects/[^/]+/locations/[^/]+$",
32798	//       "required": true,
32799	//       "type": "string"
32800	//     }
32801	//   },
32802	//   "path": "v3/{+parent}/securitySettings",
32803	//   "request": {
32804	//     "$ref": "GoogleCloudDialogflowCxV3SecuritySettings"
32805	//   },
32806	//   "response": {
32807	//     "$ref": "GoogleCloudDialogflowCxV3SecuritySettings"
32808	//   },
32809	//   "scopes": [
32810	//     "https://www.googleapis.com/auth/cloud-platform",
32811	//     "https://www.googleapis.com/auth/dialogflow"
32812	//   ]
32813	// }
32814
32815}
32816
32817// method id "dialogflow.projects.locations.securitySettings.delete":
32818
32819type ProjectsLocationsSecuritySettingsDeleteCall struct {
32820	s          *Service
32821	name       string
32822	urlParams_ gensupport.URLParams
32823	ctx_       context.Context
32824	header_    http.Header
32825}
32826
32827// Delete: Deletes the specified SecuritySettings.
32828//
32829// - name: The name of the SecuritySettings to delete. Format:
32830//   `projects//locations//securitySettings/`.
32831func (r *ProjectsLocationsSecuritySettingsService) Delete(name string) *ProjectsLocationsSecuritySettingsDeleteCall {
32832	c := &ProjectsLocationsSecuritySettingsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32833	c.name = name
32834	return c
32835}
32836
32837// Fields allows partial responses to be retrieved. See
32838// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32839// for more information.
32840func (c *ProjectsLocationsSecuritySettingsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsSecuritySettingsDeleteCall {
32841	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32842	return c
32843}
32844
32845// Context sets the context to be used in this call's Do method. Any
32846// pending HTTP request will be aborted if the provided context is
32847// canceled.
32848func (c *ProjectsLocationsSecuritySettingsDeleteCall) Context(ctx context.Context) *ProjectsLocationsSecuritySettingsDeleteCall {
32849	c.ctx_ = ctx
32850	return c
32851}
32852
32853// Header returns an http.Header that can be modified by the caller to
32854// add HTTP headers to the request.
32855func (c *ProjectsLocationsSecuritySettingsDeleteCall) Header() http.Header {
32856	if c.header_ == nil {
32857		c.header_ = make(http.Header)
32858	}
32859	return c.header_
32860}
32861
32862func (c *ProjectsLocationsSecuritySettingsDeleteCall) doRequest(alt string) (*http.Response, error) {
32863	reqHeaders := make(http.Header)
32864	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
32865	for k, v := range c.header_ {
32866		reqHeaders[k] = v
32867	}
32868	reqHeaders.Set("User-Agent", c.s.userAgent())
32869	var body io.Reader = nil
32870	c.urlParams_.Set("alt", alt)
32871	c.urlParams_.Set("prettyPrint", "false")
32872	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
32873	urls += "?" + c.urlParams_.Encode()
32874	req, err := http.NewRequest("DELETE", urls, body)
32875	if err != nil {
32876		return nil, err
32877	}
32878	req.Header = reqHeaders
32879	googleapi.Expand(req.URL, map[string]string{
32880		"name": c.name,
32881	})
32882	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32883}
32884
32885// Do executes the "dialogflow.projects.locations.securitySettings.delete" call.
32886// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
32887// non-2xx status code is an error. Response headers are in either
32888// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
32889// returned at all) in error.(*googleapi.Error).Header. Use
32890// googleapi.IsNotModified to check whether the returned error was
32891// because http.StatusNotModified was returned.
32892func (c *ProjectsLocationsSecuritySettingsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
32893	gensupport.SetOptions(c.urlParams_, opts...)
32894	res, err := c.doRequest("json")
32895	if res != nil && res.StatusCode == http.StatusNotModified {
32896		if res.Body != nil {
32897			res.Body.Close()
32898		}
32899		return nil, &googleapi.Error{
32900			Code:   res.StatusCode,
32901			Header: res.Header,
32902		}
32903	}
32904	if err != nil {
32905		return nil, err
32906	}
32907	defer googleapi.CloseBody(res)
32908	if err := googleapi.CheckResponse(res); err != nil {
32909		return nil, err
32910	}
32911	ret := &GoogleProtobufEmpty{
32912		ServerResponse: googleapi.ServerResponse{
32913			Header:         res.Header,
32914			HTTPStatusCode: res.StatusCode,
32915		},
32916	}
32917	target := &ret
32918	if err := gensupport.DecodeResponse(target, res); err != nil {
32919		return nil, err
32920	}
32921	return ret, nil
32922	// {
32923	//   "description": "Deletes the specified SecuritySettings.",
32924	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/securitySettings/{securitySettingsId}",
32925	//   "httpMethod": "DELETE",
32926	//   "id": "dialogflow.projects.locations.securitySettings.delete",
32927	//   "parameterOrder": [
32928	//     "name"
32929	//   ],
32930	//   "parameters": {
32931	//     "name": {
32932	//       "description": "Required. The name of the SecuritySettings to delete. Format: `projects//locations//securitySettings/`.",
32933	//       "location": "path",
32934	//       "pattern": "^projects/[^/]+/locations/[^/]+/securitySettings/[^/]+$",
32935	//       "required": true,
32936	//       "type": "string"
32937	//     }
32938	//   },
32939	//   "path": "v3/{+name}",
32940	//   "response": {
32941	//     "$ref": "GoogleProtobufEmpty"
32942	//   },
32943	//   "scopes": [
32944	//     "https://www.googleapis.com/auth/cloud-platform",
32945	//     "https://www.googleapis.com/auth/dialogflow"
32946	//   ]
32947	// }
32948
32949}
32950
32951// method id "dialogflow.projects.locations.securitySettings.get":
32952
32953type ProjectsLocationsSecuritySettingsGetCall struct {
32954	s            *Service
32955	name         string
32956	urlParams_   gensupport.URLParams
32957	ifNoneMatch_ string
32958	ctx_         context.Context
32959	header_      http.Header
32960}
32961
32962// Get: Retrieves the specified SecuritySettings. The returned settings
32963// may be stale by up to 1 minute.
32964//
32965// - name: Resource name of the settings. Format:
32966//   `projects//locations//securitySettings/`.
32967func (r *ProjectsLocationsSecuritySettingsService) Get(name string) *ProjectsLocationsSecuritySettingsGetCall {
32968	c := &ProjectsLocationsSecuritySettingsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32969	c.name = name
32970	return c
32971}
32972
32973// Fields allows partial responses to be retrieved. See
32974// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32975// for more information.
32976func (c *ProjectsLocationsSecuritySettingsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsSecuritySettingsGetCall {
32977	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32978	return c
32979}
32980
32981// IfNoneMatch sets the optional parameter which makes the operation
32982// fail if the object's ETag matches the given value. This is useful for
32983// getting updates only after the object has changed since the last
32984// request. Use googleapi.IsNotModified to check whether the response
32985// error from Do is the result of In-None-Match.
32986func (c *ProjectsLocationsSecuritySettingsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsSecuritySettingsGetCall {
32987	c.ifNoneMatch_ = entityTag
32988	return c
32989}
32990
32991// Context sets the context to be used in this call's Do method. Any
32992// pending HTTP request will be aborted if the provided context is
32993// canceled.
32994func (c *ProjectsLocationsSecuritySettingsGetCall) Context(ctx context.Context) *ProjectsLocationsSecuritySettingsGetCall {
32995	c.ctx_ = ctx
32996	return c
32997}
32998
32999// Header returns an http.Header that can be modified by the caller to
33000// add HTTP headers to the request.
33001func (c *ProjectsLocationsSecuritySettingsGetCall) Header() http.Header {
33002	if c.header_ == nil {
33003		c.header_ = make(http.Header)
33004	}
33005	return c.header_
33006}
33007
33008func (c *ProjectsLocationsSecuritySettingsGetCall) doRequest(alt string) (*http.Response, error) {
33009	reqHeaders := make(http.Header)
33010	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
33011	for k, v := range c.header_ {
33012		reqHeaders[k] = v
33013	}
33014	reqHeaders.Set("User-Agent", c.s.userAgent())
33015	if c.ifNoneMatch_ != "" {
33016		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
33017	}
33018	var body io.Reader = nil
33019	c.urlParams_.Set("alt", alt)
33020	c.urlParams_.Set("prettyPrint", "false")
33021	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
33022	urls += "?" + c.urlParams_.Encode()
33023	req, err := http.NewRequest("GET", urls, body)
33024	if err != nil {
33025		return nil, err
33026	}
33027	req.Header = reqHeaders
33028	googleapi.Expand(req.URL, map[string]string{
33029		"name": c.name,
33030	})
33031	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33032}
33033
33034// Do executes the "dialogflow.projects.locations.securitySettings.get" call.
33035// Exactly one of *GoogleCloudDialogflowCxV3SecuritySettings or error
33036// will be non-nil. Any non-2xx status code is an error. Response
33037// headers are in either
33038// *GoogleCloudDialogflowCxV3SecuritySettings.ServerResponse.Header or
33039// (if a response was returned at all) in
33040// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
33041// whether the returned error was because http.StatusNotModified was
33042// returned.
33043func (c *ProjectsLocationsSecuritySettingsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3SecuritySettings, error) {
33044	gensupport.SetOptions(c.urlParams_, opts...)
33045	res, err := c.doRequest("json")
33046	if res != nil && res.StatusCode == http.StatusNotModified {
33047		if res.Body != nil {
33048			res.Body.Close()
33049		}
33050		return nil, &googleapi.Error{
33051			Code:   res.StatusCode,
33052			Header: res.Header,
33053		}
33054	}
33055	if err != nil {
33056		return nil, err
33057	}
33058	defer googleapi.CloseBody(res)
33059	if err := googleapi.CheckResponse(res); err != nil {
33060		return nil, err
33061	}
33062	ret := &GoogleCloudDialogflowCxV3SecuritySettings{
33063		ServerResponse: googleapi.ServerResponse{
33064			Header:         res.Header,
33065			HTTPStatusCode: res.StatusCode,
33066		},
33067	}
33068	target := &ret
33069	if err := gensupport.DecodeResponse(target, res); err != nil {
33070		return nil, err
33071	}
33072	return ret, nil
33073	// {
33074	//   "description": "Retrieves the specified SecuritySettings. The returned settings may be stale by up to 1 minute.",
33075	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/securitySettings/{securitySettingsId}",
33076	//   "httpMethod": "GET",
33077	//   "id": "dialogflow.projects.locations.securitySettings.get",
33078	//   "parameterOrder": [
33079	//     "name"
33080	//   ],
33081	//   "parameters": {
33082	//     "name": {
33083	//       "description": "Required. Resource name of the settings. Format: `projects//locations//securitySettings/`.",
33084	//       "location": "path",
33085	//       "pattern": "^projects/[^/]+/locations/[^/]+/securitySettings/[^/]+$",
33086	//       "required": true,
33087	//       "type": "string"
33088	//     }
33089	//   },
33090	//   "path": "v3/{+name}",
33091	//   "response": {
33092	//     "$ref": "GoogleCloudDialogflowCxV3SecuritySettings"
33093	//   },
33094	//   "scopes": [
33095	//     "https://www.googleapis.com/auth/cloud-platform",
33096	//     "https://www.googleapis.com/auth/dialogflow"
33097	//   ]
33098	// }
33099
33100}
33101
33102// method id "dialogflow.projects.locations.securitySettings.list":
33103
33104type ProjectsLocationsSecuritySettingsListCall struct {
33105	s            *Service
33106	parent       string
33107	urlParams_   gensupport.URLParams
33108	ifNoneMatch_ string
33109	ctx_         context.Context
33110	header_      http.Header
33111}
33112
33113// List: Returns the list of all security settings in the specified
33114// location.
33115//
33116// - parent: The location to list all security settings for. Format:
33117//   `projects//locations/`.
33118func (r *ProjectsLocationsSecuritySettingsService) List(parent string) *ProjectsLocationsSecuritySettingsListCall {
33119	c := &ProjectsLocationsSecuritySettingsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33120	c.parent = parent
33121	return c
33122}
33123
33124// PageSize sets the optional parameter "pageSize": The maximum number
33125// of items to return in a single page. By default 20 and at most 100.
33126func (c *ProjectsLocationsSecuritySettingsListCall) PageSize(pageSize int64) *ProjectsLocationsSecuritySettingsListCall {
33127	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
33128	return c
33129}
33130
33131// PageToken sets the optional parameter "pageToken": The
33132// next_page_token value returned from a previous list request.
33133func (c *ProjectsLocationsSecuritySettingsListCall) PageToken(pageToken string) *ProjectsLocationsSecuritySettingsListCall {
33134	c.urlParams_.Set("pageToken", pageToken)
33135	return c
33136}
33137
33138// Fields allows partial responses to be retrieved. See
33139// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33140// for more information.
33141func (c *ProjectsLocationsSecuritySettingsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsSecuritySettingsListCall {
33142	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33143	return c
33144}
33145
33146// IfNoneMatch sets the optional parameter which makes the operation
33147// fail if the object's ETag matches the given value. This is useful for
33148// getting updates only after the object has changed since the last
33149// request. Use googleapi.IsNotModified to check whether the response
33150// error from Do is the result of In-None-Match.
33151func (c *ProjectsLocationsSecuritySettingsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsSecuritySettingsListCall {
33152	c.ifNoneMatch_ = entityTag
33153	return c
33154}
33155
33156// Context sets the context to be used in this call's Do method. Any
33157// pending HTTP request will be aborted if the provided context is
33158// canceled.
33159func (c *ProjectsLocationsSecuritySettingsListCall) Context(ctx context.Context) *ProjectsLocationsSecuritySettingsListCall {
33160	c.ctx_ = ctx
33161	return c
33162}
33163
33164// Header returns an http.Header that can be modified by the caller to
33165// add HTTP headers to the request.
33166func (c *ProjectsLocationsSecuritySettingsListCall) Header() http.Header {
33167	if c.header_ == nil {
33168		c.header_ = make(http.Header)
33169	}
33170	return c.header_
33171}
33172
33173func (c *ProjectsLocationsSecuritySettingsListCall) doRequest(alt string) (*http.Response, error) {
33174	reqHeaders := make(http.Header)
33175	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
33176	for k, v := range c.header_ {
33177		reqHeaders[k] = v
33178	}
33179	reqHeaders.Set("User-Agent", c.s.userAgent())
33180	if c.ifNoneMatch_ != "" {
33181		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
33182	}
33183	var body io.Reader = nil
33184	c.urlParams_.Set("alt", alt)
33185	c.urlParams_.Set("prettyPrint", "false")
33186	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+parent}/securitySettings")
33187	urls += "?" + c.urlParams_.Encode()
33188	req, err := http.NewRequest("GET", urls, body)
33189	if err != nil {
33190		return nil, err
33191	}
33192	req.Header = reqHeaders
33193	googleapi.Expand(req.URL, map[string]string{
33194		"parent": c.parent,
33195	})
33196	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33197}
33198
33199// Do executes the "dialogflow.projects.locations.securitySettings.list" call.
33200// Exactly one of *GoogleCloudDialogflowCxV3ListSecuritySettingsResponse
33201// or error will be non-nil. Any non-2xx status code is an error.
33202// Response headers are in either
33203// *GoogleCloudDialogflowCxV3ListSecuritySettingsResponse.ServerResponse.
33204// Header or (if a response was returned at all) in
33205// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
33206// whether the returned error was because http.StatusNotModified was
33207// returned.
33208func (c *ProjectsLocationsSecuritySettingsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3ListSecuritySettingsResponse, error) {
33209	gensupport.SetOptions(c.urlParams_, opts...)
33210	res, err := c.doRequest("json")
33211	if res != nil && res.StatusCode == http.StatusNotModified {
33212		if res.Body != nil {
33213			res.Body.Close()
33214		}
33215		return nil, &googleapi.Error{
33216			Code:   res.StatusCode,
33217			Header: res.Header,
33218		}
33219	}
33220	if err != nil {
33221		return nil, err
33222	}
33223	defer googleapi.CloseBody(res)
33224	if err := googleapi.CheckResponse(res); err != nil {
33225		return nil, err
33226	}
33227	ret := &GoogleCloudDialogflowCxV3ListSecuritySettingsResponse{
33228		ServerResponse: googleapi.ServerResponse{
33229			Header:         res.Header,
33230			HTTPStatusCode: res.StatusCode,
33231		},
33232	}
33233	target := &ret
33234	if err := gensupport.DecodeResponse(target, res); err != nil {
33235		return nil, err
33236	}
33237	return ret, nil
33238	// {
33239	//   "description": "Returns the list of all security settings in the specified location.",
33240	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/securitySettings",
33241	//   "httpMethod": "GET",
33242	//   "id": "dialogflow.projects.locations.securitySettings.list",
33243	//   "parameterOrder": [
33244	//     "parent"
33245	//   ],
33246	//   "parameters": {
33247	//     "pageSize": {
33248	//       "description": "The maximum number of items to return in a single page. By default 20 and at most 100.",
33249	//       "format": "int32",
33250	//       "location": "query",
33251	//       "type": "integer"
33252	//     },
33253	//     "pageToken": {
33254	//       "description": "The next_page_token value returned from a previous list request.",
33255	//       "location": "query",
33256	//       "type": "string"
33257	//     },
33258	//     "parent": {
33259	//       "description": "Required. The location to list all security settings for. Format: `projects//locations/`.",
33260	//       "location": "path",
33261	//       "pattern": "^projects/[^/]+/locations/[^/]+$",
33262	//       "required": true,
33263	//       "type": "string"
33264	//     }
33265	//   },
33266	//   "path": "v3/{+parent}/securitySettings",
33267	//   "response": {
33268	//     "$ref": "GoogleCloudDialogflowCxV3ListSecuritySettingsResponse"
33269	//   },
33270	//   "scopes": [
33271	//     "https://www.googleapis.com/auth/cloud-platform",
33272	//     "https://www.googleapis.com/auth/dialogflow"
33273	//   ]
33274	// }
33275
33276}
33277
33278// Pages invokes f for each page of results.
33279// A non-nil error returned from f will halt the iteration.
33280// The provided context supersedes any context provided to the Context method.
33281func (c *ProjectsLocationsSecuritySettingsListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3ListSecuritySettingsResponse) error) error {
33282	c.ctx_ = ctx
33283	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
33284	for {
33285		x, err := c.Do()
33286		if err != nil {
33287			return err
33288		}
33289		if err := f(x); err != nil {
33290			return err
33291		}
33292		if x.NextPageToken == "" {
33293			return nil
33294		}
33295		c.PageToken(x.NextPageToken)
33296	}
33297}
33298
33299// method id "dialogflow.projects.locations.securitySettings.patch":
33300
33301type ProjectsLocationsSecuritySettingsPatchCall struct {
33302	s                                         *Service
33303	name                                      string
33304	googleclouddialogflowcxv3securitysettings *GoogleCloudDialogflowCxV3SecuritySettings
33305	urlParams_                                gensupport.URLParams
33306	ctx_                                      context.Context
33307	header_                                   http.Header
33308}
33309
33310// Patch: Updates the specified SecuritySettings.
33311//
33312// - name: Resource name of the settings. Format:
33313//   `projects//locations//securitySettings/`.
33314func (r *ProjectsLocationsSecuritySettingsService) Patch(name string, googleclouddialogflowcxv3securitysettings *GoogleCloudDialogflowCxV3SecuritySettings) *ProjectsLocationsSecuritySettingsPatchCall {
33315	c := &ProjectsLocationsSecuritySettingsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33316	c.name = name
33317	c.googleclouddialogflowcxv3securitysettings = googleclouddialogflowcxv3securitysettings
33318	return c
33319}
33320
33321// UpdateMask sets the optional parameter "updateMask": Required. The
33322// mask to control which fields get updated. If the mask is not present,
33323// all fields will be updated.
33324func (c *ProjectsLocationsSecuritySettingsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsSecuritySettingsPatchCall {
33325	c.urlParams_.Set("updateMask", updateMask)
33326	return c
33327}
33328
33329// Fields allows partial responses to be retrieved. See
33330// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33331// for more information.
33332func (c *ProjectsLocationsSecuritySettingsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsSecuritySettingsPatchCall {
33333	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33334	return c
33335}
33336
33337// Context sets the context to be used in this call's Do method. Any
33338// pending HTTP request will be aborted if the provided context is
33339// canceled.
33340func (c *ProjectsLocationsSecuritySettingsPatchCall) Context(ctx context.Context) *ProjectsLocationsSecuritySettingsPatchCall {
33341	c.ctx_ = ctx
33342	return c
33343}
33344
33345// Header returns an http.Header that can be modified by the caller to
33346// add HTTP headers to the request.
33347func (c *ProjectsLocationsSecuritySettingsPatchCall) Header() http.Header {
33348	if c.header_ == nil {
33349		c.header_ = make(http.Header)
33350	}
33351	return c.header_
33352}
33353
33354func (c *ProjectsLocationsSecuritySettingsPatchCall) doRequest(alt string) (*http.Response, error) {
33355	reqHeaders := make(http.Header)
33356	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
33357	for k, v := range c.header_ {
33358		reqHeaders[k] = v
33359	}
33360	reqHeaders.Set("User-Agent", c.s.userAgent())
33361	var body io.Reader = nil
33362	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3securitysettings)
33363	if err != nil {
33364		return nil, err
33365	}
33366	reqHeaders.Set("Content-Type", "application/json")
33367	c.urlParams_.Set("alt", alt)
33368	c.urlParams_.Set("prettyPrint", "false")
33369	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
33370	urls += "?" + c.urlParams_.Encode()
33371	req, err := http.NewRequest("PATCH", urls, body)
33372	if err != nil {
33373		return nil, err
33374	}
33375	req.Header = reqHeaders
33376	googleapi.Expand(req.URL, map[string]string{
33377		"name": c.name,
33378	})
33379	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33380}
33381
33382// Do executes the "dialogflow.projects.locations.securitySettings.patch" call.
33383// Exactly one of *GoogleCloudDialogflowCxV3SecuritySettings or error
33384// will be non-nil. Any non-2xx status code is an error. Response
33385// headers are in either
33386// *GoogleCloudDialogflowCxV3SecuritySettings.ServerResponse.Header or
33387// (if a response was returned at all) in
33388// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
33389// whether the returned error was because http.StatusNotModified was
33390// returned.
33391func (c *ProjectsLocationsSecuritySettingsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3SecuritySettings, error) {
33392	gensupport.SetOptions(c.urlParams_, opts...)
33393	res, err := c.doRequest("json")
33394	if res != nil && res.StatusCode == http.StatusNotModified {
33395		if res.Body != nil {
33396			res.Body.Close()
33397		}
33398		return nil, &googleapi.Error{
33399			Code:   res.StatusCode,
33400			Header: res.Header,
33401		}
33402	}
33403	if err != nil {
33404		return nil, err
33405	}
33406	defer googleapi.CloseBody(res)
33407	if err := googleapi.CheckResponse(res); err != nil {
33408		return nil, err
33409	}
33410	ret := &GoogleCloudDialogflowCxV3SecuritySettings{
33411		ServerResponse: googleapi.ServerResponse{
33412			Header:         res.Header,
33413			HTTPStatusCode: res.StatusCode,
33414		},
33415	}
33416	target := &ret
33417	if err := gensupport.DecodeResponse(target, res); err != nil {
33418		return nil, err
33419	}
33420	return ret, nil
33421	// {
33422	//   "description": "Updates the specified SecuritySettings.",
33423	//   "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/securitySettings/{securitySettingsId}",
33424	//   "httpMethod": "PATCH",
33425	//   "id": "dialogflow.projects.locations.securitySettings.patch",
33426	//   "parameterOrder": [
33427	//     "name"
33428	//   ],
33429	//   "parameters": {
33430	//     "name": {
33431	//       "description": "Required. Resource name of the settings. Format: `projects//locations//securitySettings/`.",
33432	//       "location": "path",
33433	//       "pattern": "^projects/[^/]+/locations/[^/]+/securitySettings/[^/]+$",
33434	//       "required": true,
33435	//       "type": "string"
33436	//     },
33437	//     "updateMask": {
33438	//       "description": "Required. The mask to control which fields get updated. If the mask is not present, all fields will be updated.",
33439	//       "format": "google-fieldmask",
33440	//       "location": "query",
33441	//       "type": "string"
33442	//     }
33443	//   },
33444	//   "path": "v3/{+name}",
33445	//   "request": {
33446	//     "$ref": "GoogleCloudDialogflowCxV3SecuritySettings"
33447	//   },
33448	//   "response": {
33449	//     "$ref": "GoogleCloudDialogflowCxV3SecuritySettings"
33450	//   },
33451	//   "scopes": [
33452	//     "https://www.googleapis.com/auth/cloud-platform",
33453	//     "https://www.googleapis.com/auth/dialogflow"
33454	//   ]
33455	// }
33456
33457}
33458
33459// method id "dialogflow.projects.operations.cancel":
33460
33461type ProjectsOperationsCancelCall struct {
33462	s          *Service
33463	name       string
33464	urlParams_ gensupport.URLParams
33465	ctx_       context.Context
33466	header_    http.Header
33467}
33468
33469// Cancel: Starts asynchronous cancellation on a long-running operation.
33470// The server makes a best effort to cancel the operation, but success
33471// is not guaranteed. If the server doesn't support this method, it
33472// returns `google.rpc.Code.UNIMPLEMENTED`. Clients can use
33473// Operations.GetOperation or other methods to check whether the
33474// cancellation succeeded or whether the operation completed despite
33475// cancellation. On successful cancellation, the operation is not
33476// deleted; instead, it becomes an operation with an Operation.error
33477// value with a google.rpc.Status.code of 1, corresponding to
33478// `Code.CANCELLED`.
33479//
33480// - name: The name of the operation resource to be cancelled.
33481func (r *ProjectsOperationsService) Cancel(name string) *ProjectsOperationsCancelCall {
33482	c := &ProjectsOperationsCancelCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33483	c.name = name
33484	return c
33485}
33486
33487// Fields allows partial responses to be retrieved. See
33488// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33489// for more information.
33490func (c *ProjectsOperationsCancelCall) Fields(s ...googleapi.Field) *ProjectsOperationsCancelCall {
33491	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33492	return c
33493}
33494
33495// Context sets the context to be used in this call's Do method. Any
33496// pending HTTP request will be aborted if the provided context is
33497// canceled.
33498func (c *ProjectsOperationsCancelCall) Context(ctx context.Context) *ProjectsOperationsCancelCall {
33499	c.ctx_ = ctx
33500	return c
33501}
33502
33503// Header returns an http.Header that can be modified by the caller to
33504// add HTTP headers to the request.
33505func (c *ProjectsOperationsCancelCall) Header() http.Header {
33506	if c.header_ == nil {
33507		c.header_ = make(http.Header)
33508	}
33509	return c.header_
33510}
33511
33512func (c *ProjectsOperationsCancelCall) doRequest(alt string) (*http.Response, error) {
33513	reqHeaders := make(http.Header)
33514	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
33515	for k, v := range c.header_ {
33516		reqHeaders[k] = v
33517	}
33518	reqHeaders.Set("User-Agent", c.s.userAgent())
33519	var body io.Reader = nil
33520	c.urlParams_.Set("alt", alt)
33521	c.urlParams_.Set("prettyPrint", "false")
33522	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}:cancel")
33523	urls += "?" + c.urlParams_.Encode()
33524	req, err := http.NewRequest("POST", urls, body)
33525	if err != nil {
33526		return nil, err
33527	}
33528	req.Header = reqHeaders
33529	googleapi.Expand(req.URL, map[string]string{
33530		"name": c.name,
33531	})
33532	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33533}
33534
33535// Do executes the "dialogflow.projects.operations.cancel" call.
33536// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
33537// non-2xx status code is an error. Response headers are in either
33538// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
33539// returned at all) in error.(*googleapi.Error).Header. Use
33540// googleapi.IsNotModified to check whether the returned error was
33541// because http.StatusNotModified was returned.
33542func (c *ProjectsOperationsCancelCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
33543	gensupport.SetOptions(c.urlParams_, opts...)
33544	res, err := c.doRequest("json")
33545	if res != nil && res.StatusCode == http.StatusNotModified {
33546		if res.Body != nil {
33547			res.Body.Close()
33548		}
33549		return nil, &googleapi.Error{
33550			Code:   res.StatusCode,
33551			Header: res.Header,
33552		}
33553	}
33554	if err != nil {
33555		return nil, err
33556	}
33557	defer googleapi.CloseBody(res)
33558	if err := googleapi.CheckResponse(res); err != nil {
33559		return nil, err
33560	}
33561	ret := &GoogleProtobufEmpty{
33562		ServerResponse: googleapi.ServerResponse{
33563			Header:         res.Header,
33564			HTTPStatusCode: res.StatusCode,
33565		},
33566	}
33567	target := &ret
33568	if err := gensupport.DecodeResponse(target, res); err != nil {
33569		return nil, err
33570	}
33571	return ret, nil
33572	// {
33573	//   "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`.",
33574	//   "flatPath": "v3/projects/{projectsId}/operations/{operationsId}:cancel",
33575	//   "httpMethod": "POST",
33576	//   "id": "dialogflow.projects.operations.cancel",
33577	//   "parameterOrder": [
33578	//     "name"
33579	//   ],
33580	//   "parameters": {
33581	//     "name": {
33582	//       "description": "The name of the operation resource to be cancelled.",
33583	//       "location": "path",
33584	//       "pattern": "^projects/[^/]+/operations/[^/]+$",
33585	//       "required": true,
33586	//       "type": "string"
33587	//     }
33588	//   },
33589	//   "path": "v3/{+name}:cancel",
33590	//   "response": {
33591	//     "$ref": "GoogleProtobufEmpty"
33592	//   },
33593	//   "scopes": [
33594	//     "https://www.googleapis.com/auth/cloud-platform",
33595	//     "https://www.googleapis.com/auth/dialogflow"
33596	//   ]
33597	// }
33598
33599}
33600
33601// method id "dialogflow.projects.operations.get":
33602
33603type ProjectsOperationsGetCall struct {
33604	s            *Service
33605	name         string
33606	urlParams_   gensupport.URLParams
33607	ifNoneMatch_ string
33608	ctx_         context.Context
33609	header_      http.Header
33610}
33611
33612// Get: Gets the latest state of a long-running operation. Clients can
33613// use this method to poll the operation result at intervals as
33614// recommended by the API service.
33615//
33616// - name: The name of the operation resource.
33617func (r *ProjectsOperationsService) Get(name string) *ProjectsOperationsGetCall {
33618	c := &ProjectsOperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33619	c.name = name
33620	return c
33621}
33622
33623// Fields allows partial responses to be retrieved. See
33624// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33625// for more information.
33626func (c *ProjectsOperationsGetCall) Fields(s ...googleapi.Field) *ProjectsOperationsGetCall {
33627	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33628	return c
33629}
33630
33631// IfNoneMatch sets the optional parameter which makes the operation
33632// fail if the object's ETag matches the given value. This is useful for
33633// getting updates only after the object has changed since the last
33634// request. Use googleapi.IsNotModified to check whether the response
33635// error from Do is the result of In-None-Match.
33636func (c *ProjectsOperationsGetCall) IfNoneMatch(entityTag string) *ProjectsOperationsGetCall {
33637	c.ifNoneMatch_ = entityTag
33638	return c
33639}
33640
33641// Context sets the context to be used in this call's Do method. Any
33642// pending HTTP request will be aborted if the provided context is
33643// canceled.
33644func (c *ProjectsOperationsGetCall) Context(ctx context.Context) *ProjectsOperationsGetCall {
33645	c.ctx_ = ctx
33646	return c
33647}
33648
33649// Header returns an http.Header that can be modified by the caller to
33650// add HTTP headers to the request.
33651func (c *ProjectsOperationsGetCall) Header() http.Header {
33652	if c.header_ == nil {
33653		c.header_ = make(http.Header)
33654	}
33655	return c.header_
33656}
33657
33658func (c *ProjectsOperationsGetCall) doRequest(alt string) (*http.Response, error) {
33659	reqHeaders := make(http.Header)
33660	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
33661	for k, v := range c.header_ {
33662		reqHeaders[k] = v
33663	}
33664	reqHeaders.Set("User-Agent", c.s.userAgent())
33665	if c.ifNoneMatch_ != "" {
33666		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
33667	}
33668	var body io.Reader = nil
33669	c.urlParams_.Set("alt", alt)
33670	c.urlParams_.Set("prettyPrint", "false")
33671	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}")
33672	urls += "?" + c.urlParams_.Encode()
33673	req, err := http.NewRequest("GET", urls, body)
33674	if err != nil {
33675		return nil, err
33676	}
33677	req.Header = reqHeaders
33678	googleapi.Expand(req.URL, map[string]string{
33679		"name": c.name,
33680	})
33681	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33682}
33683
33684// Do executes the "dialogflow.projects.operations.get" call.
33685// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
33686// Any non-2xx status code is an error. Response headers are in either
33687// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
33688// was returned at all) in error.(*googleapi.Error).Header. Use
33689// googleapi.IsNotModified to check whether the returned error was
33690// because http.StatusNotModified was returned.
33691func (c *ProjectsOperationsGetCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
33692	gensupport.SetOptions(c.urlParams_, opts...)
33693	res, err := c.doRequest("json")
33694	if res != nil && res.StatusCode == http.StatusNotModified {
33695		if res.Body != nil {
33696			res.Body.Close()
33697		}
33698		return nil, &googleapi.Error{
33699			Code:   res.StatusCode,
33700			Header: res.Header,
33701		}
33702	}
33703	if err != nil {
33704		return nil, err
33705	}
33706	defer googleapi.CloseBody(res)
33707	if err := googleapi.CheckResponse(res); err != nil {
33708		return nil, err
33709	}
33710	ret := &GoogleLongrunningOperation{
33711		ServerResponse: googleapi.ServerResponse{
33712			Header:         res.Header,
33713			HTTPStatusCode: res.StatusCode,
33714		},
33715	}
33716	target := &ret
33717	if err := gensupport.DecodeResponse(target, res); err != nil {
33718		return nil, err
33719	}
33720	return ret, nil
33721	// {
33722	//   "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.",
33723	//   "flatPath": "v3/projects/{projectsId}/operations/{operationsId}",
33724	//   "httpMethod": "GET",
33725	//   "id": "dialogflow.projects.operations.get",
33726	//   "parameterOrder": [
33727	//     "name"
33728	//   ],
33729	//   "parameters": {
33730	//     "name": {
33731	//       "description": "The name of the operation resource.",
33732	//       "location": "path",
33733	//       "pattern": "^projects/[^/]+/operations/[^/]+$",
33734	//       "required": true,
33735	//       "type": "string"
33736	//     }
33737	//   },
33738	//   "path": "v3/{+name}",
33739	//   "response": {
33740	//     "$ref": "GoogleLongrunningOperation"
33741	//   },
33742	//   "scopes": [
33743	//     "https://www.googleapis.com/auth/cloud-platform",
33744	//     "https://www.googleapis.com/auth/dialogflow"
33745	//   ]
33746	// }
33747
33748}
33749
33750// method id "dialogflow.projects.operations.list":
33751
33752type ProjectsOperationsListCall struct {
33753	s            *Service
33754	name         string
33755	urlParams_   gensupport.URLParams
33756	ifNoneMatch_ string
33757	ctx_         context.Context
33758	header_      http.Header
33759}
33760
33761// List: Lists operations that match the specified filter in the
33762// request. If the server doesn't support this method, it returns
33763// `UNIMPLEMENTED`. NOTE: the `name` binding allows API services to
33764// override the binding to use different resource name schemes, such as
33765// `users/*/operations`. To override the binding, API services can add a
33766// binding such as "/v1/{name=users/*}/operations" to their service
33767// configuration. For backwards compatibility, the default name includes
33768// the operations collection id, however overriding users must ensure
33769// the name binding is the parent resource, without the operations
33770// collection id.
33771//
33772// - name: The name of the operation's parent resource.
33773func (r *ProjectsOperationsService) List(name string) *ProjectsOperationsListCall {
33774	c := &ProjectsOperationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33775	c.name = name
33776	return c
33777}
33778
33779// Filter sets the optional parameter "filter": The standard list
33780// filter.
33781func (c *ProjectsOperationsListCall) Filter(filter string) *ProjectsOperationsListCall {
33782	c.urlParams_.Set("filter", filter)
33783	return c
33784}
33785
33786// PageSize sets the optional parameter "pageSize": The standard list
33787// page size.
33788func (c *ProjectsOperationsListCall) PageSize(pageSize int64) *ProjectsOperationsListCall {
33789	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
33790	return c
33791}
33792
33793// PageToken sets the optional parameter "pageToken": The standard list
33794// page token.
33795func (c *ProjectsOperationsListCall) PageToken(pageToken string) *ProjectsOperationsListCall {
33796	c.urlParams_.Set("pageToken", pageToken)
33797	return c
33798}
33799
33800// Fields allows partial responses to be retrieved. See
33801// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33802// for more information.
33803func (c *ProjectsOperationsListCall) Fields(s ...googleapi.Field) *ProjectsOperationsListCall {
33804	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33805	return c
33806}
33807
33808// IfNoneMatch sets the optional parameter which makes the operation
33809// fail if the object's ETag matches the given value. This is useful for
33810// getting updates only after the object has changed since the last
33811// request. Use googleapi.IsNotModified to check whether the response
33812// error from Do is the result of In-None-Match.
33813func (c *ProjectsOperationsListCall) IfNoneMatch(entityTag string) *ProjectsOperationsListCall {
33814	c.ifNoneMatch_ = entityTag
33815	return c
33816}
33817
33818// Context sets the context to be used in this call's Do method. Any
33819// pending HTTP request will be aborted if the provided context is
33820// canceled.
33821func (c *ProjectsOperationsListCall) Context(ctx context.Context) *ProjectsOperationsListCall {
33822	c.ctx_ = ctx
33823	return c
33824}
33825
33826// Header returns an http.Header that can be modified by the caller to
33827// add HTTP headers to the request.
33828func (c *ProjectsOperationsListCall) Header() http.Header {
33829	if c.header_ == nil {
33830		c.header_ = make(http.Header)
33831	}
33832	return c.header_
33833}
33834
33835func (c *ProjectsOperationsListCall) doRequest(alt string) (*http.Response, error) {
33836	reqHeaders := make(http.Header)
33837	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210629")
33838	for k, v := range c.header_ {
33839		reqHeaders[k] = v
33840	}
33841	reqHeaders.Set("User-Agent", c.s.userAgent())
33842	if c.ifNoneMatch_ != "" {
33843		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
33844	}
33845	var body io.Reader = nil
33846	c.urlParams_.Set("alt", alt)
33847	c.urlParams_.Set("prettyPrint", "false")
33848	urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}/operations")
33849	urls += "?" + c.urlParams_.Encode()
33850	req, err := http.NewRequest("GET", urls, body)
33851	if err != nil {
33852		return nil, err
33853	}
33854	req.Header = reqHeaders
33855	googleapi.Expand(req.URL, map[string]string{
33856		"name": c.name,
33857	})
33858	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33859}
33860
33861// Do executes the "dialogflow.projects.operations.list" call.
33862// Exactly one of *GoogleLongrunningListOperationsResponse or error will
33863// be non-nil. Any non-2xx status code is an error. Response headers are
33864// in either
33865// *GoogleLongrunningListOperationsResponse.ServerResponse.Header or (if
33866// a response was returned at all) in error.(*googleapi.Error).Header.
33867// Use googleapi.IsNotModified to check whether the returned error was
33868// because http.StatusNotModified was returned.
33869func (c *ProjectsOperationsListCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningListOperationsResponse, error) {
33870	gensupport.SetOptions(c.urlParams_, opts...)
33871	res, err := c.doRequest("json")
33872	if res != nil && res.StatusCode == http.StatusNotModified {
33873		if res.Body != nil {
33874			res.Body.Close()
33875		}
33876		return nil, &googleapi.Error{
33877			Code:   res.StatusCode,
33878			Header: res.Header,
33879		}
33880	}
33881	if err != nil {
33882		return nil, err
33883	}
33884	defer googleapi.CloseBody(res)
33885	if err := googleapi.CheckResponse(res); err != nil {
33886		return nil, err
33887	}
33888	ret := &GoogleLongrunningListOperationsResponse{
33889		ServerResponse: googleapi.ServerResponse{
33890			Header:         res.Header,
33891			HTTPStatusCode: res.StatusCode,
33892		},
33893	}
33894	target := &ret
33895	if err := gensupport.DecodeResponse(target, res); err != nil {
33896		return nil, err
33897	}
33898	return ret, nil
33899	// {
33900	//   "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.",
33901	//   "flatPath": "v3/projects/{projectsId}/operations",
33902	//   "httpMethod": "GET",
33903	//   "id": "dialogflow.projects.operations.list",
33904	//   "parameterOrder": [
33905	//     "name"
33906	//   ],
33907	//   "parameters": {
33908	//     "filter": {
33909	//       "description": "The standard list filter.",
33910	//       "location": "query",
33911	//       "type": "string"
33912	//     },
33913	//     "name": {
33914	//       "description": "The name of the operation's parent resource.",
33915	//       "location": "path",
33916	//       "pattern": "^projects/[^/]+$",
33917	//       "required": true,
33918	//       "type": "string"
33919	//     },
33920	//     "pageSize": {
33921	//       "description": "The standard list page size.",
33922	//       "format": "int32",
33923	//       "location": "query",
33924	//       "type": "integer"
33925	//     },
33926	//     "pageToken": {
33927	//       "description": "The standard list page token.",
33928	//       "location": "query",
33929	//       "type": "string"
33930	//     }
33931	//   },
33932	//   "path": "v3/{+name}/operations",
33933	//   "response": {
33934	//     "$ref": "GoogleLongrunningListOperationsResponse"
33935	//   },
33936	//   "scopes": [
33937	//     "https://www.googleapis.com/auth/cloud-platform",
33938	//     "https://www.googleapis.com/auth/dialogflow"
33939	//   ]
33940	// }
33941
33942}
33943
33944// Pages invokes f for each page of results.
33945// A non-nil error returned from f will halt the iteration.
33946// The provided context supersedes any context provided to the Context method.
33947func (c *ProjectsOperationsListCall) Pages(ctx context.Context, f func(*GoogleLongrunningListOperationsResponse) error) error {
33948	c.ctx_ = ctx
33949	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
33950	for {
33951		x, err := c.Do()
33952		if err != nil {
33953			return err
33954		}
33955		if err := f(x); err != nil {
33956			return err
33957		}
33958		if x.NextPageToken == "" {
33959			return nil
33960		}
33961		c.PageToken(x.NextPageToken)
33962	}
33963}
33964